:root{--bg: #0e0b16;--panel: #171225;--ink: #efeaf8;--accent: #ff4fa3;--accent2: #3ef0d0;--on-accent: #0b0910;--on-accent2: #0b0910;--gold: #ffcb47;--led: #4dff88;--danger: #ff5a5f;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--font-marker: "Permanent Marker", "Segoe Print", "Comic Sans MS", cursive;--font-pixel: "Silkscreen", "JetBrains Mono", ui-monospace, monospace;--font-sans: "Space Grotesk", system-ui, "Segoe UI", sans-serif;--font-display: var(--font-marker);color-scheme:dark}:root,.themed{--muted: color-mix(in srgb, var(--ink) 64%, var(--bg));--line: color-mix(in srgb, var(--ink) 16%, var(--bg));--panel-2: color-mix(in srgb, var(--panel) 85%, var(--ink))}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font:15px/1.6 var(--font-mono);-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--on-accent)}a{color:inherit}img{max-width:100%}:focus-visible{outline:2px dashed var(--accent2);outline-offset:3px}[hidden]{display:none!important}.wrap{max-width:1120px;margin-inline:auto;padding-inline:20px}.pattern-grid{background-image:linear-gradient(color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 1px);background-size:32px 32px}.pattern-dots{background-image:radial-gradient(color-mix(in srgb,var(--ink) 14%,transparent) 1.5px,transparent 1.5px);background-size:22px 22px}.pattern-stripes{background-image:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ink) 5%,transparent) 0 12px,transparent 12px 24px)}.pixel{font-family:var(--font-pixel);font-size:11px;letter-spacing:.02em;text-transform:uppercase}.display{font-family:var(--font-display);font-weight:400;line-height:1.1}.muted{color:var(--muted)}.ps1{color:var(--accent2)}.box{background:var(--panel);border:2px solid var(--line);border-radius:4px}.box-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:7px 14px;background:var(--accent);color:var(--on-accent);font:12px var(--font-pixel);text-transform:uppercase}.box-head.alt{background:var(--accent2);color:var(--on-accent2)}.box-body{padding:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border:2px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font:12px var(--font-pixel);text-decoration:none;text-transform:uppercase;cursor:pointer;box-shadow:4px 4px 0 var(--accent2);transition:transform .12s,box-shadow .12s}.btn:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--accent)}.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent);box-shadow:4px 4px 0 var(--ink)}.btn-ghost{border-color:var(--line);color:var(--muted);box-shadow:none}.btn-ghost:hover:not(:disabled){color:var(--ink);box-shadow:none}.btn-danger{border-color:var(--danger);color:var(--danger);box-shadow:none}.btn-small{padding:5px 10px;font-size:10px;box-shadow:3px 3px 0 var(--accent2)}.linklike{padding:0;border:0;background:none;color:var(--muted);font:inherit;text-decoration:underline dotted;cursor:pointer}.field{display:grid;gap:5px;margin-bottom:14px}.field>span{color:var(--muted);font:11px var(--font-pixel);text-transform:uppercase}.field small{color:var(--muted);font-size:11.5px}.input,.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.field textarea,.field select{width:100%;padding:9px 11px;border:2px solid var(--line);border-radius:0;background:color-mix(in srgb,var(--bg) 70%,var(--panel));color:var(--ink);font:14px var(--font-mono)}.input:focus,.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):focus,.field textarea:focus,.field select:focus{border-color:var(--accent2);outline:none}.field textarea{min-height:110px;resize:vertical}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.error{padding:10px 12px;border:2px solid var(--danger);color:var(--danger);font-size:13px}.tag{display:inline-block;padding:1px 7px;border:1px solid currentColor;color:var(--gold);font:10px var(--font-pixel);text-transform:uppercase}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.chips li{padding:1px 8px;border:1px solid var(--line);color:var(--muted);font-size:11px}.led{display:inline-block;width:8px;height:8px;background:var(--gold)}.led.on{background:var(--led);box-shadow:0 0 8px var(--led);animation:pulse 1.6s steps(2) infinite}kbd{min-width:22px;padding:1px 5px;border:1px solid var(--line);border-bottom-width:3px;font:10px var(--font-pixel);text-align:center}.loading{padding:80px 20px;color:var(--muted);text-align:center}.loading:after{content:"_";animation:blink 1s steps(1) infinite}.crt{position:fixed;inset:0;z-index:90;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.2) 0 1px,transparent 1px 3px);opacity:.3;transition:opacity .4s}.arcade .crt{opacity:1}.arcade main{animation:hue 4s linear infinite}.confetti{position:fixed;top:-12px;z-index:95;width:8px;height:8px;pointer-events:none;animation:fall linear forwards}@keyframes blink{50%{opacity:0}}@keyframes pulse{50%{opacity:.35}}@keyframes hue{to{filter:hue-rotate(360deg)}}@keyframes fall{to{transform:translate(var(--drift),105vh) rotate(540deg)}}@keyframes wiggle{33%{transform:rotate(-6deg)}66%{transform:rotate(6deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
