@font-face{font-family:Knewave;src:url(./Knewave-GR9NjQDk.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow Condensed;font-weight:500;src:url(./BarlowCondensed-500-BgYH2mbd.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow Condensed;font-weight:600;src:url(./BarlowCondensed-600-DepVgxBB.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow Condensed;font-weight:700;src:url(./BarlowCondensed-700-v1xN8_Wq.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow;font-weight:400;src:url(./Barlow-400-qiz4-Cze.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow;font-weight:500;src:url(./Barlow-500-BPAOfeC8.woff2) format("woff2");font-display:swap}@font-face{font-family:Barlow;font-weight:600;src:url(./Barlow-600-DILqtrty.woff2) format("woff2");font-display:swap}:root{--bg: #070a14;--panel: rgba(11, 15, 28, .84);--panel-2: rgba(18, 24, 44, .9);--line: rgba(190, 205, 255, .14);--line-2: rgba(190, 205, 255, .28);--text: #f2f4f8;--dim: #9aa3b8;--mute: #6b7489;--red: #e0283a;--red-2: #ff4a4a;--gold: #ffc23a;--blue: #4aa8ff;--teal: #2affc0;--orange: #ff7a2a;--purple: #a050ff;--green: #4cdb7a;--brush: "Knewave", "Impact", sans-serif;--cond: "Barlow Condensed", "Arial Narrow", sans-serif;--body: "Barlow", system-ui, sans-serif;--chamfer: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px) , calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px) , 0 14px)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--body);overflow:hidden}canvas#game{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:0}#ui{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden}.stage{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}.stage>*{pointer-events:auto}.screen{position:absolute;inset:0;animation:screenIn .35s ease both;pointer-events:none}.screen>*{pointer-events:auto}.screen.out{animation:screenOut .25s ease both}@keyframes screenIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes screenOut{to{opacity:0}}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,.focusable:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.hidden{display:none!important}svg.ic{width:1em;height:1em;fill:currentColor;flex:none}.brush{font-family:var(--brush);letter-spacing:.5px}.cond{font-family:var(--cond);text-transform:uppercase;letter-spacing:1px}.dim{color:var(--dim)}.h1{font-family:var(--cond);font-weight:700;font-size:34px;letter-spacing:2px;text-transform:uppercase}.h2{font-family:var(--cond);font-weight:700;font-size:24px;letter-spacing:1.5px;text-transform:uppercase}.h3{font-family:var(--cond);font-weight:600;font-size:18px;letter-spacing:1.2px;text-transform:uppercase}.small{font-size:13px}.kicker{font-family:var(--cond);font-weight:600;font-size:13px;letter-spacing:3px;color:var(--dim);text-transform:uppercase}.panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 40px #00000073,inset 0 1px #ffffff0a;backdrop-filter:blur(6px)}.glass{background:linear-gradient(180deg,#141a30d9,#080b16e6);border:1px solid var(--line)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 22px;font-family:var(--cond);font-weight:700;font-size:19px;letter-spacing:1.5px;text-transform:uppercase;color:#fff;clip-path:var(--chamfer);background:linear-gradient(180deg,#2a3150,#161b30);transition:transform .08s ease,filter .15s}.btn:before{content:"";position:absolute;inset:0;clip-path:var(--chamfer);padding:1px;background:linear-gradient(180deg,#ffffff59,#ffffff0f);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.btn:hover{filter:brightness(1.15)}.btn:active{transform:scale(.96)}.btn.primary{background:linear-gradient(180deg,#ff4a52,#b3121f);box-shadow:0 0 24px #e0283a73}.btn.gold{background:linear-gradient(180deg,#ffd36a,#c98a0e);color:#1b1203}.btn.blue{background:linear-gradient(180deg,#3a8cff,#1a4fb8)}.btn.ghost{background:#ffffff0f}.btn.sm{height:36px;font-size:15px;padding:0 14px}.btn.lg{height:58px;font-size:24px;padding:0 34px}.btn[disabled],.btn.disabled{filter:grayscale(.9) brightness(.6);pointer-events:none}.btn .cost{display:inline-flex;align-items:center;gap:4px;font-size:.8em;opacity:.95;padding-left:8px;border-left:1px solid rgba(255,255,255,.25)}.icon-btn{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#0a0e1abf;border:1px solid var(--line-2);font-size:22px;transition:transform .08s,background .15s}.icon-btn:hover{background:#283250d9}.icon-btn:active{transform:scale(.92)}.back-btn{position:absolute;left:24px;top:20px;z-index:5}.dot{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--red);color:#fff;font:700 11px/18px var(--body);text-align:center;box-shadow:0 0 10px #e0283acc}.topbar{position:absolute;top:14px;right:18px;display:flex;gap:10px;align-items:center;z-index:6}.pill{position:relative;display:flex;align-items:center;gap:8px;height:42px;padding:0 12px 0 8px;background:#080b16c7;border:1px solid var(--line);clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);font-family:var(--cond);font-weight:700;font-size:21px;letter-spacing:.5px;min-width:120px}.pill .ic{font-size:26px}.pill .sub{font-size:13px;color:var(--dim);font-weight:600;margin-top:-4px}.pill .plus{margin-left:auto;font-size:22px;opacity:.9;padding-left:8px}.pill.energy .ic{color:#6aff7a;filter:drop-shadow(0 0 6px rgba(106,255,122,.7))}.pill.coins .ic{color:var(--gold);filter:drop-shadow(0 0 6px rgba(255,194,58,.6))}.pill.gems .ic{color:#4ad8ff;filter:drop-shadow(0 0 6px rgba(74,216,255,.7))}.pill .stack{display:flex;flex-direction:column;line-height:1.05}.profile{position:absolute;left:18px;top:14px;display:flex;align-items:center;gap:12px;z-index:6}.avatar{width:74px;height:74px;border-radius:50%;border:2px solid rgba(120,170,255,.75);box-shadow:0 0 18px #4aa8ff8c,inset 0 0 12px #000c;background:radial-gradient(circle at 50% 35%,#2a3a6a,#0a0e1a 70%);overflow:hidden;display:grid;place-items:center}.avatar canvas,.avatar img{width:100%;height:100%}.avatar.enemy{border-color:#ff5a50cc;box-shadow:0 0 18px #ff3c3c80,inset 0 0 12px #000c;background:radial-gradient(circle at 50% 35%,#5a1a1a,#12060a 70%)}.profile .name{font-family:var(--cond);font-weight:700;font-size:26px;letter-spacing:.5px}.profile .lvl{display:flex;align-items:center;gap:10px;color:var(--gold);font-family:var(--cond);font-weight:700;font-size:19px}.xpbar{width:150px;height:6px;background:#ffffff1f;border-radius:3px;overflow:hidden}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,#ffb020,#ffe07a);box-shadow:0 0 8px #ffc83ccc}.badge{display:flex;align-items:center;gap:8px;margin-left:30px;font-family:var(--cond);font-weight:600;font-size:18px;color:#dfe6f5}.badge .ic{font-size:30px;filter:drop-shadow(0 0 6px rgba(255,255,255,.35))}.siderail{position:absolute;left:18px;top:128px;display:flex;flex-direction:column;gap:16px;z-index:5}.railbtn{position:relative;width:80px;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;text-shadow:0 2px 6px #000}.railbtn .ic{font-size:40px;color:#f1e6cf;filter:drop-shadow(0 2px 6px rgba(0,0,0,.8))}.railbtn:active{transform:scale(.94)}.event-banner{position:absolute;right:18px;top:74px;width:380px;height:128px;clip-path:polygon(0 0,100% 0,100% 100%,16px 100%,0 calc(100% - 16px));overflow:hidden;border:1px solid rgba(255,90,90,.4)}.event-banner canvas{position:absolute;inset:0;width:100%;height:100%}.event-banner .txt{position:absolute;right:16px;bottom:12px;text-align:left}.event-banner .t1{font-family:var(--cond);font-weight:700;font-size:28px;letter-spacing:1px;text-shadow:0 2px 8px #000}.event-banner .t2{font-size:15px;color:#e4e8f2;text-shadow:0 1px 4px #000}.event-banner .t3{display:flex;gap:6px;align-items:center;color:var(--gold);font-family:var(--cond);font-weight:700;font-size:17px}.free-banner{position:absolute;right:18px;top:212px;width:300px;height:92px;display:flex;align-items:center;padding:0 16px;gap:12px;background:linear-gradient(90deg,#14100aeb,#3c280ad9);border:1px solid rgba(255,190,80,.45);clip-path:polygon(0 0,100% 0,100% 100%,12px 100%,0 calc(100% - 12px))}.free-banner .ic{font-size:54px;color:var(--gold);filter:drop-shadow(0 0 12px rgba(255,190,60,.8));margin-left:auto}.modes{position:absolute;bottom:22px;left:190px;right:250px;display:flex;gap:14px;align-items:flex-end;justify-content:center;z-index:4}.mode{position:relative;flex:1 1 0;max-width:200px;height:170px;clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 16px,100% calc(100% - 16px),calc(100% - 16px) 100%,16px 100%,0 calc(100% - 16px),0 16px);background:var(--c2);transition:transform .15s ease,filter .15s}.mode:before{content:"";position:absolute;inset:2px;clip-path:inherit;background:var(--art);background-size:cover;background-position:center}.mode:after{content:"";position:absolute;inset:2px;clip-path:inherit;background:linear-gradient(180deg,transparent 40%,rgba(4,6,12,.92) 82%)}.mode .art{position:absolute;inset:2px;display:grid;place-items:center;padding-bottom:46px;z-index:1;font-size:74px;color:var(--c1);filter:drop-shadow(0 0 14px var(--c1))}.mode .art canvas{width:100%;height:100%;position:absolute;inset:0}.mode .lbl{position:absolute;left:0;right:0;bottom:14px;text-align:center;z-index:2}.mode .lbl b{display:block;font-family:var(--cond);font-weight:700;font-size:23px;letter-spacing:1px;text-transform:uppercase}.mode .lbl span{font-size:13px;color:#d5dbe8}.mode:hover{transform:translateY(-4px);filter:brightness(1.12)}.mode.featured{max-width:270px;height:200px;flex-grow:1.4}.mode.featured .lbl b{font-size:27px}.mode .lock{position:absolute;top:10px;right:12px;z-index:3;font-size:18px;color:var(--dim)}.mode .glowbar{position:absolute;left:10%;right:10%;bottom:2px;height:3px;background:var(--c1);box-shadow:0 0 16px 3px var(--c1);z-index:3}.hubnav{position:absolute;right:22px;bottom:26px;display:grid;grid-template-columns:repeat(2,96px);gap:12px;z-index:5}.navbtn{position:relative;height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;clip-path:var(--chamfer);background:linear-gradient(180deg,#1a2038eb,#0a0d18f2);font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase}.navbtn .ic{font-size:30px;color:#e9eefc}.navbtn:active{transform:scale(.95)}.tagline-left{position:absolute;left:26px;bottom:24px;font-family:var(--brush);font-size:26px;line-height:1.05;transform:rotate(-8deg);color:#e8e8f0;text-shadow:0 3px 10px #000;opacity:.9;z-index:3;pointer-events:none}.tagline-left:after{content:"";display:block;width:120px;height:3px;margin-top:4px;background:var(--red);box-shadow:0 0 8px var(--red);transform:skew(-20deg)}.title-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-left:7%;gap:10px}.logo{font-family:var(--brush);font-size:132px;line-height:.86;color:#f6f6f8;transform:rotate(-6deg);text-shadow:0 6px 30px rgba(0,0,0,.6),0 0 2px #fff;-webkit-mask-image:repeating-linear-gradient(-14deg,#000 0 7px,rgba(0,0,0,.82) 7px 9px);mask-image:repeating-linear-gradient(-14deg,#000 0 7px,#000000d1 7px 9px)}.logo .seal{display:inline-block;vertical-align:middle;margin-left:10px;width:46px;height:46px;background:var(--red);color:#fff;font:700 26px/46px serif;text-align:center;transform:rotate(6deg) translateY(-30px);box-shadow:0 0 20px #e0283a99;-webkit-mask-image:none}.tag3{font-family:var(--cond);font-weight:600;font-size:20px;letter-spacing:8px;color:#e8eaf2;margin-top:18px}.tap{margin-top:46px;font-family:var(--cond);font-weight:700;font-size:22px;letter-spacing:6px;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}.title-right{position:absolute;right:6%;top:8%;text-align:right;font-family:var(--cond);font-weight:500;letter-spacing:9px;font-size:21px;line-height:2.1;color:#e8ecf6;text-shadow:0 2px 8px #000}.screen-title{position:absolute;left:90px;top:22px;z-index:5}.screen-title .kicker{margin-bottom:2px}.content{position:absolute;inset:90px 24px 22px;display:flex;gap:18px}.col{display:flex;flex-direction:column;gap:14px;min-height:0}.scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;-webkit-overflow-scrolling:touch;touch-action:pan-y}.tabs{display:flex;gap:6px}.tab{height:38px;padding:0 18px;font-family:var(--cond);font-weight:700;font-size:16px;letter-spacing:1.5px;text-transform:uppercase;color:var(--dim);background:#ffffff0a;border:1px solid var(--line);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}.tab.on{color:#fff;background:linear-gradient(180deg,#e0283a8c,#8c141e8c);border-color:#ff5a5a80}.stat-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.06);font-family:var(--cond);font-weight:600;font-size:18px;letter-spacing:.5px}.stat-row .ic{color:#b9c4e0;font-size:18px}.stat-row .v{margin-left:auto;font-weight:700}.stat-row .delta{color:var(--green);font-size:14px;margin-left:6px}.stat-row .delta.neg{color:var(--red-2)}.bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#4aa8ff,#a0e0ff)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;align-content:start}.card{position:relative;height:138px;padding:8px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,#1e243cb3,#0a0d18eb);border:1px solid var(--line);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:transform .1s,border-color .15s}.card:hover{transform:translateY(-2px)}.card.sel{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.card .thumb{position:absolute;inset:6px 6px 40px;display:grid;place-items:center}.card .thumb canvas{max-width:100%;max-height:100%}.card .nm{font-family:var(--cond);font-weight:700;font-size:15px;line-height:1.1;letter-spacing:.3px}.card .meta{display:flex;justify-content:space-between;font-size:12px;color:var(--dim)}.card .rar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--rc);box-shadow:0 0 12px var(--rc)}.card .eq{position:absolute;top:6px;right:6px;font:700 10px/16px var(--cond);letter-spacing:1px;padding:0 6px;background:var(--gold);color:#1b1203;border-radius:2px}.card .lockic{position:absolute;top:8px;right:8px;color:var(--dim)}.card.locked{filter:grayscale(.7) brightness(.7)}.rarity{font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase}.perk{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;margin:3px 4px 0 0;border-radius:3px;background:#ffffff12;border:1px solid var(--line);font-size:13px}.map-node{position:absolute;width:64px;height:64px;transform:translate(-50%,-50%) rotate(45deg);display:grid;place-items:center;background:linear-gradient(135deg,#2a3150,#12162a);border:2px solid rgba(255,255,255,.35);box-shadow:0 0 12px #000000b3;transition:transform .12s}.map-node>*{transform:rotate(-45deg)}.map-node .lb{font-family:var(--cond);font-weight:700;font-size:17px}.map-node.done{border-color:#ffc850d9;background:linear-gradient(135deg,#5a3a10,#2a1a06)}.map-node.cur{border-color:#ff5a4a;background:linear-gradient(135deg,#c41e2e,#5a0a12);box-shadow:0 0 22px #ff3c3ce6;animation:nodePulse 1.6s ease-in-out infinite}.map-node.locked{opacity:.55;filter:grayscale(.8)}.map-node.boss{width:82px;height:82px}.map-node.sel{outline:3px solid #fff;outline-offset:4px}.map-node:hover{transform:translate(-50%,-50%) rotate(45deg) scale(1.08)}@keyframes nodePulse{50%{box-shadow:0 0 34px #ff503c}}.map-stars{position:absolute;transform:translate(-50%);display:flex;gap:1px;font-size:13px;color:var(--gold);text-shadow:0 0 6px #000}.map-stars .off{color:#ffffff40}.map-path{position:absolute;inset:0;pointer-events:none}.stage-panel{position:absolute;right:24px;top:90px;bottom:22px;width:360px;padding:20px;display:flex;flex-direction:column;gap:12px}.chapter-tabs{position:absolute;left:24px;bottom:22px;display:flex;gap:8px}.chip{height:36px;padding:0 14px;display:inline-flex;align-items:center;gap:6px;font-family:var(--cond);font-weight:700;font-size:15px;letter-spacing:1px;background:#080b16cc;border:1px solid var(--line);border-radius:3px}.chip.on{border-color:var(--gold);color:var(--gold)}.modal-back{position:absolute;inset:0;background:#020308b3;display:grid;place-items:center;z-index:50;animation:fadeIn .2s ease;backdrop-filter:blur(3px)}.modal{position:relative;min-width:420px;max-width:860px;max-height:640px;padding:26px 28px;animation:popIn .25s cubic-bezier(.2,1.4,.4,1);display:flex;flex-direction:column;gap:14px}.modal .x{position:absolute;right:12px;top:12px}@keyframes fadeIn{0%{opacity:0}}@keyframes popIn{0%{transform:scale(.85);opacity:0}}.row{display:flex;gap:10px;align-items:center}.spacer{flex:1}.list-item{display:flex;align-items:center;gap:14px;padding:12px 14px;background:#ffffff0a;border:1px solid var(--line);border-radius:4px}.list-item .ic.big{font-size:34px}.progress{position:relative;height:10px;border-radius:5px;background:#ffffff1a;overflow:hidden}.progress i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#ffb020,#ffe07a)}.slider{width:100%;accent-color:var(--red)}.toggle{width:50px;height:28px;border-radius:14px;background:#ffffff1f;position:relative;transition:background .15s;flex:none}.toggle:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}.toggle.on{background:var(--red)}.toggle.on:after{transform:translate(22px)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}.seg button{padding:6px 12px;font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--dim)}.seg button.on{background:var(--red);color:#fff}.daily-grid{display:grid;grid-template-columns:repeat(7,96px);gap:10px}.day{height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#ffffff0d;border:1px solid var(--line);clip-path:var(--chamfer);font-family:var(--cond);font-weight:700}.day .ic{font-size:38px}.day.got{opacity:.45}.day.today{border-color:var(--gold);background:linear-gradient(180deg,#ffbe3c40,#3c280a66);box-shadow:inset 0 0 0 1px var(--gold)}.toasts{position:absolute;left:50%;top:84px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:80;pointer-events:none}.toast{padding:10px 20px;background:#0a0d18eb;border:1px solid rgba(255,200,80,.5);border-radius:4px;font-family:var(--cond);font-weight:700;font-size:18px;letter-spacing:1px;animation:toastIn .3s ease,toastOut .4s ease 2.4s forwards;box-shadow:0 6px 24px #0009}@keyframes toastIn{0%{transform:translateY(-14px);opacity:0}}@keyframes toastOut{to{transform:translateY(-10px);opacity:0}}.hud{position:absolute;inset:0;pointer-events:none;contain:layout style}.hp-bar .fill,.hp-bar .lag,.flow-bar .fill{will-change:transform}.timer{will-change:transform;contain:layout paint}.hud *{pointer-events:none}.hud .pause{pointer-events:auto;position:absolute;right:22px;top:92px}.hp-wrap{position:absolute;top:16px;display:flex;align-items:center;gap:12px}.hp-wrap.p1{left:18px}.hp-wrap.p2{right:18px;flex-direction:row-reverse}.hp-wrap .avatar{width:84px;height:84px}.hp-info{display:flex;flex-direction:column;gap:3px;width:430px}.hp-wrap.p2 .hp-info{align-items:flex-end}.hp-name{display:flex;align-items:baseline;gap:10px;font-family:var(--cond);font-weight:700;font-size:24px;letter-spacing:.5px;text-shadow:0 2px 6px #000}.hp-name small{font-size:16px;color:var(--gold)}.hp-bar{position:relative;width:100%;height:18px;background:#0a060abf;border:1px solid rgba(255,255,255,.35);transform:skew(-24deg);overflow:hidden}.hp-wrap.p2 .hp-bar{transform:skew(24deg)}.hp-bar .lag{position:absolute;inset:0;background:#fff3d0;transform-origin:left;transition:transform .6s ease .25s}.hp-bar .fill{position:absolute;inset:0;background:linear-gradient(180deg,#ff6a5a,#d0182a 60%,#8a0a14);transform-origin:left;transition:transform .08s linear}.hp-wrap.p2 .hp-bar .lag,.hp-wrap.p2 .hp-bar .fill{transform-origin:right}.flow-bar{position:relative;width:82%;height:7px;background:#0009;transform:skew(-24deg);overflow:hidden;border:1px solid rgba(255,255,255,.18)}.hp-wrap.p2 .flow-bar{transform:skew(24deg)}.flow-bar .fill{position:absolute;inset:0;transform-origin:left;background:linear-gradient(90deg,#ffb020,#ffe07a)}.hp-wrap.p2 .flow-bar .fill{transform-origin:right;background:linear-gradient(270deg,#4aa8ff,#d070ff)}.flow-bar.full:after{content:"";position:absolute;inset:0;background:#ffffff8c;animation:flowPulse .6s ease-in-out infinite alternate}@keyframes flowPulse{0%{opacity:0}to{opacity:.7}}.perks{display:flex;gap:6px;margin-top:4px}.perks .pk{width:30px;height:30px;display:grid;place-items:center;transform:rotate(45deg);background:#0a0e1ad9;border:1px solid var(--line-2)}.perks .pk .ic{transform:rotate(-45deg);font-size:16px;color:#cfe0ff}.rounds{display:flex;gap:6px;margin-top:2px}.rounds i{width:12px;height:12px;transform:rotate(45deg);border:1px solid rgba(255,255,255,.6);background:#00000080}.rounds i.won{background:var(--gold);box-shadow:0 0 8px var(--gold);border-color:#fff}.timer{position:absolute;left:50%;top:14px;transform:translate(-50%);width:120px;height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center}.timer:before{content:"";position:absolute;inset:6px 12px;background:#080810e0;clip-path:polygon(20% 0,80% 0,100% 40%,50% 100%,0 40%);border:0}.timer .lbl{position:relative;font-family:var(--cond);font-weight:700;font-size:15px;letter-spacing:2px;color:#8fd8ff;margin-top:-10px}.timer .num{position:relative;font-family:var(--cond);font-weight:700;font-size:46px;line-height:1;text-shadow:0 0 12px rgba(120,200,255,.5)}.timer .wing{position:absolute;top:34px;width:34px;height:3px;background:var(--gold);box-shadow:0 0 8px var(--gold)}.timer .wing.l{left:-18px;transform:rotate(-20deg)}.timer .wing.r{right:-18px;transform:rotate(20deg)}.timer.low .num{color:#ff5a4a;animation:pulse .5s infinite}.stage-label{position:absolute;left:50%;top:112px;transform:translate(-50%);font-family:var(--cond);font-weight:600;font-size:14px;letter-spacing:3px;color:#ffffffb3;text-shadow:0 1px 4px #000}.combo{position:absolute;left:34px;top:150px;display:flex;align-items:center;gap:6px;transform:rotate(-6deg);opacity:0}.combo.show{animation:comboPop .25s cubic-bezier(.2,1.6,.4,1) both;opacity:1}.combo.fade{transition:opacity .5s;opacity:0}.combo .n{font-family:var(--brush);font-size:88px;color:#fff;text-shadow:0 4px 14px rgba(0,0,0,.8);line-height:1}.combo .t{font-family:var(--brush);font-size:34px;line-height:.95;color:var(--gold);text-shadow:0 3px 8px #000}.combo:before{content:"";position:absolute;inset:20% -60px 10% -40px;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.6) 60%,transparent);z-index:-1;clip-path:polygon(0 20%,100% 0,92% 100%,4% 85%)}.combo.p2{left:auto;right:34px;transform:rotate(6deg)}@keyframes comboPop{0%{transform:rotate(-6deg) scale(1.6);opacity:0}}.announce{position:absolute;left:0;right:0;top:34%;text-align:center;font-family:var(--brush);font-size:110px;color:#fff;text-shadow:0 6px 30px rgba(0,0,0,.8),0 0 40px rgba(255,80,60,.35);animation:annIn .9s cubic-bezier(.2,1.2,.4,1) both}.announce.small{font-size:54px;top:40%}.announce.ko{color:#ff3a3a;font-size:150px}.announce.win{color:var(--gold)}.announce.lose{color:#9aa3b8}.announce.boss{font-family:var(--cond);font-weight:700;letter-spacing:12px;font-size:64px}.announce .sub{display:block;font-family:var(--cond);font-weight:600;font-size:22px;letter-spacing:8px;color:#ff9a8a}@keyframes annIn{0%{transform:scale(2.2);opacity:0}30%{transform:scale(.95);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(1.05);opacity:0}}.tutorial-tip{position:absolute;left:50%;top:138px;transform:translate(-50%);padding:12px 24px;background:#080b16e6;border:1px solid rgba(255,200,80,.5);border-radius:4px;font-family:var(--cond);font-weight:600;font-size:21px;letter-spacing:1px;text-align:center;max-width:720px;animation:popIn .3s ease}.tutorial-tip b{color:var(--gold)}.fps{position:absolute;right:8px;bottom:4px;font:12px monospace;color:#9f9;text-shadow:0 0 3px #000}#controls{position:fixed;inset:0;z-index:3;pointer-events:none}#controls.off{display:none}.joy{position:absolute;width:220px;height:220px;border-radius:50%;pointer-events:auto;touch-action:none}.joy .ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.35);background:radial-gradient(circle,#ffffff14,#ffffff05 70%);box-shadow:inset 0 0 30px #0006}.joy .arr{position:absolute;color:#ffffff73;font-size:26px}.joy .knob{position:absolute;left:50%;top:50%;width:92px;height:92px;margin:-46px 0 0 -46px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#e9edf5,#9aa3b8 70%);box-shadow:0 4px 16px #0009,inset 0 -4px 10px #00000040}.cbtn{position:absolute;border-radius:50%;pointer-events:auto;touch-action:none;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#28468cbf,#0a1228d9);border:2px solid rgba(140,190,255,.65);box-shadow:0 0 16px #4a8cff8c,inset 0 0 18px #4aa8ff59;color:#eaf3ff;transition:transform .05s;user-select:none;-webkit-user-select:none}.cbtn .ic{width:52%;height:52%;filter:drop-shadow(0 0 6px rgba(120,190,255,.9))}.cbtn.down{transform:scale(.9);filter:brightness(1.4)}.cbtn.big{border-width:3px}.cbtn.cd{filter:grayscale(.8) brightness(.55)}.cbtn .cdtxt{position:absolute;font-family:var(--cond);font-weight:700;font-size:26px;color:#fff;text-shadow:0 0 6px #000}.cbtn .cnt{position:absolute;right:-2px;bottom:-2px;min-width:26px;height:26px;padding:0 6px;border-radius:13px;background:#0a0e1a;border:1px solid rgba(140,190,255,.7);font:700 16px/24px var(--cond);text-align:center}.cbtn.ult{background:radial-gradient(circle at 50% 40%,#a01e28d9,#28060ae6);border-color:#ff786ecc;box-shadow:0 0 22px #ff3c3ccc,inset 0 0 18px #ff5a5a66}.cbtn.ult.ready:after{content:"";position:absolute;inset:-5px;border-radius:50%;box-shadow:0 0 34px 6px #ff503ce6;animation:ultPulse .7s ease-in-out infinite alternate;pointer-events:none}@keyframes ultPulse{0%{opacity:.2}to{opacity:1}}.cbtn .ring-cd{position:absolute;inset:-2px;border-radius:50%}.rotate-hint{position:absolute;left:50%;top:8px;transform:translate(-50%);padding:6px 14px;border-radius:3px;background:#0009;font:600 13px var(--cond);letter-spacing:2px;color:#ddd;pointer-events:none}.results{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#05060c8c,#020308e6);animation:fadeIn .4s}.results .box{width:640px;padding:30px 34px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.results .big{font-family:var(--brush);font-size:92px;line-height:1}.results .stars{display:flex;gap:10px;font-size:56px}.results .stars .ic{color:#ffffff2e}.results .stars .ic.on{color:var(--gold);filter:drop-shadow(0 0 12px rgba(255,190,60,.9));animation:starPop .5s cubic-bezier(.2,1.6,.4,1) both}@keyframes starPop{0%{transform:scale(0) rotate(-40deg)}}.reward-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.reward{min-width:110px;padding:10px 14px;display:flex;flex-direction:column;align-items:center;gap:4px;background:#ffffff0d;border:1px solid var(--line);clip-path:var(--chamfer);font-family:var(--cond);font-weight:700;font-size:22px}.reward .ic{font-size:30px}.reward small{font-size:12px;color:var(--dim);letter-spacing:1px}.statline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}.statline div{padding:8px;background:#ffffff0a;border-radius:3px;font-family:var(--cond)}.statline b{display:block;font-size:22px}.statline span{font-size:12px;color:var(--dim);letter-spacing:1px;text-transform:uppercase}.tip{font-size:15px;color:#ffd68a}.vs-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.levelup{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle,#3c280a99,#000000d9);z-index:90;animation:fadeIn .3s}.levelup .lv{font-family:var(--brush);font-size:120px;color:var(--gold);text-shadow:0 0 40px rgba(255,190,60,.8);animation:popIn .5s cubic-bezier(.2,1.6,.4,1)}
