.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)}.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)}.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}.letter-tiles{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;position:relative}.tile-slots{--slot-w: min( 60px, (min(100vw - 40px, 420px) - (var(--slots, 6) - 1) * 6px) / var(--slots, 6) );display:flex;gap:6px;justify-content:center;flex-wrap:wrap;row-gap:6px;width:100%}.slot{flex:1 1 0;min-width:44px;max-width:60px;width:auto;height:auto;aspect-ratio:1;border-radius:14px;border:2px dashed var(--line-strong);background:#fff9;font-family:var(--font-reading);font-size:calc(var(--slot-w) * .6);font-weight:700;text-transform:lowercase;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;color:var(--ink);transition:transform .15s ease;position:relative}.letter-tiles .slot.unit-2{font-size:calc(var(--slot-w) * .36);letter-spacing:0}.letter-tiles .slot.unit-3{font-size:calc(var(--slot-w) * .27);letter-spacing:-.02em}.slot-filled{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow)}.slot-filled:active{transform:scale(.92)}.slot-right{border:2px solid var(--leaf);background:#e9fbf1;color:#1f8a52;animation:slot-bounce .45s ease backwards}.slot-wrong{border:2px solid var(--coral);background:#ffefec;color:var(--coral);animation:gentle-shake .5s ease}.slot-kept{border:2px solid var(--leaf);background:#e9fbf1;color:#1f8a52}.slot-wrong:after,.slot-kept:before{content:"";position:absolute;top:-5px;right:-5px;width:15px;height:15px;border-radius:50%}.slot-wrong:after{background:linear-gradient(45deg,transparent 42%,#fff 42%,#fff 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#fff 42%,#fff 58%,transparent 58%),var(--coral)}.slot-kept:before{background:var(--leaf)}.slot-kept:after{content:"";position:absolute;top:-2px;right:.5px;width:4px;height:8px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(40deg)}.tiles-dismiss{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;z-index:2;padding:0;border:0;background:transparent;cursor:pointer}@keyframes slot-bounce{0%{transform:scale(.7)}60%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes gentle-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.tile-bank{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:420px}.tile-keyboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:8px;width:100%;max-width:100%}.tile{width:56px;height:56px;border-radius:14px;font-family:var(--font-reading);font-size:34px;font-weight:700;line-height:1;text-transform:lowercase;transition:transform .12s ease,box-shadow .12s ease,opacity .2s ease;animation:tile-pop .3s ease backwards}.tile-keyboard .tile{width:100%;min-height:48px;height:auto;aspect-ratio:1;max-height:56px;font-size:26px;border-radius:12px}.letter-tiles .tile.unit-2{font-size:23px}.letter-tiles .tile.unit-3{font-size:18px;letter-spacing:-.02em}.tile:active{transform:translateY(2px) scale(.96);box-shadow:none!important}.tile-spent{opacity:.18;pointer-events:none}.tile.hint-pulse,.slot.hint-pulse{animation:hint-pulse 1.4s ease-in-out infinite}@keyframes hint-pulse{0%,to{transform:scale(1);filter:none}50%{transform:scale(1.12);filter:drop-shadow(0 0 7px rgba(255,107,87,.65))}}.tile.c0{background:#ffada3;color:#87423a;box-shadow:0 2px #eb9489}.tile.c1{background:#ffd489;color:#82591a;box-shadow:0 2px #eebd66}.tile.c2{background:#a9e5be;color:#2e6e47;box-shadow:0 2px #8cd2a5}.tile.c3{background:#a8d8f5;color:#2c5f80;box-shadow:0 2px #88c2e6}.tile.c4{background:#cbbcf2;color:#54447e;box-shadow:0 2px #b3a1e3}@keyframes tile-pop{0%{transform:scale(0)}70%{transform:scale(1.12)}to{transform:scale(1)}}.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}.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)}}.sentence-build{gap:18px}.sb-board{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;width:100%}.sb-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;min-height:64px;width:100%;max-width:520px;padding:12px;border-radius:var(--radius-sm);background:#2b262208;border:2px dashed var(--line-strong);transition:border-color .15s ease,background .15s ease}.sb-line-empty{font-family:var(--font);font-size:15px;font-weight:600;color:var(--ink-soft);opacity:.7}.sb-bank{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;width:100%;max-width:520px}.sb-tile{position:relative;font-family:var(--font-reading);font-size:clamp(20px,6vw,26px);font-weight:700;letter-spacing:.01em;max-width:100%;overflow-wrap:anywhere;min-height:52px;padding:6px 16px;border-radius:var(--radius-sm);background:var(--card);border:2px solid var(--line-strong);box-shadow:var(--shadow);color:var(--ink);transition:transform .1s ease,opacity .15s ease,border-color .15s ease}.sb-tile:active{transform:scale(.94)}.sb-tile-used{opacity:.25;pointer-events:none}.sb-tile-placed{border-color:var(--ui-accent);background:#ff6b5714}.sb-line.status-marked{border-style:solid;border-color:var(--line-strong)}.sb-line.status-marked .sb-tile-wrong{border-color:var(--coral);background:#ffefec;color:var(--coral);animation:sb-shake .4s ease}.sb-line.status-marked .sb-tile-kept{border-color:var(--leaf);background:#e9fbf1;color:#1f8a52}.sb-tile-wrong:after,.sb-tile-kept:before{content:"";position:absolute;top:-7px;right:-7px;width:16px;height:16px;border-radius:50%}.sb-tile-wrong:after{background:linear-gradient(45deg,transparent 42%,#fff 42%,#fff 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#fff 42%,#fff 58%,transparent 58%),var(--coral)}.sb-tile-kept:before{background:var(--leaf)}.sb-tile-kept:after{content:"";position:absolute;top:-4px;right:-1px;width:4px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(40deg)}.sb-dismiss{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;z-index:2;padding:0;border:0;background:transparent;cursor:pointer}.sb-line.status-correct{border-style:solid;border-color:transparent;box-shadow:0 0 0 3px var(--leaf);background:#e9fbf1}.sb-line.status-correct .sb-tile-placed{border-color:transparent;background:transparent;box-shadow:none}.sb-line.status-reveal{border-style:solid;border-color:var(--line-strong)}.sb-line.status-reveal .sb-tile-placed{border-color:var(--line);background:var(--card)}@keyframes sb-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.sb-line.status-marked .sb-tile-wrong{animation:none}}.mic-indicator{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px}.mic-circle{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--coral);color:#fff;box-shadow:var(--shadow)}.mic-active .mic-circle{animation:mic-pulse 1.6s ease-in-out infinite}.mic-done .mic-circle{background:var(--leaf)}.mic-waiting .mic-circle{opacity:.85}@keyframes mic-pulse{0%,to{transform:scale(1);box-shadow:var(--shadow),0 0 #ff6b5759}50%{transform:scale(1.07);box-shadow:var(--shadow),0 0 0 12px #ff6b5700}}.mic-dots{display:inline-flex;gap:5px}.mic-dots i{width:8px;height:8px;border-radius:50%;background:var(--coral);opacity:.5;animation:mic-dot 1.2s ease-in-out infinite}.mic-dots i:nth-child(2){animation-delay:.2s}.mic-dots i:nth-child(3){animation-delay:.4s}@keyframes mic-dot{0%,to{transform:translateY(0);opacity:.45}50%{transform:translateY(-5px);opacity:1}}.read-aloud-bottom{gap:12px;padding-bottom:8px;position:relative;min-height:120px;justify-content:flex-end}.karaoke-line{display:flex;flex-wrap:wrap;justify-content:center;column-gap:.45em;row-gap:6px}.karaoke-token{position:relative;display:inline-block;border-radius:10px;padding:0 4px;transition:color .2s ease,background-color .2s ease}.karaoke-token.karaoke-lit{color:#1f8a52;background:#e9fbf1}.karaoke-pop{animation:karaoke-pop .45s ease}@keyframes karaoke-pop{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.karaoke-word{position:relative}.karaoke-word.karaoke-lit{animation:karaoke-pop .45s ease}.karaoke-stall{animation:karaoke-stall 1.4s ease-in-out infinite;text-decoration:underline;text-decoration-color:#ff6b578c;text-decoration-thickness:3px;text-underline-offset:5px}@keyframes karaoke-stall{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.karaoke-sweep{background:#d2f6e3;transform:scale(1.12);transition:transform .12s ease}.karaoke-sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.karaoke-sparkles i{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:var(--sun);transform:rotate(var(--spark-angle)) translate(0);opacity:0;animation:spark-fly .6s ease-out forwards}.karaoke-sparkles i:nth-child(2n){background:var(--leaf);animation-delay:.05s}.karaoke-sparkles i:nth-child(3n){background:var(--coral);width:5px;height:5px}@keyframes spark-fly{0%{opacity:1;transform:rotate(var(--spark-angle)) translate(6px) scale(1)}to{opacity:0;transform:rotate(var(--spark-angle)) translate(42px) scale(.4)}}.hint-bounce{animation:hint-bounce-in .5s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes hint-bounce-in{0%{transform:translateY(26px) scale(.4);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.read-together-note{margin:0;font-size:17px;color:var(--ink-soft)}.still-listening-note{margin:0;font-size:15px;color:var(--ink-soft);opacity:.85;animation:still-listening-in .32s ease-out both}@keyframes still-listening-in{0%{opacity:0}to{opacity:.85}}@media(prefers-reduced-motion:reduce){.still-listening-note{animation:none}}.debug-speech-input{position:absolute;bottom:0;right:0;width:130px;font-size:12px;padding:4px 6px;border:1px dashed var(--line-strong);border-radius:8px;background:#ffffffb3;color:var(--ink-soft);opacity:.35}.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}.letter-prompt-text{font-size:clamp(26px,7vw,34px);font-weight:700;text-align:center;margin:0}.letter-target{font-size:clamp(64px,18vw,96px);font-weight:800;line-height:1;text-transform:lowercase;color:var(--ui-accent);margin:4px 0 2px}.letter-grid{display:grid;grid-template-columns:repeat(2,auto);gap:18px;justify-content:center;align-content:center;margin-top:8px}.letter-grid.choices-3{grid-template-columns:repeat(3,auto)}.letter-tile{width:104px;height:104px;border-radius:24px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);font-size:56px;font-weight:800;color:var(--ink);text-transform:lowercase;transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.letter-tile:active{transform:scale(.94)}.letter-dim{opacity:.3;transform:scale(.9)}.letter-correct{border-color:var(--leaf);background:var(--leaf);color:#fff;transform:scale(1.06)}.keyword-word{font-family:var(--font-reading);font-size:clamp(28px,8vw,40px);font-weight:700;text-transform:lowercase;letter-spacing:.02em;line-height:1.15;color:var(--ink-soft, var(--ink));margin:0}.keyword-on{color:var(--ui-accent);font-weight:800;border-bottom:3px solid var(--ui-accent);transition:color .18s ease,border-color .18s ease}.keyword-revealed{color:var(--ink)}.keyword-revealed .keyword-on{background:#fff2ee;border-radius:6px;padding:0 2px}.sound-pairs-memory{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.pairs-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:100%;max-width:360px;margin:4px auto 0}.pairs-of-3{grid-template-columns:repeat(3,1fr);max-width:300px}.pair-card{aspect-ratio:1 / 1;padding:0;border:none;background:transparent;perspective:600px;cursor:pointer;-webkit-tap-highlight-color:transparent}.pair-card-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .32s ease}.pair-card.is-up .pair-card-inner{transform:rotateY(180deg)}.pair-card-back,.pair-card-front{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:20px;box-shadow:var(--shadow);backface-visibility:hidden;-webkit-backface-visibility:hidden}.pair-card-back{background:linear-gradient(160deg,#fff6e8,#ffe9cc);border:2px solid var(--line);font-size:clamp(30px,9vw,40px);filter:grayscale(.15);opacity:.92}.pair-card-front{background:var(--card);border:2px solid var(--line);transform:rotateY(180deg)}.pair-emoji{font-size:clamp(34px,10vw,46px);line-height:1}.pair-letters{font-size:clamp(26px,8vw,38px);font-weight:800;text-transform:lowercase;color:var(--ink)}.pair-card.pair-matched .pair-card-front{border-color:var(--leaf);background:#eafaf1}.pair-card.pair-matched{cursor:default}.pair-card.pair-missed .pair-card-front{border-color:var(--coral);opacity:.85}.pair-card:active:not(.pair-matched) .pair-card-inner{transform:scale(.96)}.pair-card.is-up:active:not(.pair-matched) .pair-card-inner{transform:rotateY(180deg) scale(.96)}@media(prefers-reduced-motion:reduce){.pair-card-inner{transition:none}}.story-mode{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:460px}.story-pagedots{display:flex;gap:8px}.story-dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.story-dot.done{background:var(--leaf)}.story-dot.on{background:var(--ink);transform:scale(1.25)}.story-scene{font-size:clamp(80px,30vw,140px);line-height:1}.story-text{font-size:clamp(26px,7.5vw,38px);font-weight:700;color:var(--ink);text-align:center;line-height:1.3;padding:0 8px;max-width:18ch}.story-next{margin-top:4px;font-family:var(--font-ui);font-size:20px;font-weight:800;color:#fff;background:var(--leaf);border:none;border-radius:999px;padding:14px 32px;box-shadow:var(--shadow);transition:transform .12s ease}.story-next:active{transform:scale(.95)}.story-question{font-size:clamp(24px,7vw,34px);font-weight:800;color:var(--ink);text-align:center;line-height:1.25;max-width:18ch}.story-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.story-choice{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;border-radius:22px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.story-choice:active{transform:scale(.96)}.story-choice-emoji{font-size:clamp(38px,13vw,54px);line-height:1}.story-choice-label{font-size:clamp(15px,4.5vw,19px);font-weight:700;color:var(--ink)}.story-choice-dim{opacity:.3;transform:scale(.94)}.story-choice-correct{border-color:var(--leaf);background:#e9fbf1;transform:scale(1.05)}.story-offer-buttons{display:flex;gap:16px}.story-bonus-accept{background:var(--sun, #f4b740);font-size:26px;padding:14px 30px}.story-bonus-skip{background:var(--line);color:var(--ink);font-size:22px;padding:14px 26px}.story-bonus .story-question{color:var(--leaf)}.vocab-prompt{display:flex;flex-direction:column;align-items:center;gap:6px;align-self:stretch}.vocab-word{font-size:clamp(28px,9vw,56px);font-weight:800;color:var(--ink);background:none;border:0;line-height:1.1;max-width:100%;overflow-wrap:anywhere}.vocab-ask{margin:0;font-size:16px;color:var(--ink-soft)}.vocab-example{display:block;width:100%;max-width:420px;margin:2px auto 0;padding:8px 14px;border:0;background:none;font-size:clamp(15px,4vw,18px);line-height:1.35;color:var(--ink-soft);text-align:center;font-style:italic;cursor:pointer}.vocab-example-word{font-style:normal;font-weight:800;color:var(--ink)}.vocab-grid{display:grid;gap:12px;width:100%;max-width:420px;margin-top:10px}.vocab-choice{min-height:60px;padding:12px 18px;border-radius:18px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);font-size:clamp(18px,5vw,22px);font-weight:700;color:var(--ink);text-align:center;overflow-wrap:break-word;transition:transform .12s ease,opacity .18s ease,border-color .12s ease,background .12s ease}.vocab-choice:active{transform:scale(.97)}.vocab-dim{opacity:.3;transform:scale(.97)}.vocab-correct{border-color:var(--leaf);background:var(--leaf);color:#fff;transform:scale(1.03)}.vocab-teach{width:100%;max-width:420px;margin:12px auto 0;padding:10px 14px;border-radius:14px;background:var(--card);border:2px solid var(--line);font-size:clamp(15px,4vw,17px);line-height:1.35;color:var(--ink);text-align:center}.vocab-match-ask{font-size:clamp(16px,4.5vw,19px);font-weight:700;color:var(--ink)}.vocab-match-board{display:grid;grid-template-columns:1fr 1.3fr;gap:10px 12px;width:100%;max-width:460px;margin:12px auto 0;align-items:start}.vocab-match-col{display:grid;gap:12px}.vocab-match-board .vocab-choice{min-height:56px;font-size:clamp(15px,4vw,19px);cursor:pointer}.vocab-match-words .vocab-choice{font-weight:800}.vocab-match-selected{border-color:var(--ui-accent);background:var(--ui-accent);color:#fff;transform:scale(1.03)}.vocab-match-paired{border-color:var(--leaf);background:var(--leaf);color:#fff;opacity:1}.vocab-match-wrong{border-color:var(--line-strong);animation:vocab-match-nudge .3s ease}@keyframes vocab-match-nudge{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media(prefers-reduced-motion:reduce){.vocab-match-wrong{animation:none;opacity:.45}}.object-cluster{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;max-width:320px}.oc-item{line-height:1}.oc-md .oc-item{font-size:44px}.oc-md.oc-n7 .oc-item,.oc-md.oc-n8 .oc-item,.oc-md.oc-n9 .oc-item{font-size:36px}.oc-md.oc-n10 .oc-item,.oc-md.oc-n11 .oc-item,.oc-md.oc-n12 .oc-item{font-size:30px}.oc-sm{gap:4px;max-width:150px}.oc-sm .oc-item{font-size:26px}.oc-sm.oc-n7 .oc-item,.oc-sm.oc-n8 .oc-item,.oc-sm.oc-n9 .oc-item,.oc-sm.oc-n10 .oc-item,.oc-sm.oc-n11 .oc-item,.oc-sm.oc-n12 .oc-item{font-size:19px}.num-numeral{font-family:var(--font-reading);font-size:clamp(64px,22vw,110px);font-weight:800;color:var(--ink);line-height:1}.num-group-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;width:100%;max-width:340px;margin-top:4px}.num-group{height:96px;border-radius:22px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;padding:10px;transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.num-group:active{transform:scale(.96)}.num-group-dim{opacity:.3;transform:scale(.94)}.num-group-correct{border-color:var(--leaf);background:#e9fbf1;transform:scale(1.04)}.num-prompt-line{font-family:var(--font-ui);font-size:24px;font-weight:800;color:var(--ink)}.num-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:360px}.num-cmp{height:150px;border-radius:24px;background:var(--card);border:3px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;padding:12px;transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.num-cmp:active{transform:scale(.97)}.num-cmp-dim{opacity:.3}.num-cmp-correct{border-color:var(--leaf);background:#e9fbf1;transform:scale(1.03)}.num-bond-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;max-width:320px;margin:0 auto 14px}.num-bond-row .oc-item{font-size:40px;line-height:1}.num-bond-slot{width:40px;height:40px;border-radius:50%;border:3px dashed var(--ui-accent);color:var(--ui-accent);font-weight:800;font-size:24px;display:flex;align-items:center;justify-content:center}.num-bond-reveal{animation:num-bond-pop .4s ease backwards}@keyframes num-bond-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.num-bond-eq{display:flex;align-items:center;justify-content:center;gap:10px;font-size:clamp(34px,10vw,50px);font-weight:800;color:var(--ink)}.number-peek{flex-direction:row;gap:14px;transition:opacity .28s ease,transform .28s ease}.number-peek.is-shown{opacity:1;transform:scale(1)}.number-peek.is-hidden{opacity:0;transform:scale(.85);pointer-events:none}.number-bridge-glyph{font-size:52px;line-height:1}.quiz-grid.is-locked{opacity:.35}@media(prefers-reduced-motion:reduce){.number-peek{transition:none}}.quiz-prompt-text{font-size:clamp(22px,6vw,30px);font-weight:700;text-align:center;margin:0;max-width:18ch}.quiz-ref{display:flex;align-items:center;justify-content:center;margin:10px auto 0;padding:10px 14px;min-height:64px;max-width:340px;border-radius:20px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow)}.quiz-ref-empty{font-size:44px;line-height:1;opacity:.55}.quiz-grid{display:grid;grid-template-columns:repeat(2,auto);gap:18px;justify-content:center;align-content:center;margin-top:8px}.quiz-grid.choices-3{grid-template-columns:repeat(3,auto)}.quiz-tile{position:relative;width:116px;height:116px;border-radius:24px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.quiz-spark{position:absolute;top:-6px;right:-6px;font-size:30px;pointer-events:none;transform-origin:center;animation:quiz-spark-pop .7s ease-out}@keyframes quiz-spark-pop{0%{transform:scale(.2) rotate(-20deg);opacity:0}40%{transform:scale(1.25) rotate(8deg);opacity:1}to{transform:scale(1) rotate(0) translateY(-6px);opacity:0}}@media(prefers-reduced-motion:reduce){.quiz-spark{animation:none;opacity:0}}.quiz-emoji{font-size:60px;line-height:1}.quiz-tile:active{transform:scale(.94)}.quiz-dim{opacity:.3;transform:scale(.9)}.quiz-correct{border-color:var(--leaf);background:var(--leaf);transform:scale(1.06)}.quiz-explain{margin:14px 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);background:var(--card);border:2px solid var(--line);border-radius:16px;padding:10px 14px;box-shadow:var(--shadow);animation:quiz-explain-in .32s ease-out}@keyframes quiz-explain-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.quiz-explain{animation:none}}.quiz-coach{margin:14px 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:quiz-explain-in .32s ease-out}@media(prefers-reduced-motion:reduce){.quiz-coach{animation:none}}.ws-debug-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;flex-direction:column;gap:6px;padding:calc(env(safe-area-inset-top,0px) + 8px) 8px calc(env(safe-area-inset-bottom,0px) + 8px);background:#14161a;color:#e8e8e8;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.4;overflow:hidden}.ws-debug-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:0 0 auto}.ws-debug-note{color:#8b93a1;margin-right:auto}.ws-debug-btn{min-height:32px;padding:4px 10px;border:1px solid #3a4150;border-radius:6px;background:#1f242c;color:#e8e8e8;font:inherit;cursor:pointer}.ws-debug-btn-on{background:#2f6f4f;border-color:#47a373}.ws-debug-summary{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0;flex:0 0 auto}.ws-debug-summary div{display:flex;gap:4px}.ws-debug-summary dt{color:#8b93a1}.ws-debug-summary dd{margin:0;font-weight:700}.ws-debug-warn{color:#ffb04d}.ws-debug-missed{margin:0;color:#ffb04d;flex:0 0 auto;word-break:break-word}.ws-debug-list{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;margin:0;padding:0;list-style:none;border-top:1px solid #2a303a}.ws-debug-row{display:flex;gap:6px;padding:2px 0;border-bottom:1px solid #20252d;word-break:break-word}.ws-debug-t{flex:0 0 auto;color:#6f7787;font-variant-numeric:tabular-nums}.ws-debug-kind{flex:0 0 auto;font-weight:700}.ws-debug-audio .ws-debug-kind{color:#7fc7ff}.ws-debug-play .ws-debug-kind{color:#9ee493}.ws-debug-app .ws-debug-kind{color:#c9a0ff}.ws-debug-id{flex:0 0 auto;color:#ffd479}.ws-debug-detail{color:#8b93a1}.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}}.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}.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)}}.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(/play/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(/play/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}}.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}}.ws-mascot-intro-hint{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 22px);transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-pill, 999px);background:#ffffffeb;color:var(--ink, #2b2622);font-size:var(--ws-fs-sm, .9375rem);font-weight:700;white-space:nowrap;pointer-events:none;animation:ws-mascot-intro-hint-in .26s ease-out both,ws-mascot-intro-hint-pulse 2.4s ease-in-out .6s infinite}.ws-mascot-intro-hint-chevron{font-size:1.1em;line-height:1;opacity:.7}@keyframes ws-mascot-intro-hint-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes ws-mascot-intro-hint-pulse{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-3px)}}@media(prefers-reduced-motion:reduce){.ws-mascot-intro-hint{animation:ws-mascot-intro-hint-in .26s ease-out both}}.ws-mascot-overlay{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}.ws-mascot-overlay-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-overlay--undimmed .ws-mascot-overlay-scrim{background:none}.ws-mascot-overlay--clear-top{justify-content:flex-end}.ws-mascot-overlay--clear-bottom,.ws-mascot-overlay--clear-bottom .ws-mascot-overlay-content{justify-content:flex-start}.ws-mascot-overlay--clear-top .ws-mascot-overlay-figure,.ws-mascot-overlay--clear-bottom .ws-mascot-overlay-figure{height:clamp(150px,26vh,280px)}.ws-mascot-overlay-content{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:12px;pointer-events:none}.ws-mascot-overlay-bubble{position:relative;box-sizing:border-box;width:100%;max-width:min(560px,calc(100vw - 32px));margin-inline:auto;flex:0 1 auto;min-height:0;background:var(--card, #fff);border-radius:24px;padding:16px 18px;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07))}.ws-mascot-overlay-bubble:after{content:"";position:absolute;bottom:-7px;left:50%;width:16px;height:16px;background:var(--card, #fff);transform:translate(-50%) rotate(45deg);border-radius:3px}.ws-mascot-overlay-text{margin:0;font-size:17px;font-weight:700;line-height:1.35;color:var(--ink, #2b2622);text-align:center;overflow-y:auto;max-height:100%;min-height:0}.ws-mascot-overlay-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.ws-mascot-overlay-dot{width:7px;height:7px;border-radius:50%;background:var(--line-strong, rgba(43, 38, 34, .18))}.ws-mascot-overlay-dot-active{background:var(--app-accent, #e8971e)}.ws-mascot-overlay-buttons{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:12px}.ws-mascot-overlay-cta,.ws-mascot-overlay-action{pointer-events:auto;min-height:48px;padding:0 22px;border:none;border-radius:var(--radius-pill, 999px);font-size:15px;font-weight:800;cursor:pointer}.ws-mascot-overlay-cta{background:var(--app-accent, #e8971e);color:#fff;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07))}.ws-mascot-overlay-cta:active{transform:scale(.96);background:var(--app-accent-deep, #c5801a)}.ws-mascot-overlay-action{background:transparent;color:var(--app-accent-deep, #c5801a);border:2px solid var(--app-accent-deep, #c5801a)}.ws-mascot-overlay-action:active{transform:scale(.96)}.ws-mascot-overlay-figure{display:block;flex:0 1 auto;min-height:0;height:clamp(180px,38vh,420px);width:auto;max-width:min(86vw,420px);max-height:100%;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(43,38,34,.38))}.ws-mascot-overlay-entering .ws-mascot-overlay-scrim,.ws-mascot-overlay-idle .ws-mascot-overlay-scrim,.ws-mascot-overlay-speaking .ws-mascot-overlay-scrim{animation:ws-overlay-scrim-in .2s ease both}.ws-mascot-overlay-entering .ws-mascot-overlay-figure,.ws-mascot-overlay-idle .ws-mascot-overlay-figure{animation:ws-overlay-figure-in .42s cubic-bezier(.22,1.15,.36,1) both}.ws-mascot-overlay-entering .ws-mascot-overlay-bubble,.ws-mascot-overlay-idle .ws-mascot-overlay-bubble,.ws-mascot-overlay-speaking .ws-mascot-overlay-bubble{animation:ws-overlay-bubble-in .2s ease .08s both}.ws-mascot-overlay-speaking .ws-mascot-overlay-figure{animation:ws-overlay-figure-bob 1.8s ease-in-out infinite}.ws-mascot-overlay-leaving .ws-mascot-overlay-scrim{animation:ws-overlay-scrim-out .18s ease both}.ws-mascot-overlay-leaving .ws-mascot-overlay-figure{animation:ws-overlay-figure-out .18s ease both}.ws-mascot-overlay-leaving .ws-mascot-overlay-bubble{animation:ws-overlay-bubble-out .18s ease both}@keyframes ws-overlay-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes ws-overlay-scrim-out{0%{opacity:1}to{opacity:0}}@keyframes ws-overlay-figure-in{0%{opacity:0;transform:translateY(45%)}to{opacity:1;transform:translateY(0)}}@keyframes ws-overlay-figure-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(45%)}}@keyframes ws-overlay-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-overlay-bubble-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes ws-overlay-bubble-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}@media(prefers-reduced-motion:reduce){.ws-mascot-overlay-entering .ws-mascot-overlay-figure,.ws-mascot-overlay-idle .ws-mascot-overlay-figure,.ws-mascot-overlay-entering .ws-mascot-overlay-bubble,.ws-mascot-overlay-idle .ws-mascot-overlay-bubble,.ws-mascot-overlay-speaking .ws-mascot-overlay-bubble{animation:ws-overlay-scrim-in .2s ease both}.ws-mascot-overlay-speaking .ws-mascot-overlay-figure{animation:none}.ws-mascot-overlay-leaving .ws-mascot-overlay-figure,.ws-mascot-overlay-leaving .ws-mascot-overlay-bubble{animation:ws-overlay-scrim-out .18s ease both}.ws-mascot-overlay-cta:active,.ws-mascot-overlay-action:active{transform:none}}.mascot-coach{display:contents}.round-coach-skip{position:fixed;top:var(--top-chrome-bottom, 76px);right:12px;z-index:25;min-height:44px;padding:0 18px;border:none;border-radius:var(--radius-pill, 999px);background:var(--card, #fff);color:var(--app-accent-deep, #c5801a);font-size:14px;font-weight:800;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));cursor:pointer}.round-coach-skip:active{transform:scale(.96)}@media(prefers-reduced-motion:reduce){.round-coach-skip:active{transform:none}}.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}.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)}.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}}.daylight{position:relative;width:56px;height:56px;border-radius:50%;overflow:hidden;flex:0 0 auto;box-shadow:0 1px 3px #0000002e}.daylight-sky{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#8fd0f5,#cfeafb);transition:background 1.2s ease}.daylight-sun{position:absolute;left:50%;top:calc(var(--daylight-sun-top, 0%) * .38 + 13.6%);width:36.4%;height:36.4%;margin-left:-18.2%;border-radius:50%;background:#ffd452;box-shadow:0 0 8px 2px #ffc83c8c;transition:top 1.2s ease,background 1.2s ease,box-shadow 1.2s ease}.daylight-ground{position:absolute;inset:auto 0 0 0;height:30%;background:linear-gradient(180deg,#7fbf6a,#5da24c)}.daylight--sinking .daylight-sky{background:linear-gradient(180deg,#a9d8f0,#ffe0b2)}.daylight--setting .daylight-sky{background:linear-gradient(180deg,#f6b98a,#f8d9a0)}.daylight--setting .daylight-sun{background:#ffb648;box-shadow:0 0 10px 3px #ff963c73}@media(prefers-reduced-motion:reduce){.daylight-sky,.daylight-sun{transition:none}}.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}}.playing-picker-screen{display:flex;flex-direction:column;background:var(--card)}.playing-picker-head{display:flex;align-items:center;min-height:56px;padding-top:8px}.playing-picker-back{display:grid;place-items:center;width:56px;height:56px;margin-left:-14px;border:0;background:none;font-family:inherit;font-size:1.5rem;color:var(--ink-soft);cursor:pointer}.playing-picker-title{margin:4px 0 2px;font-size:1.6rem;font-weight:800;text-align:center;text-wrap:balance}.playing-picker-sub{margin:0 0 18px;font-size:.95rem;color:var(--ink-soft);text-align:center;text-wrap:balance}.playing-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.playing-picker-row{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:12px 15px;border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--card);font-family:inherit;font-size:1.05rem;font-weight:700;color:var(--ink);text-align:left;cursor:pointer;transition:transform .15s ease}.playing-picker-row:active{transform:scale(.985)}.playing-picker-row-current{border-color:var(--ui-accent);background:var(--bg-bottom)}.playing-picker-icon{flex:0 0 auto;font-size:1.5rem;line-height:1}.playing-picker-text{flex:1;min-width:0}.playing-picker-name{display:block}.playing-picker-meta{display:block;margin-top:1px;font-size:.85rem;font-weight:500;color:var(--ink-soft)}.playing-picker-tag{flex:0 0 auto;padding:4px 10px;border-radius:999px;background:#34c77b24;color:#1f7a4d;font-size:.8rem;font-weight:800}.playing-picker-chev{flex:0 0 auto;color:var(--ink-soft);opacity:.6}.playing-picker-extra{margin-top:14px;border-style:dashed;color:var(--ink-soft)}.playing-picker-lock{flex:0 0 auto;padding:4px 10px;border-radius:999px;background:#2b26220f;color:var(--ink-soft);font-size:.8rem;font-weight:800;white-space:nowrap}@media(prefers-reduced-motion:reduce){.playing-picker-row{transition:none}.playing-picker-row:active{transform:none}}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/play/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(/play/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(/play/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(/play/assets/andika-latin-400-normal-BTFTIZb-.woff2) format("woff2"),url(/play/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(/play/assets/andika-latin-700-normal-Dk95f5lc.woff2) format("woff2"),url(/play/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(/play/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}:root{--app-accent: #e8971e;--app-accent-deep: #c5801a;--ws-accent-sunset: #e5623c}:root{--radius-pill: 999px;--ws-space-xs: 8px;--ws-space-sm: 16px;--ws-space-md: 24px;--ws-space-lg: 32px;--ws-space-xl: 48px;--ws-fs-xs: .8125rem;--ws-fs-sm: .875rem;--ws-fs-base: 1rem;--ws-fs-md: 1.125rem;--ws-fs-lg: 1.375rem}@media(min-width:720px)and (orientation:portrait){body{background-image:linear-gradient(#fffdf8ad,#fffdf8ad),url(/play/backgrounds/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(/play/backgrounds/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:1100px)and (orientation:landscape){body{background-image:linear-gradient(#fffdf880,#fffdf880),url(/play/backgrounds/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.start-screen{background-image:linear-gradient(#fffdf8e6,#fffdf8e6),url(/play/backgrounds/savanna-1920.webp);background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat}#root .ws-calm-screen{--ws-calm-plate: linear-gradient( to bottom, rgba(255, 253, 248, .62) 0%, rgba(255, 253, 248, .34) 42%, rgba(255, 253, 248, .5) 100% ), url(/play/img/savanna-portrait-704.webp)}#root .ws-calm-screen:where([data-ws-screen=auth],[data-ws-screen=add-kid],[data-ws-screen=guest-name],[data-ws-screen=language-pick],[data-ws-screen=level-confirm],[data-ws-screen=placement-handoff],[data-ws-screen=upgrade],:not(.screen)){background-image:var(--ws-calm-plate);background-size:cover;background-position:center 38%;background-repeat:no-repeat}@media(min-height:780px){#root .ws-calm-screen:where([data-ws-screen=add-kid],[data-ws-screen=guest-name],[data-ws-screen=language-pick],[data-ws-screen=level-confirm],[data-ws-screen=placement-handoff]){--ws-art-h: clamp(64px, calc(50vh - 320px) , 154px);background-image:url(/play/img/animal-giraffe-192.webp),url(/play/img/animal-meerkats-264.webp),var(--ws-calm-plate);background-size:auto var(--ws-art-h),auto calc(var(--ws-art-h) * .655),cover,cover;background-position:left 10px bottom 0,right 12px bottom 0,center,center 38%;background-repeat:no-repeat}}#root .screen.roundend-screen{background-image:linear-gradient(to bottom,#fffdf89e,#fffdf857 42%,#fffdf880),url(/play/img/savanna-portrait-704.webp);background-size:cover;background-position:center 38%;background-repeat:no-repeat}@media(min-width:1921px){.screen.start-screen{background-image:linear-gradient(#fffdf8e6,#fffdf8e6),url(/play/backgrounds/savanna-2752.webp)}}#root .ws-demo-end-screen{background-image:linear-gradient(#fffdf8e6,#fffdf8e6),url(/play/backgrounds/savanna-1920.webp);background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat}.ws-wordmark{display:flex;align-items:center;gap:10px;font-family:var(--font)}.ws-wordmark--lockup{flex-direction:column;gap:6px}.ws-wordmark--inline{flex-direction:row}.ws-wordmark-glyph{font-size:48px;line-height:1}.ws-wordmark--inline .ws-wordmark-glyph{font-size:26px}.ws-wordmark-name{font-weight:700;font-size:28px;line-height:1.1;letter-spacing:.01em;color:var(--app-accent-deep);margin:0}.ws-wordmark--inline .ws-wordmark-name{font-size:20px}.setup-start{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 32px;border:none;border-radius:var(--radius-pill, 999px);background:var(--app-accent, #e8971e);color:#fff;font-family:inherit;font-weight:700;font-size:var(--ws-fs-md, 1.125rem);cursor:pointer;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));transition:background-color .15s ease,transform .1s ease,opacity .2s ease}.setup-start:hover:not(:disabled){background:var(--app-accent-deep, #c5801a)}.setup-start:active:not(:disabled){transform:scale(.96);background:var(--app-accent-deep, #c5801a)}.setup-start:disabled{opacity:.35;pointer-events:none}.round-screen .mode{padding-block:clamp(8px,4vh,48px)}.round-screen .mode-prompt,.round-screen .mode-answers{flex:1 1 auto;min-block-size:min-content}@media(max-height:520px){.round-screen .mode{padding-block:4px;gap:8px}.round-screen .choice-grid{gap:8px}.round-screen .choice{min-height:56px}}.ws-auth-screen{min-height:100dvh;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;background-color:var(--bg-top, #fffdf8);position:relative;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.screen.ws-keyboard-avoid{padding:calc(var(--safe-top, 0px) + 12px) calc(var(--safe-right, 0px) + 20px) calc(var(--safe-bottom, 0px) + 16px + var(--ws-keyboard-inset, 0px)) calc(var(--safe-left, 0px) + 20px);scroll-padding-top:16px;scroll-padding-bottom:calc(16px + var(--ws-keyboard-inset, 0px))}.ws-auth-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#fffdf8a6,#e8971e24);pointer-events:none}.ws-auth-card{width:100%;max-width:420px;box-sizing:border-box;position:relative;background:#fffffff0;border-radius:var(--radius, 20px);box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));border:1px solid var(--line, rgba(43, 38, 34, .05));padding:var(--ws-space-lg, 32px) var(--ws-space-md, 24px);display:flex;flex-direction:column}.ws-auth-brand{display:flex;justify-content:center;margin-bottom:var(--ws-space-sm, 16px)}.ws-auth-title{font-family:var(--font, "Quicksand Variable", ui-rounded, -apple-system, sans-serif);font-size:var(--ws-fs-lg, 1.375rem);font-weight:700;color:var(--ink, #2b2622);text-align:center;margin:0 0 6px}.ws-auth-subtitle{font-size:var(--ws-fs-md, 1.125rem);color:var(--ink-soft, #736b62);text-align:center;margin:0 0 22px;line-height:1.45}.ws-auth-form{display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px)}.ws-auth-field{display:flex;flex-direction:column;gap:6px;text-align:left}.ws-auth-label{font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622)}.ws-auth-input{min-height:48px;padding:0 14px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));font-size:var(--ws-fs-base, 1rem);font-family:inherit;color:var(--ink, #2b2622);background:#fff;box-sizing:border-box}.ws-auth-input:focus-visible{outline:3px solid var(--app-accent, #e8971e);outline-offset:1px}.ws-auth-input[aria-invalid=true]{border-color:#b3261e}.ws-auth-hint{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62);margin:0}.ws-auth-field-error{font-size:var(--ws-fs-xs, .8125rem);color:#b3261e;margin:0}.ws-auth-error{font-size:var(--ws-fs-sm, .875rem);color:#b3261e;background:#b3261e14;border-radius:var(--radius-sm, 14px);padding:10px 14px;margin:0;line-height:1.4}.ws-auth-submit{min-height:52px;border:none;border-radius:var(--radius-sm, 14px);background:var(--app-accent, #e8971e);color:#fff;font-family:inherit;font-weight:700;font-size:var(--ws-fs-md, 1.125rem);cursor:pointer;transition:background-color .15s ease,transform .1s ease}.ws-auth-submit:hover:not(:disabled){background:var(--app-accent-deep, #c5801a)}.ws-auth-submit:active:not(:disabled){transform:scale(.98)}.ws-auth-submit:disabled{background:var(--app-accent, #e8971e);opacity:.78;cursor:default}.ws-auth-inline-link{display:inline;background:none;border:none;padding:0;margin:0;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.ws-auth-reassure{text-align:center;font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62);margin:6px 0 0}.ws-auth-code-section{margin-top:var(--ws-space-md, 24px);display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px)}.ws-auth-code-label{font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622);text-align:center;margin:0}.ws-auth-code-email{font-weight:800;overflow-wrap:anywhere}.ws-auth-steps{list-style:none;margin:var(--ws-space-md, 24px) 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.ws-auth-step{display:flex;align-items:flex-start;gap:10px;text-align:left}.ws-auth-step-num{flex:0 0 auto;width:20px;height:20px;border-radius:var(--radius-pill, 999px);background:#e8971e29;color:var(--app-accent-deep, #c5801a);font-size:.75rem;font-weight:700;line-height:20px;text-align:center}.ws-auth-step-text{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62);line-height:1.4}.ws-auth-switch{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:var(--ws-space-md, 24px)}.ws-auth-switch-label{font-size:var(--ws-fs-sm, .875rem);color:var(--ink-soft, #736b62)}.ws-auth-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 8px;background:none;border:none;color:var(--app-accent-deep, #c5801a);font-weight:700;font-size:var(--ws-fs-base, 1rem);font-family:inherit;cursor:pointer;text-decoration:underline}.ws-auth-forgot{align-self:center;margin-top:-6px}@media(min-width:720px){.ws-auth-card{padding:var(--ws-space-xl, 48px) var(--ws-space-lg, 32px)}}.ws-auth-back{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;margin:0 0 4px -8px;padding:0 8px;border:none;background:none;color:var(--ink-soft, #6b6259);font-size:15px;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.ws-auth-back:active{color:var(--app-accent-deep, #c5801a)}.ws-auth-suggest{margin:-2px 0 10px;font-size:.9rem;color:var(--ink-soft);text-align:left}.ws-mascot{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;max-width:100%;border-radius:50%;border:3px solid #ffffff;box-shadow:0 6px 20px #2b262224;padding:0;margin:0;background:linear-gradient(180deg,#ffebcb,#ffd3a8)}button.ws-mascot{cursor:pointer;border-style:solid;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}button.ws-mascot:active{transform:scale(.96)}@media(prefers-reduced-motion:reduce){button.ws-mascot:active{transform:none}}.ws-mascot-img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.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}.ws-trail-card{display:flex;flex-direction:column;gap:8px;width:100%;max-width:min(100%,420px);box-sizing:border-box;padding:14px 18px;border:none;border-radius:var(--radius, 20px);background:var(--card);box-shadow:var(--shadow);font-family:inherit;text-align:left;color:inherit}button.ws-trail-card{cursor:pointer;min-height:44px;transition:transform .12s ease}button.ws-trail-card:active{transform:scale(.99)}.ws-trail-head{display:flex;align-items:center;gap:8px}.ws-trail-emoji{font-size:26px;line-height:1}.ws-trail-title{flex:1;min-width:0;font-weight:700;font-size:var(--ws-fs-base, 1rem);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-trail-camp{flex-shrink:0;font-weight:700;font-size:var(--ws-fs-sm, .875rem);color:var(--ink-soft)}.ws-trail-stones{display:flex;align-items:center;gap:4px}.ws-trail-stone{width:16px;height:16px;flex:none;border-radius:50%;background:#2b26221a}.ws-trail-stone--done{background:var(--app-accent, #e8971e)}.ws-trail-stone--marker{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;background:none}.ws-trail-stone--quest{border:2px solid var(--app-accent, #e8971e);background:#e8971e29;box-shadow:0 0 6px #e8971e73}.ws-trail-stone--ahead{border:1px solid var(--line);background:transparent}.ws-trail-next{margin-left:4px;font-size:20px;line-height:1;opacity:.45}.ws-trail-caption{font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink-soft)}@media(prefers-reduced-motion:reduce){button.ws-trail-card:active{transform:none}}.ws-lock-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 16px;box-sizing:border-box;border-radius:var(--radius-pill, 999px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-weight:600;font-size:var(--ws-fs-sm, .875rem);cursor:pointer;box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07));transition:background-color .15s ease,transform .1s ease}.ws-lock-chip-glyph{font-size:16px;line-height:1}.ws-lock-chip:hover{background:var(--bg-bottom, #fff4e2)}.ws-lock-chip:active{transform:scale(.96)}.ws-settings-install{margin:var(--ws-space-sm, 16px) 0 var(--ws-space-md, 24px);text-align:left}.ws-install-guide{text-align:left}.ws-install-guide-cta{width:100%}.ws-install-guide-note{margin:var(--ws-space-xs, 8px) 0 0;font-size:var(--ws-fs-sm, .875rem);line-height:1.45;color:var(--ink-soft, #736b62)}.ws-install-guide-done{padding:14px;border-radius:var(--radius-sm, 14px);background:#34c77b1f}.ws-install-guide-done-text{margin:0;font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622)}.ws-install-guide-steps{margin:0;padding-left:1.4em;display:flex;flex-direction:column;gap:8px;font-size:var(--ws-fs-sm, .875rem);line-height:1.45;color:var(--ink, #2b2622)}.ws-install-guide-steps li{padding-left:2px}.ws-install-share-icon{vertical-align:-3px;color:var(--app-accent-deep, #c5801a)}.ws-install-banner{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;margin-top:var(--ws-space-sm, 16px);padding:10px 8px 10px 14px;border-radius:var(--radius-sm, 14px);background:#e8971e1a;border:1px solid rgba(232,151,30,.28)}.ws-install-banner-body{flex:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;min-height:44px;padding:4px 0;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer}.ws-install-banner-text{font-size:var(--ws-fs-sm, .875rem);color:var(--ink, #2b2622)}.ws-install-banner-cta{font-size:var(--ws-fs-sm, .875rem);font-weight:700;color:var(--app-accent-deep, #c5801a);white-space:nowrap}.ws-install-banner-dismiss{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:none;background:none;color:var(--ink-soft, #736b62);font-size:1.1rem;line-height:1;cursor:pointer}.ws-games-legend{margin:var(--ws-space-sm, 16px) 0 var(--ws-space-md, 24px);text-align:left}.ws-games-legend-summary{cursor:pointer;font-size:var(--ws-fs-sm, .875rem);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft, #736b62);padding:4px 0;min-height:44px;display:flex;align-items:center}.ws-games-legend-intro{margin:4px 0 var(--ws-space-sm, 16px);font-size:var(--ws-fs-xs, .8125rem);line-height:1.45;color:var(--ink-soft, #736b62)}.ws-games-legend-group+.ws-games-legend-group{margin-top:var(--ws-space-sm, 16px)}.ws-games-legend-group-title{margin:0 0 8px;font-size:var(--ws-fs-sm, .875rem);font-weight:700;color:var(--ink, #2b2622)}.ws-games-legend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ws-games-legend-item{display:flex;flex-direction:column;gap:1px}.ws-games-legend-item-name{font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622)}.ws-games-legend-item-desc{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.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}}.screen.ws-home-screen{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto minmax(min-content,1fr) auto;row-gap:12px;align-content:stretch;justify-items:center}.screen.ws-home-screen--even{grid-template-rows:auto auto auto minmax(min-content,max-content) auto;align-content:space-between}#root .screen.ws-home-screen{background-image:linear-gradient(to bottom,#fffdf8f0,#fffdf8f0 38%,#fffdf8b3 62%,#fffdf8bd),url(/play/mascot/habitat-home-1024.webp);background-size:cover;background-position:center;background-repeat:no-repeat}.ws-home-row{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.ws-home-hero{width:100%;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.ws-home-hero-solo{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:100%}.ws-home-hero-row{display:flex;align-items:center;justify-content:center;gap:clamp(16px,5vw,32px);max-width:100%}.ws-home-mascot{flex:none}.ws-home-mascot-wrap{position:relative;display:inline-flex;flex:none}.ws-home-hero.ws-home-hero--tail{margin-bottom:-12px}.ws-home-play-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--ws-space-sm, 16px);margin:0}.ws-home-screen .play-btn{margin:0;width:clamp(132px,20vh,176px);background:radial-gradient(ellipse 62% 42% at 42% 14%,#ffffff6b,#fff0 70%),linear-gradient(170deg,color-mix(in srgb,var(--ws-accent-sunset, #e5623c) 56%,#ffb07a) 0%,var(--ws-accent-sunset, #e5623c) 46%,color-mix(in srgb,var(--ws-accent-sunset, #e5623c) 72%,#8f2d10) 100%);box-shadow:inset 0 -16px 28px #8c281052,inset 0 10px 16px #ffe2cd4d,0 0 0 6px #fffdf8d1,0 0 0 12px #e8971e42,0 16px 30px #96381e57;animation:ws-play-breathe 3.6s ease-in-out infinite;transition:transform .12s ease,box-shadow .12s ease}.ws-home-screen .play-btn svg{width:44%;height:44%;filter:drop-shadow(0 3px 6px rgba(122,38,16,.34))}@media(min-width:720px){.ws-home-screen .play-btn{width:clamp(176px,19vh,260px)}}.ws-home-screen .play-btn:active{transform:scale(.93);animation:none;background:radial-gradient(ellipse 62% 42% at 42% 14%,#ffffff38,#fff0 70%),linear-gradient(170deg,var(--ws-accent-sunset, #e5623c) 0%,color-mix(in srgb,var(--ws-accent-sunset, #e5623c) 66%,#8f2d10) 100%);box-shadow:inset 0 12px 22px #8c281057,inset 0 -6px 12px #ffe2cd29,0 0 0 6px #fffdf8d1,0 0 0 10px #e8971e52,0 4px 9px #96381e57}@keyframes ws-play-breathe{0%,to{transform:scale(1);box-shadow:inset 0 -16px 28px #8c281052,inset 0 10px 16px #ffe2cd4d,0 0 0 6px #fffdf8d1,0 0 0 12px #e8971e42,0 16px 30px #96381e57}50%{transform:scale(1.035);box-shadow:inset 0 -16px 28px #8c281052,inset 0 10px 16px #ffe2cd4d,0 0 0 7px #fffdf8eb,0 0 0 16px #e8971e57,0 20px 36px #96381e5c}}@media(prefers-reduced-motion:reduce){.ws-home-screen .play-btn{animation:none}.ws-home-screen .play-btn:active{transform:none}}.ws-home-shelf{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px}.ws-earned-card{display:flex;align-items:center;gap:14px;width:100%;box-sizing:border-box;max-width:min(100%,420px);padding:12px 18px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius, 20px);box-shadow:var(--shadow)}.ws-earned-card .egg-widget{flex:1;min-width:0;background:none;border:none;box-shadow:none;padding:0}.ws-earned-card .reserve-btn{flex:none;background:#e8971e24;border:none;box-shadow:none}.ws-home-scrim{position:fixed;top:0;bottom:0;left:50%;width:100vw;margin-left:-50vw;z-index:100;background:linear-gradient(to bottom,#3a240e9e,#4a2e1285 62%,#603c1670);pointer-events:none;animation:ws-home-scrim-in .2s ease both}@keyframes ws-home-scrim-in{0%{opacity:0}to{opacity:1}}.ws-home-row--spot .ws-trail-card,.ws-earned-card--spot-egg .egg-widget,.ws-earned-card--spot-reserve .reserve-btn{position:relative;z-index:300;animation:ws-spot-glow 1.9s ease-in-out infinite}.ws-home-row--spot .ws-trail-card{border-radius:var(--radius, 20px)}.ws-earned-card--spot-egg .egg-widget{border-radius:14px;background:var(--card, #fff)}.ws-earned-card--spot-reserve .reserve-btn{background:var(--card, #fff)}@keyframes ws-spot-glow{0%,to{box-shadow:0 0 0 6px #fffdf8f7,0 0 0 10px #e8971ed9,0 8px 22px #2b262257}50%{box-shadow:0 0 0 6px #fffdf8f7,0 0 0 12px #e8971e,0 8px 26px #2b262266}}.ws-home-row--spot-today .ws-trail-caption{display:inline-block;align-self:flex-start;padding:2px 10px;margin-left:-10px;border-radius:var(--radius-pill, 999px);background:#e8971e33;color:var(--ink, #2b2622);animation:ws-spot-today 1.9s ease-in-out infinite}.ws-home-row--spot-today .ws-trail-stone--quest{animation:ws-spot-today 1.9s ease-in-out infinite}@keyframes ws-spot-today{0%,to{box-shadow:0 0 #e8971e8c}50%{box-shadow:0 0 0 5px #e8971e00}}@media(prefers-reduced-motion:reduce){.ws-home-row--spot .ws-trail-card,.ws-earned-card--spot-egg .egg-widget,.ws-earned-card--spot-reserve .reserve-btn{animation:none;box-shadow:0 0 0 6px #fffdf8f7,0 0 0 11px #e8971eeb,0 8px 22px #2b262257}.ws-home-row--spot-today .ws-trail-caption,.ws-home-row--spot-today .ws-trail-stone--quest,.ws-home-scrim{animation:none}}.ws-guest-lane{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}.ws-guest-sheet-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:var(--ws-keyboard-inset, 0px)}.ws-guest-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#2b262259;cursor:pointer}.ws-guest-sheet{position:relative;width:100%;max-width:480px;margin-inline:auto;box-sizing:border-box;background:var(--bg-top, #fffdf8);border-radius:var(--radius, 20px) var(--radius, 20px) 0 0;box-shadow:0 -8px 30px #2b26222e;padding:var(--ws-space-md, 24px) var(--ws-space-md, 24px) calc(var(--safe-bottom, 0px) + var(--ws-space-md, 24px));display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px);max-height:85%;overflow-y:auto}.ws-guest-sheet .ws-auth-title{margin-bottom:0}.ws-guest-sheet .ws-auth-switch{margin-top:0}.ws-guest-lang-row{display:flex;gap:8px}.ws-guest-lang-tile{flex:1 1 0;min-width:0;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;font-family:inherit;cursor:pointer;transition:transform .12s ease}.ws-guest-lang-tile:active{transform:scale(.96)}.ws-guest-lang-tile[aria-pressed=true]{border-color:var(--app-accent, #e8971e);outline:2px solid var(--app-accent, #e8971e);outline-offset:-1px;background:#e8971e1a}.ws-guest-lang-flag{font-size:22px;line-height:1}.ws-guest-lang-name{font-size:var(--ws-fs-xs, .8125rem);font-weight:700;color:var(--ink, #2b2622)}.ws-save-progress-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:var(--radius-pill, 999px);border:1px solid rgba(232,151,30,.45);background:#e8971e1f;color:var(--app-accent-deep, #c5801a);font-family:inherit;font-size:var(--ws-fs-xs, .8125rem);font-weight:700;white-space:nowrap;cursor:pointer}.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}.ws-settings-screen{min-height:100dvh;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;background-color:var(--bg-top, #fffdf8);overflow-y:auto;-webkit-overflow-scrolling:touch}.ws-settings-card{width:100%;max-width:420px}.ws-settings-actions{display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px);margin-top:var(--ws-space-xs, 8px)}.ws-settings-secondary{min-height:48px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-weight:600;font-size:var(--ws-fs-base, 1rem);cursor:pointer}.ws-settings-close{margin-top:var(--ws-space-md, 24px);align-self:center}.ws-settings-sound{margin:0 0 var(--ws-space-md, 24px);text-align:left}.ws-settings-sound-hint{margin:var(--ws-space-xs, 8px) 0 0}.ws-settings-sound-state-on{color:#1e6b46}.ws-settings-sound-state-off{color:var(--ink-soft, #736b62)}.ws-settings-tips{margin-bottom:var(--ws-space-md, 24px)}.ws-settings-langs{margin:var(--ws-space-sm, 16px) 0 var(--ws-space-md, 24px);text-align:left}.ws-settings-langs-title{margin:0 0 4px;font-size:var(--ws-fs-sm, .875rem);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft, #736b62)}.ws-settings-langs-hint{margin:0 0 var(--ws-space-xs, 8px);font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-settings-lang-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px)}.ws-settings-lang-row{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-size:var(--ws-fs-base, 1rem)}button.ws-settings-lang-row{cursor:pointer}.ws-settings-lang-flag{font-size:22px;line-height:1}.ws-settings-lang-name{flex:1;text-align:left;font-weight:600}.ws-settings-lang-state{font-size:var(--ws-fs-sm, .875rem);font-weight:700}.ws-settings-lang-on{background:#34c77b1a;border-color:#34c77b59}.ws-settings-lang-on .ws-settings-lang-state{color:#1e6b46}.ws-settings-lang-add .ws-settings-lang-state{color:var(--app-accent-deep, #c5801a)}.ws-settings-lang-confirm{margin-top:var(--ws-space-xs, 8px);display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px);padding:14px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);background:#e8971e1a;text-align:left}.ws-settings-lang-confirm .ws-auth-input+.ws-auth-label{margin-top:6px}.ws-settings-lang-confirm-text{margin:0 0 12px;font-size:var(--ws-fs-sm, .875rem);line-height:1.45;color:var(--ink, #2b2622)}.ws-settings-lang-confirm-actions{display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px)}.ws-settings-lang-confirm-go{width:100%}.ws-settings-lang-done{margin:var(--ws-space-xs, 8px) 0 0;padding:12px 14px;border-radius:var(--radius-sm, 14px);background:#34c77b1f;font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622)}.ws-settings-danger{border-color:#b3261e73;color:#b3261e}.ws-settings-danger:disabled{opacity:.55;cursor:not-allowed}.ws-settings-delete-confirm{display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px);padding:14px;border-radius:var(--radius-sm, 14px);background:#b3261e14;text-align:left}.ws-settings-delete-text{margin:0;font-size:var(--ws-fs-sm, .875rem);line-height:1.45;color:var(--ink, #2b2622)}.ws-settings-delete-go{width:100%}.ws-settings-legal{margin:18px 0 0;text-align:center;font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-settings-legal a,.ws-settings-legal button{color:inherit;text-decoration:underline;background:none;border:none;padding:0;font:inherit;cursor:pointer}.ws-parents-block{margin:0;padding:var(--ws-space-md, 24px) 0;text-align:left;border-top:1px solid rgba(43,38,34,.1)}.ws-parents-block:first-of-type{padding-top:0;border-top:none}.ws-parents-block-title{margin:0 0 var(--ws-space-xs, 8px);font-size:var(--ws-fs-sm, .875rem);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft, #736b62)}.ws-parents-block-note{margin:0 0 var(--ws-space-sm, 16px);font-size:var(--ws-fs-sm, .875rem);line-height:1.45;color:var(--ink-soft, #736b62)}.ws-parents-subblock{margin:var(--ws-space-sm, 16px) 0 0}.ws-parents-subblock .ws-parents-block-title{text-transform:none;letter-spacing:normal;font-size:var(--ws-fs-base, 1rem);color:var(--ink, #2b2622)}.ws-parents-plus-status{margin:0;padding:12px 14px;border-radius:var(--radius-sm, 14px);background:#34c77b1f;color:var(--ink, #2b2622);font-size:var(--ws-fs-sm, .875rem);font-weight:600;text-align:center}.ws-parents-plus-cta{width:100%;border-color:var(--app-accent, #e8971e);color:var(--app-accent-deep, #c5801a)}.ws-kid-list{display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px);margin-bottom:var(--ws-space-sm, 16px)}.ws-kid-card{display:flex;flex-direction:column;gap:10px;padding:14px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;overflow:hidden}.ws-kid-card-active{border-color:#e8971e73;background:#e8971e12}.ws-kid-head{display:flex;align-items:center;gap:10px;min-width:0}.ws-kid-avatar{flex:0 0 auto;width:34px;height:34px;border-radius:var(--radius-pill, 999px);background:var(--bg-bottom, #fff4e2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--ws-fs-base, 1rem);color:var(--app-accent-deep, #c5801a)}.ws-kid-name{flex:1 1 auto;min-width:0;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:none;hyphens:none;font-weight:700;font-size:var(--ws-fs-md, 1.125rem);line-height:1.3;color:var(--ink, #2b2622)}.ws-kid-pill{flex:0 0 auto;padding:4px 10px;border-radius:var(--radius-pill, 999px);background:#34c77b24;font-size:var(--ws-fs-xs, .8125rem);font-weight:700;color:#1e6b46;white-space:nowrap}.ws-kid-levels{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.ws-kid-level-chip{padding:4px 10px;border-radius:var(--radius-pill, 999px);background:var(--bg-bottom, #fff4e2);font-size:var(--ws-fs-xs, .8125rem);font-weight:600;color:var(--ink, #2b2622)}.ws-kid-level-chip-button{display:inline-flex;align-items:center;min-height:44px;border:1.5px solid transparent;font-family:inherit;line-height:1.2;text-align:left;cursor:pointer}.ws-kid-level-chip-button:hover{border-color:var(--accent, #e08a2e)}.ws-kid-level-chip-button:focus-visible{outline:3px solid var(--accent, #e08a2e);outline-offset:2px}.ws-kid-level-chip-off{background:#2b26220f;color:var(--ink-soft, #736b62)}.ws-kid-note{margin:0;font-size:var(--ws-fs-xs, .8125rem);line-height:1.45;color:var(--ink-soft, #736b62)}.ws-kid-actions{display:flex;flex-wrap:wrap;gap:8px}.ws-kid-action{flex:0 1 auto;min-width:0;min-height:44px;padding:10px 14px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-weight:600;font-size:var(--ws-fs-sm, .875rem);overflow-wrap:break-word;cursor:pointer}.ws-kid-action-primary{flex:1 1 100%;border-color:var(--app-accent, #e8971e);background:var(--app-accent, #e8971e);color:#fff;font-weight:700;font-size:var(--ws-fs-base, 1rem)}.ws-kid-action-primary:hover:not(:disabled){background:var(--app-accent-deep, #c5801a);border-color:var(--app-accent-deep, #c5801a)}.ws-kid-action-danger{flex:0 0 auto;margin-left:auto;border-color:transparent;background:none;color:#a2564e;font-weight:600;text-decoration:underline}.ws-kid-action-danger:hover{color:#b3261e}.ws-kid-panel{margin:var(--ws-space-xs, 8px) 0 0;display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px);padding:14px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);background:#e8971e1a;text-align:left}.ws-kid-panel-danger{background:#b3261e14}.ws-kid-panel-go{width:100%}.ws-parents-control{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:0 14px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-weight:600;font-size:var(--ws-fs-base, 1rem);text-align:left;cursor:pointer}.ws-parents-control-label{flex:1 1 auto;min-width:0}.ws-parents-control-state{flex:0 0 auto;font-size:var(--ws-fs-sm, .875rem);font-weight:700;color:var(--ink-soft, #736b62)}.ws-parents-control-state-on{color:#1e6b46}.ws-parents-who{align-items:center;padding-top:8px;padding-bottom:8px}.ws-parents-who-sub{display:block;margin-top:2px;font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink-soft, #736b62);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-parents-block .ws-games-legend{margin:0}.ws-parents-block .ws-games-legend-summary{gap:10px;padding:0 14px;min-height:48px;box-sizing:border-box;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-size:var(--ws-fs-base, 1rem);font-weight:600;text-transform:none;letter-spacing:normal;list-style:none}.ws-parents-block .ws-games-legend-summary::-webkit-details-marker{display:none}.ws-parents-block .ws-games-legend-summary:before{content:"🎲";flex:0 0 auto}.ws-parents-block .ws-games-legend-summary:after{content:"⌄";margin-left:auto;flex:0 0 auto;font-size:1.2rem;line-height:.6;color:var(--ink-soft, #736b62)}.ws-parents-block details[open]>.ws-games-legend-summary:after{content:"⌃";line-height:1.2}.ws-parents-block .ws-games-legend-intro{margin-top:var(--ws-space-sm, 16px)}.ws-settings-legal a,.ws-settings-legal button{display:inline-block;padding:12px 6px;min-height:44px;box-sizing:border-box}.ws-parents-pinpad{display:grid;grid-template-columns:repeat(3,minmax(44px,1fr));gap:8px}.ws-parents-pinkey{min-height:52px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-family:inherit;font-size:var(--ws-fs-md, 1.125rem);font-weight:700;cursor:pointer}.ws-parents-unadopted-list{list-style:none;margin:0 0 var(--ws-space-sm, 16px);padding:0;display:flex;flex-direction:column;gap:8px}.ws-parents-unadopted-item{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:var(--bg-top, #fffdf8)}.ws-parents-unadopted-name{font-size:var(--ws-fs-base, 1rem);font-weight:700;color:var(--ink, #2b2622);overflow-wrap:break-word}.ws-parents-unadopted-summary{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-upgrade-screen{min-height:100dvh;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;padding:calc(var(--safe-top, 0px) + var(--ws-space-md, 24px)) calc(var(--safe-right, 0px) + var(--ws-space-md, 24px)) calc(var(--safe-bottom, 0px) + var(--ws-space-md, 24px)) calc(var(--safe-left, 0px) + var(--ws-space-md, 24px));background-color:var(--bg-top, #fffdf8);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ws-upgrade-card{width:100%;max-width:440px}.ws-upgrade-feats{list-style:none;margin:0 0 var(--ws-space-md, 24px);padding:0;display:flex;flex-direction:column;gap:10px}.ws-upgrade-feats li{font-size:var(--ws-fs-base, 1rem);color:var(--ink, #2b2622);padding-left:26px;position:relative;line-height:1.4}.ws-upgrade-feats li:before{content:"🌿";position:absolute;left:0;top:0}.ws-upgrade-free-already{text-align:left;margin:0 0 var(--ws-space-md, 24px);line-height:1.45}.ws-upgrade-plans{display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px);margin-bottom:var(--ws-space-sm, 16px)}.ws-upgrade-plan{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:64px;padding:14px 20px;border-radius:var(--radius-sm, 14px);font-family:inherit;cursor:pointer;transition:background-color .15s ease,transform .1s ease,opacity .2s ease}.ws-upgrade-plan:active:not(:disabled){transform:scale(.98)}.ws-upgrade-plan:disabled{opacity:.6;cursor:default}.ws-upgrade-plan-primary{border:none;background:var(--app-accent, #e8971e);color:#fff}.ws-upgrade-plan-primary:hover:not(:disabled){background:var(--app-accent-deep, #c5801a)}.ws-upgrade-plan-badge{position:absolute;top:-11px;background:var(--leaf, #34c77b);color:#fff;font-size:var(--ws-fs-xs, .8125rem);font-weight:700;padding:3px 12px;border-radius:var(--radius-pill, 999px);box-shadow:var(--shadow, 0 2px 10px rgba(43, 38, 34, .07))}.ws-upgrade-plan-price{font-size:var(--ws-fs-lg, 1.375rem);font-weight:700}.ws-upgrade-plan-note{font-size:var(--ws-fs-xs, .8125rem);opacity:.9}.ws-upgrade-plan-secondary{border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622)}.ws-upgrade-plan-secondary:hover:not(:disabled){background:var(--bg-bottom, #fff4e2)}.ws-upgrade-spinner{width:36px;height:36px;margin:var(--ws-space-sm, 16px) auto;border-radius:50%;border:4px solid var(--line-strong, rgba(43, 38, 34, .18));border-top-color:var(--app-accent, #e8971e);animation:ws-upgrade-spin .8s linear infinite}@keyframes ws-upgrade-spin{to{transform:rotate(360deg)}}.ws-upgrade-success{display:flex;flex-direction:column;align-items:center;text-align:center}.ws-upgrade-success-glyph{font-size:56px;line-height:1;margin-bottom:6px}.ws-upgrade-success .ws-auth-submit{width:100%;margin-top:var(--ws-space-xs, 8px)}.ws-lang-grid{display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px)}.ws-lang-tile{display:flex;align-items:center;gap:14px;min-height:64px;padding:0 18px;border-radius:var(--radius, 20px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;cursor:pointer;transition:transform .12s ease}.ws-lang-tile:active{transform:scale(.97)}.ws-lang-flag{font-size:30px;line-height:1}.ws-lang-name{font-size:var(--ws-fs-md, 1.125rem);font-weight:700;color:var(--ink, #2b2622)}.ws-handoff-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px)}.ws-handoff-row{display:flex;align-items:flex-start;gap:14px}.ws-handoff-emoji{font-size:26px;line-height:1.3;flex:0 0 auto}.ws-handoff-text{font-size:var(--ws-fs-base, 1rem);color:var(--ink, #2b2622);line-height:1.45;text-align:left}.ws-handoff-footnote{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62);text-align:center;line-height:1.4;margin:var(--ws-space-md, 24px) 0 var(--ws-space-sm, 16px)}.ws-setup-card{max-width:560px}.ws-setup-steps{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:var(--ws-space-sm, 16px)}.ws-setup-steps-label{font-size:var(--ws-fs-xs, .8125rem);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft, #736b62)}.ws-setup-steps-dots{display:flex;gap:6px}.ws-setup-step-dot{width:8px;height:8px;border-radius:50%;background:var(--card, #fff);box-shadow:inset 0 0 0 2px var(--line-strong, rgba(43, 38, 34, .18))}.ws-setup-step-dot-current{background:var(--app-accent, #e8971e);box-shadow:none}.ws-setup-mascot-wrap{display:flex;justify-content:center;margin-bottom:var(--ws-space-sm, 16px)}.ws-setup-back{position:absolute;top:var(--ws-space-sm, 16px);left:var(--ws-space-sm, 16px);width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;color:var(--ink, #2b2622);font-size:1.25rem;line-height:1;cursor:pointer}.ws-setup-kid-list{list-style:none;margin:0 0 var(--ws-space-sm, 16px);padding:0;display:flex;flex-direction:column;gap:12px}@media(min-width:720px){.ws-setup-kid-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ws-setup-kid-list-grid>li{margin:0}}.ws-setup-kid-card{display:flex;align-items:center;gap:14px;width:100%;min-height:72px;box-sizing:border-box;padding:0 16px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff;font-family:inherit;text-align:left;cursor:pointer}.ws-setup-kid-initial{flex:0 0 auto;width:56px;height:56px;border-radius:50%;background:#e8971e29;color:var(--app-accent-deep, #c5801a);font-size:var(--ws-fs-lg, 1.375rem);font-weight:700;display:flex;align-items:center;justify-content:center}.ws-setup-kid-info{display:flex;flex-direction:column;gap:2px;min-width:0}.ws-setup-kid-name{font-size:var(--ws-fs-md, 1.125rem);font-weight:700;color:var(--ink, #2b2622)}.ws-setup-kid-line{font-size:var(--ws-fs-sm, .875rem);color:var(--ink-soft, #736b62)}.ws-setup-kid-add{border-style:dashed;background:transparent;color:var(--app-accent-deep, #c5801a)}.ws-setup-kid-add-icon{flex:0 0 auto;width:56px;height:56px;border-radius:50%;border:2px dashed var(--line-strong, rgba(43, 38, 34, .28));display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.ws-setup-camp-card{display:flex;align-items:center;gap:14px;width:100%;box-sizing:border-box;padding:14px 16px;border-radius:var(--radius-sm, 14px);background:#e8971e1a;margin-bottom:var(--ws-space-sm, 16px)}.ws-setup-camp-emoji{flex:0 0 auto;font-size:44px;line-height:1}.ws-setup-camp-info{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.ws-setup-camp-title{font-size:var(--ws-fs-md, 1.125rem);font-weight:700;color:var(--ink, #2b2622)}.ws-setup-camp-sub{font-size:var(--ws-fs-sm, .875rem);color:var(--ink-soft, #736b62)}.ws-setup-stat-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--ws-space-sm, 16px)}.ws-setup-stat-cell{flex:1 1 96px;min-width:96px;box-sizing:border-box;padding:10px 8px;border-radius:var(--radius-sm, 14px);background:var(--card, #fff);border:1px solid var(--line, rgba(43, 38, 34, .05));text-align:center;font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622)}.ws-setup-level-row{margin-bottom:var(--ws-space-md, 24px);text-align:left}.ws-setup-level-label{display:block;font-size:var(--ws-fs-sm, .875rem);font-weight:600;color:var(--ink, #2b2622);margin-bottom:6px}.ws-setup-level-bar{height:8px;border-radius:4px;background:#2b26221f;overflow:hidden}.ws-setup-level-bar-fill{height:100%;border-radius:4px;background:var(--app-accent-deep, #c5801a)}.ws-setup-confirm{width:100%;margin-bottom:var(--ws-space-xs, 8px)}.ws-setup-change-level{align-self:center}.ws-entry-lang-bar{position:fixed;top:calc(env(safe-area-inset-top,0px) + 8px);left:0;right:0;z-index:4;display:flex;justify-content:center;pointer-events:none}.ws-entry-lang-row{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:calc(100% - 24px);padding:4px;border-radius:999px;background:#fffdf8eb;box-shadow:0 2px 10px #2b262224;pointer-events:auto}.ws-lang-tile-compact{min-height:44px;gap:8px;padding:0 14px;border-radius:999px;border-color:transparent;background:transparent}.ws-lang-tile-compact .ws-lang-flag{font-size:22px}.ws-lang-tile-compact .ws-lang-name{font-size:var(--ws-fs-sm, 1rem);font-weight:600}.ws-lang-tile-compact[aria-pressed=true]{background:#fff;border-color:var(--app-accent, #e8971e);box-shadow:0 1px 4px #2b262229}.ws-lang-tile-compact[aria-pressed=true] .ws-lang-name{font-weight:800}#root .screen.ws-entry-screen{background-image:linear-gradient(to bottom,#fffdf89e,#fffdf857 42%,#fffdf880),url(/play/mascot/habitat-home-1024.webp);background-size:cover;background-position:center 38%;background-repeat:no-repeat}.screen.ws-entry-screen{justify-content:center;justify-content:safe center}.ws-entry-hero{display:flex;justify-content:center;padding-top:clamp(4px,2.2vh,24px);margin-bottom:clamp(8px,2.6vh,24px)}.ws-entry-mascot-wrap{position:relative;display:inline-flex}.ws-tap-badge{position:absolute;right:4%;bottom:4%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:34px;height:34px;border-radius:50%;border:3px solid #ffffff;background:var(--app-accent, #e8971e);box-shadow:0 3px 10px #2b262238;font-size:15px;line-height:1;pointer-events:none;animation:ws-tap-badge-pulse 2.6s ease-in-out infinite}@keyframes ws-tap-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){.ws-tap-badge{animation:none}}.ws-entry-mascot{animation:ws-entry-mascot-in .42s cubic-bezier(.34,1.56,.64,1) both}@keyframes ws-entry-mascot-in{0%{opacity:0;transform:scale(.86) rotate(-2deg)}70%{opacity:1;transform:scale(1.02) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.ws-entry-mascot{animation:none}}.ws-entry-card{max-width:480px}.ws-entry-play{width:100%;min-height:64px;border:none;border-radius:var(--radius-sm, 14px);background:var(--ws-accent-sunset, #e5623c);color:#fff;font-family:inherit;font-weight:800;font-size:1.25rem;letter-spacing:.01em;cursor:pointer;margin-bottom:var(--ws-space-sm, 16px);transition:transform .1s ease}.ws-entry-play:active{transform:scale(.98)}.ws-entry-account-row{display:flex;gap:12px;margin-top:var(--ws-space-sm, 16px)}.ws-entry-account-btn{flex:1;min-height:44px;border-radius:var(--radius-sm, 14px);border:1.5px solid var(--line-strong, rgba(43, 38, 34, .18));background:transparent;color:var(--app-accent-deep, #c5801a);font-family:inherit;font-weight:700;font-size:var(--ws-fs-sm, .875rem);cursor:pointer}.ws-entry-account-btn:active{transform:scale(.98)}.ws-entry-reconnect{display:block;width:100%;margin-top:var(--ws-space-sm, 12px);padding:10px 8px;border:none;background:none;color:var(--ink-soft, #6b6259);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;-webkit-tap-highlight-color:transparent}.ws-entry-reconnect:active{color:var(--app-accent-deep, #c5801a)}.ws-splash-screen{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:linear-gradient(180deg,#ffebcb,#ffd3a8)}.ws-splash-habitat{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.ws-splash-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#fffdf800 40%,#fff4e2eb)}.ws-splash-content{position:relative;height:100%;max-width:var(--app-max-width, 560px);margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 20px;gap:20px;padding-top:34vh}.ws-splash-mascot{animation:ws-splash-mascot-in .42s cubic-bezier(.34,1.56,.64,1) both}@keyframes ws-splash-mascot-in{0%{opacity:0;transform:scale(.86) rotate(-2deg)}70%{opacity:1;transform:scale(1.02) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.ws-splash-mascot{animation:ws-splash-mascot-fade .42s ease both}}@keyframes ws-splash-mascot-fade{0%{opacity:0}to{opacity:1}}.ws-splash-title{margin:0;font-size:clamp(2rem,9vw,3.5rem);font-weight:800;color:var(--ink, #2b2622)}.ws-splash-tagline{margin:0;font-size:clamp(1rem,4.2vw,1.375rem);color:var(--ink-soft, #736b62)}.ws-splash-loading{margin:0;font-size:var(--ws-fs-sm, .875rem);color:var(--ink-soft, #736b62);letter-spacing:.08em;text-transform:uppercase}.ws-splash-dots{display:inline-flex;gap:2px;margin-left:2px}.ws-splash-dot{opacity:.2;animation:ws-splash-dot-fade 1.2s ease-in-out infinite}.ws-splash-dot:nth-child(2){animation-delay:.15s}.ws-splash-dot:nth-child(3){animation-delay:.3s}@keyframes ws-splash-dot-fade{0%,to{opacity:.2}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.ws-splash-dot{animation:none;opacity:.6}}.ws-splash-tap{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;margin:0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.ws-adopt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.ws-adopt-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#2b262259;cursor:pointer}.ws-adopt-card{position:relative;width:100%;max-width:480px;margin-inline:auto;box-sizing:border-box;background:var(--bg-top, #fffdf8);border-radius:var(--radius, 20px) var(--radius, 20px) 0 0;box-shadow:0 -8px 30px #2b26222e;padding:var(--ws-space-md, 24px) var(--ws-space-md, 24px) calc(var(--safe-bottom, 0px) + var(--ws-space-md, 24px));display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px);max-height:85%;overflow-y:auto}.ws-adopt-title{margin:0;font-size:var(--ws-fs-lg, 1.375rem);font-weight:800;color:var(--ink, #2b2622)}.ws-adopt-intro{margin:0;font-size:var(--ws-fs-base, 1rem);color:var(--ink-soft, #736b62)}.ws-adopt-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--ws-space-sm, 16px)}.ws-adopt-row-name,.ws-adopt-row-summary,.ws-adopt-row-label,.ws-adopt-row-note,.ws-adopt-remove-text,.ws-adopt-remove-go,.ws-adopt-remove-cancel{overflow-wrap:break-word}.ws-adopt-row{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:#fff}.ws-adopt-row-head{display:flex;flex-direction:column;gap:2px;min-width:0}.ws-adopt-row-name{font-size:var(--ws-fs-md, 1.125rem);font-weight:700;color:var(--ink, #2b2622)}.ws-adopt-row-summary{font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-adopt-row-label{font-size:var(--ws-fs-xs, .8125rem);font-weight:700;color:var(--ink-soft, #736b62)}.ws-adopt-select{width:100%;min-height:44px;box-sizing:border-box;padding:0 12px;border-radius:var(--radius-sm, 14px);border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:var(--bg-top, #fffdf8);color:var(--ink, #2b2622);font-family:inherit;font-size:var(--ws-fs-base, 1rem)}.ws-adopt-row-note{margin:0;font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-adopt-row-note-merge{color:var(--ink, #2b2622);font-weight:600}.ws-adopt-row-remove{align-self:flex-start;min-height:44px;padding:0 4px;border:none;background:none;color:var(--ink-soft, #736b62);font-family:inherit;font-size:var(--ws-fs-sm, .875rem);font-weight:700;text-decoration:underline;cursor:pointer}.ws-adopt-remove-panel{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--radius-sm, 14px);background:#2b26220d}.ws-adopt-remove-text{margin:0;font-size:var(--ws-fs-sm, .875rem);color:var(--ink, #2b2622)}.ws-adopt-remove-actions{display:flex;flex-direction:column;gap:8px}.ws-adopt-remove-go,.ws-adopt-remove-cancel{min-height:44px;width:100%;border-radius:var(--radius-sm, 14px);font-family:inherit;font-size:var(--ws-fs-sm, .875rem);font-weight:700;cursor:pointer}.ws-adopt-remove-go{border:1px solid var(--danger, #c0392b);background:transparent;color:var(--danger, #c0392b)}.ws-adopt-remove-cancel{border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:transparent;color:var(--ink, #2b2622)}.ws-adopt-error{margin:0;font-size:var(--ws-fs-sm, .875rem);font-weight:700;color:var(--danger, #c0392b)}.ws-adopt-actions{display:flex;flex-direction:column;gap:var(--ws-space-xs, 8px);margin-top:var(--ws-space-xs, 8px)}.ws-adopt-submit,.ws-adopt-dismiss{min-height:44px;width:100%;border-radius:var(--radius-sm, 14px);font-family:inherit;font-size:var(--ws-fs-base, 1rem);font-weight:700;cursor:pointer;transition:transform .12s ease}.ws-adopt-submit:active,.ws-adopt-dismiss:active{transform:scale(.98)}.ws-adopt-submit{border:none;background:var(--app-accent, #e8971e);color:#fff}.ws-adopt-submit:disabled,.ws-adopt-dismiss:disabled{opacity:.6;cursor:default}.ws-adopt-dismiss{border:1px solid var(--line-strong, rgba(43, 38, 34, .18));background:transparent;color:var(--ink, #2b2622)}.ws-adopt-dismiss-note{margin:0;text-align:center;font-size:var(--ws-fs-xs, .8125rem);color:var(--ink-soft, #736b62)}.ws-rounds-left{margin:0 0 10px;text-align:center;font-size:.95rem;font-weight:600;color:var(--ink-soft)}.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);will-change:opacity;animation:screen-in .22s cubic-bezier(.16,1,.3,1);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.hatch-screen,.screen.ws-auth-screen,.screen.ws-settings-screen,.screen.ws-demo-end-screen,.screen.ws-upgrade-screen,.screen.placement-confirm{justify-content:flex-start;gap:clamp(14px,4vh,40px)}.screen.start-screen>:first-child,.screen.roundend-screen>:first-child,.screen.hatch-screen>:first-child,.screen.ws-auth-screen>:first-child,.screen.ws-settings-screen>:first-child,.screen.ws-demo-end-screen>:first-child,.screen.ws-upgrade-screen>:first-child{margin-top:auto}.screen.start-screen>:last-child,.screen.roundend-screen>:last-child,.screen.hatch-screen>:last-child,.screen.ws-auth-screen>:last-child,.screen.ws-settings-screen>:last-child,.screen.ws-demo-end-screen>:last-child,.screen.ws-upgrade-screen>:last-child{margin-bottom:auto}@keyframes screen-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:720px){.screen{box-shadow:0 0 0 1px var(--line),0 18px 60px #0000000f}}@media(min-width:720px){.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 (min-height:600px)and (orientation:landscape){.screen.ws-home-screen,.screen.round-screen,.screen.reserve-screen{max-width:none;padding-inline:calc(var(--safe-left) + clamp(24px,3.4vw,56px)) calc(var(--safe-right) + clamp(24px,3.4vw,56px));box-shadow:none}#root .screen.ws-home-screen,#root .screen.ws-home-screen--even{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);grid-template-rows:auto auto auto minmax(0,1fr);grid-template-areas:"header header" "greet  hero" "trail  hero" "shelf  hero";column-gap:clamp(24px,3vw,56px);row-gap:12px;align-content:start;justify-items:stretch}#root .screen.ws-home-screen>:nth-child(1){grid-area:header}#root .screen.ws-home-screen>:nth-child(2){grid-area:greet}#root .screen.ws-home-screen>:nth-child(3){grid-area:trail}#root .screen.ws-home-screen>:nth-child(4){grid-area:hero}#root .screen.ws-home-screen>:nth-child(5){grid-area:shelf}#root .screen.ws-home-screen>:nth-child(2),#root .screen.ws-home-screen>:nth-child(3),#root .screen.ws-home-screen>:nth-child(5){align-items:flex-start;text-align:left}#root .screen.ws-home-screen .home-streak{align-items:flex-start}#root .screen.ws-home-screen .ws-trail-card,#root .screen.ws-home-screen .ws-earned-card{max-width:min(100%,640px)}#root .screen.ws-home-screen .home-greeting{font-size:clamp(36px,5.5vh,52px)}#root .screen.ws-home-screen>.ws-home-shelf{justify-content:flex-start;align-self:start}#root .screen.ws-home-screen .ws-home-hero.ws-home-hero--tail{margin-bottom:0}#root .screen.ws-home-screen .ws-home-hero-solo{flex-direction:row;align-items:center;justify-content:center;gap:clamp(16px,2.2vw,32px)}#root .screen.ws-home-screen .ws-home-hero-row{gap:clamp(16px,2.2vw,32px)}#root .screen.ws-home-screen .play-btn{width:clamp(176px,26vh,260px)}.round-screen:not(.placement-quiz){--ws-mode-gap: clamp(28px, 3.2vw, 56px);--ws-mode-w: min( 100vw - var(--safe-left, 0px) - var(--safe-right, 0px) - 2 * clamp(24px, 3.4vw, 56px), clamp(940px, 88vw, 1120px) );--ws-prompt-w: calc((var(--ws-mode-w) - var(--ws-mode-gap)) * .52);--ws-answers-w: calc((var(--ws-mode-w) - var(--ws-mode-gap)) * .48)}.round-screen:not(.placement-quiz) .mode{flex-direction:row;align-items:center;justify-content:center;gap:var(--ws-mode-gap);max-width:min(100%,var(--ws-mode-w))}.round-screen:not(.placement-quiz) .mode-prompt{flex:1 1 var(--ws-prompt-w);max-height:none;min-width:0}.round-screen:not(.placement-quiz) .mode-answers{flex:1 1 var(--ws-answers-w);min-width:0}.round-screen:not(.placement-quiz) .mode.listen-spell,.round-screen:not(.placement-quiz) .mode.builder{--ws-prompt-w: calc((var(--ws-mode-w) - var(--ws-mode-gap)) * .36);--ws-answers-w: calc((var(--ws-mode-w) - var(--ws-mode-gap)) * .64)}.round-screen:not(.placement-quiz) .challenge-emoji{font-size:clamp(124px,24vh,240px)}.round-screen:not(.placement-quiz) .challenge-word{font-size:min(clamp(64px,7vh,88px),calc((var(--ws-prompt-w) - 58px) / 5.64))}.round-screen:not(.placement-quiz) .choice-grid{max-width:min(100%,clamp(460px,54vh,560px));gap:clamp(16px,2vh,22px)}.round-screen:not(.placement-quiz) .choice-emoji{font-size:clamp(72px,9vh,104px);min-height:clamp(124px,15vh,168px)}.round-screen:not(.placement-quiz) .tile-slots{--ws-slot-cap: clamp(72px, 9vh, 96px);--slot-w: min( var(--ws-slot-cap), max(44px, (var(--ws-answers-w) - (var(--slots, 6) - 1) * 6px) / var(--slots, 6)) )}.round-screen:not(.placement-quiz) .slot{max-width:var(--ws-slot-cap)}.round-screen:not(.placement-quiz) .tile-bank:not(.tile-keyboard) .tile{--ws-tile-w: clamp(64px, 8vh, 88px);width:var(--ws-tile-w);height:var(--ws-tile-w);font-size:calc(var(--ws-tile-w) * .607)}.round-screen:not(.placement-quiz) .tile-bank:not(.tile-keyboard) .tile.unit-2{font-size:calc(var(--ws-tile-w) * .411)}.round-screen:not(.placement-quiz) .tile-bank:not(.tile-keyboard) .tile.unit-3{font-size:calc(var(--ws-tile-w) * .321)}.round-screen:not(.placement-quiz) .tile-keyboard{--ws-key: clamp(48px, 6vh, 68px);grid-template-columns:repeat(auto-fit,minmax(var(--ws-key),1fr));gap:clamp(8px,1.2vh,14px)}.round-screen:not(.placement-quiz) .tile-keyboard .tile{max-height:calc(var(--ws-key) + 12px);font-size:calc(var(--ws-key) * .54)}.round-screen:not(.placement-quiz) .tile-keyboard .tile.unit-2{font-size:calc(var(--ws-key) * .365)}.round-screen:not(.placement-quiz) .tile-keyboard .tile.unit-3{font-size:calc(var(--ws-key) * .285)}.round-screen:not(.placement-quiz) .tile-bank{max-width:100%;gap:clamp(10px,1.4vh,16px)}:root[data-native] .screen.round-screen:not(.placement-quiz) .round-stage>.mode{flex-direction:row}.reserve-screen .reserve-grid{grid-template-columns:repeat(auto-fill,minmax(clamp(120px,13vw,190px),1fr));gap:14px}.reserve-screen .reserve-card{min-height:clamp(140px,21vh,200px)}.reserve-screen .habitat{height:clamp(126px,20vh,208px)}.reserve-screen .reserve-tabs{justify-content:flex-start}.ws-mascot-intro-content{width:100%;max-width:720px;margin-inline:auto}}.ws-demo-round-top{justify-content:center}.ws-demo-end-screen{align-items:center;text-align:center}.ws-demo-end-brand{display:flex;justify-content:center}.ws-demo-end-title{margin:0;font-size:var(--ws-fs-lg, 1.375rem);font-weight:700;color:var(--ink, #2b2622)}.ws-demo-end-play{width:96px;height:96px;min-width:44px;min-height:44px;border-radius:var(--radius-pill, 999px);border:none;background:var(--app-accent, #e8971e);box-shadow:0 10px 26px #e8971e59;display:flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;transition:transform .12s ease}.ws-demo-end-play:active{transform:scale(.96)}.ws-demo-end-cta{margin:0;font-weight:700;font-size:var(--ws-fs-md, 1.125rem);color:var(--app-accent-deep, #c5801a)}
