*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  color-scheme:dark;
  --bg:#090b10;--sf:#11161f;--sf1:#141b26;--sf2:#171e2a;--sf3:#202a3a;
  --bd:#293545;--bd2:#3b4b61;
  --a:#41d6c3;--a2:#ff6f8f;--a3:#f6c945;
  --tx:#edf3f7;--txd:#7d8a9d;--txm:#a7b2c0;
  --gr:#22c55e;--rd:#ef4444;--yw:#facc15;--or:#f97316;
  --p0:#41d6c3;--p1:#ff6f8f;--p2:#f6c945;
  --p0b:rgba(65,214,195,.14);--p1b:rgba(255,111,143,.14);--p2b:rgba(246,201,69,.14);
  --shadow:0 18px 50px rgba(0,0,0,.32);
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--tx);font-family:'Syne',sans-serif;min-height:100vh;overflow-x:hidden;line-height:1.42;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body::before{content:'';position:fixed;inset:0;background-image:linear-gradient(rgba(65,214,195,.035)1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025)1px,transparent 1px);background-size:44px 44px;pointer-events:none;z-index:0}
::selection{background:rgba(65,214,195,.26);color:var(--tx)}
:focus-visible{outline:2px solid var(--a);outline-offset:2px}

/* NAV */
<<<<<<< HEAD
nav{position:sticky;top:0;z-index:200;background:rgba(9,11,16,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(125,138,157,.16);display:flex;align-items:center;padding:0 18px;height:54px;gap:0;box-shadow:0 1px 0 rgba(255,255,255,.03)}
.nl{font-size:.95rem;font-weight:800;letter-spacing:0;margin-right:18px;white-space:nowrap;flex-shrink:0}
=======
nav{position:sticky;top:0;z-index:200;background:rgba(10,10,15,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--bd);display:flex;align-items:center;padding:0 18px;height:50px;gap:0}
nav{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
nav::-webkit-scrollbar{display:none}
.nl{font-size:.93rem;font-weight:800;letter-spacing:-.02em;margin-right:18px;white-space:nowrap;flex-shrink:0}
>>>>>>> c6481ed0ad627523129e35778992a56558908742
.nl span{color:var(--a)}
.nt{padding:0 13px;height:54px;display:flex;align-items:center;gap:6px;font-size:.79rem;font-weight:700;color:var(--txd);cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s,background .15s;user-select:none;white-space:nowrap}
.nt:hover{color:var(--tx);background:rgba(255,255,255,.025)}.nt.active{color:var(--a);border-bottom-color:var(--a)}
.nt svg{width:13px;height:13px;flex-shrink:0}
.nr{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}
.badge{background:var(--sf2);border:1px solid var(--bd);border-radius:7px;padding:3px 10px;font-size:.73rem;font-weight:700;font-family:'Space Mono',monospace}
.dlive{width:7px;height:7px;border-radius:50%;background:var(--gr);box-shadow:0 0 6px var(--gr);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* PAGES */
.page{display:none;flex-direction:column;min-height:calc(100vh - 54px);position:relative;z-index:1}
.page.active{display:flex}

/* JOIN */
#js{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;background:rgba(9,11,16,.98);padding:24px}
.jc{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01)),var(--sf);border:1px solid rgba(125,138,157,.2);border-radius:12px;padding:38px 44px;width:480px;max-width:100%;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.jc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--a),var(--a2),var(--a3))}
.jc h1{font-size:1.8rem;font-weight:800;letter-spacing:0;margin-bottom:4px}
.jc h1 span{background:linear-gradient(135deg,var(--a),var(--a2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.jc p{color:var(--txd);font-size:.78rem;margin-bottom:24px;font-family:'Space Mono',monospace}
.lbl{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);margin-bottom:5px}
.inp{width:100%;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:11px 13px;font-size:.91rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none;transition:border-color .2s,box-shadow .2s,background .2s;margin-bottom:16px}
.inp:focus{border-color:var(--a);box-shadow:0 0 0 3px rgba(65,214,195,.12);background:#151d29}.inp::placeholder{color:var(--txd)}
select.inp{cursor:pointer}
/* Player slot picker */
.slot-picker{display:flex;gap:8px;margin-bottom:16px}
.active-run-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 13px;border-radius:8px;border:1px solid var(--bd);background:var(--sf2);color:var(--tx);font-family:'Syne',sans-serif;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s;gap:10px}
.active-run-item:hover{border-color:var(--a);background:rgba(65,214,195,.07);transform:translateY(-1px)}
.active-run-item.matched{border-color:var(--a);background:rgba(65,214,195,.13);box-shadow:0 0 0 2px rgba(65,214,195,.22);}
.active-run-item-name{font-size:.86rem;font-weight:700;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.active-run-item-badge{display:flex;align-items:center;gap:5px;flex-shrink:0;font-size:.72rem;font-family:'Space Mono',monospace;color:var(--txd);white-space:nowrap}
.active-run-dot{width:7px;height:7px;border-radius:50%;background:var(--gr);box-shadow:0 0 5px var(--gr);flex-shrink:0}
.active-runs-empty{font-size:.75rem;color:var(--txd);font-family:'Space Mono',monospace;text-align:center;padding:12px 0}
.slot-btn{flex:1;padding:10px 6px;border-radius:8px;border:2px solid var(--bd);background:var(--sf2);color:var(--tx);font-family:'Space Mono',monospace;font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,color .15s,opacity .15s;text-align:center;line-height:1.3}
.slot-btn:hover:not(:disabled){border-color:var(--a);color:var(--a);background:var(--p0b)}
.slot-btn.selected{border-color:var(--a);background:var(--p0b);color:var(--a)}
.slot-btn:disabled{opacity:.35;cursor:not-allowed;border-color:var(--bd)}
.slot-btn .slot-icon{font-size:1.1rem;display:block;margin-bottom:2px}
.slot-btn .slot-status{font-size:.6rem;color:var(--txd);font-family:'Space Mono',monospace}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border-radius:8px;font-size:.83rem;font-weight:700;font-family:'Syne',sans-serif;cursor:pointer;border:none;transition:transform .14s,background .14s,border-color .14s,color .14s,opacity .14s;white-space:nowrap}
.btn:disabled,.btn[aria-busy="true"]{opacity:.58;cursor:wait;transform:none!important}
.btn-p{background:var(--a);color:#06211e;width:100%;box-shadow:0 10px 26px rgba(65,214,195,.18)}.btn-p:hover:not(:disabled){background:#61e0d0;transform:translateY(-1px)}
.btn-y{background:rgba(234,179,8,.12);color:#ca8a04;border-color:rgba(234,179,8,.4)}.btn-y:hover{background:rgba(234,179,8,.22)}
.btn-sm{padding:6px 11px;font-size:.74rem;border-radius:7px}
.btn-xs{padding:4px 8px;font-size:.68rem;border-radius:6px}
.btn-g{background:var(--sf2);border:1px solid var(--bd);color:var(--tx)}.btn-g:hover{border-color:var(--a);color:var(--a)}
.btn-d{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);color:var(--rd)}.btn-d:hover{background:rgba(239,68,68,.2)}
.btn-s{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);color:var(--gr)}.btn-s:hover{background:rgba(34,197,94,.2)}
.btn-w{background:rgba(250,204,21,.1);border:1px solid rgba(250,204,21,.25);color:var(--yw)}.btn-w:hover{background:rgba(250,204,21,.2)}
.btn-share{background:var(--sf2);border:1px solid var(--bd);color:var(--tx)}.btn-share:hover{border-color:var(--a);color:var(--a)}.btn-share.active{background:rgba(239,68,68,.1);border-color:var(--rd);color:var(--rd)}
.pi-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;font-size:.65rem;font-weight:800;flex-shrink:0}
.pi-0{background:var(--p0b);color:var(--p0)}.pi-1{background:var(--p1b);color:var(--p1)}.pi-2{background:var(--p2b);color:var(--p2)}
.sec-t{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid var(--bd)}

/* ── STREAM ── */
#page-stream{display:none;flex-direction:column;min-height:calc(100vh - 50px)}
#page-stream.active{display:flex}
#peer-bar{display:flex;gap:7px;padding:9px 18px;border-bottom:1px solid var(--bd);background:var(--sf);align-items:center;flex-wrap:wrap}
.pbl{font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);margin-right:3px}
.pc{display:flex;align-items:center;gap:5px;background:var(--sf2);border:1px solid var(--bd);border-radius:20px;padding:3px 10px 3px 6px;font-size:.74rem;font-weight:600}
.pc.sharing{border-color:var(--a3)}.pcd{width:6px;height:6px;border-radius:50%;background:var(--gr)}.pcd.sharing{background:var(--a3);box-shadow:0 0 5px var(--a3)}
/* normal layout: 3 equal cols */
#sg{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;padding:13px 18px 6px;flex:1}
@media(max-width:820px){#sg{grid-template-columns:1fr}}

.scol{display:flex;flex-direction:column;min-width:0}
.scol.stream-sortable{cursor:grab;user-select:none}
.scol.stream-sortable .scol-lbl{transition:color .18s ease}
.stream-dnd-enabled .scol.stream-sortable .scol-lbl{color:color-mix(in srgb,var(--txd) 72%,var(--a))}
.scol.dragging{opacity:.68;transform:scale(.985);z-index:50;cursor:grabbing}
.scol.drop-target .ss{outline:1px dashed color-mix(in srgb,var(--a) 70%,transparent);outline-offset:-4px}
.scol.stream-touch-selected .ss{outline:1px solid color-mix(in srgb,var(--a) 55%,transparent);outline-offset:-3px;box-shadow:0 0 0 1px rgba(124,106,255,.2)}
.scol-lbl{font-size:.66rem;font-weight:700;font-family:'Space Mono',monospace;color:var(--txd);padding:0 3px 4px;display:flex;align-items:center;gap:5px}
.ss{background:var(--sf);border:1px solid var(--bd);border-radius:12px 12px 0 0;overflow:hidden;aspect-ratio:16/9;position:relative;transition:border-color .3s,box-shadow .3s;width:100%;max-width:100%;align-self:stretch}
.ss.has-stream{border-color:var(--a);box-shadow:0 0 16px rgba(124,106,255,.11)}.ss.is-me{border-color:var(--a3)}
.ss video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;display:none;z-index:5}
.ssl{position:absolute;bottom:0;left:0;right:0;padding:6px 10px;background:linear-gradient(transparent,rgba(0,0,0,.85));font-size:.73rem;font-weight:700;z-index:6}
.sse{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:var(--txd);z-index:1}
.sse span{font-size:.7rem;font-family:'Space Mono',monospace;text-align:center}
.iceb{position:absolute;top:6px;left:6px;font-size:.55rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:5px;padding:2px 5px;background:rgba(0,0,0,.7);border:1px solid var(--bd);z-index:7}
.iceb.connected{border-color:var(--gr);color:var(--gr)}.iceb.relay{border-color:var(--yw);color:var(--yw)}.iceb.failed{border-color:var(--rd);color:var(--rd)}.iceb.checking{border-color:var(--a);color:var(--a)}
/* team bar */
.tbar{background:var(--sf);border:1px solid var(--bd);border-top:none;border-radius:0 0 12px 12px;padding:7px;display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.ts{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;border-radius:7px;padding:3px 2px;border:1px solid transparent;min-height:60px}
.ts.linked{border-color:rgba(124,106,255,.4);background:rgba(124,106,255,.05)}.ts.broken{border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.04)}.ts.missed{border-color:rgba(250,204,21,.3);background:rgba(250,204,21,.04)}.ts.dead .tss{filter:grayscale(1)opacity(.3)}.ts.dead .tsnm{color:var(--rd)}
.tss{width:36px;height:36px;image-rendering:pixelated}.tsmt{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:.15}
.tsnm{font-size:.56rem;font-family:'Space Mono',monospace;text-align:center;color:var(--txm);max-width:46px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ts-ld{position:absolute;top:1px;left:2px;width:5px;height:5px;border-radius:50%;background:var(--a)}.ts-ld.broken{background:var(--rd)}.ts-ld.missed{background:var(--yw)}
.ts-dd{position:absolute;top:1px;right:2px;font-size:.58rem}.ts-sh{position:absolute;bottom:14px;right:1px;font-size:.5rem}
.ts.colored {
  outline: 2px solid var(--link-color);
}
/* arena badge bar */
#badge-bar-wrap{overflow:hidden;max-height:0;transition:max-height .35s cubic-bezier(.4,0,.2,1)}
#badge-bar-wrap.open{max-height:200px}
#central-badge-bar{background:var(--sf);border-top:1px solid var(--bd);padding:14px 28px 12px;display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;justify-content:center;width:100%;box-sizing:border-box}
#badge-toggle-btn{display:none;width:100%;background:var(--sf2);border:none;border-top:1px solid var(--bd);padding:5px;font-size:.72rem;font-family:'Space Mono',monospace;color:var(--txd);cursor:pointer;transition:color .15s;letter-spacing:.04em}
#badge-toggle-btn.visible{display:block}
#badge-toggle-btn:hover{color:var(--tx)}
.player-badge-group{display:flex;flex-direction:column;gap:5px;flex:1;min-width:180px}
.player-badge-label{font-size:.66rem;font-weight:700;font-family:'Space Mono',monospace;color:var(--txd);display:flex;align-items:center;gap:5px}
.player-badge-row{display:flex;gap:4px;flex-wrap:wrap;align-items:center}
.gym-badge{width:34px;height:34px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid transparent;transition:all .2s;position:relative;user-select:none}
.gym-badge img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated}
.gym-badge.state-0{filter:grayscale(1);opacity:.25;min-height:50px;max-height:50px}
.gym-badge.state-1{filter:none;opacity:.7;animation:badge-pulse 1.2s ease-in-out infinite;min-height:50px;max-height:50px}
.gym-badge.state-2{filter:none;opacity:1;border-color:var(--yw);box-shadow:0 0 8px rgba(250,204,21,.4);min-height:50px;max-height:50px}
.lc-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;justify-content:flex-end}
.lc-inp{width:48px;font-size:.8rem;font-family:'Space Mono',monospace;background:var(--sf2);border:1px solid var(--bd);border-radius:5px;padding:4px 4px;color:var(--tx);text-align:center;outline:none;margin-bottom: 10px;}
.lc-inp:focus{border-color:var(--a)}
.lc-lbl{font-size:.55rem;font-family:'Space Mono',monospace;color:var(--yw);font-weight:700;min-height:.8rem}
@keyframes badge-pulse{0%,100%{opacity:.35}50%{opacity:.85}}
.badge-divider{width:1px;background:var(--bd);margin:0 4px;align-self:stretch;flex-shrink:0}
.gym-badge{width:32px;height:32px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1rem;position:relative;user-select:none}
.gym-badge img{width:28px;height:28px;object-fit:contain;image-rendering:pixelated}
.gym-badge.state-0{filter:grayscale(1);opacity:.3}
.gym-badge.state-1{filter:none;animation:badge-pulse 1.2s ease-in-out infinite}
.gym-badge.state-2{filter:none;opacity:1;border-color:var(--yw);box-shadow:0 0 8px rgba(250,204,21,.4)}
@keyframes badge-pulse{0%,100%{opacity:.4}50%{opacity:1}}
/* death counter bar */
.dcbar{background:var(--sf);border:1px solid var(--bd);border-top:none;border-radius:0 0 12px 12px;padding:7px 10px;display:flex;align-items:center;justify-content:center;gap:8px}
.dc-skull{font-size:1rem;line-height:1}
.dc-num{font-size:1.2rem;font-weight:800;font-family:'Space Mono',monospace;min-width:28px;text-align:center;line-height:1}
.dc-btn{background:var(--sf2);border:1px solid var(--bd);border-radius:5px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.85rem;cursor:pointer;font-weight:700;transition:all .14s;flex-shrink:0;font-family:'Space Mono',monospace;color:var(--tx)}
.dc-btn:hover{border-color:var(--a);color:var(--a)}
.dc-edit{background:none;border:none;font-size:1.2rem;font-weight:800;font-family:'Space Mono',monospace;color:var(--tx);width:36px;text-align:center;outline:none;cursor:text}
.dc-edit:focus{border-bottom:1px solid var(--a)}
#stbar{padding:6px 18px;border-top:1px solid var(--bd);background:var(--sf);font-family:'Space Mono',monospace;font-size:.64rem;color:var(--txd);display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:auto}
/* minimized layout */
/* When minimized: own col-0 shows only teambar + counter inline, peers fill the main grid */
#sg.minimized{display:flex;flex-direction:column;gap:11px}
/* Top strip: own teambar full-width + counter right */
#sg.minimized #col-0{display:flex;flex-direction:row;align-items:stretch;gap:11px;padding:0 18px;width:100%;box-sizing:border-box}
#sg #col-0 .ss{max-height:900px;opacity:1;transform:translateY(0);transition:max-height .28s ease,opacity .22s ease,transform .22s ease,border-color .22s ease}
#sg.minimized #col-0 .ss{max-height:0;opacity:0;transform:translateY(-8px);border-width:0;pointer-events:none;width:0;min-width:0;flex:0 0 0;padding:0;margin:0}
#sg.minimized #col-0 .scol-lbl{display:none}
#sg.minimized #col-0 .tbar{flex:1 1 auto;min-width:0;border-radius:12px;border:1px solid var(--bd)}
#sg.minimized #col-0 .dcbar{width:190px;flex-shrink:0;border-radius:12px;border:1px solid var(--bd);border-top:1px solid var(--bd)}
/* Peer grid below: 2 equal cols */
#sg.minimized .peers-row{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:0 18px;animation:stream-mini-in .24s ease}
#sg.minimized .peers-row.one-peer{grid-template-columns:1fr}
@media(max-width:820px){#sg.minimized .peers-row{grid-template-columns:1fr}}
/* hide peers-row in normal mode */
.peers-row{display:contents}
@keyframes stream-mini-in{from{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.min-btn{background:none;border:1px solid var(--bd);border-radius:5px;padding:2px 7px;font-size:.6rem;font-family:'Space Mono',monospace;color:var(--txd);cursor:pointer}
.min-btn:hover{border-color:var(--a);color:var(--a)}
#dbgb{background:none;border:1px solid var(--bd);border-radius:5px;padding:2px 6px;font-size:.58rem;font-family:'Space Mono',monospace;color:var(--txd);cursor:pointer}
#dbgb:hover{border-color:var(--a);color:var(--a)}
#dbgp{display:none;background:#0d0d14;border-top:1px solid var(--bd);padding:7px 18px;max-height:240px;overflow-y:auto;font-family:'Space Mono',monospace;font-size:.61rem}
#dbgp.open{display:block}
.dl{padding:1px 0}.dl.ok{color:var(--gr)}.dl.w{color:var(--yw)}.dl.e{color:var(--rd)}.dl.i{color:var(--a)}

/* ── SOULLINK ── */
.sl-layout{display:grid;grid-template-columns:1fr 310px;gap:16px;padding:16px 18px;flex:1;align-items:start}
@media(max-width:1000px){.sl-layout{grid-template-columns:1fr}}
.pb{background:var(--sf);border:1px solid var(--bd);border-radius:13px;overflow:hidden;margin-bottom:13px}
.pb-h{padding:10px 13px;border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:8px;font-weight:700;font-size:.83rem}
.pb-g{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:11px}
.es{background:var(--sf2);border:1px solid var(--bd);border-radius:9px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;transition:all .14s;position:relative;min-height:84px}
.es.team-slot-draggable{cursor:grab;user-select:none;transition:border-color .16s ease,box-shadow .16s ease,opacity .16s ease,transform .16s ease,background .16s ease}
.es.team-slot-draggable:active{cursor:grabbing}
.es.team-slot-dragging{opacity:.62;transform:scale(.992)}
.es.team-slot-drop-target{border-color:var(--a)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--a) 35%,transparent),0 0 12px rgba(124,106,255,.2)}
.es.team-slot-touch-selected{border-color:var(--a)!important;box-shadow:0 0 0 1px rgba(124,106,255,.35),0 0 10px rgba(124,106,255,.22)}
.es-tot-btn{font-size:.55rem;padding:2px 5px;border-radius:4px;border:1px solid;cursor:pointer;font-family:'Syne',sans-serif;font-weight:700;transition:all .14s;margin-top:1px;width:100%;text-align:center}
.es-tot-btn.alive{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:var(--rd)}.es-tot-btn.alive:hover{background:rgba(239,68,68,.2)}
.es-tot-btn.dead{background:rgba(34,197,94,.08);border-color:rgba(34,197,94,.3);color:var(--gr)}.es-tot-btn.dead:hover{background:rgba(34,197,94,.2)}
.es-evo-btn{font-size:.55rem;padding:2px 5px;border-radius:4px;border:1px solid rgba(139,92,246,.4);cursor:pointer;font-family:'Syne',sans-serif;font-weight:700;transition:all .14s;margin-top:1px;width:100%;text-align:center;background:rgba(139,92,246,.08);color:var(--a)}.es-evo-btn:hover{background:rgba(139,92,246,.22)}
.es:hover{border-color:var(--a);background:var(--sf3)}.es.ep{border-color:var(--bd2)}.es.esh{border-color:var(--yw)!important;box-shadow:0 0 6px rgba(250,204,21,.1)}.es.ed .esr{filter:grayscale(1)opacity(.3)}.es.el{outline:2px solid rgba(124,106,255,.3)}.es.ebr{outline:2px solid rgba(239,68,68,.35)}.es.em{border-color:rgba(250,204,21,.4)!important;background:rgba(250,204,21,.04)}
.esr{width:50px;height:50px;image-rendering:pixelated}.ese{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;opacity:.11}
.esnm{font-size:.58rem;font-family:'Space Mono',monospace;color:var(--txm);text-align:center;max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.esn{position:absolute;top:3px;left:5px;font-size:.54rem;font-family:'Space Mono',monospace;color:var(--txd);font-weight:700}
.essh{position:absolute;top:2px;right:3px;font-size:.62rem}.esdd{position:absolute;bottom:2px;right:3px;font-size:.62rem}
.esld{position:absolute;top:2px;right:14px;width:5px;height:5px;border-radius:50%;background:var(--a)}.esld.broken{background:var(--rd)}.esld.missed{background:var(--yw)}
.es-acts{display:flex;gap:3px;flex-wrap:wrap;justify-content:center;padding:3px 10px 7px}
.es.elc {
  outline: 2px solid var(--link-color);
  transition: all 0.15s ease;
}

/* ── BOX ── */
.box-layout{display:grid;grid-template-columns:155px 1fr;flex:1;min-height:0}
.graveyard-title{display:flex;align-items:center;gap:8px;padding:12px 0 8px;cursor:pointer;user-select:none;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--txd)}
.graveyard-title:hover{color:var(--tx)}
.graveyard-title .gy-count{background:var(--sf2);border:1px solid var(--bd);border-radius:10px;padding:1px 8px;font-size:.65rem;font-family:'Space Mono',monospace}
.graveyard-body{display:flex;flex-direction:column;gap:6px}
.graveyard-body.collapsed{display:none}
.dead-link-row{display:flex;align-items:center;gap:8px;background:var(--sf);border:1px solid var(--bd);border-radius:10px;padding:8px 12px;flex-wrap:wrap}
.dead-link-sprites{display:flex;align-items:center;gap:4px;flex:1}
.dead-link-sprite{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}
.dead-link-sprite img{width:40px;height:40px;image-rendering:pixelated}
.dead-link-sprite img.culprit{filter:drop-shadow(0 0 4px var(--rd));outline:2px solid var(--rd);border-radius:4px}
.dead-link-sprite .dls-name{font-size:.55rem;font-family:'Space Mono',monospace;color:var(--txd);max-width:48px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dead-link-sprite .dls-player{font-size:.55rem;font-weight:700;max-width:48px;text-align:center;white-space:nowrap}
.dead-link-chain{color:var(--txd);font-size:.9rem;flex-shrink:0}
.dead-link-cause{font-size:.65rem;font-family:'Space Mono',monospace;color:var(--rd);flex-basis:100%;padding-top:4px;border-top:1px solid var(--bd)}
@media(max-width:650px){.box-layout{grid-template-columns:1fr}}
.box-sb{border-right:1px solid var(--bd);background:var(--sf);padding:12px 10px;overflow-y:auto}
.box-sb-t{font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);margin-bottom:8px}
.box-ps{margin-bottom:10px}
.box-pl{font-size:.7rem;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:4px}
.boxt{padding:6px 9px;border-radius:7px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .14s;border:1px solid transparent;color:var(--txd);display:flex;justify-content:space-between;align-items:center}
.boxt:hover{background:var(--sf2);color:var(--tx)}.boxt.active{background:var(--sf2);border-color:var(--bd);color:var(--tx)}
.boxt span{font-size:.62rem;color:var(--txd);font-family:'Space Mono',monospace}
.box-main{padding:14px 18px;overflow-y:auto}
.box-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;flex-wrap:wrap;gap:7px}
.box-ttl{font-size:.95rem;font-weight:800}.box-sub{font-size:.7rem;color:var(--txd);font-family:'Space Mono',monospace;margin-top:2px}
.box-actions{display:flex;gap:7px;flex-wrap:wrap}
.bgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
@media(max-width:480px){.bgrid{grid-template-columns:repeat(5,1fr)}}
.bs{background:var(--sf);border:1px solid var(--bd);border-radius:8px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;min-height:76px;cursor:pointer;transition:all .14s}
.bs.box-slot-draggable{cursor:grab;user-select:none;transition:border-color .16s ease,box-shadow .16s ease,opacity .16s ease,transform .16s ease,background .16s ease}
.bs.box-slot-draggable:active{cursor:grabbing}
.bs.box-slot-dragging{opacity:.62;transform:scale(.992)}
.bs.box-slot-drop-target{border-color:var(--a)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--a) 35%,transparent),0 0 12px rgba(124,106,255,.2)}
.bs.box-slot-touch-selected{border-color:var(--a)!important;box-shadow:0 0 0 1px rgba(124,106,255,.35),0 0 10px rgba(124,106,255,.22)}
.bs:hover{border-color:var(--a);background:var(--sf2)}.bs.bp{border-color:var(--bd2)}.bs.bsh{border-color:var(--yw)!important}.bs.bd .bspr{filter:grayscale(1)opacity(.3)}.bs.bl{outline:2px solid rgba(124,106,255,.28)}.bs.bbr{outline:2px solid rgba(239,68,68,.32)}.bs.bm{border-color:rgba(250,204,21,.35)!important}.bs.bm-initiator{border-color:rgba(250,204,21,.85)!important;background:rgba(250,204,21,.1);box-shadow:0 0 7px rgba(250,204,21,.2)}
.bspr{width:44px;height:44px;image-rendering:pixelated}.bsmt{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;opacity:.1}
.bsnm{font-size:.55rem;font-family:'Space Mono',monospace;text-align:center;color:var(--txm);max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bsn{position:absolute;top:2px;left:3px;font-size:.52rem;font-family:'Space Mono',monospace;color:var(--txd);font-weight:700}
.bssh{position:absolute;top:1px;right:2px;font-size:.58rem}.bsdd{position:absolute;bottom:1px;right:2px;font-size:.58rem}
.bsld{position:absolute;top:1px;right:11px;width:5px;height:5px;border-radius:50%;background:var(--a)}.bsld.broken{background:var(--rd)}.bsld.missed{background:var(--yw)}

/* ── ROUTES ── */
.rt-layout{display:flex;flex-direction:column;flex:1;overflow:hidden}
.rt-toolbar{display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--bd);background:var(--sf);flex-wrap:wrap}
.rt-counters{display:flex;gap:7px;align-items:center;margin-left:auto;flex-wrap:wrap}
.rt-counter{font-size:.68rem;font-family:'Space Mono',monospace;padding:3px 9px;border-radius:6px;border:1px solid;font-weight:700}
.rt-counter.open{background:rgba(100,100,120,.1);border-color:var(--bd);color:var(--txd)}
.rt-counter.partial{background:rgba(251,146,60,.1);border-color:rgba(251,146,60,.3);color:var(--or)}
.rt-counter.done{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.3);color:var(--gr)}
.rt-lang-sel{background:var(--sf2);border:1px solid var(--bd);border-radius:7px;padding:5px 9px;font-size:.75rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none;cursor:pointer}
.rt-lang-sel:focus{border-color:var(--a)}
.rt-toolbar label{font-size:.72rem;color:var(--txd);font-weight:700;font-family:'Space Mono',monospace}
.rt-toolbar select{background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:7px 12px;font-size:.82rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none;cursor:pointer;min-width:200px}
.rt-toolbar select:focus{border-color:var(--a)}
.rt-loading{font-size:.78rem;color:var(--txd);font-family:'Space Mono',monospace}
.rt-list{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:10px}
.rt-card{background:var(--sf);border:1px solid var(--bd);border-radius:13px;overflow:hidden;transition:border-color .2s}
.rt-card.locked{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.03)}
.rt-card.linked{border-color:rgba(124,106,255,.4);background:rgba(124,106,255,.03)}
.rt-card-h{padding:11px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none}
.rt-card-h:hover{background:rgba(255,255,255,.02)}
.rt-name{font-weight:700;font-size:.85rem;flex:1;text-transform:capitalize}
.rt-status{font-size:.65rem;font-family:'Space Mono',monospace;padding:2px 8px;border-radius:5px}
.rt-status.open{background:rgba(34,197,94,.1);color:var(--gr);border:1px solid rgba(34,197,94,.25)}
.rt-status.locked{background:rgba(239,68,68,.1);color:var(--rd);border:1px solid rgba(239,68,68,.25)}
.rt-status.linked{background:rgba(124,106,255,.12);color:var(--a);border:1px solid rgba(124,106,255,.3)}
.rt-toggle{font-size:.75rem;color:var(--txd);flex-shrink:0}
.rt-body{display:none;padding:12px 14px;border-top:1px solid var(--bd);display:none;gap:10px}
.rt-body.open{display:flex;flex-wrap:wrap}
.rt-player{flex:1;min-width:140px;display:flex;flex-direction:column;gap:7px}
.rt-player-lbl{font-size:.7rem;font-weight:700;display:flex;align-items:center;gap:5px}
.rt-slot{background:var(--sf2);border:1px solid var(--bd);border-radius:10px;padding:9px;display:flex;align-items:center;gap:9px;cursor:pointer;transition:all .14s;position:relative}
.rt-slot:hover{border-color:var(--a)}.rt-slot.caught{border-color:rgba(34,197,94,.4);background:rgba(34,197,94,.05)}.rt-slot.missed{border-color:rgba(250,204,21,.4);background:rgba(250,204,21,.05)}.rt-slot.missed-initiator{border-color:rgba(250,204,21,.85);background:rgba(250,204,21,.12);box-shadow:0 0 8px rgba(250,204,21,.25)}.rt-slot.dead{border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.05)}
.rt-slot img{width:44px;height:44px;image-rendering:pixelated;flex-shrink:0}
.rt-slot-empty{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;opacity:.15;flex-shrink:0}
.rt-slot-info{flex:1;min-width:0}
.rt-slot-name{font-size:.78rem;font-weight:700;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rt-slot-nick{font-size:.66rem;font-family:'Space Mono',monospace;color:var(--txd)}
.rt-slot-status{font-size:.62rem;font-family:'Space Mono',monospace}
.rt-slot-status.caught{color:var(--gr)}.rt-slot-status.missed{color:var(--yw)}.rt-slot-status.dead{color:var(--rd)}
.rt-slot-acts{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}
.empty-state{text-align:center;padding:32px 0;color:var(--txd);font-size:.77rem;font-family:'Space Mono',monospace}

/* LINK PANEL */
.lp{display:flex;flex-direction:column;gap:12px}
.lb{background:var(--sf);border:1px solid var(--bd);border-radius:13px;padding:13px}
.lb-t{font-size:.83rem;font-weight:700;margin-bottom:10px}
.lb-row{display:flex;align-items:center;gap:7px;margin-bottom:6px}
.lb-lbl{font-size:.68rem;font-weight:700;width:62px;flex-shrink:0;font-family:'Space Mono',monospace}
.lb-sel{flex:1;background:var(--sf2);border:1px solid var(--bd);border-radius:7px;padding:6px 8px;font-size:.76rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none;cursor:pointer}
.lb-sel:focus{border-color:var(--a)}
.ll{display:flex;flex-direction:column;gap:6px}
.li{background:var(--sf);border:1px solid var(--bd);border-radius:11px;padding:9px 11px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.li.broken{border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.03)}.li.route-link{border-color:rgba(106,255,204,.25)}
.li.li-draggable{cursor:grab;transition:border-color .16s ease,box-shadow .16s ease,opacity .16s ease,transform .16s ease}
.li.li-draggable:active{cursor:grabbing}
.li.dragging-link{opacity:.6;transform:scale(.992)}
.li.link-drop-target{border-color:var(--a);box-shadow:0 0 0 1px color-mix(in srgb,var(--a) 35%,transparent),0 0 12px rgba(124,106,255,.2)}
.li.link-touch-selected{border-color:var(--a);box-shadow:0 0 0 1px rgba(124,106,255,.35),0 0 10px rgba(124,106,255,.22)}
.lspr{display:flex;align-items:center;gap:2px;flex:1;flex-wrap:wrap}
.lse{display:flex;flex-direction:column;align-items:center;gap:3px}.lse img{width:64px;height:64px;image-rendering:pixelated}.lse.dead img{filter:grayscale(1)opacity(.35)}
.lse span{font-size:.65rem;font-family:'Space Mono',monospace;color:var(--txd);text-transform:capitalize;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lch{color:var(--txd);font-size:.72rem;padding:0 1px}
.lbadge{font-size:.58rem;padding:2px 6px;border-radius:4px;border:1px solid}
.lbadge.broken{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:var(--rd)}.lbadge.shiny{background:rgba(250,204,21,.08);border-color:rgba(250,204,21,.2);color:var(--yw)}.lbadge.route{background:rgba(106,255,204,.08);border-color:rgba(106,255,204,.2);color:var(--a3)}
/* link categories */
.ll-section-title{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);padding:10px 0 6px;border-bottom:1px solid var(--bd);margin-bottom:6px;display:flex;align-items:center;gap:6px}
.ll-section-title:first-child{padding-top:0}
.ll-section-title .ll-count{background:var(--sf2);border:1px solid var(--bd);border-radius:10px;padding:1px 7px;font-size:.6rem;font-family:'Space Mono',monospace}
.ll-section-body{display:flex;flex-direction:column;gap:6px;min-height:24px;border-radius:8px;padding:1px}
.ll-section-body.link-section-drop-target{outline:1px dashed color-mix(in srgb,var(--a) 70%,transparent);outline-offset:2px;background:rgba(124,106,255,.05)}
.li{flex-wrap:wrap}
/* shiny swap */
.shiny-swap-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px;width:100%;align-items:center}
.shiny-swap-lbl{font-size:.62rem;color:var(--yw);font-family:'Space Mono',monospace;flex-shrink:0}
.shiny-swap-btn{background:rgba(250,204,21,.08);border:1px solid rgba(250,204,21,.25);color:var(--yw);border-radius:6px;padding:3px 8px;font-size:.65rem;cursor:pointer;font-family:'Syne',sans-serif;font-weight:600;transition:all .14s;display:flex;align-items:center;gap:4px}
.shiny-swap-btn:hover{background:rgba(250,204,21,.18)}
.shiny-swap-btn img{width:24px;height:24px;image-rendering:pixelated}
/* link → team move */
.li-team-btn{margin-top:5px;width:100%}
.lm-team-row{display:flex;align-items:center;gap:7px;margin-bottom:6px;flex-wrap:wrap}
.lm-team-row-lbl{font-size:.68rem;font-weight:700;font-family:'Space Mono',monospace;width:70px;flex-shrink:0}
/* search bar */
.rt-search{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--sf);border-bottom:1px solid var(--bd);flex-wrap:wrap}
.rt-search input{flex:1;min-width:160px;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:8px 12px;font-size:.82rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none}
.rt-search input:focus{border-color:var(--a)}
.rt-search-res{background:var(--sf);border:1px solid var(--bd);border-radius:11px;padding:12px 14px;display:none}
.rt-search-res.show{display:block}
.rt-sr-grid{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.rt-sr-card{background:var(--sf2);border:1px solid var(--bd);border-radius:9px;padding:8px 12px;display:flex;align-items:center;gap:8px;min-width:160px}
.rt-sr-card img{width:40px;height:40px;image-rendering:pixelated;flex-shrink:0}
.rt-sr-status{font-size:.68rem;font-family:'Space Mono',monospace;margin-top:2px}
.rt-sr-status.open{color:var(--gr)}.rt-sr-status.missed{color:var(--yw)}.rt-sr-status.caught{color:var(--txd)}.rt-sr-status.dead{color:var(--rd)}.rt-sr-status.locked{color:var(--or)}
/* route slot simplification */
.rt-slot-acts-simple{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}

/* MODALS */
.modal-bg{position:fixed;inset:0;z-index:600;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}
.modal-bg.open{display:flex}
.modal{background:var(--sf);border:1px solid var(--bd);border-radius:17px;padding:22px;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:11px}
.modal::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--a),var(--a2))}
.modal-t{font-size:.93rem;font-weight:800}
.picker-modal{width:460px;max-height:84vh}
.move-modal{width:390px}
.link-move-modal{width:420px}
.pr-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;overflow-y:auto;max-height:240px;padding:1px}
.pr{display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 3px;border-radius:7px;cursor:pointer;border:1px solid transparent;transition:all .12s}
.pr:hover{background:var(--sf2);border-color:var(--bd)}.pr.sel{background:rgba(124,106,255,.14);border-color:var(--a)}
.pr img{width:48px;height:48px;image-rendering:pixelated}.pr span{font-size:.54rem;font-family:'Space Mono',monospace;text-align:center;color:var(--txm);text-transform:capitalize}
.pp{display:flex;align-items:center;gap:10px;background:var(--sf2);border-radius:9px;padding:8px 11px;min-height:62px}
.pp img{width:50px;height:50px;image-rendering:pixelated}
.pp-n{font-weight:700;font-size:.9rem;text-transform:capitalize}.pp-ni{font-size:.72rem;color:var(--txd);font-family:'Space Mono',monospace}
.pp-fl{display:flex;gap:4px;margin-top:3px}.ppf{font-size:.62rem;padding:1px 5px;border-radius:4px;background:var(--sf3);border:1px solid var(--bd)}
.ppf.sh{border-color:var(--yw);color:var(--yw)}.ppf.dd{border-color:var(--rd);color:var(--rd)}.ppf.ms{border-color:var(--yw);color:var(--yw)}
.pnick{width:100%;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font-size:.83rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none}
.pnick:focus{border-color:var(--a)}
.popts{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.popt{display:flex;align-items:center;gap:5px;font-size:.78rem;cursor:pointer;user-select:none}
.popt input{accent-color:var(--a);width:13px;height:13px}
.mac{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}
.msel{width:100%;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font-size:.82rem;font-family:'Syne',sans-serif;color:var(--tx);outline:none;cursor:pointer;margin-bottom:8px}
.msel:focus{border-color:var(--a)}
.mrow{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.mrow-lbl{font-size:.7rem;color:var(--txd);font-family:'Space Mono',monospace;width:80px;flex-shrink:0}

/* ── LINK→TEAM MODAL SLOT GRID ── */
.lt-player-section{margin-bottom:14px}
.lt-player-lbl{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:6px}
.lt-slots-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.lt-slot-btn{padding:6px 4px;border-radius:8px;border:2px solid var(--bd);background:var(--sf2);cursor:pointer;transition:all .14s;text-align:center;font-size:.62rem;font-family:'Space Mono',monospace;color:var(--txd);line-height:1.3;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.lt-slot-btn:hover:not(:disabled){border-color:var(--a);background:var(--p0b)}
.lt-slot-btn.selected{border-color:var(--a);background:var(--p0b);color:var(--tx)}
.lt-slot-btn .lt-slot-sprite{width:32px;height:32px;image-rendering:pixelated}
.lt-slot-btn .lt-slot-num{font-size:.58rem;color:var(--txd)}
.lt-slot-btn .lt-slot-name{font-size:.6rem;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:48px}
.lt-slot-btn.will-replace{border-color:var(--yw)!important;background:rgba(250,204,21,.06)!important}
.lt-slot-btn.will-replace .lt-slot-num{color:var(--yw)}

/* ── MAP TAB ── */
.map-layout{display:grid;grid-template-columns:200px 1fr;flex:1;min-height:0;overflow:hidden}
.map-sidebar{border-right:1px solid var(--bd);background:var(--sf);display:flex;flex-direction:column;overflow:hidden}
.map-sidebar-t{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);padding:10px 10px 6px;flex-shrink:0}
.map-sidebar-edition{font-size:.7rem;font-weight:700;color:var(--a);padding:0 10px 8px;font-family:'Space Mono',monospace;border-bottom:1px solid var(--bd);flex-shrink:0;min-height:20px}
.map-mode-toggle-host{position:absolute;top:10px;right:12px;z-index:12}
.map-mode-toggle{display:flex;gap:4px;padding:6px;background:rgba(10,10,15,.78);border:1px solid var(--bd);border-radius:10px;backdrop-filter:blur(6px)}
.map-mode-btn{flex:1;border:1px solid var(--bd);background:var(--sf2);color:var(--txd);border-radius:8px;padding:8px 10px;font-size:.68rem;font-weight:700;font-family:'Syne',sans-serif;cursor:pointer;transition:all .14s}
.map-mode-btn:hover{border-color:var(--a);color:var(--tx)}
.map-mode-btn.active{background:var(--a);border-color:var(--a);color:#fff}
.map-mode-note{padding:12px 10px;color:var(--txd);font-size:.72rem;font-family:'Space Mono',monospace;line-height:1.45}
.map-thumb-list{overflow-y:auto;flex:1;padding:6px}
.map-thumb{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:all .14s;margin-bottom:3px}
.map-thumb:hover{background:var(--sf2);border-color:var(--bd)}
.map-thumb.active{background:var(--p0b);border-color:var(--a)}
.map-thumb-img{width:44px;height:32px;object-fit:cover;border-radius:4px;flex-shrink:0;background:var(--sf2);border:1px solid var(--bd)}
.map-thumb-name{font-size:.68rem;font-weight:600;color:var(--tx);line-height:1.3;word-break:break-word}
.map-viewer{flex:1;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column;background:#0a0a0f}
.map-img-wrap{flex:1;overflow:hidden;position:relative;cursor:grab;user-select:none;display:flex;align-items:center;justify-content:center}
.map-img-wrap:active{cursor:grabbing}
.map-embed-wrap{flex:1;position:relative;background:#fff}
.map-embed-frame{width:100%;height:100%;border:0;background:#fff}
.map-viewer-controls{position:absolute;bottom:12px;right:12px;z-index:10;display:flex;gap:6px}
.map-viewer-btn{background:var(--sf);border:1px solid var(--bd);border-radius:6px;padding:5px 10px;font-size:.7rem;font-family:'Syne',sans-serif;color:var(--tx);cursor:pointer;transition:all .14s}
.map-viewer-btn:hover{background:var(--sf2)}
.map-viewer-title{position:absolute;top:10px;left:12px;z-index:10;font-size:.72rem;font-weight:700;color:var(--txd);font-family:'Space Mono',monospace;background:rgba(10,10,15,.7);padding:4px 10px;border-radius:6px;pointer-events:none}
@media(max-width:650px){.map-layout{grid-template-columns:1fr}.map-sidebar{display:none}}

/* ── BATTLE TAB ── */
.bt-layout{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:16px 20px;gap:20px}
.bt-section-title{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txd);margin-bottom:10px;padding-bottom:7px;border-bottom:1px solid var(--bd)}
.bt-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:7px;border-bottom:1px solid var(--bd)}
.bt-section-header .bt-section-title{margin-bottom:0;padding-bottom:0;border-bottom:none}
.bt-scope-toggle{display:flex;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;overflow:hidden;gap:0}
.bt-scope-btn{padding:5px 12px;font-size:.7rem;font-weight:700;font-family:'Syne',sans-serif;border:none;background:transparent;color:var(--txd);cursor:pointer;transition:all .15s;white-space:nowrap}
.bt-scope-btn.active{background:var(--a);color:#fff}
.bt-player-block{background:var(--sf);border:1px solid var(--bd);border-radius:13px;overflow:hidden;margin-bottom:12px}
.bt-player-header{padding:10px 14px;border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:8px;font-weight:700;font-size:.85rem;cursor:pointer;user-select:none}
.bt-player-header:hover{background:rgba(255,255,255,.02)}
.bt-player-body{}
.bt-player-body.collapsed{display:none}
.bt-collapse-icon{margin-left:auto;color:var(--txd);font-size:.75rem;transition:transform .2s}
.bt-collapse-icon.open{transform:rotate(180deg)}
.bt-coverage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:7px;padding:12px}
.bt-type-row{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:var(--sf2);border:1px solid var(--bd)}
.bt-type-icon{font-size:.8rem;width:22px;text-align:center;flex-shrink:0}
.bt-type-name{font-size:.72rem;font-weight:700;min-width:60px;text-transform:capitalize}
.bt-eff-badge{font-size:.65rem;font-weight:700;padding:2px 7px;border-radius:5px;font-family:'Space Mono',monospace;margin-left:auto;flex-shrink:0}
.eff-immune{background:rgba(100,100,120,.2);color:var(--txd);border:1px solid var(--bd)}
.eff-025{background:rgba(20,83,45,.6);color:#86efac;border:1px solid rgba(20,83,45,.9);font-weight:800}
.eff-05{background:rgba(57,255,20,.12);color:#39ff14;border:1px solid rgba(57,255,20,.5);font-weight:700}
.eff-1{background:transparent;color:var(--txd);border:1px solid transparent;display:none}
.eff-2{background:rgba(251,146,60,.12);color:var(--or);border:1px solid rgba(251,146,60,.3)}
.eff-1{background:rgba(148,163,184,.08);color:var(--txd);border:1px solid rgba(148,163,184,.2)}
.eff-4{background:rgba(239,68,68,.15);color:var(--rd);border:1px solid rgba(239,68,68,.35)}
/* type table */
.bt-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--bd);background:var(--sf)}
.type-table{border-collapse:collapse;font-size:.6rem;font-family:'Space Mono',monospace;width:100%}
.type-table th,.type-table td{border:1px solid var(--bd);padding:4px 5px;text-align:center;white-space:nowrap;transition:background .1s}
.type-table th{background:var(--sf2);font-weight:700;position:sticky}
.type-table .th-row{top:0;z-index:2}
.type-table .th-col{left:0;z-index:3}
.type-table .corner{top:0;left:0;z-index:4;background:var(--sf2)}
.type-table td.immune{background:rgba(30,30,40,.8);color:var(--txd)}
.type-table td.quarter{background:rgba(34,197,94,.18);color:#15803d;font-weight:700}
.type-table td.half{background:rgba(34,197,94,.1);color:var(--gr);font-weight:700}
.type-table td.normal{background:transparent}
.type-table td.double{background:rgba(251,146,60,.15);color:var(--or);font-weight:700}
.type-table td.quad{background:rgba(239,68,68,.2);color:var(--rd);font-weight:700}
/* hover highlight */
.type-table tr:hover td,.type-table tr:hover th{background:rgba(124,106,255,.08)!important}
.type-table td.col-hover,.type-table th.col-hover{background:rgba(124,106,255,.08)!important}
.type-table tr.row-hover td,.type-table tr.row-hover th{background:rgba(124,106,255,.08)!important}
/* ── RUN HISTORY TAB ── */
#rh-list{display:flex;flex-direction:column;gap:12px}
.rh-run{border:1px solid var(--bd);border-radius:13px;background:var(--sf);overflow:hidden}
.rh-run-h{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--bd);background:var(--sf2);font-size:.74rem;font-family:'Space Mono',monospace;color:var(--txd);cursor:pointer;user-select:none}
.rh-run-h:hover{background:rgba(124,106,255,.08)}
.rh-run-h b{font-family:'Syne',sans-serif;color:var(--tx);font-size:.88rem}
.rh-events{padding:12px 12px 14px;display:flex;flex-direction:column;gap:0}
.rh-events.collapsed{display:none}
.rh-toggle{margin-left:auto;font-size:.84rem;color:var(--txd)}
.rh-evt{display:flex;flex-direction:column;gap:0;padding:0;position:relative}
.rh-evt-inner{display:grid;grid-template-columns:74px 26px 1fr;gap:10px;align-items:stretch;padding:9px 0;height:100%;--rh-evt-pad-y:9px}
.rh-time{font-size:.67rem;font-family:'Space Mono',monospace;color:var(--a);font-weight:700;padding-top:3px}
.rh-node{position:relative;min-height:22px;align-self:stretch;height:100%}
.rh-line{position:absolute;left:50%;transform:translateX(-50%);top:calc(-1*var(--rh-evt-pad-y));bottom:calc(-1*var(--rh-evt-pad-y));width:2px;background:rgba(148,163,184,.28)}
.rh-evt:first-child .rh-line{top:50%}
.rh-evt:last-child .rh-line{bottom:50%}
.rh-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:22px;height:22px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.72rem;border:1px solid var(--bd);background:var(--sf2)}
.rh-type-catch{background:rgba(106,255,204,.14);border-color:rgba(106,255,204,.45)}
.rh-type-link{background:rgba(124,106,255,.14);border-color:rgba(124,106,255,.45)}
.rh-type-fail{background:rgba(239,68,68,.14);border-color:rgba(239,68,68,.45)}
.rh-type-gym{background:rgba(250,204,21,.12);border-color:rgba(250,204,21,.45)}
.rh-type-death{background:rgba(239,68,68,.14);border-color:rgba(239,68,68,.45)}
.rh-type-run{background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.45)}
.rh-text{font-size:.79rem;color:var(--tx);line-height:1.45;background:var(--sf2);border:1px solid var(--bd);border-radius:9px;padding:7px 9px}
.rh-snapshots{display:flex;gap:6px;flex-direction:column;font-size:.7rem;background:var(--sf3);border:1px solid var(--bd2);border-radius:7px;padding:5px 7px;margin-top:4px}
.rh-snap-toggle{cursor:pointer;user-select:none;font-weight:600;color:var(--a);font-size:.62rem;letter-spacing:.05em;font-family:'Space Mono',monospace;padding:2px 4px;transition:all .15s;display:inline-block}
.rh-snap-toggle:hover{color:var(--a2)}
.rh-snap-content{display:flex;gap:10px;flex-direction:column}
.rh-snap-section{display:flex;flex-direction:column;gap:5px;}
.rh-snap-title{font-weight:700;color:var(--txd);font-family:'Space Mono',monospace;font-size:.58rem;letter-spacing:.05em;text-transform:uppercase}
.rh-snap-row{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start}
.rh-snap-player-col{display:flex;flex-direction:column;gap:3px;align-items:center;padding-right:50px}
.rh-snap-player-label{font-size:.6rem;font-weight:700;color:var(--tx);text-align:center;min-width:52px}
.rh-team-snapshot{display:flex;gap:2px;flex-wrap:nowrap;align-items:flex-start}
.rh-snap-slot{display:flex;flex-direction:column;align-items:center;gap:2px;padding:2px;background:var(--sf2);border:1px solid var(--bd);border-radius:4px;min-width:50px;flex-shrink:0;min-height:50px;max-height:50px}
.rh-snap-sprite{width:30px;height:30px;image-rendering:pixelated;object-fit:contain}
.rh-snap-name{font-size:.52rem;text-align:center;color:var(--tx);width:44px;overflow:hidden;text-overflow:ellipsis;line-height:1;white-space:nowrap}
.rh-snap-slot-empty{background:var(--sf2);border:1px solid var(--bd);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.rh-empty{font-size:.74rem;color:var(--txd);font-family:'Space Mono',monospace;padding:12px;text-align:center;border:1px dashed var(--bd);border-radius:10px}
/* ── RULES TAB ── */
.rl-wrap{display:grid;grid-template-columns:1fr 290px;gap:12px;flex:1;min-height:0;padding:14px 18px;overflow:hidden}
.rl-main,.rl-side{border:1px solid var(--bd);border-radius:12px;background:var(--sf);display:flex;flex-direction:column;min-height:0}
.rl-head{display:flex;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--bd);flex-wrap:wrap}
.rl-title{font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--txd)}
.rl-inp{flex:1;min-width:160px;background:var(--sf2);border:1px solid var(--bd);border-radius:8px;padding:7px 10px;font-size:.78rem;color:var(--tx)}
.rl-editors{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;flex:1;min-height:0}
.rl-editor-col{border:1px solid var(--bd);border-radius:10px;background:var(--sf2);display:flex;flex-direction:column;min-height:0}
.rl-editor-label{padding:8px 10px;border-bottom:1px solid var(--bd);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--txd)}
.rl-ta{flex:1;min-height:320px;background:transparent;border:none;outline:none;color:var(--tx);font-family:'Space Mono',monospace;font-size:.78rem;line-height:1.55;padding:10px;resize:none}
.rl-side-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}
.rl-item{border:1px solid var(--bd);border-radius:8px;padding:8px 9px;background:var(--sf2);cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.rl-item.active{border-color:var(--a);background:rgba(124,106,255,.1)}
.rl-item-main{min-width:0;flex:1}
.rl-item-name{font-size:.77rem;font-weight:700;color:var(--tx)}
.rl-item-meta{font-size:.62rem;color:var(--txd);font-family:'Space Mono',monospace;margin-top:2px}
.rl-item-del{padding:3px 7px;border-radius:6px;border:1px solid rgba(239,68,68,.3);background:rgba(239,68,68,.08);color:var(--rd);font-size:.66rem;font-weight:700;cursor:pointer;font-family:'Syne',sans-serif;flex-shrink:0}
.rl-item-del:hover{background:rgba(239,68,68,.2);border-color:var(--rd)}
.rl-actions{display:flex;gap:6px;flex-wrap:wrap}
.rl-export-actions{display:inline-flex;gap:6px}
@media(max-width:1000px){.rl-wrap{grid-template-columns:1fr}}
@media(max-width:900px){.rl-editors{grid-template-columns:1fr}}
/* ── TOAST ── */
#toast{position:fixed;bottom:16px;left:50%;transform:translateX(-50%) translateY(12px);background:var(--sf2);border:1px solid var(--a);border-radius:9px;padding:8px 15px;font-size:.78rem;opacity:0;transition:all .22s;z-index:999;pointer-events:none}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.te{border-color:var(--rd)!important}
/* ── ADMIN ── */
#admin-overlay{position:fixed;inset:0;z-index:600;background:rgba(10,10,15,.88);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center}
#admin-overlay.open{display:flex}
.admin-box{background:var(--sf);border:1px solid var(--bd);border-radius:18px;padding:32px 36px;width:520px;max-width:95vw;max-height:85vh;overflow-y:auto;position:relative}
.admin-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--rd),var(--a2),var(--a));border-radius:18px 18px 0 0}
.admin-run-row{display:flex;align-items:center;gap:10px;padding:10px 13px;border-radius:9px;border:1px solid var(--bd);background:var(--sf2);transition:border-color .15s}
.admin-run-row:hover{border-color:var(--bd2)}
.admin-run-info{flex:1;min-width:0}
.admin-run-name{font-size:.88rem;font-weight:700;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-run-pp{font-size:.68rem;font-family:'Space Mono',monospace;color:var(--txd);margin-top:2px}
.admin-run-badge{font-size:.72rem;font-family:'Space Mono',monospace;color:var(--txd);flex-shrink:0;text-align:right}
.admin-pw-btn{padding:5px 10px;border-radius:7px;border:1px solid rgba(124,106,255,.3);background:rgba(124,106,255,.08);color:var(--a);font-size:.72rem;font-weight:700;cursor:pointer;font-family:'Syne',sans-serif;transition:all .15s;flex-shrink:0}
.admin-pw-btn:hover{background:rgba(124,106,255,.18);border-color:var(--a)}
.admin-del-btn{padding:5px 10px;border-radius:7px;border:1px solid rgba(239,68,68,.3);background:rgba(239,68,68,.08);color:var(--rd);font-size:.72rem;font-weight:700;cursor:pointer;font-family:'Syne',sans-serif;transition:all .15s;flex-shrink:0}
.admin-del-btn:hover{background:rgba(239,68,68,.2);border-color:var(--rd)}
/* ── CREATE PASSWORD TOGGLE ── */
.tg-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.tg-label{font-size:.78rem;color:var(--tx)}
.tg-btn{position:relative;width:48px;height:26px;border-radius:999px;border:1px solid var(--bd2);background:var(--sf2);cursor:pointer;transition:all .18s}
.tg-btn .tg-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .18s}
.tg-btn.on{background:var(--a);border-color:var(--a)}
.tg-btn.on .tg-knob{transform:translateX(22px)}

<<<<<<< HEAD
/* ── STABILITY/POLISH PASS ── */
button,input,select,textarea{font:inherit}
button{-webkit-tap-highlight-color:transparent}
img,video,canvas{max-width:100%}

.pb,.lb,.rt-card,.bt-player-block,.rh-run,.rl-main,.rl-side,.admin-run-row,.dead-link-row{border-radius:8px}
.ss,.tbar,.dcbar,.modal,.admin-box{border-radius:10px}
.pb,.lb,.rt-card,.bt-player-block,.rh-run,.rl-main,.rl-side,.admin-box,.modal{
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.btn-g,.btn-share,.min-btn,#dbgb,.dc-btn,.map-viewer-btn,.map-mode-btn{
  background:rgba(255,255,255,.025);
}
.btn-g:hover:not(:disabled),.btn-share:hover:not(:disabled),.min-btn:hover,#dbgb:hover,.map-viewer-btn:hover{
  background:rgba(65,214,195,.07);
}

#active-runs-list,.admin-box,.rt-list,.box-main,.map-thumb-list,.rl-side-list,.pr-grid{
  scrollbar-width:thin;
  scrollbar-color:var(--bd2) transparent;
}
#active-runs-list::-webkit-scrollbar,.admin-box::-webkit-scrollbar,.rt-list::-webkit-scrollbar,.box-main::-webkit-scrollbar,.map-thumb-list::-webkit-scrollbar,.rl-side-list::-webkit-scrollbar,.pr-grid::-webkit-scrollbar{width:8px;height:8px}
#active-runs-list::-webkit-scrollbar-thumb,.admin-box::-webkit-scrollbar-thumb,.rt-list::-webkit-scrollbar-thumb,.box-main::-webkit-scrollbar-thumb,.map-thumb-list::-webkit-scrollbar-thumb,.rl-side-list::-webkit-scrollbar-thumb,.pr-grid::-webkit-scrollbar-thumb{background:var(--bd2);border-radius:999px}

.login-loading,.active-runs-empty{
  border:1px dashed rgba(125,138,157,.22);
  border-radius:8px;
  background:rgba(255,255,255,.018);
}

@media(max-width:1100px){
  nav{overflow-x:auto;overflow-y:hidden;padding-right:10px}
  nav::-webkit-scrollbar{height:0}
  .nr{position:sticky;right:0;background:linear-gradient(90deg,transparent,var(--bg) 18px);padding-left:18px}
  .nt{padding:0 12px}
  #stbar{flex-wrap:wrap;justify-content:flex-start}
}

@media(max-width:760px){
  #js{align-items:flex-start;overflow-y:auto;padding:18px 14px}
  .jc{padding:30px 22px;margin:auto 0;border-radius:10px}
  .jc h1{font-size:1.55rem}
  .slot-picker{display:grid;grid-template-columns:1fr 1fr}
  #peer-bar,#run-bar,.rt-toolbar,.rt-search{padding-left:12px!important;padding-right:12px!important}
  #sg{padding:12px;gap:10px}
  #sg.minimized #col-0,#sg.minimized .peers-row{padding:0 12px}
  #sg.minimized #col-0{flex-direction:column}
  #sg.minimized #col-0 .dcbar{width:100%}
  .sl-layout{padding:12px;gap:12px}
  .pb-g,.bgrid{grid-template-columns:repeat(3,1fr)}
  .box-layout,.map-layout{grid-template-columns:1fr}
  .box-sb{border-right:none;border-bottom:1px solid var(--bd);display:flex;gap:8px;overflow-x:auto;padding:10px}
  .box-ps{min-width:150px;margin-bottom:0}
  .map-sidebar{display:flex;max-height:190px;border-right:none;border-bottom:1px solid var(--bd)}
  .map-thumb-list{display:flex;overflow-x:auto;overflow-y:hidden}
  .map-thumb{min-width:170px}
  .rt-counters{margin-left:0;width:100%}
  .admin-run-row{align-items:stretch;flex-direction:column}
  .admin-pw-btn,.admin-del-btn{width:100%}
  .rl-wrap{padding:12px}
}

@media(max-width:480px){
  nav{height:50px;padding-left:12px}
  .nt{height:50px;font-size:.74rem}
  .nr .badge,.nr a{display:none}
  .jc{padding:26px 18px}
  .slot-picker{grid-template-columns:1fr}
  .btn{width:100%;min-height:38px}
  .btn-xs,.btn-sm{width:auto}
  .rt-toolbar select,.rt-search input{min-width:100%;width:100%}
  .pb-g,.bgrid{grid-template-columns:repeat(2,1fr)}
  .modal,.picker-modal,.move-modal,.link-move-modal{width:calc(100vw - 24px);max-height:88vh}
  .pr-grid{grid-template-columns:repeat(3,1fr)}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
=======
/* ── MOBILE SUPPORT ── */
@media (hover:none) and (pointer:coarse){
  .btn,.btn-sm,.btn-xs,.nt,.slot-btn,.boxt,.li,.es,.bs,.rt-slot{touch-action:manipulation}
  .btn,.slot-btn,.boxt,.nt{min-height:42px}
  .inp,select.inp{font-size:16px}
}

@media (max-width:900px){
  nav{height:50px;min-height:50px;padding:0 8px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:0}
  .nl{display:none}
  .nt{height:50px;padding:0 9px;font-size:.72rem;flex:0 0 auto}
  .nr{order:0;width:auto;margin-left:8px;padding:0;gap:6px;border-top:none;justify-content:flex-start;overflow:visible;flex:0 0 auto;white-space:nowrap}
  .nr a{display:none}
  .nr .badge{padding:2px 8px;font-size:.66rem}
  .page{min-height:calc(100vh - 50px)}
  #peer-bar,#stbar,.rt-toolbar,.rt-search{padding-left:10px;padding-right:10px}
  #stbar{flex-wrap:wrap;justify-content:flex-start;gap:6px;row-gap:6px;line-height:1.15}
  #stbar #stl,#stbar #str,#stbar #run-status-badge,#stbar #run-timer{font-size:.58rem}
  #stbar #run-btn,#stbar .min-btn,#stbar #dbgb{font-size:.56rem;padding:2px 6px}
  #stbar #stl{flex:1 1 48%}
  #stbar #str{flex:1 1 48%;text-align:right}
  #stbar #run-status-badge,#stbar #run-timer{flex:0 0 auto}
  #stbar #run-btn,#stbar #popoutbtn,#stbar #minbtn,#stbar #dbgb{flex:0 0 auto}
  #sg{padding:10px;gap:8px}
  #sg.minimized #col-0{padding:0 10px}
  #sg.minimized .peers-row{padding:0 10px}
  .sl-layout{padding:10px;gap:10px}
  .pb-g{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:9px}
  .es{min-height:94px}
  .box-main{padding:10px}
  .rt-list{padding:10px}
  .modal-bg{align-items:flex-end}
  .modal{width:100%!important;max-width:none;border-radius:16px 16px 0 0;padding:16px;max-height:90vh}
}

@media (max-width:700px){
  .box-layout{grid-template-columns:1fr}
  .box-sb{order:2;border-right:none;border-top:1px solid var(--bd);max-height:200px}
  .bgrid{grid-template-columns:repeat(4,1fr);gap:5px}
  .map-layout{grid-template-columns:1fr}
}

@media (max-width:480px){
  .jc{width:100%;max-width:none;height:100%;border-radius:0;padding:22px 16px}
  nav{padding:0 6px}
  .nt{padding:0 8px;font-size:.68rem}
  .nr{margin-left:6px;gap:4px}
  .nr .badge{display:none}
  #stbar #popoutbtn{display:none}
  .slot-picker{gap:6px}
  .slot-btn{font-size:.72rem;padding:8px 4px}
  .pb-g{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bgrid{grid-template-columns:repeat(3,1fr)}
  .rt-body.open{display:block}
  .rt-player{min-width:0;margin-bottom:8px}
  .dcbar{padding:6px 8px;gap:6px}
>>>>>>> c6481ed0ad627523129e35778992a56558908742
}
