:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#0b1526;--ink:#f4f6fa;--muted:#a5b7cf;--accent:#ffbe5c;--surface:#101e33;--surface-raised:#172840;--cell:#1d304a;--selected:#374251;--border:#344963;--border-strong:#566b86;--message:#d3dfef;--corner:#8196b4;--success:#89e5c1;--success-bg:#183e3c;--success-border:#347065;--error:#ffb7ae;--error-border:#c67267;--overlay:#0b1526e8;--overlay-soft:#0b152659;--dialog-backdrop:#030a16cc;--reward-bg:radial-gradient(circle at 12% 8%, #58365f 0 8%, transparent 24%), radial-gradient(circle at 88% 16%, #215469 0 8%, transparent 24%), linear-gradient(145deg, #241b2b, #40203c 48%, #143747);--reward-ink:#fff5fb;--reward-muted:#d9bfd2;--reward-surface:#211a29e8;--reward-card:#2c2030;--reward-border:#a65d83;--reward-heading:#efa6fa;--reward-accent:#ff78b1}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--bg:#f3f6fb;--ink:#14233a;--muted:#526984;--accent:#b66300;--surface:#fff;--surface-raised:#e8eff8;--cell:#f7faff;--selected:#fff0cf;--border:#9dafc6;--border-strong:#7187a3;--message:#344963;--corner:#627896;--success:#16705a;--success-bg:#dff6ec;--success-border:#54a891;--error:#9f2f23;--error-border:#bd675d;--overlay:#f3f6fbe8;--overlay-soft:#f3f6fb99;--dialog-backdrop:#26364e99;--reward-bg:radial-gradient(circle at 12% 8%, #fff7a8 0 8%, transparent 24%), radial-gradient(circle at 88% 16%, #bdf3ff 0 8%, transparent 24%), linear-gradient(145deg, #fff9d9, #ffd8eb 48%, #d9f6ff);--reward-ink:#482544;--reward-muted:#684761;--reward-surface:#ffffffdc;--reward-card:#fffafc;--reward-border:#f3a8c8;--reward-heading:#8b3fa2;--reward-accent:#b51f62}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1526;--ink:#f4f6fa;--muted:#a5b7cf;--accent:#ffbe5c;--surface:#101e33;--surface-raised:#172840;--cell:#1d304a;--selected:#374251;--border:#344963;--border-strong:#566b86;--message:#d3dfef;--corner:#8196b4;--success:#89e5c1;--success-bg:#183e3c;--success-border:#347065;--error:#ffb7ae;--error-border:#c67267;--overlay:#0b1526e8;--overlay-soft:#0b152659;--dialog-backdrop:#030a16cc;--reward-bg:radial-gradient(circle at 12% 8%, #58365f 0 8%, transparent 24%), radial-gradient(circle at 88% 16%, #215469 0 8%, transparent 24%), linear-gradient(145deg, #241b2b, #40203c 48%, #143747);--reward-ink:#fff5fb;--reward-muted:#d9bfd2;--reward-surface:#211a29e8;--reward-card:#2c2030;--reward-border:#a65d83;--reward-heading:#efa6fa;--reward-accent:#ff78b1}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f6fb;--ink:#14233a;--muted:#526984;--accent:#b66300;--surface:#fff;--surface-raised:#e8eff8;--cell:#f7faff;--selected:#fff0cf;--border:#9dafc6;--border-strong:#7187a3;--message:#344963;--corner:#627896;--success:#16705a;--success-bg:#dff6ec;--success-border:#54a891;--error:#9f2f23;--error-border:#bd675d;--overlay:#f3f6fbe8;--overlay-soft:#f3f6fb99;--dialog-backdrop:#26364e99;--reward-bg:radial-gradient(circle at 12% 8%, #fff7a8 0 8%, transparent 24%), radial-gradient(circle at 88% 16%, #bdf3ff 0 8%, transparent 24%), linear-gradient(145deg, #fff9d9, #ffd8eb 48%, #d9f6ff);--reward-ink:#482544;--reward-muted:#684761;--reward-surface:#ffffffdc;--reward-card:#fffafc;--reward-border:#f3a8c8;--reward-heading:#8b3fa2;--reward-accent:#b51f62}body{background:var(--bg);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{cursor:default}.game{max-width:820px;padding:16px 22px max(20px, env(safe-area-inset-bottom));margin:auto}.topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.topbar>div{min-width:0}.eyebrow{color:var(--muted);letter-spacing:.12em;margin:0 0 5px;font-size:.75rem}h1{letter-spacing:.05em;margin:0;font-size:clamp(1.4rem,1rem + 2vw,2rem)}h1 span{color:var(--accent)}.score{white-space:nowrap;font-size:1.8rem;font-weight:800}.score small{color:var(--muted);font-size:.9rem}.arena{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:12px}.board{grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;display:grid}.board-row{display:contents}.axis,.corner,.cell{justify-content:center;align-items:center;min-width:0;min-height:38px;font-size:1.15rem;font-weight:750;display:flex}.axis{color:var(--accent)}.corner{color:var(--corner)}.cell{border:1px solid var(--border);background:var(--cell);border-radius:7px;height:clamp(38px,4.7dvh,53px);padding:0}.cell[aria-pressed=true]{border:2px solid var(--accent);background:var(--selected)}.cell-question{white-space:nowrap;flex-direction:column;align-items:center;font-size:clamp(.65rem,2vw,1.1rem);line-height:1.1;display:flex}.cell.wrong .cell-question{font-size:clamp(.65rem,1.5dvh,.85rem)}.cell-mistake{font-size:.5rem;line-height:1}.cell.correct{color:var(--success);background:var(--success-bg);border-color:var(--success-border)}.cell.wrong{color:var(--error);border-color:var(--error-border)}.message{text-align:center;min-height:1.6em;color:var(--message);margin:12px 0;font-size:.9rem}.launchpad{border-top:1px solid var(--border);padding-top:12px}.launch-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}h2{margin:0;font-size:.9rem}.launch-heading span{color:var(--muted);font-size:.75rem}.answers{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.answer{background:var(--accent);color:#2c2317;border:1px solid #ecb254;border-radius:10px;min-width:0;min-height:50px;font-size:1.55rem;font-weight:800;box-shadow:0 4px #9c6c2c}.answer:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #9c6c2c}.answer:disabled{opacity:.5}.controls{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.control{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:8px;min-height:44px;padding:10px 14px;font-size:.8rem}.rocket{z-index:10;pointer-events:none;color:#302416;background:#ffe0a2;border-radius:55% 55% 20% 20%;justify-content:center;align-items:center;width:38px;height:52px;font-size:1.25rem;font-weight:900;display:flex;position:fixed;box-shadow:0 0 20px #ffb94780}.rocket:after{content:"";clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(#ffcb60,#fa6743,#0000);width:20px;height:28px;position:absolute;top:100%}.burst{z-index:11;pointer-events:none;border:3px solid var(--accent);background:radial-gradient(circle,#fff2cd 0%,#ffbe5c80 30%,#0000 70%);border-radius:50%;width:65px;height:65px;animation:.45s ease-out forwards burst;position:fixed}@keyframes burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.25)}to{opacity:0;transform:translate(-50%,-50%)scale(1.65)}}@media (prefers-reduced-motion:reduce){.burst{animation:.15s linear forwards burst}}@media (max-width:600px){.game{padding:14px 10px 24px}.arena{border-radius:12px;padding:6px}.board{gap:3px}.cell,.axis,.corner{min-height:30px;font-size:.85rem}.cell{border-radius:4px;height:35px}.answers{gap:7px}.answer{font-size:1.25rem}.launch-heading span{display:none}}@media (min-width:700px) and (max-height:800px){.game{padding-top:10px}.topbar{margin-bottom:8px}.eyebrow{display:none}.cell{height:38px}.message{margin:8px 0}.controls{margin-top:12px}}.stats{align-items:center;gap:20px;display:flex}.time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem}.cell{position:relative}.wrong-mark{font-size:.6rem;position:absolute;top:0;right:2px}.completed{color:var(--success);font-weight:800}.audio-error{text-align:center;color:var(--error);font-size:.85rem}@media (min-width:700px){.answers{grid-template-columns:repeat(9,minmax(0,1fr))}}@media (min-width:700px) and (max-height:800px){.answer{min-height:44px}}.rocket{top:0;left:0}.move-mode{border:0;min-width:0;margin:0 0 12px;padding:0}.move-mode legend{color:var(--muted);margin-bottom:7px;padding:0;font-size:.8rem}.mode-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mode-options label{border:1px solid var(--border-strong);background:var(--surface-raised);cursor:pointer;touch-action:manipulation;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:44px;font-size:.9rem;display:flex}.mode-options input{accent-color:var(--accent);width:16px;height:16px;margin:0}.mode-options label:has(:checked){border-color:var(--accent);color:var(--accent)}.mode-options input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.move-mode:disabled{opacity:.6}@media (max-width:600px){.mode-options{gap:5px}.mode-options label{gap:4px;font-size:.8rem}}.arena{position:relative}.countdown{background:var(--overlay);border-radius:inherit;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.countdown strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:6rem;line-height:1}.countdown span{font-size:1rem}.start{border-color:var(--accent);color:var(--accent);font-weight:800}.result-time{text-align:center;color:var(--success);font-variant-numeric:tabular-nums;font-size:.9rem}@media (max-width:600px){.stats{gap:8px}.time{font-size:.8rem}}.start-overlay{border-radius:inherit;background:var(--overlay-soft);place-items:center;display:grid;position:absolute;inset:0}.player-start{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface);border-radius:20px;gap:10px;width:min(88%,380px);padding:18px;display:grid}.player-start label{color:var(--ink);font-weight:800}.player-start input{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font:inherit;color:var(--ink);background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:8px;padding:8px 12px;font-size:1rem}.history-player{color:var(--ink);overflow-wrap:anywhere;margin:0 0 12px;font-size:1.25rem;font-weight:800}.result-player{overflow-wrap:anywhere;font-weight:800}.board-start{background:var(--accent);color:#2c2317;border:2px solid #ffe0a2;border-radius:22px;width:100%;min-width:0;min-height:100px;padding:24px 16px;font-size:clamp(2rem,5vw,3rem);font-weight:900;box-shadow:0 7px #9c6c2c,0 12px 40px #0006}.board-start:active:not(:disabled){transform:translateY(4px);box-shadow:0 3px #9c6c2c}.board-start:disabled{opacity:.5}.answer-mode .mode-options{grid-template-columns:repeat(3,minmax(0,1fr))}.reward-summary{min-width:0;margin-bottom:14px}.reward-toolbar,.reward-dialog-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.reward-toolbar>span{min-width:0;color:var(--muted);font-size:.85rem}.earned-rewards{color:var(--success);overflow-wrap:anywhere;font-size:.9rem}.reward-dialog{box-sizing:border-box;border:1px solid var(--border-strong);width:min(620px,100% - 24px);max-height:calc(100dvh - 32px);color:var(--ink);background:var(--surface);border-radius:18px;padding:22px;overflow-y:auto}.reward-dialog::backdrop{background:var(--dialog-backdrop)}.reward-dialog h2{font-size:1.15rem}.reward-dialog h3{margin:16px 0 10px;font-size:1rem}.reward-help{color:var(--muted);font-size:.8rem;line-height:1.7}.reward-records{font-size:.85rem;line-height:1.8}.reward-form{border-block:1px solid var(--border);grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:18px;display:grid}.reward-form>label,.reward-form legend{font-size:.9rem}.reward-form input:not([type=radio]){box-sizing:border-box;width:100%;min-width:0;min-height:48px;font:inherit;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--ink);border-radius:8px;padding:10px;font-size:1rem}.reward-form input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reward-form fieldset{border:0;min-width:0;margin:4px 0;padding:0}.reward-kind{align-items:center;gap:9px;min-height:48px;font-size:.9rem;display:flex}.reward-kind input{accent-color:var(--accent);width:18px;height:18px}.reward-target{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.reward-actions{flex-wrap:wrap;gap:8px;display:flex}.reward-list{grid-template-columns:minmax(0,1fr);gap:12px;padding:0;list-style:none;display:grid}.reward-list li{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:10px;gap:8px;padding:14px;display:grid}.reward-list li>span{font-size:.85rem}.reward-earned{color:var(--success);font-weight:800}@media (max-width:600px){.reward-dialog{padding:16px}}.play-game{box-sizing:border-box;width:100%;max-width:1200px;height:100dvh;padding:max(8px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));grid-template-rows:auto minmax(0,1fr) auto minmax(0,1fr) auto;gap:6px;display:grid;position:relative}.play-game>audio{display:none}.play-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.play-header .time{color:var(--ink);white-space:nowrap;font-size:clamp(2rem,4.5vw,3.5rem);font-weight:800;line-height:1.1}a.control{box-sizing:border-box;color:var(--ink);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.play-game .arena{border-radius:12px;min-height:0;padding:5px}.play-game .board{grid-template-rows:repeat(10,minmax(0,1fr));gap:3px;height:100%}.play-game .cell,.play-game .axis,.play-game .corner{height:100%;min-height:0;font-size:clamp(.8rem,2.2dvh,1.25rem)}.play-game .message{min-height:0;margin:0;font-size:.85rem;line-height:1.3}.play-game .launchpad{border:0;min-height:0;padding:0 0 3px}.play-game .answers{grid-template-rows:repeat(9,minmax(0,1fr));grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;height:100%}.play-game .answer{border-radius:6px;min-height:0;padding:0;font-size:clamp(1rem,2.5dvh,1.5rem);box-shadow:0 2px #9c6c2c}.play-game .controls{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;margin:0}.play-conditions{min-width:0;color:var(--muted);margin-right:auto;font-size:.75rem}.play-game .controls .control{white-space:nowrap;padding:6px 10px}.play-game>.audio-error{bottom:50px;z-index:12;background:var(--surface);padding:8px;position:absolute;inset-inline:12px}.result-dialog{text-align:center}.result-dialog .result-time{font-size:1rem;line-height:1.8}.result-dialog .result-time strong{font-size:3rem;display:block}.result-dialog .reward-actions{justify-content:center}@media (min-width:900px) and (max-height:850px){.play-game{grid-template-rows:auto minmax(0,1fr) auto minmax(323px,1fr) auto}}@media (max-width:600px){.play-header .score{font-size:1.2rem}.play-game .control{font-size:.75rem}.play-conditions{font-size:.65rem}}.menu-page{max-width:760px;margin:auto;padding:28px 20px}.menu-heading{margin-bottom:28px}.menu-heading h1{font-size:clamp(2rem,6vw,3rem)}.menu-heading p{color:var(--muted);line-height:1.7}.play-settings{background:var(--surface);border:1px solid var(--border);border-radius:16px;gap:18px;padding:20px;display:grid}.menu-play{background:var(--accent);color:#2c2317;min-height:68px;font:inherit;border:1px solid #ffe0a2;border-radius:12px;padding:20px;font-size:1.5rem;font-weight:800}.site-footer{padding:2px 16px max(4px, env(safe-area-inset-bottom));text-align:center;font-size:.7rem;line-height:1.5}.site-footer a{color:var(--muted)}.doc-page{max-width:760px;margin:auto;padding:24px 20px 40px;line-height:1.8}.doc-nav{margin-bottom:20px;font-size:.9rem}.doc-nav a,.doc-page a{color:var(--accent)}.doc-lead{color:var(--muted);font-size:.9rem}.doc-page h2{border-left:4px solid var(--accent);margin-top:2em;padding-left:.6em;font-size:1.1rem}.doc-page h3{margin-top:1.6em;font-size:1rem}.doc-page dt{margin-top:.8em;font-weight:700}.doc-page dd{color:var(--message);margin:0 0 0 1em}.doc-page code{font-size:.9em}.ad-slot{margin-bottom:8px}.ad-label{color:var(--muted);letter-spacing:.08em;margin:0 0 4px;font-size:.7rem}.ad-slot ins[data-ad-status=unfilled]{display:none}.menu-link{border:1px solid var(--border-strong);color:var(--ink);text-align:center;border-radius:12px;margin:18px 0 28px;padding:18px;text-decoration:none;display:block}.menu-topline{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.home-appearance{justify-content:flex-end;margin-bottom:14px;display:flex}.menu-actions{display:grid}.reward-icon-link{color:#38230d;background:linear-gradient(145deg,#fff5a6,#ffbe5c);border:2px solid #fff1bd;border-radius:24px;place-items:center;gap:4px;min-width:86px;min-height:86px;padding:8px;text-decoration:none;display:grid;box-shadow:0 7px #9c6c2c,0 12px 28px #0006}.reward-icon-link span{font-size:2.2rem;line-height:1}.reward-icon-link strong{font-size:.85rem}:is(.reward-icon-link:focus-visible,.reward-back:focus-visible,.reward-settings-link:focus-visible){outline:3px solid var(--ink);outline-offset:4px}.rank-mode{border:1px solid var(--border-strong);background:var(--bg);border-radius:12px;padding:12px}.rank-mode legend{color:var(--accent);padding-inline:6px;font-weight:800}.rank-mode .mode-options{grid-template-columns:repeat(6,minmax(0,1fr))}.rank-mode .mode-options label{min-height:48px}.history-page .menu-heading{margin-top:20px}.history-list{gap:10px;padding:0;list-style:none;display:grid}.history-list li{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}.history-result{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.history-rank{border:1px solid var(--accent);color:var(--accent);border-radius:8px;padding:6px 12px;font-size:1.05rem;font-weight:800}.history-result strong{font-variant-numeric:tabular-nums;font-size:1.75rem}.history-list time{color:var(--muted);font-size:.85rem}.history-conditions{background:var(--surface-raised);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;padding:14px;display:grid}.history-conditions>div{min-width:0}.history-conditions dt{color:var(--muted);margin-bottom:5px;font-size:.8rem}.history-conditions dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:700}@media (max-width:600px){.history-list li{padding:14px}.history-conditions{grid-template-columns:repeat(2,minmax(0,1fr))}}.history-empty{border:1px solid var(--border);border-radius:12px;padding:30px 16px}@media (max-width:600px){.menu-page{padding:20px 12px}.menu-topline{gap:8px}.menu-heading{min-width:0}.reward-icon-link{border-radius:18px;min-width:70px;min-height:70px}.reward-icon-link span{font-size:1.8rem}.play-settings{padding:14px}.rank-mode .mode-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.reward-page{isolation:isolate;box-sizing:border-box;max-width:900px;min-height:100dvh;color:var(--reward-ink);background:var(--reward-bg);margin:auto;padding:28px 20px 56px;position:relative;overflow:hidden}.reward-page:before{content:"";z-index:-1;opacity:.6;background-image:radial-gradient(circle,#ff6d9f 0 4px,#0000 5px),radial-gradient(circle,#28add1 0 3px,#0000 4px),linear-gradient(45deg,#0000 46%,#ffc63d 47% 53%,#0000 54%);background-position:12px 8px,45px 66px,20px 30px;background-size:110px 110px,137px 137px,160px 160px;position:absolute;inset:0}.reward-back{color:#fff;background:#8b3fa2;border-radius:999px;align-items:center;min-height:48px;padding-inline:18px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 5px #612373}.reward-page-nav,.page-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.reward-page-actions{align-items:center;gap:10px;display:flex}.reward-settings-link{color:#fff;background:#c22f70;border:2px solid #fff;border-radius:18px;place-items:center;min-width:64px;min-height:58px;padding:5px 10px;text-decoration:none;display:grid;box-shadow:0 5px #8d1d4c}.reward-settings-link span{font-size:1.5rem;line-height:1}.reward-settings-link strong{font-size:.75rem}.reward-page-heading{text-align:center;justify-content:center;align-items:center;gap:14px;padding:22px 0 26px;display:flex}.reward-page-heading span{filter:drop-shadow(0 8px 8px #8b3fa240);font-size:clamp(3rem,10vw,5rem)}.reward-page-heading h1{color:var(--reward-accent);text-shadow:0 3px #fff,0 7px 16px #c22f7040;font-size:clamp(2.4rem,8vw,4.5rem)}.reward-page .reward-summary{background:var(--reward-surface);border:3px solid var(--reward-border);border-radius:24px;padding:22px;box-shadow:0 18px 50px #0003}.reward-page .reward-section-title{color:var(--reward-heading);font-size:1.35rem}.reward-page .reward-toolbar>span,.reward-page .reward-help,.reward-page .reward-slot-label{color:var(--reward-muted)}.reward-page .earned-rewards,.reward-page .reward-earned{color:var(--reward-accent)}.reward-page .reward-list li{background:var(--reward-card);border:2px solid var(--reward-border)}.reward-page .control{color:#fff;background:#8b3fa2;border-color:#612373}.reward-page .reward-dialog{color:var(--reward-ink);background:var(--reward-card);border:3px solid var(--reward-border)}.reward-page .reward-dialog::backdrop{background:var(--dialog-backdrop)}.reward-page .reward-form{border-color:var(--reward-border)}.reward-page .reward-form input:not([type=radio]){color:var(--reward-ink);background:var(--reward-surface);border-color:var(--reward-border)}.reward-groups{grid-template-columns:minmax(0,1fr);gap:22px;display:grid}.reward-group{min-width:0}.reward-group h3{color:var(--reward-accent);margin:0 0 10px;font-size:1.25rem}.reward-settings-intro{color:var(--reward-ink);background:var(--reward-surface);border:2px solid var(--reward-border);border-radius:16px;margin:0 0 18px;padding:16px 18px;font-weight:700;line-height:1.7}@media (max-width:600px){.reward-page{padding:18px 12px 40px}.reward-page .reward-summary{border-radius:18px;padding:14px}}@media (min-width:700px) and (min-height:851px){.play-game{grid-template-rows:auto minmax(0,1fr) auto minmax(431px,1fr) auto}}.keypad{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:8px;max-width:640px;height:100%;min-height:0;margin-inline:auto;display:grid}.keypad-display{text-align:center;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;grid-column:1/-1;min-height:0;font-size:clamp(1.5rem,4dvh,2.5rem);font-weight:800}.keypad-digits{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;min-height:0;display:grid}.keypad-fire{color:#19253b;min-width:0;font:inherit;background:#ffbe5c;border:0;border-radius:12px;font-size:clamp(1rem,3dvh,1.5rem);font-weight:800}.keypad-fire:disabled{opacity:.45}.play-game .keypad-edit{font-size:1rem}.two-options .mode-options{grid-template-columns:repeat(2,minmax(0,1fr))}.question-count .mode-options{grid-template-columns:repeat(4,minmax(0,1fr))}.reward-section-title{margin-bottom:12px;font-size:1.15rem}.reward-slots{grid-template-columns:minmax(0,1fr)}.reward-slot-label{color:var(--muted)}.reward-slots .control{justify-self:end}@media (max-width:600px){.question-count .mode-options{grid-template-columns:repeat(4,minmax(0,1fr))}}.theme-toggle{box-sizing:border-box;min-width:86px;min-height:48px;color:var(--ink);background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:.75rem;display:inline-flex}.theme-toggle span{font-size:1.15rem}.theme-toggle-compact{width:44px;min-width:44px;min-height:44px;padding:4px}.reward-page .theme-toggle{color:var(--reward-ink);background:var(--reward-surface);border-color:var(--reward-border)}@media (max-width:600px){.play-game .controls{flex-wrap:wrap}.play-game .play-conditions{flex-basis:100%}}.reward-pin{max-width:440px;margin-inline:auto}.reward-pin .reward-form{padding-top:16px}.reward-pin-toolbar{justify-content:flex-end;margin-bottom:16px;display:flex}.launch-screen{box-sizing:border-box;text-align:center;background:radial-gradient(ellipse at center, var(--surface-raised), var(--bg));grid-template-columns:minmax(0,1fr);place-content:center;justify-items:center;gap:36px;min-height:100dvh;padding:28px 20px;display:grid}.launch-brand{min-width:0}.launch-logo{width:clamp(130px,30vw,200px);color:var(--accent)}.launch-brand h1{letter-spacing:.03em;margin:18px 0 12px;font-size:clamp(2.5rem,10vw,4.5rem);line-height:1.2}.launch-brand h1 span{color:var(--accent)}.launch-brand p{color:var(--muted);font-size:clamp(.85rem,3.5vw,1.1rem)}.launch-skip{min-width:140px}.reward-pin-reset{border-top:1px solid var(--reward-border);margin-top:22px;padding-top:8px}.history-tabs{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.history-tabs [aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:800}.history-tabs .control{min-width:64px}.history-filter-count{color:var(--muted);font-weight:700}.history-played-at{flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:12px 0;display:flex}.history-played-at>span{color:var(--muted);font-size:.8rem}.history-list .history-played-at time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600}.launch-screen.is-fading{z-index:50;pointer-events:none;animation:.4s ease-in-out forwards launch-fade-out;position:fixed;inset:0}.menu-reveal{animation:.4s ease-in-out both menu-fade-in}@keyframes launch-fade-out{0%{opacity:1}to{opacity:0}}@keyframes menu-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.launch-screen.is-fading{opacity:0;animation:none}.menu-reveal{animation:none}}.match-form{margin-bottom:16px}.match-form h2{color:var(--muted);font-size:1rem}.match-form label{font-weight:800}.match-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.match-choices .match-form{align-content:start;margin:0}.match-form input{box-sizing:border-box;width:100%;min-width:0;min-height:52px;font:inherit;color:var(--ink);background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:10px;padding:8px 14px;font-size:1.25rem}.match-form input[name=code]{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;font-size:2rem}.match-form .reward-help{margin:0}.match-lobby .menu-heading{margin-top:20px}.match-lobby .menu-heading p{color:var(--muted)}.menu-match{border-color:var(--accent);color:var(--accent);font-weight:800}.play-header .peer-score{border:1px solid var(--border-strong);font-variant-numeric:tabular-nums;border-radius:10px;justify-items:center;min-width:0;padding:2px 10px;font-size:1.4rem;font-weight:800;line-height:1.1;display:inline-grid}.play-header .peer-score small{text-overflow:ellipsis;white-space:nowrap;max-width:8em;color:var(--muted);font-size:.65rem;font-weight:600;overflow:hidden}.match-overlay{z-index:20;box-sizing:border-box;padding:max(8px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:var(--overlay);position:absolute;inset:0;overflow-y:auto}.match-panel{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface);border-radius:18px;gap:10px;width:min(100%,640px);margin:0 auto;padding:14px;display:grid}.match-panel-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.play-header .is-covered{visibility:hidden}.room-panel{gap:10px;min-width:0;display:grid}.room-code{justify-content:center;align-items:baseline;gap:12px;margin:0;display:flex}.room-code span{color:var(--muted);font-size:.85rem}.room-code strong{letter-spacing:.25em;font-variant-numeric:tabular-nums;color:var(--accent);font-size:clamp(2rem,6vw,2.8rem)}.room-players{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.room-players>div{background:var(--surface-raised);border-radius:10px;min-width:0;padding:8px 10px}.room-players dt{color:var(--muted);font-size:.7rem}.room-players dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:800}.room-ready,.room-away{border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.7rem;font-style:normal;font-weight:800;display:inline-block}.room-ready{color:var(--success);background:var(--success-bg);border:1px solid var(--success-border)}.room-away{color:var(--error);border:1px solid var(--error-border)}.room-request{border:2px solid var(--accent);border-radius:12px;gap:8px;padding:12px;display:grid}.room-request p{margin:0;font-size:1.05rem}.room-settings{gap:8px;display:grid}.room-settings .move-mode{margin:0}.room-settings .rank-mode .mode-options{grid-template-columns:repeat(5,minmax(0,1fr))}.room-settings .mode-options label{min-height:40px;font-size:.8rem}.room-axes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.room-settings .question-count .mode-options{grid-template-columns:repeat(8,minmax(0,1fr))}.room-conditions-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.room-conditions-list>div{background:var(--surface-raised);border-radius:10px;min-width:0;padding:8px 10px}.room-conditions-list dt{color:var(--muted);font-size:.7rem}.room-conditions-list dd{margin:2px 0 0;font-weight:800}.match-panel .reward-help,.match-panel .audio-error{margin:0}.match-ready{min-height:76px;padding:14px 16px;font-size:clamp(1.5rem,4vw,2.2rem)}.match-ready[aria-pressed=true]{background:var(--success-bg);color:var(--success);border-color:var(--success-border);box-shadow:0 4px 0 var(--success-border)}.match-status{text-align:center;color:var(--message);margin:0;font-weight:700}.pause-overlay{pointer-events:auto;z-index:5}.pause-overlay strong{font-size:4rem}.pause-overlay span{text-align:center;max-width:80%}.match-game .launchpad{grid-template-rows:auto minmax(0,1fr);gap:6px;display:grid}.launch-area{height:100%;min-height:0}.match-bar{align-items:center;gap:10px;min-width:0;display:flex}.attack-button{color:#2c1010;background:linear-gradient(145deg,#ff9d6a,#ff5f7a);border:2px solid #ff8a5c;border-radius:12px;flex:none;min-height:44px;padding:6px 14px;font-size:1rem;font-weight:900;box-shadow:0 4px #9c2c3f}.attack-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #9c2c3f}.attack-button:disabled{opacity:.35;filter:grayscale(.6)}.attack-button:not(:disabled){animation:1s ease-in-out infinite alternate attack-pulse}@keyframes attack-pulse{0%{transform:scale(1)}to{transform:scale(1.05)}}.match-notice{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.match-notice.is-live{color:var(--accent);font-weight:800}.launch-area.is-shaken{animation:.5s ease-out shaken}@keyframes shaken{0%,to{transform:translate(0)}20%{transform:translate(-10px)rotate(-1deg)}40%{transform:translate(10px)rotate(1deg)}60%{transform:translate(-7px)}80%{transform:translate(7px)}}@media (prefers-reduced-motion:reduce){.attack-button:not(:disabled),.launch-area.is-shaken{animation:none}}.match-outcome{font-size:2.4rem}.match-outcome-win{color:var(--accent)}.match-outcome-draw{color:var(--success)}.match-outcome-lose,.match-outcome-aborted{color:var(--muted)}.match-outcome-note{color:var(--muted);margin:0 0 12px;font-size:.9rem}.match-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 14px;display:grid}.match-result-grid>div{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;min-width:0;padding:12px}.match-result-me{border-color:var(--accent)!important}.match-result-grid .result-player{margin:0 0 6px}.match-result-grid .result-time{font-size:.85rem}.match-result-grid .result-time strong{font-size:2rem}.history-mode{gap:8px;margin-bottom:8px;display:flex}.history-mode .control{min-width:96px}.history-mode [aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:800}.history-player small{color:var(--muted);font-size:.8rem}.history-outcome{color:var(--ink);border-color:var(--border-strong)}.history-outcome-win{color:var(--accent);border-color:var(--accent);background:var(--selected)}.history-outcome-draw{color:var(--success);border-color:var(--success-border)}@media (max-width:600px){.match-choices{grid-template-columns:minmax(0,1fr)}.match-panel{border-radius:12px;gap:8px;padding:10px}.room-axes{grid-template-columns:minmax(0,1fr)}.room-settings .question-count .mode-options{grid-template-columns:repeat(4,minmax(0,1fr))}.room-settings .rank-mode .mode-options{grid-template-columns:repeat(3,minmax(0,1fr))}.room-conditions-list{grid-template-columns:repeat(2,minmax(0,1fr))}.match-ready{min-height:60px}.play-header .peer-score{font-size:1.1rem}.attack-button{padding:6px 10px;font-size:.85rem}.match-notice{font-size:.75rem}.match-result-grid .result-time strong{font-size:1.5rem}}.clear-rating{justify-items:center;gap:2px;margin:0 0 10px;display:grid}.clear-stars{letter-spacing:.1em;color:var(--accent);font-size:1.4rem}.clear-rating strong{color:var(--accent);font-size:1.35rem}.message.tone-good{color:var(--success);font-size:1.05rem;font-weight:900;animation:.5s ease-out message-good}.message.tone-bad{color:var(--error);font-size:1rem;font-weight:900;animation:.5s ease-out message-bad}.message.tone-alert{color:var(--accent);font-size:1.1rem;font-weight:900;animation:.6s ease-out message-alert}.match-notice.tone-good{color:var(--success);animation:.5s ease-out message-good}.match-notice.tone-bad{color:var(--error);animation:.5s ease-out message-bad}.match-notice.tone-alert{color:var(--accent);animation:.6s ease-out message-alert}@keyframes message-good{0%{text-shadow:0 0 12px;transform:scale(1.9)rotate(-4deg)}60%{transform:scale(.95)rotate(1deg)}to{text-shadow:none;transform:scale(1)rotate(0)}}@keyframes message-bad{0%{text-shadow:0 0 12px;transform:scale(1.5)translate(0)}20%{transform:scale(1.3)translate(-12px)}40%{transform:scale(1.2)translate(12px)}60%{transform:scale(1.1)translate(-8px)}80%{transform:scale(1.05)translate(8px)}to{text-shadow:none;transform:scale(1)translate(0)}}@keyframes message-alert{0%{text-shadow:0 0 14px;transform:scale(2.4)rotate(6deg)}55%{transform:scale(.9)rotate(-2deg)}to{text-shadow:none;transform:scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.message.tone-good,.message.tone-bad,.message.tone-alert,.match-notice.tone-good,.match-notice.tone-bad,.match-notice.tone-alert{animation:none}}.history-list li{align-items:flex-start;gap:10px;display:flex}.history-card{flex:auto;min-width:0}.history-list li.is-first{background:var(--selected);border:2px solid var(--accent)}.history-place{min-width:44px;color:var(--accent);text-align:center;flex:none;padding-top:2px;font-size:1rem;font-weight:800}.history-place.is-medal{font-size:1.9rem;line-height:1}.history-headline{margin:0 0 10px;font-size:1.05rem;font-weight:900}.history-headline-win{color:var(--accent)}.history-headline-lose{color:var(--error)}.history-match.history-outcome-win{border-color:var(--accent);border-width:2px}.history-sides{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:10px;margin-bottom:10px;display:grid}.history-side{gap:1px;min-width:0;display:grid}.history-side>span,.history-duration>span{color:var(--muted);font-size:.7rem}.history-side-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.history-side-correct{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.95rem}.history-side.is-winner .history-side-correct{color:var(--accent)}.history-side small{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.history-duration{justify-items:center;gap:1px;display:grid}.history-duration strong{font-variant-numeric:tabular-nums;font-size:1.4rem}.history-match .history-result{justify-content:flex-start}.history-match .history-played-at{margin:0}@media (max-width:600px){.history-place{min-width:32px}.history-place.is-medal{font-size:1.5rem}.history-sides{gap:6px}.history-duration strong{font-size:1.1rem}.history-side-correct{font-size:.8rem}.history-side-name{font-size:.85rem}}.stats-table-wrap{margin-top:16px;overflow-x:auto}.stats-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:560px}.stats-table th,.stats-table td{text-align:right;border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 10px}.stats-table th[scope=row],.stats-table thead th:first-child{text-align:left}.stats-table thead th{color:var(--muted);font-size:.8rem;font-weight:600}.stats-table tfoot th,.stats-table tfoot td{border-bottom:0;border-top:2px solid var(--border);font-weight:700}
