:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--line:#c6d2d7;--surface:#fff;--ink:#101619}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--line:#28353b;--surface:#151d21;--ink:#e7eef1}}*{box-sizing:border-box}html,body{overscroll-behavior:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;overflow:hidden}body{color:var(--ink);height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:canvas;flex-direction:column;margin:0;font:13px/1.4 system-ui,sans-serif;display:flex}#hud{font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;margin:6px 12px 2px;display:flex}#hud .clock{letter-spacing:-.01em;font-size:26px;font-weight:600;line-height:1.1}#hud .detail{opacity:.6;font-size:12px}#hud.urgent .clock{color:#c0392b}@media (prefers-color-scheme:dark){#hud.urgent .clock{color:#ff8a75}}@media (prefers-reduced-motion:no-preference){#hud.urgent .clock{animation:1s steps(2,end) infinite tick}}@keyframes tick{50%{opacity:.55}}.recap{z-index:10;text-align:center;background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:24px;display:flex;position:absolute;inset:0}.recap h2{margin:0 0 2px;font-size:20px;font-weight:600}.recap .stars{letter-spacing:4px;margin:0 0 6px;font-size:30px;line-height:1}.recap .line{opacity:.75;font-variant-numeric:tabular-nums;margin:0;font-size:13px}.recap button.primary{font:inherit;border:1px solid var(--line);background:var(--ink);color:var(--surface);cursor:pointer;border-radius:999px;margin-top:16px;padding:11px 26px;font-size:15px}.recap button.primary:focus-visible{outline-offset:3px;outline:2px solid}@media (prefers-reduced-motion:reduce){.recap{-webkit-backdrop-filter:none;backdrop-filter:none}}#stage{flex:1;place-items:center;min-height:0;padding:0 8px 8px;display:grid;position:relative}.board{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:relative}.board svg{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:visible}.tile{border:1px solid var(--line);background-color:var(--surface);background-position:50%;background-repeat:no-repeat;background-size:76% 76%;border-radius:6px;place-items:center;transition:transform .12s,opacity .18s;display:grid;position:absolute}.tile.sel{z-index:2;transform:scale(1.07);box-shadow:0 0 0 2px}.board svg polyline{stroke:currentColor}#controls{padding:8px 12px calc(10px + env(safe-area-inset-bottom));justify-content:center;gap:8px;display:flex}#controls button{font:inherit;border:1px solid var(--line);background:var(--surface);color:inherit;cursor:pointer;border-radius:999px;padding:9px 18px;font-size:13px}#controls button:disabled{opacity:.4;cursor:default}#controls button[aria-pressed=true]{background:var(--ink);color:var(--surface)}#modifiers{padding:0 12px calc(10px + env(safe-area-inset-bottom));opacity:.55;font-variant-numeric:tabular-nums;justify-content:center;font-size:11px;display:flex}#controls .cost{opacity:.55;font-variant-numeric:tabular-nums}.tile.hint{animation:.5s ease-in-out 2 pulse;box-shadow:0 0 0 3px}@keyframes pulse{50%{transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.tile.hint{animation:none}}#stage.hidden-board #board{visibility:hidden}#stage.hidden-board:after{content:"Paused";opacity:.6;place-items:center;font-size:16px;display:grid;position:absolute;inset:0}#toast{background:var(--ink);color:var(--surface);white-space:nowrap;opacity:0;pointer-events:none;border-radius:999px;margin:0;padding:7px 14px;font-size:12px;transition:opacity .2s;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}#toast.show{opacity:.92}.screen[hidden]{display:none}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.menu{padding:24px 16px calc(24px + env(safe-area-inset-bottom));text-align:center;overscroll-behavior:contain;justify-content:center;align-items:center;gap:10px;overflow-y:auto}.menu h1{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:700}.menu h2{margin:0 0 4px;font-size:20px;font-weight:600}.menu .tagline{opacity:.65;max-width:34ch;margin:0 0 14px;font-size:13px;line-height:1.5}.menu button{font:inherit;border:1px solid var(--line);background:var(--surface);color:inherit;cursor:pointer;border-radius:999px;min-width:190px;padding:11px 26px;font-size:15px}.menu button.primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}.menu button.quiet{opacity:.6;background:0 0;border-color:#0000;font-size:13px}.menu button:focus-visible{outline-offset:3px;outline:2px solid}.level-grid{grid-template-columns:repeat(4,1fr);gap:8px;width:100%;max-width:360px;margin:4px 0 14px;display:grid}.level-grid .level{font-variant-numeric:tabular-nums;border-radius:10px;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:8px 2px;display:flex}.level-grid .level:disabled{opacity:.3;cursor:default}.level-grid .n{font-size:15px;font-weight:600}.level-grid .s{letter-spacing:1px;font-size:10px}.level-grid .p{opacity:.55;font-size:9px}.mod-picker{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.mod-picker button{border:1px solid var(--line);min-width:0;color:inherit;opacity:.55;background:0 0;border-radius:999px;padding:7px 13px;font-size:12px}.mod-picker button[aria-pressed=true]{opacity:1;background:var(--surface);border-color:currentColor;font-weight:600}.mod-picker .cost{opacity:.6;font-variant-numeric:tabular-nums}.mods-summary{opacity:.6;font-variant-numeric:tabular-nums;margin:2px 0 6px;font-size:12px}.mark{border:1px solid var(--mark,currentColor);background:0 0;border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.mark.got{background:var(--mark,currentColor)}.level-grid .marks{gap:3px;margin-top:2px;display:flex}.level-grid .mark{opacity:.35}.level-grid .mark.got{opacity:1}.mod-picker button{align-items:center;gap:6px;display:inline-flex}.mod-picker button .mark{opacity:.45}.mod-picker button[aria-pressed=true] .mark{opacity:1}.install-hint{opacity:.72;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:18px;font-size:.8rem;display:flex}.install-hint .dismiss{opacity:.9;min-height:0;padding:4px 10px;font-size:.8rem}
