@font-face{font-family:"Press Start 2P";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/press-start-2p-latin-400-normal-_wFEWmAB.woff2)format("woff2"),url(/assets/press-start-2p-latin-400-normal-KLytu4cr.woff)format("woff")}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0820;--deep:#05030f;--panel:#1d1647;--panel-hi:#2a1f5e;--edge:#3a1a5c;--edge-hi:#73319a;--ink:#f4ecdc;--ink-bright:#fff9ec;--muted:#a99fc4;--dim:#7a6f9e;--accent:#f0a03a;--accent-hi:#ffcf6b;--accent-lo:#9a4a17;--cyan:#3cc6d6;--cyan-hi:#7fe3ea;--magenta:#d84d93;--good:#8ccf5e;--bad:#ff6a2a;--text-scale:1;--title-font:"Press Start 2P", monospace;--label-font:"Pixelify Sans", monospace;--body-font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-family:var(--body-font);font-size:calc(16px * var(--text-scale));color:var(--ink);background:var(--bg);-webkit-tap-highlight-color:transparent;line-height:1.5}:root.high-contrast{--panel:#05030f;--panel-hi:#140f33;--muted:#f4ecdc;--dim:#d8cfe0;--edge:#fff9ec;--edge-hi:#ffcf6b}*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--bg);min-height:100dvh;margin:0;padding:0;overflow-x:hidden}body{-webkit-user-select:none;user-select:none}button,input,select{font:inherit;color:inherit}button{touch-action:manipulation;cursor:pointer}:focus-visible{outline:2px solid var(--accent-hi);outline-offset:2px}canvas.pixel-canvas,img.pixel{image-rendering:pixelated;image-rendering:crisp-edges;display:block}h1,h2,h3{font-family:var(--title-font);letter-spacing:.02em;margin:0 0 .5em;font-weight:400;line-height:1.4}h1{font-size:1.25rem}h2{font-size:.95rem}h3{font-size:.75rem}.label{font-family:var(--label-font);letter-spacing:.04em}.panel{background:var(--panel);box-shadow:0 -4px 0 0 var(--edge), 0 4px 0 0 var(--edge), -4px 0 0 0 var(--edge), 4px 0 0 0 var(--edge), inset 0 2px 0 0 var(--panel-hi), inset 0 -2px 0 0 var(--deep);margin:4px;padding:12px}.btn{font-family:var(--label-font);min-width:48px;min-height:48px;color:var(--ink-bright);background:var(--panel-hi);box-shadow:0 -3px 0 0 var(--edge-hi), 0 3px 0 0 var(--deep), -3px 0 0 0 var(--edge-hi), 3px 0 0 0 var(--deep), inset 0 -3px 0 0 var(--edge);border:0;margin:4px;padding:10px 18px;font-size:1rem;transition:transform 60ms steps(2,end)}.btn:hover{background:var(--edge-hi)}.btn:active,.btn.pressed{box-shadow:0 -3px 0 0 var(--edge-hi), 0 1px 0 0 var(--deep), -3px 0 0 0 var(--edge-hi), 3px 0 0 0 var(--deep);transform:translateY(2px)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);color:#3d0d14;box-shadow:0 -3px 0 0 var(--accent-hi), 0 3px 0 0 var(--accent-lo), -3px 0 0 0 var(--accent-hi), 3px 0 0 0 var(--accent-lo), inset 0 -3px 0 0 #c86f1f}.btn.primary:hover{background:var(--accent-hi)}.btn.ghost{box-shadow:none;color:var(--muted);background:0 0}.icon-btn{place-items:center;padding:8px;display:inline-grid}.screen{z-index:1;min-height:100dvh;padding:calc(12px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));flex-direction:column;max-width:560px;margin:0 auto;display:flex;position:relative}.topbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--muted)}.center{text-align:center}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.g-stage{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.g-hud{font-family:var(--label-font);text-align:center;min-height:1.6em;color:var(--accent-hi)}.g-canvas{min-height:240px;box-shadow:0 0 0 2px var(--edge);touch-action:none;overscroll-behavior:contain;-webkit-touch-callout:none;background:#05030fc7;flex:1;position:relative}.g-canvas>canvas{margin:auto;position:absolute;inset:0}.g-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.g-btn{font-family:var(--label-font);min-width:52px;min-height:52px;color:var(--ink-bright);background:var(--panel-hi);box-shadow:0 -3px 0 0 var(--edge-hi), 0 3px 0 0 var(--deep), -3px 0 0 0 var(--edge-hi), 3px 0 0 0 var(--deep);border:0;margin:3px;padding:8px 14px;font-size:1.05rem}.g-btn:active{transform:translateY(2px)}.g-btn.sel{background:var(--accent);color:#3d0d14}.g-btn.ok{background:#2e6b3a}.g-btn.no{background:#7a1a1a}.g-btn.big{min-width:140px;min-height:64px}.g-btn:disabled{opacity:.5}.g-text{padding:0 4px;font-size:1rem;line-height:1.55}.g-choices{grid-template-columns:1fr;gap:4px;width:100%;display:grid}.g-choices .g-btn{text-align:left;font-family:var(--body-font);width:calc(100% - 6px);font-size:1rem}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{transition-duration:1ms!important;animation-duration:1ms!important}@media (orientation:landscape) and (height<=520px){.screen{max-width:900px;padding-top:calc(4px + env(safe-area-inset-top))}.g-stage{grid-template-rows:auto 1fr;grid-template-columns:1fr auto;gap:8px;display:grid}.g-hud{grid-column:1/-1}.g-canvas{min-height:0}.g-controls{flex-direction:column;justify-content:center;max-width:46vw}}.fm-board{flex-wrap:wrap;justify-content:center;gap:8px;margin:auto 0;display:flex}.fm-tile{font-family:var(--title-font);min-width:72px;font-size:1rem}.fl-body{flex-direction:column;gap:8px;margin:auto 0;display:flex}.fl-val{color:var(--accent-hi);text-align:center;margin:0;font-size:1.3rem}.fl-slider{width:100%;min-height:48px;accent-color:var(--accent);touch-action:pan-x}.fl-ticks{font-family:var(--label-font);color:var(--dim);justify-content:space-between;font-size:.8rem;display:flex}.dd-body{text-align:center;margin:auto 0}.dd-date{color:var(--ink-bright);margin:.4em 0;font-size:1.6rem}.ka-list{gap:6px;display:grid;overflow-y:auto}.ka-row{align-items:center;gap:10px;padding:8px;display:flex}.ka-face{flex:none;width:48px;height:48px}.ka-text{flex:1;min-width:0}.ka-text p{margin:.15em 0}.ka-say{font-size:.95rem}.ka-row .g-btn{min-width:112px;font-size:.9rem}.dpad{grid-template-rows:repeat(3,52px);grid-template-columns:repeat(3,56px);gap:2px;display:grid}.dpad .g-btn{width:54px;min-width:0;margin:0;padding:0}.iw-grid{grid-template-columns:repeat(3,64px);justify-content:center;gap:2px;display:grid}.iw-grid .g-btn{width:62px;min-width:0;margin:0}.iw-mid{color:var(--dim);place-items:center;display:grid}.starchart{flex-direction:column;gap:8px;display:flex;overflow-y:auto}.sc-frame{-webkit-user-select:text;user-select:text}.sc-illus{aspect-ratio:120/64;width:100%;height:auto;box-shadow:0 0 0 2px var(--edge-hi);margin-bottom:8px}.sc-cat{color:var(--cyan-hi);margin:0;font-size:.85rem}.sc-title{color:var(--accent-hi);margin:.2em 0 .4em;font-size:.9rem}.sc-hook{font-weight:600}.sc-body,.sc-hook,.sc-why{font-size:1rem;line-height:1.6}.sc-src{color:var(--muted);font-size:.85rem}.sc-src a{color:var(--cyan-hi)}.rb-body,.review{flex-direction:column;gap:6px;margin:auto 0;display:flex}.rb-q{font-size:1.05rem}
