@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(./space-mono-400-Wy3NpCq4.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(./space-mono-700-6NnW1qxO.woff2)format("woff2")}:root{--bg:#0b0a09;--ink:#efe7da;--ink-2:#efe7daa8;--ink-3:#efe7da6b;--accent:#e9c48f;--mono:"Space Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--gut:max(16px, env(safe-area-inset-left))}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font:13px/1.5 var(--mono);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}a{color:inherit}:focus-visible{outline:1px solid var(--accent);outline-offset:4px;border-radius:2px}#stage{position:fixed;inset:0}#stage canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}#stage.board canvas{cursor:ew-resize}#stage.hovering canvas{cursor:pointer}#stage.dragging canvas{cursor:grabbing}#vignette{pointer-events:none;background:radial-gradient(at 50% 45%,#0000 55%,#0000008c 100%);position:fixed;inset:0}.ui{pointer-events:none;padding:max(18px, env(safe-area-inset-top)) var(--gut) max(18px, env(safe-area-inset-bottom));flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.ui a,.ui button{pointer-events:auto}.top,.bottom{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.top{align-items:flex-start}h1{letter-spacing:.02em;margin:0;font-size:13px;font-weight:700}.role{color:var(--ink-2)}.status{color:var(--ink-3);text-align:right;align-items:center;gap:8px;display:flex}.status i{background:#ffb02e;border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite pulse;display:inline-block;box-shadow:0 0 8px #ffb02e}@keyframes pulse{50%{opacity:.25}}.line{color:var(--ink-2);max-width:34ch;margin:0}.contact{align-items:center;gap:18px;margin:0;padding:0;list-style:none;display:flex}.contact a{color:var(--ink-2);align-items:center;gap:8px;text-decoration:none;transition:color .2s;display:inline-flex}.contact a:hover,.contact a:focus-visible{color:var(--accent)}.contact svg{fill:currentColor;width:16px;height:16px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#hint{left:50%;bottom:max(84px, calc(env(safe-area-inset-bottom) + 84px));color:var(--ink-3);letter-spacing:.08em;text-transform:lowercase;pointer-events:none;white-space:nowrap;opacity:0;font-size:11px;transition:opacity .8s;position:fixed;transform:translate(-50%)}.gl #hint{opacity:1;animation:1.2s 2.4s both hint-in}#hint.done{animation:none;opacity:0!important}@keyframes hint-in{0%{opacity:0}to{opacity:1}}#hint .touch{display:none}@media (hover:none){#hint .mouse{display:none}#hint .touch{display:inline}}#stage .flat-board{touch-action:pan-y;cursor:grab;border-radius:6px;width:min(88vw,760px);height:auto;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #17120f,0 0 60px #ffaa5024}@media (max-width:560px){.bottom{flex-direction:column;align-items:flex-start;gap:12px}.status{display:none}#hint{bottom:max(150px, calc(env(safe-area-inset-bottom) + 150px))}}@media (prefers-reduced-motion:reduce){.status i,.gl #hint{animation:none}}
