:root{--bg:#f7f5f2;--ink:#444;--muted:#8f8b85;--line:#d9d5cf;--accent:#c9775b;--panel:#fff;--soft:#efeae4}:root.night{--bg:#232120;--ink:#e8e3db;--muted:#8c877e;--line:#413d38;--accent:#e08d6a;--panel:#2e2b28;--soft:#33302c}:root,body,.item,.stage{transition:background-color .42s,color .42s,border-color .42s}@media (prefers-reduced-motion:reduce){:root,body,.item,.stage{transition:none}}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none;height:100%;overflow:hidden}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.55}#root{height:100dvh;padding:clamp(16px, 3.4vh, 40px) max(16px, env(safe-area-inset-left)) max(14px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-right));justify-content:center;display:flex}.page{flex-direction:column;justify-content:center;gap:clamp(10px,2.4vh,24px);width:100%;max-width:960px;height:100%;display:flex}.mark{image-rendering:pixelated;display:block}.masthead{text-align:center;flex-direction:column;flex:none;align-items:center;gap:clamp(6px,1.4vh,12px);display:flex}.wordmark{color:var(--accent);letter-spacing:.02em;justify-content:center;align-items:center;gap:20px;font-family:"Press Start 2P",monospace;font-size:clamp(28px,7vw,54px);line-height:1;display:flex}.tagline{letter-spacing:.02em;font-family:"Press Start 2P",monospace;font-size:clamp(9px,2.1vw,13px);line-height:1.7}.hint{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}.key{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-bottom-width:2px;border-radius:5px;padding:0 6px;font-size:11px}.stage{flex:auto;width:100%;min-height:220px;max-height:460px;position:relative}.stage canvas{width:100%;height:100%;image-rendering:pixelated;cursor:pointer;touch-action:manipulation;display:block}.overlay{pointer-events:none;text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:9px;padding:12% 16px 0;display:flex;position:absolute;inset:0}.overlay .headline{letter-spacing:.04em;font-family:"Press Start 2P",monospace;font-size:clamp(11px,2.3vw,16px)}.overlay .sub{color:var(--muted);font-size:12px}.overlay.dead .headline{color:var(--accent)}@keyframes blink{0%,55%{opacity:1}56%,to{opacity:.2}}.blink{animation:1.1s step-end infinite blink}.dock{--tile:clamp(46px, 12vw, 54px);flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:5px;display:flex}.dock-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-right:4px;font-size:11px}.divider{background:var(--line);align-self:stretch;width:1px;margin:0 5px}.item{width:var(--tile,46px);height:var(--tile,46px);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:9px;place-items:center;padding:0;transition:background .13s,border-color .13s;display:grid}.item:hover{background:var(--soft)}.item[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.hud .pop{color:var(--accent)}.item canvas{image-rendering:pixelated;display:block}.foot{color:var(--muted);flex:none;justify-content:center;align-items:center;gap:14px;font-size:12px;display:flex}.foot a{color:var(--muted);border-bottom:1px solid #0000;text-decoration:none;transition:color .13s,border-color .13s}.foot a:hover{color:var(--ink);border-bottom-color:var(--line)}.foot .dot{opacity:.5}@media (prefers-reduced-motion:reduce){.blink{animation:none}}.hud{color:var(--muted);pointer-events:none;gap:14px;font-family:"Press Start 2P",monospace;font-size:clamp(9px,1.6vw,12px);display:flex;position:absolute;top:2px;right:2px}.hud .hi{opacity:.65}.hint .dot{opacity:.5}@media (orientation:portrait) and (width<=640px){.stage{min-height:170px;max-height:min(300px,44vh)}.overlay{gap:7px;padding-top:7%}.dock{max-width:calc(4 * var(--tile) + 18px);gap:6px;margin:0 auto}.dock .divider{display:none}}@media (height<=470px){#root{padding-top:12px}.page{gap:8px}.masthead{gap:4px}.wordmark{gap:12px;font-size:clamp(22px,5vh,34px)}.mark{width:30px;height:auto}.hint{display:none}.stage{min-height:150px}.item{border-radius:7px;width:36px;height:36px}}.foot .mute{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.foot .mute canvas{image-rendering:pixelated;display:block}.foot .mute:hover{color:var(--accent)}.board{color:var(--muted);flex:none;justify-content:center;font-size:12px;display:flex}.board-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:26px;display:flex;position:relative}.board-toggle,.board-send{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:0;transition:color .13s,border-color .13s}.board-toggle:hover,.board-send:hover:not(:disabled){color:var(--accent);border-bottom-color:var(--line)}.board-toggle[aria-expanded=true]{color:var(--ink)}.board-send:disabled{cursor:default;opacity:.45}.board-claim{align-items:center;gap:8px;display:flex}.board-claim-score{color:var(--accent);font-family:"Press Start 2P",monospace;font-size:10px}.board-name{border:1px solid var(--line);background:var(--panel);width:104px;color:var(--ink);font:inherit;border-radius:6px;padding:2px 7px;transition:border-color .13s}.board-name::placeholder{color:var(--muted);opacity:.7}.board-name:focus{border-color:var(--accent);outline:none}.board-list{z-index:2;background:var(--panel);border:1px solid var(--line);text-align:left;border-radius:9px;grid-template-rows:repeat(5,auto);grid-auto-columns:1fr;grid-auto-flow:column;gap:1px 22px;width:max-content;max-width:min(340px,100vw - 32px);padding:9px 13px;font-size:11px;line-height:1.5;list-style:none;display:grid;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000017}.board-list li{grid-template-columns:1.3em minmax(0,1fr) auto;align-items:baseline;gap:8px;display:grid}.board-row .dot{opacity:.5}.board-rank{opacity:.5;font-variant-numeric:tabular-nums}.board-who{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.board-score{color:var(--ink);font-variant-numeric:tabular-nums}
