:root{--bg: #13261a;--panel: #1d3626;--panel2: #254532;--ink: #f4f1e6;--muted: #a9c2ae;--gold: #ffd166;--red: #e63946;--t0: #3b9dff;--t1: #ff4d5e}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(ellipse at top,#24492f,var(--bg) 70%);color:var(--ink);font-family:"Baloo 2",system-ui,sans-serif;overflow:hidden;-webkit-user-select:none;user-select:none}button{font-family:inherit;cursor:pointer}[hidden]{display:none!important}#menu{height:100%;overflow:auto}.menu-wrap{max-width:1280px;margin:0 auto;padding:18px 16px 24px}header{text-align:center}h1{margin:0;font-size:clamp(32px,5vw,56px);line-height:1;letter-spacing:1px;color:var(--gold);text-shadow:0 4px 0 #8a3b12,0 8px 18px rgba(0,0,0,.5)}h1 span{color:#fff}.sub{margin:6px 0 10px;color:var(--muted);font-weight:700}.modes{display:inline-flex;gap:8px;background:var(--panel);padding:6px;border-radius:14px}.modes button,.diff button{border:0;background:transparent;color:var(--muted);font-weight:800;font-size:17px;padding:6px 16px;border-radius:10px}.modes button.on,.diff button.on{background:var(--gold);color:#3a2205}.cols{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:14px;margin-top:14px}.side,.mid{background:var(--panel);border-radius:18px;padding:12px}.side h2{margin:0 0 8px;font-size:20px;display:flex;align-items:center;gap:8px}.dot{width:12px;height:12px;border-radius:50%;display:inline-block}.dot.t0{background:var(--t0)}.dot.t1{background:var(--t1)}.diff{display:flex;gap:4px;margin-bottom:8px;background:var(--panel2);border-radius:12px;padding:4px}.diff button{flex:1;font-size:15px;padding:4px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tile{border:3px solid transparent;background:var(--panel2);color:var(--ink);border-radius:14px;padding:8px 4px 6px;transition:transform .12s,border-color .12s}.tile:hover{transform:translateY(-3px)}.tile .em{width:54px;height:54px;margin:0 auto 4px;border-radius:50%;display:grid;place-items:center;font-size:28px;background:var(--el, #666);box-shadow:inset 0 -6px #0000002e,0 3px #0000004d}.tile.rnd .em{background:#555}.tile .nm{font-weight:800;font-size:15px;line-height:1.1}.tile .elx{font-size:12px;color:var(--muted)}.tile.sel{border-color:var(--gold);background:#33583f}.detail .dh{display:flex;gap:12px;align-items:center}.detail .big{flex:none;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;font-size:46px;background:var(--el);box-shadow:inset 0 -10px #0000002e,0 5px #00000059}.detail h3{margin:0;font-size:28px;line-height:1.1;color:var(--el)}.meta{display:flex;gap:6px;margin:2px 0}.chip{background:var(--panel2);border-radius:8px;padding:0 8px;font-size:14px;font-weight:700}.bio{margin:2px 0 0;color:var(--muted);font-size:14px;line-height:1.3}.stats{margin:10px 0;font-size:14px;display:grid;gap:2px}.sbar{display:inline-block;width:140px;height:8px;background:#0d1a12;border-radius:4px;margin:0 6px;vertical-align:middle}.sbar i{display:block;height:100%;border-radius:4px;background:var(--el)}.khac{color:var(--muted)}.skills{list-style:none;margin:0;padding:0;display:grid;gap:6px}.skills li{display:flex;gap:10px;background:var(--panel2);border-radius:12px;padding:6px 10px;font-size:14px;line-height:1.25}.skills li.ult{background:linear-gradient(90deg,#5a3d0e,var(--panel2))}.skills .si{font-size:26px}.skills span{color:var(--muted)}kbd{background:#0d1a12;border-radius:5px;padding:0 5px;font-size:12px;font-family:inherit;color:var(--gold)}small{color:var(--muted)}.go{text-align:center;margin-top:16px}#btn-start{border:0;background:linear-gradient(#ffdf7e,#f2a93b);color:#3a2205;font-weight:800;font-size:26px;padding:10px 46px;border-radius:16px;box-shadow:0 6px #9c5a12,0 10px 24px #0006}#btn-start:active{transform:translateY(4px);box-shadow:0 2px #9c5a12}@media (max-width: 980px){.cols{grid-template-columns:1fr 1fr}.mid{grid-column:1 / -1;order:3}}#stage-wrap{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0c170f}#stage-box{position:relative;width:min(100vw,177.78vh);height:min(100vh,56.25vw);container-type:inline-size}#stage{position:absolute;top:0;right:0;bottom:0;left:0}#stage canvas{display:block}#hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;font-size:1.25cqw}.hud-top{position:absolute;top:.8cqw;left:1cqw;right:1cqw;display:flex;justify-content:space-between;align-items:flex-start}.pcard{display:flex;gap:.7cqw;width:34cqw;background:#0a180eb8;border-radius:1cqw;padding:.5cqw .7cqw;border:.2cqw solid rgba(255,255,255,.08)}.pcard.right{flex-direction:row-reverse;text-align:right}.portrait{flex:none;width:5cqw;height:5cqw;border-radius:50%;background:var(--el);display:grid;place-items:center;font-size:2.7cqw;box-shadow:inset 0 -.5cqw #0003}.info{flex:1;min-width:0}.name{display:flex;gap:.5cqw;align-items:center;font-size:1.3cqw;white-space:nowrap}.pcard.right .name{flex-direction:row-reverse}.name .el{color:var(--el);font-weight:700;font-size:1.05cqw}.tag{font-size:.9cqw;font-weight:800;padding:0 .4cqw;border-radius:.3cqw;color:#08131a}.tag.t0{background:var(--t0)}.tag.t1{background:var(--t1)}.bar{position:relative;height:1.3cqw;background:#0d1a12;border-radius:.4cqw;margin-top:.25cqw;overflow:hidden}.bar i{position:absolute;top:0;bottom:0;left:0;transition:width .12s}.pcard.right .bar i{left:auto;right:0}.bar span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:.95cqw;font-weight:800;text-shadow:0 1px 2px #000}.bar.ult{height:.8cqw}.bar.ult i{background:linear-gradient(90deg,#ff9f1c,var(--gold))}.bar.ult span{font-size:.65cqw;opacity:0}.bar.ult.ready{box-shadow:0 0 .8cqw var(--gold)}.bar.ult.ready span{opacity:1;color:#3a2205;text-shadow:none}.mini{display:flex;gap:.3cqw;margin-top:.3cqw}.pcard.right .mini{justify-content:flex-end}.mini .m{position:relative;width:1.9cqw;height:1.9cqw;border-radius:.4cqw;background:var(--panel2);display:grid;place-items:center;overflow:hidden}.mini .m em{font-style:normal;font-size:1.15cqw}.mini .m s{position:absolute;left:0;right:0;bottom:0;background:#000000a6}.mini .m.ready{box-shadow:inset 0 0 0 .12cqw var(--el)}.center{text-align:center}.timer{font-size:2.2cqw;font-weight:800;background:#0a180eb8;border-radius:.8cqw;padding:0 1.2cqw}.speed{margin-top:.4cqw;display:flex;gap:.3cqw;justify-content:center;pointer-events:auto}.speed button{border:0;border-radius:.5cqw;padding:.1cqw .7cqw;font-size:1.1cqw;font-weight:800;background:#0a180ecc;color:var(--muted)}.speed button.on{background:var(--gold);color:#3a2205}.skillbar{position:absolute;bottom:1.6cqw;left:50%;transform:translate(-50%);display:flex;gap:.8cqw}.slot{position:relative;width:6cqw;height:6cqw;border-radius:1cqw;background:#0a180ed1;border:.22cqw solid rgba(255,255,255,.15);display:grid;place-items:center;overflow:hidden}.slot .ico{font-size:2.8cqw}.slot .cd{position:absolute;left:0;right:0;bottom:0;background:#000000a6}.slot .num{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.7cqw;font-weight:800;text-shadow:0 1px 3px #000}.slot .key{position:absolute;top:.15cqw;left:0;right:0;text-align:center;font-size:.75cqw;font-weight:800;color:var(--gold)}.slot .nm{position:absolute;bottom:.1cqw;left:0;right:0;text-align:center;font-size:.75cqw;font-weight:700;white-space:nowrap}.slot.ready{border-color:#ffffff8c}.slot.ult{border-color:#7a5a1a}.slot.ult.ready{border-color:var(--gold);box-shadow:0 0 1.2cqw var(--gold);animation:pulse .9s infinite alternate}@keyframes pulse{to{transform:scale(1.06)}}.hint{position:absolute;bottom:.3cqw;right:1cqw;font-size:.9cqw;color:#fff9}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#050c0899;z-index:10;padding:16px}.panel{background:var(--panel);border-radius:22px;padding:24px 30px;text-align:center;min-width:min(460px,100%);box-shadow:0 20px 60px #0009;border:2px solid rgba(255,255,255,.08)}.panel h2{margin:0 0 10px;font-size:40px;color:var(--gold)}.panel h2.lose{color:#ff8fa3}.res{display:flex;gap:16px;align-items:center;text-align:left;margin:6px 0 16px}.res .big{flex:none;width:84px;height:84px;border-radius:50%;background:var(--el);display:grid;place-items:center;font-size:42px}.t0c{color:var(--t0);font-weight:800}.t1c{color:var(--t1);font-weight:800}.btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.btns button{border:0;border-radius:12px;padding:8px 18px;font-size:18px;font-weight:800;background:var(--panel2);color:var(--ink)}.btns button:first-child{background:var(--gold);color:#3a2205}.auto{display:block;margin-top:12px;color:var(--muted);font-size:15px}.tile .em,.detail .big,.portrait,.res .big{overflow:hidden;position:relative}img.art{position:absolute;left:50%;top:6%;width:118%;transform:translate(-50%);pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.tile .em{width:70px;height:70px}.detail .big{width:120px;height:120px}.detail .big img.art,.res .big img.art{top:4%;width:105%}.tile:hover img.art{animation:hop .45s ease}@keyframes hop{40%{transform:translate(-50%) translateY(-8%)}}.team-col{display:flex;gap:.5cqw;width:42cqw}.team-col.right{justify-content:flex-end}.pcard.compact{width:auto;flex:1;min-width:0;padding:.4cqw .5cqw;gap:.5cqw}.pcard.compact .portrait{width:3.4cqw;height:3.4cqw}.pcard.compact .name{font-size:.95cqw;gap:.3cqw}.pcard.compact .name b{overflow:hidden;text-overflow:ellipsis}.pcard.compact .tag{font-size:.7cqw}.pcard.compact .bar.hp{height:1.05cqw}.pcard.compact .bar.hp span{font-size:.75cqw}.pcard.compact .bar.ult{height:.55cqw}.pcard.compact .mini .m{width:1.35cqw;height:1.35cqw}.pcard.compact .mini .m em{font-size:.8cqw}.pcard.me{border-color:var(--t0);box-shadow:0 0 .8cqw #3ee0ff73}.pcard.dead{opacity:.45;filter:grayscale(1)}.skillbar.dead{opacity:.3;filter:grayscale(1)}.score{margin-top:.3cqw;font-size:1.1cqw;font-weight:800;background:#0a180eb8;border-radius:.5cqw;padding:0 .6cqw}.sizes{display:inline-flex;gap:6px;background:var(--panel);padding:6px;border-radius:14px;margin-left:8px}.sizes button{border:0;background:transparent;color:var(--muted);font-weight:800;font-size:17px;padding:6px 14px;border-radius:10px}.sizes button.on{background:#fff;color:#1d3626}.slots{display:flex;gap:8px;margin-bottom:10px}.slotpick{flex:1;border:3px dashed rgba(255,255,255,.18);background:var(--panel2);border-radius:14px;padding:6px 4px 4px;color:var(--ink);text-align:center}.slotpick.active{border:3px solid var(--gold);background:#33583f}.slotpick .em{width:52px;height:52px;margin:0 auto 2px;border-radius:50%;display:grid;place-items:center;font-size:26px;background:var(--el, #555);overflow:hidden;position:relative}.slotpick .who{font-size:12px;font-weight:800;color:var(--muted)}.slotpick.me .who{color:#5ee36b}.lbl{font-size:13px;color:var(--muted);font-weight:700;margin:0 0 2px 2px}.res-team{display:flex;gap:8px;justify-content:center;margin:6px 0 4px}.res-team .big{flex:none;width:70px;height:70px;border-radius:50%;background:var(--el);position:relative;overflow:hidden;box-shadow:inset 0 -6px #0000002e}.res-team .big.dead{filter:grayscale(1);opacity:.5}.mvp{margin:6px 0 14px}.mvp b{color:var(--gold)}#sound-ctl{position:fixed;left:12px;bottom:12px;z-index:20;display:flex;align-items:flex-end;gap:8px}#snd-btn{width:42px;height:42px;border-radius:50%;border:0;background:#0a180ed9;font-size:20px;box-shadow:0 2px 8px #0006}#snd-panel{background:#0a180eeb;border-radius:12px;padding:8px 12px;display:grid;gap:4px;font-size:14px;font-weight:700}#snd-panel label{display:flex;align-items:center;justify-content:space-between;gap:8px}#snd-panel input{width:120px;accent-color:var(--gold)}#snd-panel small{color:var(--muted);font-weight:500}.pcard.team0{border-color:#3b9dff8c;background:linear-gradient(180deg,#143764c7,#0a180eb8)}.pcard.team1{border-color:#ff4d5e8c;background:linear-gradient(180deg,#641420c7,#0a180eb8)}.pcard.me{border-color:#5ee36b;box-shadow:0 0 .8cqw #5ee36b80}.pcard{position:relative}.flag{position:absolute;left:-.3cqw;top:-.3cqw;width:1.5cqw;height:1.5cqw;display:grid;place-items:center;font-size:.9cqw;font-weight:800;color:#fff;clip-path:polygon(0 0,100% 50%,0 100%);padding-right:.4cqw;z-index:2;text-shadow:0 1px 1px rgba(0,0,0,.5)}.pcard.right .flag{left:auto;right:-.3cqw;clip-path:polygon(100% 0,0 50%,100% 100%);padding-right:0;padding-left:.4cqw}.flag.f0{background:var(--t0)}.flag.f1{background:var(--t1)}.tag.t0,.tag.t1{color:#fff}#stage-box{width:min(100vw,177.78dvh);height:min(100dvh,56.25vw)}#stage-wrap,#touch,#stage{touch-action:none}body.touch{-webkit-touch-callout:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}body.touch button{touch-action:manipulation}#touch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}#touch>*{pointer-events:auto}.t-joyzone{position:absolute;left:0;top:22%;bottom:0;width:46%}.t-joy{position:absolute;width:124px;height:124px;margin:-62px 0 0 -62px;border-radius:50%;background:#ffffff1a;border:3px solid rgba(255,255,255,.35);pointer-events:none}.t-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:#ffffffbf;box-shadow:0 2px 8px #0006}.t-btns{position:absolute;right:calc(env(safe-area-inset-right) + 16px);bottom:calc(env(safe-area-inset-bottom) + 12px);width:214px;height:196px}.t-btn{position:absolute;border-radius:50%;border:3px solid rgba(255,255,255,.35);background:#0a180eb8;color:#fff;display:grid;place-items:center;overflow:hidden;padding:0;box-shadow:0 3px 10px #00000073}.t-btn .t-ico{font-size:28px;line-height:1;z-index:1}.t-btn .t-cd{position:absolute;left:0;right:0;bottom:0;background:#0009;z-index:2}.t-btn .t-num{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-weight:800;font-size:18px;z-index:3;text-shadow:0 1px 3px #000}.t-btn.ready{border-color:#ffffffbf}.t-btn.down{transform:scale(.92);background:#285032d9}.t-btn.aiming{border-color:#5ee36b;box-shadow:0 0 14px #5ee36b}.t-s0{right:0;bottom:0;width:88px;height:88px}.t-s0 .t-ico{font-size:38px}.t-s1{right:104px;bottom:2px;width:62px;height:62px}.t-s2{right:86px;bottom:82px;width:62px;height:62px}.t-ult{right:8px;bottom:106px;width:66px;height:66px;border-color:#7a5a1a}.t-ult.ready{border-color:var(--gold);box-shadow:0 0 16px var(--gold);animation:pulse .9s infinite alternate}.t-pause{position:absolute;left:50%;transform:translate(-50%);bottom:calc(env(safe-area-inset-bottom) + 8px);width:44px;height:44px;border-radius:50%;border:0;background:#0a180ebf;color:#fff;font-size:18px}#touch.dead .t-btns,#touch.dead .t-joyzone{opacity:.3;filter:grayscale(1);pointer-events:none}body.touch .skillbar,body.touch .hint{display:none}body.touch #stage-wrap:not([hidden])~#sound-ctl{display:none}body.touch .name{font-size:1.7cqw}body.touch .name .el{font-size:1.4cqw}body.touch .tag{font-size:1.2cqw}body.touch .bar.hp{height:1.8cqw}body.touch .bar span{font-size:1.3cqw}body.touch .timer{font-size:3cqw}body.touch .speed button{font-size:1.8cqw;padding:.2cqw 1cqw}body.touch .score{font-size:1.7cqw}body.touch .pcard.compact .name{font-size:1.35cqw}body.touch .pcard.compact .tag{display:none}body.touch .pcard.compact .bar.hp{height:1.5cqw}body.touch .pcard.compact .bar.hp span{font-size:1.1cqw}body.touch .pcard.compact .mini{display:none}body.touch .pcard.compact .portrait{width:4.2cqw;height:4.2cqw}body.touch .flag{width:2.2cqw;height:2.2cqw;font-size:1.3cqw}#rotate{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--bg);place-items:center;text-align:center;padding:24px}#rotate>div{display:grid;gap:10px}#rotate .phone{font-size:64px;animation:rot 1.6s ease-in-out infinite}#rotate b{font-size:22px;color:var(--gold)}#rotate small{color:var(--muted);font-size:14px}@keyframes rot{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media (orientation: portrait){body.touch #rotate{display:grid}}@media (max-height: 520px){.menu-wrap{padding:8px calc(env(safe-area-inset-right) + 12px) 70px calc(env(safe-area-inset-left) + 12px)}h1{font-size:26px}.sub{display:none}header{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.modes,.sizes{padding:3px;margin:0}.modes button,.sizes button{font-size:14px;padding:3px 10px}.cols{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.mid{display:none}.side{padding:8px}.side h2{font-size:16px;margin-bottom:4px}.lbl{display:none}.diff{margin-bottom:6px}.diff button{font-size:13px;padding:2px}.grid{grid-template-columns:repeat(6,1fr);gap:4px}.tile{padding:4px 2px 3px;border-width:2px;border-radius:10px}.tile .em{width:44px;height:44px;font-size:22px}.tile .nm{font-size:11px}.tile .elx{display:none}.slots{gap:4px;margin-bottom:6px}.slotpick{padding:3px 2px 2px;border-width:2px}.slotpick .em{width:36px;height:36px;font-size:18px}.slotpick .who{font-size:10px}.go{position:fixed;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 8px);margin:0;z-index:4;pointer-events:none}#btn-start{pointer-events:auto;font-size:20px;padding:6px 34px}.panel{padding:14px 18px}.panel h2{font-size:28px;margin-bottom:4px}.res-team .big,.res .big{width:54px;height:54px}.mvp{margin:4px 0 8px}.btns button{font-size:15px;padding:6px 12px}#sound-ctl{left:calc(env(safe-area-inset-left) + 8px);bottom:8px}}body.has-badge .t-btns{bottom:calc(env(safe-area-inset-bottom) + 72px)}@media (max-height: 420px){body.has-badge .t-btns{transform:scale(.86);transform-origin:bottom right}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}html,body{overscroll-behavior:none}body.touch{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%}body.touch #menu{touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body.touch #stage-wrap,body.touch #overlay{touch-action:none}body.touch #overlay .panel{touch-action:manipulation}#install-tip{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:#050c088c;padding:12px}#install-tip .card{position:relative;width:min(380px,100%);background:#fffaf0;color:#2b2112;border-radius:16px;padding:12px 16px;box-shadow:0 8px 26px #00000073;font-size:13px;line-height:1.35}#install-tip small{display:block;margin-top:6px;color:#7a6a50;font-size:11.5px}#install-tip .ok{display:block;margin:8px auto 0;border:0;border-radius:10px;padding:6px 26px;font-weight:800;font-size:15px;background:var(--gold);color:#3a2205}#install-tip b{font-size:14px}#install-tip ol{margin:6px 0 0;padding-left:18px;display:grid;gap:3px}#install-tip .ic{display:inline-flex;align-items:center;gap:3px;background:#efe4cc;border-radius:6px;padding:0 5px;font-weight:700;color:#1d6fd8}#install-tip .x{position:absolute;top:4px;right:6px;border:0;background:none;font-size:16px;color:#7a6a50;padding:4px}#fs-btn{position:fixed;z-index:20;left:calc(env(safe-area-inset-left) + 58px);bottom:12px;width:42px;height:42px;border-radius:50%;border:0;background:#0a180ed9;color:#fff;font-size:20px;box-shadow:0 2px 8px #0006}@media (max-height: 520px){#fs-btn{bottom:8px;left:calc(env(safe-area-inset-left) + 56px)}}body.touch #stage-wrap:not([hidden])~#fs-btn,body.touch #stage-wrap:not([hidden])~#install-tip{display:none}.bar i{width:100%;transform-origin:left center;transition:none;will-change:transform}.pcard.right .bar i{transform-origin:right center}.mini .m s,.slot .cd,.t-btn .t-cd{top:0;height:auto;transform-origin:center bottom;transform:scaleY(0);will-change:transform}.maps-row{margin-top:14px;background:var(--panel);border-radius:18px;padding:10px 12px 12px}.maps-title{font-weight:800;font-size:18px;margin:0 0 8px 2px}.maps-title small{font-weight:600;font-size:14px;color:var(--muted);margin-left:8px}.maps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.mapcard{border:3px solid transparent;background:var(--panel2);color:var(--ink);border-radius:12px;padding:4px 4px 6px;display:grid;gap:4px;justify-items:center;transition:transform .12s}.mapcard:hover{transform:translateY(-3px)}.mapcard img,.mapcard .ph{width:100%;aspect-ratio:16 / 9;border-radius:8px;object-fit:cover;display:block}.mapcard .ph{display:grid;place-items:center;background:#3a4a3e;font-size:34px}.mapcard span{font-size:13px;font-weight:800;line-height:1.1;text-align:center}.mapcard.sel{border-color:var(--gold);background:#33583f}.map-btn{display:none}.map-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:#050c0899;display:grid;place-items:center;padding:10px}.map-modal .card{background:var(--panel);border-radius:16px;padding:10px 12px;width:min(760px,100%);display:grid;gap:8px;text-align:center}.map-modal .close{justify-self:center;border:0;border-radius:10px;padding:5px 26px;font-weight:800;font-size:15px;background:var(--gold);color:#3a2205}@media (max-height: 520px){.maps-row{display:none}.map-btn{display:inline-block;pointer-events:auto;border:0;border-radius:14px;padding:6px 14px;margin-right:8px;font-weight:800;font-size:15px;background:var(--panel2);color:var(--ink);box-shadow:0 4px #00000059;vertical-align:middle}.map-modal .maps{grid-template-columns:repeat(3,1fr);gap:6px}.map-modal .mapcard span{font-size:11px}}#snd-panel label.saver input{width:auto;accent-color:var(--gold);transform:scale(1.3)}.online-btn{border:0;margin-left:8px;padding:8px 16px;border-radius:14px;font-weight:800;font-size:17px;background:linear-gradient(#7fd3ff,#3b9dff);color:#062033;box-shadow:0 4px #1d5e99}#online{height:100%;overflow:auto}.on-wrap{max-width:980px;margin:0 auto;padding:18px 16px 30px}.on-title{font-size:clamp(26px,4vw,40px);margin:0;color:var(--gold);text-align:center}.on-sub{text-align:center;color:var(--muted);margin:4px 0 14px}.on-card{background:var(--panel);border-radius:18px;padding:16px;max-width:460px;margin:0 auto;display:grid;gap:10px}.on-lbl{display:grid;gap:4px;font-weight:700;color:var(--muted)}.on-card input{font-family:inherit;font-size:20px;font-weight:800;padding:8px 12px;border-radius:12px;border:2px solid #3a5a46;background:#0f1e14;color:var(--ink)}.on-big{border:0;border-radius:14px;padding:12px;font-size:20px;font-weight:800;background:var(--gold);color:#3a2205}.on-big:disabled,.on-join button:disabled{opacity:.5}.on-or{text-align:center;color:var(--muted);font-weight:700}.on-join{display:grid;grid-template-columns:1fr auto;gap:8px}.on-join input{text-transform:uppercase;letter-spacing:4px;text-align:center}.on-join button{border:0;border-radius:12px;padding:0 16px;font-weight:800;font-size:17px;background:#3b9dff;color:#fff}.on-status{text-align:center;color:#ffd9a0;font-weight:700;margin:8px 0 0;word-break:break-all}.on-back{display:block;margin:14px auto 0;border:0;background:var(--panel2);color:var(--ink);border-radius:12px;padding:7px 18px;font-weight:800}.on-head{display:flex;align-items:center;gap:10px;background:var(--panel);border-radius:16px;padding:8px 14px}.on-head .on-back{margin:0 0 0 auto}.on-code-lbl{font-size:12px;color:var(--muted);font-weight:700}.on-code{font-size:30px;font-weight:800;letter-spacing:5px;color:var(--gold);line-height:1}.on-share{border:0;border-radius:12px;padding:8px 16px;font-weight:800;font-size:16px;background:#3b9dff;color:#fff}.on-teams{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;margin-top:10px;align-items:start}.on-vs{align-self:center;font-size:26px;font-weight:800;color:var(--gold)}.on-side{background:var(--panel);border-radius:16px;padding:8px;display:grid;gap:6px}.on-side.t0{box-shadow:inset 0 0 0 2px #3b9dff80}.on-side.t1{box-shadow:inset 0 0 0 2px #ff4d5e80}.on-side h3{margin:0 0 2px;font-size:16px;text-align:center}.on-slot{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;text-align:left;border:2px solid transparent;border-radius:12px;padding:5px 8px;background:var(--panel2);color:var(--ink)}.on-slot .em{grid-row:span 2;width:44px;height:44px;border-radius:50%;background:var(--el);display:grid;place-items:center;font-size:22px;overflow:hidden;position:relative}.on-slot .nm{font-weight:800;font-size:15px}.on-slot .ch{font-size:12px;color:var(--muted)}.on-slot .sit-hint{grid-column:2;font-size:11px;color:#9fd0ff}.on-slot.cpu{opacity:.8;border-style:dashed;border-color:#ffffff2e}.on-slot.cpu:hover{opacity:1;border-color:var(--gold)}.on-slot.mine{border-color:#5ee36b;box-shadow:0 0 10px #5ee36b66}.on-slot:disabled{cursor:default}.on-pick{background:var(--panel);border-radius:16px;padding:8px 10px;margin-top:10px}.on-lbl2{font-weight:800;margin-bottom:6px}.on-chars{display:grid;grid-template-columns:repeat(9,1fr);gap:6px}.on-char{border:2px solid transparent;background:var(--panel2);color:var(--ink);border-radius:10px;padding:4px 2px;display:grid;justify-items:center;gap:2px}.on-char .em{width:46px;height:46px;border-radius:50%;background:var(--el, #555);display:grid;place-items:center;font-size:22px;overflow:hidden;position:relative}.on-char span{font-size:11px;font-weight:700;line-height:1.1;text-align:center}.on-char.sel{border-color:var(--gold);background:#33583f}.on-host{background:var(--panel);border-radius:16px;padding:10px;margin-top:10px;display:grid;gap:8px}.on-host .grp{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.on-host .grp span{font-weight:800;min-width:70px;color:var(--muted)}.on-host .grp button{border:0;border-radius:10px;padding:5px 12px;font-weight:800;background:var(--panel2);color:var(--muted)}.on-host .grp button.on{background:var(--gold);color:#3a2205}.on-host .mapmini{display:flex;align-items:center;gap:4px;padding:3px 6px!important}.on-host .mapmini img{width:52px;height:29px;object-fit:cover;border-radius:5px}.on-start{border:0;border-radius:14px;padding:10px;font-size:20px;font-weight:800;background:linear-gradient(#ffdf7e,#f2a93b);color:#3a2205;box-shadow:0 5px #9c5a12}.on-note{margin:0;text-align:center;font-size:13px;color:var(--muted)}.on-guest{background:var(--panel);border-radius:16px;padding:12px;margin-top:10px;text-align:center;font-weight:700;line-height:1.6}@media (max-height: 520px),(max-width: 700px){.on-wrap{padding:8px calc(env(safe-area-inset-right) + 10px) 20px calc(env(safe-area-inset-left) + 10px)}.on-sub{font-size:13px;margin:2px 0 8px}.on-card{padding:10px;gap:6px}.on-card input{font-size:17px;padding:5px 10px}.on-big{padding:8px;font-size:17px}.on-code{font-size:22px}.on-share{padding:6px 10px;font-size:14px}.on-teams{gap:6px;margin-top:6px}.on-vs{font-size:18px}.on-slot{grid-template-columns:34px 1fr;padding:3px 6px}.on-slot .em{width:34px;height:34px}.on-slot .nm{font-size:13px}.on-slot .sit-hint{display:none}.on-chars{grid-template-columns:repeat(9,1fr);gap:3px}.on-char .em{width:36px;height:36px}.on-char span{font-size:9px}.on-host{padding:6px 8px;gap:5px}.on-host .grp span{min-width:56px;font-size:13px}.on-host .grp button{padding:3px 8px;font-size:13px}.on-host .mapmini img{width:40px;height:22px}.on-start{font-size:16px;padding:7px}.online-btn{font-size:14px;padding:3px 10px;margin:0}}body.touch.in-online #sound-ctl,body.touch.in-online #fs-btn{display:none}@media (max-height: 520px){.on-wrap.lobby{padding-top:4px}.on-head{padding:4px 10px}.on-code{font-size:20px;letter-spacing:3px}.on-code-lbl{font-size:10px}.on-side{padding:4px 6px;gap:3px}.on-side h3{font-size:13px;margin:0}.on-slot{grid-template-columns:28px 1fr;padding:2px 6px;border-radius:9px}.on-slot .em{width:28px;height:28px;font-size:15px}.on-slot .nm{font-size:12px;line-height:1.1}.on-slot .ch{font-size:10px;line-height:1.1}.on-pick{padding:4px 8px;margin-top:6px}.on-lbl2{font-size:12px;margin-bottom:3px}.on-char{padding:2px 1px}.on-char .em{width:30px;height:30px;font-size:16px}.on-char span{font-size:8.5px}.on-host,.on-guest{margin-top:6px}.on-guest{padding:6px;font-size:13px;line-height:1.4}}.ping{margin-top:.3cqw;font-size:1.1cqw;font-weight:800;background:#0a180eb8;border-radius:.5cqw;padding:0 .6cqw}body.touch .ping{font-size:1.7cqw}.res-table{margin:8px auto 12px;border-collapse:collapse;font-size:15px}.res-table td{padding:3px 8px;text-align:left}.res-table tr.t0 td:first-child{border-left:3px solid var(--t0)}.res-table tr.t1 td:first-child{border-left:3px solid var(--t1)}.res-table tr.t1:first-of-type td,.res-table tr.t0+tr.t1 td{border-top:2px solid rgba(255,255,255,.15)}.res-table .nm{font-weight:800}.res-table .ch{color:var(--muted);font-size:13px}.res-table tr.me .nm{color:#5ee36b}.res-table tr.dead{opacity:.55}@media (max-height: 520px){.res-table{font-size:12px;margin:4px auto 6px}.res-table td{padding:1px 5px}}.sl-ping{font-size:11px;font-weight:700;margin-left:4px}.sl-ping.ok{color:#7dff8a}.sl-ping.mid{color:#ffd166}.sl-ping.bad{color:#ff6b6b}.on-ready{display:block;margin:8px auto 4px;border:0;border-radius:12px;padding:8px 22px;font-weight:800;font-size:17px;background:#3b9dff;color:#fff}.on-ready.yes{background:#5ee36b;color:#0b2a12}.on-guest .wait{display:block;color:var(--muted);font-size:14px}@media (max-height: 520px){.on-ready{padding:4px 14px;font-size:14px;margin:4px auto 2px}.on-guest .wait{font-size:12px}}
