.app-switch-wrap{position:relative;display:inline-flex}.app-switch-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:50%;color:var(--ink-soft);opacity:.7;font-size:20px;transition:transform .15s ease}.app-switch-btn:active{transform:scale(.92)}.app-switch-btn:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}.app-switch-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:max-content;max-width:min(240px,82vw);padding:12px;border-radius:var(--radius-sm, 14px);background:var(--card);border:1px solid var(--line);box-shadow:0 6px 24px #2b262229;animation:app-switch-pop-in .22s ease}.app-switch-caption{padding:0 4px 8px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.app-switch-list{display:flex;flex-direction:column;gap:4px}.app-switch-chip{display:flex;align-items:center;gap:9px;min-height:44px;padding:4px 12px 4px 4px;border-radius:999px;background:transparent;color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}a.app-switch-chip:hover{background:color-mix(in srgb,var(--line) 40%,transparent)}.app-switch-chip:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}.app-switch-chip-current{background:color-mix(in srgb,var(--app-accent, var(--coral)) 14%,var(--card));color:var(--app-accent-deep, var(--coral-deep))}.app-switch-glyph{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:17px}.app-switch-divider{margin:4px 8px;border-top:1px solid var(--line)}@keyframes app-switch-pop-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.app-switch-pop{animation:none}}body:has(.round-screen) .app-switch-wrap{display:none}@media(min-width:1100px)and (orientation:landscape){.app-switch-wrap{display:none}}.cast-host{--cast-host-h: clamp(104px, 20vh, 208px);position:relative;display:inline-block;width:var(--cast-host-h);height:var(--cast-host-h);flex-shrink:0}.cast-host-art{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;animation:cast-host-bob 3.6s ease-in-out infinite;filter:drop-shadow(0 6px 10px rgba(43,38,34,.16))}.cast-host-badge{position:absolute;right:calc(var(--cast-host-h) * -.07);bottom:calc(var(--cast-host-h) * .04);width:calc(var(--cast-host-h) * .38);height:calc(var(--cast-host-h) * .38);box-sizing:border-box;border-radius:50%;border:3px solid var(--app-accent, var(--coral));background:var(--card);box-shadow:0 4px 12px #2b262229;display:flex;align-items:center;justify-content:center;font-size:calc(var(--cast-host-h) * .22);line-height:1;padding-top:2px}.cast-host--button{padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease}.cast-host--button:active{transform:scale(.96)}.cast-host--button:focus-visible{outline:3px solid var(--app-accent, var(--coral));outline-offset:4px;border-radius:12px}.cast-host-tap-badge{position:absolute;left:calc(var(--cast-host-h) * -.07);bottom:calc(var(--cast-host-h) * .04);display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:calc(var(--cast-host-h) * .32);height:calc(var(--cast-host-h) * .32);border-radius:50%;border:3px solid #ffffff;background:var(--app-accent, #e8971e);box-shadow:0 3px 10px #2b262238;font-size:calc(var(--cast-host-h) * .16);line-height:1;pointer-events:none;animation:cast-host-tap-pulse 2.6s ease-in-out infinite}@keyframes cast-host-tap-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.cast-host--noart{width:auto;height:auto}.cast-host--noart .cast-host-tap-badge{display:none}.cast-host--noart .cast-host-badge{position:static;width:auto;height:auto;border:0;background:none;box-shadow:none;font-size:96px;padding-top:0;animation:cast-host-bob 3.6s ease-in-out infinite}@keyframes cast-host-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}@media(prefers-reduced-motion:reduce){.cast-host-art,.cast-host--noart .cast-host-badge,.cast-host-tap-badge{animation:none}.cast-host--button{transition:none}}.start-screen{align-items:center;justify-content:space-evenly;text-align:center}.start-logo{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.start-top-corner{position:absolute;top:0;right:0}.screen.start-screen.start-screen--native>*{margin-top:auto}.screen.start-screen.start-screen--native>:last-child{margin-bottom:auto}.start-parrot{font-size:96px;line-height:1.1;animation:parrot-bob 3.6s ease-in-out infinite}.start-title{font-size:42px;font-weight:700;margin:0;color:var(--ink)}.start-tagline{font-size:18px;font-weight:600;margin:0;color:var(--ink-soft, var(--ink))}.start-title--app{display:flex;flex-direction:column;align-items:center;gap:2px}.start-title-brand{font-size:19px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft, var(--ink))}.start-title-subject{font-size:52px;line-height:1.05;color:var(--app-accent, var(--coral))}.start-title-brandmark{font-size:clamp(34px,11vw,52px);line-height:1.05;color:var(--app-accent, var(--coral));white-space:nowrap}.start-animals{font-size:28px;letter-spacing:8px;display:inline-flex;gap:6px}.start-animal{display:inline-block;animation:animal-peek .9s ease-out 1}@keyframes animal-peek{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-6deg)}}.start-btn{--btn-accent: var(--ui-accent);--btn-accent-deep: var(--ui-accent-deep);width:168px;height:168px;border:0;padding:0;cursor:pointer;border-radius:50%;background:radial-gradient(125% 125% at 50% 20%,color-mix(in srgb,var(--btn-accent) 76%,#fff) 0%,var(--btn-accent) 52%,var(--btn-accent-deep) 100%);box-shadow:0 16px 30px -8px color-mix(in srgb,var(--btn-accent) 62%,transparent),0 4px 9px #2b26221f,inset 0 3px 5px #ffffff80,inset 0 -9px 16px color-mix(in srgb,var(--btn-accent-deep) 55%,transparent);display:flex;align-items:center;justify-content:center;animation:breathe 2.3s ease-in-out infinite;transition:transform .12s ease,box-shadow .12s ease}.start-btn svg{filter:drop-shadow(0 2px 2px color-mix(in srgb,var(--btn-accent-deep) 60%,transparent))}.start-btn:active{transform:scale(.94);animation:none;background:radial-gradient(125% 125% at 50% 20%,color-mix(in srgb,var(--btn-accent-deep) 85%,#fff) 0%,var(--btn-accent-deep) 60%,color-mix(in srgb,var(--btn-accent-deep) 80%,#000) 100%);box-shadow:0 6px 14px -6px color-mix(in srgb,var(--btn-accent) 48%,transparent),inset 0 3px 8px color-mix(in srgb,var(--btn-accent-deep) 60%,transparent)}.start-play{display:flex;flex-direction:column;align-items:center;gap:14px}.start-cta{margin:0;font-size:22px;font-weight:700;color:var(--ui-accent-deep);animation:none}@keyframes cta-pulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}}.start-welcome{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:22rem;padding:14px 20px 16px;border-radius:22px;background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:var(--shadow, 0 6px 18px rgba(43, 38, 34, .12))}.start-welcome-title{margin:0;font-size:20px;font-weight:800;line-height:1.25;color:var(--ink)}.start-welcome .start-stat{margin:0;padding:0;background:none;font-size:14px;font-weight:600;opacity:.82}html[data-app] .start-welcome .start-stat--new{background:none;color:var(--app-accent-deep, var(--coral-deep))}.start-stat{margin:2px 0 0;max-width:17rem;min-height:1.4em;padding:8px 16px;border-radius:999px;background:color-mix(in srgb,var(--sun) 22%,var(--card));font-size:15px;font-weight:700;line-height:1.35;color:var(--ink)}.start-stat--new{background:color-mix(in srgb,var(--ui-accent) 14%,var(--card));color:var(--ui-accent-deep)}.start-stat--rotating{animation:stat-in .5s ease-out}@keyframes stat-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.start-hint{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--ink-soft);animation:none}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}@keyframes parrot-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}@keyframes hint-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.start-parrot,.start-animal,.start-btn,.start-cta,.start-stat--rotating,.start-hint{animation:none}}.screen.setup-screen{align-items:center;justify-content:flex-start;gap:12px;text-align:center;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-top:calc(var(--safe-top) + 16px);padding-bottom:calc(var(--safe-bottom) + 24px)}.setup-screen::-webkit-scrollbar{display:none}.setup-title{font-size:24px;font-weight:700;margin:0 0 8px}.setup-label{font-size:15px;font-weight:600;color:var(--ink-soft);margin-top:8px}.setup-hint{width:min(360px,88vw);margin:-2px 0 4px;font-size:12.5px;line-height:1.35;color:var(--ink-soft);text-align:center}.setup-input{width:min(320px,86vw);min-height:60px;border-radius:var(--radius-sm);border:2px solid var(--line-strong);background:var(--card);font-size:24px;font-weight:600;text-align:center;padding:8px 16px;outline:none}.setup-input:focus{border-color:var(--ui-accent)}.setup-limits{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.limit-btn{min-width:68px;min-height:56px;padding:0 14px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:18px;font-weight:600;transition:transform .12s ease}.limit-btn:active{transform:scale(.95)}.limit-active{background:var(--ui-accent);border-color:transparent;color:#fff;font-weight:700}.setup-stages{display:flex;flex-direction:column;gap:8px;width:min(360px,88vw)}.stage-btn{text-align:left;padding:10px 14px;border-radius:var(--radius-sm);background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:3px;transition:transform .12s ease,border-color .12s ease}.stage-btn:active{transform:scale(.98)}.stage-active{border-color:var(--ui-accent)}.stage-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.stage-name{font-size:17px;font-weight:700;color:var(--ink)}.stage-meta{font-size:13px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.stage-cando{font-size:13px;line-height:1.3;color:var(--ink-soft)}.stage-curriculum{align-self:flex-start;margin-top:4px;padding:2px 9px;border-radius:999px;background:var(--line);font-size:11.5px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.setup-summary{width:min(360px,88vw);margin-top:12px;padding:10px 14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ui-accent) 8%,var(--card));border:1px solid color-mix(in srgb,var(--ui-accent) 30%,var(--line));display:flex;flex-direction:column;gap:4px;text-align:left}.setup-summary-line{margin:0;font-size:14px;font-weight:600;line-height:1.3;color:var(--ink)}.setup-summary-perlang{margin:0;font-size:13px;font-weight:500;line-height:1.35;color:var(--ink)}.setup-summary-reassure{margin:0;font-size:12.5px;line-height:1.3;color:var(--ink-soft)}.setup-start{margin-top:24px;min-height:68px;padding:0 36px;border-radius:999px;background:var(--ui-accent);color:#fff;font-size:24px;font-weight:700;box-shadow:var(--shadow);display:inline-flex;align-items:center;gap:10px;transition:transform .12s ease,opacity .2s ease}.setup-start:active{transform:scale(.95);background:var(--ui-accent-deep)}.setup-start:disabled{opacity:.35;pointer-events:none}.setup-bring-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;margin-top:2px;font-size:15px;font-weight:600;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px}.setup-bring-link:active{color:var(--ui-accent-deep)}.setup-matrix{display:grid;gap:8px;width:100%;max-width:440px;margin:2px auto 0}.setup-stepper{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--card);border:2px solid var(--line);border-radius:16px}.setup-stepper-label{font-size:16px;font-weight:700;color:var(--ink)}.setup-stepper-ctl{display:flex;align-items:center;gap:8px}.setup-step-btn{width:36px;height:36px;border-radius:50%;border:2px solid var(--line);background:var(--bg);font-size:22px;font-weight:800;line-height:1;color:var(--ink);display:flex;align-items:center;justify-content:center}.setup-step-btn:active{transform:scale(.92)}.setup-step-btn:disabled{opacity:.3;pointer-events:none}.setup-stepper-val{min-width:92px;text-align:center;font-size:15px;font-weight:700;color:var(--ui-accent-deep)}.age-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:min(360px,88vw);margin:2px 0 4px}.age-btn{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;min-height:50px;padding:5px 4px;border-radius:var(--radius-sm);background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);transition:transform .12s ease,border-color .12s ease}.age-btn:active{transform:scale(.96)}.age-active{border-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 9%,var(--card))}.age-years{font-size:18px;font-weight:800;line-height:1.05}.age-unit{font-size:11px;font-weight:600;color:var(--ink-soft)}.age-stage-label{margin-top:2px;font-size:11px;font-weight:700;line-height:1.2;color:var(--ui-accent);text-align:center;min-height:26px}.age-year{font-size:10px;font-weight:600;color:var(--ink-soft)}.age-cando{width:min(360px,88vw);margin:2px 0 6px;font-size:13px;line-height:1.35;color:var(--ink-soft);text-align:center}.age-cando-label{font-weight:700;color:var(--ink)}.age-bring-players{margin-top:2px}.age-skip{margin-top:8px;min-height:44px;padding:10px 18px;border:none;background:transparent;color:var(--ink-soft);font-size:14px;font-weight:600;text-decoration:underline}.age-skip:disabled{opacity:.4;text-decoration:none}.age-scroll-hint{position:sticky;bottom:0;align-self:stretch;height:64px;margin-top:-64px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;background:linear-gradient(to top,var(--bg-bottom) 8%,rgba(255,244,226,0) 90%);pointer-events:none;opacity:1;transition:opacity .25s ease}.age-scroll-hint-off{opacity:0}.age-scroll-chevron{color:var(--ui-accent);animation:age-chevron-bob 1.6s ease-in-out infinite}@keyframes age-chevron-bob{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){.age-scroll-chevron{animation:none}}.choice-grid{display:grid;gap:12px;width:100%;max-width:360px}.grid-emoji{grid-template-columns:1fr 1fr}.grid-word{grid-template-columns:1fr}.grid-word.count-4{grid-template-columns:1fr 1fr}.choice{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;min-height:72px;transition:transform .12s ease,opacity .25s ease,box-shadow .12s ease;animation:choice-pop .3s ease backwards}.choice:active{transform:translateY(2px) scale(.97)}.choice-emoji{font-size:56px;min-height:100px;line-height:1}.choice-word{font-family:var(--font-reading);font-size:28px;font-weight:700;text-transform:lowercase;letter-spacing:.02em;padding:8px 12px;min-width:0;max-width:100%;overflow-wrap:anywhere}.choice.state-dim{opacity:.28;filter:grayscale(.9);pointer-events:none}.choice.state-correct{background:#e9fbf1;border-color:transparent;box-shadow:0 0 0 3px var(--leaf);animation:choice-bounce .5s ease}@keyframes choice-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes choice-bounce{0%{transform:scale(1)}35%{transform:scale(1.1)}70%{transform:scale(.97)}to{transform:scale(1)}}.print-mark{display:inline-flex;align-items:center;justify-content:center}.print-mark>svg{display:block;width:1em;height:1em;fill:currentColor}.placement-trail{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex:1 1 auto;min-width:0;max-width:none;flex-wrap:nowrap;overflow:hidden;padding-block:5px}.trail-walked{display:flex;align-items:center;justify-content:flex-end;gap:inherit;flex:0 1 auto;min-width:0;flex-wrap:nowrap;overflow:hidden;padding:3px;margin:-3px}.trail-paw{flex:0 0 auto;font-size:15px;line-height:1;color:#2b2622b8}.trail-paw:nth-child(odd){transform:rotate(-14deg)}.trail-paw:nth-child(2n){transform:rotate(14deg)}.trail-paw-correct{border-radius:50%;background:color-mix(in srgb,var(--ui-accent) 32%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--ui-accent) 32%,transparent)}.trail-paw-tried{filter:grayscale(1);opacity:.4}.trail-paw-victory{filter:none;opacity:1}.trail-here{flex:0 0 auto;width:14px;height:14px;border-radius:50%;background:var(--card);border:2px solid var(--ui-accent);animation:trail-here-pulse 1.6s ease-in-out infinite}@keyframes trail-here-pulse{0%,to{transform:scale(1);box-shadow:0 0 color-mix(in srgb,var(--ui-accent) 35%,transparent)}50%{transform:scale(1.12);box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-accent) 12%,transparent)}}.trail-ahead{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px}.trail-end{flex:0 0 auto;font-size:14px;line-height:1}.trail-fade{width:8px;height:8px;border-radius:50%;background:#2b26228c}.trail-ahead .trail-fade:nth-child(1){opacity:.45}.trail-ahead .trail-fade:nth-child(2){opacity:.28}.trail-ahead .trail-fade:nth-child(3){opacity:.14}@media(prefers-reduced-motion:reduce){.trail-here{animation:none}}@media(max-width:419px){.placement-trail{gap:4px}}.speaker-btn{width:56px;height:56px;border-radius:50%;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ui-accent);display:inline-flex;align-items:center;justify-content:center;transition:transform .12s ease}.speaker-btn:active{transform:scale(.92)}.speaker-big{width:112px;height:112px;animation:breathe 2.5s ease-in-out infinite}.confetti-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:55}.round-screen{position:relative}.round-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:var(--top-chrome-h, 56px);min-width:0}.quit-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;border-radius:50%;color:var(--ink-soft);opacity:.7;transition:transform .15s ease,opacity .15s ease,color .15s ease}.quit-btn:active{transform:scale(.92)}.quit-btn.is-holding{opacity:1;color:var(--coral-deep)}.quit-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;transform:rotate(-90deg)}.quit-ring-track{fill:none;stroke:var(--line-strong);stroke-width:3;opacity:0;transition:opacity .2s ease}.quit-btn.is-holding .quit-ring-track{opacity:.55}.quit-ring-fill{fill:none;stroke:var(--coral);stroke-width:3;stroke-linecap:round;transition-property:stroke-dashoffset;transition-timing-function:linear}.round-stage{flex:1;display:flex;flex-direction:column;min-height:0;animation:stage-in .25s ease}.round-parrot{width:48px;height:48px;font-size:26px;flex-shrink:0}@keyframes stage-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.round-comeback{align-self:center;margin:4px auto 0;padding:8px 18px;max-width:90%;border-radius:999px;background:var(--leaf);color:#fff;font-weight:800;font-size:1.05rem;text-align:center;line-height:1.2;box-shadow:0 4px 14px #00000024;pointer-events:none;animation:comeback-in .32s cubic-bezier(.18,.9,.32,1.4)}@keyframes comeback-in{0%{opacity:0;transform:translateY(-12px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.round-comeback{animation:none}}.round-buddy{display:inline-flex;flex-direction:column;align-items:stretch;gap:2px;flex-shrink:0;min-width:0}.round-buddy-hint{display:inline-flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;flex-shrink:0;gap:1px;border:none;border-radius:999px;padding:4px 8px;min-height:36px;font-size:16px;font-family:inherit;background:#ffc10738;cursor:pointer}.round-buddy-hint:disabled{opacity:.4;cursor:default}.round-buddy-hint.is-static{background:#ffffff8c;cursor:default}.round-hint-pips{font-size:10px;letter-spacing:-1px}.round-buddy-care{display:block;width:100%;height:4px;border-radius:999px;background:#2b262224;overflow:hidden}.round-buddy-care-fill{display:block;height:100%;border-radius:999px;background:var(--leaf, #34c77b);transition:width .4s ease}@media(prefers-reduced-motion:reduce){.round-buddy-care-fill{transition:none}}.round-buddy-x2{margin-left:2px;padding:1px 4px;border-radius:999px;background:var(--sun, #ffc83d);color:var(--ink, #2b2622);font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}@media(max-width:359px){.round-hint-pips,.round-buddy-x2{display:none}.round-top .progress-dots{gap:4px}}:root[data-native] .round-screen:not(.placement-quiz) .round-stage>.mode{flex:1 1 auto;display:flex;flex-direction:column}.placement-quiz .pq-spacer{width:44px;flex:none}.screen.placement-confirm{align-items:center;justify-content:flex-start}.pq-confirm-card{width:min(360px,100%);margin-block:auto;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.pq-confirm-title{font-size:24px;font-weight:800;margin:0}.pq-confirm-sub{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.4}.pq-confirm-list{list-style:none;margin:8px 0 4px;padding:0;width:100%;display:flex;flex-direction:column;gap:8px}.pq-confirm-list li{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.pq-confirm-icon{font-size:22px}.pq-confirm-label{font-size:16px;font-weight:600}.pq-confirm-value{margin-left:auto;font-size:16px;font-weight:800;color:var(--ui-accent)}.pq-confirm-stacked{flex-direction:column;align-items:stretch;gap:4px}.pq-confirm-row{display:flex;align-items:center;gap:10px}.pq-confirm-note{margin:0;font-size:13px;font-weight:500;line-height:1.35;color:var(--ink-soft)}.pq-confirm-go{margin-top:8px}.placement-intro,.placement-chess-prior{position:relative}.placement-intro .pq-prior-top,.placement-chess-prior .pq-prior-top{position:absolute;top:calc(var(--safe-top) + 8px);left:12px;right:12px;display:flex;justify-content:flex-start}.pq-prior-choices{width:100%;display:flex;flex-direction:column;gap:10px;margin-top:8px}.pq-prior-btn{width:100%;min-height:52px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font:inherit;font-size:17px;font-weight:700;color:inherit;cursor:pointer}.pq-prior-btn:active{transform:scale(.98)}.pq-intro-slot{position:absolute;top:0;right:0;bottom:0;left:0;isolation:isolate}.placement-intro-custom .pq-prior-top{z-index:1;pointer-events:none}.placement-intro-custom .pq-prior-top>*{pointer-events:auto}.pq-confirm-was{color:var(--ink-soft);font-weight:700;font-size:15px}.parents-screen{gap:10px}.parents-gate{align-items:center;justify-content:center;gap:18px}.gate-q{font-size:26px;font-weight:700;margin:0;text-align:center}.gate-q sup{font-size:.62em;vertical-align:super;line-height:0;margin-left:.04em}.gate-display{min-width:168px;height:64px;padding:0 16px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-strong);box-shadow:var(--shadow);font-size:34px;font-weight:700;letter-spacing:2px;color:var(--ink)}.gate-keypad{display:grid;grid-template-columns:repeat(3,76px);gap:10px}.gate-key{height:58px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:24px;font-weight:700;color:var(--ink);transition:transform .12s ease}.gate-key:active{transform:scale(.95)}.gate-key-soft{color:var(--ink-soft)}.gate-key.gate-check{background:var(--ui-accent);color:#fff;border-color:transparent}.gate-key.gate-check:active{background:var(--ui-accent-deep)}.gate-key.gate-check:disabled{opacity:.4;transform:none}.gate-lock-emoji{font-size:52px;line-height:1}.gate-hint{margin:0;font-size:15px;font-weight:600;color:var(--ink-soft)}.gate-setup-intro{margin:0;max-width:280px;text-align:center;font-size:14px;font-weight:600;color:var(--ink-soft)}.gate-cancel{margin-top:4px;padding:8px 16px;font-size:14px;font-weight:600;color:var(--ink-soft);opacity:.7;text-decoration:underline;text-underline-offset:2px}.gate-cancel:active{opacity:1}.parents-top{display:flex;align-items:center;justify-content:space-between;min-height:52px}.parents-title{font-size:24px;font-weight:700;margin:0}.parents-close{width:52px;height:52px;border-radius:50%;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center}.parents-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;display:flex;flex-direction:column;gap:14px;padding-bottom:16px}.p-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.p-section h2{margin:0 0 10px;font-size:19px;font-weight:700}.p-section h3{margin:16px 0 8px;font-size:14px;font-weight:600;color:var(--ink-soft)}.p-muted{color:var(--ink-soft);font-size:14px;font-weight:500;margin:4px 0}.help-rewards-sub{margin:12px 0 2px;font-size:14px;font-weight:700;color:var(--ink)}.p-nudge{color:var(--ink);background:var(--accent-soft, #eef6ff);border-radius:10px;padding:8px 12px;font-size:14px;font-weight:600;margin:8px 0}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:#2b26220a;border-radius:var(--radius-sm);padding:10px;display:flex;flex-direction:column;gap:2px}.stat-value{font-size:22px;font-weight:700}.stat-label{font-size:13px;color:var(--ink-soft);font-weight:600}.acc-row{display:flex;align-items:center;gap:8px;margin:6px 0}.acc-label{width:110px;font-size:13px;font-weight:600;color:var(--ink-soft)}.acc-bar{flex:1;height:10px;border-radius:999px;background:#2b262214;overflow:hidden}.acc-fill{height:100%;border-radius:999px;background:var(--ui-accent)}.acc-pct{width:48px;text-align:right;font-size:13px;font-weight:700}.tricky-list{list-style:none;margin:0;padding:0}.tricky-list li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid rgba(43,38,34,.08)}.tricky-word{font-family:var(--font-reading);font-weight:700;text-transform:lowercase;letter-spacing:.02em}.tricky-count{color:var(--ink-soft);font-size:14px}.p-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0}.p-chip{min-height:48px;min-width:44px;padding:0 18px;border-radius:999px;background:#2b26220f;font-size:16px;font-weight:600;transition:transform .12s ease}.p-chip:active{transform:scale(.96)}.p-chip:disabled{opacity:.4}.p-chip.chip-pending{outline:2px solid var(--ui-accent);outline-offset:2px;color:var(--ui-accent);font-weight:700}.chip-active{background:var(--ui-accent);color:#fff;font-weight:700}.chip-danger{background:#ff6b571f;color:var(--coral-deep)}.display-preview{font-family:var(--font-reading);font-size:24px;font-weight:700;color:var(--ink-soft);margin-left:4px}.display-preview-large{font-size:28px}.p-input{flex:1;min-width:120px;min-height:48px;border-radius:var(--radius-sm);border:2px solid var(--line-strong);padding:6px 12px;font-size:17px;font-weight:600;outline:none;background:#fff}.p-input:focus{border-color:var(--ui-accent)}.p-textarea{width:100%;border-radius:var(--radius-sm);border:2px solid var(--line-strong);padding:8px 12px;font-size:13px;font-family:monospace;outline:none;resize:vertical;background:#fff}.p-textarea:focus{border-color:var(--ui-accent)}.word-chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 10px}.word-chip{padding:6px 12px;border-radius:999px;background:#2b26220a;font-size:14px;font-weight:600}.word-table-wrap{max-height:40vh;overflow-y:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius-sm)}.word-table{width:100%;border-collapse:collapse;font-size:14px}.word-table th{position:sticky;top:0;background:var(--card);text-align:left;padding:8px 10px;font-size:12px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--line)}.word-table td{padding:6px 10px;border-bottom:1px solid rgba(43,38,34,.08)}.word-table tr:last-child td{border-bottom:none}.word-table th:nth-child(n+2),.word-table td:nth-child(n+2){width:76px;text-align:right}.word-table-word{font-family:var(--font-reading);font-weight:700;text-transform:lowercase;letter-spacing:.02em}.word-table-pin{text-align:center}.word-table th:last-child,.word-table td:last-child{width:44px;text-align:center}.pin-btn{min-height:36px;min-width:36px;padding:0;border-radius:999px;background:none;font-size:16px;line-height:1;opacity:.3;filter:grayscale(1);transition:transform .12s ease}.pin-btn:active{transform:scale(.92)}.pin-btn.pin-on{opacity:1;filter:none;background:#ffc83d2e}.week-chart{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:8px 0 4px}.week-day{display:flex;flex-direction:column;align-items:center;gap:4px}.week-bars{display:flex;align-items:flex-end;gap:3px;height:56px}.week-bar{width:7px;min-height:2px;border-radius:3px 3px 0 0;background:#2b26221f}.week-bar-minutes{background:var(--ui-accent)}.week-bar-rounds{background:var(--leaf)}.week-bar-stars{background:var(--sun)}.week-initial{font-size:12px;font-weight:600;color:var(--ink-soft)}.week-legend{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.week-key{display:inline-block;width:10px;height:10px;border-radius:3px}.week-key-minutes{background:var(--ui-accent)}.week-key-rounds{background:var(--leaf)}.week-key-stars{background:var(--sun)}.install-steps{list-style:none;margin:4px 0;padding:0}.install-steps li{padding:3px 0;font-size:14px;font-weight:500;color:var(--ink-soft)}.code-box{display:block;width:100%;margin:6px 0;padding:10px 12px;border-radius:var(--radius-sm);background:#2b26220a;border:1px dashed var(--line-strong);font-family:monospace;font-size:11px;line-height:1.4;text-align:left;word-break:break-all;max-height:120px;overflow-y:auto;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.code-preview,.remove-confirm{margin:8px 0;padding:12px;border-radius:var(--radius-sm);background:#2b26220a;border:1px solid var(--line)}.code-preview-name{font-size:18px;font-weight:700}.player-list{list-style:none;margin:0;padding:0}.player-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:10px 0;border-bottom:1px solid rgba(43,38,34,.08)}.player-row:last-child{border-bottom:none}.player-emoji{font-size:26px;line-height:1;flex-shrink:0}.player-main{flex:1;min-width:120px;display:flex;flex-direction:column;gap:1px}.player-name{font-size:17px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.player-active{font-size:13px;font-weight:700;color:var(--leaf)}.player-last{font-size:13px;font-weight:600;color:var(--ink-soft)}.link-qr-wrap{display:flex;justify-content:center;margin:6px 0 4px}.join-qr{width:180px;height:180px;padding:10px;background:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow)}.join-qr svg{display:block;width:100%;height:100%}.family-app-card{margin:12px 0 6px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.family-app-title{margin:0 0 4px}.family-app-card .p-muted{margin-top:0}.family-app-open{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--ui-accent);color:#fff;font-weight:700;text-decoration:none}.family-app-open:active{background:var(--ui-accent-deep)}.player-stats{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-top:3px}.player-stat{font-size:13px;font-weight:700;color:var(--ink-soft);font-variant-numeric:tabular-nums}.player-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.player-actions .p-chip{min-height:44px;padding:0 14px;font-size:14px}.player-rename{flex:1;min-width:160px;margin:0}.family-card{margin:8px 0;padding:12px;border-radius:var(--radius-sm);background:#2b26220a;border:1px solid var(--line)}.family-card-head{display:flex;align-items:center;gap:10px}.family-card-title{flex:1;min-width:0;display:flex;flex-direction:column}.family-level{font-size:13px;font-weight:600;color:var(--ink-soft)}.family-updated{font-size:13px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.family-subhead{margin:10px 0 4px;font-size:13px;font-weight:600;color:var(--ink-soft)}.family-label-for{width:96px;flex-shrink:0;font-size:14px;font-weight:600;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-setup{margin-top:10px;padding-top:10px;border-top:1px solid rgba(43,38,34,.08)}.family-setup-form{margin-top:4px}.tier-now{margin:8px 0;padding:10px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--ui-accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--ui-accent) 18%,transparent)}.tier-now strong{font-size:15px}.tier-guide{list-style:none;margin:8px 0;padding:0}.tier-guide-row{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid rgba(43,38,34,.08)}.tier-guide-now{background:#ffc83d1a;border-radius:var(--radius-sm);padding:8px}.tier-guide-num{flex-shrink:0;width:26px;height:26px;border-radius:999px;background:#2b26220f;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.tier-guide-body{display:flex;flex-direction:column;gap:2px;min-width:0}.tier-guide-title{font-size:14px;font-weight:700}.tier-guide-examples{font-family:var(--font-reading);font-weight:700;text-transform:lowercase;letter-spacing:.02em;color:var(--ink-soft);font-size:15px;margin-top:2px}.help-levels{margin:6px 0;padding-left:18px}.help-levels li{font-size:14px;font-weight:500;color:var(--ink);margin:4px 0}.onboarding-card{background:color-mix(in srgb,var(--ui-accent) 6%,transparent);border-color:color-mix(in srgb,var(--ui-accent) 18%,transparent)}.onboarding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.onboarding-head h2{margin:0}.onboarding-list{list-style:none;margin:8px 0 4px;padding:0}.onboarding-list li{padding:6px 0;font-size:14px;font-weight:500;line-height:1.45;color:var(--ink)}.onboarding-list strong{font-weight:700}.needs-list{list-style:none;margin:4px 0 10px;padding:0}.needs-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid rgba(43,38,34,.08)}.needs-row:last-child{border-bottom:none}.needs-emoji{font-size:22px;line-height:1;flex-shrink:0}.needs-text{display:flex;flex-direction:column;gap:1px;min-width:0}.needs-word{font-family:var(--font-reading);font-weight:700;text-transform:lowercase;letter-spacing:.02em;font-size:18px}.needs-evidence{font-size:12px;font-weight:600;color:var(--ink-soft);font-variant-numeric:tabular-nums}.needs-reason{flex:1;min-width:0;text-align:right;font-size:13px;font-weight:600;color:var(--ink-soft)}.needs-btn{flex-shrink:0;min-height:44px;padding:0 14px;border-radius:999px;background:#2b26220f;font-size:14px;font-weight:600;transition:transform .12s ease}.needs-btn:active{transform:scale(.96)}.needs-btn.needs-on{background:var(--ui-accent);color:#fff;font-weight:700}.help-version{margin-top:14px;font-size:13px}.player-switcher{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;display:flex;flex-direction:column;gap:10px}.player-switcher-head{display:flex;align-items:center;gap:10px}.player-switcher-emoji{font-size:30px;line-height:1}.player-switcher-title{font-size:17px;font-weight:600;color:var(--ink-soft)}.player-switcher-title strong{color:var(--ink);font-weight:800}.player-switcher-chips{display:flex;flex-wrap:wrap;gap:8px}.player-switcher-chips .p-chip{min-height:44px;padding:0 14px;font-size:15px}.parents-tabs{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:2px;scroll-padding-inline:4px;scrollbar-width:none}.parents-tabs::-webkit-scrollbar{display:none}.parents-tab{flex:1 1 0;min-width:56px;min-height:52px;border-radius:var(--radius-sm);background:#2b26220d;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:600;color:var(--ink-soft);transition:transform .12s ease,background .12s ease,color .12s ease}.parents-tab:active{transform:scale(.96)}.parents-tab-icon{font-size:19px;line-height:1}.parents-tab-label{font-size:12px;white-space:nowrap}.parents-tab.tab-active{background:var(--ui-accent);border-color:var(--ui-accent);box-shadow:none;color:#fff;font-weight:700}@media(max-width:410px){.parents-tabs{gap:4px}.parents-tab-label{display:none}.parents-tab{min-width:40px;min-height:46px}}.subject-toggles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.subject-toggle{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:#2b26220a;border:2px solid var(--line);text-align:left;transition:transform .12s ease,border-color .12s ease,background .12s ease}.subject-toggle:active{transform:scale(.97)}.subject-toggle:disabled{opacity:.6}.subject-toggle-emoji{font-size:24px;line-height:1}.subject-toggle-label{flex:1;font-size:15px;font-weight:600;color:var(--ink)}.subject-toggle-state{font-size:13px;font-weight:700;color:var(--ink-soft)}.subject-toggle.subject-on{border-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 10%,transparent)}.subject-toggle.subject-on .subject-toggle-state{color:var(--ui-accent-deep)}.subject-toggle.subject-off{opacity:.7}.subject-progress-list{list-style:none;margin:6px 0 4px;padding:0}.subject-progress-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid rgba(43,38,34,.08)}.subject-progress-row:last-child{border-bottom:none}.subject-progress-emoji{flex-shrink:0;width:24px;font-size:20px;line-height:1;text-align:center}.subject-progress-label{flex:1 1 auto;min-width:0;font-size:14px;font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word}.subject-progress-row .acc-bar{flex:0 1 64px}.subject-progress-count{flex-shrink:0;width:56px;text-align:right;font-size:13px;font-weight:700;color:var(--ink-soft)}.exam-history-list{list-style:none;margin:6px 0 4px;padding:0}.exam-history-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(43,38,34,.08)}.exam-history-row:last-child{border-bottom:none}.exam-history-emoji{flex-shrink:0;width:24px;font-size:20px;line-height:1;text-align:center}.exam-history-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.exam-history-subject{font-size:14px;font-weight:700}.exam-history-score{font-size:12px;color:var(--ink-soft)}.exam-history-chip{flex-shrink:0;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800}.exam-chip-passed{background:#ffc83d47;color:#8a6300}.exam-chip-tried{background:#2b262212;color:var(--ink-soft)}.acc-bar-open{background:transparent;overflow:visible;display:flex;align-items:center;justify-content:center}.acc-open-glyph{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--ui-accent) 14%,transparent);color:var(--ui-accent);font-size:12px;font-weight:800;line-height:1.4}.curriculum-tracks{display:flex;flex-direction:column;gap:12px}.curriculum-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card);box-shadow:var(--shadow);padding:12px 14px}.curriculum-done{opacity:.8}.curriculum-head{display:flex;align-items:center;gap:10px}.curriculum-emoji{font-size:26px;line-height:1}.curriculum-titles{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.curriculum-course{font-size:15px;font-weight:700;color:var(--ink)}.curriculum-weekrow{display:flex;align-items:center;gap:8px;margin-top:10px}.curriculum-step{flex:0 0 auto;width:44px;height:44px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:22px;font-weight:700;color:var(--ink);line-height:1}.curriculum-step:disabled{opacity:.3;box-shadow:none}.curriculum-week-line{flex:1 1 auto;display:flex;flex-direction:column;gap:1px;text-align:center}.curriculum-week-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.curriculum-week-topic{font-size:15px;font-weight:700;color:var(--ink)}.curriculum-week-done{margin:10px 0 0;text-align:center;font-weight:700;color:var(--ink-soft)}.curriculum-tip{margin:8px 0 0;font-size:12.5px;line-height:1.3;color:var(--ink-soft)}.curriculum-games{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.curriculum-play-label{font-size:12.5px;font-weight:600;color:var(--ink-soft)}.curriculum-game-chip{min-height:44px;min-width:44px;padding:7px 13px;border-radius:999px;background:var(--ui-accent);border:none;color:#fff;font-size:13px;font-weight:700;box-shadow:var(--shadow)}.curriculum-game-chip:active{transform:scale(.96)}.p-stepper{align-items:center;gap:12px}.p-stepper-val{min-width:96px;text-align:center;font-weight:700;color:var(--ink)}.p-stepper-block+.p-stepper-block{margin-top:8px}.p-stepper-caption{margin:2px 0 0;text-align:center;font-size:.85em}.bring-screen{gap:12px}.bring-top{text-align:center}.bring-title{margin:0 0 6px;font-size:24px;font-weight:700}.bring-intro{max-width:32ch;margin:0 auto}.bring-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;display:flex;flex-direction:column;gap:14px;width:min(420px,92vw);margin:0 auto;padding-bottom:8px}.bring-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.bring-card h2{margin:0 0 8px;font-size:18px;font-weight:700}.bring-player{margin:10px 0;padding:12px;border-radius:var(--radius-sm);background:#2b26220a;border:1px solid var(--line)}.bring-player-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.bring-footer{justify-content:center}.picker-screen{align-items:center;justify-content:center;gap:26px}.picker-title{font-size:28px;font-weight:700;margin:0;color:var(--ink)}.picker-list{display:flex;flex-direction:column;gap:14px;width:100%;max-width:340px;max-height:60dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px}.picker-btn{display:flex;align-items:center;gap:14px;min-height:84px;padding:0 20px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .12s ease}.picker-btn:active{transform:scale(.96)}.picker-emoji{font-size:40px;line-height:1}.picker-name{flex:1;text-align:left;font-size:24px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-level{font-size:15px;font-weight:700;color:var(--ink-soft)}.lang-switch{display:flex;gap:6px}.lang-flag{display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;border:none}.lang-flag-face{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;line-height:1;background:var(--card);border:2px solid var(--line);opacity:.5;transition:transform .12s ease,opacity .12s ease}.lang-switch-sm{gap:0}.lang-switch-sm .lang-flag{width:44px;height:44px}.lang-switch-sm .lang-flag-face{width:38px;height:38px;font-size:20px}.lang-switch-md .lang-flag,.lang-switch-md .lang-flag-face{width:52px;height:52px}.lang-switch-md .lang-flag-face{font-size:26px;box-shadow:var(--shadow)}.lang-flag-active .lang-flag-face{opacity:1;border-color:var(--ui-accent);transform:scale(1.06)}.lang-flag:active .lang-flag-face{transform:scale(.92)}.lang-fresh-toast{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:60;max-width:min(420px,calc(100vw - 32px));padding:10px 16px;border-radius:var(--radius-sm, 14px);background:var(--card, #fff);border:2px solid var(--ui-accent);box-shadow:var(--shadow, 0 4px 14px rgba(0, 0, 0, .12));color:var(--ink, #333);font-size:14px;font-weight:600;line-height:1.35;text-align:center;pointer-events:none;animation:lang-fresh-in .25s ease}@keyframes lang-fresh-in{0%{opacity:0;transform:translate(-50%) translateY(-6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.settings-btn{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;border-radius:50%;color:var(--ink-soft);opacity:.7;transition:transform .15s ease}.settings-btn:active{transform:scale(.92)}.daily-mission-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:center;margin:0 0 18px}.daily-mission{display:inline-flex;align-items:center;gap:10px;margin:0;padding:7px 16px;min-height:44px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);cursor:pointer;transition:transform .12s ease}.daily-mission:active{transform:scale(.97)}.mission-count{font-size:13px;font-weight:800;color:var(--ink-soft)}.mission-pop{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:30;width:max-content;max-width:min(320px,86vw);padding:12px 16px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:0 6px 24px #2b262229;text-align:center;animation:mission-pop-in .22s ease}.mission-pop:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:var(--card);border-top:1px solid var(--line);border-left:1px solid var(--line)}.mission-pop-what{margin:0;font-size:15px;font-weight:700;color:var(--ink);line-height:1.35}.mission-pop-progress{margin:6px 0 0;font-size:14px;font-weight:700;color:var(--ui-accent-deep)}@keyframes mission-pop-in{0%{opacity:0;transform:translate(-50%) translateY(-4px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.mission-pop{animation:none}}.mission-emoji{font-size:16px;line-height:1;animation:mission-emoji-pop .45s ease}@keyframes mission-emoji-pop{0%{transform:scale(.4) rotate(-12deg);opacity:0}60%{transform:scale(1.15) rotate(6deg)}to{transform:scale(1) rotate(0);opacity:1}}.mission-title{font-size:13px;font-weight:700;color:var(--ink-soft)}.mission-dots{display:inline-flex;gap:6px}.mission-dot{width:14px;height:14px;border-radius:999px;background:var(--line);transition:transform .2s ease,background .2s ease}.mission-dot-on{background:#f5b301;transform:scale(1.08);box-shadow:0 0 0 2px #f5b30133}.mission-complete{background:#fff7e0;border-color:#f5b301;animation:mission-pop .4s ease}.mission-complete .mission-title{color:#b07a00}@keyframes mission-pop{0%{transform:scale(.92)}60%{transform:scale(1.05)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.mission-complete,.mission-emoji{animation:none}}.welcome-back{display:flex;align-items:center;gap:8px;max-width:340px;margin:0 0 12px;padding:10px 16px;border-radius:18px;background:#fff7e0;border:1px solid #f5b301;box-shadow:0 2px 10px #f5b30133;animation:welcome-back-in .45s ease backwards}.welcome-back-suns{font-size:18px;line-height:1;flex:0 0 auto}.welcome-back-text{font-size:14px;font-weight:700;color:#8a5a00;text-align:left;overflow-wrap:anywhere}.welcome-back-week{background:linear-gradient(100deg,#fff3d6,#ffe9f3 55%,#e9f4ff);border-color:#f2960a;box-shadow:0 3px 16px #f5b3014d;animation:welcome-back-in .45s ease backwards,welcome-back-week-glow 2.4s ease-in-out .45s infinite}.welcome-back-week .welcome-back-suns{font-size:20px}@keyframes welcome-back-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes welcome-back-week-glow{0%,to{box-shadow:0 3px 16px #f5b3014d}50%{box-shadow:0 3px 22px #f2960a66}}@media(prefers-reduced-motion:reduce){.welcome-back,.welcome-back-week{animation:none}}.screen.subjects-screen{align-items:center;justify-content:flex-start;gap:6px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-top:calc(var(--safe-top) + 20px);padding-bottom:calc(var(--safe-bottom) + 32px)}.subjects-screen::-webkit-scrollbar{display:none}.subjects-grid-wrap{margin:auto 0;width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.subjects-greeting{font-size:clamp(26px,7vw,34px);font-weight:700;margin:0;text-align:center}.subjects-title{font-size:clamp(18px,5vw,22px);font-weight:600;color:var(--ink-soft);margin:0 0 14px;text-align:center}.subjects-grid{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:14px;width:100%;max-width:340px}.subject-card{position:relative;aspect-ratio:1;border-radius:26px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,border-color .12s ease}.subject-locked .subject-emoji,.subject-locked .subject-label{opacity:.55}.subject-lock{position:absolute;top:8px;right:10px;font-size:16px;line-height:1}.subject-card:active{transform:scale(.95);border-color:var(--ui-accent)}.subject-emoji{font-size:48px;line-height:1}.subject-label{font-size:20px;font-weight:700;color:var(--ink)}.subjects-top{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:40px;flex:0 0 auto}.egg-widget{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 18px;box-shadow:var(--shadow);min-width:220px}.egg-emoji{font-size:42px;line-height:1}.egg-wobbling{animation:egg-idle-wobble 1.6s ease-in-out infinite;transform-origin:50% 90%}.egg-meter{flex:1;display:flex;flex-direction:column;gap:5px}.egg-bar{height:12px;border-radius:999px;background:#2b262214;overflow:hidden}.egg-bar-fill{height:100%;border-radius:999px;background:var(--sun);transition:width .7s cubic-bezier(.3,.7,.3,1)}.egg-label{font-weight:600;font-size:15px;color:var(--ink-soft)}.egg-ready .egg-label{color:var(--ui-accent);font-weight:700}@keyframes egg-idle-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}.streak-suns{display:inline-flex;align-items:center;gap:2px;font-size:20px;min-height:28px}.streak-sun{animation:sun-pop .4s ease backwards}.streak-count{font-size:15px;font-weight:700;color:var(--ink-soft);margin-left:4px}@keyframes sun-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}to{transform:scale(1)}}.streak-shield{font-size:16px;margin-left:4px}.home-hint{width:100%;max-width:320px;margin:4px auto 14px;padding:14px 16px;border-radius:18px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);animation:home-hint-in .4s ease}.home-hint-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.home-hint-row{display:flex;align-items:center;gap:12px}.home-hint-emoji{font-size:26px;line-height:1;flex:0 0 auto}.home-hint-text{font-size:15px;font-weight:600;color:var(--ink)}.home-hint-dismiss{margin:14px auto 0;display:block;padding:8px 22px;min-height:44px;border:none;border-radius:999px;background:#f5b301;color:#5a3d00;font-size:15px;font-weight:800;cursor:pointer;box-shadow:var(--shadow)}@keyframes home-hint-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.home-hint{animation:none}}.coach-mark{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:22}.coach-mark-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:999px;border:3px solid var(--ui-accent);animation:coach-ring-pulse 1.7s ease-in-out infinite}@keyframes coach-ring-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.08);opacity:.3}}@media(prefers-reduced-motion:reduce){.coach-mark-ring{animation:none}}.coach-mark-pop{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%);pointer-events:auto;z-index:23;width:max-content;max-width:min(272px,82vw);padding:12px 16px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:0 6px 24px #2b26222e;text-align:center;animation:coach-pop-in .22s ease}.coach-mark-pop:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:var(--card);border-top:1px solid var(--line);border-left:1px solid var(--line)}.coach-mark-pop-bottom-end{left:auto;right:-8px;transform:none;animation-name:coach-pop-in-end}.coach-mark-pop-bottom-end:before{left:auto;right:20px;transform:rotate(45deg)}.coach-mark-pop-top{top:auto;bottom:calc(100% + 14px);animation-name:coach-pop-in-top}.coach-mark-pop-top:before{top:auto;bottom:-6px;border-top:none;border-left:none;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.coach-mark-pop-top-end{top:auto;left:auto;right:-8px;bottom:calc(100% + 14px);transform:none;animation-name:coach-pop-in-top-end}.coach-mark-pop-top-end:before{top:auto;left:auto;right:20px;bottom:-6px;transform:rotate(45deg);border-top:none;border-left:none;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}@keyframes coach-pop-in{0%{opacity:0;transform:translate(-50%) translateY(-4px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes coach-pop-in-top{0%{opacity:0;transform:translate(-50%) translateY(4px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes coach-pop-in-end{0%{opacity:0;transform:translateY(-4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coach-pop-in-top-end{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.coach-mark-pop{animation:none}}.coach-mark-text{margin:0;font-size:15px;font-weight:700;color:var(--ink);line-height:1.35}.coach-mark-gotit{margin:10px auto 0;display:block;padding:7px 20px;min-height:44px;border:none;border-radius:999px;background:var(--ui-accent);color:#fff;font-size:14px;font-weight:800;cursor:pointer;box-shadow:var(--shadow)}.coach-mark-gotit:active{transform:scale(.96)}.playing-strip{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:10px}.playing-chip{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:5px 14px 5px 6px;border:1.5px solid var(--line-strong);border-radius:999px;background:var(--card);box-shadow:var(--shadow-soft);font-family:inherit;font-size:1rem;font-weight:700;color:var(--ink);cursor:pointer;transition:transform .15s ease}.playing-chip:active{transform:scale(.96)}.playing-chip-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:1.15rem;line-height:1}.playing-chip-who .playing-chip-icon{background:var(--bg-bottom)}.playing-chip-label{max-width:11ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playing-chip-caret{font-size:.7rem;color:var(--ink-soft);opacity:.7}@media(max-height:700px){.playing-strip{margin-top:4px}}@media(prefers-reduced-motion:reduce){.playing-chip{transition:none}.playing-chip:active{transform:none}}.home-screen{align-items:center;justify-content:flex-start}.home-screen>*{flex-shrink:0}.home-top{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:var(--top-chrome-h, 56px)}.home-top-left{display:flex;align-items:center;gap:8px;min-width:0}.home-top-right{display:flex;align-items:center;gap:8px;margin-left:auto}.app-chip{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--app-accent, var(--coral)) 14%,var(--card));border:1px solid color-mix(in srgb,var(--app-accent, var(--coral)) 30%,transparent);box-shadow:var(--shadow);font-size:14px;font-weight:700;color:var(--app-accent-deep, var(--coral-deep));white-space:nowrap}.app-chip-glyph{font-size:16px;line-height:1}@media(max-width:479px){.app-chip-name{display:none}.app-chip{padding:4px 8px}.land-badge-name{display:none}.land-badge-face{padding:4px 8px}.land-badge.land-badge-peek .land-badge-name{display:block;position:absolute;top:calc(100% + 6px);right:0;max-width:70vw;padding:4px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);animation:land-badge-pop-peek .4s ease}}.land-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;background:none;border:none;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}.land-badge-face{position:relative;display:inline-flex;align-items:center;gap:5px;max-width:38vw;padding:4px 10px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);animation:land-badge-pop .4s ease}.land-badge-peek{z-index:5}@keyframes land-badge-pop-peek{0%{transform:scale(.86)}60%{transform:scale(1.06)}to{transform:scale(1)}}.land-badge-emoji{font-size:17px;line-height:1}.land-badge-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes land-badge-pop{0%{transform:scale(.86)}60%{transform:scale(1.06)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.land-badge-face,.land-badge.land-badge-peek .land-badge-name{animation:none}}.home-greeting{font-size:clamp(28px,8.5vw,36px);font-weight:700;margin:4px 0 0;text-align:center}.home-streak{display:flex;flex-direction:column;align-items:center;gap:2px;margin:8px 0 0;animation:home-streak-pop .4s ease}.home-streak-count{font-size:clamp(17px,5vw,20px);font-weight:800;color:var(--ui-accent-deep)}.home-streak-cta{font-size:14px;font-weight:600;color:var(--ink-soft)}@keyframes home-streak-pop{0%{transform:scale(.9);opacity:0}60%{transform:scale(1.04)}to{transform:scale(1);opacity:1}}.last-round-note{margin:8px 0 0;padding:6px 16px;border-radius:999px;background:color-mix(in srgb,var(--ink) 5%,var(--card));color:var(--ink-soft);font-size:15px;font-weight:600}.tier-milestone{margin:8px 0 0;padding:6px 16px;border-radius:999px;background:color-mix(in srgb,var(--ui-accent) 12%,var(--card));color:var(--ui-accent-deep);font-size:15px;font-weight:700;text-align:center;animation:tier-milestone-pop .4s ease}.tier-milestone-ready{background:var(--ui-accent);color:#fff}@keyframes tier-milestone-pop{0%{transform:scale(.9);opacity:0}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.tier-milestone{animation:none}}.level-badge{position:relative;display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow);padding:8px 18px;min-width:min(232px,100%);width:100%;max-width:420px;margin-top:16px}.pill-caption{font-size:9px;font-weight:800;letter-spacing:.06em;color:var(--ink-soft);opacity:.65;line-height:1.2}.home-tour-anchor{position:relative;display:inline-flex}.level-emoji{font-size:32px;animation:badge-shine-bob 2.6s ease-in-out infinite}.exam-offer{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid color-mix(in srgb,var(--ui-accent) 28%,transparent);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:10px 14px;min-width:min(232px,100%);width:100%;max-width:420px;margin-top:10px;animation:tier-milestone-pop .4s ease}.exam-offer-emoji{font-size:26px;flex-shrink:0}.exam-offer-copy{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.exam-offer-title{font-weight:800;font-size:14px;color:var(--ink)}.exam-offer-body{font-size:12px;color:var(--ink-soft);line-height:1.3}.exam-offer-btn{flex-shrink:0;border:none;border-radius:999px;padding:0 16px;min-height:44px;font-size:13px;font-weight:800;font-family:inherit;color:#fff;background:var(--ui-accent);cursor:pointer}.exam-offer-btn:active{transform:scale(.96);background:var(--ui-accent-deep)}@media(prefers-reduced-motion:reduce){.exam-offer{animation:none}}.level-meta{flex:1;display:flex;flex-direction:column;gap:4px}.level-title{font-weight:600;font-size:16px}.level-progress{display:flex;align-items:center;gap:8px}.level-bar{flex:1;height:8px;border-radius:999px;background:#2b262214;overflow:hidden}.level-next-emoji{font-size:19px;line-height:1;opacity:.5}.level-bar-fill{height:100%;background:var(--ui-accent);border-radius:999px;transition:width .6s ease}.level-number{font-weight:700;font-size:14px;color:var(--ink-soft)}.play-btn{flex:none;width:clamp(140px,26vh,260px);height:auto;aspect-ratio:1;border-radius:50%;background:var(--ui-accent);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;animation:breathe 2.5s ease-in-out infinite;transition:transform .12s ease;margin:auto 0}@media(max-height:700px){.play-btn{width:clamp(120px,20vh,150px)}}.play-btn svg{margin-left:8px}.play-btn:active{transform:scale(.94);animation:none;background:var(--ui-accent-deep)}.home-bottom{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:22px}.home-face{height:104px;width:auto;align-self:flex-end;cursor:pointer;animation:home-face-sway 3.4s ease-in-out infinite}.home-face-cheer{animation:home-face-hop .5s ease-out}@keyframes home-face-sway{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes home-face-hop{0%{transform:translateY(0)}40%{transform:translateY(-12px) scale(1.04)}to{transform:translateY(0)}}@media(min-width:720px){.home-face{height:clamp(160px,22vh,240px)}}@media(max-height:640px){.home-face{height:84px}}@media(prefers-reduced-motion:reduce){.home-face,.home-face-cheer{animation:none}}.reserve-btn,.trophy-btn{width:76px;height:76px;border-radius:50%;font-size:38px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease}.reserve-btn:active,.trophy-btn:active{transform:scale(.94)}@keyframes badge-shine-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.home-buddy{position:relative;display:flex;align-items:center;gap:8px;margin:6px auto 0;padding:4px 12px;border-radius:999px;background:#ffffffb8;box-shadow:0 1px 4px #3c2a1414;max-width:min(92vw,380px);flex-wrap:wrap;justify-content:center}.home-buddy-face{display:inline-flex;align-items:center;gap:8px;padding:0;border:none;background:none;font-family:inherit;cursor:pointer}.home-buddy-emoji{font-size:26px;line-height:1}.home-buddy-meta{display:flex;flex-direction:column;gap:2px;min-width:72px}.home-buddy-name{font-size:14px;font-weight:800;color:var(--ink);white-space:nowrap}.home-buddy-bar{width:100%;height:6px;border-radius:999px;background:#3c2a141f;overflow:hidden}.home-buddy-bar-fill{height:100%;border-radius:999px;background:var(--leaf, #58a55c);transition:width .4s ease}.home-buddy-loves{font-size:15px;font-weight:700;color:var(--ink-soft);white-space:nowrap}.home-boost-btn{display:inline-flex;align-items:center;border:none;border-radius:999px;padding:6px 14px;min-height:44px;font-size:13px;font-weight:800;font-family:inherit;color:#7a5a00;background:#ffc10747;cursor:pointer}.home-boost-btn:active{transform:scale(.96)}.home-boost-ready{font-size:13px;font-weight:700;color:var(--gold-deep, #8a6300)}.home-buddy-peek{position:absolute;top:calc(100% + 6px);left:50%;z-index:5;max-width:80vw;padding:4px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;transform:translate(-50%);animation:home-buddy-peek-in .4s ease}@keyframes home-buddy-peek-in{0%{opacity:0;transform:translate(-50%) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.home-buddy-peek{animation:none}}@media(min-height:800px){.play-btn,.ws-home-play-wrap{margin:clamp(24px,5vh,72px) 0 auto}}@media(max-height:640px){.screen.home-screen{overflow-y:auto}.home-buddy{margin-top:4px;padding:2px 10px}.home-buddy-emoji{font-size:20px}}.roundend-screen{align-items:center;justify-content:space-evenly;text-align:center}body .screen.roundend-screen{background-image:linear-gradient(to bottom,#fffdf89e,#fffdf857 42%,#fffdf880),url(/writing/assets/habitat-home-1024-CYA_cB7Y.webp);background-size:cover;background-position:center 38%;background-repeat:no-repeat}@media(min-width:1921px){body .screen.roundend-screen{background-image:linear-gradient(to bottom,#fffdf89e,#fffdf857 42%,#fffdf880),url(/writing/assets/habitat-2048-5gq4K1DU.webp)}}.roundend-content{display:flex;flex-direction:column;align-items:center;width:100%;gap:clamp(10px,2vh,20px);margin-block:auto}.roundend-content>*{flex-shrink:0}.roundend-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.roundend-title{font-size:clamp(26px,8vw,34px);font-weight:700;margin:0}.roundend-exam-result{margin:2px 0 0;padding:8px 20px;border-radius:999px;font-size:clamp(15px,4.5vw,18px);font-weight:800;text-align:center;animation:roundend-streak-pop .45s ease}.roundend-exam-result.exam-passed{background:#ffc83d38;color:#8a6300}.roundend-exam-result.exam-failed{background:#ff7a5924;color:var(--coral-deep, var(--coral))}.roundend-streak-milestone{margin:2px 0 0;padding:7px 18px;border-radius:999px;background:color-mix(in srgb,var(--ui-accent) 14%,var(--card));color:var(--ui-accent-deep);font-size:clamp(15px,4.5vw,18px);font-weight:800;text-align:center;animation:roundend-streak-pop .45s ease}@keyframes roundend-streak-pop{0%{transform:scale(.85);opacity:0}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}.roundend-mission-done{margin:2px 0 0;padding:7px 18px;border-radius:999px;background:#ffc10729;color:var(--gold-deep, #8a6300);font-size:clamp(15px,4.5vw,18px);font-weight:800;text-align:center;animation:roundend-streak-pop .45s ease}.roundend-nudge{display:flex;flex-direction:column;align-items:center;gap:4px;margin:2px 0 -8px;animation:banner-pop .35s ease backwards}.nudge-line{font-size:clamp(14px,4vw,17px);font-weight:700;text-align:center}.nudge-egg{color:var(--ui-accent-deep)}.nudge-mission{color:var(--ink-soft)}.again-btn.again-btn-nudge{animation:again-nudge-pulse 1.4s ease-in-out infinite}@keyframes again-nudge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.roundend-tally{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow);padding:10px 26px}.tally-star{font-size:42px}.tally-count{font-size:38px;font-weight:700}.tally-bonuses{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;min-height:36px;align-items:center}.bonus-chip{background:var(--card);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow);padding:7px 16px;font-size:16px;font-weight:700;color:var(--ink-soft);animation:banner-pop .35s ease backwards}.double-chip{color:#fff;background:var(--ui-accent);border-color:transparent}.comeback-chip{color:#fff;background:var(--leaf);border-color:transparent}.mastered-chips{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:calc(var(--chip-rows, 0) * 45px - 8px)}.star-chip{background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-color:transparent;box-shadow:0 0 0 2px #f5c518;color:var(--ink)}.star-chip-word{font-family:var(--font-reading);font-size:18px}.ceremony-banner{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 30px;font-size:22px;font-weight:700;animation:banner-pop .45s ease backwards}.land-banner{border-color:transparent;box-shadow:0 0 0 3px var(--leaf)}.level-banner{border-color:transparent;box-shadow:0 0 0 3px var(--sun)}.ceremony-emoji{font-size:52px}.ceremony-sub{font-size:16px;font-weight:600;color:var(--ink-soft)}.ceremony-go{max-width:240px;font-size:14px;font-weight:600;line-height:1.3;color:var(--ink-soft);text-align:center}.roundend-actions{display:flex;align-items:center;gap:22px;opacity:0;pointer-events:none;transition:opacity .3s ease}.actions-show{opacity:1;pointer-events:auto}.again-btn{width:116px;height:116px;border-radius:50%;background:var(--ui-accent);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;animation:breathe 2.5s ease-in-out infinite;transition:transform .12s ease}.again-btn svg{margin-left:6px}.again-btn:active{transform:scale(.94);animation:none;background:var(--ui-accent-deep)}.home-btn{width:76px;height:76px;border-radius:50%;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease}.home-btn:active{transform:scale(.94)}.levelup-hero{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#fffdf8eb;pointer-events:none;animation:banner-pop .45s ease}.hero-emoji{font-size:clamp(96px,30vw,140px);line-height:1.15;animation:hero-bounce .9s cubic-bezier(.34,1.56,.64,1)}.hero-title{font-size:clamp(30px,9vw,40px);font-weight:700}.hero-sub{font-size:18px;font-weight:600;color:var(--ink-soft)}@keyframes hero-bounce{0%{transform:scale(.3)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes banner-pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1)}}.reserve-cheer{position:fixed;left:0;right:0;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:clamp(32px,10%,96px);pointer-events:none;z-index:1}.cheer-animal{font-size:52px;line-height:1;transform:translateY(0);animation:cheer-peek .6s cubic-bezier(.34,1.56,.64,1) backwards,cheer-bounce 1.4s ease-in-out .8s infinite}@keyframes cheer-peek{0%{transform:translateY(130%)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.cheer-animal{transform:translateY(0);animation:none}}@keyframes cheer-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-14%)}}.roundend-buddy-evolved{margin:2px 0 0;padding:7px 18px;border-radius:999px;background:#58a55c29;color:var(--leaf-deep, #2f7d33);font-size:clamp(15px,4.5vw,18px);font-weight:800;text-align:center;animation:roundend-streak-pop .45s ease}.roundend-buddy-skill{display:block;margin-top:3px;font-size:clamp(12px,3.6vw,14px);font-weight:700;opacity:.85}.roundend-egg-anchor{position:relative;display:inline-flex}.roundend-boost-chip{margin:2px 0 0;padding:7px 18px;border-radius:999px;background:#ff980029;color:#b25f00;font-size:clamp(15px,4.5vw,18px);font-weight:800;text-align:center;animation:roundend-streak-pop .45s ease}.hatch-screen{align-items:center;justify-content:space-evenly;text-align:center}.hatch-egg{font-size:130px;line-height:1.2;transform-origin:50% 90%}.egg-wobble-hard{animation:egg-hard-wobble .65s ease-in-out 3}.egg-cracking{animation:egg-crack-pop .5s ease}.hatch-reveal{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px}.hatch-animal{font-size:130px;line-height:1.2;animation:animal-pop .55s cubic-bezier(.2,1.4,.4,1) backwards}.hatch-banner{display:flex;flex-direction:column;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 34px;animation:banner-pop .45s ease .25s backwards}.hatch-shiny .hatch-banner{background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-color:transparent;box-shadow:0 0 0 4px #f5c518}.hatch-album{display:flex;flex-direction:column;gap:2px;align-items:center;background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-radius:var(--radius);box-shadow:0 0 0 2px #f5c518;padding:10px 22px;margin-top:12px;animation:banner-pop .45s ease .55s backwards}.hatch-album-title{font-size:18px;font-weight:800;color:#7a5a00}.hatch-album-bonus{font-size:15px;font-weight:700;color:#7a5a00}.hatch-name{font-family:var(--font-reading);font-size:32px;font-weight:700;text-transform:none}.hatch-species{font-family:var(--font-reading);font-size:19px;font-weight:400;color:var(--ink-soft);text-transform:lowercase}.hatch-name-species{font-size:19px;font-weight:400;color:var(--ink-soft);text-transform:lowercase}.shiny-sparkles{position:absolute;top:-18px;font-size:28px;letter-spacing:18px;animation:sparkle-twinkle 1.1s ease-in-out infinite}.hatch-actions{display:flex;align-items:center;gap:22px;opacity:0;pointer-events:none;transition:opacity .3s ease}.hatch-actions.actions-show{opacity:1;pointer-events:auto}@keyframes egg-hard-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg)}75%{transform:rotate(14deg)}}@keyframes egg-crack-pop{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes animal-pop{0%{transform:scale(0) rotate(-20deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes sparkle-twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.15)}}.reserve-screen{gap:12px}.reserve-top{display:flex;align-items:center;justify-content:space-between;min-height:56px}.reserve-back{width:56px;height:56px;border-radius:50%;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease}.reserve-back:active{transform:scale(.94)}.reserve-title{font-size:26px;font-weight:700;margin:0}.reserve-count{min-width:56px;text-align:right;font-weight:600;color:var(--ink-soft);font-size:15px}.reserve-tabs{display:flex;gap:8px;justify-content:center}@media(max-width:359px){.reserve-tabs{gap:3px}.reserve-tab{min-width:44px}}.reserve-tab{position:relative;flex:1;max-width:72px;min-height:56px;border-radius:var(--radius-sm);background:#fff9;border:1px solid var(--line);font-size:26px;transition:transform .12s ease}.tab-star{position:absolute;top:1px;right:3px;font-size:13px;line-height:1}.reserve-tab:active{transform:scale(.95)}.tab-active{background:var(--card);border-color:transparent;box-shadow:0 0 0 2px var(--ui-accent)}.tab-locked{opacity:.5}.reserve-grid-wrap{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;border-radius:var(--radius)}.reserve-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-bottom:12px}.reserve-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);min-height:104px;padding:10px 4px;animation:choice-pop .3s ease backwards}.card-collected:active{transform:scale(.95)}.card-emoji{font-size:44px;line-height:1.1}.card-name{font-family:var(--font-reading);font-size:17px;font-weight:700;text-transform:none}.card-species{font-family:var(--font-reading);font-size:13px;font-weight:600;text-transform:none;color:var(--ink-soft);line-height:1.15}.card-unknown{background:#ffffff80;box-shadow:none}.card-silhouette{font-size:44px;line-height:1.1;filter:grayscale(1) brightness(0);opacity:.12}.card-q{position:absolute;font-size:24px;bottom:10px;opacity:.7}.card-shiny{background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-color:transparent;box-shadow:0 0 0 2px #f5c518}.card-spark{position:absolute;top:6px;right:8px;font-size:16px;animation:sparkle-twinkle 1.1s ease-in-out infinite}.album-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;padding:2px 4px 8px}.album-zone{font-size:17px;font-weight:800}.album-counts{display:flex;gap:12px;flex-wrap:wrap}.album-count{font-size:14px;font-weight:700;color:var(--ink-soft);white-space:nowrap}.habitat{position:relative;height:118px;border-radius:var(--radius-sm);border:1px solid var(--line);overflow:hidden;margin-bottom:10px;pointer-events:none;animation:choice-pop .3s ease backwards}.habitat-z1{background:linear-gradient(180deg,#cfe9ff,#e8f6d8 55%,#bfe3a0)}.habitat-z2{background:linear-gradient(180deg,#d7ecdc,#cfe6c4 55%,#9fc98b)}.habitat-z3{background:linear-gradient(180deg,#d8efff,#c8e9f7 55%,#9fd4ea)}.habitat-z4{background:linear-gradient(180deg,#ffe9c4,#ffe0ae 55%,#ecc077)}.habitat-z5{background:linear-gradient(180deg,#d3f0d8,#b8e6c0 55%,#86cf96)}.habitat-t0{filter:saturate(.45)}.habitat-t1{filter:saturate(.65)}.habitat-t2{filter:saturate(.85)}.habitat-t4{box-shadow:inset 0 0 24px #ffc83d59}.habitat-gold{border-color:transparent;box-shadow:0 0 0 2px #f5c518,inset 0 0 24px #f5c51847}.habitat-decor{position:absolute;font-size:18px;line-height:1;transform:translate(-50%)}.habitat-animal{position:absolute;font-size:24px;line-height:1;transform:translate(-50%)}.habitat-missing{filter:grayscale(1) brightness(0);opacity:.14}.tab-gold{background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-color:transparent;box-shadow:0 0 0 2px #f5c518}.reserve-tab.tab-active.tab-gold{box-shadow:0 0 0 2px var(--ui-accent),0 0 0 4px #f5c518}.banner-gold{background:linear-gradient(135deg,#fff7d6,#ffe9a3);color:#7a5a00}.zone-complete-banner{text-align:center;font-size:15px;font-weight:700;color:var(--ink-soft);background:#ffc83d2e;border-radius:var(--radius-sm);padding:7px 12px;margin-bottom:10px;animation:reserve-banner-pop .3s ease backwards}@keyframes reserve-banner-pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1)}}.word-card{background:linear-gradient(135deg,#fff7d6,#ffe9a3);border-color:transparent;box-shadow:0 0 0 2px #f5c518}.word-card:active{transform:scale(.95)}.word-card-emoji{font-size:20px;line-height:1.1}.word-card-text{font-family:var(--font-reading);font-size:28px;font-weight:700}.star-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.star-empty-emoji{font-size:64px;line-height:1.1}.star-empty-text{font-size:18px;font-weight:600;color:var(--ink-soft);max-width:240px;margin:0}.reserve-locked-msg{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.locked-emoji{font-size:64px}.locked-hint{max-width:260px;padding:0 16px;font-size:18px;font-weight:700;line-height:1.35;color:var(--ink-soft);text-align:center}.reserve-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#2b262273;display:flex;align-items:center;justify-content:center}.reserve-modal--explaining{align-items:flex-start;padding-top:calc(var(--top-chrome-bottom, 76px) + 52px)}.reserve-modal--explaining .reserve-modal-card{padding:16px 22px 18px;gap:4px}.reserve-modal--explaining .modal-emoji{font-size:clamp(68px,20vw,84px)}.reserve-modal--explaining .modal-name{font-size:26px}.reserve-modal--explaining .modal-buddy-btn,.reserve-modal--explaining .modal-buddy-set,.reserve-modal--explaining .modal-explain-btn,.reserve-modal--explaining .modal-care,.reserve-modal--explaining .modal-stages-hint{display:none}.reserve-modal-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 28px 26px;max-width:min(92vw,380px);box-sizing:border-box;animation:reserve-banner-pop .35s ease}.modal-emoji{font-size:clamp(132px,46vw,176px);line-height:1.06}.modal-name{font-family:var(--font-reading);font-size:30px;font-weight:700;line-height:1.15}.modal-caption{display:flex;align-items:baseline;justify-content:center;gap:10px}.modal-species{font-family:var(--font-reading);font-size:18px;font-weight:400;color:var(--ink-soft);text-transform:none}.modal-stages-hint{max-width:230px;margin-top:2px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--bg-bottom);font-size:14px;font-weight:600;line-height:1.35;color:var(--ink-soft);text-align:center}.word-modal-card{background:linear-gradient(135deg,#fff7d6,#ffe9a3);box-shadow:0 0 0 3px #f5c518}.modal-word{font-size:44px}.modal-star-label{font-size:16px;font-weight:600;color:var(--ink-soft)}.card-buddy{outline:3px solid rgba(255,193,7,.65);outline-offset:-3px}.card-buddy-badge{position:absolute;top:4px;left:6px;font-size:14px}.card-stage{font-size:10px;letter-spacing:2px;color:var(--leaf, #58a55c);line-height:1}.card-care-bar{display:block;width:80%;height:5px;border-radius:999px;background:#3c2a141f;overflow:hidden;margin-top:2px}.card-care-fill{display:block;height:100%;border-radius:999px;background:var(--leaf, #58a55c)}.modal-stage{font-size:14px;letter-spacing:4px;color:var(--leaf, #58a55c)}.modal-loves{font-size:16px;font-weight:700;line-height:1.3;text-align:center;color:var(--ink-soft)}.modal-care{display:flex;flex-direction:column;align-items:center;width:100%}.modal-care-bar{width:70%;height:7px}.modal-buddy-btn{border:none;border-radius:999px;margin-top:6px;padding:10px 22px;font-size:17px;font-weight:800;font-family:inherit;color:#7a5a00;background:#ffc10759;cursor:pointer;min-height:44px}.modal-buddy-btn:active{transform:scale(.96)}.modal-buddy-set{margin-top:6px;font-size:17px;font-weight:800;color:#7a5a00}.modal-close-btn{position:absolute;top:8px;right:10px;border:none;background:none;font-size:20px;font-weight:700;color:var(--ink-soft);cursor:pointer;padding:6px 10px;min-width:44px;min-height:44px}.modal-explain-btn{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:2px;padding:8px 18px;border:1.5px solid var(--line-strong, rgba(43, 38, 34, .18));border-radius:999px;background:none;font-family:inherit;font-size:15px;font-weight:700;color:var(--ink-soft);cursor:pointer;min-height:44px}.modal-explain-btn:active{transform:scale(.96)}.modal-explain-new{border-color:var(--app-accent, #e8971e);color:var(--app-accent-deep, #c5801a);animation:reserve-explain-pulse 2.2s ease-in-out infinite}@keyframes reserve-explain-pulse{0%,to{box-shadow:0 0 #e8971e00}50%{box-shadow:0 0 0 6px #e8971e38}}@media(prefers-reduced-motion:reduce){.modal-explain-new,.reserve-modal-card{animation:none}.modal-explain-btn:active,.modal-buddy-btn:active{transform:none}}.lb-screen{gap:12px}.lb-top{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:8px}.lb-back{width:56px;height:56px;flex:0 0 auto;border-radius:50%;color:var(--ink-soft);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease}.lb-back:active{transform:scale(.94)}.lb-heading{display:flex;flex-direction:column;align-items:center;min-width:0}.lb-title{font-size:clamp(16px,5.5vw,24px);font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lb-subtitle{font-size:13px;font-weight:600;color:var(--ink-soft)}.lb-top-spacer{flex:0 1 56px;min-width:0}.lb-own-line{margin:0;text-align:center;font-weight:700;color:var(--ui-accent)}.lb-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.lb-tabs::-webkit-scrollbar{display:none}.lb-tab{flex:0 0 auto;min-height:44px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-weight:600;font-size:14px;white-space:nowrap;color:var(--ink-soft)}.lb-tab-active{background:var(--ui-accent);border-color:var(--ui-accent);color:#fff}.lb-checking{margin:0;text-align:center;font-size:13px;color:var(--ink-soft)}.lb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.lb-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);min-height:44px}.lb-rank{flex:0 0 44px;font-weight:700;font-size:18px;text-align:center}.lb-handle{flex:1 1 auto;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-you{flex:0 0 auto;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--ui-accent);color:#fff}.lb-score{flex:0 0 auto;font-weight:700;white-space:nowrap}.lb-row-top-1{background:linear-gradient(90deg,#fff3c9,var(--card));border-color:#f0c95c}.lb-row-top-2{background:linear-gradient(90deg,#eef1f5,var(--card));border-color:#c8d0da}.lb-row-top-3{background:linear-gradient(90deg,#f7e3d3,var(--card));border-color:#dfb08a}.lb-row-own{border-color:var(--ui-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-accent) 30%,transparent)}.lb-gap{text-align:center;color:var(--ink-soft);font-weight:700;line-height:1}.lb-friendly{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:36px 20px;color:var(--ink-soft);font-weight:600}.lb-friendly p{margin:0;max-width:320px}.lb-friendly-emoji{font-size:44px}@media(max-width:359px){.lb-you{display:none}.lb-rank{flex-basis:36px;font-size:16px}.lb-handle{font-size:15px}}.insights-card{display:flex;flex-direction:column;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px 18px}.insights-h{margin:0 0 10px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.insights-h4{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--ink-soft)}.insights-stats{display:flex;flex-wrap:wrap;gap:16px;align-items:baseline}.insights-stat{font-size:16px;color:var(--ink);font-weight:600}.insights-stat-n{font-size:26px;font-weight:800}.insights-streak{color:#d6692f;font-weight:800}.insights-copy{align-self:flex-start;margin-top:12px;font-size:14px;font-weight:700;color:var(--ink);background:var(--bg, #f6f3ec);border:1px solid var(--line);border-radius:999px;padding:8px 16px;transition:transform .12s ease}.insights-copy:active{transform:scale(.95)}.insights-lately,.insights-focus{border-top:1px solid var(--line);padding-top:14px}.insights-lately-list,.insights-focus-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.insights-lately-row,.insights-focus-row{display:flex;align-items:center;gap:10px}.insights-lately-emoji,.insights-focus-emoji{font-size:22px;width:26px;text-align:center}.insights-lately-label,.insights-focus-label{flex:1;font-size:16px;font-weight:700;color:var(--ink)}.insights-lately-acc{font-size:14px;font-weight:800;padding:3px 10px;border-radius:999px}.insights-lately-acc.good{background:#e9fbf1;color:#1f8a52}.insights-lately-acc.ok{background:#fff6e3;color:#946400}.insights-lately-acc.low{background:#ffefec;color:#b23320}.insights-focus-reason{font-size:13px;color:var(--ink-soft)}.insights-nothing{margin:0;font-size:15px;color:var(--ink-soft)}.paywall-screen{display:flex;align-items:center;justify-content:flex-start;padding:1.25rem;overflow-y:auto}.paywall-card{margin-block:auto}.paywall-card{background:#fff;border:1px solid var(--line, #ecdfca);border-radius:24px;box-shadow:0 18px 50px #5036141f;padding:1.8rem 1.6rem;max-width:380px;width:100%;text-align:center}.paywall-emoji{font-size:2.6rem}.paywall-face{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--line, #ecdfca);box-shadow:0 6px 16px #50361426}.paywall-card h1{font-size:1.5rem;margin:.3rem 0 .4rem}.paywall-body{color:var(--muted, #6f6151);margin:0 0 1rem}.paywall-feats{list-style:none;padding:0;margin:0 0 1.3rem;text-align:left;display:grid;gap:.5rem}.paywall-feats li{padding-left:1.6em;position:relative}.paywall-feats li:before{content:"✓";position:absolute;left:0;color:#1f9d72;font-weight:700}.paywall-btn{width:100%;border:0;cursor:pointer;font-weight:700;font-size:1rem;padding:.85em 1em;border-radius:999px;margin-bottom:.6rem}.paywall-btn:disabled{opacity:.4;cursor:default}.paywall-btn[aria-busy=true]{opacity:1;cursor:progress}.paywall-btn-primary{background:#e8762d;color:#fff;box-shadow:0 8px 18px #e8762d4d}.paywall-btn-secondary{background:#fff;color:#33291f;border:2px solid var(--line, #ecdfca)}.paywall-spinner{display:inline-block;width:1em;height:1em;vertical-align:-.15em;margin-right:.5em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:paywall-spin .7s linear infinite}@keyframes paywall-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.paywall-spinner{animation-duration:1.6s}}.paywall-note{font-size:.85rem;color:var(--muted, #6f6151);margin:.2rem 0 0}.paywall-error{color:#c0392b;font-size:.9rem;margin:.6rem 0 0}.paywall-later{background:none;border:0;color:var(--muted, #6f6151);cursor:pointer;margin-top:1rem;font-size:.95rem;text-decoration:underline}.xapp-suggest{display:flex;align-items:center;gap:12px;width:min(320px,100%);min-height:60px;padding:10px 14px;border-radius:18px;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);color:inherit;text-decoration:none;text-align:left;transition:transform .15s ease}.xapp-suggest:active{transform:scale(.97)}.xapp-suggest-glyph{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;font-size:22px}.xapp-suggest-line{font-size:15px;font-weight:600;line-height:1.35}.sleep-screen{align-items:center;justify-content:space-evenly;text-align:center;background:linear-gradient(180deg,var(--dusk-top),var(--dusk-bottom));color:#f4eefa}.sleep-screen:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,var(--dusk-top),var(--dusk-bottom))}.sleep-top{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:56px}.sleep-moon{font-size:38px;animation:badge-shine-bob 3s ease-in-out infinite}.sleep-gear{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:56px;border-radius:50%;color:#f4eefa;opacity:.5;transition:transform .15s ease}.sleep-gear:active{transform:scale(.92)}.sleep-animals{display:flex;align-items:flex-end;gap:12px;font-size:58px}.sleeper{animation:sleeper-breathe 3s ease-in-out infinite}.sleep-zzz{font-size:30px;animation:zzz-float 2.4s ease-in-out infinite}.sleep-text{font-size:26px;font-weight:700;margin:0}.sleep-sub{font-size:20px;font-weight:600;opacity:.8}.sleep-recap{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:320px}.sleep-recap-item{padding:8px 14px;border-radius:999px;background:#ffffff1a;font-size:15px;font-weight:600}.sleep-egg{display:flex;flex-direction:column;align-items:center;gap:10px}.sleep-egg .egg-widget{background:#ffffff1a;border-color:#ffffff14;box-shadow:none}.sleep-egg .egg-label{color:#f4eefa}.sleep-cliff{font-size:18px;font-weight:600;margin:0;color:#ffe9a3}.sleep-stars{font-size:20px;letter-spacing:16px;opacity:.55;animation:sparkle-twinkle 2.2s ease-in-out infinite}.sleep-extend{margin-top:22px;min-height:44px;padding:10px 20px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:14px;opacity:.62;cursor:pointer}.sleep-extend:hover,.sleep-extend:focus-visible{opacity:.85}@keyframes sleeper-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04) translateY(-2px)}}@keyframes zzz-float{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(-12px);opacity:1}}.linkjoin-screen{align-items:center;justify-content:center;text-align:center}.linkjoin-card{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:320px}.linkjoin-emoji{font-size:56px;line-height:1}.linkjoin-msg{font-size:19px;font-weight:700;color:var(--ink);margin:0}.linkjoin-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.linkjoin-btn{min-height:52px;padding:0 26px;border-radius:var(--radius);background:var(--ui-accent);color:#fff;font-size:17px;font-weight:700;box-shadow:var(--shadow)}.linkjoin-btn:active{background:var(--ui-accent-deep)}.linkjoin-btn-soft{background:var(--card);color:var(--ink-soft);box-shadow:none}.play-suite-nav{flex:none;display:flex;align-items:center;gap:8px;justify-content:safe center;padding:calc(var(--safe-top) + 8px) calc(var(--safe-right) + 12px) 8px calc(var(--safe-left) + 12px);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;background:#fffdf8eb;border-bottom:1px solid rgba(43,38,34,.08);scrollbar-width:thin}.psn-chip{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 14px 4px 4px;border-radius:999px;background:var(--card);box-shadow:var(--shadow);color:var(--ink);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.psn-chip:hover{background:#fff}.psn-chip:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}.psn-home{background:var(--ui-accent);color:#fff;box-shadow:0 2px 10px color-mix(in srgb,var(--ui-accent) 35%,transparent)}.psn-home:hover{background:var(--ui-accent-deep)}.psn-glyph{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:18px}.psn-glyph-home{background:#ffffff47}.psn-name{padding-right:2px}@media(prefers-reduced-motion:reduce){.play-suite-nav{scroll-behavior:auto}}.bomani-intro{position:absolute;top:0;right:0;bottom:0;left:0}.bomani-intro-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:transparent;cursor:pointer}.bomani-intro-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:10px;padding:72px 20px 0;pointer-events:none}.bomani-intro-bubble{pointer-events:none;position:relative;max-width:420px;background:var(--card, #fff);border-radius:22px;box-shadow:var(--shadow, 0 6px 18px rgba(0, 0, 0, .12));padding:16px 18px 14px;text-align:center;animation:bomani-intro-bubble-in .36s ease-out both;animation-delay:.18s}.bomani-intro-bubble:after{content:"";position:absolute;left:50%;bottom:-10px;width:20px;height:20px;background:var(--card, #fff);transform:translate(-50%) rotate(45deg);border-radius:4px}.bomani-intro-name{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--ink-soft, #8a7f70);text-transform:uppercase;margin-bottom:4px}.bomani-intro-text{margin:0 0 12px;font-size:18px;line-height:1.4;font-weight:700;color:var(--ink, #3d3428)}.bomani-intro-cta{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:12px 26px;border:none;border-radius:999px;background:var(--app-accent, var(--coral, #ff7b6b));color:#fff;font-size:18px;font-weight:800;cursor:pointer;box-shadow:var(--shadow, 0 4px 12px rgba(0, 0, 0, .15))}.bomani-intro-cta:active{transform:scale(.96)}.bomani-intro-figure{pointer-events:none;width:auto;height:clamp(180px,38vh,340px);margin-bottom:-6px;animation:bomani-intro-figure-in .42s ease-out both,bomani-intro-figure-bob 3.2s ease-in-out .42s infinite}@keyframes bomani-intro-figure-in{0%{transform:translateY(28%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bomani-intro-figure-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes bomani-intro-bubble-in{0%{transform:translateY(10px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.bomani-intro-figure,.bomani-intro-bubble{animation:none}}.ws-mascot-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;justify-content:flex-end;--intro-pad-top: calc(var(--safe-top, 0px) + 16px);--intro-skip-h: 44px;--intro-skip-gap: 6px;padding:var(--intro-pad-top) 16px calc(var(--safe-bottom, 0px) + 16px);overflow:hidden}.ws-mascot-intro-scrim{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to bottom,#3a240e9e,#4a2e1285 62%,#603c1670);cursor:pointer;-webkit-tap-highlight-color:transparent}.ws-mascot-intro--undimmed .ws-mascot-intro-scrim{background:none}.ws-mascot-intro--clear-top{justify-content:flex-end}.ws-mascot-intro--clear-bottom{justify-content:flex-start}.ws-mascot-intro--clear-bottom .ws-mascot-intro-content{justify-content:flex-start;padding-top:calc(var(--top-chrome-bottom) - var(--intro-pad-top) + var(--intro-skip-h) + var(--intro-skip-gap))}.ws-mascot-intro--clear-top .ws-mascot-intro-stage,.ws-mascot-intro--clear-bottom .ws-mascot-intro-stage{height:clamp(150px,26vh,280px)}.ws-mascot-intro-skip{position:absolute;top:var(--top-chrome-bottom, 76px);right:16px;padding:0 16px;border:none;border-radius:var(--radius-pill, 999px);background:#ffffffeb;color:var(--app-accent-deep, #c5801a);font-size:14px;font-weight:800;cursor:pointer;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));-webkit-tap-highlight-color:transparent}.ws-mascot-intro-skip:active{transform:scale(.94)}.ws-mascot-intro-content{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;pointer-events:none}.ws-mascot-intro-bubble-row{display:flex;width:100%}.ws-mascot-intro[data-side=left] .ws-mascot-intro-bubble-row{justify-content:flex-start}.ws-mascot-intro[data-side=right] .ws-mascot-intro-bubble-row{justify-content:flex-end}.ws-mascot-intro-bubble{position:relative;box-sizing:border-box;width:min(320px,calc(100vw - 32px));max-height:100%;display:flex;flex-direction:column;min-height:0;background:var(--card, #fff);border-radius:22px;padding:14px 16px 12px;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));animation:ws-intro-bubble-in .34s cubic-bezier(.22,1.2,.36,1) .1s both}.ws-mascot-intro-bubble:after{content:"";position:absolute;bottom:-7px;width:16px;height:16px;background:var(--card, #fff);transform:rotate(45deg);border-radius:3px}.ws-mascot-intro[data-side=left] .ws-mascot-intro-bubble:after{left:34px}.ws-mascot-intro[data-side=right] .ws-mascot-intro-bubble:after{right:34px}.ws-mascot-intro-name{display:block;margin-bottom:4px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--app-accent-deep, #c5801a)}.ws-mascot-intro-text{margin:0;min-height:0;overflow-y:auto;font-size:17px;font-weight:700;line-height:1.35;color:var(--ink, #2b2622)}.ws-mascot-intro-dots{display:flex;gap:6px;margin-top:10px}.ws-mascot-intro-dot{width:7px;height:7px;border-radius:50%;background:var(--line-strong, rgba(43, 38, 34, .18))}.ws-mascot-intro-dot-active{background:var(--app-accent, #e8971e)}.ws-mascot-intro-stage{position:relative;width:100%;flex:0 1 auto;min-height:0;height:clamp(190px,46vh,420px)}.ws-mascot-intro-slot{position:absolute;bottom:0;height:100%;will-change:transform,opacity}.ws-mascot-intro-slot-left{left:0}.ws-mascot-intro-slot-right{right:0}.ws-mascot-intro-slot[data-active=true]{transform:translate(0);opacity:1;transition:transform .52s cubic-bezier(.2,1.28,.32,1),opacity .26s ease}.ws-mascot-intro-slot[data-character=rafi][data-active=true]{transition:transform .46s cubic-bezier(.18,1.42,.3,1),opacity .22s ease}.ws-mascot-intro-slot[data-character=bomani][data-active=true]{transition:transform .8s cubic-bezier(.42,.04,.24,1),opacity .5s ease}.ws-mascot-intro-slot[data-active=false]{opacity:0;transition:transform .36s cubic-bezier(.55,0,.85,.5),opacity .3s ease}.ws-mascot-intro-slot-left[data-active=false]{transform:translate(calc(-100% - 24px))}.ws-mascot-intro-slot-right[data-active=false]{transform:translate(calc(100% + 24px))}.ws-mascot-intro-figure{display:block;height:100%;width:auto;max-width:62vw;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(43,38,34,.38))}.ws-mascot-intro-slot-left .ws-mascot-intro-figure{height:88%;margin-top:12%}.ws-mascot-intro-figure[data-speaking=true]{animation:ws-intro-figure-bob 1.8s ease-in-out infinite}.ws-mascot-intro-slot[data-character=rafi] .ws-mascot-intro-figure[data-speaking=true]{animation:ws-intro-figure-bob 1.4s ease-in-out infinite}.ws-mascot-intro-slot[data-character=bomani] .ws-mascot-intro-figure[data-speaking=true]{animation:ws-intro-figure-sway 3s ease-in-out infinite}@keyframes ws-intro-bubble-in{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ws-intro-figure-bob{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-6px) rotate(1.6deg)}75%{transform:translateY(-4px) rotate(-1.6deg)}}@keyframes ws-intro-figure-sway{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-2px) rotate(.9deg)}70%{transform:translateY(-2px) rotate(-.9deg)}}@media(prefers-reduced-motion:reduce){.ws-mascot-intro-slot[data-active=true],.ws-mascot-intro-slot[data-active=false],.ws-mascot-intro-slot[data-character=rafi][data-active=true],.ws-mascot-intro-slot[data-character=bomani][data-active=true]{transform:none;transition:opacity .2s ease}.ws-mascot-intro-slot-left[data-active=false],.ws-mascot-intro-slot-right[data-active=false]{transform:none}.ws-mascot-intro-figure[data-speaking=true],.ws-mascot-intro-slot[data-character=rafi] .ws-mascot-intro-figure[data-speaking=true],.ws-mascot-intro-slot[data-character=bomani] .ws-mascot-intro-figure[data-speaking=true]{animation:none}.ws-mascot-intro-bubble{animation:ws-intro-bubble-fade .2s ease both}.ws-mascot-intro-skip:active{transform:none}}@keyframes ws-intro-bubble-fade{0%{opacity:0}to{opacity:1}}.ls-coach-card{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;justify-content:flex-end;padding:calc(var(--safe-top, 0px) + 16px) 16px calc(var(--safe-bottom, 0px) + 16px);overflow:hidden}.ls-coach-card-scrim{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to bottom,#3a240e9e,#4a2e1285 62%,#603c1670);cursor:pointer;-webkit-tap-highlight-color:transparent;animation:ls-coach-scrim-in .22s ease both}.ls-coach-card-content{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;pointer-events:none}.ls-coach-card-bubble-row{display:flex;width:100%}.ls-coach-card[data-side=left] .ls-coach-card-bubble-row{justify-content:flex-start}.ls-coach-card[data-side=right] .ls-coach-card-bubble-row{justify-content:flex-end}.ls-coach-card-bubble{position:relative;box-sizing:border-box;width:min(320px,calc(100vw - 32px));max-height:100%;display:flex;flex-direction:column;min-height:0;background:var(--card, #fff);border-radius:22px;padding:14px 16px 12px;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));animation:ls-coach-bubble-in .34s cubic-bezier(.22,1.2,.36,1) .08s both}.ls-coach-card-bubble:after{content:"";position:absolute;bottom:-7px;width:16px;height:16px;background:var(--card, #fff);transform:rotate(45deg);border-radius:3px}.ls-coach-card[data-side=left] .ls-coach-card-bubble:after{left:34px}.ls-coach-card[data-side=right] .ls-coach-card-bubble:after{right:34px}.ls-coach-card-name{display:block;margin-bottom:4px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--app-accent-deep, #346aac)}.ls-coach-card-text{margin:0;min-height:0;overflow-y:auto;font-size:17px;font-weight:700;line-height:1.35;color:var(--ink, #2b2622)}.ls-coach-card-stage{position:relative;width:100%;flex:0 1 auto;min-height:0;height:clamp(150px,30vh,320px)}.ls-coach-card-slot{position:absolute;bottom:0;height:100%;animation:ls-coach-slot-in .42s cubic-bezier(.2,1.24,.32,1) both}.ls-coach-card-slot-left{left:0}.ls-coach-card-slot-right{right:0}.ls-coach-card-figure{display:block;height:100%;width:auto;max-width:56vw;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(43,38,34,.38))}.ls-coach-card-slot-left .ls-coach-card-figure{height:88%;margin-top:12%}.ls-coach-card-figure[data-speaking=true]{animation:ls-coach-figure-bob 1.6s ease-in-out infinite}.ls-coach-card[data-speaker=bomani] .ls-coach-card-figure[data-speaking=true]{animation:ls-coach-figure-sway 3s ease-in-out infinite}.ls-coach-card-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;pointer-events:auto}.ls-coach-card-btn{min-width:120px;padding:0 22px;border:none;border-radius:var(--radius-pill, 999px);background:var(--app-accent, #3d7dca);color:#fff;font-size:17px;font-weight:800;cursor:pointer;box-shadow:0 4px 0 var(--app-accent-deep, #346aac);-webkit-tap-highlight-color:transparent}.ls-coach-card-btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--app-accent-deep, #346aac)}.ls-coach-card-btn--secondary{background:#ffffffeb;color:var(--app-accent-deep, #346aac);box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07))}.ls-coach-card-btn--secondary:active{transform:scale(.96);box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07))}.round-coach-skip{position:fixed;top:var(--top-chrome-bottom, 76px);right:16px;z-index:25;padding:0 16px;border:none;border-radius:var(--radius-pill, 999px);background:#ffffffeb;color:var(--app-accent-deep, #346aac);font-size:14px;font-weight:800;cursor:pointer;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));-webkit-tap-highlight-color:transparent}.round-coach-skip:active{transform:scale(.94)}@keyframes ls-coach-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes ls-coach-bubble-in{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ls-coach-slot-in{0%{opacity:0;transform:translateY(18%)}to{opacity:1;transform:translateY(0)}}@keyframes ls-coach-figure-bob{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-6px) rotate(1.6deg)}75%{transform:translateY(-4px) rotate(-1.6deg)}}@keyframes ls-coach-figure-sway{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-2px) rotate(.9deg)}70%{transform:translateY(-2px) rotate(-.9deg)}}@media(prefers-reduced-motion:reduce){.ls-coach-card-slot{animation:ls-coach-scrim-in .2s ease both}.ls-coach-card-figure[data-speaking=true],.ls-coach-card[data-speaker=bomani] .ls-coach-card-figure[data-speaking=true]{animation:none}.ls-coach-card-bubble{animation:ls-coach-scrim-in .2s ease both}.ls-coach-card-btn:active,.ls-coach-card-btn--secondary:active,.round-coach-skip:active{transform:none}}.ls-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;overflow:hidden;background:var(--bg-bottom, #fff4e2)}.ls-splash-habitat{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;animation:ls-splash-fade .5s ease both}.ls-splash-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#3a240e6b,#4a2e1280 60%,#603c1694)}.ls-splash-content{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:calc(var(--safe-top, 0px) + 24px) 20px calc(var(--safe-bottom, 0px) + 24px);pointer-events:none;text-align:center}.ls-splash-face{width:auto;height:min(46vmin,320px);object-fit:contain;filter:drop-shadow(0 16px 30px rgba(43,38,34,.45));animation:ls-splash-rise .6s cubic-bezier(.2,1.2,.32,1) both}.ls-splash-title{display:flex;flex-direction:column;align-items:center;gap:2px;margin:6px 0 0;color:#fff;text-shadow:0 2px 12px rgba(43,38,34,.55);animation:ls-splash-fade .5s ease .12s both}.ls-splash-brandmark{font-size:clamp(30px,8vmin,52px);font-weight:900;letter-spacing:-.01em}.ls-splash-brand{font-size:clamp(14px,3.4vmin,20px);font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.86}.ls-splash-subject{font-size:clamp(28px,7.6vmin,48px);font-weight:900;letter-spacing:-.01em}.ls-splash-tagline{margin:0;font-size:clamp(14px,3.6vmin,19px);font-weight:700;color:#fff;opacity:.9;text-shadow:0 2px 10px rgba(43,38,34,.5);animation:ls-splash-fade .5s ease .2s both}.ls-splash-dots{display:flex;gap:7px;margin-top:12px}.ls-splash-dot{width:9px;height:9px;border-radius:50%;background:var(--app-accent, #3d7dca);box-shadow:0 1px 4px #2b262266;animation:ls-splash-pulse 1.1s ease-in-out infinite}.ls-splash-dot:nth-child(2){animation-delay:.16s}.ls-splash-dot:nth-child(3){animation-delay:.32s}.ls-splash-tap{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:none;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent}@keyframes ls-splash-fade{0%{opacity:0}to{opacity:1}}@keyframes ls-splash-rise{0%{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ls-splash-pulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.ls-splash-face{animation:ls-splash-fade .2s ease both}.ls-splash-dot{animation:none;opacity:.7}}src as a localStorage key,and this is a style hook,not a key). */ .rounds-left-note{margin:0 0 10px;text-align:center;font-size:.95rem;font-weight:600;color:var(--ink-soft)}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/writing/assets/quicksand-vietnamese-wght-normal-ei70gACF.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/writing/assets/quicksand-latin-ext-wght-normal-CrJ75Ewg.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/writing/assets/quicksand-latin-wght-normal-Buj9m_3d.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/writing/assets/andika-latin-400-normal-BTFTIZb-.woff2) format("woff2"),url(/writing/assets/andika-latin-400-normal-BK42By1L.woff) format("woff")}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/writing/assets/andika-latin-700-normal-Dk95f5lc.woff2) format("woff2"),url(/writing/assets/andika-latin-700-normal-CAUSQC6x.woff) format("woff")}:root{--bg-top: #fffdf8;--bg-bottom: #fff4e2;--dusk-top: #2d2a55;--dusk-bottom: #5e4380;--ink: #2b2622;--ink-soft: #736b62;--coral: #ff6b57;--coral-deep: #e85843;--leaf: #34c77b;--sun: #ffc83d;--card: #ffffff;--line: rgba(43, 38, 34, .05);--line-strong: rgba(43, 38, 34, .18);--ui-accent: var(--coral);--ui-accent-deep: var(--coral-deep);--radius: 20px;--radius-sm: 14px;--shadow: 0 2px 10px rgba(43, 38, 34, .07);--shadow-soft: 0 2px 10px rgba(43, 38, 34, .07);--font: "Quicksand Variable", ui-rounded, -apple-system, "SF Pro Rounded", sans-serif;--font-reading: "Andika", "Quicksand Variable", ui-rounded, -apple-system, sans-serif;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--top-chrome-h: 56px;--top-chrome-bottom: calc(var(--safe-top) + 12px + var(--top-chrome-h) + 8px);--app-max-width: 560px}html[data-app]{--ui-accent: var(--app-accent, var(--coral));--ui-accent-deep: var(--app-accent-deep, var(--coral-deep))}:root[data-case=upper] .challenge-word,:root[data-case=upper] .missing-word,:root[data-case=upper] .missing-gap,:root[data-case=upper] .choice-word,:root[data-case=upper] .tile,:root[data-case=upper] .slot,:root[data-case=upper] .sentence-text,:root[data-case=upper] .sentence-card,:root[data-case=upper] .gap-pill,:root[data-case=upper] .word-card-text,:root[data-case=upper] .modal-word,:root[data-case=upper] .star-chip-word,:root[data-case=upper] .reading-text{text-transform:uppercase}:root[data-case=natural] .challenge-word,:root[data-case=natural] .missing-word,:root[data-case=natural] .missing-gap,:root[data-case=natural] .choice-word,:root[data-case=natural] .tile,:root[data-case=natural] .slot,:root[data-case=natural] .sentence-text,:root[data-case=natural] .sentence-card,:root[data-case=natural] .gap-pill,:root[data-case=natural] .word-card-text,:root[data-case=natural] .modal-word,:root[data-case=natural] .star-chip-word,:root[data-case=natural] .reading-text{text-transform:none}:root[data-text-size=large] .challenge-word{font-size:clamp(50px,15vw,74px)}:root[data-text-size=large] .missing-word{font-size:clamp(44px,12.5vw,64px)}:root[data-text-size=large] .choice-word{font-size:32px}:root[data-text-size=large] .sentence-text{font-size:clamp(28px,8vw,37px)}:root[data-text-size=large] .sentence-card{font-size:clamp(21px,6.3vw,28px)}:root[data-text-size=large] .tile{font-size:39px}:root[data-text-size=large] .tile-keyboard .tile{font-size:30px}:root[data-reading-spacing=relaxed] .challenge-word,:root[data-reading-spacing=relaxed] .missing-word,:root[data-reading-spacing=relaxed] .missing-gap,:root[data-reading-spacing=relaxed] .choice-word,:root[data-reading-spacing=relaxed] .tile,:root[data-reading-spacing=relaxed] .slot,:root[data-reading-spacing=relaxed] .sentence-text,:root[data-reading-spacing=relaxed] .sentence-card,:root[data-reading-spacing=relaxed] .gap-pill,:root[data-reading-spacing=relaxed] .word-card-text,:root[data-reading-spacing=relaxed] .modal-word,:root[data-reading-spacing=relaxed] .star-chip-word,:root[data-reading-spacing=relaxed] .reading-text{letter-spacing:.08em;word-spacing:.12em;line-height:1.7;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overflow:hidden;overscroll-behavior:none}html{background-color:var(--bg-bottom)}body{font-family:var(--font);font-weight:600;color:var(--ink);background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-text-size-adjust:100%}#root{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}input,textarea{-webkit-user-select:text;user-select:text;font-family:var(--font)}button{font-family:var(--font);font-weight:600;color:var(--ink);border:none;background:none;padding:0;margin:0;touch-action:manipulation;cursor:pointer;-webkit-touch-callout:none}button:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:1100px)and (orientation:landscape){body{background-image:linear-gradient(#fffdf880,#fffdf880),url(/bg/safari-tile.webp),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);background-position:center,center,center;background-size:auto,560px auto,cover;background-repeat:no-repeat,repeat,no-repeat;background-attachment:fixed,fixed,fixed}.screen:not(.sleep-screen){background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%)}}*{-webkit-tap-highlight-color:transparent}img{-webkit-user-drag:none;user-drag:none}html,body{max-width:100vw}.screen{flex:1;width:100%;max-width:var(--app-max-width);margin-inline:auto;display:flex;flex-direction:column;min-height:0;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 20px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 20px);animation:screen-in .25s ease;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.screen.round-screen{overflow:hidden}.screen.start-screen,.screen.roundend-screen,.screen.sleep-screen,.screen.hatch-screen,.screen.linkjoin-screen{justify-content:flex-start;gap:clamp(14px,4vh,40px)}.screen.start-screen>:first-child,.screen.roundend-screen>:first-child,.screen.sleep-screen>:first-child,.screen.hatch-screen>:first-child,.screen.linkjoin-screen>:first-child{margin-top:auto}.screen.start-screen>:last-child,.screen.roundend-screen>:last-child,.screen.sleep-screen>:last-child,.screen.hatch-screen>:last-child,.screen.linkjoin-screen>:last-child{margin-bottom:auto}@keyframes screen-in{0%{opacity:0}to{opacity:1}}@media(min-width:720px){.screen{box-shadow:0 0 0 1px var(--line),0 18px 60px #0000000f}}@media(min-width:720px)and (orientation:portrait){body{background-image:linear-gradient(#fffdf8ad,#fffdf8ad),url(/bg/safari-tile.webp),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);background-position:center,center,center;background-size:auto,560px auto,cover;background-repeat:no-repeat,repeat,no-repeat;background-attachment:fixed,fixed,fixed}.screen:not(.sleep-screen){background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%)}}@media(min-width:720px)and (max-width:1099.98px)and (orientation:landscape){body{background-image:linear-gradient(#fffdf8ad,#fffdf8ad),url(/bg/safari-tile.webp),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);background-position:center,center,center;background-size:auto,560px auto,cover;background-repeat:no-repeat,repeat,no-repeat;background-attachment:fixed,fixed,fixed}.screen:not(.sleep-screen){background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%)}}@media(min-height:500px){#root .screen.start-screen{background-image:linear-gradient(to bottom,#fffdf8,#fffdf8 44%,#fffdf873 62%,#fffdf873),url(/bg/savanna-1920.webp),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);background-size:cover,100% auto,cover;background-position:center,center bottom,center;background-repeat:no-repeat,no-repeat,no-repeat}#root .screen.home-screen{background-image:linear-gradient(to bottom,#fffdf8,#fffdf8 52%,#fffdf880 70%,#fffdf880),url(/bg/savanna-1920.webp),linear-gradient(180deg,var(--bg-top) 0%,var(--bg-top) 55%,var(--bg-bottom) 100%);background-size:cover,100% auto,cover;background-position:center,center bottom,center;background-repeat:no-repeat,no-repeat,no-repeat}#root .screen.home-screen .home-buddy,#root .screen.home-screen .home-streak{background:#ffffffeb}#root .screen.home-screen .home-streak{padding:6px 18px 8px;border-radius:22px}}#root .screen.start-screen .start-cta,#root .screen.start-screen .start-hint{padding:6px 18px;border-radius:999px;background:#ffffffeb}#root .screen.start-screen .start-hint{padding:5px 14px}@media(min-width:720px){#root .screen.start-screen{max-width:none;padding-left:max(calc(var(--safe-left) + 20px),calc((100% - var(--app-max-width)) / 2));padding-right:max(calc(var(--safe-right) + 20px),calc((100% - var(--app-max-width)) / 2));box-shadow:none}}@media(min-width:720px)and (max-width:1400px){#root .screen{max-width:none;padding-left:max(calc(var(--safe-left) + 20px),calc((100% - var(--app-max-width)) / 2));padding-right:max(calc(var(--safe-right) + 20px),calc((100% - var(--app-max-width)) / 2));box-shadow:none}}@media(min-width:900px)and (max-width:1400px)and (min-height:600px)and (orientation:landscape){#root .screen.home-screen,#root .screen.round-screen,#root .screen.reserve-screen,#root .screen.subjects-screen,#root .screen.roundend-screen,#root .screen.hatch-screen{--tc-gutter: clamp(24px, 3.4vw, 56px);max-width:none;padding-inline:calc(var(--safe-left) + var(--tc-gutter)) calc(var(--safe-right) + var(--tc-gutter));box-shadow:none}#root .screen.age-screen,#root .screen.placement-confirm{--tc-col: 720px;max-width:none;padding-left:max(calc(var(--safe-left) + 24px),calc((100% - var(--tc-col)) / 2));padding-right:max(calc(var(--safe-right) + 24px),calc((100% - var(--tc-col)) / 2));box-shadow:none}#root .screen.home-screen{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-rows:auto repeat(14,auto) minmax(0,1fr) auto;column-gap:clamp(24px,3vw,56px);row-gap:10px;align-items:start;justify-items:stretch;align-content:start}#root .screen.home-screen>*{grid-column:1}#root .screen.home-screen>.home-top{grid-column:1 / -1}#root .screen.home-screen>.play-btn{grid-column:2;grid-row:2 / -2;align-self:center;justify-self:center;margin:0;width:clamp(200px,34vh,340px)}#root .screen.home-screen>.home-bottom{grid-column:2;grid-row:-2 / -1;margin-top:0;align-self:end}#root .screen.home-screen>.playing-strip,#root .screen.home-screen>.home-greeting,#root .screen.home-screen>.home-streak,#root .screen.home-screen>.home-tour-anchor,#root .screen.home-screen>.last-round-note,#root .screen.home-screen>.tier-milestone,#root .screen.home-screen>.level-badge,#root .screen.home-screen>.exam-offer,#root .screen.home-screen>.home-buddy,#root .screen.home-screen>.home-hint{justify-content:flex-start;text-align:left;margin-inline:0}#root .screen.home-screen>.home-streak,#root .screen.home-screen>.playing-strip{align-items:flex-start}#root .screen.home-screen>.home-greeting{font-size:clamp(34px,5vh,48px)}#root .screen.home-screen>.level-badge,#root .screen.home-screen>.exam-offer,#root .screen.home-screen>.home-buddy,#root .screen.home-screen>.home-hint{max-width:min(100%,560px);width:100%}#root .screen.round-screen:not(.placement-quiz) .mode.math-choose,#root .screen.round-screen:not(.placement-quiz) .mode.bond-mode,#root .screen.round-screen:not(.placement-quiz) .mode.count-mode,#root .screen.round-screen:not(.placement-quiz) .mode.quantity-mode,#root .screen.round-screen:not(.placement-quiz) .mode.compare-mode{flex-direction:row;align-items:center;justify-content:center;gap:clamp(28px,3.2vw,56px);max-width:min(100%,clamp(720px,72vw,920px))}#root .screen.round-screen:not(.placement-quiz) .mode.math-choose>.mode-prompt,#root .screen.round-screen:not(.placement-quiz) .mode.bond-mode>.mode-prompt,#root .screen.round-screen:not(.placement-quiz) .mode.count-mode>.mode-prompt,#root .screen.round-screen:not(.placement-quiz) .mode.quantity-mode>.mode-prompt,#root .screen.round-screen:not(.placement-quiz) .mode.compare-mode>.mode-prompt{flex:1 1 0;min-width:0;max-height:none}#root .screen.round-screen:not(.placement-quiz) .mode.math-choose>.math-grid,#root .screen.round-screen:not(.placement-quiz) .mode.bond-mode>.math-grid,#root .screen.round-screen:not(.placement-quiz) .mode.count-mode>.math-grid,#root .screen.round-screen:not(.placement-quiz) .mode.quantity-mode>.num-group-grid,#root .screen.round-screen:not(.placement-quiz) .mode.compare-mode>.num-compare-grid{flex:1 1 0;min-width:0;max-width:min(100%,520px);margin-top:0}#root .screen.round-screen.placement-quiz .mode{max-width:min(100%,860px)}#root .screen.round-screen.placement-quiz .num-compare-grid,#root .screen.round-screen.placement-quiz .num-group-grid{max-width:min(100%,780px)}#root .screen.round-screen.placement-quiz .choice-grid{max-width:min(100%,clamp(460px,62vh,700px))}#root .screen.subjects-screen .subjects-grid-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:auto repeat(5,auto) minmax(0,1fr);column-gap:clamp(28px,4vw,64px);align-content:center;justify-items:start;text-align:left;width:100%;max-width:min(100%,1060px);margin-inline:auto}#root .screen.subjects-screen .subjects-grid-wrap>*{grid-column:1}#root .screen.subjects-screen .subjects-grid{grid-column:2;grid-row:1 / -1;align-self:center;justify-self:stretch;grid-template-columns:repeat(3,minmax(0,1fr));max-width:min(100%,660px);gap:clamp(14px,1.8vw,22px)}#root .screen.subjects-screen .subjects-greeting{font-size:clamp(34px,5vh,50px)}#root .screen.reserve-screen .reserve-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}#root .screen.reserve-screen .reserve-card{min-height:clamp(140px,21vh,200px)}#root .screen.reserve-screen .habitat{height:clamp(126px,20vh,208px)}#root .screen.reserve-screen .reserve-tabs{justify-content:flex-start}@media(min-width:1100px){#root .screen.home-screen,#root .screen.reserve-screen,#root .screen.subjects-screen{padding-left:max(calc(var(--safe-left) + var(--tc-gutter)),232px)}}}@media(min-width:720px)and (max-width:1400px)and (min-height:600px){#root .screen.round-screen .mode{max-width:min(100%,640px);gap:clamp(20px,5vh,72px)}#root .screen.round-screen .math-equation{font-size:clamp(60px,7.5vh,104px)}#root .screen.round-screen .expr-equation{font-size:clamp(48px,6vh,84px)}#root .screen.round-screen .num-bond-eq{font-size:clamp(50px,6vh,82px)}#root .screen.round-screen .num-numeral{font-size:clamp(110px,15vh,190px)}#root .screen.round-screen .math-choice{height:clamp(88px,13vh,170px);font-size:clamp(38px,5vh,66px)}#root .screen.round-screen .math-grid{max-width:min(100%,460px);gap:clamp(16px,2vh,26px)}#root .screen.round-screen .num-group-grid{max-width:min(100%,480px);gap:clamp(14px,1.8vh,22px)}#root .screen.round-screen .num-group{height:clamp(96px,12vh,150px)}#root .screen.round-screen .num-compare-grid{max-width:min(100%,720px)}#root .screen.round-screen .num-cmp{height:clamp(150px,26vh,340px)}#root .screen.round-screen .object-cluster.oc-sm{max-width:min(100%,320px)}#root .screen.round-screen .oc-sm .oc-item{font-size:clamp(26px,4.2vh,56px)}#root .screen.round-screen .oc-sm.oc-n7 .oc-item,#root .screen.round-screen .oc-sm.oc-n8 .oc-item,#root .screen.round-screen .oc-sm.oc-n9 .oc-item,#root .screen.round-screen .oc-sm.oc-n10 .oc-item,#root .screen.round-screen .oc-sm.oc-n11 .oc-item,#root .screen.round-screen .oc-sm.oc-n12 .oc-item{font-size:clamp(19px,2.5vh,32px)}#root .screen.round-screen .num-prompt-line{font-size:clamp(24px,3vh,38px)}#root .screen.round-screen .object-cluster.oc-md{max-width:min(100%,420px)}#root .screen.round-screen .oc-md .oc-item{font-size:clamp(44px,5.4vh,68px)}#root .screen.round-screen .num-bond-row{max-width:min(100%,420px)}#root .screen.round-screen .num-bond-row .oc-item{font-size:clamp(40px,5vh,62px)}#root .screen.round-screen .num-bond-slot{width:clamp(40px,5vh,62px);height:clamp(40px,5vh,62px);font-size:clamp(24px,3vh,38px)}#root .screen.round-screen .challenge-emoji{font-size:clamp(124px,20vh,220px)}#root .screen.round-screen .choice-grid{max-width:min(100%,clamp(420px,50vh,540px))}#root .screen.round-screen .choice-emoji{font-size:clamp(72px,8vh,100px);min-height:clamp(124px,14vh,164px)}#root .screen.hatch-screen>.hatch-egg,#root .screen.hatch-screen>.hatch-reveal{margin-top:auto}#root .screen.hatch-screen>.hatch-actions{margin-bottom:auto}#root .screen.hatch-screen .hatch-egg,#root .screen.hatch-screen .hatch-animal{font-size:clamp(130px,22vh,320px)}#root .screen.hatch-screen .hatch-name{font-size:clamp(32px,3.6vh,52px)}#root .screen.hatch-screen .hatch-species,#root .screen.hatch-screen .hatch-name-species{font-size:clamp(19px,2.2vh,30px)}#root .screen.roundend-screen .roundend-content{max-width:min(100%,680px);gap:clamp(12px,2.2vh,26px)}#root .screen.roundend-screen .roundend-title{font-size:clamp(34px,4.2vh,54px)}#root .screen.subjects-screen .subject-emoji{font-size:clamp(48px,6.5vh,88px)}#root .screen.subjects-screen .subject-label{font-size:clamp(20px,2.4vh,28px)}#root .screen.age-screen .age-grid,#root .screen.age-screen .setup-hint,#root .screen.age-screen .age-cando{width:min(660px,100%)}#root .screen.age-screen .setup-input{width:min(440px,100%)}#root .screen.age-screen .age-grid{gap:clamp(6px,1.2vh,16px)}#root .screen.age-screen .age-btn{min-height:clamp(84px,7vh,132px);padding:10px 8px;gap:2px}#root .screen.age-screen .age-years{font-size:clamp(18px,2.3vh,28px)}#root .screen.age-screen .age-unit{font-size:clamp(11px,1.3vh,15px)}#root .screen.age-screen .age-stage-label{font-size:clamp(11px,1.4vh,16px);min-height:clamp(26px,3.4vh,40px)}#root .screen.age-screen .age-year{font-size:clamp(10px,1.2vh,14px)}#root .screen.age-screen .age-cando{font-size:clamp(13px,1.6vh,18px)}#root .screen.age-screen .setup-title{font-size:clamp(24px,3.2vh,40px)}#root .screen.age-screen>:first-child{margin-top:auto}#root .screen.age-screen>:last-child{margin-bottom:auto}#root .screen.setup-screen:not(.age-screen) .setup-hint,#root .screen.setup-screen:not(.age-screen) .setup-stages,#root .screen.setup-screen:not(.age-screen) .setup-summary{width:min(560px,100%)}.ws-mascot-intro-content{width:100%;max-width:720px;margin-inline:auto}.ws-mascot-intro-bubble{width:min(420px,calc(100% - 32px))}.ws-mascot-intro-text{font-size:clamp(17px,2vh,24px)}.ws-mascot-intro:not(.ws-mascot-intro--clear-top):not(.ws-mascot-intro--clear-bottom) .ws-mascot-intro-content{justify-content:center}.ws-mascot-intro:not(.ws-mascot-intro--clear-top):not(.ws-mascot-intro--clear-bottom) .ws-mascot-intro-stage{height:max(clamp(190px,46vh,420px),min(34vh,520px))}#root .screen.placement-confirm .pq-intro-slot{width:100%;max-width:720px;margin-inline:auto}#root .screen.placement-confirm .bomani-intro-content{justify-content:center}#root .screen.placement-confirm .bomani-intro-figure{height:max(clamp(180px,38vh,340px),min(32vh,460px))}#root .screen.placement-confirm .bomani-intro-bubble{max-width:min(100%,560px)}#root .screen.placement-confirm .bomani-intro-text{font-size:clamp(18px,2.2vh,26px)}#root .screen.placement-confirm .pq-confirm-card{max-width:min(100%,640px);margin-inline:auto}:root{--top-chrome-h: clamp(56px, 6.4vh, 76px)}#root .screen .settings-btn,#root .screen .app-switch-btn{min-width:clamp(56px,6.4vh,76px);min-height:clamp(56px,6.4vh,76px);opacity:.85}#root .screen .settings-btn svg{width:clamp(26px,3vh,34px);height:clamp(26px,3vh,34px)}#root .screen .app-switch-btn{font-size:clamp(26px,3vh,34px)}#root .screen .land-badge{min-width:clamp(56px,6.4vh,76px);min-height:clamp(56px,6.4vh,76px)}#root .screen .land-badge-face{padding:6px 14px;font-size:clamp(15px,1.8vh,19px)}#root .screen .land-badge-emoji{font-size:clamp(19px,2.2vh,24px)}#root .screen.start-screen .start-top-corner{position:fixed;top:calc(var(--safe-top) + 12px);right:calc(var(--safe-right) + 16px);z-index:12}}@media(min-width:720px)and (max-width:1400px)and (orientation:portrait){#root .screen.home-screen,#root .screen.subjects-screen,#root .screen.roundend-screen,#root .screen.hatch-screen,#root .screen.age-screen,#root .screen.placement-confirm,#root .screen.round-screen{--tc-col: 720px;max-width:none;padding-left:max(calc(var(--safe-left) + 24px),calc((100% - var(--tc-col)) / 2));padding-right:max(calc(var(--safe-right) + 24px),calc((100% - var(--tc-col)) / 2));box-shadow:none}#root .screen.reserve-screen{--tc-gutter: clamp(24px, 3.4vw, 56px);max-width:none;padding-inline:calc(var(--safe-left) + var(--tc-gutter)) calc(var(--safe-right) + var(--tc-gutter));box-shadow:none}#root .screen.reserve-screen .reserve-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}#root .screen.reserve-screen .reserve-card{min-height:clamp(140px,15vh,240px)}#root .screen.reserve-screen .habitat{height:clamp(126px,17vh,280px)}#root .screen.reserve-screen .reserve-tabs{justify-content:flex-start}#root .screen.home-screen>.play-btn{width:clamp(220px,25vh,340px);margin:auto 0}#root .screen.home-screen>.home-bottom{justify-content:space-between;align-items:flex-end;gap:clamp(16px,3vw,40px);margin-top:clamp(16px,2.4vh,32px)}#root .screen.home-screen .home-face{height:clamp(190px,21vh,300px)}#root .screen.home-screen .reserve-btn,#root .screen.home-screen .trophy-btn{width:clamp(88px,8vh,112px);height:clamp(88px,8vh,112px);font-size:clamp(42px,4vh,56px)}#root .screen.home-screen>.home-greeting{font-size:clamp(34px,3.6vh,46px)}#root .screen.home-screen>.level-badge,#root .screen.home-screen>.exam-offer,#root .screen.home-screen>.home-buddy,#root .screen.home-screen>.home-hint{max-width:min(100%,620px);width:100%}#root .screen.subjects-screen .subjects-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%;gap:clamp(14px,2vw,24px)}#root .screen.subjects-screen .subjects-greeting{font-size:clamp(34px,3.6vh,46px)}#root .screen.round-screen .mode{max-width:min(100%,700px);gap:clamp(20px,6vh,90px)}#root .screen.round-screen .math-equation{font-size:clamp(60px,9vh,132px)}#root .screen.round-screen .math-grid{max-width:min(100%,620px);gap:clamp(16px,2vh,30px)}#root .screen.round-screen .math-choice{height:clamp(88px,13vh,210px);font-size:clamp(38px,5vh,78px)}#root .screen.round-screen .num-group-grid{max-width:min(100%,620px)}#root .screen.round-screen .num-group{height:clamp(96px,14vh,230px)}#root .screen.round-screen .num-compare-grid{max-width:min(100%,660px)}#root .screen.round-screen .num-cmp{height:clamp(150px,20vh,320px)}#root .screen.round-screen .choice-grid{max-width:min(100%,clamp(420px,44vh,620px))}#root .screen.roundend-screen .roundend-content{max-width:min(100%,700px)}#root .screen.age-screen .age-btn{min-height:clamp(96px,8.5vh,150px)}}.suite-rail{display:none}body:has(.round-screen) .suite-rail{display:none}@media(min-width:1100px)and (orientation:landscape){.suite-rail{position:fixed;left:14px;top:50%;transform:translateY(-50%);z-index:5;display:flex;flex-direction:column;gap:6px;max-width:200px;padding:10px;border-radius:24px;background:#fffdf88c;border:1px solid rgba(43,38,34,.07);opacity:.62;transition:opacity .15s ease}.suite-rail-caption{padding:2px 6px 4px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.suite-rail:hover,.suite-rail:focus-within{opacity:1}.suite-rail-chip{display:flex;align-items:center;gap:9px;min-height:44px;padding:4px 14px 4px 4px;border-radius:999px;background:#ffffffd1;box-shadow:var(--shadow);color:var(--ink);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.suite-rail-chip:hover{background:#fff}.suite-rail-chip:focus-visible{outline:3px solid var(--ui-accent);outline-offset:2px}.suite-rail-glyph{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:19px}.suite-rail-glyph-home{background:var(--sun)}.suite-rail-home{margin-top:10px}}.progress-dots{position:relative;display:flex;align-items:center;flex:1 1 auto;min-width:0;max-width:none;gap:6px}@media(max-width:419px){.progress-dots{gap:4px}}.dots-run{display:flex;align-items:center;gap:inherit;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow:hidden;justify-content:flex-start;justify-content:safe center;padding:2px}.dots-done{display:flex;align-items:center;gap:inherit;flex:0 1 auto;min-width:0;flex-wrap:nowrap;overflow:hidden;justify-content:flex-end}.dots-todo{display:flex;align-items:center;gap:inherit;flex:0 0 auto;flex-wrap:nowrap}.dot{flex:0 0 auto;width:12px;height:12px;border-radius:50%;background:var(--card);box-shadow:inset 0 0 0 2px #2b262247;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.dot-correct{background:var(--ui-accent);box-shadow:none}.dot-tried{background:var(--card);box-shadow:inset 0 0 0 3px #2b262259}@keyframes dot-answered-in{0%{background:var(--card);box-shadow:inset 0 0 0 2px #2b262247}}.dot-correct,.dot-tried{animation:dot-answered-in .2s ease}.dot-current{background:var(--card);border:2px solid var(--ui-accent);box-shadow:none;transform:scale(1.25)}.star-counter{position:relative;display:inline-flex;align-items:center;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 14px 6px 10px;box-shadow:var(--shadow);font-weight:700;font-size:17px;min-height:40px}.star-counter-icon{font-size:17px}.star-counter.bump{animation:counter-bump .35s ease}@keyframes counter-bump{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.fly-star{position:fixed;left:-22px;top:-22px;z-index:60;font-size:34px;pointer-events:none;display:flex;align-items:center;filter:drop-shadow(0 2px 6px rgba(255,200,61,.6))}.fly-star-count{font-size:18px;font-weight:800;color:var(--ink)}.mode{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;gap:clamp(16px,3vh,40px);width:100%;max-width:min(100%,420px);margin:0 auto;min-height:0;padding:4px 0 8px}.mode-prompt{flex:0 1 auto;max-height:40dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:0;text-align:center}.mode-answers{display:flex;flex-direction:column;align-items:center;width:100%}@media(min-height:700px){.mode{gap:clamp(20px,5vh,48px)}}@media(min-width:720px){.mode{max-width:480px}}.mode-coach{margin:12px auto 0;max-width:24ch;text-align:center;font-size:clamp(16px,4.5vw,20px);font-weight:600;line-height:1.3;color:var(--ink-soft, var(--ink));animation:coach-in .32s ease-out}@keyframes coach-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.mode-coach{animation:none}}.challenge-word{font-family:var(--font-reading);font-size:clamp(34px,11vw,64px);font-weight:700;text-transform:lowercase;letter-spacing:.02em;line-height:1.15;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 28px;max-width:100%;overflow-wrap:anywhere}.challenge-word.word-revealed{background:#e9fbf1;box-shadow:0 0 0 3px var(--leaf)}.challenge-emoji{font-size:clamp(80px,26vw,124px);line-height:1.15;animation:choice-pop .35s ease backwards}.prompt-tappable{transition:transform .12s ease}.prompt-tappable:active{transform:scale(.94)}.sentence-scene{font-size:clamp(52px,17vw,84px);line-height:1.15}.sentence-text{font-family:var(--font-reading);font-size:clamp(24px,7vw,32px);font-weight:700;letter-spacing:.02em;line-height:1.7;max-width:100%;margin:0}.gap-glue{white-space:nowrap}.gap-pill{display:inline-flex;align-items:center;justify-content:center;min-width:84px;min-height:44px;padding:0 14px;max-width:100%;overflow-wrap:anywhere;border-radius:999px;border:2px dashed var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 6%,transparent);vertical-align:middle;animation:pill-pulse 1.6s ease-in-out infinite}.gap-pill.gap-filled{border-style:solid;border-color:var(--leaf);background:#e9fbf1;color:#1f8a52;animation:slot-bounce .45s ease}@keyframes pill-pulse{0%,to{transform:scale(1);border-color:var(--ui-accent)}50%{transform:scale(1.05);border-color:color-mix(in srgb,var(--ui-accent) 45%,transparent)}}.flash-stage{display:flex;flex-direction:column;align-items:center;gap:14px}.flash-word-out{animation:flash-fade .35s ease forwards}.flash-timer{width:140px;height:8px;border-radius:999px;background:#2b26221a;overflow:hidden}.flash-timer-fill{height:100%;width:100%;border-radius:999px;background:var(--ui-accent);transform-origin:left;animation:flash-shrink linear forwards}@keyframes flash-fade{to{opacity:0;transform:scale(.85)}}@keyframes flash-shrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.listen-stage{display:flex;flex-direction:column;align-items:center;gap:10px}.listen-prompt-stage{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.listen-prompt{display:inline-flex;align-items:center;justify-content:center;gap:14px;width:min(100%,320px);min-height:72px;padding:14px 28px;border:none;border-radius:var(--radius, 20px);background:var(--ws-accent-sunset, var(--app-accent-deep, var(--app-accent, var(--coral))));color:#fff;font-family:inherit;font-size:clamp(24px,6.4vw,28px);font-weight:800;line-height:1.1;cursor:pointer;box-shadow:0 6px 18px #c54a2847;transition:transform .12s ease}.listen-prompt:active{transform:scale(.96)}.listen-prompt-icon{display:inline-flex;align-items:center}.listen-prompt-icon svg{display:block;overflow:visible}.listen-wave{opacity:.4}.listen-prompt-live .listen-wave{animation:listen-wave-pulse 1.05s ease-in-out infinite}.listen-prompt-live .listen-wave-2{animation-delay:.14s}.listen-prompt-live .listen-wave-3{animation-delay:.28s}.listen-prompt-live .listen-prompt-icon{animation:listen-icon-breathe 1.05s ease-in-out infinite}@keyframes listen-wave-pulse{0%,to{opacity:.25}45%{opacity:1}}@keyframes listen-icon-breathe{0%,to{transform:scale(1)}45%{transform:scale(1.08)}}.listen-prompt-caption{margin:0;max-width:22ch;text-align:center;font-size:clamp(15px,4.2vw,18px);font-weight:600;line-height:1.3;color:var(--ink-soft, var(--ink))}@media(prefers-reduced-motion:reduce){.listen-prompt-live .listen-wave,.listen-prompt-live .listen-prompt-icon{animation:none}.listen-prompt-live .listen-wave{opacity:1}}.missing-stage{gap:10px}.missing-letter .challenge-emoji{font-size:clamp(48px,15vw,76px)}.missing-word{font-family:var(--font-reading);font-size:clamp(30px,10vw,56px);font-weight:700;text-transform:lowercase;letter-spacing:.04em;line-height:1.15;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 24px;max-width:100%;overflow-wrap:anywhere}.missing-shake{animation:missing-shake .5s ease}.missing-gap{display:inline-flex;align-items:center;justify-content:center;min-width:.9em;min-height:1.12em;margin:0 .05em;vertical-align:baseline;border-radius:14px;border:2px dashed var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 6%,transparent);animation:pill-pulse 1.6s ease-in-out infinite}.missing-gap.missing-filled{border-style:solid;border-color:var(--leaf);background:#e9fbf1;color:#1f8a52;animation:slot-bounce .45s ease}@keyframes missing-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.sentence-match-cards{gap:10px;padding:0 4px}.sentence-card{width:100%;font-family:var(--font-reading);font-size:clamp(18px,5.5vw,24px);font-weight:700;letter-spacing:.01em;line-height:1.6;text-align:center;overflow-wrap:break-word;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 16px;animation:choice-pop .35s ease backwards;transition:transform .12s ease,opacity .2s ease}.sentence-card:active{transform:scale(.97)}.sentence-card.state-dim{opacity:.35}.sentence-card.state-correct{background:#e9fbf1;box-shadow:0 0 0 3px var(--leaf)}.rhyme-prompt{display:flex;flex-direction:column;align-items:center;gap:4px}.rhyme-target{font-size:clamp(20px,6vw,28px);font-weight:700;color:var(--ink);max-width:100%;overflow-wrap:anywhere}.trace-mode{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%}.trace-keyword{font-size:44px;line-height:1}.trace-stage{align-self:stretch;width:100%;max-width:min(420px,56vh);aspect-ratio:1;height:auto;margin:0 auto;display:flex;align-items:center;justify-content:center}.trace-canvas{width:100%;height:100%;border-radius:28px;background:var(--card, #fff);box-shadow:var(--shadow, 0 6px 18px rgba(0, 0, 0, .08));border:3px dashed var(--line, #e6e6ef);touch-action:none;cursor:crosshair;transition:border-color .25s ease,transform .25s ease}.trace-canvas.trace-done{border-color:var(--leaf, #2fb36a);border-style:solid;animation:trace-pop .45s ease}.trace-guide-memory .trace-canvas:not(.trace-done){border-color:var(--sky, #2f7bff)}@keyframes trace-pop{0%{transform:scale(1)}55%{transform:scale(1.05)}to{transform:scale(1)}}.trace-start-hint{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-ui, sans-serif);font-size:15px;font-weight:700;color:var(--ink-soft, #6b6b80);transition:opacity .25s ease}.trace-start-hint.is-hidden{opacity:0;pointer-events:none}.trace-start-hint-nudge{color:var(--coral-deep, #e85843);animation:trace-pop .5s ease}@media(prefers-reduced-motion:reduce){.trace-start-hint-nudge{animation:none}}.trace-start-hint-dot{width:14px;height:14px;border-radius:50%;background:#2f7bff;box-shadow:0 0 0 5px #2f7bff2e;animation:trace-dot-pulse 1.6s ease-in-out infinite}@keyframes trace-dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@media(prefers-reduced-motion:reduce){.trace-start-hint-dot{animation:none}}.trace-showme{font-family:var(--font-ui, sans-serif);font-size:17px;font-weight:700;color:var(--ink, #34344a);background:var(--card, #fff);border:2px solid var(--line, #e6e6ef);border-radius:999px;padding:10px 20px;box-shadow:var(--shadow, 0 4px 12px rgba(0, 0, 0, .06));transition:transform .12s ease,opacity .2s ease}.trace-showme:active{transform:scale(.95)}.trace-showme:disabled{opacity:.35;pointer-events:none}
