@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-600.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}:root{--dm-bg: #08090b;--dm-raise: #0f1014;--dm-ink: #eef1f6;--dm-ink-dim: rgba(238, 241, 246, .62);--dm-ink-faint: rgba(238, 241, 246, .4);--dm-line: rgba(238, 241, 246, .12);--dm-accent: #fabd5c;--dm-accent-ink: #0b0c0e;--dm-ui: "Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--dm-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--dm-bg);color:var(--dm-ink);font-family:var(--dm-ui);line-height:1.5;min-height:100vh}a{color:var(--dm-ink);text-decoration-color:var(--dm-ink-faint);text-underline-offset:3px}a:hover{text-decoration-color:var(--dm-accent)}:focus-visible{outline:2px solid var(--dm-accent);outline-offset:2px;border-radius:4px}.dm-page{max-width:1060px;margin:0 auto;padding:20px clamp(16px,4vw,32px) 40px}.dm-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:28px}.dm-back{color:var(--dm-ink-dim);font-size:.95rem;text-decoration:none}.dm-back:hover{color:var(--dm-ink)}.dm-wordmark{font-weight:600;letter-spacing:.01em;text-decoration:none}.dm-lede{max-width:640px;margin-bottom:24px}.dm-title{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:600;letter-spacing:-.015em;margin:0 0 10px}.dm-sub{color:var(--dm-ink-dim);margin:0}.dm-stage{display:grid;grid-template-columns:minmax(280px,560px) minmax(260px,320px);gap:clamp(20px,3.5vw,36px);align-items:start}@media(max-width:760px){.dm-stage{grid-template-columns:1fr}}.dm-board-wrap{position:relative;aspect-ratio:1 / 1;border-radius:14px;overflow:hidden;background:var(--dm-bg);box-shadow:inset 0 0 0 1px var(--dm-line),inset 0 0 44px #0000008c;touch-action:none}#board{display:block;width:100%;height:100%}.dm-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#08090bb8;backdrop-filter:blur(2px)}.dm-overlay[hidden]{display:none}.dm-start{display:inline-flex;align-items:center;gap:10px;font:600 1.05rem var(--dm-ui);color:var(--dm-accent-ink);background:var(--dm-accent);border:0;border-radius:999px;padding:12px 22px;cursor:pointer}.dm-start:disabled{opacity:.7;cursor:progress}.dm-start-glyph{font-size:.8em}.dm-hint{color:var(--dm-ink-dim);font-size:.85rem;margin:0;padding:0 16px;text-align:center}.dm-panel{display:flex;flex-direction:column;gap:16px}.dm-score-row{display:flex;gap:12px}.dm-stat{flex:1;background:var(--dm-raise);border:1px solid var(--dm-line);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;gap:2px}.dm-stat-label{color:var(--dm-ink-faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.dm-stat-value{font:400 1.15rem var(--dm-mono)}.dm-stat-pack{font-size:.85rem;line-height:1.9}.dm-status{min-height:1.4em;margin:0;color:var(--dm-ink-dim);font-size:.9rem}.dm-meters{display:flex;flex-direction:column;gap:9px;background:var(--dm-raise);border:1px solid var(--dm-line);border-radius:12px;padding:14px}.dm-meter{display:grid;grid-template-columns:92px 1fr 72px;align-items:center;gap:10px}.dm-meter-label{color:var(--dm-ink-dim);font-size:.82rem}.dm-track{position:relative;height:6px;border-radius:3px;background:#eef1f61a;overflow:hidden}.dm-fill{position:absolute;inset:0 auto 0 0;width:0%;border-radius:3px;background:var(--dm-accent);transition:width .16s linear}.dm-meter-value{font:400 .8rem var(--dm-mono);color:var(--dm-ink-dim);text-align:right;font-variant-numeric:tabular-nums}.dm-legend{margin:0;padding:0 2px;display:flex;flex-direction:column;gap:6px}.dm-legend-row{display:flex;gap:8px;font-size:.82rem}.dm-legend-row dt{color:var(--dm-ink-faint);margin:0;flex:0 0 46%}.dm-legend-row dd{color:var(--dm-ink-dim);margin:0}.dm-legend-row dd:before{content:"→ ";color:var(--dm-ink-faint)}.dm-foot{margin-top:36px;padding-top:16px;border-top:1px solid var(--dm-line);color:var(--dm-ink-faint);font-size:.88rem}.dm-foot a{color:var(--dm-ink-dim)}@media(prefers-reduced-motion:reduce){.dm-fill{transition:none}.dm-overlay{backdrop-filter:none}}
