:root{--ink:#f4efe4;--ink-dim:#c9c1b0;--panel:#161824c7;--panel-edge:#ffecc829;--gold:#ffd23f;--ore:#f29933;--crystal:#59e6ff;--you:#4080ff;--enemy:#ff4033;--hp:#ff5a4e;--stamina:#7ee08a;--accent:#ffb547;--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--display:"Lilita One", "Arial Rounded MT Bold", system-ui, sans-serif;--body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;font-size:clamp(13px,.55vw + .45vh + 4px,26px)}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--body);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#1b1f2e;margin:0;overflow:hidden}#game{width:100vw;height:100vh;touch-action:none;outline:none;height:100dvh;display:block;position:fixed;inset:0}#ui{pointer-events:none;z-index:2;position:fixed;inset:0}#ui button{pointer-events:auto;cursor:pointer;font-family:inherit}#loading{z-index:10;background:radial-gradient(circle at 50% 40%,#2c3350,#141725 70%);place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}#loading.error #loading-text{color:#ff9b8f;max-width:30rem}.loading-card{text-align:center;justify-items:center;gap:1rem;display:grid}.loading-track{background:#ffffff1a;border-radius:1rem;width:min(22rem,70vw);height:.6rem;overflow:hidden}#loading-bar{background:linear-gradient(90deg, var(--accent), var(--gold));width:0;height:100%;transition:width .2s}#loading-text{color:var(--ink-dim);font-size:.95rem}.logo{font-family:var(--display);letter-spacing:.02em;color:var(--ink);text-shadow:0 .12em #7a3f12,0 .2em .6em #00000073;font-size:clamp(2.4rem,7vw,5.5rem);line-height:1}.logo span{color:var(--accent)}#float-layer{position:absolute;inset:0;overflow:hidden}.float-text{font-family:var(--display);white-space:nowrap;text-shadow:0 2px #000000b3,0 0 6px #00000080;will-change:transform, opacity;font-size:1.15rem;position:absolute;top:0;left:0}.float-text.big{font-size:2rem}#hud{opacity:0;transition:opacity .3s;position:absolute;inset:0}#hud.visible{opacity:1}.hud-top{top:calc(.6rem + var(--safe-t));left:calc(.8rem + var(--safe-l));right:calc(.8rem + var(--safe-r));grid-template-columns:1fr auto 1fr;align-items:start;gap:1rem;display:grid;position:absolute}.res{flex-wrap:wrap;gap:.5rem;display:flex}.res-item{background:var(--panel);border:1px solid var(--panel-edge);font-family:var(--display);border-radius:.6rem;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:1.15rem;display:inline-flex}.res-item small{font-family:var(--body);color:var(--gold);opacity:.85;font-size:.75rem;font-weight:800}.ico{border-radius:50%;width:.9rem;height:.9rem;display:inline-block}.ico-gold{background:radial-gradient(circle at 35% 35%, #fff3a8, var(--gold) 55%, #b88600)}.ico-ore{background:linear-gradient(135deg, #8a817a, #5e5753 60%, var(--ore) 61%);border-radius:.2rem;transform:rotate(20deg)}.ico-crystal{clip-path:polygon(50% 0,90% 40%,50% 100%,10% 40%);background:linear-gradient(160deg, #d6fbff, var(--crystal));border-radius:0}.nexus-bars{align-items:center;gap:.8rem;display:flex}.nb{letter-spacing:.08em;color:var(--ink-dim);gap:.2rem;font-size:.65rem;font-weight:800;display:grid}.nb.enemy{text-align:right}.nb .bar{width:clamp(6rem,14vw,16rem);height:.7rem}.nb.you .fill{background:linear-gradient(90deg, #2c5fd6, var(--you))}.nb.enemy .fill{background:linear-gradient(90deg, var(--enemy), #c42618);margin-left:auto}.clock{font-family:var(--display);background:var(--panel);border:1px solid var(--panel-edge);text-align:center;border-radius:.6rem;min-width:4.2rem;padding:.15rem .7rem;font-size:1.4rem}.bar{background:#00000073;border:1px solid #ffffff1f;border-radius:.4rem;position:relative;overflow:hidden}.bar .fill{width:100%;height:100%;transition:width .15s}.msgs{justify-self:end;justify-items:end;gap:.3rem;max-width:24rem;display:grid}.msg{background:var(--panel);border-left:3px solid var(--accent);border-radius:.4rem;padding:.3rem .6rem;font-size:.85rem;font-weight:800;transition:opacity .6s,transform .6s;animation:.25s ease-out msg-in}.msg.good{border-color:var(--stamina)}.msg.bad{border-color:var(--hp)}.msg.fade{opacity:0;transform:translate(1rem)}@keyframes msg-in{0%{opacity:0;transform:translateY(-.5rem)}}.hero-panel{left:calc(.8rem + var(--safe-l));bottom:calc(.8rem + var(--safe-b));background:var(--panel);border:1px solid var(--panel-edge);border-radius:.8rem;gap:.35rem;width:clamp(12rem,20vw,20rem);padding:.55rem .7rem;display:grid;position:absolute}.hero-name{font-family:var(--display);font-size:1.2rem}.bar.hp{height:1rem}.bar.hp .fill{background:linear-gradient(90deg, #c43a2f, var(--hp))}.bar.hp span{text-shadow:0 1px 2px #000;place-items:center;font-size:.7rem;font-weight:800;display:grid;position:absolute;inset:0}.bar.stamina{height:.45rem}.bar.stamina .fill{background:linear-gradient(90deg, #3fae55, var(--stamina))}.bar.stamina.low .fill{background:#d9a23a}.hero-sub{color:var(--ink-dim);justify-content:space-between;font-size:.75rem;font-weight:800;display:flex}.state{font-family:var(--display);letter-spacing:.06em;color:var(--accent)}.state.slide{color:#9fd8ff}.state.ko{color:var(--hp)}.prompt{left:50%;bottom:calc(6.4rem + var(--safe-b));opacity:0;background:var(--panel);border:1px solid var(--panel-edge);white-space:nowrap;border-radius:.7rem;align-items:center;gap:.5rem;padding:.4rem .8rem .55rem;font-size:.95rem;font-weight:800;transition:opacity .15s,transform .15s;display:flex;position:absolute;transform:translate(-50%,.5rem)}.prompt.visible{opacity:1;transform:translate(-50%)}.prompt .key{font-family:var(--display);background:var(--ink);color:#222;border-radius:.35rem;padding:.05rem .45rem;box-shadow:0 3px #8b8577}.prompt .prog{background:#ffffff1f;border-radius:1rem;height:.2rem;position:absolute;bottom:.2rem;left:.6rem;right:.6rem;overflow:hidden}.prompt .prog div{background:var(--ore);width:0;height:100%}.sendbar{left:50%;bottom:calc(.8rem + var(--safe-b));flex-wrap:wrap;justify-content:center;gap:.4rem;width:max-content;max-width:calc(100% + -2*clamp(12rem,20vw,20rem) - 3.2rem);display:flex;position:absolute;transform:translate(-50%)}.send{border:1px solid var(--panel-edge);background:var(--panel);color:var(--ink);text-align:left;border-radius:.7rem;gap:.1rem;min-width:4.4rem;padding:.4rem .5rem .35rem;transition:transform 80ms,background .15s;display:grid;position:relative}.send:hover{background:#323650e6}.send:active{transform:translateY(2px)}.send .hk{font-family:var(--display);background:var(--ink);color:#222;border-radius:.3rem;padding:0 .3rem;font-size:.7rem;position:absolute;top:-.45rem;left:-.35rem}.send .hk:empty{display:none}.send .lbl{font-family:var(--display);white-space:nowrap;font-size:.85rem}.send .cost{color:var(--gold);font-size:.72rem;font-weight:800}.send .lock{font-family:var(--display);color:var(--ink-dim);border-radius:.7rem;place-items:center;display:grid;position:absolute;inset:0}.send .lock:empty{display:none}.send.locked{opacity:.6}.send.locked .lbl,.send.locked .cost{visibility:hidden}.send.poor .cost{color:#a69a7c}.send.poor{opacity:.75}.send.selected{outline:2px solid var(--accent);outline-offset:2px}.respawn{font-family:var(--display);text-shadow:0 3px #000;opacity:0;font-size:2.2rem;transition:opacity .3s;position:absolute;top:38%;left:50%;transform:translate(-50%)}.respawn.visible{opacity:1}#menu{pointer-events:auto;padding:calc(1rem + var(--safe-t)) calc(1rem + var(--safe-r)) calc(1rem + var(--safe-b)) calc(1rem + var(--safe-l));background:radial-gradient(circle at 50% 30%,#14162459,#0c0d16d1);place-items:center;display:none;position:absolute;inset:0;overflow-y:auto}#menu.visible{display:grid}#menu .screen{text-align:center;justify-items:center;gap:.9rem;max-width:62rem;display:none}#menu[data-screen=title] .title-screen,#menu[data-screen=lobby] .lobby-screen,#menu[data-screen=pause] .pause-screen,#menu[data-screen=end] .end-screen{display:grid}.tag{color:var(--ink-dim);margin:0;font-weight:800}.cards{flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.card{text-align:left;width:clamp(9rem,16vw,14rem);color:var(--ink);background:linear-gradient(170deg, color-mix(in srgb, var(--c) 35%, #20243a), #191c2c 75%);border:2px solid #0000;border-radius:1rem;gap:.3rem;padding:.9rem .9rem .8rem;transition:transform .12s,border-color .12s;display:grid;box-shadow:0 .4rem 1.2rem #00000059}.card.selected{border-color:var(--c);transform:translateY(-4px)scale(1.03)}.card-name{font-family:var(--display);color:var(--c);font-size:1.5rem}.card-desc{font-size:.85rem;font-weight:800}.card-stats{color:var(--ink-dim);font-size:.72rem;font-weight:800}.diffs{gap:.4rem;display:flex}.diff{border:1px solid var(--panel-edge);background:var(--panel);color:var(--ink);border-radius:2rem;padding:.35rem 1rem;font-weight:800}.diff.selected{background:var(--ink);color:#1b1f2e}.diff-desc{min-height:1.3em;color:var(--ink-dim);margin:0;font-size:.85rem}.play{font-family:var(--display);letter-spacing:.06em;color:#3b1d05;background:linear-gradient(180deg, #ffd27a, var(--accent));border:0;border-radius:1rem;padding:.5rem 3rem;font-size:1.7rem;box-shadow:0 .3rem #a2560f,0 .6rem 1.4rem #0006}.play:active{transform:translateY(3px);box-shadow:0 .1rem #a2560f}.controls{text-align:left;background:var(--panel);border:1px solid var(--panel-edge);pointer-events:auto;border-radius:.8rem;max-width:56rem;padding:.5rem .9rem}.controls summary{cursor:pointer;font-weight:800}.ctl-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.8rem;font-size:.8rem;display:grid}.ctl-grid h4{color:var(--accent);margin:.6rem 0 .2rem}.ctl-grid p{color:var(--ink-dim);margin:.2rem 0}.ctl-grid b{color:var(--ink)}.ver{color:#ffffff59;margin:0;font-size:.7rem}#menu h2{font-family:var(--display);margin:0;font-size:3rem}.end-screen.won h2{color:var(--gold)}.mbtn{border:1px solid var(--panel-edge);background:var(--panel);min-width:16rem;color:var(--ink);border-radius:.8rem;padding:.6rem 1rem;font-size:1rem;font-weight:800}.mbtn:hover,.mbtn.focus{border-color:var(--accent);background:#3c3228e6}.pad-hint{opacity:.7;margin:10px 0 0;font-size:.85rem;display:none}body.pad .pad-hint{display:block}.stats{background:var(--panel);border-radius:.8rem;gap:.25rem;min-width:18rem;padding:.7rem 1rem;display:grid}.stats div{justify-content:space-between;gap:2rem;font-size:.9rem;display:flex}.stats span{color:var(--ink-dim)}#touch-ui{display:none;position:absolute;inset:0}#touch-ui.visible.in-game{display:block}.stick-zone{pointer-events:auto;touch-action:none;width:45%;position:absolute;top:15%;bottom:0;left:0}.stick-base{opacity:0;pointer-events:none;background:#ffffff14;border:2px solid #ffffff40;border-radius:50%;width:112px;height:112px;transition:opacity .1s;position:absolute;top:0;left:0}.stick-base.active{opacity:1}.stick-knob{background:#ffffff8c;border-radius:50%;width:50px;height:50px;position:absolute;top:31px;left:31px;box-shadow:0 2px 8px #0006}.touch-buttons{right:calc(1rem + var(--safe-r));bottom:calc(5.4rem + var(--safe-b));width:13.5rem;height:12rem;position:absolute}.tb{color:var(--ink);font-family:var(--display);touch-action:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1416228c;border:2px solid #ffffff59;border-radius:50%;font-size:.85rem;position:absolute}.tb.down{background:#ffb5478c;transform:scale(.94)}.tb-jump{width:5.2rem;height:5.2rem;font-size:1rem;bottom:0;right:0}.tb-slide{width:4.2rem;height:4.2rem;bottom:0;right:5.8rem}.tb-use{width:4.2rem;height:4.2rem;bottom:5.8rem;right:.4rem}.tb-use.hint{border-color:var(--ore);background:#f2993373;animation:1s infinite pulse}.tb-sprint{width:3.6rem;height:3.6rem;font-size:.75rem;bottom:4.8rem;right:5.3rem}.tb-sprint.on{border-color:var(--stamina);background:#7ee08a66}.tb-send{width:3.6rem;height:3.6rem;font-size:.7rem;bottom:.4rem;right:10.4rem}@keyframes pulse{50%{transform:scale(1.06)}}.touch-top{top:calc(3.4rem + var(--safe-t));right:calc(.8rem + var(--safe-r));gap:.4rem;display:flex;position:absolute}.tb-small{pointer-events:auto;border:1px solid var(--panel-edge);background:var(--panel);color:var(--ink);font-family:var(--display);touch-action:none;border-radius:.6rem;padding:.4rem .7rem}body.touch .hero-panel{bottom:auto;top:calc(3.4rem + var(--safe-t));width:11rem}body.touch .sendbar{left:calc(.8rem + var(--safe-l));pointer-events:none;flex-wrap:wrap;justify-content:flex-start;max-width:62%;transform:none}body.touch .msgs{display:none}body.touch .send{border-radius:.5rem;min-width:3.4rem;padding:.22rem .35rem}body.touch .send .lbl{font-size:.72rem}body.touch .send .cost{font-size:.62rem}body.touch .sendbar{gap:.25rem}body.touch .prompt{top:30%;bottom:auto}#debug{top:calc(3.6rem + var(--safe-t));left:calc(.8rem + var(--safe-l));pointer-events:none;z-index:5;background:#05080cd1;border:1px solid #78ffaa4d;border-radius:.5rem;max-width:min(30rem,92vw);max-height:75vh;padding:.5rem .7rem;display:none;position:absolute;overflow:auto}#debug .debug-btns{pointer-events:auto}#debug.visible{display:block}#debug pre{color:#a8ffcb;white-space:pre;margin:0;font:.72rem/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.debug-btns{flex-wrap:wrap;gap:.3rem;margin-top:.4rem;display:flex}.debug-btns button{color:#a8ffcb;background:#13261c;border:1px solid #2c5a40;border-radius:.3rem;padding:.2rem .4rem;font:.7rem ui-monospace,Menlo,Consolas,monospace}@media (max-height:500px){#debug pre{font-size:.6rem}#debug{max-width:22rem;max-height:60vh}}@media (max-width:720px){.hud-top{grid-template-columns:1fr;justify-items:center;gap:.4rem}.nexus-bars .nb span{display:none}}@media (orientation:portrait) and (pointer:coarse){.touch-buttons{bottom:calc(9rem + var(--safe-b))}}.gear-chips{gap:.25rem;display:flex}.chip{width:1.35rem;height:1.35rem;font-family:var(--display);color:#1b1f2e;background:var(--tc);border-radius:.3rem;place-items:center;font-size:.72rem;display:inline-grid;box-shadow:inset 0 -2px #00000040}.chip.empty{color:var(--ink-dim);box-shadow:none;background:#ffffff14}#forge{pointer-events:auto;padding:calc(.8rem + var(--safe-t)) calc(.8rem + var(--safe-r)) calc(.8rem + var(--safe-b)) calc(.8rem + var(--safe-l));z-index:4;background:#0a080673;place-items:center;display:none;position:absolute;inset:0;overflow-y:auto}#forge.visible{display:grid}.forge-card{background:linear-gradient(#30241cf5,#1c1614f5);border:1px solid #ffaa5a59;border-radius:1rem;width:min(44rem,100%);padding:.8rem 1rem 1rem;box-shadow:0 1rem 3rem #00000080,inset 0 1px #ffc88c26}.forge-card header{align-items:center;gap:.8rem;margin-bottom:.5rem;display:flex}.forge-card h3{font-family:var(--display);color:#ffb547;margin:0;font-size:1.6rem}.forge-card header .res{color:var(--ink-dim);flex:1;font-size:.85rem;font-weight:800}.forge-card h4{font-family:var(--display);margin:.8rem 0 .4rem;font-size:1.05rem;font-weight:400}.forge-card h4 small{font-family:var(--body);color:var(--ink-dim);margin-left:.4rem;font-size:.75rem}.forge-rows{gap:.35rem;display:grid}.forge-row{background:#00000038;border-radius:.6rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;padding:.35rem .5rem;display:grid}.forge-row .chip{width:1.8rem;height:1.8rem;font-size:.9rem}.fr-info{line-height:1.2;display:grid}.fr-info small,.fbtn small,.sbtn small{color:var(--ink-dim);font-size:.72rem}.fbtn,.sbtn,.fclose{color:var(--ink);text-align:left;background:#ffffff0f;border:1px solid #ffffff26;border-radius:.55rem;min-width:11rem;padding:.3rem .6rem;font-weight:800;transition:background .1s,transform 80ms;display:grid}.fbtn{border-left:4px solid var(--tc)}.fbtn em{color:var(--gold);font-size:.75rem;font-style:normal}.fbtn.poor em{color:#b58a6a}.fbtn.poor,.sbtn.poor{opacity:.6}.fbtn:hover,.sbtn:hover,.fbtn.focus,.sbtn.focus,.fclose.focus{background:#ffb54738;border-color:#ffb547}.fbtn:active,.sbtn:active{transform:translateY(2px)}.maxed{font-family:var(--display);color:#ffd23f;padding:0 1rem}.styles{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.4rem;display:grid}.sbtn.current{background:#7ee08a26;border-color:#7ee08a}.fclose{min-width:0;padding:.2rem .6rem;font-size:1rem}@media (max-width:640px),(max-height:480px){.forge-row{grid-template-columns:auto 1fr}.forge-row .fbtn,.forge-row .maxed{grid-column:1/-1}.forge-card{padding:.6rem}}.res-col{justify-items:start;gap:.35rem;display:grid}.inv{flex-wrap:wrap;gap:.25rem;max-width:26rem;display:flex}.inv-item{background:var(--panel);border:1px solid var(--panel-edge);font-family:var(--display);border-radius:.45rem;align-items:center;gap:.25rem;padding:.12rem .4rem;font-size:.85rem;display:inline-flex}.inv-item.zero{opacity:.45}.res-item,.inv-item{pointer-events:auto;cursor:help}.inv-item.zero{pointer-events:auto}.hud-tip{z-index:5;border:1px solid var(--panel-edge);color:#e9e1cf;pointer-events:none;background:#100e0bf0;border-radius:.5rem;gap:.2rem;width:max-content;max-width:290px;padding:.5rem .65rem;font-size:.8rem;line-height:1.35;display:none;position:absolute;box-shadow:0 6px 18px #00000073}.hud-tip.on{display:grid}.hud-tip strong{font-family:var(--display);color:#fff;font-size:.95rem}.hud-tip b{color:var(--gold);font-weight:800}.mi{--mc:#ccc;vertical-align:-.1rem;flex:none;width:.85rem;height:.85rem;display:inline-block}.mi-gold{background:radial-gradient(circle at 35% 35%, #fff3a8, var(--gold) 55%, #b88600);border-radius:50%}.mi-ore{background:linear-gradient(135deg, #8a817a 0 45%, var(--mc) 46% 70%, #5e5753 71%);border-radius:.2rem;transform:rotate(20deg)scale(.9);box-shadow:inset 0 0 0 1px #0000004d}.mi-crystal{clip-path:polygon(50% 0,88% 38%,50% 100%,12% 38%);background:linear-gradient(160deg, #fff 0%, var(--mc) 45%, color-mix(in srgb, var(--mc) 60%, #000) 100%)}.mi-leather{background:radial-gradient(circle at 40% 35%, color-mix(in srgb, var(--mc) 70%, #fff), var(--mc) 60%, color-mix(in srgb, var(--mc) 70%, #000));border-radius:45% 55% 40% 60%/55% 45% 60% 40%}.mi-string{background:repeating-linear-gradient(30deg, var(--mc) 0 2px, #b9b0a0 2px 3px);border-radius:50%;box-shadow:inset 0 0 0 2px #8a6238}.mi-sticks{background:linear-gradient(60deg, transparent 0 40%, var(--mc) 41% 58%, transparent 59%), linear-gradient(-50deg, transparent 0 42%, #6b4a2b 43% 57%, transparent 58%)}.mi-flower{background:radial-gradient(circle, #ffd84d 0 22%, var(--mc) 24% 62%, transparent 64%);box-shadow:0 0 0 1px color-mix(in srgb, var(--mc) 50%, transparent);border-radius:50%}.mi-flax{background:linear-gradient(180deg, var(--mc) 0 35%, #7a9a4a 36%);border-radius:50% 50% 10% 10%;width:.55rem}.cost-chip{color:var(--gold);white-space:nowrap;align-items:center;gap:.18rem;margin-right:.45rem;font-weight:800;display:inline-flex}.cost-chip.short{color:#ff7a6b}.inline-cost{vertical-align:middle;margin-left:.4rem;font-size:.8rem;display:inline-flex}.panel-layer{pointer-events:auto;padding:calc(.8rem + var(--safe-t)) calc(.8rem + var(--safe-r)) calc(.8rem + var(--safe-b)) calc(.8rem + var(--safe-l));z-index:4;background:#0a080673;place-items:center;display:none;position:absolute;inset:0;overflow-y:auto}.panel-layer.visible{display:grid}.forge-card .res{font-size:.8rem}.panel-list{gap:.35rem;display:grid}.panel-grid{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.4rem;display:grid}.fbtn.tile{min-width:0}.fbtn.off{opacity:.45;cursor:default}.fbtn.current{opacity:1;background:#7ee08a26;border-color:#7ee08a}.theme-pad{background:linear-gradient(#1e2634f5,#141820f5);border-color:#78beff59}.theme-pad h3{color:#8cc8ff}.theme-enchant{background:linear-gradient(#2c1c3af5,#181222f5);border-color:#be82ff66}.theme-enchant h3{color:#d3a6ff}.enchant-info{background:#00000040;border-radius:.6rem;gap:.35rem;padding:.5rem .7rem;font-size:.85rem;display:grid}.combos{flex-wrap:wrap;gap:.3rem;display:flex}.combo{opacity:.5;border:1px solid #ffffff1f;border-radius:.45rem;max-width:15rem;padding:.2rem .45rem;font-weight:800;display:grid}.combo small{color:var(--ink-dim);font-size:.68rem;font-weight:400}.combo.on{opacity:1;background:#d3a6ff26;border-color:#d3a6ff}#menu[data-screen=title],#menu[data-screen=lobby]{background:linear-gradient(90deg,#0e1119d1 0%,#0e11198c 38%,#0e111900 62%);place-items:stretch stretch;padding:0}#menu .title-screen,#menu .lobby-screen{text-align:left;align-content:start;justify-items:start;max-width:none;height:100%;overflow-y:auto}.home{width:min(31rem,100%);min-height:100%;padding:calc(1.6rem + var(--safe-t)) 1.6rem calc(1.2rem + var(--safe-b)) calc(1.8rem + var(--safe-l));background:linear-gradient(#232b3a 0%,#1a2130 100%);border-right:1px solid #ffd29624;align-content:start;gap:.75rem;display:grid;box-shadow:.6rem 0 2.4rem #00000059}.home-head{gap:.35rem;display:grid}.home .logo{margin:0;font-size:clamp(2.6rem,4.2vw,3.6rem);line-height:.95}.ingots{gap:.3rem;margin-top:.2rem;display:flex}.ingot{clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);background:linear-gradient(180deg, color-mix(in srgb, var(--m) 55%, #fff) 0 22%, var(--m) 23% 70%, color-mix(in srgb, var(--m) 65%, #000) 71%);opacity:.45;width:2.6rem;height:.9rem;transition:opacity .3s,transform .3s,filter .3s;transform:translateY(0)}.ingot.lit{opacity:1;filter:drop-shadow(0 0 6px var(--m));transform:translateY(-3px)}.ingot-name{font-family:var(--display);color:#d8cfbd;min-height:1.2em;margin:0;font-size:1rem}.home-pitch{color:#c3bba9;max-width:28rem;margin:0;font-size:.92rem;line-height:1.45}#menu .home h2.home-q,.home h3{font-family:var(--display);color:#f3ead8;margin:.5rem 0 0;font-weight:400}#menu .home h2.home-q{font-size:1.35rem}.home h3{font-size:1.05rem}.home h3 small{font-family:var(--body);color:#a9b3c4;margin-left:.3rem;font-size:.75rem}.modes{gap:.35rem;display:grid}.mode-row{text-align:left;color:#f3ead8;background:#ffffff08;border:1px solid #ffffff14;border-left:4px solid #ffffff1f;border-radius:.35rem;grid-template-columns:1fr auto;column-gap:.8rem;padding:.55rem .8rem .55rem .9rem;display:grid}.mode-row b{font-family:var(--display);font-size:1.2rem;font-weight:400}.mode-row span{color:#a9b3c4;grid-column:1;font-size:.8rem}.mode-row em{color:#a9b3c4;grid-area:1/2/3;align-self:center;font-size:.75rem;font-style:normal}.mode-row:hover{background:#ffb54714}.mode-row.selected{border-left-color:var(--accent);background:#ffb5471f;border-color:#ffb54759}.home-opts{gap:.55rem;padding-top:.2rem;display:grid}.heroes{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.hero-pick{text-align:left;border:1px solid #ffffff14;border-bottom:3px solid color-mix(in srgb, var(--c) 40%, transparent);color:#f3ead8;background:#ffffff08;border-radius:.35rem;gap:.1rem;padding:.45rem .6rem;display:grid}.hero-pick b{font-family:var(--display);color:var(--c);font-size:1.05rem;font-weight:400}.hero-pick span{color:#a9b3c4;font-size:.72rem}.hero-pick.selected{border-color:var(--c);border-bottom-color:var(--c);background:color-mix(in srgb, var(--c) 16%, transparent)}.home .diffs{justify-content:flex-start}.home .diff-desc{text-align:left;margin-top:.3rem}#menu[data-mode=solo] .opt-online,#menu[data-mode=pvp] .opt-diff,#menu[data-mode=coop] .solo-btn,#menu[data-mode=pvp] .solo-btn{display:none}.home .play{letter-spacing:.02em;justify-self:start;padding:.45rem 2.4rem;font-size:1.45rem}.field{color:#a9b3c4;gap:.2rem;font-size:.8rem;display:grid}.home input{font:inherit;color:#f3ead8;background:#0000004d;border:1px solid #ffffff24;border-radius:.35rem;outline:none;padding:.45rem .6rem;font-weight:800}.home input:focus{border-color:var(--accent)}.online-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.join-box{gap:.3rem;display:flex}.join-box input{width:6.2rem;font-family:var(--display);letter-spacing:.12em;text-align:center;font-size:1.1rem;font-weight:400}.join-btn{font-family:var(--display);border:1px solid var(--accent);color:var(--accent);background:0 0;border-radius:.35rem;padding:.3rem 1rem;font-size:1.1rem}.home-status{color:#c3bba9;min-height:1.2em;margin:0;font-size:.85rem}.home-status.bad{color:#ff8a7a}#menu.busy .home .play,#menu.busy .join-btn{opacity:.5;pointer-events:none}.home .controls{background:#0003;font-size:.9rem}.home .ver{margin-top:auto}.home .focus,.lobby .focus{outline:2px solid var(--accent);outline-offset:2px}.lobby-head{gap:.2rem;display:grid}.lobby-mode{color:#a9b3c4;margin:0;font-weight:800}#menu .room-code{font-family:var(--display);letter-spacing:.14em;color:var(--accent);margin:0;font-size:clamp(3rem,6vw,4.4rem);line-height:1}.lobby-hint{color:#c3bba9;margin:0;font-size:.85rem}.invite-box{box-sizing:border-box;color:#f4ecd8;width:100%;font:inherit;background:#15120d;border:1px solid #ffb547;border-radius:6px;padding:.5rem .6rem;font-size:.85rem}.mbtn.small{justify-self:start;width:auto;min-width:0;padding:.3rem .8rem;font-size:.85rem}.lobby-actions .play{white-space:nowrap;padding:.45rem 1.6rem;font-size:1.3rem}#hud.team1 .nb.you .fill{background:linear-gradient(90deg, #c42618, var(--enemy))}#hud.team1 .nb.enemy .fill{background:linear-gradient(90deg, var(--you), #2c5fd6)}.teams{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.team{border-top:3px solid var(--you);background:#0003;border-radius:0 0 .35rem .35rem;padding:.4rem .6rem}.team1{border-top-color:var(--enemy)}.team h3{margin:0 0 .3rem;font-size:1rem}.team ul{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.lobby-player{border-left:3px solid var(--c);padding-left:.45rem;display:grid}.lobby-player b{color:#f3ead8}.lobby-player span,.lobby-empty{color:#a9b3c4;font-size:.75rem}.lobby-player.me b{color:var(--accent)}.lobby-actions{align-items:center;gap:.8rem;margin-top:.4rem;display:flex}.waiting{color:#c3bba9;margin:0;font-weight:800}.gone{display:none!important}@media (max-width:760px){#menu[data-screen=title],#menu[data-screen=lobby]{background:0 0}.home{width:100%;min-height:66vh;padding:1.1rem calc(1rem + var(--safe-r)) calc(1rem + var(--safe-b)) calc(1rem + var(--safe-l));background:linear-gradient(#232b3af7,#1a2130fc);border-top:1px solid #ffd29633;border-right:0;border-radius:1rem 1rem 0 0;margin-top:34vh}.teams{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ingot{transition:none}}.mods{grid-template-columns:repeat(6,minmax(0,3.1rem));gap:.35rem;display:grid}.mod-card{--mc:#ccc;aspect-ratio:1;border:1px solid color-mix(in srgb, var(--mc) 30%, #ffffff14);color:color-mix(in srgb, var(--mc) 70%, #6b7280);cursor:pointer;background:linear-gradient(160deg,#ffffff0f,#00000040);border-radius:.45rem;place-items:center;padding:0;transition:transform .12s,background .15s,border-color .15s,box-shadow .15s,opacity .15s;display:grid;position:relative}.mod-card svg{width:58%;height:58%}.mod-card:hover,.mod-card.focus{color:var(--mc);border-color:var(--mc);transform:translateY(-2px)}.mod-card.picked{color:var(--mc);border-color:var(--mc);background:linear-gradient(160deg, color-mix(in srgb, var(--mc) 30%, transparent), color-mix(in srgb, var(--mc) 8%, #0000004d))}.mod-card.picked:after{content:"";background:var(--mc);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.18rem;left:.18rem}.mod-card.on{box-shadow:0 0 0 2px var(--mc), 0 0 14px color-mix(in srgb, var(--mc) 55%, transparent)}.mod-card.full{opacity:.4}.mod-votes{border:1px solid var(--mc);color:#fff;text-align:center;background:#10141d;border-radius:.55rem;min-width:1.05rem;height:1.05rem;padding:0 .2rem;font-size:.7rem;font-weight:800;line-height:.95rem;position:absolute;bottom:-.3rem;right:-.3rem}.menu-tip{z-index:50;position:fixed}#menu[data-mode=coop] .opt-mods,#menu[data-mode=pvp] .opt-mods{display:none}.mod-vote{background:#0000002e;border:1px solid #ffffff14;border-radius:.5rem;gap:.45rem;padding:.6rem .7rem .7rem;display:grid}.mod-vote h3{margin:0!important}.mod-vote h3 b{color:var(--accent);font-weight:400}.mod-sum{color:#a9b3c4;margin:0;font-size:.78rem}.mod-sum b{color:#f3ead8}.mod-vote.last-call{animation:.9s ease-in-out infinite last-call}@keyframes last-call{0%,to{background:#0000002e;border-color:#ffb54740;box-shadow:0 0 #ffb54700}50%{border-color:var(--accent);background:#ffb5471a;box-shadow:0 0 18px 2px #ffb54773}}@media (prefers-reduced-motion:reduce){.mod-vote.last-call{border-color:var(--accent);animation:none}}.lobby-actions .play.locked{filter:saturate(.4)}.hud-mods{gap:.25rem;display:flex}.hud-mods:empty{display:none}.hud-mod{--mc:#ccc;border:1px solid var(--mc);background:color-mix(in srgb, var(--mc) 22%, #100e0bd9);width:1.7rem;height:1.7rem;color:var(--mc);pointer-events:auto;cursor:help;border-radius:.35rem;place-items:center;display:grid}.hud-mod svg{width:1.1rem;height:1.1rem}@media (max-width:420px){.mods{grid-template-columns:repeat(6,minmax(0,1fr));gap:.3rem}}
