@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:ui-rounded,Trebuchet MS,Arial,sans-serif;color:#24463b;background:#f5f3e9;font-synthesis:none;--forest: #214c3d;--ink: #213f35;--muted: #6c796e;--paper: #fffdf6;--line: #dce1d2;--gold: #edb15d}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;touch-action:manipulation}button:disabled{opacity:.65;cursor:wait}button[data-action]{user-select:none;-webkit-user-select:none}button[data-action]:active:not(:disabled){transform:translateY(3px) scale(.97);filter:brightness(.88);transition-duration:0ms}@media(prefers-reduced-motion:reduce){button[data-action]:active:not(:disabled){transform:none}}button:focus-visible,a:focus-visible{outline:3px solid #c07b31;outline-offset:4px}header{max-width:1280px;margin:auto;padding:calc(22px + env(safe-area-inset-top)) 42px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font-size:14px;letter-spacing:2px;font-weight:800}.brand-mark{background:var(--forest);color:#f8d39a;border-radius:12px;display:grid;place-items:center;width:43px;height:43px;font-size:36px;font-weight:400;line-height:1}.brand small{display:block;font-size:11px;letter-spacing:.4px;font-weight:400;margin-top:5px;color:var(--muted)}.header-right{display:flex;align-items:center;gap:22px}.offline{font-size:12px;color:var(--muted)}.offline i{display:inline-block;background:#7c9d72;width:6px;height:6px;border-radius:50%;margin-right:7px}main{max-width:1180px;margin:auto;padding:24px 28px calc(24px + env(safe-area-inset-bottom))}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;font-size:48px;line-height:1.1;letter-spacing:-1.6px}h2{font-family:Georgia,serif;font-weight:400;font-size:29px;letter-spacing:-.5px}h3{font-size:17px}p{line-height:1.6}small{color:var(--muted)}.quiet{background:transparent;padding:13px 14px;min-height:48px;color:var(--forest);border-radius:12px;font-weight:600;font-size:14px}.quiet:hover{background:#e8ebde}.button,.primary{padding:15px 23px;border-radius:12px;min-height:52px;font-weight:700;background:#e8eddf;color:var(--ink)}.primary{background:var(--forest);color:#fffdf2;box-shadow:0 4px #123426}.primary:hover{background:#31634d}.button:hover{background:#dce5d3}.profile-switch{display:flex;gap:10px;margin-bottom:22px}.profile{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid transparent;color:var(--muted);padding:7px 15px 7px 8px;border-radius:30px;font-size:14px;min-height:46px}.profile.selected{background:var(--paper);border-color:#c6d1bc;color:var(--forest)}.avatar{display:grid;place-items:center;border-radius:50%;width:30px;height:30px;background:#ead4ad;color:#73562f;font-family:Georgia,serif;font-size:20px}.avatar.beginner{background:#d9e3d7;color:#426554}.hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:20px;margin:8px 0 26px}.eyebrow{display:block;letter-spacing:1.8px;font-size:10px;font-weight:800;color:#71806b;margin-bottom:12px}.hero h1{font-size:56px;margin:0 0 18px}.hero h1 em{font-weight:400;color:#638367}.hero-copy>p{font-size:17px;color:#71806e;margin-bottom:22px}.hero-art{background:#e9ecdb;border-radius:48% 48% 20px 20px;position:relative;min-height:282px;display:flex;align-items:center;padding:18px 3px 28px}.hero-art svg{width:100%}.art-label{position:absolute;bottom:15px;left:0;right:0;text-align:center;letter-spacing:2px;font-size:9px;color:#668169}.together{display:flex;align-items:center;gap:11px;font-size:13px;font-weight:600}.together>span{background:#eee4ce;border-radius:50%;padding:9px 13px;color:#987435;font-size:19px}.together small{display:block;font-size:11px;font-weight:400;margin-top:5px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.section-heading h1,.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:7px}.pill{border:1px solid #d8decf;border-radius:25px;font-size:11px;color:#77816f;padding:9px 13px;white-space:nowrap}.missions{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.mission{text-align:left;border:2px solid #e0e3d6;border-radius:17px;background:#fbfaf2;padding:10px 17px 16px;overflow:hidden;color:var(--ink);transition:background .2s,border-color .2s}.mission.selected{border-color:#759370;background:#edf0df}.mission-art{display:block;height:88px;overflow:hidden}.mission-art svg{display:block;height:110px;margin:-8px auto 0;max-width:100%}.mission-name{display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:700;margin:5px 0 7px}.mission small{font-size:11px}.choice-dot{display:grid;place-items:center;height:22px;width:22px;border:1px solid #bbc8ad;border-radius:50%;font-size:12px}.selected .choice-dot{background:#517554;color:#fff;border:0}.start-bar{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding:20px 23px;background:#e9ecdf;border-radius:16px;gap:20px}.start-bar strong,.start-bar span{display:block;font-size:14px}.start-bar span{font-size:12px;color:var(--muted);margin-top:5px}.start-bar .primary{min-width:245px}.footnote{text-align:center;font-size:11px;color:#82907c;margin:17px 0 0}.notice{background:#fff0cd;color:#685126;border:1px solid #e6d3a4;border-radius:12px;padding:14px 18px;margin:0 0 20px;font-size:14px;line-height:1.5}.session-top{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;font-size:14px}.practice-grid{display:grid;grid-template-columns:340px 1fr;gap:24px}.build-panel{border-radius:24px;background:#e9eddd;padding:28px 20px;text-align:center;display:flex;flex-direction:column;justify-content:center}.build-panel h2{font-size:26px;margin:0}.build-panel svg{width:100%;margin:18px 0}.build-panel p{color:#76826d;font-size:13px;margin:17px 0 0}.steps{display:flex;gap:8px;justify-content:center}.step{display:grid;place-items:center;width:30px;height:30px;border:1px solid #c7d1bb;border-radius:50%;font-size:12px;color:#a0ac91}.step.done{background:#5d805b;color:#fff;border-color:#5d805b}.step.current{background:#f5ddb0;color:#86602e;border-color:#dcba81}.activity{min-height:410px;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:27px 32px;display:flex;flex-direction:column;text-align:center}.activity-label{display:flex;justify-content:space-between;align-items:center}.tag{display:inline-block;color:#6e7f65;background:#eef0e3;border-radius:8px;padding:7px 11px;font-size:11px;font-weight:700}.activity-star{color:#d1ac66;font-size:26px}.instruction{color:#75816e;font-size:16px;margin:29px 0 0}.stimulus{font-size:146px;line-height:1.2;font-weight:600;letter-spacing:4px;flex:1;display:flex;align-items:center;justify-content:center;min-height:200px;color:#264a3e}.stimulus.oral{font-family:Georgia,serif;font-weight:400;font-size:37px;letter-spacing:-1px;flex-direction:column;gap:16px}.listen-icon{display:block;font-size:57px;color:#ca9a54;letter-spacing:10px}.sound-dots{display:flex;justify-content:center;gap:24px;margin:0 0 20px}.sound-dots i{height:7px;width:7px;background:#d4b885;border-radius:50%}.parent-hint{border-top:1px solid #eeeede;margin-top:14px;padding-top:8px}.hint-button{background:transparent;color:#698063;min-height:44px;font-size:12px;font-weight:600}.parent-hint p{font-size:14px;color:#607359;line-height:1.5;text-align:left;background:#f0f2e8;padding:13px;border-radius:9px;margin:0}.feedback{display:flex;gap:20px;align-items:center;justify-content:space-between;background:#e6eadc;margin:22px 0 0;padding:21px 25px;border-radius:16px}.feedback .eyebrow{margin:0 0 7px}.feedback p{margin:0;font-size:16px}.feedback-buttons{display:flex;gap:10px;align-items:center}.score{padding:17px 20px;border-radius:11px;color:#33523f;font-weight:700;min-height:56px;background:#f6f7ee;border:1px solid #ccd6c3;font-size:14px}.score.good{background:#496e50;color:#fff;border-color:#496e50}.score.help{background:#f4e3bd;border-color:#e5c58e;color:#78562e}.score.later{color:#747b6c}.finish-card{text-align:center;max-width:750px;margin:auto}.finish-art{max-width:320px;margin:auto}.finish-art svg{width:100%;max-height:185px}.finish-card h1{margin-bottom:12px;font-size:44px}.finish-card>p{color:var(--muted)}.finish-form{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px 30px;margin-top:22px}.finish-form>p{font-size:14px}.moods{display:flex;gap:10px;margin-bottom:24px}.choice{padding:13px 16px;background:#f1f1e8;border:1px solid #dbe0d1;color:#63725e;border-radius:10px;min-height:50px}.choice.selected{background:#e1ebd7;border-color:#789572;color:#31583b}.choice small{display:block;font-size:11px;margin-top:7px}.actions{display:flex;gap:12px;margin-top:18px;align-items:center}label{display:block;font-size:13px;font-weight:700;margin:12px 0 8px}label span{font-size:11px;font-weight:400;color:var(--muted)}input,textarea{border:1px solid #ccd5c3;border-radius:9px;background:#fffef9;padding:13px;color:var(--ink);width:100%;min-height:48px}textarea{resize:vertical;min-height:95px;line-height:1.5}.parent-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{padding:28px;border:1px solid var(--line);background:var(--paper);border-radius:20px}.panel h2{font-size:28px;margin-bottom:16px}.panel p{font-size:14px}.inline-form{display:flex;gap:8px}.inline-form input{min-width:0}.level-choices{display:flex;gap:9px;margin:15px 0}.level-choices .choice{flex:1;text-align:left}.school-note{background:#eef0e4;border-radius:10px;padding:15px;margin:20px 0}.school-note strong{font-size:12px}.school-note p{font-size:12px;color:#6d7a65;margin:8px 0}.muted,.empty{color:#7a8572;font-size:12px!important}.stats-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e6e9dd;padding:11px 0;font-size:12px}.stats-list small{display:block;font-size:10px;margin-top:3px}.ai-panel>.primary{width:100%;margin:10px 0}.ai-panel>.tag{margin-bottom:18px}.connection{border:1px solid #d6decb;border-radius:10px;padding:14px;margin:20px 0}.connection summary{font-size:13px;cursor:pointer;font-weight:700}.connection p{font-size:12px}.privacy{font-size:11px!important;color:#839079}.plan-list{padding:0;list-style-position:inside;border:1px solid #e0e5d6;border-radius:12px;overflow:hidden;margin:17px 0}.plan-list li{padding:11px 13px;font-size:14px;border-bottom:1px solid #e0e5d6}.plan-list li:last-child{border:0}.plan-list small{float:right;font-size:11px;padding-top:3px}.plan-preview{padding:20px;background:#eef2e4;border-radius:15px;margin-top:22px}.plan-preview .actions{flex-wrap:wrap}.history{margin-top:22px}.history details{padding:15px 0;border-top:1px solid #e3e7d8;font-size:13px}.history summary{cursor:pointer;line-height:1.6}.history li{padding:4px}.history p{margin:15px 0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#193e35b5;display:grid;place-items:center;padding:24px;z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--paper);border-radius:22px;padding:30px;max-width:420px;width:100%}.modal .muted{margin:22px 0 0}#print-cards{display:none}@media(min-width:1400px){main{padding-top:30px}.hero{margin-bottom:32px}.hero-art{min-height:330px}.mission-art{height:110px}.mission-art svg{height:130px}}@media(max-width:950px){header{padding-left:25px;padding-right:25px}.hero h1{font-size:47px}.practice-grid{grid-template-columns:260px 1fr;gap:18px}.feedback{flex-direction:column;align-items:stretch;gap:12px}.feedback>div:first-child{display:flex;align-items:center;justify-content:space-between}.feedback .eyebrow{margin:0}.feedback-buttons{justify-content:space-between}.score{flex:1;padding:16px 10px}.build-panel{padding:24px 15px}.stimulus{font-size:128px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1px}}@media(max-width:650px){header{padding:calc(14px + env(safe-area-inset-top)) 17px 13px}.brand{font-size:11px;letter-spacing:1px;gap:8px}.brand small{font-size:9px}.brand-mark{width:36px;height:36px;font-size:30px}.header-right{gap:0}.offline{display:none}main{padding:18px 16px calc(22px + env(safe-area-inset-bottom))}.hero{grid-template-columns:1fr;gap:8px;margin-bottom:20px}.hero h1{font-size:43px}.hero-copy>p{font-size:15px}.hero-copy .together{display:none}.hero-art{min-height:0;max-height:180px;overflow:hidden;border-radius:22px;padding:0 0 20px}.hero-art svg{height:180px}.hero-copy .eyebrow{font-size:9px}.art-label{bottom:8px}.section-heading{align-items:flex-start}.section-heading h1{font-size:36px}.section-heading h2{font-size:26px}.section-heading .pill{display:none}.missions{gap:8px}.mission{padding:7px 9px 11px;border-radius:12px}.mission-art{height:58px}.mission-art svg{height:76px}.mission-name{font-size:12px;gap:4px}.mission small{display:none}.choice-dot{width:17px;height:17px;flex-shrink:0;font-size:10px}.start-bar{flex-direction:column;align-items:stretch;padding:17px}.start-bar .primary{width:100%}.start-bar span{font-size:11px}.profile-switch{margin-bottom:16px}.session-top{font-size:11px;gap:5px}.session-top .quiet{padding-left:0;font-size:12px}.session-top .pill{padding:7px 9px}.practice-grid{grid-template-columns:1fr;gap:12px}.build-panel{padding:13px 16px;display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:8px}.build-panel>.eyebrow,.build-panel>p,.build-panel>svg{display:none}.build-panel h2{font-size:21px}.steps{gap:5px;justify-content:flex-end}.step{width:23px;height:23px;font-size:10px}.activity{min-height:340px;padding:20px;border-radius:19px}.instruction{font-size:14px;margin-top:20px}.stimulus{font-size:110px;min-height:170px}.stimulus.oral{font-size:30px}.feedback{padding:17px 12px;margin-top:14px}.feedback .eyebrow{font-size:8px;letter-spacing:1px}.feedback p{font-size:13px}.feedback-buttons{flex-wrap:wrap;gap:7px}.score{font-size:11px;padding:12px 8px;min-height:51px}.feedback-buttons>.quiet{font-size:12px;min-height:38px;padding:8px;width:100%}.parent-grid{grid-template-columns:1fr}.panel{padding:21px}.moods{gap:6px}.moods .choice{font-size:12px;padding:11px;flex:1}.finish-form{padding:21px}.finish-card h1{font-size:35px}.finish-art{max-width:230px}.finish-form label span{display:block;margin-top:5px}.history summary{font-size:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{body{background:#fff;color:#000}#app{display:none!important}#print-cards{display:block;font-family:Arial,sans-serif}#print-cards article{break-inside:avoid;border:1px solid #888;padding:15px;margin:12px}#print-cards h2{font-size:32px;margin:0}#print-cards h1{font-size:28px}}@media(min-width:651px)and (max-height:900px){header{padding-top:14px;padding-bottom:12px}main{padding-top:14px;padding-bottom:14px}[data-page=home] .profile-switch{margin-bottom:10px}[data-page=home] .hero{margin:4px 0 17px;gap:25px}[data-page=home] .hero h1{font-size:42px;margin-bottom:12px}[data-page=home] .hero-copy>p{font-size:14px;margin-bottom:0}[data-page=home] .hero-copy>.eyebrow{font-size:9px;margin-bottom:10px}[data-page=home] .together{display:none}[data-page=home] .hero-art{height:190px;min-height:0;padding:0 5px 18px;border-radius:80px 80px 18px 18px}[data-page=home] .hero-art svg{height:180px}[data-page=home] .art-label{bottom:8px}[data-page=home] .section-heading{margin-bottom:10px}[data-page=home] .section-heading h2{font-size:26px}[data-page=home] .mission-art{height:57px}[data-page=home] .mission-art svg{height:78px}[data-page=home] .mission{padding-top:6px;padding-bottom:10px}[data-page=home] .start-bar{margin-top:13px;padding:13px 20px}[data-page=home] .footnote{margin-top:10px}[data-page=practice] .session-top{margin-bottom:12px}[data-page=practice] .activity{min-height:350px;padding:21px 27px}[data-page=practice] .stimulus{min-height:155px;font-size:120px}[data-page=practice] .stimulus.oral{font-size:34px}[data-page=practice] .instruction{margin-top:16px}[data-page=practice] .feedback{margin-top:14px;padding:15px 20px}}.hub-intro{margin:32px 0 26px}.hub-intro h1{font-size:clamp(2rem,4vw,3.25rem);margin:10px 0}.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.subject-card{display:block;text-align:left;background:#fffdf6;border:1px solid #dfdfcc;border-radius:26px;padding:24px;color:#284737;cursor:pointer;box-shadow:0 10px 25px #28473708}.subject-card:hover{border-color:#527d4e;transform:translateY(-2px)}.subject-card h2{margin:12px 0}.subject-card p{line-height:1.6}.subject-card strong{display:block;margin-top:22px}.subject-art{display:block;height:190px;text-align:center;overflow:hidden}.subject-art svg{height:100%;width:100%}.bible-card{background:#f9f3e4}.bible-art{display:flex;height:190px;align-items:center;justify-content:center;gap:24px;color:#bd8541;font-size:30px}.bible-art span{font-size:140px;color:#526a4b;transform:rotate(-8deg)}.account-panel{margin:24px 0}.awana-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;margin:24px 0}.verse-choice{display:block;width:100%;padding:16px;text-align:left;border:1px solid #dedfcf;border-radius:12px;background:#fffdf8;margin-bottom:12px;color:inherit;cursor:pointer}.verse-choice.selected{border:2px solid #507449;background:#edf2df}.verse-choice small{display:block;margin-top:8px}.verse-text{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.7;margin:30px 0;font-family:Georgia,serif}.verse-text span{display:inline-block}.verse-panel audio{width:100%;margin:12px 0}.preserve-lines{white-space:pre-wrap;line-height:1.8}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block}select{display:block;width:100%;font:inherit;padding:12px;color:inherit;background:#fffdf7;border:1px solid #cbd0bc;border-radius:10px;margin:8px 0 20px}.panel+.panel{margin-top:24px}.panel input,.panel textarea{margin:8px 0 18px}.subject-card:focus-visible,.verse-choice:focus-visible{outline:3px solid #ab792e;outline-offset:4px}.header-right .offline{max-width:280px;white-space:normal;text-align:right;font-size:12px}@media(max-width:700px){.subject-grid,.awana-grid,.field-row{grid-template-columns:1fr}.subject-art,.bible-art{height:130px}.bible-art span{font-size:100px}.subject-card{padding:20px}.header-right .offline{display:none}.hub-intro{margin-top:20px}.awana-grid{gap:12px}.inline-form{flex-wrap:wrap}}.companion-grid{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.7fr);gap:24px;align-items:start}.session-choice{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;margin:12px 0;border:2px solid #d4dce0;background:#fff;border-radius:14px;text-align:left;font:inherit;cursor:pointer}.session-choice.selected{border-color:#247969;background:#edf8f5}.session-choice small{font-size:14px}.current-activity{padding:16px;border-left:4px solid #247969;background:#edf8f5;margin:16px 0}.observation-tags{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.session-note{border-bottom:1px solid #d4dce0;padding:12px 0}#companion-message:not(:empty){padding:14px;background:#fff3d4;border-radius:12px;margin-bottom:16px}#companion-note{width:100%;min-height:130px}@media(max-width:760px){.companion-grid{grid-template-columns:1fr}}.welcome{max-width:680px;margin:48px auto;text-align:center}.welcome .actions{justify-content:center;gap:18px}.welcome .primary{min-height:64px;font-size:1.15rem}.pair-qr{display:block;margin:24px auto;max-width:100%;border-radius:12px}#pair-new-fields[hidden]{display:none}#qr-camera-dialog{width:min(92vw,520px);max-height:90dvh;overflow:auto;border:0;border-radius:20px;padding:24px;color:#163d34;background:#fffdf7}#qr-camera-dialog::backdrop{background:#102d28b8}#qr-camera-dialog video{display:block;width:100%;max-height:55dvh;object-fit:cover;border-radius:12px;background:#163d34}[data-page=practice] .practice-grid{align-items:center}[data-page=practice] .activity{min-height:0;padding:18px 24px}[data-page=practice] .instruction{margin:0 0 6px;font-size:1.5rem}[data-page=practice] .stimulus{min-height:100px;font-size:clamp(90px,16vh,150px)}[data-page=practice] .hear-sound{font-size:1.5rem;min-height:64px}[data-page=practice] .parent-hint{margin-top:12px;text-align:left}[data-page=practice] .parent-hint summary{cursor:pointer}[data-page=practice] .practice-next{position:sticky;bottom:0;z-index:3;background:#fffdf7;box-shadow:0 -4px 18px #163d3412;padding:14px;margin-top:12px}[data-page=practice] .feedback-buttons button{min-height:60px}@media(max-width:700px){[data-page=practice] .build-panel{display:none}[data-page=practice] .feedback-buttons{display:grid;grid-template-columns:1fr 1fr}[data-page=practice] .practice-next{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}[data-page=hub] .hub-intro{margin:16px 0 22px}[data-page=hub] .hub-intro h1{margin:0;font-size:clamp(1.8rem,4vw,2.6rem)}[data-page=hub] .hub-intro p{margin:8px 0 0;font-size:1.2rem}.kid-choices{gap:28px}.kid-choices .subject-card{position:relative;border:4px solid;border-radius:30px;padding:16px 20px 22px;text-align:center;box-shadow:0 9px #183e3529;transition:transform .12s,box-shadow .12s}.kid-choices .reading-choice{background:#ddf2c0;border-color:#598945;color:#214c3d}.kid-choices .bible-choice{background:#ede1ff;border-color:#9267c7;color:#54357b}.kid-choices .subject-art{height:clamp(170px,28vh,290px)}.kid-choices .choice-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}.kid-choices h2{margin:0;font-size:clamp(1.7rem,3.5vw,2.6rem)}.choice-play{display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;border-radius:50%;background:#fffdf7;font-size:25px}.kid-choices .subject-card:active{transform:translateY(5px);box-shadow:0 3px #183e3529}.kid-choices .subject-card:focus-visible{outline:4px solid #183e35;outline-offset:5px}.continue-badge{display:inline-block;margin-top:12px;border-radius:20px;padding:6px 14px;background:#fffdf7;font-weight:700}.hub-tools{margin-top:28px;color:#526653}.hub-tools summary{cursor:pointer;padding:14px 0}[data-page=hub] header .offline{display:none}@media(max-width:600px){.kid-choices{gap:20px}.kid-choices .subject-card{padding:10px 16px 14px}.kid-choices .subject-art{height:170px}}@media(prefers-reduced-motion:reduce){.kid-choices .subject-card{transition:none}}.sync-conflict{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:8px 0 14px;padding:10px 14px;border:1px solid #d6bf83;border-radius:12px;background:#fff7dc;font-size:.9rem}.sync-conflict>span{flex:1 1 240px}.sync-conflict small{display:block;margin-top:3px}.sync-conflict .button{min-height:44px;padding:9px 14px}.sync-conflict summary{cursor:pointer;font-size:.8rem}.tablet-tools{padding:0 6px}.page-controls{display:flex;align-items:center;gap:10px;padding:10px 0;margin-bottom:8px}.page-controls .button,.page-controls .quiet{min-height:44px;padding:10px 18px;font-size:1rem}.page-controls .quiet{margin-left:auto}@media(max-width:600px){.page-controls{gap:6px}.page-controls .button,.page-controls .quiet{padding:10px 12px}}.sound-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}.sound-review-grid .panel{margin:0}.sound-review-grid h2{font-size:3rem;margin:0}.sound-review-grid h2 small{font-size:1rem}.sound-review-grid audio{width:100%}.library-page{display:block;width:100%;height:auto;border:1px solid #d8ded8;border-radius:12px;margin:16px 0;background:#fff}.library-track{display:grid;gap:10px;padding:16px 0;border-top:1px solid #d8ded8}.library-track audio{width:100%}.oral-prompt{font-size:clamp(1.15rem,3vw,1.6rem);line-height:1.5;text-align:left}.verse-choice{min-height:52px}.together-entry{margin:18px 0 28px;border:3px solid #7c9971}.together-card{max-width:900px;margin:0 auto 24px}.together-card .stimulus{text-align:center;margin:22px 0}.together-card .feedback-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.together-tiles{justify-content:center}.together-tiles button{font-size:48px;min-width:92px;min-height:92px}.together-slots{text-align:center;margin:12px}.together-slots button{font-size:48px;letter-spacing:14px;min-width:270px}.together-ending textarea{display:block;width:100%;min-height:100px;margin:12px 0}.together-ending .actions{margin:16px 0}.touch-entry{background:#e3eddc;border:2px solid #93ac80;margin-top:20px}.lab-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.lab-choice{display:flex;flex-direction:column;gap:12px;text-align:left;padding:24px;border:3px solid #c8d6bc;border-radius:24px;background:#fffdf2;color:var(--ink)}.lab-choice.selected{border-color:var(--forest);background:#e6efd9}.lab-choice strong{font-size:28px}.lab-choice small{color:var(--muted);line-height:1.5}.lab-choice-icon{font-size:58px;color:var(--forest)}.lab-stage{max-width:950px;margin:20px auto;text-align:center}.lab-stage h2{font-size:32px;margin:18px 0}.lab-stage .parent-hint{text-align:left}.lab-stage .actions,.lab-feedback{justify-content:center;display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}#lab-trace{display:block;width:min(100%,430px);height:min(52vh,430px);min-height:260px;margin:0 auto;border:2px solid #d4dfc9;border-radius:24px;background:#fffdf7;touch-action:none;user-select:none;-webkit-user-select:none}.lab-baselines{fill:none;stroke:#e7e3d4;stroke-width:.5;stroke-dasharray:2 2}.lab-guide{fill:none;stroke:#d4deca;stroke-width:10;stroke-linecap:round;stroke-linejoin:round}.lab-ink{fill:none;stroke:#537e43;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.lab-stroke-number{fill:#697660;font-size:5px;font-family:Arial,sans-serif;pointer-events:none}#lab-dot{fill:#23543e;stroke:#fff;stroke-width:1.3;pointer-events:none}.lab-word{display:flex;justify-content:center;gap:10px;margin:35px auto 12px}.lab-part{background:#eef1e4;color:var(--ink);border:3px solid transparent;border-radius:16px;font-size:clamp(36px,7vw,76px);min-width:65px;padding:12px}.lab-part.active{background:#f8d99c;border-color:#b98230}#lab-slider{position:relative;width:80%;height:90px;margin:12px auto;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}#lab-slider:focus-visible{outline:3px solid #bd8637;outline-offset:6px;border-radius:14px}.lab-rail{position:absolute;left:0;right:0;height:12px;top:39px;border-radius:20px;background:#d9e2ca}#lab-thumb{position:absolute;top:13px;width:64px;height:64px;margin-left:-32px;border-radius:50%;background:var(--forest);color:#fffdf2;font-size:40px;line-height:60px;box-shadow:0 4px #133c2d;pointer-events:none}.lab-status{min-height:30px;color:var(--forest);font-weight:700}.lab-audio-choice{display:inline-flex;align-items:center;gap:12px;padding:14px;background:#f1efdf;border-radius:14px}.lab-audio-choice input{width:24px;height:24px}.lab-menu{margin:24px 0}.lab-menu summary{padding:16px;cursor:pointer}.lab-finish{text-align:center}@media(max-width:650px){.lab-choices{grid-template-columns:1fr}.lab-choice{padding:18px}.lab-choice-icon{font-size:40px}.lab-word{gap:4px}.lab-part{min-width:44px;padding:8px}.lab-stage{padding:16px}#lab-trace{min-height:240px}.lab-feedback>button{flex:1 1 130px}}.lab-word{width:80%}.lab-part{flex:1}@media(max-height:850px)and (min-width:651px){#lab-trace{height:300px;min-height:200px}.lab-stage h2{margin:10px 0;font-size:28px}}.reading-welcome{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 20px}.reading-welcome h1{margin:0;font-size:clamp(2rem,5vw,3.1rem)}.reading-welcome p{margin:8px 0;color:var(--muted)}.reading-cabin{width:180px;flex-shrink:0}.reading-cabin svg{width:100%;height:120px}.reading-pick{background:#e8f2e7;border-radius:24px;padding:20px;margin:20px 0}.reading-pick h2{margin:0 0 16px}.reading-lengths{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reading-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:24px 12px;border:2px solid #c2d6bd;border-radius:20px;background:#fffefa;color:#254739;min-height:150px;cursor:pointer;box-shadow:0 4px #c2d6bd;touch-action:manipulation;transition:transform .1s}.reading-tile:active{transform:translateY(3px);box-shadow:0 1px #c2d6bd}.reading-tile:focus-visible{outline:3px solid #285fbb;outline-offset:4px}.reading-lengths strong{font-size:3.5rem;line-height:1}.reading-tile span{font-size:1.2rem}.reading-tile small{font-size:1rem;color:#57715e}.reading-extras{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.reading-extras .reading-tile:first-child{background:#fff0cb;border-color:#e6d09e}.reading-extras .reading-tile:last-child{background:#e8efff;border-color:#bfcee6}.reading-extras .reading-tile span{font-size:2.5rem}.reading-extras strong{font-size:1.5rem}.reading-continue{margin-bottom:2px}.lab-build{display:flex;align-items:center;gap:18px;max-width:550px;margin:0 auto 16px}.lab-build svg{width:145px;height:100px;flex-shrink:0}.lab-build>div{flex:1}.lab-build strong,.lab-build span{display:block}.lab-build span{font-size:.9rem;margin:4px 0;color:#526753}.lab-build progress{width:100%;accent-color:#547f48;height:12px}.lab-finish .lab-build{flex-direction:column}.lab-finish .lab-build svg{width:100%;height:260px}.lab-finish .lab-build>div{width:min(100%,320px)}.sight-word{font-size:clamp(5rem,18vw,9rem);font-weight:700;text-align:center;padding:24px 0;color:#284938}.sight-prompt{text-align:center}.lab-feedback,.lab-stage .parent-hint{margin-top:18px}@media(max-width:520px){.reading-cabin{width:100px}.reading-cabin svg{height:85px}.reading-pick{padding:14px}.reading-lengths{gap:8px}.reading-tile{padding:18px 8px;min-height:130px}.reading-tile span{font-size:1rem}.reading-tile small{font-size:.8rem}.reading-extras{gap:12px}.reading-extras strong{font-size:1.2rem}.lab-build svg{width:105px;height:75px}}.trace-collections{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0}.trace-collections .reading-tile{min-height:210px}.trace-collections .reading-tile:nth-child(2){background:#e8efff;border-color:#bfcee6}.trace-collections .reading-tile:nth-child(3){background:#fff0cb;border-color:#e6d09e}.trace-collections .trace-collection-icon{font-size:clamp(2.2rem,6vw,3.5rem);font-weight:700;letter-spacing:.06em}.trace-collections strong{font-size:1.3rem}.trace-options>details{margin-top:16px;border-top:1px solid #dce3d5;padding-top:16px}.trace-set-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:16px 0}.trace-set-list button{display:flex;flex-direction:column;gap:8px}.trace-character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:8px}.trace-character-grid button{font-size:1.6rem;min-height:56px}.lab-feedback button:disabled{opacity:.5;cursor:default;box-shadow:none}@media(max-width:520px){.trace-collections{grid-template-columns:1fr;gap:12px}.trace-collections .reading-tile{min-height:130px;display:grid;grid-template-columns:90px 1fr;text-align:left}.trace-collection-icon{grid-row:span 3}}.school-entry{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;background:#e6eedf;border:2px solid #bbceb0;border-radius:24px;padding:24px;margin:22px 0}.school-entry h2{margin:6px 0}.school-entry p{margin:8px 0}.school-entry>div>span{font-size:2rem}.school-entry details{flex-basis:100%;font-size:.95rem}.school-entry details p{max-width:65ch}.school-phrase{font-size:clamp(2.6rem,8vw,5rem);line-height:1.4;text-align:center;color:#284938;padding:28px 0;font-weight:600}.school-oral{max-width:580px;margin:auto;text-align:center;padding:20px 0}.school-oral>span{font-size:3rem}.school-oral>p{font-size:1.25rem;line-height:1.6}.school-oral details{text-align:left;margin:20px 0}.school-model-cue{padding:12px;background:#fff0cb;border-radius:12px;font-size:1rem}.personal-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;margin:20px 0;border:2px solid #4d7765;border-radius:24px;background:#edf4e8;box-shadow:0 5px #d6e2cd}.personal-entry h2{margin:6px 0;font-size:1.65rem}.personal-entry p{margin:6px 0}.personal-entry small{display:block;max-width:50ch}.personal-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.personal-heading h1{font-size:1.7rem;margin:6px 0 16px}.personal-stage{max-width:760px;margin:12px auto;padding:22px}.personal-step{display:flex;justify-content:space-between;gap:10px;font-weight:700;font-size:.9rem}.personal-stage progress{width:100%;height:12px;accent-color:#4d7765}.personal-stage h2{font-size:1.3rem;margin:14px 0}.personal-word{text-align:center;font-size:clamp(3rem,9vw,5rem);font-weight:700;margin:12px 0;line-height:1.2}.personal-prompt{font-size:1.3rem;line-height:1.5;margin:14px 0;white-space:pre-line}.personal-teaching{background:#f5f1e5;border-radius:14px;padding:16px;margin:12px 0}.personal-teaching p{margin:6px 0}.personal-feedback{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.personal-feedback button{min-height:48px;flex:1 1 120px}.personal-build{max-width:300px;margin:auto}.personal-done{text-align:center}.personal-done button{margin:8px}.personal-setup{max-width:850px;margin:auto}.personal-setup label{display:block;margin:16px 0}.personal-setup textarea{display:block;width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #8a9d8b;border-radius:10px}.personal-setup .personal-unit{display:inline-flex;align-items:center;gap:6px;margin:10px}.personal-setup input[type=checkbox]{width:22px;height:22px}.personal-setup button{margin:6px}.personal-setup summary{padding:16px 0;font-weight:700}.personal-table{overflow:auto}.personal-table table{width:100%;border-collapse:collapse;font-size:.9rem}.personal-table th,.personal-table td{text-align:left;padding:10px;border-bottom:1px solid #c8d6c1}@media(max-width:600px){.personal-entry,.personal-heading{display:block}.personal-entry .primary{margin-top:16px;width:100%}.personal-stage{padding:16px}.personal-heading h1{font-size:1.35rem}.personal-prompt{font-size:1.15rem}.personal-entry{padding:18px}.personal-feedback{gap:8px}}.personal-word{font-family:Verdana,sans-serif}@media(min-width:650px)and (max-height:650px){.personal-heading h1{font-size:1.25rem;margin:2px 0}.personal-heading .eyebrow{font-size:.65rem}.personal-heading button{padding:8px 12px;min-height:40px}.personal-stage{margin:6px auto;padding:12px 18px}.personal-stage h2{font-size:1.05rem;margin:6px 0}.personal-word{font-size:3rem;margin:4px 0}.personal-stage button{padding:9px 14px;min-height:44px}.personal-feedback{margin-top:8px}.personal-stage .muted{font-size:.78rem;margin:6px 0}.personal-step{font-size:.8rem}.personal-prompt{font-size:1rem;margin:8px 0}.personal-teaching{padding:10px;margin:8px 0;font-size:.9rem}}:root{font-family:Nunito Variable,ui-rounded,Trebuchet MS,sans-serif;color:var(--ink);background:var(--sky-bottom);--ink: #1f3a52;--muted: #5d6f80;--paper: #ffffff;--line: #d9e6ee;--forest: #2f8f5b;--gold: #ffc53d;--sky-top: #bfe6ff;--sky-bottom: #fff7e8;--meadow: #3fae6a;--meadow-deep: #257a48;--meadow-soft: #e3f7e5;--violet: #7c5ce6;--violet-deep: #5638b8;--violet-soft: #efe9ff;--sun: #ffc53d;--sun-deep: #e09a12;--coral: #ff7a59;--coral-deep: #d4502f;--sky: #3b9eff;--sky-deep: #1f6fd1;--card-shadow: 0 6px 0 rgba(31, 58, 82, .08), 0 18px 40px rgba(31, 58, 82, .08);--display: "Fredoka Variable", "Nunito Variable", ui-rounded, sans-serif}body{min-height:100vh;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 220' preserveAspectRatio='none'%3E%3Cpath d='M0 120 Q240 40 480 110 T960 100 T1440 90 V220 H0Z' fill='%23d6f0c4'/%3E%3Cpath d='M0 170 Q300 110 620 160 T1440 150 V220 H0Z' fill='%23c2e7ad'/%3E%3C/svg%3E") bottom / 100% 180px no-repeat fixed,radial-gradient(circle at 96% 3%,#fff3b0 0 44px,#ffe78a44 45px 90px,transparent 91px) no-repeat fixed,linear-gradient(180deg,var(--sky-top) 0,#e3f4ff 280px,var(--sky-bottom) 620px) fixed;color:var(--ink)}h1,h2,.brand,.pair-code,.verse-ref,.week-stone,.piece{font-family:var(--display)}h1{font-weight:600;letter-spacing:-.5px;color:var(--ink)}h2{font-weight:600;letter-spacing:-.2px}h3{font-family:var(--display);font-weight:600;font-size:19px}.eyebrow{font-family:var(--display);font-weight:600;letter-spacing:1.6px;color:var(--sky-deep)}header{border-bottom:0}.brand{font-weight:700;letter-spacing:1.2px;font-size:16px}.brand-mark{background:linear-gradient(160deg,var(--coral),#ff9f43);color:#fff;border-radius:14px;box-shadow:0 4px 0 var(--coral-deep);transform:rotate(-4deg)}.brand small{font-family:Nunito Variable,sans-serif;letter-spacing:.2px}.page-controls .button,.page-controls .quiet{background:#fffc;box-shadow:0 3px #1f3a5214}.primary,.button,.quiet,.book-tab,.memory-chip,.bible-listen,.bible-sing,.piece{font-family:var(--display);font-weight:600;letter-spacing:.2px;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}.primary{background:var(--coral);color:#fff;border-radius:18px;box-shadow:0 5px 0 var(--coral-deep)}.primary:hover{background:#ff8a6c}.button{background:#fff;color:var(--ink);border-radius:16px;box-shadow:0 4px #cddbe6,inset 0 0 0 2px #e4edf3}.button:hover{background:#f5fbff}button[data-action]:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #0000002e;filter:none}.panel,.week-card,.school-entry,.reading-pick,.finish-card,.modal{background:var(--paper);border:0;border-radius:28px;box-shadow:var(--card-shadow)}.notice{border-radius:18px}.tag{border-radius:999px;font-family:var(--display)}.profile{border-radius:999px;background:#fff;box-shadow:0 3px #d7e3ec;border:0}.profile.selected{background:#fff4d6;box-shadow:0 3px 0 var(--sun-deep),inset 0 0 0 2px var(--sun)}.avatar{background:var(--sun);color:#6b4300;font-family:var(--display)}.hub-intro h1{font-size:clamp(2.3rem,5vw,3.6rem)}.hub-intro .wave{display:inline-block;transform-origin:70% 80%;animation:wave 2.4s ease-in-out 1s 2}.hub-stickers{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.hub-stickers span{background:#fff;border-radius:999px;padding:6px 14px;font-weight:700;box-shadow:0 3px #d7e3ec;font-size:15px}.subject-card{position:relative;border:0;border-radius:34px;box-shadow:0 8px 0 var(--card-edge, #0002),0 22px 40px #1f3a521f;transition:transform .18s ease,box-shadow .18s ease;overflow:hidden}.subject-card:hover{transform:translateY(-4px) rotate(-.4deg)}.kid-choices .subject-card{border:0;box-shadow:0 8px 0 var(--card-edge, #0002),0 22px 40px #1f3a521f}.kid-choices .subject-card:active{box-shadow:0 2px 0 var(--card-edge, #0002)}.kid-choices .subject-card.reading-choice,.subject-card.reading-choice{background:linear-gradient(170deg,#eafbe4,#c9efc0);--card-edge: #8fcf87}.kid-choices .subject-card.bible-choice,.subject-card.bible-choice{background:linear-gradient(170deg,#f4efff,#ddd0ff);--card-edge: #b3a0f0}.subject-card .subject-art svg{animation:bob 5s ease-in-out infinite}.subject-card.bible-choice .subject-art svg{animation-delay:-2.5s}.subject-card h2{font-size:clamp(1.8rem,3.4vw,2.6rem);color:var(--ink)}.choice-play{background:#fff;box-shadow:0 4px #0000001a}.continue-badge{font-family:var(--display);background:var(--sun);color:#5b3a00;border-radius:999px}.reading-welcome h1{font-size:clamp(2.3rem,5vw,3.4rem)}.school-entry{background:linear-gradient(160deg,#fff,#eef9ff)}.reading-pick{background:#ffffffd9}.reading-pick h2{font-size:26px}.reading-tile{font-family:var(--display);border:0!important;border-radius:24px!important;box-shadow:0 6px 0 var(--tile-edge, #cfe3d4),0 14px 28px #1f3a5214!important;transition:transform .15s ease}.reading-tile:hover{transform:translateY(-3px)}.reading-lengths .reading-tile:nth-child(1){background:#fff3d6!important;--tile-edge: #f2c96b}.reading-lengths .reading-tile:nth-child(2){background:#e2f3ff!important;--tile-edge: #9cccf3}.reading-lengths .reading-tile:nth-child(3){background:#ffe6ee!important;--tile-edge: #f3a8c0}.reading-tile strong{font-weight:600}.bible-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin:18px 0 20px}.bible-hero h1{margin:6px 0;font-size:clamp(2.3rem,5vw,3.4rem);color:var(--violet-deep)}.bible-hero p{margin:0;font-weight:700}.star-count{background:#fff;border-radius:999px;padding:4px 12px;box-shadow:0 3px #e6d9a4}.bible-hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.book-tab{background:#fff;color:var(--violet-deep);border-radius:999px;padding:12px 18px;box-shadow:0 4px #d2c6f5}.book-tab.selected{background:var(--violet);color:#fff;box-shadow:0 4px 0 var(--violet-deep)}.week-path{display:flex;gap:12px;overflow-x:auto;padding:8px 4px 18px;margin:0 -4px 12px;scroll-snap-type:x proximity;scrollbar-width:thin}.week-stone{flex:0 0 auto;width:84px;height:92px;border-radius:26px;scroll-snap-align:center;display:grid;place-items:center;align-content:center;gap:4px;background:#fff;color:var(--ink);box-shadow:0 5px #d8d0f2}.stone-emoji{font-size:30px;line-height:1}.stone-week{font-size:13px;font-weight:600}.week-stone.done{background:#fff8db;box-shadow:0 5px #efcf62}.week-stone.current{background:var(--violet);color:#fff;box-shadow:0 5px 0 var(--violet-deep),0 0 0 5px #c9b9ff88;transform:translateY(-2px)}.week-card{padding:30px}.week-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}.week-head h2{margin:4px 0 0;font-size:clamp(1.7rem,3.6vw,2.4rem)}.week-badge{font-size:44px;width:78px;height:78px;display:grid;place-items:center;border-radius:24px;background:var(--violet-soft);flex:0 0 auto}.week-done{animation:pop .4s ease;margin-left:auto;background:#fff3c4;color:#7a5200;border-radius:999px;padding:6px 14px;font-weight:800}.week-activity{display:flex;gap:14px;align-items:center;background:#fff7e0;border-radius:20px;padding:16px 20px;margin-bottom:18px}.week-activity span{font-size:30px}.week-activity p{margin:0;font-weight:700}.bible-block{margin:24px 0}.bible-block>h3{color:var(--violet-deep);margin-bottom:12px}.verse-card{position:relative;background:linear-gradient(170deg,#fbf9ff,#f1ecff);border-radius:26px;padding:24px 26px;margin-bottom:16px;box-shadow:inset 0 0 0 2px #e6defd}.verse-letter{position:absolute;right:18px;top:-14px;width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:32px;background:var(--sun);color:#5b3a00;box-shadow:0 4px 0 var(--sun-deep);transform:rotate(6deg)}.verse-ref{display:inline-block;background:var(--violet);color:#fff;border-radius:999px;padding:6px 16px;font-weight:600;font-size:17px}.verse-words{font-family:var(--display);font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.55;margin:16px 0 14px;color:#2a2150}.verse-list .verse-words{font-size:clamp(1.1rem,2.2vw,1.4rem)}.vw{display:inline-block;border-radius:10px;transition:background .2s}.vw.hidden{color:transparent;background:#dcd2fb;min-width:2.2ch;cursor:pointer;position:relative}.verse-words[data-level="2"] .vw.hidden:before{content:attr(data-first);color:var(--violet-deep);position:absolute;left:.25em}.vw.hidden.peek{color:inherit;background:#fff3c4}.vw.hidden.peek:before{content:none}.verse-note{font-size:14px;color:var(--muted)}.verse-tools,.memory-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.memory-row{margin-top:14px}.bible-listen,.bible-sing{border-radius:16px;padding:14px 20px;font-size:18px}.bible-listen{background:var(--sky);color:#fff;box-shadow:0 5px 0 var(--sky-deep)}.bible-sing{background:var(--sun);color:#5b3a00;box-shadow:0 5px 0 var(--sun-deep)}.memory-chip{background:#fff;color:var(--violet-deep);border-radius:999px;padding:10px 16px;box-shadow:0 3px #d2c6f5}.memory-chip.selected{background:var(--violet-soft);box-shadow:0 3px 0 var(--violet),inset 0 0 0 2px var(--violet)}.track-status{font-size:14px;color:var(--muted)}.verse-card audio,.library-track audio{width:100%;margin-top:10px}.song-slot:empty{display:none}.song-slot{margin-top:14px}.song-slot iframe{width:100%;max-width:640px;aspect-ratio:16 / 9;border:0;border-radius:20px;display:block;background:#000}.song-note{font-size:13px;color:var(--muted);margin:6px 0 0}.verse-builder{margin-top:14px}.builder-line{min-height:1.6em;font-family:var(--display);font-size:clamp(1.3rem,2.6vw,1.8rem);color:#2a2150;background:#fff;border-radius:18px;padding:12px 16px}.builder-line span{animation:pop .25s ease;display:inline-block;white-space:pre}.builder-pieces{display:flex;flex-wrap:wrap;gap:10px}.piece{background:#fff;color:var(--ink);border-radius:16px;padding:12px 16px;font-size:18px;box-shadow:0 4px #d2c6f5}.piece.used{visibility:hidden}.piece.wiggle{animation:wiggle .35s ease}.builder-hint{font-weight:700;color:var(--violet-deep);margin-top:12px}.verse-builder.built .builder-line{background:#fff3c4}.library-track{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:#f6fbff;border-radius:20px;padding:14px 18px;margin-bottom:10px}.library-track>span[aria-hidden]{font-size:26px}.library-track strong{flex:1 1 200px}.library-track .song-slot{flex-basis:100%}.page-turn{align-items:center}.library-page{border-radius:16px;box-shadow:var(--card-shadow)}.week-finish{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:28px 0 10px}.big-star{font-size:21px;padding:18px 26px;background:var(--meadow);box-shadow:0 6px 0 var(--meadow-deep)}.big-star:hover{background:#4cbf78}.grownup-notes{margin-top:18px}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(18deg)}75%{transform:rotate(-10deg)}}@keyframes pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.subject-card .subject-art svg,.hub-intro .wave,.builder-line span,.piece.wiggle{animation:none}.subject-card:hover,.reading-tile:hover{transform:none}}@media(max-width:700px){.week-card,.verse-card{padding:20px 16px}.week-head{flex-wrap:wrap}.week-done{margin-left:0}body{background-size:100% 110px,auto,auto}}.reading-extras .reading-tile:nth-child(3){background:#fff7d1!important;--tile-edge: #eed67a}.reading-extras .reading-tile:nth-child(4){background:#e9e4ff!important;--tile-edge: #b8a9f2}.reading-extras .reading-tile:nth-child(1){background:#e3f7e5!important;--tile-edge: #97d6a4}.reading-extras .reading-tile:nth-child(2){background:#ffe9dc!important;--tile-edge: #f5b393}.review-tile{width:100%;margin:0 0 20px;background:linear-gradient(120deg,#fff3c4,#ffe0ec)!important;--tile-edge: #f0bf6a;display:flex!important;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.review-tile span{font-size:30px}.review-tile strong{font-size:1.5rem}.reading-continue+.week-chart{margin-top:18px}.week-chart{background:#ffffffd9;border-radius:28px;box-shadow:var(--card-shadow);padding:18px 22px;margin:0 0 22px}.week-chart h2{font-size:22px;margin:0 0 10px}.week-chart ol{list-style:none;display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:0;margin:0}.week-chart li{display:grid;place-items:center;gap:2px;background:#f3f7fa;border-radius:18px;padding:10px 4px}.week-chart li span{font-size:26px;line-height:1;color:#b9c6d0}.week-chart li.on{background:#fff3c4;box-shadow:0 3px #efcf62}.week-chart li.on span{animation:pop .4s ease}.week-chart li.today{outline:3px solid var(--sky);outline-offset:2px}.week-chart li small{font-weight:700;font-size:12px}.week-chart p{margin:10px 0 0;font-weight:700;color:var(--muted)}.story-card{text-align:center;background:linear-gradient(170deg,#fffdf2,#fff3d6);border-radius:26px;padding:22px}.story-art{font-size:72px;display:block;animation:bob 5s ease-in-out infinite}.story-card h3{font-size:26px;margin:6px 0 14px}.panel .story-card .story-line,.story-line{font-family:var(--display);font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.3;margin:0 0 10px;color:#2a2150}.story-question{margin-top:14px}.panel .listen-ask,.listen-ask{font-size:22px;text-align:center;font-weight:700}.listen-target{font-size:88px;text-align:center;line-height:1.1;margin-bottom:8px;animation:bob 5s ease-in-out infinite}.listen-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:640px;margin:0 auto}.listen-choices.four{grid-template-columns:repeat(4,minmax(0,1fr));max-width:760px}.listen-pick{display:grid;place-items:center;gap:4px;background:#fff;border-radius:24px;padding:16px 8px;box-shadow:0 5px #d2dfe8,inset 0 0 0 2px #e4edf3;font-family:var(--display);color:var(--ink)}.listen-pick span{font-size:58px;line-height:1.1}.listen-pick small{font-size:18px;font-weight:600}.listen-pick.right{background:#e3f7e5;box-shadow:0 5px 0 var(--meadow),inset 0 0 0 3px var(--meadow);animation:pop .3s ease}.listen-pick.wiggle{animation:wiggle .35s ease}.lab-finish{position:relative;overflow:hidden}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.confetti i{position:absolute;top:-12px;left:calc(var(--i) * 5.5% + 2%);width:10px;height:16px;border-radius:3px;background:hsl(calc(var(--i) * 47),90%,62%);animation:fall 2.4s cubic-bezier(.3,.6,.5,1) calc(var(--i) * 60ms) forwards;opacity:0}@keyframes fall{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(420px) rotate(540deg)}}@media(prefers-reduced-motion:reduce){.confetti,.story-art,.listen-target{animation:none;display:none}.story-art,.listen-target{display:block}}@media(max-width:700px){.listen-choices.four{grid-template-columns:repeat(2,1fr)}.listen-pick span{font-size:46px}.week-chart li span{font-size:20px}}@media print{body{background:#fff!important}#print-cards.verse-print article{border:3px dashed #7c5ce6;border-radius:18px;padding:24px;margin:0 0 20px}#print-cards.verse-print h2{font-size:22pt}#print-cards.verse-print p{font-size:26pt;line-height:1.4;margin:10px 0 0}}header.top-bar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;max-width:1180px;margin:14px auto 0;padding:calc(12px + env(safe-area-inset-top)) 18px 12px;background:#ffffffc7;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:26px;box-shadow:0 4px #1f3a5210,0 12px 30px #1f3a5212}header.top-bar .page-controls{display:flex;gap:8px;margin:0;padding:0}header.top-bar .header-right{margin-left:auto;gap:10px}.nav-pill{font-family:var(--display);font-weight:600;font-size:16px;color:var(--ink);background:#fff;border-radius:999px;padding:10px 16px;min-height:44px;box-shadow:0 3px #cddbe6,inset 0 0 0 2px #e4edf3}.nav-pill:hover{background:#f5fbff}.icon-pill{width:44px;padding:0;font-size:20px}.grownup-pill{background:var(--ink);color:#fff;box-shadow:0 3px #0f2233}.grownup-pill:hover{background:#2a4b68}header.top-bar .offline{max-width:190px}main{padding-top:18px}body{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 220' preserveAspectRatio='none'%3E%3Cpath d='M0 120 Q240 40 480 110 T960 100 T1440 90 V220 H0Z' fill='%23d6f0c4'/%3E%3Cpath d='M0 170 Q300 110 620 160 T1440 150 V220 H0Z' fill='%23c2e7ad'/%3E%3C/svg%3E") bottom / 100% 180px no-repeat fixed,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 360'%3E%3Cg fill='%23ffffff' opacity='.75'%3E%3Cellipse cx='180' cy='250' rx='90' ry='26'/%3E%3Cellipse cx='230' cy='232' rx='60' ry='34'/%3E%3Cellipse cx='1250' cy='300' rx='110' ry='28'/%3E%3Cellipse cx='1200' cy='282' rx='64' ry='36'/%3E%3Cellipse cx='760' cy='330' rx='70' ry='18'/%3E%3C/g%3E%3C/svg%3E") top / 100% auto no-repeat,linear-gradient(180deg,var(--sky-top) 0,#e3f4ff 280px,var(--sky-bottom) 620px) fixed}@media(max-width:700px){header.top-bar{margin:8px 8px 0;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;gap:10px}header.top-bar .brand small,header.top-bar .offline{display:none}header.top-bar .page-controls{order:3;width:100%}header.top-bar .page-controls .nav-pill{flex:1}.nav-pill{font-size:15px;padding:8px 12px}}.welcome{max-width:760px;margin:18px auto 40px;text-align:center}.welcome h1{font-size:clamp(2.4rem,6vw,3.6rem);margin:6px 0 8px}.welcome>p{font-size:18px;color:var(--muted)}.welcome-scene{width:min(440px,90%);margin:0 auto 6px}.welcome-scene img{display:block;width:100%;height:auto;border-radius:48%;-webkit-mask-image:radial-gradient(ellipse,#000 55%,transparent 73%);mask-image:radial-gradient(ellipse,#000 55%,transparent 73%)}.welcome-choices{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.welcome-choice{display:grid;justify-items:center;gap:6px;padding:26px 18px;border-radius:30px;font-family:var(--display);color:var(--ink);transition:transform .15s ease}.welcome-choice:hover{transform:translateY(-3px)}.welcome-choice span{font-size:56px;line-height:1.1}.welcome-choice strong{font-size:26px;font-weight:600}.welcome-choice small{font-family:Nunito Variable,sans-serif;font-size:15px;color:var(--muted);font-weight:700}.welcome-choice.kid{background:linear-gradient(170deg,#fff1e6,#ffd8c2);box-shadow:0 7px #f2a883,0 18px 34px #1f3a5214}.welcome-choice.grownup{background:linear-gradient(170deg,#eef7ff,#d4e9fb);box-shadow:0 7px #9cc6ea,0 18px 34px #1f3a5214}@media(max-width:560px){.welcome-choices{grid-template-columns:1fr}}.lab-build{background:#ffffffd9;border-radius:24px;padding:10px 18px;box-shadow:var(--card-shadow)}.lab-build strong{font-family:var(--display);font-weight:600;font-size:18px}.lab-build progress{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:16px;border:0;border-radius:999px;background:#e6eef3;overflow:hidden}.lab-build progress::-webkit-progress-bar{background:#e6eef3;border-radius:999px}.lab-build progress::-webkit-progress-value{background:linear-gradient(90deg,var(--meadow),#7ad38f);border-radius:999px;transition:width .4s ease}.lab-build progress::-moz-progress-bar{background:linear-gradient(90deg,var(--meadow),#7ad38f);border-radius:999px}.lab-stage h2{font-size:30px}.sight-word{font-family:var(--display);color:var(--violet-deep)!important;animation:pop .35s ease}.lab-part{font-family:var(--display);border-radius:22px!important}#lab-trace{border:0!important;background:#fffdf5!important;box-shadow:inset 0 0 0 3px #f1e6c4}details>summary{cursor:pointer;font-weight:700;color:var(--muted);list-style:none}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"▸";display:inline-block;margin-right:8px;transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}.parent-hint{border-top:2px dashed #e4edf3}.parent-hint p{background:#f5f9fc;border-radius:14px;color:var(--muted)}.lab-feedback .quiet,.school-entry .quiet,.hub-tools{color:var(--muted)}.lab-part{background:#f1f6fa;box-shadow:0 5px #d6e2ea;border:3px solid transparent;transition:background .15s,transform .15s}.lab-part.active{background:#fff1c2;border-color:var(--sun-deep);box-shadow:0 5px 0 var(--sun-deep);transform:translateY(-3px)}.lab-rail{background:#e3edf3;height:14px}#lab-thumb{background:var(--meadow);box-shadow:0 5px 0 var(--meadow-deep)}.lab-audio-choice{background:#f1f6fa;border-radius:999px;padding:10px 18px;font-weight:700}@media(max-width:560px){header.top-bar .brand>span:not(.brand-mark){display:none}header.top-bar .grownup-pill{font-size:14px;padding:8px 12px}}.welcome-choice .role-art{display:block;width:112px;height:112px;object-fit:contain;border-radius:28px;mix-blend-mode:multiply}.subject-art img{display:block;width:100%;height:100%;object-fit:contain;border-radius:22px;mix-blend-mode:multiply}.reading-cabin img{display:block;width:100%;height:auto;border-radius:28px;mix-blend-mode:multiply}@media(max-width:560px){.welcome-scene{width:min(340px,86%)}.welcome-choice .role-art{width:96px;height:96px}}.reading-extras .activity-art{width:80px;height:80px;object-fit:contain;border-radius:20px;mix-blend-mode:multiply;margin:0 auto}[data-page=touch-lab] header.top-bar{margin:6px auto 0;padding:calc(6px + env(safe-area-inset-top)) 12px 6px;gap:8px;flex-wrap:nowrap}[data-page=touch-lab] .top-bar .brand,[data-page=touch-lab] .top-bar .grownup-pill,[data-page=touch-lab] .top-bar .offline{display:none}[data-page=touch-lab] .top-bar .page-controls{order:0;width:auto}[data-page=touch-lab] main{padding:10px 16px calc(16px + env(safe-area-inset-bottom))}[data-page=touch-lab] main>.section-heading{margin:0 auto 8px;max-width:950px;align-items:center;gap:8px}[data-page=touch-lab] main>.section-heading h1{font-size:clamp(18px,3vw,24px);letter-spacing:0}[data-page=touch-lab] main>.section-heading button{min-height:44px;padding:8px 12px;white-space:nowrap}[data-page=touch-lab] main>.lab-build{max-width:950px;gap:12px;padding:4px 12px;margin-bottom:8px}[data-page=touch-lab] main>.lab-build svg{width:64px;height:42px}[data-page=touch-lab] main>.lab-build>div{display:flex;align-items:center;gap:12px}[data-page=touch-lab] main>.lab-build strong{display:none}[data-page=touch-lab] main>.lab-build span{white-space:nowrap;font-size:15px}[data-page=touch-lab] main>.lab-build progress{height:10px}[data-page=touch-lab] .lab-stage{margin:0 auto 12px;padding:12px 18px}[data-page=touch-lab] .lab-stage .section-heading{margin-bottom:4px;align-items:center}[data-page=touch-lab] .lab-stage h2{font-size:22px;margin:0}[data-page=touch-lab] .sight-word{font-size:clamp(64px,17dvh,112px);line-height:1.1;padding:8px 0}[data-page=touch-lab] .sight-prompt{margin:0 0 8px}[data-page=touch-lab] .lab-status{min-height:0;margin:6px 0}[data-page=touch-lab] .lab-status:empty{display:none}[data-page=touch-lab] .lab-feedback{gap:10px;margin:12px 0}[data-page=touch-lab] .lab-feedback button{min-height:48px;padding:10px 14px}[data-page=touch-lab] .lab-stage .parent-hint{margin-top:8px}[data-page=touch-lab] .lab-word{margin:8px auto}[data-page=touch-lab] .lab-part{font-size:clamp(32px,8dvh,64px);padding:8px}[data-page=touch-lab] #lab-slider{height:70px;margin:4px auto}[data-page=touch-lab] .lab-rail{top:30px}[data-page=touch-lab] #lab-thumb{top:4px}[data-page=touch-lab] .lab-audio-choice{padding:6px 12px}[data-page=touch-lab] .school-model-cue{padding:8px;margin:4px 0}[data-page=touch-lab] #lab-trace{min-height:0;height:clamp(140px,calc(100dvh - 400px),320px)}[data-page=touch-lab] .lab-stage .actions{margin:8px 0}[data-page=touch-lab] .school-phrase{padding:12px 0;font-size:clamp(36px,8dvh,64px)}[data-page=touch-lab] .school-oral{padding:4px 0}[data-page=touch-lab] .school-oral>span{display:none}[data-page=touch-lab] .school-oral h3{margin:4px 0}[data-page=touch-lab] .school-oral>p{margin:8px 0;line-height:1.4}[data-page=touch-lab] .school-oral details{margin:8px 0}@media(max-width:650px){[data-page=touch-lab] .lab-feedback{display:grid;grid-template-columns:1fr 1fr}[data-page=touch-lab] .lab-stage{padding:10px 12px}}[data-page=touch-lab] .lab-audio-choice{margin:4px 0;min-height:44px;line-height:1.3}[data-page=touch-lab] .lab-audio-choice input{margin:0;padding:0;min-height:24px}@media(min-width:700px)and (max-height:650px){[data-page=touch-lab] main{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.6fr);gap:8px 16px}[data-page=touch-lab] main>*{grid-column:1 / -1;width:100%}[data-page=touch-lab] main>.section-heading{grid-column:1;margin:0}[data-page=touch-lab] main>.section-heading h1{font-size:18px}[data-page=touch-lab] main>.lab-build{grid-column:2;margin:0}}@media(max-height:700px){[data-page=touch-lab] .story-card{padding:8px 12px}[data-page=touch-lab] .story-art{display:none}[data-page=touch-lab] .story-card h3{font-size:20px;margin:0 0 6px}[data-page=touch-lab] .story-card .story-line{font-size:clamp(24px,5dvh,30px);margin-bottom:6px}[data-page=touch-lab] .story-question{margin-top:6px}[data-page=touch-lab] .listen-ask{font-size:20px;margin:6px 0}[data-page=touch-lab] .listen-target{font-size:48px;margin-bottom:6px}[data-page=touch-lab] .listen-pick{padding:8px}[data-page=touch-lab] .listen-pick span{font-size:44px}}@media(max-width:700px){header.top-bar{gap:6px;flex-wrap:nowrap;padding-left:8px;padding-right:8px}header.top-bar .brand{display:none}header.top-bar .page-controls{order:0;width:auto;gap:6px}header.top-bar .header-right{gap:6px}header.top-bar .nav-pill{font-size:14px;padding:8px 10px;white-space:nowrap}header.top-bar .icon-pill{padding:0;flex-shrink:0}}@media(max-width:380px){header.top-bar .header-right .icon-pill{display:none}[data-page=touch-lab] header.top-bar .header-right .icon-pill{display:block}}
