:root{--bg: #05070d;--bg-panel: #0b0f1a;--border: rgba(255, 255, 255, .08);--border-hot: rgba(255, 207, 73, .65);--text: #eef2f6;--text-dim: rgba(255, 255, 255, .55);--pink: #ff2f8a;--amber: #ffcf49;--red: #ff3e3e;--green: #2fd66c}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;overflow-x:hidden}header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:14px 20px;background:linear-gradient(180deg,#05070dfa,#05070dd9);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:12px;font:900 italic 15px/1 sans-serif;letter-spacing:.18em}.brand .badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 5px;background:#ff2f8a24;border:1px solid rgba(255,47,138,.45);border-radius:999px;font-size:11px;letter-spacing:.22em;color:#ffb2d4;text-transform:uppercase}.brand .badge .dot{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px #ff2f8ae6;animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}.middle{display:flex;align-items:center;gap:16px;font:700 12px/1 system-ui,sans-serif;color:var(--text-dim);letter-spacing:.14em;text-transform:uppercase}.middle b{color:var(--text);font-weight:900}.middle .code{color:var(--amber)}.fanwaiting{color:var(--pink);font-weight:900;margin-left:4px}.actions{display:inline-flex;gap:10px;align-items:center}.featured-info{display:none;padding:6px 12px;background:#ffcf491a;border:1px solid rgba(255,207,73,.45);border-radius:8px;font:900 11px/1 system-ui,sans-serif;letter-spacing:.15em;color:var(--amber);text-transform:uppercase}.featured-info.on{display:inline-flex;align-items:center;gap:6px}.end-feature{display:none;padding:8px 14px;background:#ff3e3e24;border:1px solid rgba(255,62,62,.55);border-radius:8px;color:#ff8a8a;font:900 11px/1 system-ui,sans-serif;letter-spacing:.16em;cursor:pointer;text-transform:uppercase}.end-feature.on{display:inline-block}.end-feature:hover{background:#ff3e3e3d}main{display:grid;grid-template-columns:minmax(320px,380px) 1fr;gap:24px;padding:24px 20px 80px}@media (max-width: 900px){main{grid-template-columns:1fr}}.msg-map-panel{position:sticky;top:74px;align-self:start;background:var(--bg-panel);border:1px solid var(--border);border-radius:14px;padding:14px 14px 12px}.msg-map-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font:900 10px/1 system-ui,sans-serif;letter-spacing:.22em;color:var(--text-dim);text-transform:uppercase}.msg-map-header .clear-filter{background:#ff2f8a1f;color:#ff6ba9;border:1px solid rgba(255,47,138,.4);border-radius:999px;padding:4px 10px 3px;font:900 9px/1 system-ui,sans-serif;letter-spacing:.18em;cursor:pointer;text-transform:uppercase}.msg-map-header .clear-filter:hover{background:#ff2f8a38}.msg-map-header .clear-filter[hidden]{display:none}.msg-map{width:100%;height:auto;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none}.msg-map .stage{fill:#ffcf4933;stroke:#ffcf498c;stroke-width:1.5}.msg-map .stage-label{fill:#ffcf49d9;font:900 10px/1 system-ui,sans-serif;letter-spacing:.24em;text-anchor:middle}.msg-map .zone{fill:#ffffff0a;stroke:#ffffff24;stroke-width:1;cursor:pointer;transition:fill .12s ease,stroke .12s ease}.msg-map .zone:hover{fill:#ff2f8a24;stroke:#ff2f8a73}.msg-map .zone.active{fill:#ff2f8a47;stroke:#ff2f8a;stroke-width:2}.msg-map .zone.has-fans{fill:#ffcf4924;stroke:#ffcf498c}.msg-map .zone.has-fans.active{fill:#ff2f8a52;stroke:#ff2f8a}.msg-map .zone-label{fill:#ffffff8c;font:900 8px/1 system-ui,sans-serif;letter-spacing:.14em;text-anchor:middle;pointer-events:none}.msg-map .zone-group.has-fans .zone-label,.msg-map .zone-group.active .zone-label{fill:#fff}.msg-map .zone-count{fill:#ff2f8a;font:900 13px/1 system-ui,sans-serif;text-anchor:middle;pointer-events:none;opacity:0;transition:opacity .15s ease}.msg-map .zone-group.has-fans .zone-count{opacity:1}.msg-map .zone-group.active .zone-count{fill:#fff}.msg-map-summary{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;font:700 11px/1 system-ui,sans-serif;color:var(--text-dim);letter-spacing:.06em}.msg-map-summary b{color:var(--text);font-weight:900}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;align-content:start}.grid-filter{grid-column:1 / -1;display:none;align-items:center;gap:10px;padding:8px 12px;background:#ff2f8a1a;border:1px solid rgba(255,47,138,.4);border-radius:8px;font:900 11px/1 system-ui,sans-serif;letter-spacing:.14em;color:#ff6ba9;text-transform:uppercase}.grid-filter.on{display:flex}.grid-filter .icon{font-size:14px}.grid-filter .clear{margin-left:auto;background:none;border:none;color:#ff6ba9;font:900 11px/1 system-ui,sans-serif;letter-spacing:.14em;cursor:pointer;text-transform:uppercase}.grid-filter .clear:hover{color:#fff}.tile[data-hidden=true]{display:none}.tile{position:relative;aspect-ratio:9 / 16;background:#000;border:2px solid var(--border);border-radius:14px;overflow:hidden;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.tile:hover{transform:translateY(-2px);border-color:#ffffff3d}.tile.featured{border-color:var(--border-hot);box-shadow:0 0 0 3px #ffcf4940,0 14px 48px #ffcf4947}.tile video{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;background:#000;transform:scaleX(-1)}.tile-badge{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 9px 3px;background:#ff2f8ad9;border-radius:999px;font:900 9px/1 system-ui,sans-serif;letter-spacing:.24em;color:#fff;text-transform:uppercase}.tile-badge .dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:pulse 1s ease-in-out infinite}.tile-kill{position:absolute;top:8px;right:8px;width:30px;height:30px;border:none;border-radius:8px;background:#0009;color:#fff;font:900 16px/1 system-ui;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease;display:flex;align-items:center;justify-content:center}.tile:hover .tile-kill{opacity:1}.tile-kill:hover{background:#ff3e3ed9}.tile-caption{position:absolute;left:0;right:0;bottom:0;padding:14px 12px 10px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.85));color:#fff;font:700 12px/1.3 system-ui,sans-serif;pointer-events:none}.tile-caption .section{font-weight:900;letter-spacing:.02em}.tile-caption .state{display:inline-flex;align-items:center;gap:5px;margin-top:3px;font:700 10px/1 system-ui,sans-serif;letter-spacing:.15em;color:#ffffffbf;text-transform:uppercase}.tile-caption .state .dot{width:6px;height:6px;border-radius:50%;background:var(--text-dim)}.tile[data-state=connecting] .tile-caption .state .dot{background:var(--amber)}.tile[data-state=connected] .tile-caption .state .dot{background:var(--green)}.tile[data-state=failed] .tile-caption .state .dot{background:var(--red)}.tile.featured:after{content:"ON THE BIG SCREEN";position:absolute;top:10px;left:50%;transform:translate(-50%);padding:5px 10px 4px;background:var(--amber);color:#000;font:900 9px/1 system-ui,sans-serif;letter-spacing:.22em;border-radius:4px;text-transform:uppercase;pointer-events:none}.empty{display:grid;place-items:center;min-height:40vh;text-align:center}.empty .icon{font-size:60px;margin-bottom:14px}.empty h2{font:900 italic 24px/1.2 sans-serif;letter-spacing:-.01em;margin:0 0 8px}.empty p{color:var(--text-dim);font:500 14px/1.5 system-ui;max-width:42ch;margin:0 auto}
