:root{--panel:#fff;--ink:#1c1c1e;--ink-2:#6b6b70;--line:#e4e4e8;--tint:#0a6fe0;--tint-soft:#e5f0fd;color-scheme:light}html,body{height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;background:#1b2a22;margin:0;font:15px/1.35 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,Segoe UI,Roboto,sans-serif;overflow:hidden}.vignette{pointer-events:none;z-index:5;background:radial-gradient(at 50% 45%,#0000 55%,#0a0e1461 100%);position:fixed;inset:0}canvas#c{touch-action:none;outline:none;width:100vw;height:100vh;display:block;position:fixed;inset:0}#load{z-index:40;background:#1b2a22;place-content:center;justify-items:center;gap:10px;transition:opacity .9s;display:grid;position:fixed;inset:0}#load .mark{width:min(140px,34vw)}#load p{color:#e8d6ae;letter-spacing:.32em;text-transform:uppercase;margin:0;font-size:12px}#load.gone{opacity:0;pointer-events:none}[hidden]{display:none!important}.clean .hud{display:none}.hud{pointer-events:none;z-index:10;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));position:fixed;inset:0}.hud>*{pointer-events:auto}.card{background:var(--panel);border-radius:14px;box-shadow:0 1px 2px #0000001f,0 6px 18px #00000024}.level-card{top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));width:min(300px,100vw - 274px);min-width:180px;padding:12px 14px;position:absolute}.level-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.level-goal{color:var(--ink-2);margin:2px 0 8px;font-size:13px}.bar,.season{background:var(--line);border-radius:3px;height:6px;overflow:hidden}.bar-fill,.season-fill{background:var(--tint);transform-origin:0;height:100%;transition:transform .3s;transform:scaleX(0)}.season{height:4px;margin-top:8px}.season-fill{background:#c9892b}.level-status{color:var(--ink-2);font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:12px}.tools{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:50vw;display:flex;position:absolute}.icon-btn{background:var(--panel);width:40px;height:40px;color:var(--ink);cursor:pointer;border:0;border-radius:12px;place-items:center;font:600 13px/1 inherit;display:grid;box-shadow:0 1px 2px #0000001f,0 4px 12px #0000001f}.icon-btn svg{fill:currentColor;width:20px;height:20px}.icon-btn:active{transform:scale(.94)}.speed-btn{font-variant-numeric:tabular-nums}.toast{left:50%;bottom:max(18px, env(safe-area-inset-bottom));background:var(--panel);opacity:0;pointer-events:none;text-align:center;border-radius:14px;max-width:min(520px,100vw - 32px);padding:12px 16px;font-size:14px;transition:opacity .35s,transform .35s cubic-bezier(.2,.8,.2,1);position:absolute;transform:translate(-50%,16px);box-shadow:0 6px 20px #0000002e}.toast.show{opacity:1;transform:translate(-50%)}.hud.sandbox-on .toast{bottom:calc(max(14px, env(safe-area-inset-bottom)) + 76px)}.sandbox{left:50%;bottom:max(14px, env(safe-area-inset-bottom));box-sizing:border-box;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 24px);padding:10px 12px;display:flex;position:absolute;transform:translate(-50%)}.hour{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.hour input{width:min(220px,40vw);accent-color:var(--tint)}.segs{background:#f0f0f3;border-radius:10px;padding:2px;display:flex}.seg{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 11px;font:500 13px/1 inherit}.seg.on{background:var(--panel);box-shadow:0 1px 3px #00000024}.hour .seg{background:#f0f0f3}.hour .seg.on{background:var(--tint);color:#fff;box-shadow:none}.sheet{opacity:0;pointer-events:none;z-index:20;background:#00000052;place-items:center;padding:16px;transition:opacity .25s;display:grid;position:fixed;inset:0}.sheet.show{opacity:1;pointer-events:auto}.sheet-card{box-sizing:border-box;width:min(420px,100%);max-height:calc(100vh - 40px);padding:18px;transition:transform .3s cubic-bezier(.2,.8,.2,1);overflow:auto;transform:translateY(12px)}.sheet.show .sheet-card{transform:none}.sheet h2{letter-spacing:-.015em;margin:0 0 4px;font-size:20px}.muted{color:var(--ink-2);margin:0 0 12px;font-size:14px}.level-list{flex-direction:column;gap:6px;margin:8px 0 14px;display:flex}.level-row{text-align:left;cursor:pointer;color:var(--ink);background:#f5f5f7;border:0;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-family:inherit;display:flex}.level-row:active{background:#ebebef}.level-row .n{background:var(--tint-soft);width:28px;height:28px;color:var(--tint);border-radius:8px;flex:none;place-items:center;font-weight:600;display:grid}.level-row .t{flex-direction:column;flex:1;display:flex}.level-row strong{font-size:15px;font-weight:600}.level-row small{color:var(--ink-2);font-size:12px}.level-row .tick{color:#2f9e44;font-weight:700}.legend p{margin:3px 0;font-size:13px}.legend strong{font-weight:600}.credits-link{color:var(--tint);margin-top:10px;font-size:14px;text-decoration:none;display:inline-block}.actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.btn{background:var(--tint);color:#fff;cursor:pointer;border:0;border-radius:12px;padding:11px 16px;font:600 15px/1 inherit}.btn.secondary{color:var(--ink);background:#f0f0f3}@media (width<=520px){.level-card{box-sizing:border-box;width:calc(100vw - 24px);top:calc(max(12px, env(safe-area-inset-top)) + 48px);padding:10px 12px}.tools{max-width:none;left:max(12px, env(safe-area-inset-left));justify-content:flex-end}.level-title{font-size:15px}}
