.phonics-play{background:var(--paper);border:1px solid var(--rule);border-radius:20px;gap:18px;margin:36px 0 8px;padding:clamp(18px,3vw,28px);display:grid}.phonics-play-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.phonics-play h2{font-family:var(--display);margin:0;font-size:1.75rem;font-weight:500}.play-tabs{background:var(--panel);border-radius:calc(var(--radius-segment,10px) + 4px);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.play-tab{border-radius:var(--radius-segment,10px);color:var(--ink-muted);cursor:pointer;font:inherit;min-height:44px;transition:background-color .2s var(--ease-out), color .2s var(--ease-out), transform .16s var(--ease-out), box-shadow .2s var(--ease-out);background:0 0;border:0;padding:0 18px;font-size:.92rem;font-weight:700}.play-tab[aria-selected=true]{background:var(--paper);box-shadow:0 0 0 1px var(--rule);color:var(--ink)}.play-tab:active{transform:scale(.97)}.play-tab:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}@media (hover:hover) and (pointer:fine){.play-tab:not([aria-selected=true]):hover{color:var(--ink)}}@media (max-width:640px){.play-tabs{scrollbar-width:none;flex-wrap:nowrap;width:100%;max-width:100%;display:flex;overflow-x:auto}.play-tabs::-webkit-scrollbar{display:none}.play-tab{white-space:nowrap;flex:1 0 auto;padding:0 12px;font-size:.875rem}.play-tab:focus-visible{outline-offset:-2px}}.play-panel{animation:kl-rise .32s var(--ease-out) both}.play-tool-title{color:var(--ink-muted);font-family:var(--body);letter-spacing:.09em;text-transform:uppercase;margin:0 0 12px;font-size:.8125rem;font-weight:700}.play-hint{color:var(--ink-muted);max-width:56ch;margin:0}.play-actions{flex-wrap:wrap;gap:12px;display:flex}.blend-it{justify-items:start;gap:18px;display:grid}.blend-word{min-height:120px;transition:gap .52s var(--ease-spring);gap:18px;padding:8px 0;display:flex}.blend-word.joined{gap:2px}.blend-tile{background:var(--ground);border:1px solid var(--rule);font-family:var(--display);min-width:84px;transition:background-color .22s ease, border-color .22s ease, transform .26s var(--ease-spring), border-radius .42s var(--ease-out);border-radius:14px;justify-content:center;align-items:center;padding:14px 16px 18px;font-size:clamp(3rem,7vw,4.25rem);font-weight:500;line-height:1;display:inline-flex}.blend-tile.lit{background:var(--terracotta-wash);border-color:var(--terracotta);transform:translateY(-8px)scale(1.06)}.blend-word.joined .blend-tile{background:var(--sage-wash);border-color:#0000;border-radius:6px}.blend-said{color:var(--sage-deep);font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.02em;min-height:1em;margin:0;font-size:clamp(2.6rem,7vw,3.6rem);font-weight:500;line-height:1}.blend-word.joined+.blend-said{animation:kl-rise .42s var(--ease-out) both}.blend-choices{flex-wrap:wrap;gap:8px;display:flex}.blend-choice{background:var(--paper);border:1px solid var(--rule);cursor:pointer;font:inherit;min-height:44px;transition:background-color .2s ease, border-color .2s ease, color .2s ease, transform .16s var(--ease-out);border-radius:999px;padding:0 16px;font-weight:700}.blend-choice[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.blend-choice:active{transform:scale(.96)}.blend-choice:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.sound-hunt{gap:18px;display:grid}.hunt-listen{gap:8px}.hunt-listen svg{width:18px;height:18px}.hunt-options{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:12px;max-width:520px;display:grid}.hunt-tile{aspect-ratio:1;background:var(--ground);border:2px solid var(--rule);color:var(--ink);cursor:pointer;font-family:var(--display);transition:background-color .22s ease, border-color .22s ease, transform .16s var(--ease-out);border-radius:18px;font-size:clamp(2.6rem,6vw,3.6rem);font-weight:500;line-height:1}.hunt-tile:active{transform:scale(.95)}.hunt-tile:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.hunt-tile.right{animation:kl-bloom .62s var(--ease-spring);background:var(--sage-wash);border-color:var(--sage);color:var(--sage-deep)}.hunt-tile.wrong{animation:kl-shake .38s var(--ease-out);border-color:var(--terracotta)}.hunt-tile.hint{border-color:var(--sage);animation:1.4s ease-in-out infinite kl-glow}.hunt-tile:disabled{cursor:default}.hunt-feedback{font-family:var(--display);min-height:1.8rem;margin:0;font-size:1.4rem}@keyframes kl-bloom{35%{transform:scale(1.1)rotate(-3deg)}65%{transform:scale(.97)rotate(1deg)}}@keyframes kl-glow{0%,to{box-shadow:0 0 #55704a59}50%{box-shadow:0 0 0 10px #55704a00}}.write-it{justify-items:start;gap:16px;display:grid}@media (max-width:640px){.blend-word{gap:10px}.blend-tile{min-width:64px;padding:10px 10px 14px}}@media (prefers-reduced-motion:reduce){.blend-word{transition:none}.blend-tile.lit{transform:none}}.sound-flash{justify-items:start;gap:16px;display:grid}.sound-flash-title{color:var(--sage-deep);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:800}.flash-card-wrap{justify-content:center;width:min(100%,520px);display:flex}.flash-card{animation:kl-pop .28s var(--ease-spring) both;background:var(--ground);border:1px solid var(--rule);color:var(--ink);font-family:var(--display);border-radius:28px;justify-content:center;align-items:baseline;width:100%;min-height:1.6em;margin:0;padding:.18em .4em .26em;font-size:clamp(5.5rem,20vw,9rem);font-weight:500;line-height:1;transition:background-color .24s,border-color .24s;display:flex}.flash-card.listening{background:var(--sage-wash);border-color:var(--sage)}.flash-gap{opacity:.55;border-bottom:.07em solid;width:.55em;margin:0 .08em;display:inline-block}.flash-actions{flex-wrap:wrap;gap:10px;display:flex}.flash-actions .button{min-width:132px;min-height:56px}.flash-actions .button[aria-disabled=true]{cursor:progress}.flash-hear{gap:8px}.flash-hear svg{width:18px;height:18px}.flash-workbook{color:var(--ink-muted);margin:0;font-size:.92rem}.flash-workbook cite{font-style:italic}.flash-finish{color:var(--ink-muted);cursor:pointer;font:inherit;text-underline-offset:4px;background:0 0;border:0;min-height:44px;padding:0;font-size:.92rem;text-decoration:underline}.flash-finish:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.sound-flash-warm{color:var(--ink);font-family:var(--display);max-width:40ch;font-size:1.4rem}.flash-again{background:var(--terracotta-wash);border-radius:18px;gap:10px;padding:16px 20px;display:grid}.flash-again h4{margin:0;font-size:1rem}.flash-again ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.flash-again-tile{background:var(--paper);border:1px solid var(--rule);color:var(--ink);font-family:var(--display);border-radius:14px;justify-content:center;align-items:center;gap:8px;min-width:56px;min-height:56px;padding:8px 14px;font-size:2rem;font-weight:500;line-height:1;display:inline-flex}button.flash-again-tile{cursor:pointer;transition:border-color .2s ease, transform .16s var(--ease-out)}button.flash-again-tile:hover{border-color:var(--terracotta)}button.flash-again-tile:active{transform:scale(.96)}button.flash-again-tile:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.flash-again-tile svg{width:16px;height:16px}.flash-note{color:var(--ink-muted);margin:0;font-size:.92rem}.child-turn-play .flash-actions .button{min-width:150px;min-height:64px}@media (max-width:640px){.flash-actions{width:100%}.flash-actions .button{flex:40%;min-width:0}}@media (prefers-reduced-motion:reduce){.flash-card,button.flash-again-tile{transition:none}.flash-card{animation:none}}.topic-art{aspect-ratio:3/2;background:var(--panel);border-radius:14px;display:block;position:relative;overflow:hidden}.topic-art img{object-fit:cover;transition:transform .7s var(--ease-out)}.topic-art-foundations{--cover-field:var(--terracotta-wash);--cover-ink:var(--terracotta-deep)}.topic-art-arts{--cover-field:var(--indigo-wash);--cover-ink:var(--indigo-deep)}.topic-art-social{--cover-field:var(--sage-wash);--cover-ink:var(--sage-deep)}.topic-art-technical{--cover-field:var(--panel);--cover-ink:var(--ink)}.topic-art.has-cover{background:var(--cover-field);container-type:inline-size}.topic-cover{color:var(--cover-ink);transition:transform .7s var(--ease-out);grid-template-rows:auto 1fr auto;padding:7cqw 8cqw 6cqw;display:grid;position:absolute;inset:0}.topic-cover-lane{font-family:var(--body);letter-spacing:.12em;text-transform:uppercase;font-size:clamp(.625rem,3.6cqw,.8125rem);font-weight:700;line-height:1.2}.topic-cover-band{opacity:.32;height:9cqw;left:0;top:var(--band-y,50%);width:100%;position:absolute;translate:0 -50%}.topic-cover-band path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.topic-cover-band path.is-filled{fill:currentColor;stroke:none}.topic-cover.is-band-top{--band-y:34%}.topic-cover.is-band-middle{--band-y:52%}.topic-cover.is-band-low{--band-y:88%}.topic-cover-mark{font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.03em;white-space:nowrap;grid-row:3;align-self:end;max-width:100%;padding-inline-end:.12em;font-weight:450;line-height:.82;position:relative}.topic-cover.is-initial .topic-cover-mark{font-size:44cqw}.topic-cover.is-initial{--band-y:25%}.topic-cover.is-word .topic-cover-mark{font-size:15cqw;font-style:italic;line-height:1}.topic-cover.is-end .topic-cover-mark{justify-self:end}.topic-cover.is-band-low .topic-cover-mark{margin-bottom:8cqw}@container (max-width:160px){.topic-cover-lane{display:none}.topic-cover{grid-template-rows:1fr}.topic-cover-mark{grid-row:1}}@media (hover:hover) and (pointer:fine){.topic-card:hover .topic-cover{transform:scale(1.03)}}@media (prefers-reduced-motion:reduce){.topic-cover{transition:none}}@media print{.topic-art.has-cover{border:1px solid var(--rule);background:0 0}}.topic-card{border-top:1px solid var(--rule);overflow:hidden}.topic-card-art{border-radius:0}@media (hover:hover) and (pointer:fine){.topic-card:hover .topic-art img{transform:scale(1.05)}}.lesson-art{border-radius:20px;margin-bottom:20px}@media (max-width:620px){.lesson-home .lesson-art{display:none}}.also-art{aspect-ratio:3/2;border-radius:10px;flex-shrink:0;width:96px}.also-today li{justify-content:flex-start}.also-today li>div{flex:1}@media (max-width:520px){.also-art{display:none}}.sitting-celebrate{animation:kl-rise .42s var(--ease-out) both;justify-items:start;gap:16px;display:grid}.reflection-card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);justify-items:start;gap:12px;width:100%;padding:clamp(24px,4vw,32px);display:grid}.reflection-card h2{font-family:var(--display);letter-spacing:-.01em;margin:0 0 4px;font-size:clamp(1.45rem,2.4vw,1.75rem);font-weight:500;line-height:1.2}.reflection-ask{color:var(--ink-muted);margin:12px 0 0}.reflection-done{color:var(--sage-deep);font-family:var(--display);margin:0;font-size:1.35rem;line-height:1.3}.reflection-card .reflection-choices{background:var(--panel);border-radius:calc(var(--radius-segment,10px) + 4px);flex-wrap:wrap;gap:4px;padding:4px;display:flex}.reflection-card .reflection-choice{border-radius:var(--radius-segment,10px);color:var(--ink);cursor:pointer;font:inherit;min-height:48px;transition:background-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.reflection-card .reflection-choice:active{transform:scale(.97)}.reflection-card .reflection-choice[aria-pressed=true]{background:var(--paper);box-shadow:0 0 0 1px var(--rule);color:var(--ink)}.reflection-card .reflection-choice:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.reflection-card .choice-tick{opacity:0;transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);transform:scale(.6)}.reflection-card [aria-pressed=true]>.choice-tick{opacity:1;transform:none}.reflection-helps{flex-wrap:wrap;gap:8px;display:flex}.reflection-chip{background:var(--paper);border:1px solid var(--rule-strong,var(--rule));border-radius:var(--radius-segment,10px);color:var(--ink);cursor:pointer;font:inherit;min-height:48px;transition:background-color .2s var(--ease-out), border-color .2s var(--ease-out), transform .16s var(--ease-out);align-items:center;gap:8px;padding:0 16px 0 12px;font-weight:600;display:inline-flex}.reflection-chip[aria-pressed=true]{background:var(--sage-wash);border-color:var(--sage);color:var(--sage-deep)}.reflection-chip:active{transform:scale(.97)}.reflection-chip:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.reflection-card>.button{margin-top:8px}@media (prefers-reduced-motion:reduce){.reflection-card .reflection-choice,.reflection-chip,.reflection-card .choice-tick{transition:none}}.celebrate-mark{background:var(--sage-wash);border-radius:28px;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative;overflow:visible}.celebrate-line{color:var(--ink-muted);max-width:48ch;margin:0;font-size:1.15rem}.year-areas{gap:8px;display:grid}.year-area{border-top:1px solid var(--rule);padding:28px 0 8px}.year-area h2{font-family:var(--display);margin:0 0 12px;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:500}.year-goals{gap:4px;margin:0;padding:0;list-style:none;display:grid}.year-goals>li{border-bottom:1px solid var(--rule);gap:10px;padding:16px 0;display:grid}.year-goal-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.year-goal-head p{max-width:62ch;margin:0;font-weight:600;line-height:1.45}.year-lessons{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.year-lessons a{background:var(--paper);border:1px solid var(--rule);color:var(--ink);min-height:40px;transition:border-color .2s ease, transform .16s var(--ease-out);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:.92rem;text-decoration:none;display:inline-flex}.year-lessons a:hover{border-color:var(--terracotta)}.year-lessons a:active{transform:scale(.97)}.year-lessons a:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.term-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.term-autumn{background:var(--terracotta)}.term-spring{background:var(--sage)}.term-summer{background:var(--indigo)}.year-more summary{color:var(--ink-muted);cursor:pointer;min-height:40px;padding:8px 0;font-weight:700}.year-more .year-lessons{margin-top:6px}.year-key{color:var(--ink-muted);flex-wrap:wrap;gap:20px;margin-top:24px;display:flex}.year-key>span{align-items:center;gap:8px;display:inline-flex}@media (max-width:640px){.year-goal-head{flex-direction:column;gap:8px}}.first-day{animation:kl-rise .42s var(--ease-out) both;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);margin:8px 0 56px;padding:clamp(24px,4vw,40px)}.first-day h2{font-family:var(--display);letter-spacing:-.02em;max-width:26ch;margin:12px 0;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:500;line-height:1.15}.first-day-lede{color:var(--ink-muted);max-width:60ch;margin:0 0 28px}.first-day-steps{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none;display:grid}.first-day-steps li{animation:kl-rise .42s var(--ease-out) both;border-bottom:1px solid var(--rule);grid-template-columns:auto minmax(0,1fr);gap:20px;padding:20px 0;display:grid}.first-day-steps strong{margin-bottom:4px;font-size:1.05rem;display:block}.first-day-steps p{color:var(--ink-muted);max-width:65ch;margin:0;line-height:1.6}.first-day-number{border:1px solid var(--terracotta);color:var(--terracotta-deep);font-family:var(--display);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.15rem;display:inline-flex}.first-day-check-row{margin:28px 0 0}.first-day-links{flex-wrap:wrap;gap:8px 24px;margin:24px 0 0;display:flex}.first-day-links a{color:var(--terracotta-deep);text-underline-offset:4px;font-weight:700}@media (prefers-reduced-motion:reduce){.first-day,.first-day-steps li{animation:none}}.start-check-shell{justify-content:center;padding-block:clamp(24px,6vw,64px);display:flex}.start-check{width:100%;max-width:640px}.start-check-card{animation:kl-rise .3s var(--ease-out) both;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);gap:16px;padding:clamp(24px,4vw,40px);display:grid}.start-check-card h1{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(2rem,4.5vw,2.8rem);font-weight:500;line-height:1.1}.start-check-card h1:focus{outline:none}.start-check-card h1:focus-visible{outline:2px solid var(--terracotta);outline-offset:4px}.start-check-card p{color:var(--ink-muted);margin:0;line-height:1.6}.start-check-card>.eyebrow{margin:0}.start-check-lede{max-width:56ch}.start-check-how{border-top:1px solid var(--rule);color:var(--ink);counter-reset:check-step;margin:8px 0 0;padding:0;list-style:none;display:grid}.start-check-how li{border-bottom:1px solid var(--rule);counter-increment:check-step;grid-template-columns:32px minmax(0,1fr);gap:16px;padding:14px 0;line-height:1.55;display:grid}.start-check-how li:before{border:1px solid var(--terracotta);color:var(--terracotta-deep);content:counter(check-step);font-family:var(--display);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;display:inline-flex}.start-check-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.start-check-top .eyebrow{margin:0}.start-check-dots{gap:8px;display:inline-flex}.start-check-dots i{border:1.5px solid var(--rule);height:10px;transition:background-color .2s var(--ease-out), border-color .2s var(--ease-out), transform .2s var(--ease-out);border-radius:50%;width:10px}.start-check-dots i[data-state=done]{background:var(--sage);border-color:var(--sage)}.start-check-dots i[data-state=now]{background:var(--terracotta);border-color:var(--terracotta);transform:scale(1.2)}.start-check-letter{animation:kl-pop .28s var(--ease-out) both;background:var(--paper);border:2px solid var(--panel);border-radius:var(--radius-card,20px);font-family:var(--display);letter-spacing:.02em;text-align:center;justify-self:center;min-width:60%;margin:8px 0;padding:32px 40px 44px;font-size:clamp(6rem,22vw,10rem);font-weight:500;line-height:1;color:var(--ink)!important}.start-check-ask{text-align:center;font-size:1.1rem;color:var(--ink)!important}.start-check-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.start-check-actions .button{border-radius:var(--radius-control,12px);min-width:160px;min-height:56px}.start-check-skip{color:var(--ink-muted);cursor:pointer;font:inherit;text-underline-offset:4px;background:0 0;border:0;justify-self:center;min-height:44px;text-decoration:underline}.start-check-result ul{border-top:1px solid var(--rule);margin:8px 0 0;padding:0;list-style:none;display:grid}.start-check-result li{border-bottom:1px solid var(--rule);padding:16px 0;line-height:1.6}.start-check-result li strong{color:var(--ink);font-family:var(--display);margin-bottom:4px;font-size:1.3rem;font-weight:500;display:block}.start-check-sounds{color:var(--ink);white-space:nowrap;font-weight:700}.start-check-note{background:var(--sage-wash);border-radius:var(--radius-control,12px);padding:14px 18px;color:var(--sage-deep)!important}@media (prefers-reduced-motion:reduce){.start-check-card,.start-check-letter{animation:none}.start-check-dots i{transition:none}}.first-day-check{border-radius:var(--radius-control,12px);text-decoration:none}.choice-tick{fill:none;height:14px;stroke:var(--sage-deep);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;flex:none;width:14px}.section-stage .spoken-line{letter-spacing:-.02em;max-width:24ch;margin:20px 0 28px;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:480;line-height:1.14}.sitting-role{background:var(--indigo-wash);color:var(--indigo-deep);border-radius:999px;align-items:center;gap:8px;margin:4px 0 0;padding:6px 14px 6px 12px;font-size:.9375rem;font-weight:700;display:inline-flex}.sitting-role:before,.sync-note:before,.guide-verified:before,.handover-kicker:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.learning-main .sync-line{margin:24px 0 0;display:flex}.sync-note{background:var(--panel);color:var(--ink-muted);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 12px;font-size:.875rem;font-weight:600;display:inline-flex}.sync-line.is-saved .sync-note{background:var(--sage-wash);color:var(--sage-deep)}.sync-line.is-saved .sync-note:before{display:none}.sitting-play{border-top:1px solid var(--rule);margin-top:40px}.sitting-play>summary{color:var(--ink);cursor:pointer;align-items:center;gap:12px;min-height:48px;padding:8px 0;font-weight:700;list-style:none;display:flex}.sitting-play>summary::-webkit-details-marker{display:none}.sitting-play>summary:after{border-bottom:2px solid var(--ink-muted);border-right:2px solid var(--ink-muted);content:"";height:8px;transition:transform .2s var(--ease-out);width:8px;margin-left:4px;transform:translateY(-2px)rotate(45deg)}.sitting-play[open]>summary:after{transform:translateY(2px)rotate(225deg)}.sitting-play>summary:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.step-rail li{border-bottom:0;grid-template-columns:28px minmax(0,1fr) auto;column-gap:14px;min-height:56px;position:relative}.step-rail li.current{background:0 0;margin:0;padding:0}.step-rail li:not(:last-child):after{background:var(--rule);content:"";width:1px;height:calc(100% - 28px);position:absolute;top:calc(50% + 14px);left:13.5px}.step-dot{background:var(--paper);border:1px solid var(--rule);color:var(--ink-muted);font-family:var(--display);z-index:1;width:28px;height:28px;transition:background-color .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;display:inline-flex;position:relative}.step-dot svg{fill:none;height:14px;stroke:var(--paper);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:14px}.step-rail li[data-state=done] .step-dot{background:var(--sage);border-color:var(--sage)}.step-rail li.current .step-dot{border:2px solid var(--terracotta);box-shadow:0 0 0 3px var(--terracotta-wash);color:var(--terracotta-deep)}.step-name{overflow-wrap:anywhere;gap:2px;min-width:0;font-size:.9375rem;line-height:1.3;display:grid}.step-rail li.current .step-name{color:var(--ink);font-weight:700}.step-badge{color:var(--ink-muted);letter-spacing:.08em;font-size:.75rem;font-weight:700}.step-rail-nav li{min-height:0;display:block}.step-rail-nav .step-row{border-radius:var(--radius-segment,10px);color:inherit;cursor:pointer;font:inherit;text-align:left;min-height:56px;transition:background-color .2s var(--ease-out);background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;column-gap:14px;width:calc(100% + 16px);margin:0 -8px;padding:6px 8px;display:grid}.step-rail-nav .step-row:focus-visible{outline:2px solid var(--terracotta);outline-offset:0}.step-rail-nav .step-state{color:var(--ink-muted);justify-self:end;font-size:.8125rem}.step-rail-nav li.current .step-state{color:var(--terracotta-deep);font-weight:700}@media (hover:hover) and (pointer:fine){.step-rail-nav li:not(.current) .step-row:hover{background:color-mix(in srgb, var(--paper) 60%, transparent)}}.guide-main .guide-prompt,.section-stage .guide-prompt{color:var(--ink)}.guide-pin-link{align-items:center;min-height:44px;margin-top:16px;display:inline-flex}.handover-sheet,.inline-gate{background:var(--paper);border:1px solid var(--rule)}.handover-kicker{background:var(--indigo-wash);color:var(--indigo-deep);border-radius:999px;align-items:center;gap:8px;margin:0;padding:5px 12px 5px 10px;display:inline-flex}.handover-sheet h2,.inline-gate h1{margin:24px 0 12px}.handover-sheet>p:not(.eyebrow),.inline-gate>p:not(.eyebrow){max-width:38ch;margin-inline:auto}.inline-gate .pin-label{margin:0}.handover-sheet .pin-single,.inline-gate .pin-single{background:var(--ground);border:1px solid var(--rule-strong,var(--rule));font-family:var(--body);font-variant-numeric:tabular-nums;letter-spacing:.6em;text-align:center;max-width:320px;height:72px;transition:border-color .2s var(--ease-out), background-color .2s var(--ease-out);margin:28px auto 20px;padding:0 12px 0 calc(.6em + 12px);font-size:2rem}.handover-sheet .pin-single::placeholder,.inline-gate .pin-single::placeholder{color:var(--rule-strong,var(--ink-muted));letter-spacing:.6em}.handover-sheet .pin-single:focus,.inline-gate .pin-single:focus{background:var(--paper);border-color:var(--terracotta)}.handover-sheet .button,.inline-gate .button{width:100%}.handover-sheet .button+.button{margin-top:10px}.pin-not-now{cursor:pointer;font:inherit;background:0 0;border:0;min-height:44px;margin:16px auto 0;padding:8px 12px;font-weight:700;display:block}.pin-forgot{color:var(--ink-muted);font-size:.875rem;margin:16px auto 0!important}.pin-forgot a{color:var(--terracotta-deep);text-underline-offset:3px;font-weight:700;text-decoration:underline}.guide-verified{background:var(--sage-wash);color:var(--sage-deep);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 12px;font-size:.8125rem;font-weight:700;display:inline-flex}.guide-main .guide-prompt{margin-top:12px}.guide-main .guide-prompt:focus:not(:focus-visible){outline:none}.guidance-block p+p,.guidance-block p+.authored-list,.guidance-block .authored-list+p{margin-top:10px}.authored-list{gap:8px;margin:0;padding-left:1.4em;display:grid}.authored-list li{padding-left:4px}.authored-list li::marker{color:var(--ink-muted);font-weight:700}.authored-prompt .authored-list{white-space:normal}.decision-card+.decision-card{margin-top:28px}.decision-form{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);margin-top:56px;padding:0 clamp(24px,4vw,40px)}.decision-form>*+*{border-top:1px solid var(--rule)}.decision-form>.decision-card{box-shadow:none;background:0 0;border-bottom:0;border-left:0;border-right:0;border-radius:0;margin:0;padding:clamp(28px,4vw,40px) 0}.decision-form>.decision-card:first-child{border-top:0}.decision-form>.rule-note{margin:24px 0}.decision-head{align-items:start;gap:16px;display:flex}.decision-number{border:1px solid var(--terracotta);color:var(--terracotta-deep);font-family:var(--display);border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;margin-top:2px;font-size:1.1rem;display:inline-flex}.decision-head h2{margin:12px 0 0}.decision-card .field-group{margin-top:28px}.decision-card .field-group legend{color:var(--ink);margin-bottom:12px;font-size:.875rem;font-weight:700}.decision-card .decision-options{background:var(--panel);border-radius:calc(var(--radius-segment,10px) + 4px);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.decision-card .decision-option{border-radius:var(--radius-segment,10px);color:var(--ink-muted);cursor:pointer;text-align:left;min-height:120px;transition:background-color .2s var(--ease-out), box-shadow .2s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-content:start;gap:6px;padding:16px 16px 18px;display:grid;position:relative}.decision-card .decision-option input{appearance:none;border-radius:inherit;cursor:pointer;opacity:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.decision-card .decision-option input:disabled{cursor:not-allowed}.decision-card .decision-option strong{color:var(--ink);font-size:1rem;line-height:1.25}.decision-card .decision-option span{color:var(--ink-muted);margin:0;line-height:1.4}.decision-icon{color:var(--ink-muted);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;height:32px;transition:color .2s var(--ease-out);width:32px}.decision-tick{fill:none;opacity:0;height:18px;stroke:var(--sage-deep);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);width:18px;position:absolute;top:14px;right:14px;transform:scale(.6)}.decision-card .decision-option:has(input:checked){background:var(--paper);box-shadow:0 0 0 1px var(--rule);color:var(--ink)}.decision-option:has(input:checked) .decision-icon{color:var(--terracotta)}.decision-option:has(input:checked) .decision-tick{opacity:1;transform:none}.decision-card .decision-option:active{transform:scale(.97)}.decision-card .decision-option:has(input:focus-visible){outline:2px solid var(--terracotta);outline-offset:2px}.decision-card .decision-option:has(input:disabled){cursor:not-allowed}.decision-card .decision-option:has(input:disabled) strong{color:var(--ink-muted)}.decision-rule{color:var(--indigo-deep);max-width:62ch;margin:12px 0 0;font-size:.9375rem;line-height:1.5}.decision-card .choice-chips,.decision-card .confidence-row{background:var(--panel);border-radius:calc(var(--radius-segment,10px) + 4px);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.decision-card .choice-chip{border-radius:var(--radius-segment,10px);color:var(--ink-muted);cursor:pointer;min-height:48px;transition:background-color .2s var(--ease-out), box-shadow .2s var(--ease-out), color .2s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:0 16px;font-size:.875rem;font-weight:700;display:inline-flex}.decision-card .choice-chip[aria-pressed=true]{background:var(--paper);box-shadow:0 0 0 1px var(--rule);color:var(--ink);border-color:#0000}.decision-card .choice-chip:active{transform:scale(.97)}.decision-card .plain-note{max-width:62ch;margin-top:24px}.decision-card .decision-submit{margin-top:20px}@media (hover:hover) and (pointer:fine){.decision-card .choice-chip:not([aria-pressed=true]):hover{background:color-mix(in srgb, var(--paper) 55%, transparent);color:var(--ink)}.decision-card .decision-option:not(:has(input:checked)):not(:has(input:disabled)):hover{background:color-mix(in srgb, var(--paper) 55%, transparent);color:var(--ink)}}@media (max-width:640px){.decision-card .decision-options{grid-template-columns:minmax(0,1fr)}.decision-card .decision-option{grid-template-columns:32px minmax(0,1fr);gap:2px 14px;min-height:0}.decision-card .decision-option .decision-icon{grid-row:span 2}}@media (prefers-reduced-motion:reduce){.decision-card .decision-option,.decision-card .choice-chip,.decision-tick,.decision-icon,.step-dot,.sitting-play>summary:after{transition:none}}.child-turn{background:var(--ground);min-height:100dvh;padding:clamp(16px,3vw,32px)}.child-turn-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1040px;margin:0 auto 8px;display:flex}.child-turn-header h1{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:500}.child-turn-play{max-width:1040px;margin:0 auto}.child-turn-play .play-tab,.child-turn-play .button{min-height:56px}.child-turn-exit{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-control,12px);color:var(--ink-muted);cursor:pointer;min-height:48px;font:inherit;touch-action:none;-webkit-user-select:none;user-select:none;padding:12px 18px;font-size:.85rem;font-weight:700;position:relative;overflow:hidden}.child-turn-exit-fill{background:var(--terracotta-wash);transform-origin:0;transition:transform .2s var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.child-turn-exit.holding .child-turn-exit-fill{transition:transform var(--hold) linear;transform:scaleX(1)}.child-turn-exit-label{position:relative}.child-turn-exit:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.lesson-child-turn{background:var(--sage-wash);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin:24px 0 0;padding:16px 20px;display:flex}.lesson-child-turn p{color:var(--sage-deep);max-width:52ch;margin:0}@media (prefers-reduced-motion:reduce){.child-turn-exit.holding .child-turn-exit-fill{transition:none}}.child-turn-tools{align-items:center;gap:10px;display:flex}.child-turn-read{background:var(--paper);border:2px solid var(--sage-deep);border-radius:var(--radius-control,12px);color:var(--sage-deep);cursor:pointer;font:inherit;min-height:48px;transition:background-color .2s var(--ease-out), color .2s var(--ease-out), transform .16s var(--ease-out);padding:8px 18px;font-weight:700}.child-turn-read:active{transform:scale(.97)}.child-turn-read[aria-pressed=true]{background:var(--sage-deep);color:var(--paper)}.child-turn-read:focus-visible{outline:3px solid var(--sage-deep);outline-offset:3px}.story-listen{background:var(--sage-wash);border-radius:18px;margin:24px 0 0;padding:16px 20px}.story-listen h2{margin:0 0 4px;font-size:1.15rem}.story-listen p{color:var(--sage-deep);max-width:52ch;margin:0 0 12px}.story-listen audio{width:28rem;max-width:100%;display:block}.story-listen .story-listen-voice{margin:8px 0 0;font-size:.85rem}.maths-voice{flex-wrap:wrap;align-items:center;gap:6px 12px;margin:12px 0 0;display:flex}.maths-voice p{color:var(--muted,inherit);margin:0;font-size:.85rem}
.maths-play .play-panel{gap:4px;min-width:0;display:grid}.maths-tool{gap:22px;min-width:0;display:grid}.maths-play .button[aria-disabled=true]{background:var(--panel);border-color:var(--rule);box-shadow:none;color:var(--ink-muted);cursor:default}.maths-play .button[aria-disabled=true]:active{transform:none}.maths-readout{align-content:center;justify-items:start;gap:10px;min-width:11rem;display:grid}.maths-numeral{animation:kl-pop .38s var(--ease-spring) both;color:var(--ink);font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.03em;transform-origin:0 100%;min-height:.88em;font-size:clamp(4.5rem,13vw,7rem);font-weight:500;line-height:.88;display:block}.maths-numeral.is-asking{color:var(--terracotta)}.maths-readout-words{color:var(--ink-muted);max-width:30ch}.maths-sentence{font-family:var(--display);margin:0;font-size:clamp(1.5rem,4vw,2rem);font-weight:500;line-height:1.2}.maths-sentence-full{color:var(--terracotta)}.maths-sentence-empty{color:var(--ink-muted)}.maths-sentence-other{color:var(--indigo)}.maths-note{color:var(--sage-deep);margin:0;font-weight:600}.maths-verdict{font-family:var(--display);min-height:1.8rem;margin:0;font-size:1.4rem;line-height:1.3}.maths-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.maths-counter{animation:maths-drop .42s var(--ease-spring) both;aspect-ratio:1;background:radial-gradient(circle at 34% 30%, #fffdf86b, transparent 56%), var(--terracotta);border-radius:50%;width:72%;display:block;box-shadow:inset 0 -3px #2b24202e}@keyframes maths-drop{0%{transform:translateY(-8px)scale(.45)}}.maths-stepper{justify-self:start;align-items:center;gap:16px;display:inline-flex}.maths-step{background:var(--paper);border:1px solid var(--rule);color:var(--ink);width:52px;height:52px;transition:transform .16s var(--ease-out), border-color .2s ease, background-color .2s ease;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.maths-step svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.4px;width:20px;height:20px}.maths-step:active{transform:scale(.93)}.maths-step:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.maths-step[aria-disabled=true]{background:var(--panel);color:var(--ink-muted);cursor:default}.maths-step[aria-disabled=true]:active{transform:none}@media (hover:hover) and (pointer:fine){.maths-step:not([aria-disabled=true]):hover{border-color:var(--ink-muted)}}.maths-stepper-value{justify-items:center;min-width:76px;display:grid}.maths-stepper-label{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.maths-stepper-number{animation:kl-pop .32s var(--ease-spring) both;font-family:var(--display);font-size:2.6rem;font-weight:500;line-height:1}.maths-count{flex-wrap:wrap;align-items:center;gap:24px 48px;display:flex}.maths-count-tray{flex-wrap:wrap;align-items:flex-start;gap:16px 20px;display:flex}.maths-count-ten{background:var(--ground);border:1px solid var(--rule);grid-template-columns:repeat(var(--cols,5), 56px);border-radius:20px;gap:8px;padding:12px;display:grid}.maths-shell{width:56px;height:56px;transition:transform .16s var(--ease-out);background:0 0;border:0;border-radius:14px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.maths-shell:active:not([aria-disabled=true]){transform:scale(.92)}.maths-shell[aria-disabled=true]{cursor:default}.maths-shell:focus-visible{outline:2px solid var(--terracotta);outline-offset:1px}.maths-cowrie{height:50px;transform:rotate(var(--tilt,0deg));width:auto;overflow:visible}.maths-cowrie-back{fill:var(--paper);stroke:var(--ink-muted);stroke-opacity:.45;stroke-width:1.5px}.maths-cowrie-shine{fill:var(--ground)}.maths-cowrie-mouth{fill:var(--ink-muted);fill-opacity:.28}.maths-cowrie-teeth{fill:none;stroke:var(--ink-muted);stroke-linecap:round;stroke-opacity:.35;stroke-width:1.3px}.maths-shell.is-lit .maths-cowrie{animation:maths-shell-pop .48s var(--ease-spring) both}.maths-shell.is-lit .maths-cowrie-back{fill:var(--terracotta-wash);stroke:var(--terracotta);stroke-opacity:1}.maths-shell.is-lit .maths-cowrie-shine{fill:var(--paper)}.maths-shell.is-lit .maths-cowrie-mouth{fill:var(--terracotta-deep);fill-opacity:1}.maths-shell.is-lit .maths-cowrie-teeth{stroke:var(--terracotta);stroke-opacity:1}@keyframes maths-shell-pop{0%{transform:rotate(var(--tilt,0deg)) translateY(0) scale(.82)}55%{transform:rotate(var(--tilt,0deg)) translateY(-6px) scale(1.14)}to{transform:rotate(var(--tilt,0deg)) translateY(0) scale(1)}}.maths-shell-number{animation:kl-pop .34s var(--ease-spring) 60ms both;background:var(--terracotta);box-shadow:0 0 0 2px var(--ground);color:var(--paper);text-align:center;border-radius:999px;min-width:22px;height:22px;padding:0 5px;font-size:.74rem;font-weight:800;line-height:22px;position:absolute;top:-3px;right:-1px}.maths-look{flex-wrap:wrap;align-items:center;gap:24px 48px;display:flex}.maths-look-board{aspect-ratio:1;background:radial-gradient(circle, var(--rule) 1.4px, transparent 1.6px) 0 0 / 22px 22px, var(--ground);border:1px solid var(--rule);border-radius:28px;flex:none;width:min(236px,100%);position:relative}.maths-look-dot{aspect-ratio:1;background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo);filter:blur(6px);opacity:0;transition:opacity .52s ease, transform .52s var(--ease-out), filter .52s ease;border-radius:50%;width:17%;margin:-8.5% 0 0 -8.5%;position:absolute;transform:scale(.7)}.maths-look-board.is-showing .maths-look-dot,.maths-look-board.is-revealed .maths-look-dot{filter:blur();opacity:1;transition-duration:.14s,.26s,.14s;transition-timing-function:ease, var(--ease-spring), ease;transform:scale(1)}.maths-frame-wrap{flex-wrap:wrap;align-items:center;gap:24px 48px;display:flex}.maths-frame{background:var(--panel);border-radius:20px;grid-template-columns:repeat(5,64px);gap:8px;padding:10px;display:grid;box-shadow:inset 0 2px 6px #2b242012}.maths-frame-cell{aspect-ratio:1;background:var(--paper);border:1px solid var(--rule);transition:transform .16s var(--ease-out), border-color .2s ease;border-radius:14px;justify-content:center;align-items:center;padding:0;display:flex}.maths-frame-cell:active{transform:scale(.94)}.maths-frame-cell:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}@media (hover:hover) and (pointer:fine){.maths-frame-cell:hover{border-color:var(--ink-muted)}}.maths-part-layout{justify-items:center;gap:20px;display:grid}.maths-part-whole{justify-items:center;width:min(600px,100%);display:grid}.maths-part-layout .maths-readout{text-align:center;justify-items:center;min-width:0}.maths-whole{background:var(--sage-wash);border:2px solid var(--sage);border-radius:50%;align-content:center;justify-items:center;width:104px;height:104px;display:grid}.maths-whole-label{color:var(--sage-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800}.maths-whole-number{animation:kl-pop .34s var(--ease-spring) both;font-family:var(--display);font-size:2.9rem;font-weight:500;line-height:1}.maths-part-links{width:100%;height:26px;display:block}.maths-part-links path{fill:none;stroke:var(--sage);stroke-width:2px;vector-effect:non-scaling-stroke}.maths-parts{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.maths-part{background:var(--ground);border:2px solid var(--rule);border-radius:20px;align-content:space-between;justify-items:center;gap:10px;min-width:0;min-height:176px;padding:12px 8px 10px;display:grid;box-shadow:inset 0 2px 6px #2b24200f;container-type:inline-size}.maths-part-left{border-color:var(--terracotta-wash)}.maths-part-right{border-color:var(--indigo-wash)}.maths-part-counters{flex-wrap:wrap;place-content:flex-start center;gap:4px 2px;max-width:248px;display:flex}@container (max-width:247px){.maths-part-counters{max-width:148px}}@container (max-width:149px){.maths-part-counters{max-width:98px}}.maths-part-counter{height:48px;transition:transform .16s var(--ease-out);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:48px;padding:0;display:inline-flex}.maths-part-counter:active{transform:scale(.9)}.maths-part-counter:focus-visible{outline:2px solid var(--terracotta);outline-offset:0}.maths-part-counter .maths-counter{width:40px}.maths-part-left .maths-counter{animation-name:maths-from-right}.maths-part-right .maths-counter{background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo);animation-name:maths-from-left}@keyframes maths-from-left{0%{transform:translate(-26px)scale(.6)}}@keyframes maths-from-right{0%{transform:translate(26px)scale(.6)}}.maths-part-number{animation:kl-pop .34s var(--ease-spring) both;font-family:var(--display);font-size:2.6rem;font-weight:500;line-height:1}.maths-part-left .maths-part-number{color:var(--terracotta)}.maths-part-right .maths-part-number{color:var(--indigo)}.maths-readout-inline{flex:0 auto;min-width:0}.maths-compare{max-width:640px;padding:14px 0;display:grid}.maths-tray{background:var(--ground);border:2px solid var(--rule);text-align:left;width:100%;transition:transform .16s var(--ease-out), border-color .2s ease, background-color .2s ease;border-radius:18px;padding:14px 16px;display:block;position:relative}.maths-tray:active{transform:scale(.99)}.maths-tray:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.maths-tray[aria-pressed=true]{background:var(--terracotta-wash);border-color:var(--terracotta)}.maths-tray-row{height:52px;display:block;position:relative;container-type:inline-size}.maths-tray-counter,.maths-tie{--step:min(56px, 100cqw / var(--slots,10));--size:min(40px, calc(var(--step) * .8))}.maths-tray-counter{background:radial-gradient(circle at 34% 30%, #fffdf86b, transparent 56%), var(--terracotta);height:var(--size);left:0;top:calc(50% - var(--size) / 2);transform:translate(calc(var(--spread) * (100cqw - var(--size))), var(--dy,0px));transition:transform .64s var(--ease-spring) calc(var(--i) * 45ms);width:var(--size);border-radius:50%;position:absolute;box-shadow:inset 0 -3px #2b24202e}.maths-tray-bottom .maths-tray-counter{background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo)}.maths-tray-row.is-matched .maths-tray-counter{transform:translate(calc(var(--i) * var(--step) + (var(--step) - var(--size)) / 2), 0)}.maths-tray-counter:after{border:2px solid var(--sage);content:"";opacity:0;border-radius:50%;position:absolute;inset:-5px}.maths-tray-counter.is-extra:after{animation:1.6s ease-in-out .7s infinite kl-breathe}.maths-ties{z-index:1;height:18px;margin:0 18px;position:relative;container-type:inline-size}.maths-tie{background:var(--sage);bottom:-9px;left:calc(var(--i) * var(--step) + var(--step) / 2 - 1px);transition:transform .36s var(--ease-out) calc(.42s + var(--i) * 45ms);border-radius:2px;width:2px;position:absolute;top:-9px;transform:scaleY(0)}.maths-ties.is-shown .maths-tie{transform:scaleY(1)}.maths-tray-tag{animation:kl-rise .38s var(--ease-out) .52s both;background:var(--sage-deep);color:var(--paper);z-index:2;border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:800;line-height:1;position:absolute;right:14px}.maths-tray-top .maths-tray-tag{top:-14px}.maths-tray-bottom .maths-tray-tag{bottom:-14px}.maths-pattern{align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex;container-type:inline-size}.maths-pattern-item{aspect-ratio:1;background:var(--ground);border:1px solid var(--rule);border-radius:14px;flex:0 60px;justify-content:center;align-items:center;min-width:0;display:flex}.maths-pattern-item .maths-shape{width:70%;height:70%}.maths-pattern-gap{background:var(--paper);border:2px dashed var(--ink-muted);color:var(--ink-muted);font-family:var(--display);font-size:clamp(1.1rem,5cqw,1.9rem);line-height:1}.maths-pattern-gap.is-filled{background:var(--sage-wash);border-color:var(--sage);border-style:solid}.maths-pattern-gap.is-filled .maths-shape{animation:maths-slide-in .56s var(--ease-spring) both}@keyframes maths-slide-in{0%{transform:translateY(44px)scale(.7)}70%{transform:translateY(-3px)scale(1.1)}to{transform:none}}.maths-shape{display:block;overflow:visible}.maths-shape-circle{fill:var(--terracotta)}.maths-shape-triangle{fill:var(--sage);stroke:var(--sage);stroke-linejoin:round;stroke-width:3px}.maths-shape-square{fill:var(--indigo)}.maths-choices{flex-wrap:wrap;gap:12px;display:flex}.maths-choice{background:var(--paper);border:2px solid var(--rule);color:var(--ink);min-width:88px;min-height:92px;transition:transform .16s var(--ease-out), border-color .2s ease, background-color .2s ease;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px 14px 8px;font-size:.86rem;font-weight:700;display:inline-flex;position:relative}.maths-choice .maths-shape{width:40px;height:40px}.maths-choice:active:not([aria-disabled=true]){transform:scale(.95)}.maths-choice:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.maths-choice[aria-disabled=true]{cursor:default}@media (hover:hover) and (pointer:fine){.maths-choice:not([aria-disabled=true]):hover{border-color:var(--ink-muted)}}.maths-choice.is-right{animation:kl-bloom .62s var(--ease-spring);background:var(--sage-wash);border-color:var(--sage);color:var(--sage-deep)}.maths-choice.is-wrong{animation:kl-shake .38s var(--ease-out);border-color:var(--terracotta)}.maths-choice.is-wrong-again{animation:maths-shake .38s var(--ease-out);border-color:var(--terracotta)}@keyframes maths-shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.maths-choice.is-hint{border-color:var(--sage)}.maths-choice.is-hint:after,.maths-pairs-counter.is-alone:after{border:2px solid var(--sage);border-radius:inherit;content:"";pointer-events:none;animation:1.6s ease-in-out infinite kl-breathe;position:absolute;inset:-6px}.maths-own{border-top:1px solid var(--rule);gap:14px;margin-top:6px;padding-top:24px;display:grid}.maths-own-title{font-family:var(--display);margin:0;font-size:1.35rem;font-weight:500}.maths-own-row{flex-wrap:wrap;min-height:48px}.maths-own-row .maths-pattern-item{animation:kl-pop .34s var(--ease-spring) both;flex:0 0 48px}.maths-own-empty{color:var(--ink-muted);align-items:center;min-height:48px;font-style:italic;display:flex}.maths-add-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:420px;display:grid}.maths-choice.maths-add{flex-direction:row;gap:8px;min-width:0;min-height:56px;padding:0 12px}.maths-add .maths-shape{flex:none;width:24px;height:24px}.maths-pairs{background:var(--ground);border:1px solid var(--rule);border-radius:20px;width:100%;max-width:560px;height:160px;position:relative;overflow:hidden;container-type:inline-size}.maths-pairs-counter,.maths-pair-band{--step:min(52px, 100cqw / 10.5);--size:calc(var(--step) * .78);--pair:min(80px, 100cqw / 5.4);--mid:80px;--pair-x:calc((100cqw - var(--cols) * var(--pair)) / 2 + var(--col) * var(--pair) + (var(--pair) - var(--size)) / 2);position:absolute;top:0;left:0}.maths-pairs-counter{--loose-x:calc((100cqw - var(--n) * var(--step)) / 2 + var(--i) * var(--step) + (var(--step) - var(--size)) / 2);background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo);height:var(--size);transform:translate(var(--loose-x), calc(var(--mid) - var(--size) / 2));transition:transform .62s var(--ease-spring) calc(var(--col) * 60ms);width:var(--size);z-index:1;border-radius:50%;box-shadow:inset 0 -3px #2b242033}.maths-pairs.is-paired .maths-pairs-counter{transform:translate(var(--pair-x), calc(var(--mid) + (var(--row) - 1) * (var(--size) + 10px) + 5px))}.maths-pairs-counter.is-alone{background:radial-gradient(circle at 34% 30%, #fffdf86b, transparent 56%), var(--terracotta)}.maths-pairs-counter.is-alone:after{border-color:var(--terracotta);border-radius:50%}.maths-pair-band{background:var(--sage-wash);border:1.5px solid var(--sage);height:calc(var(--size) * 2 + 24px);opacity:0;transform:translate(calc(var(--pair-x) - 7px), calc(var(--mid) - var(--size) - 12px)) scale(.7);transition:opacity .2s ease, transform .42s var(--ease-spring);width:calc(var(--size) + 14px);border-radius:999px}.maths-pairs.is-paired .maths-pair-band{opacity:1;transform:translate(calc(var(--pair-x) - 7px), calc(var(--mid) - var(--size) - 12px)) scale(1);transition-delay:calc(.42s + var(--col) * 60ms)}@media (max-width:520px){.maths-count-ten{grid-template-columns:repeat(5,50px);gap:6px;padding:10px}.maths-shell{width:50px;height:50px}.maths-cowrie{height:42px}.maths-frame{grid-template-columns:repeat(5,minmax(48px,56px));gap:6px;padding:8px}.maths-pattern{gap:6px}.maths-pattern-item{border-radius:10px}.maths-choice:not(.maths-add){min-width:80px;min-height:84px}.maths-choice.maths-add{flex-direction:column;gap:4px;min-height:72px;padding:8px 6px}.maths-tray{padding:12px}.maths-ties{margin:0 14px}.maths-readout{min-width:0}}@media (prefers-reduced-motion:reduce){.maths-tray-counter,.maths-tie,.maths-pairs-counter,.maths-pair-band{transition-delay:0s!important}.maths-tray-tag,.maths-shell-number{animation-delay:0s!important}.maths-tray-counter.is-extra:after,.maths-choice.is-hint:after,.maths-pairs-counter.is-alone:after{opacity:.7}}.maths-mode{border:1px solid var(--rule);border-radius:calc(var(--radius-segment,10px) + 3px);background:0 0;justify-self:start;gap:2px;margin-bottom:6px;padding:3px;display:inline-flex}.maths-mode-option{border-radius:var(--radius-segment,10px);color:var(--ink-muted);cursor:pointer;font:inherit;min-height:44px;transition:background-color .2s var(--ease-out), color .2s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;padding:0 14px;font-size:.85rem;font-weight:700}.maths-mode-option[aria-pressed=true]{background:var(--panel);color:var(--ink)}.maths-mode-option:active{transform:scale(.97)}.maths-mode-option:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.child-turn-play .maths-mode-option{min-height:56px}.maths-check{gap:18px}.maths-check-prompt{color:var(--ink);font-family:var(--display);max-width:34ch;font-size:clamp(1.4rem,4vw,1.9rem);line-height:1.25}.maths-check-prompt:focus{outline:none}.maths-check-view{animation:kl-rise .32s var(--ease-out) both;justify-items:start;min-width:0;display:grid}.maths-check-say:empty{margin-top:-18px}.maths-why{margin-top:-10px;font-size:.92rem}.maths-check-said{color:var(--ink);max-width:60ch;font-weight:600}.maths-check-said.is-another-way{color:var(--indigo)}.maths-check-said.is-right,.maths-check-said.is-right-after-help,.maths-check-said.is-mastered{color:var(--sage-deep)}.maths-check-fact{font-family:var(--display);margin:0;font-size:clamp(1.8rem,5vw,2.4rem)}.maths-answers{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:600px;display:grid}.maths-answers.has-four{grid-template-columns:repeat(4,minmax(0,1fr));max-width:760px}.maths-answer{background:var(--paper);border:2px solid var(--rule);color:var(--ink);cursor:pointer;font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;min-width:0;min-height:84px;transition:transform .16s var(--ease-out), border-color .2s ease, background-color .2s ease;border-radius:18px;justify-content:center;align-items:center;padding:8px 10px;font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.1;display:flex;position:relative}.maths-answer.is-long{font-size:clamp(1.1rem,3.4vw,1.6rem)}.maths-answer.is-words{font-family:var(--body);font-size:1.05rem;font-weight:700}.maths-answer:active:not([aria-disabled=true]){transform:scale(.96)}.maths-answer:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.maths-answer[aria-disabled=true]{cursor:default}.maths-answer.is-right{animation:kl-bloom .62s var(--ease-spring);background:var(--sage-wash);border-color:var(--sage);color:var(--sage-deep)}@media (hover:hover) and (pointer:fine){.maths-answer:not([aria-disabled=true]):hover{border-color:var(--ink-muted)}.maths-mode-option:not([aria-pressed=true]):hover{color:var(--ink)}}.maths-fraction{vertical-align:middle;display:inline-flex}.maths-fraction-stack{font-variant-numeric:lining-nums tabular-nums;justify-items:center;line-height:1;display:inline-grid}.maths-fraction-top{border-bottom:.08em solid;padding:0 .22em .08em}.maths-fraction-bottom{padding-top:.08em}.maths-answer.is-fraction{font-size:clamp(1.5rem,4.4vw,2rem)}.maths-answer.is-fraction .maths-fraction-words{font-family:var(--body);font-size:1.05rem;font-weight:700}.maths-pad{outline:none;gap:12px;width:100%;max-width:320px;display:grid}.maths-pad-display{background:var(--ground);border:2px solid var(--rule);font-family:var(--display);font-variant-numeric:tabular-nums;border-radius:16px;align-items:center;min-height:68px;padding:0 18px;font-size:2.4rem;display:flex;box-shadow:inset 0 2px 6px #2b24200f}.maths-pad:focus-within .maths-pad-display{border-color:var(--terracotta)}.maths-pad-caret{background:var(--ink-muted);width:2px;height:1.1em;animation:1.2s ease-in-out infinite kl-breathe;display:block}.maths-pad-keys{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.maths-pad-key{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-control,12px);color:var(--ink);cursor:pointer;font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;min-height:56px;transition:transform .16s var(--ease-out), background-color .2s var(--ease-out), border-color .2s var(--ease-out);justify-content:center;align-items:center;padding:0;font-size:1.7rem;display:flex;box-shadow:inset 0 -2px #2b24200f}.maths-pad-gap{display:block}.maths-pad-submit{background:var(--sage-deep);border-radius:var(--radius-control,12px);color:var(--paper);cursor:pointer;font:inherit;min-height:56px;transition:transform .16s var(--ease-out), background-color .2s var(--ease-out);border:0;justify-content:center;align-items:center;width:100%;padding:0 20px;font-size:1rem;font-weight:800;display:flex}.maths-pad-submit[aria-disabled=true]{background:var(--panel);color:var(--ink-muted);cursor:default}.maths-pad-submit:active:not([aria-disabled=true]){transform:scale(.97)}.maths-pad-submit:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}@media (hover:hover) and (pointer:fine){.maths-pad-key:not([aria-disabled=true]):hover{border-color:var(--ink-muted)}}.maths-pad-key svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:26px;height:26px}.maths-pad-key.is-quiet{color:var(--ink-muted)}.maths-pad-key[aria-disabled=true]{color:var(--rule-strong,var(--ink-muted));cursor:default}.maths-pad-key:active:not([aria-disabled=true]){transform:scale(.94)}.maths-pad-key:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.maths-view-disc{animation:maths-drop .42s var(--ease-spring) calc(var(--i,0) * 28ms) both;aspect-ratio:1;background:radial-gradient(circle at 34% 30%, #fffdf86b, transparent 56%), var(--terracotta);border-radius:50%;display:block;position:relative;box-shadow:inset 0 -3px #2b24202e}.maths-view-disc.is-other{background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo)}.maths-view-disc.is-extra:after,.maths-view-disc.is-alone:after{border:2px solid var(--sage);content:"";border-radius:50%;animation:1.6s ease-in-out .6s infinite kl-breathe;position:absolute;inset:-5px}.maths-view-dots{aspect-ratio:var(--cols) / var(--rows);background:var(--ground);border:1px solid var(--rule);border-radius:24px;width:min(300px,100%);margin:0;padding:0;list-style:none;position:relative}.maths-view-dot{aspect-ratio:1;width:calc(62% / var(--cols));justify-content:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.maths-view-dot .maths-view-disc{width:100%}.maths-view-dot .maths-cowrie{height:100%;transform:rotate(var(--tilt,0deg));width:auto}.maths-view-glance{justify-items:start;gap:12px;display:grid}.maths-view-glance-board .maths-view-dot{transition:opacity .52s,filter .52s}.maths-view-glance-board.is-hidden .maths-view-dot{filter:blur(6px);opacity:0}.maths-view-frames{flex-wrap:wrap;gap:12px;display:flex}.maths-view-frame{background:var(--panel);border-radius:16px;grid-template-columns:repeat(5,44px);gap:6px;padding:8px;display:grid}.maths-view-cell{aspect-ratio:1;background:var(--paper);border:1px solid var(--rule);border-radius:10px;justify-content:center;align-items:center;display:flex}.maths-view-cell .maths-view-disc{width:72%}.maths-view-cell .maths-cowrie{width:auto;height:84%}.maths-view-line{width:100%;max-width:640px;height:auto;display:block;overflow:visible}.maths-view-line-axis{stroke:var(--ink);stroke-linecap:round;stroke-width:2px}.maths-view-line-tick{stroke:var(--ink-muted);stroke-linecap:round;stroke-width:1.6px}.maths-view-line-number{fill:var(--ink);font-family:var(--body);font-variant-numeric:tabular-nums;text-anchor:middle;font-size:17px;font-weight:600}.maths-view-line-number.is-unknown{fill:var(--terracotta);font-size:22px;font-weight:800}.maths-view-line-mark circle{fill:var(--terracotta-wash);stroke:var(--terracotta);stroke-width:3px}.maths-view-line-mark.is-indigo circle{fill:var(--indigo-wash);stroke:var(--indigo)}.maths-view-line-mark.is-sage circle{fill:var(--sage-wash);stroke:var(--sage)}.maths-view-line-mark text{fill:var(--ink-muted);font-family:var(--body);text-anchor:middle;font-size:15px;font-weight:700}.maths-view-jump path{animation:kl-draw .42s var(--ease-out) calc(var(--i,0) * .14s) both;fill:none;stroke:var(--indigo);stroke-dasharray:1;stroke-linecap:round;stroke-width:2.5px}.maths-view-jump circle{fill:var(--indigo)}.maths-view-jump text{fill:var(--indigo);font-family:var(--body);text-anchor:middle;font-size:16px;font-weight:700}.maths-view-jump.is-unknown path{stroke:var(--terracotta)}.maths-view-jump.is-unknown circle{fill:var(--terracotta)}.maths-view-jump.is-unknown text{fill:var(--terracotta);font-size:20px}.maths-view-pw{justify-items:center;width:min(420px,100%);display:grid}.maths-view-pw-whole{background:var(--sage-wash);border:2px solid var(--sage);border-radius:50%;align-content:center;justify-items:center;width:96px;height:96px;display:grid}.maths-view-pw-whole span{color:var(--sage-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800}.maths-view-pw-whole strong{font-family:var(--display);font-size:2.6rem;font-weight:500;line-height:1}.maths-view-pw-parts{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.maths-view-part{background:var(--ground);border:2px solid var(--terracotta-wash);border-radius:18px;align-content:start;justify-items:center;gap:8px;min-height:128px;padding:10px;display:grid;box-shadow:inset 0 2px 6px #2b24200f}.maths-view-part.is-right{border-color:var(--indigo-wash)}.maths-view-part-number{color:var(--terracotta);font-family:var(--display);font-size:2.4rem;line-height:1}.maths-view-part.is-right .maths-view-part-number{color:var(--indigo)}.maths-view-part-counters{flex-wrap:wrap;justify-content:center;gap:4px;max-width:146px;display:flex}.maths-view-part-counters .maths-view-disc{width:26px}.maths-view-rows{gap:10px;width:min(560px,100%);display:grid;container-type:inline-size}.maths-view-row{background:var(--ground);border:2px solid var(--rule);border-radius:16px;height:52px;display:block;position:relative}.maths-view-row .maths-view-disc,.maths-view-tie{--size:min(36px, calc((100cqw - 28px) / var(--slots) * .8));--step:calc((100cqw - 28px) / var(--slots))}.maths-view-row .maths-view-disc{left:calc(12px + var(--x) * var(--slots) * var(--step));top:calc(50% - var(--size) / 2);width:var(--size);position:absolute}.maths-view-ties{height:2px;display:block;position:relative}.maths-view-tie{animation:maths-tie .36s var(--ease-out) calc(.3s + var(--i,0) * 45ms) both;background:var(--sage);bottom:-18px;left:calc(14px + var(--x) * var(--slots) * var(--step) + var(--size) / 2 - 1px);border-radius:2px;width:2px;position:absolute;top:-18px}@keyframes maths-tie{0%{transform:scaleY(0)}}.maths-view-pairs{flex-wrap:wrap;gap:10px;max-width:560px;display:flex}.maths-view-pair{animation:kl-pop .38s var(--ease-spring) calc(var(--i,0) * 60ms) both;background:var(--sage-wash);border:1.5px solid var(--sage);border-radius:999px;gap:6px;padding:6px;display:grid}.maths-view-pair .maths-view-disc{background:radial-gradient(circle at 34% 30%, #fffdf861, transparent 56%), var(--indigo);width:34px;animation:none}.maths-view-pair .maths-view-disc.is-alone{background:radial-gradient(circle at 34% 30%, #fffdf86b, transparent 56%), var(--terracotta)}.maths-view-pair .maths-view-disc.is-alone:after{border-color:var(--terracotta)}.maths-view-hundred{grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;width:min(440px,100%);display:grid}.maths-view-hcell{aspect-ratio:1;background:var(--ground);color:var(--ink-muted);font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;font-size:clamp(.62rem,2.4vw,.86rem);font-weight:600;display:flex}.maths-view-hcell.is-pattern{background:var(--sage-wash);color:var(--sage-deep)}.maths-view-hcell.is-lit{animation:kl-pop .34s var(--ease-spring) both;background:var(--terracotta);color:var(--paper);font-weight:800}.maths-view-hcell.is-ring{box-shadow:inset 0 0 0 2px var(--terracotta);color:var(--ink);font-weight:800}.maths-view-hcell.is-unknown{background:var(--paper);box-shadow:inset 0 0 0 2px var(--terracotta);color:var(--terracotta);font-size:clamp(.9rem,3vw,1.1rem);font-weight:800}.maths-view-base{justify-items:start;gap:6px;margin:0;display:grid}.maths-view-base-set{flex-wrap:wrap;gap:20px 28px;display:flex}.maths-view-base-blocks{flex-wrap:wrap;align-items:flex-end;gap:6px;display:flex}.maths-view-ten{animation:kl-rise .32s var(--ease-out) both;background:var(--indigo);border-radius:4px;grid-template-rows:repeat(10,11px);gap:1px;padding:2px;display:grid}.maths-view-ten .maths-view-cube{background:var(--indigo-wash);width:11px;height:11px}.maths-view-ten.is-added{animation:maths-drop .52s var(--ease-spring) both;background:var(--sage)}.maths-view-ten.is-added .maths-view-cube{background:var(--sage-wash)}.maths-view-cube{border-radius:2px;display:block}.maths-view-ones{grid-template-columns:repeat(2,14px);align-content:end;gap:2px;display:grid}.maths-view-ones .maths-view-cube{background:var(--terracotta);width:14px;height:14px}.maths-view-ones .maths-view-cube.is-added{animation:maths-drop .52s var(--ease-spring) both;background:var(--sage)}.maths-view-ten.is-taken,.maths-view-cube.is-taken{opacity:.25}.maths-view-base figcaption{font-family:var(--display);font-size:1.4rem}.maths-view-chart{background:var(--paper);border:2px solid var(--rule);grid-template-columns:repeat(var(--cols), minmax(0, 1fr));width:min(100%, calc(var(--cols) * 88px));border-radius:16px;display:grid;overflow:hidden}.maths-view-chart-col{border-left:1px solid var(--rule);grid-template-rows:auto 1fr;min-width:0;min-height:118px;display:grid;position:relative}.maths-view-chart-col:first-child{border-left:0}.maths-view-chart-col.is-decimal{background:var(--ground)}.maths-view-chart-head{background:var(--panel);color:var(--ink-muted);text-align:center;padding:6px 2px;font-size:.8rem;font-weight:800}.maths-view-chart-counters{flex-wrap:wrap;place-content:flex-start center;gap:4px;padding:8px 4px;display:flex}.maths-view-chart-counters .maths-view-disc{width:16px}.maths-view-chart-digit{font-family:var(--display);justify-content:center;align-items:center;font-size:clamp(1.6rem,5vw,2.3rem);display:flex}.maths-view-chart-col.is-ones:after,.maths-pv-col.is-ones .maths-pv-digit:after{background:var(--ink);content:"";z-index:1;border-radius:50%;width:9px;height:9px;position:absolute;bottom:16px;right:-5px}.maths-view-chart{overflow:visible}.maths-view-chart-col:first-child .maths-view-chart-head{border-top-left-radius:14px}.maths-view-chart-col:last-child .maths-view-chart-head{border-top-right-radius:14px}.maths-pv-col.is-ones .maths-pv-digit{position:relative}.maths-view-expanded{font-family:var(--display);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:clamp(1.4rem,4vw,2rem);display:flex}.maths-view-expanded>span{align-items:center;gap:8px;display:inline-flex}.maths-view-tile{animation:kl-pop .34s var(--ease-spring) calc(var(--i,0) * 80ms) both;background:var(--indigo-wash);border-radius:12px;padding:4px 14px}.maths-view-tile.is-unknown{background:var(--paper);box-shadow:inset 0 0 0 2px var(--terracotta);color:var(--terracotta)}.maths-view-plus{color:var(--ink-muted)}.maths-view-fbar{border:1.5px solid var(--ink-muted);grid-template-columns:repeat(var(--d), minmax(0, 1fr));border-radius:10px;width:min(480px,100%);height:64px;display:grid;overflow:hidden}.maths-view-fpart{animation:maths-snap .52s var(--ease-spring) calc(var(--i,0) * 25ms) both;background:var(--paper);border-left:1.5px solid var(--ink-muted)}.maths-view-fpart:first-child{border-left:0}.maths-view-fpart.is-shaded{background:var(--terracotta)}.maths-view-fcircle{width:min(200px,60vw);height:auto;overflow:visible}.maths-view-fcircle path{fill:var(--paper);stroke:var(--ink);stroke-linejoin:round;stroke-width:1.5px}.maths-view-fcircle path.is-shaded{fill:var(--terracotta)}.maths-view-fline-run{animation:kl-draw .52s var(--ease-out) both;fill:none;stroke:var(--terracotta);stroke-dasharray:1;stroke-linecap:round;stroke-width:6px}.maths-view-same{justify-items:start;gap:10px;display:grid}.maths-view-same-caption{font-family:var(--display);flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:1.4rem;display:flex}.maths-view-array{width:min(100%, calc(var(--cols) * 34px));gap:6px;display:grid}.maths-view-array-row{animation:kl-rise .32s var(--ease-out) calc(var(--i,0) * 50ms) both;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:6px;display:grid}.maths-view-array .maths-view-disc{width:100%;max-width:28px;animation:none}.maths-view-story{gap:14px;display:grid}.maths-view-story-text{color:var(--ink);font-family:var(--display);max-width:36ch;font-size:clamp(1.25rem,3.4vw,1.6rem);line-height:1.35}.maths-view-story-items{flex-wrap:wrap;gap:10px;max-width:420px;display:flex}.maths-view-story-items .maths-view-disc{width:30px}.maths-hundred{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;width:min(560px,100%);display:grid}.maths-hcell{aspect-ratio:1;background:var(--paper);border:1px solid var(--rule);color:var(--ink);cursor:pointer;font:inherit;font-variant-numeric:tabular-nums;min-width:0;min-height:28px;transition:background-color .2s ease, color .2s ease, border-color .2s ease, transform .16s var(--ease-out);border-radius:8px;padding:0;font-size:clamp(.72rem,2.7vw,1rem);font-weight:700}.maths-hcell:active{transform:scale(.92)}.maths-hcell:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px;z-index:1;position:relative}.maths-hcell.is-pattern{animation:kl-pop .36s var(--ease-spring) calc(var(--order,0) * 22ms) both;background:var(--sage-wash);border-color:var(--sage);color:var(--sage-deep)}.maths-hcell.is-lit{background:var(--terracotta);border-color:var(--terracotta);color:var(--paper)}.maths-hcell.is-chosen{box-shadow:0 0 0 3px var(--terracotta-wash)}.maths-hcell.is-landed{animation:maths-land .56s var(--ease-spring) both}@keyframes maths-land{0%{transform:translateY(-10px)scale(.8)}60%{transform:translateY(2px)scale(1.08)}to{transform:none}}@media (hover:hover) and (pointer:fine){.maths-hcell:not(.is-lit):hover{border-color:var(--ink-muted)}}.maths-jump-pair{flex-wrap:wrap;gap:8px;display:inline-flex}.maths-note-quiet{color:var(--ink-muted);margin:0;font-size:.92rem}.maths-pv{background:var(--paper);border:2px solid var(--rule);grid-template-columns:repeat(var(--cols), minmax(0, 1fr));width:min(100%, calc(var(--cols) * 108px));border-radius:18px;display:grid}.maths-pv-col{border-left:1px solid var(--rule);grid-template-rows:auto 1fr auto auto;min-width:0;display:grid;position:relative}.maths-pv-col:first-child{border-left:0}.maths-pv-col.is-decimal{background:var(--ground)}.maths-pv-col:first-child .maths-pv-head{border-top-left-radius:16px}.maths-pv-col:last-child .maths-pv-head{border-top-right-radius:16px}.maths-pv-head{background:var(--panel);color:var(--ink-muted);letter-spacing:.02em;text-align:center;padding:8px 2px;font-size:.8rem;font-weight:800}.maths-pv-counters{grid-template-columns:repeat(3,minmax(0,18px));place-content:start center;gap:5px;min-height:100px;padding:10px 4px;display:grid;position:relative}.maths-pv-counter{width:100%}.maths-pv-counter.is-from-right{animation:maths-pv-from-right .64s var(--ease-spring) .28s both}.maths-pv-counter.is-from-left{animation:maths-pv-from-left .64s var(--ease-spring) calc(.2s + var(--i,0) * 30ms) both}@keyframes maths-pv-from-right{0%{transform:translate(72px)scale(.5)}}@keyframes maths-pv-from-left{0%{transform:translate(-72px)scale(.5)}}.maths-pv-bundle{animation:maths-pv-bundle .9s var(--ease-out) both;pointer-events:none;grid-template-columns:repeat(5,12px);justify-content:center;gap:3px;display:grid;position:absolute;inset:10px 0 auto}.maths-pv-bundle .maths-view-disc{width:12px;animation:none}@keyframes maths-pv-bundle{0%{opacity:1;transform:none}35%{opacity:1;transform:scale(.72)}to{opacity:0;transform:translate(-96px)scale(.3)}}.maths-pv-leaving{animation:maths-pv-leave .7s var(--ease-out) both;width:18px;position:absolute;top:10px;left:calc(50% - 9px)}@keyframes maths-pv-leave{to{opacity:0;transform:translate(84px)scale(1.4)}}.maths-pv.is-shift-up .maths-pv-counters,.maths-pv.is-shift-up .maths-pv-digit{animation:maths-pv-from-right .56s var(--ease-spring) both}.maths-pv.is-shift-down .maths-pv-counters,.maths-pv.is-shift-down .maths-pv-digit{animation:maths-pv-from-left .56s var(--ease-spring) both}.maths-pv-digit{border-top:1px dashed var(--rule);font-family:var(--display);text-align:center;font-size:1.8rem;line-height:1.3}.maths-pv-buttons{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;display:grid}.maths-pv-button{color:var(--ink);cursor:pointer;min-width:0;min-height:48px;transition:background-color .2s ease, transform .16s var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.maths-pv-button+.maths-pv-button{border-left:1px solid var(--rule)}.maths-pv-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.4px;width:20px;height:20px}.maths-pv-button:active{transform:scale(.9)}.maths-pv-button:focus-visible{outline:2px solid var(--terracotta);outline-offset:-3px}@media (hover:hover) and (pointer:fine){.maths-pv-button:hover{background:var(--panel)}}.maths-pv-readout{gap:6px;display:grid}.maths-pv-number{animation:kl-pop .34s var(--ease-spring) both;font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em;transform-origin:0 100%;font-size:clamp(2.4rem,9vw,4.4rem);line-height:1;display:block}.maths-pv-readout .maths-readout-words{max-width:52ch}.maths-fbars{gap:22px;width:min(100%,640px);display:grid}.maths-fbar-row{gap:10px;display:grid}.maths-fbar-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.maths-fbar-fraction{font-family:var(--display);align-items:center;min-height:2.8rem;font-size:1.7rem;display:flex}.maths-fbar-fraction .maths-readout-words{font-family:var(--body);font-size:1rem}.maths-fbar{background:var(--paper);border:1.5px solid var(--ink-muted);border-radius:12px;position:relative;overflow:hidden}.maths-fbar-parts{grid-template-columns:repeat(var(--d), minmax(0, 1fr));height:76px;display:grid}.maths-fbar-part{animation:maths-snap .54s var(--ease-spring) calc(var(--i,0) * 24ms) both;background:var(--paper);border:0;border-left:1.5px solid var(--ink-muted);cursor:pointer;min-width:0;padding:0;transition:background-color .22s}.maths-fbar-part:first-child{border-left:0}.maths-fbar-part[aria-pressed=true]{background:var(--terracotta)}.maths-fbar-row+.maths-fbar-row .maths-fbar-part[aria-pressed=true]{background:var(--indigo)}.maths-fbar-part:focus-visible{outline:3px solid var(--terracotta);outline-offset:-5px}@keyframes maths-snap{0%{transform:translateX(calc(var(--from-mid,0) * -4px)) scaleY(1.08)}55%{transform:translateX(calc(var(--from-mid,0) * 2px)) scaleY(.97)}to{transform:none}}.maths-fbars.is-same .maths-fbar:after{animation:maths-guide .48s var(--ease-out) both;background:var(--sage);content:"";bottom:0;left:calc(var(--line) * 100%);transform-origin:top;border-radius:2px;width:4px;margin-left:-2px;position:absolute;top:0}@keyframes maths-guide{0%{transform:scaleY(0)}}.maths-tables-pick{flex-wrap:wrap;gap:8px;display:flex}.maths-table-chip{background:var(--paper);border:2px solid var(--rule);color:var(--ink);cursor:pointer;font:inherit;min-width:60px;min-height:48px;transition:background-color .2s ease, border-color .2s ease, transform .16s var(--ease-out);border-radius:999px;padding:0 14px;font-weight:800}.maths-table-chip[aria-pressed=true]{background:var(--terracotta-wash);border-color:var(--terracotta);color:var(--terracotta-deep)}.maths-table-chip:active{transform:scale(.95)}.maths-table-chip:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.maths-times{flex-wrap:wrap;align-items:center;gap:24px 48px;display:flex}.maths-times .maths-view-array{flex:0 auto}.maths-times-fact{font-variant-numeric:lining-nums tabular-nums}.maths-june{border-top:1px solid var(--rule);gap:14px;margin-top:6px;padding-top:24px;display:grid}.maths-june .eyebrow{margin:0}.maths-switch{color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-self:start;align-items:center;gap:14px;min-height:48px;padding:4px 0;display:flex}.maths-switch-track{background:var(--rule);border-radius:999px;flex:none;width:52px;height:30px;transition:background-color .2s;position:relative}.maths-switch-thumb{background:var(--paper);height:24px;transition:transform .24s var(--ease-spring);border-radius:50%;width:24px;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #2b24204d}.maths-switch[aria-checked=true] .maths-switch-track{background:var(--sage)}.maths-switch[aria-checked=true] .maths-switch-thumb{transform:translate(22px)}.maths-switch:focus-visible{outline:2px solid var(--terracotta);outline-offset:4px}.maths-switch-label{max-width:46ch;font-weight:700}.maths-june-intro,.maths-june-run,.maths-june-done{justify-items:start;gap:16px;display:grid}.maths-june-fact{font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;margin:0;font-size:clamp(2.4rem,8vw,3.6rem);line-height:1}.maths-june-fact.is-resting{color:var(--ink-muted);font-size:1.4rem}.maths-june-list{columns:2;font-family:var(--display);margin:0;padding-left:1.2em;font-size:1.3rem;line-height:1.7}@media (max-width:560px){.maths-answers.has-four{grid-template-columns:repeat(2,minmax(0,1fr))}.maths-view-frame{grid-template-columns:repeat(5,38px)}.maths-pv-buttons{grid-template-columns:1fr}.maths-pv-button+.maths-pv-button{border-left:0;border-top:1px solid var(--rule)}.maths-pv-head{font-size:.7rem}.maths-pv-counters{grid-template-columns:repeat(3,minmax(0,12px));gap:3px}.maths-pv-digit{font-size:1.4rem}.maths-hundred{gap:3px}.maths-hcell{border-radius:6px}.maths-june-list{columns:1}}@media (prefers-reduced-motion:reduce){.maths-view-disc.is-extra:after,.maths-view-disc.is-alone:after,.maths-pad-caret{opacity:.7}}
.feelings-picker{gap:18px;display:grid}.feelings-row{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:12px;max-width:640px;display:grid}.feeling-button{background:var(--ground);border:2px solid var(--rule);cursor:pointer;font:inherit;min-height:48px;transition:background-color .22s ease, border-color .22s ease, transform .16s var(--ease-out);border-radius:18px;place-items:center;gap:8px;padding:14px 10px 12px;font-weight:700;display:grid}.feeling-button:active{transform:scale(.96)}.feeling-button:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}.feeling-button[aria-pressed=true]{background:var(--paper);border-color:var(--terracotta)}.feeling-button[aria-pressed=true] .feeling-face{animation:kl-bloom .62s var(--ease-spring)}.feeling-face{width:72px;height:72px}.feeling-eye{fill:var(--ink)}.feeling-line{fill:none;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.feelings-ask{animation:kl-nudge .32s var(--ease-out) both;font-family:var(--display);max-width:34ch;min-height:2.6rem;margin:0;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.3}.breathing{justify-items:start;gap:18px;display:grid}.breathing-stage{justify-content:center;align-items:center;width:min(100%,320px);height:240px;display:flex}.breathing-bubble{background:radial-gradient(circle at 35% 30%, var(--paper), var(--sage-wash) 55%, var(--sage) 100%);width:120px;height:120px;transition:transform 4s var(--ease-in-out);border-radius:50%;display:block;transform:scale(.8);box-shadow:0 18px 40px #4761492e}.breathing-stage.running.in .breathing-bubble{transform:scale(1.7)}.breathing-stage.running.out .breathing-bubble{transform:scale(.8)}.breathing-word{color:var(--sage-deep);font-family:var(--display);min-height:2rem;margin:0;font-size:1.6rem}@media (prefers-reduced-motion:reduce){.breathing-bubble{transition:none}}
.report-page{max-width:980px}.report-page *{min-width:0}.report-toolbar{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-bottom:32px;padding-bottom:20px;display:flex}.report-periods{flex-wrap:wrap;gap:8px;display:flex}.report-period{background:var(--paper);border:1px solid var(--rule);color:var(--ink);border-radius:10px;align-items:center;min-height:48px;padding:0 16px;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s;display:inline-flex}.report-period:hover{border-color:var(--terracotta)}.report-period[aria-current=page]{background:var(--terracotta-wash);border-color:var(--terracotta);color:var(--terracotta-deep)}.report-period[aria-current=page]:before{content:"✓";margin-right:8px}.report-period:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.report-actions{flex-wrap:wrap;gap:10px;display:flex}.report-sheet{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);padding:clamp(24px,5vw,56px) clamp(20px,6vw,64px)}.report-logo{border-bottom:1px solid var(--rule);box-sizing:content-box;width:auto;height:32px;margin:0 0 24px;padding-bottom:20px;display:block}.report-header .page-title{max-width:18ch;margin:12px 0 20px}.report-section>p,.report-section .plain-note{max-width:62ch}.report-facts{gap:10px;margin:0 0 24px;display:grid}.report-facts>div{grid-template-columns:110px minmax(0,1fr);gap:4px 20px;display:grid}.report-facts dt{color:var(--ink-muted);font-weight:700}.report-facts dd{margin:0}.report-claim{background:var(--indigo-wash);color:var(--indigo-deep);border-radius:12px;max-width:70ch;margin:0;padding:16px 20px}.report-section{border-top:1px solid var(--rule);margin-top:40px;padding-top:28px}.report-section h2,.report-footer h2{font-family:var(--display);margin:0 0 16px;font-size:1.875rem;font-weight:500;line-height:1.15}.report-section>p{max-width:68ch}.report-area{margin-top:24px}.report-area h3{font-family:var(--display);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 8px;font-size:1.35rem;font-weight:500;line-height:1.2;display:flex}.report-area-kind{color:var(--ink-muted);font-family:var(--body);font-size:.85rem;font-weight:700}.report-glance{border-block:1px solid var(--rule);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 16px;padding:0;list-style:none;display:grid}.report-glance>li{border-left:1px solid var(--rule);font-variant-numeric:lining-nums;padding:14px 16px;font-size:1rem;font-weight:600}.report-glance>li:first-child{border-left:0;padding-left:0}.report-lessons,.report-outcomes,.report-notes{margin:0;padding:0;list-style:none;display:grid}.report-lessons>li,.report-outcomes>li,.report-notes>li{border-bottom:1px solid var(--rule);padding:14px 0}.report-lesson-head{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.report-lesson-head span,.report-outcomes li span:not(.stage-pill){color:var(--ink-muted);font-size:.95rem}.report-dates{color:var(--ink);margin:6px 0 0;padding-left:20px}.report-outcomes>li{justify-content:space-between;align-items:start;gap:12px 16px;display:flex}.report-outcomes>li>div{gap:2px;display:grid}.report-honesty{color:var(--ink-muted);max-width:62ch;margin:0 0 8px}.report-lessons>li:last-child,.report-outcomes>li:last-child,.report-notes>li:last-child{border-bottom:0}.report-ids{color:var(--ink-muted);margin:12pt 0 0;font-size:8pt}.report-stages{grid-template-columns:max-content minmax(0,1fr);gap:4px 16px;margin:20px 0 0;display:grid}.report-stages dt{font-weight:700}.report-stages dd{color:var(--ink-muted);margin:0}.report-notes strong{display:block}.report-notes p{overflow-wrap:anywhere;white-space:pre-wrap;max-width:68ch;margin:4px 0 0}.report-note-meta{color:var(--ink-muted);font-size:.95rem}.report-note-meta span{color:var(--terracotta);font-weight:700}.report-footer{border-top:2px solid var(--ink);margin-top:48px;padding-top:24px}.report-footer p{color:var(--ink-muted);max-width:68ch}.report-footer dl{gap:6px;margin:16px 0 0;display:grid}.report-footer dl>div{grid-template-columns:160px minmax(0,1fr);gap:2px 20px;display:grid}.report-footer dt{font-weight:700}.report-footer dd{color:var(--ink-muted);overflow-wrap:anywhere;margin:0}@media (max-width:720px){.report-glance{grid-template-columns:repeat(2,minmax(0,1fr))}.report-glance>li:nth-child(3){border-left:0;padding-left:0}.report-glance>li:nth-child(n+3){border-top:1px solid var(--rule)}.report-facts>div,.report-footer dl>div{grid-template-columns:1fr}.report-actions,.report-actions>*{width:100%}.report-outcomes>li{flex-direction:column}.report-stages{grid-template-columns:1fr}.report-stages dd{margin-bottom:8px}}@page report{size:A4;margin:16mm 16mm 18mm}@media print{.page-shell.report-page{page:report;max-width:none;padding:0}.report-page,.report-page *{box-shadow:none!important;transition:none!important;animation:none!important}.report-page{color:var(--ink);font-size:11pt;line-height:1.45}.report-page .page-title{max-width:none;margin:4pt 0 12pt;font-size:24pt}.report-page .eyebrow,.report-note-meta span{color:var(--ink)}.report-sheet{border:0;border-radius:0;padding:0}.report-logo{height:9mm;margin-bottom:8pt;padding-bottom:8pt}.report-claim{border:1px solid var(--ink-muted);color:var(--ink);background:0 0}.report-page .stage-pill{border:1px solid var(--ink);color:var(--ink);background:0 0}.report-section{margin-top:18pt;padding-top:12pt}.report-section h2,.report-footer h2{font-size:16pt}.report-area h3{font-size:13pt}.report-section h2,.report-area h3,.report-footer h2{break-after:avoid;page-break-after:avoid}.report-lessons>li,.report-outcomes>li,.report-notes>li,.report-glance,.report-claim,.report-honesty,.report-footer{break-inside:avoid;page-break-inside:avoid}.report-page p{orphans:3;widows:3}}
html[data-read-size=large] body{zoom:1.12}html[data-read-size=largest] body{zoom:1.25}html[data-read-spacing=wide] :is(p,li,dd,label,.spoken-line,.authored-prompt){letter-spacing:.035em;word-spacing:.14em;line-height:1.85}html[data-read-font=easy]{--body:Verdana, Tahoma, "Segoe UI", sans-serif}html[data-read-font=easy] :is(.spoken-line,.authored-prompt,.guide-prompt){letter-spacing:.01em;font-family:Verdana,Tahoma,Segoe UI,sans-serif}html[data-read-overlay]:not([data-read-overlay=none]) body:after{content:"";mix-blend-mode:multiply;pointer-events:none;z-index:2147483000;position:fixed;inset:0}html[data-read-overlay=cream] body:after{background:#ffeec473}html[data-read-overlay=blue] body:after{background:#bedeff73}html[data-read-overlay=green] body:after{background:#c8f0cd73}html[data-read-overlay=yellow] body:after{background:#fff59673}html[data-read-overlay=rose] body:after{background:#ffd2de73}.reading-settings{position:relative}.reading-settings-toggle{background:var(--paper);border:1px solid var(--rule);color:var(--ink);cursor:pointer;font-family:var(--display);width:42px;height:42px;transition:transform .16s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:1.05rem;font-weight:600;display:inline-flex}.reading-settings-toggle:active{transform:scale(.95)}.reading-settings-toggle:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.reading-settings-panel{animation:kl-sheet .22s var(--ease-out) both;background:var(--paper);border:1px solid var(--rule);box-shadow:var(--shadow-sheet);transform-origin:100% 0;z-index:60;border-radius:18px;gap:12px;width:min(320px,100vw - 32px);padding:16px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.reading-settings-title{margin:0;font-weight:800}.reading-settings-panel fieldset{border:0;margin:0;padding:0}.reading-settings-panel legend{color:var(--ink-muted);margin-bottom:6px;font-size:.85rem;font-weight:700}.reading-settings-options{flex-wrap:wrap;gap:6px;display:flex}.reading-option{background:var(--ground);border:1px solid var(--rule);color:var(--ink);cursor:pointer;font:inherit;border-radius:999px;min-height:40px;padding:0 14px;font-size:.88rem}.reading-option[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.reading-option.overlay-cream{box-shadow:inset 0 -4px #ffe7b0}.reading-option.overlay-blue{box-shadow:inset 0 -4px #bfdcff}.reading-option.overlay-green{box-shadow:inset 0 -4px #c6ecc9}.reading-option.overlay-yellow{box-shadow:inset 0 -4px #fff08a}.reading-option.overlay-rose{box-shadow:inset 0 -4px #ffcfdb}.reading-settings-note{color:var(--ink-muted);margin:0;font-size:.8rem}::highlight(kl-read){color:inherit;background-color:#ffe08a}@media (prefers-reduced-motion:reduce){.reading-settings-panel{animation:none}}.header-tools{justify-self:end;align-items:center;gap:10px;display:flex}@media (max-width:900px){.app-header .header-tools{grid-area:1/2;justify-self:end}.app-header:has(.child-switcher) .header-tools{grid-column:3}}.child-turn-header{gap:12px}
.first-books-shelf,.first-book-page{--star:#f2c14e;--word-lit:#ffe08a;--word-hover:#fcebb6}.book-shelf{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0;padding:0;list-style:none;display:grid}@media (max-width:860px){.book-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.book-shelf{grid-template-columns:minmax(0,1fr)}}.book-card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card,20px);transition:transform .24s var(--ease-out), box-shadow .24s var(--ease-out), border-color .2s var(--ease-out);gap:8px;padding:12px 12px 18px;display:grid;position:relative}.book-card .book-cover{aspect-ratio:3/2;border-radius:12px;width:100%;height:auto;display:block}.book-card h2{font-family:var(--display);letter-spacing:-.01em;margin:6px 6px 0;font-size:1.35rem;font-weight:500;line-height:1.2}.book-card h2 a{color:inherit;text-decoration:none}.book-card h2 a:after{border-radius:inherit;content:"";position:absolute;inset:0}.book-card h2 a:focus-visible{outline:none}.book-card:has(h2 a:focus-visible){outline:2px solid var(--terracotta);outline-offset:3px}@media (hover:hover) and (pointer:fine){.book-card:not([data-state=locked]):hover{border-color:var(--rule-strong,var(--ink-muted));box-shadow:var(--shadow-lift);transform:translateY(-2px)}}.book-status{color:var(--ink-muted);align-items:center;gap:8px;margin:0 6px;font-size:.95rem;display:flex}.book-ready,.book-read{font-weight:700}.book-ready{color:var(--sage-deep)}.book-read{color:var(--indigo-deep)}.book-ready:before,.book-read:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.book-card[data-state=locked]{background:var(--ground)}.book-card[data-state=locked] .book-cover{filter:grayscale(.85);opacity:.55}.book-card[data-state=locked] h2{color:var(--ink-muted)}.book-cover-frame{display:block;position:relative}.book-lock{background:var(--paper);border:1px solid var(--rule);box-sizing:content-box;fill:none;height:20px;stroke:var(--ink-muted);stroke-linecap:round;stroke-width:1.6px;border-radius:50%;width:20px;padding:8px;position:absolute;top:12px;left:12px}.book-status.book-locked{background:var(--panel);color:var(--ink-muted);border-radius:999px;place-self:start;padding:6px 12px;font-size:.88rem;font-weight:600;line-height:1.3;display:inline-flex}@media (prefers-reduced-motion:reduce){.book-card{transition:none}.book-card:hover{transform:none}}.book-reader{grid-template-columns:minmax(0,1fr);gap:16px;max-width:880px;margin:8px auto 0;display:grid}.book-reader>*{min-width:0}.book-reader-head{gap:10px;display:grid}.book-reader-title{font-family:var(--display);margin:0;font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:500;line-height:1.1}.book-reads{flex-wrap:wrap;gap:6px;display:flex}.book-read-option{background:var(--ground);border:1px solid var(--rule);color:var(--ink);cursor:pointer;font:inherit;border-radius:999px;min-height:44px;padding:0 16px;font-size:.92rem}.book-read-option[aria-checked=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.book-read-option:focus-visible{outline:2px solid var(--terracotta);outline-offset:2px}.book-read-hint{color:var(--ink-muted);max-width:62ch;margin:0}.book-page{background:var(--paper);border:1px solid var(--rule);touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:22px;margin:0;overflow:hidden}.book-picture{aspect-ratio:3/2;width:100%;height:auto;display:block}.book-text{font-family:var(--body);letter-spacing:.02em;text-align:center;word-spacing:.18em;padding:18px clamp(16px,4vw,40px) 26px;font-size:clamp(2rem,5.2vw,3.4rem);font-weight:600;line-height:1.5}.book-word{color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;transition:background-color .16s var(--ease-out);background:0 0;border:0;border-radius:10px;padding:0 2px}.book-word:hover{background:var(--word-hover)}.book-word:focus-visible{outline:3px solid var(--terracotta);outline-offset:2px}.book-word.said{background:var(--word-lit)}.book-name{color:var(--indigo);-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:3px;-webkit-text-decoration-color:var(--indigo-wash);text-decoration-color:var(--indigo-wash);text-underline-offset:8px}.grapheme{border-radius:6px;display:inline-block;position:relative}.grapheme.lit{background:var(--word-lit)}.sound-buttons .grapheme{margin:0 .05em;padding-bottom:.28em}.sound-buttons .grapheme:after{background:var(--terracotta);content:"";border-radius:999px;width:.16em;height:.16em;position:absolute;bottom:.02em;left:50%;transform:translate(-50%)}.sound-buttons .grapheme.digraph:after{width:72%}.sound-buttons .book-word.tricky{-webkit-text-decoration:underline wavy 2px var(--ink-muted);text-decoration:underline wavy 2px var(--ink-muted);text-underline-offset:10px}.book-grown-up{background:var(--indigo-wash);color:var(--indigo-deep);border-radius:12px;margin:0;padding:10px 14px}.book-talk{background:var(--sage-wash);border-radius:16px;padding:14px 18px}.book-talk h2{font-family:var(--display);margin:0 0 4px;font-size:1.35rem;font-weight:500}.book-talk p{margin:0;font-size:1.15rem}.book-turns{justify-content:space-between;align-items:center;gap:12px;display:flex}.book-page-count{color:var(--ink-muted);font-variant-numeric:tabular-nums}.book-well-done{text-align:center;justify-items:center;gap:16px;max-width:640px;margin:24px auto;display:grid}.book-well-done .page-title,.book-well-done .page-lede{margin:0}.book-well-done-art{justify-items:center;display:grid}.book-well-done-art .book-stars{z-index:1;margin-bottom:-20px;position:relative}.book-well-done-cover{aspect-ratio:3/2;border:1px solid var(--rule);border-left:6px solid var(--terracotta-deep);border-radius:4px 12px 12px 4px;width:min(260px,70vw);height:auto;display:block}.book-read-marker{background:var(--panel);color:var(--ink-muted);letter-spacing:.04em;border-radius:999px;margin:8px 0 0;padding:4px 12px;font-size:.85rem;font-weight:700}.book-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.book-stars{width:220px;height:72px;position:relative}.book-stars i{animation:kl-book-star .9s var(--ease-out) both;background:var(--terracotta);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:40px;height:40px;position:absolute;top:16px;left:calc(50% - 20px)}.book-stars i:nth-child(2){background:var(--star);animation-delay:80ms;top:28px;left:6%;transform:scale(.7)}.book-stars i:nth-child(3){background:var(--sage);animation-delay:.16s;top:26px;left:78%}.book-stars i:nth-child(4){background:var(--indigo);animation-delay:.24s;top:0;left:26%}.book-stars i:nth-child(5){background:var(--star);animation-delay:.32s;top:0;left:60%}@keyframes kl-book-star{0%{opacity:0;transform:scale(.2)rotate(-40deg)}to{opacity:1;transform:scale(1)rotate(0)}}.book-well-done h1:focus:not(:focus-visible),.book-certificate-line:focus:not(:focus-visible){outline:none}.book-certificate-screen{justify-items:center;gap:20px;max-width:820px;margin:24px auto;display:grid}.book-certificate{background:var(--paper);border:3px double var(--terracotta);outline:1px solid var(--terracotta);outline-offset:-14px;text-align:center;border-radius:22px;justify-items:center;gap:12px;width:100%;padding:clamp(32px,6vw,64px) clamp(24px,6vw,72px);display:grid;position:relative}.book-certificate .eyebrow{letter-spacing:.14em;margin:0}.book-certificate-art{border:1px solid var(--rule);border-radius:14px;width:100%;max-width:360px;height:auto}.book-certificate-line{font-family:var(--display);gap:4px;margin:8px 0 0;font-size:clamp(1.4rem,3.2vw,1.9rem);font-weight:400;line-height:1.25;display:grid}.book-certificate-line strong{color:var(--ink);letter-spacing:-.02em;font-size:clamp(2.8rem,8vw,4.6rem);font-style:italic;font-weight:500;line-height:1.02}.book-certificate-line em{color:var(--terracotta-deep)}.book-certificate-date{border-top:1px solid var(--rule);color:var(--ink-muted);font-variant-numeric:lining-nums;margin:4px 0 0;padding-top:12px}.book-certificate-seal{place-items:center;width:72px;height:72px;display:grid;position:relative}.book-certificate-seal svg{fill:none;stroke:var(--terracotta-deep);stroke-width:1.4px;position:absolute;inset:0}.book-certificate-seal svg circle:nth-child(2){stroke-dasharray:2 3;stroke-width:1px}.book-certificate-seal img{width:30px;height:30px;display:block;position:relative}@media (prefers-reduced-motion:no-preference){.book-certificate-seal svg circle:first-child{animation:kl-seal-draw .7s var(--ease-out) .24s both;stroke-dasharray:189}}@keyframes kl-seal-draw{0%{stroke-dashoffset:189px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.book-stars i{animation:none}.book-word{transition:none}}@page certificate{margin:12mm;size:A4 landscape}@media print{.app-header,.breadcrumb,.book-actions,nav{display:none!important}.book-certificate-screen{page:certificate;max-width:none;margin:0}.book-certificate{break-inside:avoid;border-color:#8f4628;outline-color:#8f4628;align-content:center;min-height:176mm;padding:14mm 20mm}.book-certificate-art{max-width:80mm}.book-certificate-line strong{font-size:40pt}.book-certificate-seal{width:20mm;height:20mm}.book-certificate-seal img{width:8mm;height:8mm}}@media (max-width:560px){.book-turns .button{flex:1}.book-page-count{display:none}}.first-books-link{background:var(--sage-wash);border-radius:14px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:12px 0 0;padding:12px 16px;display:flex}.first-books-link a{color:var(--sage-deep);font-family:var(--display);font-size:1.25rem;font-weight:600}.first-books-link span{color:var(--ink-muted)}
:root{--rule-strong:#8a8175;--radius-card:20px;--radius-control:12px;--radius-segment:10px;--radius-badge:6px;--danger:#8a2e1f;--danger-deep:#6f2418}html{overscroll-behavior-x:none;overflow-x:clip}[hidden]{display:none!important}h1,h2,h3,.spoken-line,.prompt,.guide-prompt{text-wrap:balance}p,li,dd,figcaption{text-wrap:pretty}.eyebrow{letter-spacing:.09em;font-size:.8125rem;font-weight:700}.badge,.status-tag{letter-spacing:.07em;font-size:.75rem}.badge{border-radius:var(--radius-badge)}.decision-option span,.step-list li>span:last-child{font-size:.8125rem}.breadcrumb{margin-bottom:20px;font-size:.8125rem}.account-fields :is(input,select,textarea),.parent-form :is(input,select,textarea),.library-search-row input,.response-area{border-color:var(--rule-strong)}.account-fields :is(input,select,textarea):focus-visible,.parent-form :is(input,select,textarea):focus-visible,.library-search-row input:focus-visible,.response-area:focus-visible{border-color:var(--terracotta)}.account-fields select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23625f56' stroke-width='1.6'/%3E%3C/svg%3E")}::placeholder{color:var(--ink-muted);opacity:1}.button{transition-property:transform,box-shadow;transition-duration:.16s,.24s;transition-timing-function:var(--ease-out), var(--ease-out)}.button:disabled,.button[aria-disabled=true]{background:var(--panel);border-color:var(--rule);box-shadow:none;color:var(--ink-muted);cursor:not-allowed;opacity:1;transform:none}.decision-option:disabled{color:var(--ink-muted);opacity:1}.button-primary:active{box-shadow:none}@media (hover:hover) and (pointer:fine){.button-primary:hover{box-shadow:var(--shadow-control)}}.button-quiet{background:var(--ground);border-color:var(--rule);min-height:48px;padding:0 20px}.button-quiet:hover{border-color:var(--ink-muted)}.button-danger{background:var(--danger);border-color:var(--danger);color:var(--paper)}.button-danger:hover{background:var(--danger-deep);border-color:var(--danger-deep)}.reading-settings-toggle{width:48px;height:48px}.reading-option,.blend-choice,.flash-finish,.reflection-choice{min-height:48px}.reading-option{border-radius:var(--radius-segment)}.stage-chip,.year-lessons a,.year-more summary,.sound-say,.start-check-skip{min-height:44px}.start-check-skip{padding:8px 12px}.child-switch{justify-content:center;align-items:center;min-width:44px;min-height:44px}.child-switch span[aria-hidden]{width:40px;height:40px}.reflection-choice{background:var(--paper)}.reflection-choice[aria-pressed=true]{color:var(--paper)}.today-feature{border:1px solid var(--rule);border-radius:var(--radius-card);box-shadow:none}.today-aside,.context-panel,.side-panel{border-radius:var(--radius-card)}.response-panel,.decision-card{box-shadow:none}.context-panel,.today-aside{align-self:start}@media (max-width:380px){.child-turn{padding-inline:8px}.phonics-play{padding-inline:10px}.maths-count-ten,.maths-frame{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;width:100%;padding:6px}.maths-shell{aspect-ratio:1;width:100%;height:auto}}.maths-hundred{grid-template-columns:repeat(10,minmax(44px,1fr));padding-bottom:4px;overflow-x:auto}.maths-hcell{min-height:44px;font-size:1rem}details.fold{border-bottom:1px solid var(--rule)}details.fold>summary{cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:18px 4px;font-weight:650;list-style:none;transition:color .2s;display:flex}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary:after{background:linear-gradient(currentColor,currentColor) 50%/12px 1.5px no-repeat,linear-gradient(currentColor,currentColor) 50%/1.5px 12px no-repeat;background-color:var(--paper);border:1px solid var(--rule);content:"";height:40px;transition:background-size .26s var(--ease-out), border-color .2s ease, transform .26s var(--ease-out), background-color .2s ease;border-radius:50%;flex:none;width:40px}details.fold[open]>summary:after{background-color:var(--ink);border-color:var(--ink);color:var(--paper);background-size:12px 1.5px,1.5px 0;transform:rotate(180deg)}@media (hover:hover) and (pointer:fine){details.fold>summary:hover{color:var(--terracotta-deep)}details.fold>summary:hover:after{border-color:var(--terracotta)}}details.fold>summary:active:after{transform:scale(.94)}details.fold[open]>:not(summary){animation:kl-rise .32s var(--ease-out) both}.lesson-actions .lesson-record{margin-right:auto}@media (max-width:620px){.lesson-actions:has(.lesson-record){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.lesson-actions .lesson-record{white-space:normal;margin:0;font-size:.9rem;line-height:1.2}}.brand-ident{display:inline-block;position:relative}.brand-ident-still{height:auto;display:block}.brand-ident-stage{pointer-events:none;position:absolute;inset:0}.brand-ident-stage svg,.brand-ident-svg{overflow:visible}.brand-ident.is-playing .brand-ident-still{visibility:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-delay:0s!important;animation-delay:0s!important}}
