.start-screen{align-items:center;justify-content:space-evenly;text-align:center}.start-logo{display:flex;flex-direction:column;align-items:center;gap:8px}.start-parrot{font-size:96px;line-height:1.1;animation:parrot-bob 2.4s ease-in-out infinite}.start-title{font-size:42px;font-weight:700;margin:0;color:var(--ink)}.start-animals{font-size:28px;letter-spacing:8px}.start-btn{width:168px;height:168px;border-radius:50%;background:var(--coral);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;animation:breathe 2.5s ease-in-out infinite;transition:transform .12s ease}.start-btn svg{margin-left:8px}.start-btn:active{transform:scale(.94);animation:none;background:var(--coral-deep)}.start-hint{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--ink-soft);animation:hint-bounce 2.5s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes parrot-bob{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes hint-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.setup-screen{align-items:center;justify-content:center;gap:12px;text-align:center}.setup-title{font-size:24px;font-weight:700;margin:0 0 8px}.setup-label{font-size:15px;font-weight:600;color:var(--ink-soft);margin-top:8px}.setup-input{width:min(320px,86vw);min-height:60px;border-radius:var(--radius-sm);border:2px solid var(--line-strong);background:var(--card);font-size:24px;font-weight:600;text-align:center;padding:8px 16px;outline:none}.setup-input:focus{border-color:var(--coral)}.setup-limits{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.limit-btn{min-width:68px;min-height:56px;padding:0 14px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:18px;font-weight:600;transition:transform .12s ease}.limit-btn:active{transform:scale(.95)}.limit-active{background:var(--coral);border-color:transparent;color:#fff;font-weight:700}.setup-stages{display:flex;flex-direction:column;gap:8px;width:min(360px,88vw)}.stage-btn{text-align:left;padding:10px 14px;border-radius:var(--radius-sm);background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:3px;transition:transform .12s ease,border-color .12s ease}.stage-btn:active{transform:scale(.98)}.stage-active{border-color:var(--coral)}.stage-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.stage-name{font-size:17px;font-weight:700;color:var(--ink)}.stage-meta{font-size:13px;font-weight:600;color:var(--ink-soft);white-space:nowrap}.stage-cando{font-size:13px;line-height:1.3;color:var(--ink-soft)}.setup-start{margin-top:24px;min-height:68px;padding:0 36px;border-radius:999px;background:var(--coral);color:#fff;font-size:24px;font-weight:700;box-shadow:var(--shadow);display:inline-flex;align-items:center;gap:10px;transition:transform .12s ease,opacity .2s ease}.setup-start:active{transform:scale(.95);background:var(--coral-deep)}.setup-start:disabled{opacity:.35;pointer-events:none}.setup-bring-link{margin-top:14px;font-size:15px;font-weight:600;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px}.setup-bring-link:active{color:var(--coral-deep)}.parents-screen{gap:10px}.parents-gate{align-items:center;justify-content:center;gap:26px}.gate-q{font-size:28px;font-weight:700;margin:0}.gate-choices{display:flex;gap:16px}.gate-form{display:flex;align-items:center;gap:12px}.gate-input{width:120px;height:84px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line-strong);box-shadow:var(--shadow);font-size:40px;font-weight:700;text-align:center;color:var(--ink)}.gate-input:focus{outline:3px solid var(--coral);outline-offset:2px}.gate-btn{width:84px;height:84px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:34px;font-weight:700;transition:transform .12s ease}.gate-check{width:84px;background:var(--coral);color:#fff;border-color:transparent}.gate-check:active{background:var(--coral-deep)}.gate-btn:active{transform:scale(.95)}.gate-hint{margin:0;font-size:15px;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}.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(--coral)}.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;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:.35}.chip-active{background:var(--coral);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(--coral)}.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(--coral)}.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(--coral)}.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(--coral)}.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%}.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:40px;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:#ff6b570f;border:1px solid rgba(255,107,87,.18)}.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:#ff6b570f;border-color:#ff6b572e}.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-word{font-family:var(--font-reading);font-weight:700;text-transform:lowercase;letter-spacing:.02em;font-size:18px}.needs-reason{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--ink-soft)}.needs-btn{flex-shrink:0;min-height:40px;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(--coral);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:40px;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(--coral);border-color:var(--coral);box-shadow:none;color:#fff;font-weight:700}.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(--coral);background:#ff6b571a}.subject-toggle.subject-on .subject-toggle-state{color:var(--coral-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-shrink:0;width:92px;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-progress-count{flex-shrink:0;width:60px;text-align:right;font-size:13px;font-weight:700;color:var(--ink-soft)}.acc-bar-open{background:transparent}.bring-screen{gap:12px}.bring-top{text-align:center}.bring-title{margin:0 0 6px;font-size:24px;font-weight:700}.bring-intro{max-width:32ch;margin:0 auto}.bring-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;display:flex;flex-direction:column;gap:14px;width:min(420px,92vw);margin:0 auto;padding-bottom:8px}.bring-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.bring-card h2{margin:0 0 8px;font-size:18px;font-weight:700}.bring-player{margin:10px 0;padding:12px;border-radius:var(--radius-sm);background:#2b26220a;border:1px solid var(--line)}.bring-player-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.bring-footer{justify-content:center}.picker-screen{align-items:center;justify-content:center;gap:26px}.picker-title{font-size:28px;font-weight:700;margin:0;color:var(--ink)}.picker-list{display:flex;flex-direction:column;gap:14px;width:100%;max-width:340px;max-height:60dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px}.picker-btn{display:flex;align-items:center;gap:14px;min-height:84px;padding:0 20px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .12s ease}.picker-btn:active{transform:scale(.96)}.picker-emoji{font-size:40px;line-height:1}.picker-name{flex:1;text-align:left;font-size:24px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-level{font-size:15px;font-weight:700;color:var(--ink-soft)}.screen.subjects-screen{align-items:center;justify-content:flex-start;gap:6px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-top:calc(var(--safe-top) + 20px);padding-bottom:calc(var(--safe-bottom) + 32px)}.subjects-screen::-webkit-scrollbar{display:none}.subjects-grid-wrap{margin:auto 0;width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.subjects-greeting{font-size:clamp(26px,7vw,34px);font-weight:700;margin:0;text-align:center}.subjects-title{font-size:clamp(18px,5vw,22px);font-weight:600;color:var(--ink-soft);margin:0 0 14px;text-align:center}.subjects-grid{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:14px;width:100%;max-width:340px}.subject-card{aspect-ratio:1;border-radius:26px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,border-color .12s ease}.subject-card:active{transform:scale(.95);border-color:var(--coral)}.subject-emoji{font-size:48px;line-height:1}.subject-label{font-size:20px;font-weight:700;color:var(--ink)}.subjects-screen .grownups-link{margin-top:26px;padding:6px 12px;font-size:13px;font-weight:600;color:var(--ink-soft);opacity:.6;text-decoration:underline;text-underline-offset:2px}.subjects-screen .grownups-link:active{opacity:.9}.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(--coral);font-weight:700}@keyframes egg-idle-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}.streak-suns{display:inline-flex;align-items:center;gap:2px;font-size:20px;min-height:28px}.streak-sun{animation:sun-pop .4s ease backwards}.streak-count{font-size:15px;font-weight:700;color:var(--ink-soft);margin-left:4px}@keyframes sun-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}to{transform:scale(1)}}.home-screen{align-items:center;justify-content:flex-start}.home-top{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:56px}.gear-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;margin-left:auto;transition:transform .15s ease}.gear-btn:active{transform:scale(.92)}.subject-chip{display:inline-flex;align-items:center;gap:7px;margin:2px auto 0;padding:6px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);font-size:16px;font-weight:700;color:var(--ink);transition:transform .12s ease}.subject-chip:active{transform:scale(.96)}.subject-chip-caret{font-size:13px;color:var(--ink-soft)}.home-greeting{font-size:clamp(28px,8.5vw,36px);font-weight:700;margin:4px 0 0;text-align:center}.last-round-note{margin:8px 0 0;padding:6px 16px;border-radius:999px;background:#2b26220d;color:var(--ink-soft);font-size:15px;font-weight:600}.level-badge{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:232px;margin-top:16px}.level-emoji{font-size:32px;animation:badge-shine-bob 2.6s ease-in-out infinite}.level-meta{flex:1;display:flex;flex-direction:column;gap:4px}.level-title{font-weight:600;font-size:16px}.level-bar{height:8px;border-radius:999px;background:#2b262214;overflow:hidden}.level-bar-fill{height:100%;background:var(--coral);border-radius:999px;transition:width .6s ease}.level-number{font-weight:700;font-size:14px;color:var(--ink-soft)}.play-btn{width:176px;height:176px;border-radius:50%;background:var(--coral);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}.play-btn svg{margin-left:8px}.play-btn:active{transform:scale(.94);animation:none;background:var(--coral-deep)}.home-bottom{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.zoo-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}.zoo-btn:active{transform:scale(.94)}.home-langs{display:flex;gap:10px;margin-top:14px}.home-lang{width:52px;height:52px;border-radius:50%;font-size:26px;line-height:1;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);opacity:.55;transition:transform .12s ease,opacity .12s ease}.home-lang-active{opacity:1;border-color:var(--coral);transform:scale(1.06)}.home-lang:active{transform:scale(.92)}.home-screen .grownups-link{margin-top:12px;padding:6px 12px;font-size:13px;font-weight:600;color:var(--ink-soft);opacity:.6;text-decoration:underline;text-underline-offset:2px}.home-screen .grownups-link:active{opacity:.9}@keyframes badge-shine-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.progress-dots{display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;max-width:60vw}.dot{width:10px;height:10px;border-radius:50%;background:#2b26221f;transition:background .2s ease,transform .2s ease}.dot-correct{background:var(--coral)}.dot-tried{background:#2b26224d}.dot-current{background:var(--card);border:2px solid var(--coral);transform:scale(1.25)}.star-counter{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(--coral);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%}.tile-slots{display:flex;gap:6px;justify-content:center;flex-wrap:nowrap}.slot{width:var(--slot-size, 56px);height:var(--slot-size, 56px);border-radius:14px;border:2px dashed var(--line-strong);background:#fff9;font-family:var(--font-reading);font-size:calc(var(--slot-size, 56px) * .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}.letter-tiles .slot.unit-2{font-size:calc(var(--slot-size, 56px) * .36);letter-spacing:0}.letter-tiles .slot.unit-3{font-size:calc(var(--slot-size, 56px) * .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)}.slots-shake{animation:gentle-shake .5s ease}@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(7,1fr);width:100%;max-width:400px}.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%;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:flex-start;gap:16px;width:100%;max-width:360px;margin:0 auto;min-height:0;padding:4px 0 8px}.mode-prompt{flex:1 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{margin-top:auto;display:flex;flex-direction:column;align-items:center;width:100%}.challenge-word{font-family:var(--font-reading);font-size:clamp(44px,13vw,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:92vw;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:92vw;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;border-radius:999px;border:2px dashed var(--coral);background:#ff6b570f;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(--coral)}50%{transform:scale(1.05);border-color:#ff6b5773}}.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(--coral);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}.missing-stage{gap:10px}.missing-letter .challenge-emoji{font-size:clamp(48px,15vw,76px)}.missing-word{font-family:var(--font-reading);font-size:clamp(38px,11vw,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:92vw}.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(--coral);background:#ff6b570f;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)}.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-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{font-family:var(--font-reading);font-size:clamp(20px,6vw,26px);font-weight:700;letter-spacing:.01em;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(--coral);background:#ff6b5714}.sb-line.status-shake{border-color:var(--coral);animation:sb-shake .4s ease}.sb-line.status-shake .sb-tile-placed{border-color:var(--coral)}.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-shake{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)}.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:56px}.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)}}.color-swatch{border-radius:50%;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .12s ease,opacity .18s ease}.swatch-lg{width:116px;height:116px}.swatch-xl{width:180px;height:180px}.swatch-ring{border:2px solid var(--line-strong)}.color-swatch:active{transform:scale(.94)}.swatch-dim{opacity:.28;transform:scale(.9)}.swatch-correct{transform:scale(1.06);box-shadow:0 0 0 4px var(--card),0 0 0 8px var(--coral)}.swatch-check{color:#fff;font-size:52px;font-weight:800;text-shadow:0 1px 4px rgba(0,0,0,.35)}.color-prompt-text{font-size:clamp(26px,7vw,34px);font-weight:700;text-align:center;margin:0}.color-grid{display:grid;grid-template-columns:repeat(2,auto);gap:22px;justify-content:center;align-content:center;margin-top:8px}.color-grid.choices-3{grid-template-columns:repeat(3,auto)}.color-say-stage{display:flex;align-items:center;justify-content:center;flex:1;margin:8px 0}.math-equation{display:flex;align-items:center;justify-content:center;gap:10px;font-size:clamp(40px,12vw,60px);font-weight:800;color:var(--ink)}.math-op{color:var(--ink-soft)}.math-q{color:var(--coral)}.math-grid{display:grid;grid-template-columns:repeat(2,minmax(96px,1fr));gap:16px;width:100%;max-width:320px;margin-top:6px}.math-choice{height:88px;border-radius:22px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);font-size:38px;font-weight:800;color:var(--ink);transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.math-choice:active{transform:scale(.95)}.math-dim{opacity:.3;transform:scale(.94)}.math-correct{border-color:var(--coral);background:var(--coral);color:#fff;transform:scale(1.04)}.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{min-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{min-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(--coral);color:var(--coral);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)}.animal-prompt-text{font-size:clamp(26px,7vw,34px);font-weight:700;text-align:center;margin:0}.animal-grid{display:grid;grid-template-columns:repeat(2,auto);gap:18px;justify-content:center;align-content:center;margin-top:8px}.animal-grid.choices-3{grid-template-columns:repeat(3,auto)}.animal-tile{width:112px;height:112px;border-radius:26px;background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow);font-size:60px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .12s ease,opacity .18s ease,border-color .12s ease}.animal-tile:active{transform:scale(.94)}.animal-dim{opacity:.3;transform:scale(.9)}.animal-correct{border-color:var(--coral);transform:scale(1.06);box-shadow:0 0 0 3px var(--card),0 0 0 7px var(--coral)}.letter-prompt-text{font-size:clamp(26px,7vw,34px);font-weight:700;text-align:center;margin:0}.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(--coral);background:var(--coral);color:#fff;transform:scale(1.06)}.trace-mode{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%}.trace-keyword{font-size:44px;line-height:1}.trace-stage{width:min(86vw,56vh,420px);height:min(86vw,56vh,420px);display:flex;align-items:center;justify-content:center}.trace-canvas{width:100%;height:100%;border-radius:28px;background:var(--card, #fff);box-shadow:var(--shadow, 0 6px 18px rgba(0, 0, 0, .08));border:3px dashed var(--line, #e6e6ef);touch-action:none;cursor:crosshair;transition:border-color .25s ease,transform .25s ease}.trace-canvas.trace-done{border-color:var(--leaf, #2fb36a);border-style:solid;animation:trace-pop .45s ease}@keyframes trace-pop{0%{transform:scale(1)}55%{transform:scale(1.05)}to{transform:scale(1)}}.trace-showme{font-family:var(--font-ui, sans-serif);font-size:17px;font-weight:700;color:var(--ink, #34344a);background:var(--card, #fff);border:2px solid var(--line, #e6e6ef);border-radius:999px;padding:10px 20px;box-shadow:var(--shadow, 0 4px 12px rgba(0, 0, 0, .06));transition:transform .12s ease,opacity .2s ease}.trace-showme:active{transform:scale(.95)}.trace-showme:disabled{opacity:.35;pointer-events:none}.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)}.quiz-prompt-text{font-size:clamp(22px,6vw,30px);font-weight:700;text-align:center;margin:0;max-width:18ch}.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{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-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(--coral);background:var(--coral);transform:scale(1.06)}.roundend-screen{align-items:center;justify-content:space-evenly;text-align:center}.roundend-title{font-size:clamp(26px,8vw,34px);font-weight:700;margin:0}.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;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(--coral);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)}.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(--coral);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(--coral-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)}}.zoo-cheer{position:fixed;left:0;right:0;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:12vw;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%)}}.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-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}.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)}}.zoo-screen{gap:12px}.zoo-top{display:flex;align-items:center;justify-content:space-between;min-height:56px}.zoo-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}.zoo-back:active{transform:scale(.94)}.zoo-title{font-size:26px;font-weight:700;margin:0}.zoo-count{min-width:56px;text-align:right;font-weight:600;color:var(--ink-soft);font-size:15px}.zoo-tabs{display:flex;gap:8px;justify-content:center}.zoo-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}.zoo-tab:active{transform:scale(.95)}.tab-active{background:var(--card);border-color:transparent;box-shadow:0 0 0 2px var(--coral)}.tab-locked{opacity:.5}.zoo-grid-wrap{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;border-radius:var(--radius)}.zoo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-bottom:12px}.zoo-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-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}.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:zoo-banner-pop .3s ease backwards}@keyframes zoo-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}.zoo-locked-msg{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.locked-emoji{font-size:64px}.locked-q{font-size:40px;font-weight:700;color:var(--ink-soft)}.zoo-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#2b262273;display:flex;align-items:center;justify-content:center}.zoo-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:34px 50px;animation:zoo-banner-pop .35s ease}.modal-emoji{font-size:110px;line-height:1.15}.modal-name{font-family:var(--font-reading);font-size:34px;font-weight:700}.modal-species{font-family:var(--font-reading);font-size:20px;font-weight:400;color:var(--ink-soft);text-transform:lowercase}.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)}.insights-card{display:flex;flex-direction:column;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px 18px}.insights-h{margin:0 0 10px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.insights-h4{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--ink-soft)}.insights-stats{display:flex;flex-wrap:wrap;gap:16px;align-items:baseline}.insights-stat{font-size:16px;color:var(--ink);font-weight:600}.insights-stat-n{font-size:26px;font-weight:800}.insights-streak{color:#d6692f;font-weight:800}.insights-copy{align-self:flex-start;margin-top:12px;font-size:14px;font-weight:700;color:var(--ink);background:var(--bg, #f6f3ec);border:1px solid var(--line);border-radius:999px;padding:8px 16px;transition:transform .12s ease}.insights-copy:active{transform:scale(.95)}.insights-lately,.insights-focus{border-top:1px solid var(--line);padding-top:14px}.insights-lately-list,.insights-focus-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.insights-lately-row,.insights-focus-row{display:flex;align-items:center;gap:10px}.insights-lately-emoji,.insights-focus-emoji{font-size:22px;width:26px;text-align:center}.insights-lately-label,.insights-focus-label{flex:1;font-size:16px;font-weight:700;color:var(--ink)}.insights-lately-acc{font-size:14px;font-weight:800;padding:3px 10px;border-radius:999px}.insights-lately-acc.good{background:#e9fbf1;color:#1f8a52}.insights-lately-acc.ok{background:#fff6e3;color:#946400}.insights-lately-acc.low{background:#ffefec;color:#b23320}.insights-focus-reason{font-size:13px;color:var(--ink-soft)}.insights-nothing{margin:0;font-size:15px;color:var(--ink-soft)}.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}@keyframes sleeper-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04) translateY(-2px)}}@keyframes zzz-float{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(-12px);opacity:1}}.linkjoin-screen{align-items:center;justify-content:center;text-align:center}.linkjoin-card{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:320px}.linkjoin-emoji{font-size:56px;line-height:1}.linkjoin-msg{font-size:19px;font-weight:700;color:var(--ink);margin:0}.linkjoin-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.linkjoin-btn{min-height:52px;padding:0 26px;border-radius:var(--radius);background:var(--coral);color:#fff;font-size:17px;font-weight:700;box-shadow:var(--shadow)}.linkjoin-btn:active{background:var(--coral-deep)}.linkjoin-btn-soft{background:var(--card);color:var(--ink-soft);box-shadow:none}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/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(/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(/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(/assets/andika-latin-400-normal-BTFTIZb-.woff2) format("woff2"),url(/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(/assets/andika-latin-700-normal-Dk95f5lc.woff2) format("woff2"),url(/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: #8a7f76;--coral: #ff6b57;--coral-deep: #e85843;--leaf: #34c77b;--sun: #ffc83d;--card: #ffffff;--line: rgba(43, 38, 34, .05);--line-strong: rgba(43, 38, 34, .18);--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);--app-max-width: 560px}: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}*{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: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(--coral);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.screen{flex:1;width:100%;max-width:var(--app-max-width);margin-inline:auto;display:flex;flex-direction:column;min-height:0;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 20px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 20px);animation:screen-in .25s ease;overflow:hidden}@keyframes screen-in{0%{opacity:0}to{opacity:1}}
