:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#2b2622;--panel:#3a332c;--text:#fff4d6;--muted:#cdbf9c;--cheddar:#f2b705;--orange:#e8590c}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;color:var(--text);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;justify-content:center;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}main{width:min(100%,560px);padding:max(12px, env(safe-area-inset-top)) 12px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:10px;display:flex}header{text-align:center}h1{color:var(--cheddar);letter-spacing:.02em;margin:0;font-size:1.6rem}#level-name{color:var(--muted);margin:2px 0 0}.hud{background:var(--panel);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.stat{justify-items:center;min-width:56px;display:grid}.label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.value{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700}#objectives{justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}#objectives li{font-variant-numeric:tabular-nums;justify-items:center;font-weight:700;display:grid}#objectives li.done{color:var(--cheddar)}#objectives canvas{width:34px;height:34px}.board-wrap{position:relative}#board{aspect-ratio:1;touch-action:none;border-radius:10px;outline:none;width:100%;max-height:calc(100dvh - 260px);margin:0 auto;display:block}#board:focus-visible{box-shadow:0 0 0 3px var(--cheddar)}#toast{text-align:center;color:var(--cheddar);text-shadow:0 3px 0 var(--orange), 0 6px 12px #00000080;pointer-events:none;opacity:0;margin:0;font-size:2rem;font-weight:800;transition:opacity .2s,transform .2s;position:absolute;inset:40% 0 auto;transform:scale(.8)}#toast.show{opacity:1;transform:scale(1)}.levels{justify-content:center;gap:8px;display:flex}button{font:inherit;background:var(--cheddar);color:#2b2622;cursor:pointer;border:0;border-radius:10px;padding:10px 18px;font-weight:700}button.secondary,.levels button{background:var(--panel);color:var(--text)}button:disabled{opacity:.4;cursor:default}dialog{background:var(--panel);color:var(--text);text-align:center;border:0;border-radius:16px;width:min(90vw,340px);padding:20px}dialog::backdrop{background:#0000008c}dialog h2{color:var(--cheddar);margin:0 0 8px}dialog .buttons{justify-content:center;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){#toast{transition:none}}
