:root{font-family:ui-rounded,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#172d4b;background:#f5f9ff;font-size:16px;--blue:#1968dd;--muted:#62738b}*{box-sizing:border-box}body{margin:0;padding-bottom:calc(104px + env(safe-area-inset-bottom))}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,.button{cursor:pointer;border:0;background:var(--blue);color:white;border-radius:18px;padding:17px 22px;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:52px}button:hover,.button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ebae31;outline-offset:4px}header{max-width:1040px;margin:auto;padding:calc(18px + env(safe-area-inset-top)) 24px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}header img{width:116px;height:54px;object-fit:contain}.scan{display:flex;align-items:center;gap:9px;background:white;border:1px solid #dce7f6;padding:12px 15px;border-radius:17px;color:var(--blue);font-weight:700}main{max-width:960px;margin:22px auto;padding:0 24px}h1{font-size:clamp(28px,5vw,40px);letter-spacing:-1px;line-height:1.16;margin:8px 0 12px}h2{font-size:23px;letter-spacing:-.5px;margin:0 0 12px}h3{font-size:18px;margin:0 0 6px}p{line-height:1.6;margin:8px 0 16px}.muted,small{color:var(--muted)}small{font-size:14px;line-height:1.5;display:block}.eyebrow{font-size:13px;font-weight:800;letter-spacing:1.8px;color:var(--blue);text-transform:uppercase}.card{background:white;border:1px solid #e1eaf5;border-radius:25px;padding:24px;margin:20px 0;box-shadow:0 5px 20px #29466e04}.hero{background:#eaf3ff;border:1px solid #d8e8ff}.row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tile{background:white;border:1px solid #e1eaf5;border-radius:20px;padding:19px;display:flex;gap:14px;align-items:center;min-width:0}.tile>div{min-width:0}.icon{width:48px;height:48px;display:grid;place-items:center;font-size:25px;border-radius:15px;background:#eaf3ff;flex-shrink:0}.maths{background:#eaf6ef}.urdu{background:#f0edfc}.creative{background:#fff3de}.full{width:100%;margin-top:20px}.secondary{background:#eef4fd;color:var(--blue)}progress{appearance:none;width:100%;height:9px;border:0;border-radius:9px;overflow:hidden;margin:14px 0;background:#e7edf5}progress::-webkit-progress-bar{background:#e7edf5}progress::-webkit-progress-value{background:var(--blue);border-radius:9px}progress::-moz-progress-bar{background:var(--blue)}.streak{display:inline-flex;align-items:center;gap:12px;background:#fff6e6;padding:12px 17px;border-radius:16px;margin:8px 0 20px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stat{background:white;border:1px solid #e1eaf5;padding:19px 12px;border-radius:20px;text-align:center}.stat strong{font-size:27px;display:block;margin-bottom:6px}.journey-step{display:flex;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid #e9eef6}.journey-step:last-child{border:0}.journey-step .number{width:38px;height:38px;border-radius:50%;background:#eff4fc;display:grid;place-items:center;color:var(--blue);font-weight:800}.journey-step .details{flex:1;min-width:0}.tag{font-size:14px;color:#27845a;font-weight:700}.dock{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;justify-content:space-around;width:min(94%,640px);padding:10px 5px;background:#fffffff0;border:1px solid #dae5f2;backdrop-filter:blur(18px);border-radius:23px;box-shadow:0 8px 32px #21467618;z-index:20}.dock a{display:grid;justify-items:center;gap:5px;color:var(--muted);font-size:12px;padding:5px 9px;border-radius:13px}.dock a.active{color:var(--blue);background:#edf4ff}.dock svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}label{display:block;margin:18px 0;font-weight:600}input,select{display:block;width:100%;padding:15px;border:1px solid #cbd9eb;border-radius:14px;margin-top:8px;background:white;color:#172d4b}.onboarding{max-width:540px;margin:30px auto}.onboarding img{height:90px;max-width:200px;object-fit:contain}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:20px}.calendar button{padding:8px 2px;min-height:52px;border-radius:12px;background:#f0f5fc;color:#324965;display:block}.calendar button.done{background:#e3f4e9;color:#257447}.calendar button.today{outline:2px solid var(--blue)}.calendar small{text-align:center;font-size:12px}.calendar .empty{visibility:hidden}.locked{opacity:.5}.offline{background:#fff5df;padding:14px 18px;border-radius:16px;margin-bottom:20px}.links{display:flex;gap:12px;flex-wrap:wrap}.links a{padding:12px 16px;background:#edf4ff;color:var(--blue);border-radius:13px}.listrow{padding:15px 0;border-bottom:1px solid #edf1f7}.splash{position:fixed;inset:0;z-index:100;background:#f5f9ff;display:grid;place-content:center;text-align:center;animation:appear .4s ease}.splash img{width:180px;margin:auto}.splash p{color:var(--muted)}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}main{animation:appear .25s ease}@media(max-width:520px){header{padding-left:18px;padding-right:18px}main{padding:0 18px;margin-top:15px}.card{padding:20px}.grid{gap:10px}.tile{padding:15px;align-items:flex-start;gap:10px;flex-direction:column}.stats{gap:8px}.stat{padding:15px 8px}.stat strong{font-size:23px}.calendar{gap:5px}.journey-step .button{padding:12px}.dock a{padding:5px 6px}.row h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
/* 1.7.1: bright, direct, child-friendly surfaces */
:root,body,.splash{background:#fff}header{border-bottom:1px solid #eef2f8;padding-bottom:18px}header img{width:168px;height:78px}.scan{background:#edf5ff;border:0;min-height:50px}.welcome-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 0 25px}.greeting{font-size:18px;color:#64758a;margin-bottom:3px}.child-name{font-size:clamp(36px,7vw,56px);letter-spacing:-1.8px;overflow-wrap:anywhere;margin-top:0}.name-spark{font-size:28px;color:#f1b431;margin-left:10px;display:inline-block;animation:spark-in .7s ease}.welcome-row>div{min-width:0}.progress-ring{width:118px;height:118px;border-radius:50%;padding:9px;background:conic-gradient(#2376e8 var(--progress),#eaf0f8 0);display:grid;place-items:center;flex-shrink:0}.progress-ring>div{border-radius:50%;background:white;width:100%;height:100%;display:grid;place-content:center;text-align:center}.progress-ring strong{font-size:29px}.progress-ring small{font-size:14px}.main-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.big-action{display:flex;align-items:center;gap:14px;border-radius:22px;padding:24px 20px;min-height:115px;transition:transform .18s,box-shadow .18s;color:white;box-shadow:0 8px 22px #1e61bb18}.learn-action{background:#1765dc}.games-action{background:#7052cc}.big-action strong{display:block;font-size:25px;letter-spacing:-.5px}.big-action small{color:#fff;opacity:.93}.big-action>span:last-child{margin-left:auto;font-size:23px}.action-icon{font-size:34px;width:57px;height:57px;border-radius:17px;display:grid;place-items:center;background:#ffffff24}.big-action:hover{transform:translateY(-3px);box-shadow:0 12px 25px #1e61bb28}.big-action:active,.button:active,button:active{transform:scale(.98)}.streak-card{background:#fffaf0;border-color:#f4e7c9}.streak-heading{display:flex;align-items:center;gap:12px}.streak-heading h2{font-size:21px;margin-bottom:4px}.flame{font-size:37px}.text-link{color:#165fcc;font-weight:700;font-size:15px;padding:8px 0}.week-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin:22px 0}.week-dots>div{display:grid;justify-items:center;gap:8px;font-size:13px;color:#6f6858}.week-dots b{width:37px;height:37px;display:grid;place-items:center;background:#f0eadf;border-radius:50%;font-size:19px}.week-dots .earned b{background:#f6ae32;color:#fff}.week-dots .rest b{background:#edeaff;color:#7052cc}.week-dots .current b{outline:2px solid #dfa133;outline-offset:3px}.today-card{box-shadow:0 5px 25px #264b7810}.tile{transition:transform .18s,border-color .18s}.tile:hover{border-color:#9fc3f9;transform:translateY(-2px)}.tile .icon{width:56px;height:56px;font-size:30px}.icon.english{background:#e4eeff;color:#2168df}.icon.maths{background:#dbf5e9;color:#118454}.icon.urdu{background:#eee6ff;color:#7951c6}.icon.creative{background:#ffedcc;color:#b46a06}.primary-start{font-size:18px;min-height:60px;box-shadow:0 7px 16px #1968dd22}.stat{background:#f8faff}.day-options{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day-options label{margin:0;position:relative;cursor:pointer}.day-options input{position:absolute;opacity:0;width:1px;height:1px}.day-options span{display:grid;place-items:center;border:2px solid #dce6f3;border-radius:13px;min-height:49px;font-size:14px;font-weight:700}.day-options input:checked+span{background:#eee8ff;border-color:#8465cf;color:#6142ad}.day-options input:focus-visible+span{outline:3px solid #eeb436;outline-offset:2px}.rest-options{border:0;padding:0;margin:24px 0}.rest-options legend{font-weight:700}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.toggle-row input{width:24px;height:24px;margin:0;accent-color:#1765dc}.calendar button.rest-day{background:#f1ebfb;color:#7753aa}.schedule-card{border:2px solid #dbe9fc}.dock{background:#ffffffed}.learning-toast{position:fixed;bottom:110px;left:50%;transform:translateX(-50%);background:#173e70;color:white;padding:16px 24px;border-radius:18px;z-index:50;max-width:90%}.tile .icon,.action-icon{animation:pop-in .45s ease both}.tile:nth-child(2) .icon{animation-delay:.08s}.tile:nth-child(3) .icon{animation-delay:.16s}.tile:nth-child(4) .icon{animation-delay:.24s}@keyframes pop-in{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes spark-in{from{transform:rotate(-25deg) scale(.6)}to{transform:rotate(0) scale(1)}}html[data-reduce=true] *{animation:none!important;transition:none!important}@media(max-width:520px){header img{width:145px;height:68px}.welcome-row{gap:13px}.progress-ring{width:98px;height:98px;padding:7px}.progress-ring strong{font-size:25px}.main-actions{gap:11px}.big-action{padding:18px 14px;flex-wrap:wrap;gap:9px}.big-action strong{font-size:23px}.big-action small{font-size:13px}.action-icon{width:45px;height:45px;font-size:29px}.big-action>span:last-child{display:none}.week-dots{gap:5px}.week-dots b{width:31px;height:31px}.day-options{gap:5px}.day-options span{font-size:12px;min-height:47px}.streak-heading h2{font-size:19px}}@media(prefers-reduced-motion:reduce){.tile,.big-action,.button,button{transition:none}.tile .icon,.action-icon,.name-spark{animation:none}}
/* 1.7.2 compact shared header and parent dashboard */
body>header{padding:calc(8px + env(safe-area-inset-top)) 20px 8px;min-height:76px;gap:16px;background:#fff}html[data-native=true] body>header{padding-top:8px}body>header>a:first-child{display:flex;align-items:center;line-height:0}body>header img{width:148px;height:58px;display:block}body>header .scan{gap:9px;min-height:46px;padding:11px 14px;border-radius:15px;white-space:nowrap}body>header .scan svg{width:24px;height:24px;flex-shrink:0}main{margin-top:12px}.welcome-row{padding-top:0;padding-bottom:19px}.welcome-row .greeting{margin-top:0}.parent-heading h1{font-size:clamp(28px,5vw,39px);overflow-wrap:anywhere}.parent-heading .eyebrow{margin-top:0}.parent-overview{background:#edf5ff;border-color:#dfebfc}.parent-overview h2{font-size:34px;margin-bottom:3px}.parent-overview .row>div:first-child{flex:1;min-width:130px}.parent-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid #d5e3f6;padding-top:20px;margin-top:20px}.parent-metrics strong{display:block;font-size:23px;margin-bottom:6px}.parent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.parent-actions a{padding:20px;border:1px solid #dee8f5;border-radius:21px;display:grid;gap:8px;background:#f8fbff}.parent-actions a:nth-child(2){background:#f7f2ff;border-color:#e9def9}.parent-actions span{font-size:26px}.parent-actions strong{font-size:18px}.subject-progress{display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid #eef2f8}.subject-progress:last-child{border:0}.subject-progress>div{flex:1;min-width:0}.subject-progress progress{margin:9px 0 4px;height:8px}.subject-progress.maths progress::-webkit-progress-value{background:#23a273}.subject-progress.urdu progress::-webkit-progress-value{background:#8c60cd}.subject-progress.creative progress::-webkit-progress-value{background:#eaa333}.insight-card{background:#f0faf5;border-color:#ddefe4}.reminder-preview h3{line-height:1.5}.next-reminder{display:flex;align-items:center;gap:14px;padding:17px;background:#edf5ff;border-radius:17px;margin:18px 0}.next-reminder>span{font-size:29px}.next-reminder strong{display:block;margin-top:4px;font-size:18px;line-height:1.5}.time-presets,.reminder-tools{display:flex;flex-wrap:wrap;gap:9px}.time-presets button{min-height:42px;padding:10px 16px}.reminder-tools button{padding:12px 15px;flex:1;font-size:14px}.schedule-card{scroll-margin-top:15px}.toggle-row input{appearance:none;width:48px;height:28px;padding:0;border:0;border-radius:20px;background:#ccd7e5;position:relative;flex-shrink:0}.toggle-row input:before{content:'';position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:white;box-shadow:0 2px 4px #0002;transition:transform .15s}.toggle-row input:checked{background:#2472df}.toggle-row input:checked:before{transform:translateX(20px)}@media(max-width:520px){body>header{padding-left:18px;padding-right:18px}body>header img{width:139px;height:55px}body>header .scan{font-size:15px;padding:10px 12px}main{margin-top:12px}.parent-metrics strong{font-size:21px}.parent-metrics small{font-size:13px}.parent-overview{padding:20px}.parent-actions a{padding:17px}.parent-actions strong{font-size:17px}.parent-overview .progress-ring{width:92px;height:92px}}@media(max-width:350px){body>header{gap:8px;padding-left:14px;padding-right:14px}body>header img{width:125px}body>header .scan{gap:6px;padding:9px;font-size:14px}}

.launch-minimal{position:fixed;inset:0;z-index:100;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:1;transition:opacity .16s ease}.launch-minimal img{width:176px;max-width:55vw;height:auto;object-fit:contain}.launch-minimal p{font-size:14px;color:#7a8796;letter-spacing:.4px;margin:18px 0 26px}.launch-track{display:block;width:56px;height:3px;border-radius:3px;background:#e8f0fb;overflow:hidden}.launch-track i{display:block;width:24px;height:100%;background:#327bdc;border-radius:3px;animation:launch-slide 1s ease-in-out infinite alternate}.launch-minimal.ready{opacity:0;pointer-events:none}@keyframes launch-slide{from{transform:translateX(-8px)}to{transform:translateX(40px)}}@media(prefers-reduced-motion:reduce){.launch-track i{animation:none}.launch-minimal{transition:none}}

.speaking-shortcut{display:flex;align-items:center;gap:13px;min-height:68px;padding:12px 18px;border:1px solid #c9eade;border-radius:20px;background:#eaf8f2;margin-top:14px;color:#176b54;transition:transform .15s}.speaking-shortcut strong{flex:1;font-size:18px}.speaking-shortcut-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#d3efe3;flex-shrink:0}.speaking-shortcut svg{width:23px;height:23px}.speaking-shortcut:active{transform:scale(.99)}@media(max-width:380px){.speaking-shortcut strong{font-size:16px}.speaking-shortcut{padding:11px 13px}}

.tracing-shortcut{background:#fff7eb;border-color:#f5dfba;color:#87520b}.tracing-shortcut .speaking-shortcut-icon{background:#ffedcd;font-size:28px}

.tracing-shortcut{gap:12px;padding:12px 16px}.tracing-shortcut .speaking-shortcut-icon{flex:0 0 40px;width:40px;height:40px;margin:0;line-height:1}.tracing-shortcut .speaking-shortcut-icon svg{display:block;width:24px;height:24px;margin:0}.tracing-shortcut strong{min-width:0;line-height:1.35}.tracing-shortcut>span:last-child{flex:0 0 auto;margin:0}
