@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(./baloo-2-latin-600-normal-tIfxVoAe.woff2)format("woff2")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(./baloo-2-latin-800-normal-BbF3Etk1.woff2)format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2)format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2")}:root{--yellow:#f7c20f;--yellow-dark:#c99600;--red:#d42a1e;--red-dark:#9f1d13;--navy:#16324f;--navy-2:#2a4a6e;--muted:#546b85;--sky:#2f7fd0;--sky-light:#e8f4ff;--green:#15803f;--green-dark:#0f6b33;--danger:#dc3b2f;--card:#fff;--line:#dce8f5;--radius:22px;--radius-sm:14px;--shadow:0 18px 50px #0a254647;--shadow-sm:0 4px 14px #0a254624;--font-display:"Baloo 2", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", 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);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{width:100%;height:100%;font-family:var(--font-body);color:var(--navy);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#7fc0f5;margin:0;overflow:hidden}button,a,.btn{touch-action:manipulation}#app{touch-action:none;position:fixed;inset:0}canvas{display:block}svg{flex:none;width:1em;height:1em}h1,h2,h3{font-family:var(--font-display);margin:0;line-height:1.05}h2{font-size:clamp(1.6rem,3.4vw,2.2rem);font-weight:800}p{margin:0}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--sky);font-size:.82rem;font-weight:600;display:block}kbd{font-family:var(--font-body);background:#ffffff47;border:1px solid #fff6;border-radius:6px;padding:1px 6px;font-size:.72em;font-weight:800}.boot{z-index:100;color:#fff;background:radial-gradient(circle at 50% 35%,#5aa8ef,#2569b8);place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.boot.done{opacity:0;pointer-events:none}.boot-inner{text-align:center;justify-items:center;gap:14px;padding:24px;display:grid}.boot-emblem{filter:drop-shadow(0 10px 20px #00000040);width:110px;height:110px;animation:2.4s ease-in-out infinite float}.boot-title{font-family:var(--font-display);font-size:2rem;font-weight:600}.boot-title b{color:var(--yellow);font-weight:800}.boot-bar{background:#ffffff40;border-radius:99px;width:200px;height:8px;overflow:hidden}.boot-bar span{border-radius:inherit;background:var(--yellow);width:40%;height:100%;animation:1.1s ease-in-out infinite boot-slide;display:block}.boot-msg{opacity:.9;max-width:340px}@keyframes boot-slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}@keyframes float{50%{transform:translateY(-8px)}}.btn{--bg:#fff;--fg:var(--navy);--edge:#c9d9ea;min-height:48px;font-family:var(--font-display);color:var(--fg);background:var(--bg);box-shadow:0 5px 0 var(--edge), var(--shadow-sm);cursor:pointer;pointer-events:auto;border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:10px 22px;font-size:1.12rem;font-weight:800;transition:transform 80ms,box-shadow 80ms,filter .15s;display:inline-flex}.btn svg{font-size:1.25em}.btn:hover{filter:brightness(1.04)}.btn:active{box-shadow:0 1px 0 var(--edge), var(--shadow-sm);transform:translateY(4px)}.btn:focus-visible,.mission-card:focus-visible,.difficulty:focus-visible,.link-btn:focus-visible,.segmented button:focus-visible{outline-offset:3px;outline:4px solid #f7c20fe6}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{--bg:linear-gradient(180deg, #198546, var(--green));--fg:#fff;--edge:var(--green-dark);text-shadow:0 1px #0000002e}.btn-secondary{--bg:linear-gradient(180deg, #ffd84a, var(--yellow));--fg:#4a3500;--edge:var(--yellow-dark)}.btn-danger{--bg:var(--danger);--fg:#fff;--edge:#9c2219}.btn-ghost{--bg:#ffffffeb}.btn-glass{--bg:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-xl{border-radius:20px;min-height:64px;padding:12px 40px;font-size:1.6rem}.btn-lg{min-height:56px;padding:12px 28px;font-size:1.25rem}.btn-sm{border-radius:12px;min-height:40px;padding:6px 16px;font-size:1rem}.btn-icon{flex-shrink:0;width:48px;min-height:48px;padding:0}.link-btn{color:inherit;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-weight:700;text-decoration:underline;display:inline-flex}.link-btn.danger{color:var(--danger)}.ui-root{pointer-events:none;z-index:10;position:fixed;inset:0}.screen{pointer-events:auto;padding:calc(20px + var(--safe-top)) calc(20px + var(--safe-right)) calc(20px + var(--safe-bottom)) calc(20px + var(--safe-left));animation:.35s both screen-in;position:absolute;inset:0;overflow-y:auto}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow)}.chip{background:var(--sky-light);border-radius:99px;align-items:center;gap:6px;padding:6px 12px;font-size:.95rem;font-weight:700;display:inline-flex}.chip svg{color:var(--yellow-dark)}.chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.stars{gap:2px;font-size:1.15rem;display:inline-flex}.stars.small{font-size:.95rem}.stars.large{gap:6px;font-size:3rem}.star{color:#cfdbe8;display:inline-flex}.star.on{color:var(--yellow);filter:drop-shadow(0 2px 0 var(--yellow-dark))}.stars.large .star.on{animation:.5s cubic-bezier(.3,1.6,.5,1) both star-pop}.stars.large .star:nth-child(2){animation-delay:.15s}.stars.large .star:nth-child(3){animation-delay:.3s}@keyframes star-pop{0%{transform:scale(0)rotate(-40deg)}}.title-screen{background:linear-gradient(90deg,#0a284ec7 0%,#0a284e73 38%,#0000 62%);align-items:center;display:flex}.title-panel{color:#fff;flex-direction:column;gap:22px;max-width:500px;margin-left:clamp(0px,5vw,80px);display:flex}.logo{align-items:center;gap:16px;display:flex}.logo-emblem{filter:drop-shadow(0 8px 16px #0000004d);flex:none;width:96px;height:96px}.logo-emblem svg{width:100%;height:100%}.logo h1{text-shadow:0 4px #0a254659;flex-direction:column;display:flex}.logo-small{letter-spacing:.02em;font-size:clamp(1.4rem,3vw,2rem);font-weight:600}.logo-big{color:var(--yellow);text-shadow:0 4px #a87c00,0 10px 24px #0000004d;font-size:clamp(3.6rem,9vw,6rem);font-weight:800;line-height:.85}.tagline{text-shadow:0 2px 8px #0000004d;font-size:clamp(1.1rem,2.2vw,1.35rem);font-weight:700}.title-stats{flex-wrap:wrap;gap:8px;display:flex}.title-stats .chip{color:var(--navy);background:#ffffffeb}.chip-xp b{color:var(--sky)}.title-actions{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.title-secondary{flex-wrap:wrap;gap:10px;display:flex}a.btn{text-decoration:none}.title-secondary .btn{min-height:44px;padding:8px 16px;font-size:1rem}.teacher-link{color:#fff;opacity:.9;text-shadow:0 1px 4px #0006;align-self:flex-start}.missions-screen{background:linear-gradient(#0e346080,#0e346026);flex-direction:column;align-items:center;gap:22px;display:flex}.screen-header{color:#fff;text-shadow:0 2px 8px #0000004d;align-items:center;gap:16px;width:min(980px,100%);display:flex}.screen-header .muted{color:#ffffffe6;font-weight:700}.screen-header .btn{text-shadow:none}.mission-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;width:min(980px,100%);display:grid}.mission-card{text-align:left;font:inherit;color:inherit;background:var(--card);border-radius:var(--radius);box-shadow:0 6px 0 #c9d9ea, var(--shadow-sm);cursor:pointer;animation:.4s both card-in;animation-delay:calc(var(--i) * 60ms);border:3px solid #0000;align-items:center;gap:16px;padding:18px;transition:transform .12s,border-color .12s;display:flex}@keyframes card-in{0%{opacity:0;transform:translateY(16px)scale(.98)}}.mission-card:hover{border-color:var(--yellow);transform:translateY(-3px)}.mission-card:active{box-shadow:0 2px 0 #c9d9ea, var(--shadow-sm);transform:translateY(3px)}.mission-card.mastered{background:linear-gradient(135deg,#fff,#fff7d6)}.mission-icon{background:var(--sky-light);border-radius:18px;flex:none;place-items:center;width:64px;height:64px;font-size:2.1rem;display:grid}.mission-icon.big{width:76px;height:76px;font-size:2.5rem}.mission-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mission-number{color:var(--muted);font-size:.85rem;font-weight:800}.mission-title{font-family:var(--font-display);font-size:1.4rem;font-weight:800;line-height:1.1}.mission-foot{align-items:center;gap:12px;margin-top:4px;display:flex}.mission-best{color:var(--muted);align-items:center;gap:4px;font-size:.9rem;font-weight:800;display:inline-flex}.mission-go{width:40px;height:40px;color:var(--green);background:#e6f8ed;border-radius:50%;place-items:center;font-size:1.3rem;display:grid}.modal-backdrop{z-index:40;padding:calc(16px + var(--safe-top)) 16px calc(16px + var(--safe-bottom));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto;background:#081c348c;place-items:center;animation:.18s both fade-in;display:grid;position:absolute;inset:0}.modal-backdrop.closing{animation:.16s both fade-out}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.modal{background:var(--card);border-radius:var(--radius);width:min(560px,100%);max-height:100%;box-shadow:var(--shadow);flex-direction:column;gap:18px;padding:28px;animation:.25s cubic-bezier(.2,1.2,.4,1) both modal-in;display:flex;position:relative;overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(20px)scale(.96)}}.modal-close{width:42px;min-height:42px;box-shadow:none;background:var(--sky-light);position:absolute;top:14px;right:14px}.modal-close:active{box-shadow:none;transform:none}.sheet-head{align-items:center;gap:16px;padding-right:40px;display:flex}.sheet-blurb{font-size:1.08rem}.sheet-case,.results-case{color:var(--navy);background:#fff6d6;border-radius:12px;align-items:flex-start;gap:8px;margin:0 0 12px;padding:8px 12px;font-size:.95rem;line-height:1.35;display:flex}.results-case{justify-content:center;margin:4px 0 8px;font-weight:700}.sheet-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.difficulty-list{flex-direction:column;gap:10px;display:flex}.difficulty{text-align:left;font:inherit;color:inherit;border:3px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:#f6faff;align-items:center;gap:14px;padding:14px 16px;transition:border-color .12s,background .12s;display:flex}.difficulty:hover:not(:disabled){border-color:#b9d3ee}.difficulty.selected{border-color:var(--green);background:#effbf3}.difficulty.locked{opacity:.6;cursor:not-allowed}.difficulty-stars{flex:none;justify-content:center;width:64px;display:flex}.difficulty-text{flex-direction:column;flex:1;gap:2px;display:flex}.difficulty-text strong{font-family:var(--font-display);align-items:center;gap:8px;font-size:1.2rem;display:flex}.difficulty-text>span{color:var(--muted);font-size:.95rem}.done-tag{font-family:var(--font-body);color:var(--green);background:#e6f8ed;border-radius:99px;align-items:center;gap:3px;padding:2px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.lock{color:var(--muted);font-size:1.3rem}.stack{flex-direction:column;gap:12px;display:flex}.pause-modal{text-align:center;width:min(380px,100%)}.settings-list{flex-direction:column;display:flex}.setting{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:14px;padding:14px 0;display:flex}.setting-icon{background:var(--sky-light);width:40px;height:40px;color:var(--sky);border-radius:12px;place-items:center;font-size:1.3rem;display:grid}.setting-label{flex-direction:column;flex:1;font-size:1.05rem;font-weight:800;display:flex}.setting-label small{color:var(--muted);font-size:.85rem;font-weight:600}.switch{appearance:none;cursor:pointer;background:#cfdbe8;border-radius:99px;flex:none;width:56px;height:32px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:4px;left:4px;box-shadow:0 2px 4px #0003}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(24px)}.switch:focus-visible{outline-offset:2px;outline:4px solid #f7c20fe6}.segmented{background:var(--sky-light);border-radius:12px;padding:4px;display:flex}.segmented button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:8px 14px;font-weight:800}.segmented button[aria-checked=true]{color:var(--navy);box-shadow:var(--shadow-sm);background:#fff}.danger-zone{justify-content:center;display:flex}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.badge-tile{text-align:center;border-radius:var(--radius-sm);color:var(--muted);background:#f2f6fb;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;display:flex}.badge-tile.owned{color:var(--navy);background:linear-gradient(160deg,#fff8d9,#ffe9a3)}.badge-tile .badge-emoji{width:58px;height:58px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;place-items:center;font-size:2rem;display:grid}.badge-tile:not(.owned) .badge-emoji{box-shadow:none;background:#e3ebf4;font-size:1.4rem}.badge-tile span:last-child{font-size:.82rem}.prose{-webkit-user-select:text;user-select:text;flex-direction:column;gap:10px;line-height:1.5;display:flex}.prose h3{margin-top:8px;font-size:1.2rem}.prose ul{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.small{font-size:.85rem}.tutorial-screen{background:#0e346059;place-items:center;display:grid}.tutorial-card{flex-direction:column;gap:20px;width:min(620px,100%);padding:28px;display:flex;position:relative}.tutorial-topo{filter:drop-shadow(0 8px 14px #00000040);width:92px;height:92px;animation:2.6s ease-in-out infinite float;position:absolute;top:-44px;left:24px}.tutorial-topo svg{width:100%;height:100%}.speech{min-height:52px;padding-left:110px}.steps{gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{border-radius:var(--radius-sm);background:#f4f8fd;align-items:center;gap:14px;padding:12px 14px;display:flex}.steps li>span:last-child{display:block}.steps strong{font-family:var(--font-display);font-size:1.12rem;display:block}.step-icon{width:48px;height:48px;color:var(--sky);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;flex:none;place-items:center;font-size:1.5rem;display:grid}.ring-icon:before{content:"";border:5px solid var(--yellow);border-radius:50%;width:24px;height:24px;box-shadow:0 0 12px #f7c20fcc}.tutorial-card>.btn{align-self:flex-end}.hud{pointer-events:none;padding:calc(14px + var(--safe-top)) calc(14px + var(--safe-right)) calc(14px + var(--safe-bottom)) calc(14px + var(--safe-left));position:absolute;inset:0}.hud .btn{pointer-events:auto}.hud-top{grid-template-columns:1fr auto 1fr;align-items:start;gap:12px;display:grid}.hud-left{flex-direction:column;gap:8px;display:flex}.hud-lives{color:#ff3b4e;filter:drop-shadow(0 2px 2px #0000004d);gap:4px;font-size:1.9rem;display:flex}.hud.no-lives .hud-lives{display:none}.heart{transition:transform .3s,opacity .3s;display:inline-flex}.heart svg{stroke:#fff;stroke-width:1.6px}.heart.lost{color:#ffffff73;animation:.5s heart-lost}@keyframes heart-lost{30%{transform:scale(1.4)}}.hud-streak{color:#fff;box-shadow:var(--shadow-sm);background:linear-gradient(#ff9d2e,#ff6a00);border-radius:99px;align-self:flex-start;align-items:center;gap:6px;padding:4px 12px 4px 8px;font-weight:800;animation:.35s cubic-bezier(.3,1.6,.5,1) pop-in;display:inline-flex}.hud-prompt{text-align:center;border-bottom:5px solid var(--yellow);min-width:min(380px,60vw);max-width:560px;box-shadow:var(--shadow);background:#fffffff2;border-radius:20px;flex-direction:column;align-items:center;padding:10px 26px 12px;display:flex}.hud-prompt.hidden{visibility:hidden;display:flex!important}.hud-prompt.pop{animation:.45s cubic-bezier(.25,1.4,.5,1) prompt-in}@keyframes prompt-in{0%{opacity:0;transform:translateY(-30px)scale(.9)}}.prompt-eyebrow{color:var(--muted);font-size:.95rem;font-weight:800}.prompt-title{font-family:var(--font-display);color:var(--navy);font-size:clamp(1.7rem,4vw,2.5rem);font-weight:800;line-height:1.05}.prompt-sub{color:var(--sky);font-weight:700}.prompt-timer{background:#e3ebf4;border-radius:99px;width:100%;height:8px;margin-top:8px;overflow:hidden}.timer-fill{background:var(--green);transform-origin:0;height:100%;transition:transform .1s linear;display:block}.prompt-timer.urgent .timer-fill{background:var(--danger)}.hud-right{justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.hud-score{box-shadow:var(--shadow-sm);background:#ffffffe6;border-radius:16px;flex-direction:column;align-items:flex-end;padding:4px 14px;display:flex}.score-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:800;line-height:1}.score-label{color:var(--muted);font-size:.75rem;font-weight:800}.score-round{color:var(--sky);font-size:.72rem;font-weight:800;display:none}.hud-progress{left:50%;bottom:calc(18px + var(--safe-bottom));align-items:center;gap:10px;width:min(360px,50vw);display:flex;position:absolute;transform:translate(-50%)}.progress-track{background:#ffffff8c;border-radius:99px;flex:1;height:12px;overflow:hidden;box-shadow:inset 0 2px 3px #0000001f}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, #ffd84a, var(--yellow));width:0;height:100%;transition:width .5s}.progress-label{color:#fff;text-shadow:0 1px 4px #00000073;font-variant-numeric:tabular-nums;font-weight:800}.hud-altimeter{left:calc(16px + var(--safe-left));flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.alt-label{color:#fff;text-shadow:0 1px 3px #00000080;font-size:.72rem;font-weight:800}.alt-track{background:#ffffff8c;border-radius:99px;width:14px;height:min(200px,32vh);position:relative;box-shadow:inset 0 2px 4px #00000026,0 2px 8px #00000026}.alt-band{background:#f7c20fd9;border-radius:99px;position:absolute;left:0;right:0;box-shadow:0 0 10px #f7c20fcc}.alt-marker{background:var(--red);border:3px solid #fff;border-radius:50%;width:26px;height:26px;transition:background .2s;position:absolute;left:50%;transform:translate(-50%,50%);box-shadow:0 2px 6px #00000059}.alt-marker.in-band{background:var(--green)}.turbo-btn{right:calc(16px + var(--safe-right));bottom:calc(clamp(130px, 18vw, 210px) + 34px + var(--safe-bottom));z-index:6;width:84px;height:84px;font-family:var(--font-display);color:#4a3500;background:linear-gradient(180deg, #ffd84a, var(--yellow));box-shadow:0 5px 0 var(--yellow-dark), var(--shadow-sm);touch-action:none;pointer-events:auto;-webkit-user-select:none;border:4px solid #ffffffe6;border-radius:50%;font-size:1.05rem;font-weight:800;display:none;position:absolute}.turbo-btn.held{box-shadow:0 1px 0 var(--yellow-dark), var(--shadow-sm);transform:translateY(4px)scale(.96)}.hud-toast{left:50%;top:calc(150px + var(--safe-top));text-align:center;color:#fff;max-width:min(480px,90vw);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:12px 22px;animation:.35s cubic-bezier(.25,1.4,.5,1) toast-in;display:flex;position:absolute;transform:translate(-50%)}.hud-toast strong{font-family:var(--font-display);font-size:1.35rem}.hud-toast.wrong{background:linear-gradient(180deg, #ef5a4f, var(--danger))}.hud-toast.timeout{background:linear-gradient(#ff9d2e,#e36a00)}.hud-toast.info{background:linear-gradient(180deg, #3d95e6, var(--sky))}.hud-toast.discover{color:var(--navy);background:linear-gradient(#ffcf3f,#e9a300)}.hud.free .hud-streak,.hud.free .hud-progress{display:none}.free-emoji{font-size:2rem;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-16px)scale(.92)}}.hud-fact{left:50%;top:calc(18px + var(--safe-top));border-radius:var(--radius);border-bottom:5px solid var(--green);width:min(520px,100vw - 28px);box-shadow:var(--shadow);pointer-events:auto;background:#fff;flex-direction:column;gap:12px;padding:18px 20px 20px;animation:.45s cubic-bezier(.25,1.4,.5,1) prompt-in;display:flex;position:absolute;overflow:hidden;transform:translate(-50%)}.fact-head{align-items:center;gap:12px;display:flex}.fact-head strong{font-family:var(--font-display);font-size:1.4rem;line-height:1.1;display:block}.fact-check{color:#fff;background:var(--green);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:1.5rem;animation:.4s cubic-bezier(.3,1.6,.5,1) pop-in;display:grid}.fact-points{color:var(--green);font-weight:800}.hud-fact p{font-size:1.08rem;line-height:1.4}.hud-fact .btn{align-self:flex-end}.fact-timer{transform-origin:0;background:#1fa85559;width:100%;height:4px;animation:linear forwards drain;position:absolute;bottom:0;left:0}.hud.paused .fact-timer{animation-play-state:paused}@keyframes drain{to{transform:scaleX(0)}}@keyframes pop-in{0%{transform:scale(0)}}.hud-countdown{font-family:var(--font-display);color:#fff;text-shadow:0 6px 0 var(--yellow-dark), 0 12px 30px #00000059;place-items:center;font-size:clamp(5rem,18vw,10rem);font-weight:800;display:grid;position:absolute;inset:0}.hud-countdown.pop{animation:.7s ease-out both count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.8)}25%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:.4;transform:scale(.9)}}.hud-bottom{right:calc(14px + var(--safe-right));bottom:calc(14px + var(--safe-bottom));align-items:flex-end;gap:12px;display:flex;position:absolute}.btn-hint{--bg:linear-gradient(180deg, #ffd84a, var(--yellow));--fg:#4a3500;--edge:var(--yellow-dark)}.btn-hint kbd{background:#00000014;border-color:#0000001f}.minimap{aspect-ratio:1;width:clamp(130px,18vw,210px);box-shadow:var(--shadow);background:#3b8fd6;border:4px solid #fffffff2;border-radius:20px;position:relative;overflow:hidden}.minimap canvas{width:100%;height:100%}.minimap-north{font-family:var(--font-display);color:#fff;background:#16324fbf;border-radius:99px;padding:0 8px;font-size:.8rem;font-weight:800;position:absolute;top:6px;left:50%;transform:translate(-50%)}.touch-zone{z-index:5;touch-action:none;width:50%;height:65%;display:none;position:absolute;bottom:0;left:0}.touch-zone.split{height:100%}.touch-zone.right{height:100%;left:auto;right:0}@media (pointer:coarse){.touch-zone.active,.turbo-btn.active{display:block}.hint-keys,kbd{display:none}}.joystick-base{opacity:.6;background:#ffffff2e;border:3px solid #ffffff8c;border-radius:50%;width:128px;height:128px;transition:opacity .15s;position:absolute;top:calc(100% - 120px);left:135px;transform:translate(-50%,-50%)}.joystick-base.held{opacity:1}.joystick-knob{background:radial-gradient(circle at 35% 30%,#fff,#dfe9f4);border-radius:50%;width:58px;height:58px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 10px #0000004d}.results-screen{background:#0e346066;place-items:center;display:grid}.results-card{text-align:center;flex-direction:column;align-items:center;gap:14px;width:min(620px,100%);padding:26px 26px 24px;display:flex}.results-hero{flex-direction:column;align-items:center;gap:6px;margin-top:-6px;display:flex}.results-topo{width:92px;height:92px;animation:2.4s ease-in-out infinite float}.results-topo svg{width:100%;height:100%}.results-card.lose .results-topo{filter:saturate(.7)}.results-score{flex-direction:column;align-items:center;display:flex}.big-number{font-family:var(--font-display);color:var(--sky);font-variant-numeric:tabular-nums;font-size:3.4rem;font-weight:800;line-height:1}.record{color:var(--green)}.results-stats{grid-template-columns:repeat(2,1fr);gap:10px;width:100%;margin:0;display:grid}.results-stats div{border-radius:var(--radius-sm);background:#f4f8fd;padding:10px}.results-stats dt{color:var(--muted);font-size:.85rem;font-weight:700}.results-stats dd{font-family:var(--font-display);margin:0;font-size:1.45rem;font-weight:800}.results-stats small{color:var(--muted);font-size:.8rem}.results-badges,.results-missed{flex-direction:column;align-items:center;gap:8px;display:flex}.results-badges{flex-flow:wrap;justify-content:center}.results-badges .eyebrow{width:100%}.badge-pill{box-shadow:var(--shadow-sm);background:linear-gradient(160deg,#fff8d9,#ffe9a3);border-radius:99px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-weight:800;animation:.5s cubic-bezier(.3,1.6,.5,1) .6s both pop-in;display:inline-flex}.badge-pill .badge-emoji{background:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.results-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}@media (width<=720px),(height<=520px){.title-screen{background:linear-gradient(#0000 20%,#0e34604d 45%,#0e3460bf 100%);align-items:flex-end}.title-panel{gap:14px;width:100%;margin:0 auto}.logo-emblem{width:70px;height:70px}.hud-prompt{min-width:0;padding:6px 16px 8px}.prompt-eyebrow{font-size:.82rem}.hud-top{grid-template-columns:auto 1fr auto}.hud-lives{font-size:1.4rem}.hud-score{padding:2px 10px}.score-value{font-size:1.3rem}.hud-toast{top:calc(110px + var(--safe-top))}.hud-progress{display:none}.score-round{display:block}.modal{padding:22px 18px}.speech{padding-left:90px}.tutorial-topo{width:76px;height:76px;top:-30px}.steps li{padding:8px 10px}}@media (height<=520px){.title-screen{background:linear-gradient(90deg,#0e3460b3 0%,#0e346033 55%,#0000 75%);align-items:center}.title-panel{max-width:420px;margin:0}.logo-big{font-size:3.2rem}.tagline{display:none}.hud-toast{top:calc(84px + var(--safe-top))}}@media (height<=500px) and (orientation:landscape){.title-screen{padding-top:calc(12px + var(--safe-top));padding-bottom:calc(12px + var(--safe-bottom))}.title-panel{grid-template-columns:minmax(0,auto) minmax(0,1fr);grid-auto-flow:dense;align-content:center;align-items:center;gap:10px 28px;width:100%;max-width:min(880px,100%);display:grid}.title-panel>*{grid-column:1}.title-panel>.title-actions{grid-area:1/2/span 6}.logo{gap:10px}.logo-emblem{width:56px;height:56px}.logo-small{font-size:1.1rem}.logo-big{font-size:2.6rem}.tagline{display:none}.title-stats .chip{padding:4px 10px;font-size:.88rem}.title-actions{gap:10px}.title-actions .btn-xl{min-height:54px;padding:10px 28px;font-size:1.35rem}.title-actions .btn-lg{min-height:44px;padding:8px 16px;font-size:1rem}.title-row,.title-secondary{gap:8px}.title-secondary .btn{min-height:44px;padding:6px 12px;font-size:.92rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.fact-timer{animation-duration:5s!important}}.profile-chip{font:inherit;color:var(--navy);box-shadow:var(--shadow-sm);cursor:pointer;background:#ffffffeb;border:0;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-weight:800;display:inline-flex}.profile-chip small{color:var(--muted);font-weight:700}.profile-avatar{background:var(--sky-light);border-radius:50%;place-items:center;width:34px;height:34px;font-size:1.3rem;display:grid}.title-row{flex-wrap:wrap;gap:10px;display:flex}.text-input{width:100%;min-height:46px;font:inherit;color:var(--navy);border:3px solid var(--line);border-radius:var(--radius-sm);background:#f6faff;padding:10px 14px;font-weight:700}.text-input:focus{border-color:var(--sky);outline:none}.new-player,.code-form{flex-direction:column;gap:10px;display:flex}.avatar-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.avatar-pick{aspect-ratio:1;border:3px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:#f6faff;font-size:1.6rem}.avatar-pick[aria-checked=true]{border-color:var(--green);background:#effbf3}.player-row{align-items:center;gap:8px;display:flex}.player-row .player-pick{flex:1}.player-row.active .player-pick{border-color:var(--green);background:#effbf3}.board-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.board-list li{border-radius:var(--radius-sm);background:#f6faff;grid-template-columns:2em 2em 1fr auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.board-list li.me{background:#fff4cc}.board-place{font-family:var(--font-display);color:var(--muted);font-weight:800}.board-list li:first-child .board-place{color:var(--yellow-dark)}.board-avatar{font-size:1.3rem}.board-name{flex-direction:column;font-weight:800;display:flex}.board-name small{color:var(--muted);font-weight:700}.board-score{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:800}.board-empty{text-align:center;color:var(--muted);border-radius:var(--radius-sm);background:#f6faff;margin:0;padding:18px}.code-row{gap:8px;display:flex}.code-error{color:var(--danger);font-weight:700}.challenge-target b{font-family:var(--font-display);font-size:1.4rem}.results-board{color:var(--yellow-dark);justify-content:center;align-items:center;gap:8px;margin:0;font-weight:800;display:flex}.results-board.muted{color:var(--muted);font-weight:700}.results-special{font-size:3rem;line-height:1}.results-history{flex-direction:column;align-items:center;gap:6px;display:flex}.history-bars{align-items:flex-end;gap:6px;height:54px;display:flex}.history-bar{background:#c9dcf0;border-radius:6px 6px 2px 2px;width:18px}.history-bar.now{background:var(--yellow)}.mission-card.practice{border-color:#ffd84a}.list-settings{flex-wrap:wrap;gap:10px;display:flex}.list-groups{flex-direction:column;flex-shrink:0;gap:10px;max-height:42vh;padding-right:4px;display:flex;overflow-y:auto}.list-group{border:2px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:10px 12px}.list-group legend{padding:0 6px;font-weight:800}.list-options{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 12px;display:grid}.list-options label,.list-group legend label{cursor:pointer;align-items:center;gap:6px;display:flex}.duo-names{color:var(--muted);align-items:center;gap:8px;font-weight:800;display:flex}.duo-list li{grid-template-columns:2em 1fr auto}.duo-list li.winner{background:#fff4cc}.duo-crown{font-size:1.3rem}.hud-prompt{cursor:pointer;pointer-events:auto}.race-layer{display:none}.hud.race .race-layer{display:block}.hud.race .hud-top{z-index:1;position:relative}.race-divider{background:#ffffffe6;width:4px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 12px #0a254659}.race-tag{bottom:calc(18px + var(--safe-bottom));font-family:var(--font-display);color:var(--navy);box-shadow:var(--shadow-sm);border-radius:999px;padding:6px 14px;font-size:1.1rem;font-weight:800;position:absolute}.race-tag.left{left:calc(18px + var(--safe-left));background:#ffe27a}.race-tag.right{right:calc(18px + var(--safe-right));bottom:calc(clamp(130px, 18vw, 210px) + 34px + var(--safe-bottom));background:#a9d4fb}.race-tag.out{opacity:.6}.hud.race .hud-altimeter{display:none}.crash-screen{z-index:1000;padding:calc(16px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left));background:#102442b8;place-items:center;display:grid;position:fixed;inset:0}.crash-card{max-width:420px;color:var(--navy);text-align:center;background:#fff;border-radius:24px;padding:24px;box-shadow:0 18px 40px #0000004d}.crash-face{font-size:48px}.crash-card h2{margin:8px 0}.crash-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.parents-gate label{flex-direction:column;gap:6px;font-weight:700;display:flex}.licenses-text{white-space:pre-wrap;-webkit-user-select:text;user-select:text;background:#f2f6fb;border-radius:12px;max-height:55vh;margin:0;padding:10px;font-size:12px;overflow:auto}.small-print .link-btn{min-height:44px;padding:0 4px}.btn-sm,button.chip,a.chip,.link-btn,.title-stats .chip{min-height:44px}button.chip,a.chip{justify-content:center;min-width:44px}.debug-overlay{left:calc(6px + var(--safe-left));bottom:calc(6px + var(--safe-bottom));z-index:2000;color:#9f9;pointer-events:none;background:#000000b3;border-radius:8px;margin:0;padding:6px 8px;font:11px/1.35 ui-monospace,monospace;position:fixed}.prefs{margin-top:8px}.prefs summary{cursor:pointer;align-items:center;min-height:44px;font-weight:800;display:flex}.prefs .volume{width:min(160px,40%);min-height:44px;accent-color:var(--sky)}body.less-motion *,body.less-motion :before,body.less-motion :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body.less-motion .fact-timer{animation-duration:5s!important}body.plain-font{--font-display:Verdana, Tahoma, "DejaVu Sans", sans-serif;--font-body:Verdana, Tahoma, "DejaVu Sans", sans-serif;letter-spacing:.01em}body.left-handed .touch-zone:not(.right):not(.split){left:auto;right:0}body.left-handed .turbo-btn{right:auto;left:calc(16px + var(--safe-left))}.more-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:12px;display:grid}.more-list .btn{justify-content:flex-start}.tutorial-screen.lesson-screen{pointer-events:none;background:0 0;place-items:start center}.lesson-card{pointer-events:auto;align-items:center;gap:14px;width:min(560px,100%);padding:12px 16px;display:flex}.lesson-card.done{background:#fff7d6}.lesson-icon{font-size:2.4rem;line-height:1}.lesson-text{flex-direction:column;flex:1;font-size:1.15rem;display:flex}
