:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c2630;--panel:#10141ac7;--panel-solid:#141a21;--line:#ffffff17;--text:#eef1f4;--dim:#8d99a8;--accent:#f0b443;--accent-ink:#2a1c04;--ok:#6ee08a;--bad:#ff4d4d;--safe-b:max(10px, env(safe-area-inset-bottom));--safe-t:max(10px, env(safe-area-inset-top));font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}#view{touch-action:none;position:fixed;inset:0}#view canvas{display:block}#view:after{content:"";pointer-events:none;background:radial-gradient(at 50% 48%,#0000 55%,#080c108c 100%);position:absolute;inset:0}svg{width:100%;height:100%;display:block}button{font:inherit;color:var(--text);border:1px solid var(--line);cursor:pointer;background:#ffffff0f;border-radius:14px;justify-content:center;align-items:center;gap:6px;min-width:48px;min-height:48px;padding:0 14px;font-weight:600;transition:transform 80ms,background .15s,opacity .15s;display:inline-flex}button:active:not(:disabled){transform:scale(.94)}button.icon{width:48px;padding:0}button.icon svg{width:22px;height:22px}button.primary{color:var(--accent-ink);background:linear-gradient(#ffc65a,#e8a232);border-color:#ffd27a;box-shadow:0 4px 14px #f0b44359,inset 0 1px #ffffff80}button:disabled{opacity:.38;cursor:default;box-shadow:none}.panel,#stats,#controls,#dock,#confirm,#sel,#preview{background:var(--panel);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 24px #00000059}#hud{padding:var(--safe-t) 10px 0;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:8px;display:flex;position:fixed;top:0;left:0;right:0}#hud>*{pointer-events:auto}#stats{font-variant-numeric:tabular-nums;align-items:center;gap:14px;height:48px;padding:0 14px;font-size:17px;font-weight:700;display:flex}.stat{align-items:center;gap:6px;display:inline-flex}.stat i,#hpIcon{width:20px;height:20px;display:inline-block}#gold{color:#ffd27a}#gold.bump{animation:.3s bump}@keyframes bump{40%{transform:scale(1.18)}}#hpBar{background:#ffffff1f;border-radius:4px;width:54px;height:8px;overflow:hidden}#hpFill{background:linear-gradient(90deg,#ff6a5a,#ff9a6a);height:100%;transition:width .25s;display:block}#hpNum{font-size:15px}#hp.hurt{animation:.45s hurt}@keyframes hurt{20%{color:#ff6a5a;transform:translate(-3px)}60%{transform:translate(3px)}}#controls{border-radius:16px;gap:4px;padding:0;display:flex}#controls button{background:0 0;border:none;min-height:48px}#speed{font-variant-numeric:tabular-nums;font-size:16px}#speed.fast{color:var(--accent)}#preview{top:calc(var(--safe-t) + 56px);pointer-events:none;border-radius:16px;align-items:center;gap:4px;max-width:calc(100vw - 20px);padding:5px 10px 5px 8px;animation:.3s drop;display:flex;position:fixed;left:50%;overflow-x:auto;transform:translate(-50%)}@keyframes drop{0%{opacity:0;transform:translate(-50%,-8px)}}#preview .skull{opacity:.8;width:18px;height:18px;margin-right:2px}.chip{font-variant-numeric:tabular-nums;align-items:center;gap:2px;padding-right:6px;font-size:14px;font-weight:700;display:inline-flex}.chip .creep{width:30px;height:30px;position:relative}.chip .badge{width:15px;height:15px;position:absolute;bottom:-2px;right:-3px}.chip small{color:var(--dim);font-size:12px}#sheet{left:0;right:0;bottom:var(--safe-b);pointer-events:none;flex-direction:column;align-items:center;gap:8px;padding:0 8px;display:flex;position:fixed}#sheet>*{pointer-events:auto;max-width:100%}#dock{border-radius:22px;align-items:stretch;gap:6px;padding:6px;display:flex}#picker{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}#picker button{border-radius:16px;flex-direction:column;gap:1px;width:62px;min-height:66px;padding:6px 0 4px;position:relative}#picker button i{filter:drop-shadow(0 2px 2px #0006);width:34px;height:34px;display:block}#picker button small{color:#ffd27a;font-variant-numeric:tabular-nums;align-items:center;gap:2px;font-size:13px;display:inline-flex}#picker button small i{filter:none;width:12px;height:12px}#picker button.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f0b4432e}#picker button.poor small{color:var(--bad)}#picker button.mount>i{position:relative}#picker button.mount .tw{width:26px;height:26px;position:absolute;top:-2px;left:4px}#picker button.mount .tw svg{width:100%;height:100%}#picker button.mount .slab{width:34px;height:10px;position:absolute;bottom:-1px;left:0}#picker button.nomount .slab .sa{stroke:var(--bad)}#picker button.nomount .slab .sb{stroke:#7a1e1e}#picker button.nomount>i{animation:.36s shake}@keyframes shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}#picker button.pulse{border-color:var(--accent);animation:.9s ease-in-out infinite nudge}@keyframes nudge{50%{box-shadow:inset 0 0 0 3px var(--accent);background:#f0b44352}}#wallPick{background:var(--panel);border:1px solid var(--line);border-radius:20px;gap:6px;padding:6px;animation:.16s rise;display:flex}#wallPick button{border-radius:16px;flex-direction:column;gap:1px;width:62px;min-height:62px;padding:4px 0}#wallPick button i{width:34px;height:34px;display:block}#wallPick button small{color:#ffd27a;font-variant-numeric:tabular-nums;align-items:center;gap:2px;font-size:13px;display:inline-flex}#wallPick button small i{width:12px;height:12px}#wallPick button.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f0b4432e}#wallPick button.poor small{color:var(--bad)}#start{border-radius:18px;flex-direction:column;gap:0;width:74px;min-height:66px;font-size:13px}#start svg{width:26px;height:26px}#start.ready{animation:1.6s ease-in-out infinite ready}@keyframes ready{50%{box-shadow:0 0 0 6px #f0b4432e,0 4px 18px #f0b44380}}#start.busy{border-color:var(--line);color:var(--dim);box-shadow:none;background:#ffffff0f}#start .spin{border:3px solid #ffffff26;border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#openRing{color:#bfe7ff;background:#50a0e629;border-color:#78c8ff80;border-radius:18px;flex-direction:column;gap:0;min-height:66px;font-size:13px;animation:1.6s ease-in-out infinite ready}#openRing svg{width:24px;height:24px}#confirm{will-change:transform;align-items:center;gap:6px;padding:5px;display:flex;position:fixed;top:0;left:0}#cancel{width:48px;min-height:48px;padding:0}#cancel svg{width:18px;height:18px}#ok{font-variant-numeric:tabular-nums;gap:6px;min-width:84px;min-height:48px;font-size:16px}#ok svg{flex:none;width:22px;height:22px}#ok .cost,#cost{align-items:center;gap:3px;display:inline-flex}#ok .cost i,#cost i{width:16px;height:16px;display:inline-block}#cost{background:var(--panel-solid);border:1px solid var(--line);color:#ffd27a;font-variant-numeric:tabular-nums;pointer-events:none;border-radius:12px;padding:4px 9px;font-size:15px;font-weight:700;position:fixed;top:0;left:0}#cost.bad{border-color:#ff4d4db3}#stem{pointer-events:none;width:100%;height:100%;display:none;position:fixed;inset:0}#stem line{stroke:#6ee08ad9;stroke-width:2px;stroke-dasharray:4 4}#stem circle{fill:#6ee08a40;stroke:#6ee08ae6;stroke-width:2px}#stem.bad line,#stem.bad circle{stroke:#ff4d4de6}#stem.bad circle{fill:#ff4d4d40}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}#sel{flex-direction:column;gap:6px;min-width:min(360px,100vw - 16px);padding:8px;animation:.18s rise;display:flex}#sel .row{align-items:center;gap:8px;display:flex}#selIcon{flex:none;width:34px;height:34px;display:inline-block}#selName{text-transform:capitalize;flex:1;font-size:16px;font-weight:700}#selHp{background:#ffffff1f;border-radius:4px;width:56px;height:7px;overflow:hidden}#selHpFill{background:var(--ok);height:100%;display:block}#target{min-width:96px;padding:0 10px;font-size:13px}#target svg{width:18px;height:18px}#upgrades{flex:1;gap:6px;display:flex;overflow-x:auto}#upgrades button{text-transform:capitalize;white-space:nowrap;background:#6ee08a1f;border-color:#6ee08a73;flex:1;justify-content:flex-start;font-size:14px}#upgrades button svg,#sell svg{flex:none;width:16px;height:16px}#upgrades button b,#sell b{color:#ffd27a;font-variant-numeric:tabular-nums;align-items:center;gap:2px;margin-left:auto;display:inline-flex}#sell{gap:6px;font-size:14px}#sell .glyph{width:18px;height:18px;display:inline-block}#sell:disabled{opacity:.45}#sell.armed{background:#ff4d4d38;border-color:#ff6a5ae6;animation:.8s ease-in-out infinite armed}@keyframes armed{50%{box-shadow:0 0 0 5px #ff4d4d33}}#sel.wall #upgrades{display:none}#sel.wall #sell{flex:1}#toast{top:calc(var(--safe-t) + 110px);background:var(--panel-solid);pointer-events:none;border:1px solid #ff4d4d99;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:600;animation:.18s rise;position:fixed;left:50%;transform:translate(-50%)}#pauseMenu,#end{-webkit-backdrop-filter:blur(4px);background:#080b0f9e;flex-direction:column;justify-content:center;align-items:center;gap:12px;animation:.2s fade;display:flex;position:fixed;inset:0}#pauseMenu button,#end button{min-width:200px;min-height:56px;font-size:18px}#end h1{letter-spacing:.02em;margin:0 0 8px;font-size:48px}#end.won h1{color:#ffd27a;text-shadow:0 0 24px #ffc85a80}#end.lost h1{color:#ff8a7a}@keyframes fade{0%{opacity:0}}[hidden]{display:none!important}@media (min-width:900px){#hud{padding:14px 16px 0}#sheet{bottom:16px}#picker button{width:72px}}@media (prefers-reduced-motion:reduce){*{animation:none!important}}#preview .wno{font-variant-numeric:tabular-nums;border-right:1px solid var(--line);align-items:center;gap:2px;margin-right:2px;padding-right:6px;font-size:15px;font-weight:800;display:inline-flex}.chip .badge.in{inset:-3px auto auto -3px}.chip.inbound .creep{filter:drop-shadow(0 0 3px #ff8c5acc)}#preview .hints{border-left:1px solid var(--line);gap:6px;padding-left:6px;display:inline-flex}.hint{background:#ffffff0f;border-radius:12px;align-items:center;padding:2px;display:inline-flex}.hint i{width:20px;height:20px;display:inline-block}.hint i+i{margin-left:-5px}.hint.linked{background:#ffd27a38;box-shadow:0 0 0 1px #ffd27ab3}.hint.unowned{opacity:.45;filter:grayscale(.7)}#kit{gap:8px}#kit .socks{gap:6px;display:flex}.sock{background:#ffffff0a;border-radius:14px;width:48px;min-width:48px;min-height:48px;padding:0}.sock svg{width:30px;height:30px}.sock.empty{color:#ffd27a;border:2px dashed #ffd27abf;animation:1.6s ease-in-out infinite ready}.sock.empty svg{width:22px;height:22px}.sock.full{background:radial-gradient(circle at 50% 45%,#ffffff29,#ffffff08 70%)}.sock.core{color:var(--dim);border-radius:50%}.sock.locked{color:var(--dim)}.sock.locked svg{width:18px;height:18px}.sock.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#f0b4432e}#kit .tags{flex:1;align-items:center;gap:3px;min-width:0;display:flex;overflow:hidden}#kit .cond{flex:none;width:22px;height:22px}#kit .linked{color:#ffd27a;align-items:center;gap:1px;font-size:13px;font-weight:700;display:inline-flex}#kit .linked i{width:16px;height:16px}#kit .lean{border-radius:5px;flex:none;gap:1px;width:64px;height:10px;display:flex;overflow:hidden}#kitPick{scrollbar-width:none;gap:6px;animation:.16s rise;overflow-x:auto}#kitPick .opt{text-transform:capitalize;background:#ffffff12;flex:none;gap:4px;padding:0 10px 0 6px;font-size:14px}#kitPick .opt .gem{width:30px;height:30px;display:inline-block}#kitPick .opt b{color:#ffd27a;font-variant-numeric:tabular-nums;align-items:center;gap:2px;display:inline-flex}#kitPick .opt b i{width:14px;height:14px;display:inline-block}#kitPick .opt.inert{opacity:.5}#kitPick .opt.remove{background:#ff4d4d29;border-color:#ff6a5a99}#kitPick .opt .glyph{width:20px;height:20px;display:inline-block}#picks{padding:0 10px calc(var(--safe-b) + 6px);background:linear-gradient(#080b0f00 25%,#080b0fd1 60%);flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;animation:.25s fade;display:flex;position:fixed;inset:0}#picks .head .count{background:var(--accent);width:40px;height:40px;color:var(--accent-ink);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:inline-flex}#picks .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(420px,100%);display:grid}#picks .card{background:linear-gradient(#28323ef2,#12171ef2);border:1px solid #ffffff24;border-radius:20px;flex-direction:column;align-items:center;gap:6px;min-height:164px;padding:12px 8px 10px;animation:.35s cubic-bezier(.2,.9,.3,1.2) both deal;box-shadow:0 8px 24px #00000073}#picks .card:nth-child(2){animation-delay:50ms}#picks .card:nth-child(3){animation-delay:.1s}#picks .card:nth-child(4){animation-delay:.15s}@keyframes deal{0%{opacity:0;transform:translateY(40px)scale(.9)}}#picks .card.mastery{border-color:#ffd25a99}#picks .card.go{box-shadow:0 0 0 3px var(--accent);transform:scale(1.06)}#picks .crest{width:56px;height:56px;position:relative}#picks .crest .fam{filter:drop-shadow(0 3px 4px #00000080);width:56px;height:56px;display:block}#picks .crest .badge{width:24px;height:24px;position:absolute;top:-6px;right:-8px}#picks .name{text-transform:capitalize;font-size:17px;font-weight:800}#picks .row{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}#picks .row i{width:24px;height:24px;display:inline-block}#picks .row.gems i{width:22px;height:22px}#end #next{min-width:200px}#menu{padding:calc(var(--safe-t) + 8px) 16px calc(var(--safe-b) + 16px);background:repeating-radial-gradient(circle at 50% 8%,#ffd27a09 0 2px,#0000 2px 46px),radial-gradient(at 50% 0,#2c3a48 0%,#141a21 70%);flex-direction:column;align-items:center;animation:.25s fade;display:flex;position:fixed;inset:0;overflow-y:auto}#menu .emblem{filter:drop-shadow(0 6px 14px #f0b4434d);flex:none;width:104px;height:104px}#menu .trail{flex-direction:column;gap:4px;width:min(380px,100%);display:flex;position:relative}#menu .path{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}#menu .path .dim{fill:none;stroke:#ffffff2e;stroke-width:4px;stroke-dasharray:2 10;stroke-linecap:round}#menu .path .lit{fill:none;stroke:#ffd27a;stroke-width:4px;stroke-dasharray:2 10;stroke-linecap:round}#menu .stop{align-items:center;gap:12px;min-height:112px;display:flex;position:relative}#menu .stop.l{padding-left:12%}#menu .stop.r{flex-direction:row-reverse;padding-right:12%}#menu .stop.c{justify-content:center;min-height:84px}#menu .node{background:radial-gradient(circle at 38% 30%, var(--a), var(--b) 78%);border:3px solid #ffffff59;border-radius:50%;flex:none;width:96px;height:96px;padding:0;position:relative;box-shadow:0 8px 20px #00000080,inset 0 2px #ffffff4d}#menu .practice .node{width:72px;height:72px}#menu .node .marks{width:100%;height:100%;position:absolute;inset:0}#menu .node .num{color:#fff;text-shadow:0 2px 6px #0009;font-size:40px;font-weight:900;position:relative}#menu .node.cleared{border-color:#ffd27a}#menu .node.locked{filter:grayscale(.85)brightness(.6);opacity:1}#menu .node.go{transform:scale(1.12);box-shadow:0 0 0 6px #ffd27a66}#menu .node .badge{align-items:center;display:inline-flex;position:absolute}#menu .node .star{width:30px;height:30px;top:-8px;right:-8px}#menu .node .lock{width:30px;height:30px;color:var(--dim);background:#14181e;border-radius:50%;padding:6px;bottom:-6px;right:-6px}#menu .node .resume{background:var(--accent);height:24px;color:var(--accent-ink);border-radius:12px;gap:2px;padding:0 8px 0 6px;font-size:13px;font-weight:800;bottom:-8px;left:50%;transform:translate(-50%)}#menu .node .resume svg{width:12px;height:12px}#menu .facts{font-variant-numeric:tabular-nums;color:var(--text);flex-direction:column;gap:4px;font-size:15px;font-weight:700;display:flex}#menu .facts span{align-items:center;gap:5px;display:inline-flex}#menu .facts i{color:#bfe7ff;width:18px;height:18px;display:inline-block}#menu .stop.r .facts{align-items:flex-end}#menu .practice .node .num{width:36px;height:36px;display:inline-flex}#menu .practice .node .num svg{width:100%;height:100%}#upgrades button{min-width:0}#upgrades:has(button:nth-child(3)) .nm{display:none}#upgrades:has(button:nth-child(3)) button{justify-content:center;gap:4px;padding:0 6px}#upgrades:has(button:nth-child(3)) button b{margin-left:0}#upgrades .ut{flex:none;width:26px;height:26px;display:inline-block}#upgrades .ut svg{width:100%;height:100%}#upgrades .nm{text-overflow:ellipsis;min-width:0;overflow:hidden}#openRing span i svg{width:12px;height:12px}
