:root{--bg:#f3f6ff;--card:#fff;--ink:#1f2440;--muted:#6b7291;--accent:#4f6df5;--correct:#17a673;--wrong:#e4572e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Nunito,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 20% 0%, #e5ecff, var(--bg));min-height:100vh;color:var(--ink);justify-content:center;margin:0;display:flex}.app{flex-direction:column;gap:20px;width:min(560px,100%);padding:24px 16px 40px;display:flex}h1{text-align:center;margin:0 0 12px;font-size:1.6rem}.levels{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.level{font:inherit;color:var(--muted);cursor:pointer;background:#fffc;border:2px solid #0000;border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:700}.level--active{color:var(--accent);border-color:var(--accent);background:#fff}.card{background:var(--card);border:3px solid #0000;border-radius:24px;padding:28px 20px 24px;transition:border-color .15s;box-shadow:0 18px 40px -24px #2b3a8f80}.card--correct{border-color:var(--correct)}.card--wrong{border-color:var(--wrong)}.problem{text-align:center;letter-spacing:.02em;margin:0;font-size:clamp(2.2rem,10vw,3rem);font-weight:800}.answer{color:var(--accent)}.feedback{text-align:center;min-height:1.6em;color:var(--muted);margin:8px 0 20px;font-weight:700}.card--correct .feedback{color:var(--correct)}.card--wrong .feedback{color:var(--wrong)}.keypad{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.key{font:inherit;color:var(--ink);cursor:pointer;background:#eef1fb;border:none;border-radius:16px;padding:16px 0;font-size:1.5rem;font-weight:800}.key:active{transform:translateY(1px)}.key--enter{background:var(--accent);color:#fff}.key--clear{color:var(--muted);background:#e6e9f5}.scoreboard{text-align:center;justify-content:space-around;display:flex}.score-value{font-size:1.5rem;font-weight:800;display:block}.score-label{color:var(--muted);font-size:.8rem}.topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{text-align:left;margin:0;font-size:1.25rem}.back{font:inherit;color:var(--accent);cursor:pointer;background:#fff;border:none;border-radius:999px;padding:8px 16px;font-size:.95rem;font-weight:800;box-shadow:0 6px 16px -10px #2b3a8f80}.gems{background:#fff;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-weight:800;display:flex;box-shadow:0 6px 16px -10px #2b3a8f80}.gems-icon{font-size:1.1rem}.gems-count{font-variant-numeric:tabular-nums}.screen-title{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:1.05rem}.tiles{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.tile{min-height:130px;font:inherit;text-align:left;color:var(--ink);background:var(--card);cursor:pointer;border:3px solid #0000;border-radius:20px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex;position:relative;box-shadow:0 14px 30px -22px #2b3a8f99}.tile:hover:not(:disabled){border-color:var(--accent)}.tile--locked{color:var(--muted);cursor:default;background:#ffffff80}.tile-icon{font-size:1.8rem}.tile-label{font-size:1rem;font-weight:800;line-height:1.25}.tile-soon{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#e6e9f5;border-radius:999px;padding:3px 8px;font-size:.65rem;font-weight:800;position:absolute;top:12px;right:12px}.shelf{justify-content:space-between;gap:10px;display:flex}.shelf-item{font:inherit;color:var(--muted);cursor:pointer;background:#fffc;border:none;border-radius:18px;flex-direction:column;flex:1;align-items:center;gap:6px;padding:14px 8px;font-size:.8rem;font-weight:700;display:flex}.shelf-item:hover{color:var(--accent)}.shelf-icon{font-size:1.4rem}.card--empty{text-align:center}.empty-icon{margin:0;font-size:3rem}.empty-note{color:var(--muted);margin:8px 0 0;font-weight:700}.runner-hud{justify-content:space-between;align-items:baseline;font-weight:800;display:flex}.runner-saves{color:var(--muted);font-size:.85rem}.runner-score{font-variant-numeric:tabular-nums}.runner-score small{color:var(--muted);font-size:.75rem;font-weight:700}.runner-stage{position:relative}.runner-canvas{touch-action:manipulation;cursor:pointer;border-radius:20px;width:100%;height:auto;display:block;box-shadow:0 14px 30px -22px #2b3a8f99}.runner-overlay{text-align:center;color:#fff;background:#1f244099;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.overlay-title{margin:0;font-size:1.3rem;font-weight:800}.overlay-note{opacity:.85;max-width:32ch;margin:0;font-size:.85rem;font-weight:700}.overlay-button{font:inherit;color:#fff;background:var(--accent);cursor:pointer;border:none;border-radius:999px;padding:12px 28px;font-size:1rem;font-weight:800}.timer{background:#eef1fb;border-radius:999px;height:10px;margin:-8px 0 16px;overflow:hidden}.timer-bar{background:var(--accent);border-radius:999px;height:100%;transition:width .1s linear}.timer-bar--urgent{background:var(--wrong)}.voyage-track{background:#dde4f7;border-radius:999px;height:12px;margin:-8px 0 4px;position:relative}.voyage-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .12s linear}.voyage-ship{font-size:1.1rem;transition:left .12s linear;position:absolute;top:-10px;transform:translate(-50%)}.voyage-goal{font-size:1.1rem;position:absolute;top:-10px;right:-6px}.fire-button{font:inherit;color:#fff;background:var(--ink);cursor:pointer;touch-action:manipulation;border:none;border-radius:16px;padding:14px;font-size:1rem;font-weight:800}.fire-button small{opacity:.6;margin-left:6px;font-size:.7rem;font-weight:700}.shop-intro{color:var(--muted);margin:-8px 0 0;font-size:.85rem;font-weight:700}.shop-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.shop-item{background:var(--card);border:3px solid #0000;border-radius:20px;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;display:flex;box-shadow:0 14px 30px -24px #2b3a8f99}.shop-item--selected{border-color:var(--accent)}.shop-glyph{font-size:2.2rem;line-height:1}.shop-name{font-size:.8rem;font-weight:800}.shop-button{font:inherit;color:#fff;background:var(--accent);cursor:pointer;border:none;border-radius:999px;padding:7px 14px;font-size:.8rem;font-weight:800}.shop-button--buy{background:var(--ink)}.shop-button:disabled{color:var(--muted);cursor:default;background:#dde1ef}.shop-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);padding:7px 0;font-size:.7rem;font-weight:800}.shop-short{color:var(--muted);font-size:.65rem;font-weight:700}.brand-avatar{font-size:1.1rem}.shop-bonus{color:var(--correct);font-size:.7rem;font-weight:800}.gems-bonus{color:#fff;background:var(--correct);border-radius:999px;padding:2px 7px;font-size:.7rem;font-weight:800}.level-name{text-transform:none;letter-spacing:0;color:var(--accent);font-weight:800}.level-strip{justify-content:space-between;gap:6px;display:flex}.level-pip{aspect-ratio:1;max-width:44px;font:inherit;color:var(--muted);cursor:pointer;background:#fffc;border:2px solid #0000;border-radius:14px;flex:1;font-size:.9rem;font-weight:800}.level-pip--current{color:#fff;background:var(--accent)}.level-pip--locked{cursor:default;background:#fff6;font-size:.7rem}.level-pip:disabled:not(.level-pip--current){opacity:.55}.overlay-actions{flex-direction:column;align-items:center;gap:8px;display:flex}.overlay-link{font:inherit;color:#fff;opacity:.75;cursor:pointer;background:0 0;border:none;font-size:.8rem;font-weight:700;text-decoration:underline}.gem-float{color:var(--correct);pointer-events:none;font-size:1.1rem;font-weight:800;animation:.9s ease-out forwards gem-rise;position:absolute;top:14px;right:16px}@keyframes gem-rise{0%{opacity:0;transform:translateY(10px)scale(.85)}25%{opacity:1;transform:translateY(0)scale(1.1)}to{opacity:0;transform:translateY(-22px)scale(1)}}.age-picker{background:#fffc;border-radius:18px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.age-label{color:var(--muted);font-size:.8rem;font-weight:800}.age-options{gap:6px;display:flex}.age-pip{aspect-ratio:1;max-width:44px;font:inherit;color:var(--muted);cursor:pointer;background:#eef1fb;border:2px solid #0000;border-radius:14px;flex:1;font-size:.9rem;font-weight:800}.age-pip--current{color:#fff;background:var(--accent)}.age-note{color:var(--muted);font-size:.7rem;font-weight:700}.glyph-flip{display:inline-block;transform:scaleX(-1)}.shop-art{object-fit:contain;width:2.6rem;height:2rem}.brand-art{object-fit:contain;vertical-align:-.15rem;width:1.7rem;height:1.3rem}
