:root{--paper:#f5f2eb;--ink:#2b2b2b;--ink-muted:#8a857c;--surface:#ffffffd9;--gutter:16px}html,body{overscroll-behavior:none;background:var(--paper);height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}#game{position:fixed;inset:0}#game canvas{touch-action:none;display:block}button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hud{left:calc(env(safe-area-inset-left) + var(--gutter));right:calc(env(safe-area-inset-right) + var(--gutter));pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed}.hud>*{pointer-events:auto}.hud-top{top:calc(env(safe-area-inset-top) + var(--gutter))}.hud-bottom{bottom:calc(env(safe-area-inset-bottom) + var(--gutter));flex-wrap:wrap}.speed{background:var(--surface);border:0;border-radius:999px;gap:4px;min-width:0;margin:0;padding:4px;display:flex}.speed button{min-width:44px;height:36px;color:var(--ink);letter-spacing:1px;cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:13px}.speed button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.status{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:2px;display:flex}#clock{white-space:nowrap;font-size:18px;font-weight:600}#score{color:var(--ink-muted);font-size:14px}#lines{background:var(--surface);border-radius:999px;gap:8px;margin:0;padding:6px 8px;list-style:none;display:flex}#lines li{align-items:center;display:flex}.line-chip{color:#fff;cursor:pointer;border:0;border-radius:50%;width:28px;height:28px;font-size:16px;line-height:28px;display:block}.line-chip.closing{opacity:.35;cursor:default}.line-slot{background:var(--ink-muted);border-radius:50%;width:10px;height:10px;margin:9px;display:block}#build{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:12px}.inventory{background:var(--surface);border:0;border-radius:999px;gap:4px;min-width:0;margin:0;padding:4px;display:flex}.inventory button{min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:flex}.inventory button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.count{font-variant-numeric:tabular-nums;text-align:center;background:#00000014;border-radius:999px;min-width:1.5em;padding:1px 6px}.inventory button[aria-pressed=true] .count{background:#fff3}.inventory button:disabled{opacity:.4;cursor:default}.inventory .stock{color:var(--ink-muted);align-items:center;gap:6px;padding:0 12px;font-size:13px;display:flex}.modal{padding:calc(env(safe-area-inset-bottom) + 72px) var(--gutter);pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal[hidden]{display:none}.modal-card{background:var(--paper);text-align:center;pointer-events:auto;border-radius:16px;max-width:360px;padding:20px 24px;box-shadow:0 8px 32px #0000002e}.modal-card h2{margin:0 0 8px;font-size:20px}.modal-card p{color:var(--ink-muted);margin:0 0 16px;line-height:1.4}.modal-card button{background:var(--ink);min-height:44px;color:var(--paper);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:0 20px;font-weight:600}.modal-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.modal-card .secondary{color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink);background:0 0}
