:root{color-scheme:dark;--bg: #0a0d13;--ink: #f6f3ee;--muted: #a9b4c6;--cyan: #6fa8ff;--pink: #ecebe8;--panel: #151a24;--line: rgba(111, 168, 255, .28);--beam: #6fa8ff;--floor: #6fa8ff;--wash: #0b1020;font-family:Outfit,Avenir Next,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}*{box-sizing:border-box}html{overflow-x:clip;overflow-y:auto}body{overflow-x:clip}body{margin:0;min-height:100vh;min-height:100dvh;background:radial-gradient(1200px 500px at 50% -10%,rgba(111,168,255,.08),transparent 50%),var(--bg)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--cyan)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;position:sticky;top:0;z-index:5;background:#0b0b0cdb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}.wordmark{font-family:Syne,Arial Black,sans-serif;font-weight:800;letter-spacing:-.04em;font-size:22px;color:var(--ink);text-decoration:none}.wordmark:after{content:"";display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:99px;background:var(--pink);box-shadow:0 0 12px var(--pink)}.nav a:not(.wordmark){color:var(--ink);text-decoration:none;font-weight:700}h1,h2{font-family:Syne,Arial Black,sans-serif;letter-spacing:-.04em}h1{font-size:clamp(36px,8vw,68px);line-height:.92;margin:0}h2{font-size:22px;margin:0 0 12px}.kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:var(--cyan);font-weight:700}.lede,.hint,.empty{color:var(--muted)}.banner{background:#ecebe826;border:1px solid var(--pink);color:#f4f4f2;padding:10px 12px;border-radius:12px}button,.text-link{border:0;border-radius:999px;padding:12px 16px;background:var(--cyan);color:#fff;font-weight:700;min-height:44px}button.ghost,.text-link{background:transparent;color:var(--ink);border:1px solid var(--line);text-decoration:none;display:inline-flex;align-items:center}button:disabled{opacity:.45;cursor:not-allowed}.row,.hero-actions,.split,.section-head,.vote-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.section-head{justify-content:space-between}.directory,.profile,.auth-page,.room-page{width:min(1120px,calc(100% - 28px));margin:0 auto;padding:18px 0 88px}.hero{padding:18px 0 28px}.create-card,.auth-card,.room-card,.xp-card,.queue,.player,.identity{background:var(--panel);border:1px solid rgba(255,255,255,.06);border-radius:22px;padding:16px}label{display:grid;gap:6px;margin:12px 0;font-size:14px;color:var(--muted)}input,select{width:100%;background:#10141c;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;min-height:44px}.check{display:flex;gap:10px;align-items:center}.check input{width:auto}.room-grid{list-style:none;padding:0;margin:0;display:grid;gap:12px}.room-card{display:grid;gap:8px;text-decoration:none;color:var(--ink);min-height:140px;background:radial-gradient(400px 120px at 100% 0%,color-mix(in srgb,var(--floor) 35%,transparent),transparent 60%),linear-gradient(180deg,color-mix(in srgb,var(--beam) 12%,#171c25),#151a24)}.room-card strong{font-family:Syne,sans-serif;font-size:28px;letter-spacing:-.04em}.venue-pill,.listeners{display:inline-flex;align-items:center;gap:6px;width:fit-content;border-radius:999px;padding:4px 10px;background:#00000059;color:var(--cyan);font-size:13px;font-weight:700}.listeners i{width:8px;height:8px;border-radius:99px;background:var(--pink);box-shadow:0 0 8px var(--pink)}.auth-page{display:grid;place-items:start center;padding-top:28px}.auth-card{width:min(440px,100%)}.avatar{display:block;margin:0 auto}.tip{position:absolute;left:50%;bottom:calc(100% + 4px);transform:translate(-50%);background:#10141c;border:1px solid var(--line);border-radius:999px;padding:4px 8px;white-space:nowrap;display:none;align-items:center;gap:4px;z-index:5;font-size:12px}.dancer:hover .tip,.dancer:focus .tip,.dancer:focus-within .tip{display:inline-flex}.club{position:relative;min-height:100vh;min-height:100dvh;background:#070a10}.club-hero{position:relative;height:75vh;height:75dvh;min-height:340px;overflow:hidden}.club-panels{display:grid;gap:14px;padding:14px calc(12px + env(safe-area-inset-right)) 18px calc(12px + env(safe-area-inset-left));max-width:1100px;margin:0 auto}.club-panel{padding:12px;border-radius:18px;background:#151a24;border:1px solid rgba(255,255,255,.08);scroll-margin-top:12px}.club-panel h2{margin:0 0 8px}.club-panel ol{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:8px}.club-panel li{display:flex;justify-content:space-between;gap:8px;align-items:center}.chat-panel ol{max-height:50vh;overflow-y:auto;overscroll-behavior:contain}.club-panel form{display:grid;gap:8px;margin-bottom:12px}.club-panel form.sheet-chat{display:flex;gap:8px}.club-panel form.sheet-chat input{flex:1}.club-panel input{width:100%}@media(min-width:900px){.club-panels{grid-template-columns:1fr 1fr;align-items:start}}.club-scene{position:absolute;inset:0;overflow:hidden;background:var(--ceiling);--hype: 0;--tile: clamp(26px, 4.2vw, 46px);image-rendering:pixelated;display:flex;flex-direction:column}.sprite{display:block;image-rendering:pixelated;overflow:visible}.td-wall{flex:none;height:calc(104px + env(safe-area-inset-top));background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.6)),radial-gradient(18px 30px at 22% 30%,rgba(10,16,30,.35),transparent 70%),radial-gradient(26px 20px at 71% 55%,rgba(12,18,32,.3),transparent 70%),repeating-linear-gradient(90deg,transparent 0 118px,rgba(0,0,0,.45) 118px 120px),radial-gradient(circle at 6px 8px,rgba(0,0,0,.5) 1.5px,transparent 2px) 0 0 / 60px 32px,repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px),var(--wall);position:relative;border-bottom:4px solid #090c12}.td-truss{position:absolute;left:4%;right:4%;bottom:6px;height:12px;display:flex;justify-content:space-between;align-items:center;background:repeating-linear-gradient(90deg,#3c4554 0 4px,#1a1f2a 4px 8px);border-top:2px solid #566175;border-bottom:2px solid #566175}.td-truss i{width:12px;height:12px;margin-top:10px;background:var(--led-a);box-shadow:0 0 0 2px #0a0d13,0 6px 16px var(--led-a);opacity:calc(.45 + var(--hype) * .55);animation:td-blink calc(var(--beat) * 2) steps(2,jump-none) infinite}.td-truss i.b{background:var(--led-b);box-shadow:0 0 0 2px #0a0d13,0 6px 16px var(--led-b)}@keyframes td-blink{0%,to{filter:brightness(.6)}50%{filter:brightness(1.5)}}.td-stage{flex:none;position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:6px;padding:6px 8px 0;background:repeating-linear-gradient(90deg,rgba(0,0,0,.28) 0 2px,transparent 2px 34px),repeating-linear-gradient(180deg,#3a4352 0 9px,#2d3440 9px 10px);border-bottom:6px solid #0d1018;box-shadow:0 6px #00000080,0 14px 36px color-mix(in srgb,var(--beam) calc(10% + var(--hype) * 30%),transparent)}.td-speakers{width:clamp(34px,6vw,72px);filter:drop-shadow(0 4px 0 rgba(0,0,0,.6));height:auto;align-self:end;max-height:130px}.td-speakers .cone{animation:td-thump var(--beat) steps(2,jump-none) infinite;transform-box:fill-box;transform-origin:center}@keyframes td-thump{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.td-booth{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(2px,1vw,10px);max-width:760px;width:100%;justify-self:center}.td-slot{display:flex;flex-direction:column;align-items:center;min-width:0;position:relative}.td-dj{height:72px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;z-index:1;margin-bottom:-10px}.td-name{display:flex;align-items:center;gap:2px;max-width:100%;font:700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#f6f3ee;background:#000000a6;padding:1px 4px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;top:-2px}.td-open{width:34px;height:34px;margin-bottom:14px;display:grid;place-items:center;font:700 9px/1 ui-monospace,Menlo,monospace;color:#ffffff73;border:2px dashed rgba(255,255,255,.18);text-transform:uppercase}.td-deck{width:100%;max-width:110px;height:auto;display:block;filter:drop-shadow(0 3px 0 rgba(0,0,0,.6))}.td-deck.live{filter:drop-shadow(0 0 8px var(--beam)) drop-shadow(0 3px 0 rgba(0,0,0,.6))}.td-deck.live .platter rect:nth-child(3){animation:td-spin calc(var(--beat) / 2) steps(2,jump-none) infinite}@keyframes td-spin{50%{opacity:.55}}.td-slot.on-air:before{content:"";position:absolute;left:50%;top:-40px;width:120%;height:140px;transform:translate(-50%);background:radial-gradient(closest-side,color-mix(in srgb,var(--beam) 35%,transparent),transparent);pointer-events:none}.td-slot.on-air .td-dj .sprite{animation:crowd-bob var(--beat) steps(2,jump-none) infinite}.td-floor{position:relative;flex:1;min-height:0;overflow:hidden;background:#1c222c}.td-concrete{position:absolute;inset:0;background:radial-gradient(120% 70% at 50% 0%,color-mix(in srgb,var(--beam) 9%,transparent),transparent 60%),radial-gradient(70px 40px at 18% 38%,rgba(0,0,0,.28),transparent 70%),radial-gradient(90px 50px at 76% 70%,rgba(0,0,0,.25),transparent 70%),radial-gradient(40px 26px at 58% 22%,rgba(20,30,50,.22),transparent 70%),repeating-linear-gradient(90deg,rgba(120,150,200,.1) 0 1px,transparent 1px 160px),repeating-linear-gradient(180deg,transparent 0 159px,rgba(120,150,200,.1) 159px 160px),repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 1px,transparent 1px 5px),repeating-linear-gradient(0deg,rgba(0,0,0,.06) 0 1px,transparent 1px 4px),linear-gradient(180deg,#4a5464,#3a4352 60%,#2c3340);image-rendering:pixelated}.td-vip{position:absolute;z-index:1;top:46%;transform:translateY(-50%)}.td-vip.l{left:6px}.td-vip.r{right:6px}.td-vip svg{width:clamp(44px,7vw,92px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 3px 0 rgba(0,0,0,.6))}.td-vip .spark{animation:td-spark .24s steps(2,end) infinite}.td-vip .spark.b{animation-delay:-.12s}@keyframes td-spark{50%{opacity:.25}}.club-scene[data-hype="0"] .td-vip .spark{display:none}.td-crowd{left:clamp(56px,9vw,110px)!important;right:clamp(56px,9vw,110px)!important;top:clamp(40px,9vh,80px)!important;bottom:clamp(100px,14vh,150px)!important}.td-corner{position:absolute;z-index:2;width:clamp(30px,4.6vw,62px)}.td-corner .td-speakers{width:100%}.td-corner.tl{left:6px;top:6px;transform:rotate(-35deg);transform-origin:top left;translate:10px 0}.td-corner.tr{right:6px;top:6px;transform:rotate(35deg);transform-origin:top right;translate:-10px 0}.td-corner.bl{left:6px;bottom:4px;transform:rotate(-145deg);transform-origin:center}.td-corner.br{right:6px;bottom:4px;transform:rotate(145deg);transform-origin:center}@media(prefers-reduced-motion:reduce){.td-vip .spark{animation:none}}.td-concrete:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 3px 3px,rgba(255,255,255,.05) 1px,transparent 1.5px) 0 0 / 11px 13px,radial-gradient(circle at 7px 9px,rgba(0,0,0,.18) 1px,transparent 1.5px) 0 0 / 17px 19px}.td-beams b{position:absolute;top:-20%;width:30%;height:140%;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(closest-side,color-mix(in srgb,var(--led-a) 40%,transparent),transparent);opacity:calc(.15 + var(--hype) * .6);animation:td-sweep calc(var(--beat) * 16) ease-in-out infinite alternate}.td-beams b:nth-child(2){background:radial-gradient(closest-side,color-mix(in srgb,var(--led-b) 40%,transparent),transparent);animation-delay:calc(var(--beat) * -6)}.td-beams b:nth-child(3){width:20%;background:radial-gradient(closest-side,rgba(255,255,255,.18),transparent);animation-duration:calc(var(--beat) * 10)}@keyframes td-sweep{0%{left:-10%}to{left:80%}}.club-scene.surge .td-beams b{opacity:1}.td-crowd{position:absolute;inset:0 0 72px}.td-dancer{position:absolute;transform:translate(-50%,-80%);pointer-events:auto;animation:crowd-bob calc(var(--beat) * 2) steps(3,jump-none) infinite}.club-scene[data-hype="0"] .td-dancer{animation-duration:calc(var(--beat) * 4)}.club-scene[data-hype="2"] .td-dancer,.club-scene[data-hype="3"] .td-dancer{animation-duration:var(--beat)}.club-scene[data-hype="3"] .td-dancer:nth-child(2n) .sprite-body{animation:td-jump var(--beat) steps(2,jump-none) infinite}@keyframes td-jump{50%{transform:translateY(-2px)}}@keyframes crowd-bob{0%,to{translate:0 0}50%{translate:0 -4px}}.floor-empty{position:absolute;left:0;right:0;top:30%;margin:0;text-align:center;font:700 13px/1 ui-monospace,Menlo,monospace;color:#ffffff8c;text-transform:uppercase;letter-spacing:.12em;text-shadow:0 2px 0 #000}@media(min-width:900px){.td-dj{height:92px}.td-dj .sprite{width:52px;height:auto}.td-name{font-size:12px}}@media(prefers-reduced-motion:reduce){.td-truss i,.td-speakers .cone,.td-beams b,.td-dancer,.td-slot.on-air .td-dj .sprite{animation:none}}.club-top{position:absolute;top:0;left:0;right:0;z-index:4;padding-top:calc(10px + env(safe-area-inset-top))!important;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:linear-gradient(#070a10,transparent);pointer-events:none}.club-top>*{pointer-events:auto}.club-top .kicker{margin:0}.club-top strong{font-family:Syne,sans-serif;font-size:18px;letter-spacing:-.04em}.club-top .ghost{padding:8px 12px;min-height:36px}.club-toast{position:absolute;top:64px;left:12px;right:12px;z-index:5;background:#ecebe833;border:1px solid var(--pink);border-radius:12px;padding:8px 10px}.club-dock{position:sticky;bottom:0;z-index:10;display:grid;gap:8px;margin:0 auto;padding:10px calc(10px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left));border-radius:18px 18px 0 0;background:#0e0e0feb;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dock-track strong{display:block;font-size:14px}.dock-track span{color:var(--muted);font-size:12px}.dock-actions{display:flex;flex-wrap:wrap;gap:6px}.dock-actions button{min-height:40px;padding:8px 12px}.dock-actions .awesome,.dock-actions .awesome:disabled{background:#8ec2ff;color:#061226;opacity:1;font-weight:700}.dock-actions .lame{background:var(--pink);color:#0d1018}.club-dock iframe,.club-dock audio{width:100%;height:92px;border:0;border-radius:10px;background:#10141c}.club-dock .player-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden}.sound-on{width:100%;min-height:44px;background:var(--cyan);color:#fff;font-weight:700;border-radius:12px;animation:sound-pulse 1.6s ease-in-out infinite}@keyframes sound-pulse{50%{box-shadow:0 0 0 6px #6fa8ff40}}@media(max-height:560px){.dock-actions button{min-height:34px;padding:4px 10px;font-size:13px}.club-dock{gap:6px;padding:8px}.club-dock iframe{height:72px}}.scrim{position:absolute;inset:0;z-index:6;background:#00000059;border-radius:0}.club-sheet{position:absolute;left:0;right:0;bottom:0;z-index:7;max-height:72%;max-height:calc(100dvh - 56px - env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px calc(12px + env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));border-radius:18px 18px 0 0;background:#151a24;border:1px solid rgba(255,255,255,.08);transform:translateY(110%);transition:transform .2s ease}.club-sheet.open{transform:translateY(0)}.club-sheet header{display:flex;justify-content:space-between;align-items:center}.club-sheet ol{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:8px}.club-sheet li{display:flex;justify-content:space-between;gap:8px;align-items:center}.club-sheet form{display:grid}.club-sheet form.sheet-chat{display:flex;gap:8px}.club-sheet form.sheet-chat input{flex:1}.club-sheet input{width:100%}@media(min-width:900px){.club-dock{width:min(760px,calc(100% - 48px))}}.player{display:grid;gap:10px}.player-copy{display:grid;gap:2px}.player-copy strong,.player-copy span{display:block}.player iframe,.player audio{width:100%;border:0;border-radius:12px;height:120px;background:#10141c}.bar{height:8px;border-radius:99px;background:#29303c;overflow:hidden}.bar b,.rank-bar b{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--pink))}.vote-row button.awesome,.vote-row button.awesome:disabled{background:#8ec2ff;color:#061226;opacity:1;font-weight:700}.vote-row button.lame{background:var(--pink);color:#0d1018}.queue ol,.chat ol,.invite-list,.merch-list{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:8px}.queue li,.invite-list li,.merch-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#10141c;border-radius:14px;padding:10px}.queue small{display:block;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 110px;gap:8px}.chat-toggle{position:fixed;right:16px;bottom:16px;z-index:6;box-shadow:0 10px 30px #0006}.chat{position:fixed;left:0;right:0;bottom:0;z-index:7;background:#151a24;border-radius:22px 22px 0 0;border:1px solid rgba(255,255,255,.08);padding:12px 12px 20px;transform:translateY(110%);transition:transform .2s ease;max-height:70vh;max-height:70dvh;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.chat.open{transform:translateY(0)}.chat header{display:flex;justify-content:space-between;align-items:center}.chat ol{overflow:auto;max-height:40vh}.chat li{display:grid;gap:2px}.chat strong{display:inline-flex;gap:6px;align-items:center}.chat form{display:flex;gap:8px}.chat input{flex:1}.verified{display:inline-flex;align-items:center;gap:4px;color:var(--cyan);font-size:12px;font-weight:700;vertical-align:middle}.identity{display:flex;gap:14px;align-items:center}.rank-bar{list-style:none;padding:0;margin:0;display:grid;gap:10px}.rank-bar li{display:grid;gap:4px;font-size:13px;color:var(--muted)}.rank-bar i{display:block;height:8px;background:#29303c;border-radius:99px;overflow:hidden}.rank-bar .current{color:var(--ink);font-weight:700}.cosmetic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cosmetic{text-align:left;border-radius:16px;background:#10141c;color:var(--ink);display:grid;min-height:72px}.cosmetic.on{outline:2px solid var(--cyan)}.cosmetic span{color:var(--muted);font-size:12px}.merch-list li p{margin:2px 0;display:flex;gap:6px;align-items:center}.price{color:var(--pink);font-weight:700}@media(min-width:800px){.room-grid{grid-template-columns:1fr 1fr}.cosmetic-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:980px){.directory,.profile{padding-bottom:48px}}.td-floor:after{content:"";position:absolute;inset:0;pointer-events:none;background:#fff;opacity:0;mix-blend-mode:overlay;z-index:1}.club-scene[data-hype="3"] .td-floor:after{background:radial-gradient(60% 50% at 50% 0%,#e8f2ff,transparent);animation:td-strobe calc(var(--beat) * 2) steps(1,end) infinite}@keyframes td-strobe{0%{opacity:.22}20%{opacity:0}}@media(prefers-reduced-motion:reduce){.td-floor:after{animation:none!important}}.td-sign{position:absolute;left:50%;bottom:24px;height:clamp(30px,5vw,44px);width:auto;transform:translate(-50%);image-rendering:auto;filter:drop-shadow(0 0 3px #bfe0ff) drop-shadow(0 0 10px #6fa8ff) drop-shadow(0 0 calc(10px + var(--hype) * 14px) rgba(111,168,255,.7))}.club-scene~* .club-top strong,.club-top strong{display:none}.club-top .kicker{display:none}.play-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:10px}.play-option{border:1px solid rgba(142,194,255,.35);border-radius:12px;padding:12px;background:#6fa8ff12;display:grid;gap:8px}.play-option h3{margin:0;font-size:1rem;color:#8ec2ff}.play-option .hint{margin:0;font-size:.8rem}.sc-option{margin-top:12px;background:transparent}.sc-option summary{cursor:pointer;color:#9fb3cc}.play-option label.check{display:flex;flex-direction:row;align-items:center;gap:8px;grid-template-columns:none}.play-option label.check input[type=checkbox]{width:18px;height:18px;min-height:0;flex:0 0 18px;margin:0;padding:0}.cosmetic{grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.cosmetic .sprite{grid-row:span 2}.td-stage{display:block;height:var(--stage-h);padding:0;--stage-h: 136px;--gr-w: clamp(104px, 30vw, 320px);--gr-r: 8px;--couch-top: 30px;--couch-h: 30px;--deck-w: clamp(84px, 24vw, 150px);--dj-y: calc(4px + var(--deck-w) * .5 - var(--deck-w) * .14);--sit-y: calc(var(--stage-h) - 8px - var(--couch-top) - var(--couch-h) * .92);--stand-y: 12px}.td-solo{position:absolute;left:50%;bottom:4px;width:var(--deck-w);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:4}.td-solo .td-deck{max-width:none;width:100%}.td-solo.on-air:before{content:"";position:absolute;left:50%;bottom:10px;width:190%;height:170px;transform:translate(-50%);background:radial-gradient(closest-side,color-mix(in srgb,var(--beam) 38%,transparent),transparent);pointer-events:none;z-index:-1}.td-solo .td-open{margin:0 0 6px;width:auto;height:auto;padding:6px 8px}.td-cases{position:absolute;left:10px;bottom:6px;width:clamp(56px,10vw,110px)}.td-cases svg{width:100%;height:auto;display:block;filter:drop-shadow(0 3px 0 rgba(0,0,0,.6))}.td-cases .cone{animation:td-thump var(--beat) steps(2,jump-none) infinite;transform-box:fill-box;transform-origin:center}.td-green{position:absolute;top:8px;bottom:8px;right:var(--gr-r);width:var(--gr-w);border:3px solid #0a0d13;outline:2px solid #2a3240;outline-offset:-5px;background:radial-gradient(70% 55% at 50% 0%,rgba(84,230,140,.2),transparent 70%),repeating-linear-gradient(90deg,rgba(0,0,0,.22) 0 2px,transparent 2px 16px),repeating-linear-gradient(180deg,#2b3340 0 7px,#252c38 7px 8px);box-shadow:inset 0 var(--couch-top) 0 #1c222c,0 4px #0000008c,0 0 22px #54e68c1f;image-rendering:pixelated;overflow:hidden}.gr-sign{position:absolute;left:6px;top:4px;z-index:2;font:700 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;color:#d9ffe6;padding:2px 4px;background:#0b1410;border:1px solid #3fdc85;text-shadow:0 0 4px #54e68c;box-shadow:0 0 8px #54e68c8c;animation:gr-hum 4s steps(1,end) infinite}@keyframes gr-hum{0%,91%,95%,to{opacity:1}93%{opacity:.55}}.gr-lamp{position:absolute;right:8px;top:4px;width:6px;height:6px;background:#7bf0a6;box-shadow:0 0 0 2px #0a0d13,0 0 14px 4px #54e68c8c}.gr-couch{position:absolute;left:7%;right:7%;top:var(--couch-top);height:var(--couch-h);background:linear-gradient(180deg,#3d4d63 0 40%,#33425a 40% 100%);border:2px solid #0a0d13;box-shadow:inset 0 2px #5a6e8c,inset 0 -3px #243044,0 3px #00000080;display:flex;padding:0 6px}.gr-couch:before,.gr-couch:after{content:"";position:absolute;top:2px;bottom:-2px;width:7px;background:#2a374c;border:2px solid #0a0d13;box-shadow:inset 0 2px #4e6280}.gr-couch:before{left:-7px}.gr-couch:after{right:-7px}.gr-couch b{flex:1;margin-top:40%;border-left:1px solid #263246}.gr-couch b:first-child{border-left:0}.gr-rug{position:absolute;left:16%;right:16%;bottom:6px;height:30%;background:repeating-linear-gradient(90deg,#1e3a2e 0 4px,#24463a 4px 8px);border:2px solid #12241c;opacity:.85}.gr-table{position:absolute;left:4px;bottom:6px;width:clamp(14px,3vw,28px)}.gr-plant{position:absolute;right:4px;bottom:6px;width:clamp(12px,2.4vw,24px)}.gr-empty{position:absolute;left:0;right:0;bottom:38%;text-align:center;font:700 9px/1 ui-monospace,Menlo,monospace;color:#d9ffe673;text-transform:uppercase;letter-spacing:.12em}.td-cast{position:absolute;inset:0;pointer-events:none;z-index:5}.td-figure{position:absolute;transform:translate(-50%);display:flex;flex-direction:column-reverse;align-items:center;transition:left 1.4s cubic-bezier(.45,0,.3,1),bottom 1.4s cubic-bezier(.45,0,.3,1)}.td-figure.on-air{z-index:3}.td-figure .td-name{position:static;margin:0 0 1px;font-size:9px}.td-figure.waiting .td-name{display:none}.td-figure.on-air .sprite{animation:crowd-bob var(--beat) steps(2,jump-none) infinite}.td-figure.walking .sprite{animation:td-walk .28s steps(2,jump-none) infinite}.td-figure.walking{z-index:6}.td-figure.leaving{animation:td-exit 1.4s ease-in forwards}@keyframes td-walk{0%,to{translate:0 0;rotate:-4deg}50%{translate:0 -3px;rotate:4deg}}@keyframes td-exit{to{translate:90px 0;opacity:0}}.td-figure.waiting .sprite{filter:drop-shadow(0 2px 0 rgba(0,0,0,.5))}@media(min-width:900px){.td-stage{--stage-h: 176px;--couch-top: 56px;--couch-h: 44px;--stand-y: 16px}.td-figure.on-air .sprite{width:58px;height:auto}.td-figure.waiting .sprite{width:38px;height:auto}.td-figure .td-name{font-size:12px}.td-figure.waiting .td-name{display:flex;font-size:9px;padding:0 3px}.gr-sign{font-size:10px;left:8px;top:6px}}@media(prefers-reduced-motion:reduce){.td-figure{transition:none}.td-figure .sprite,.gr-sign,.td-cases .cone{animation:none!important}}.dock-actions .rewind{background:linear-gradient(180deg,#fff,#bfe3ff 45%,#59a9ff);color:#04122b;font-weight:800;letter-spacing:.04em;border:1px solid #e9f6ff;box-shadow:0 0 0 1px #2f7dff55,0 0 14px #8fd0ff99;animation:rewind-glow 1.6s ease-in-out infinite}.dock-actions .rewind:disabled{animation:none;background:#1d2a40;color:#8fb3d9;box-shadow:none;border-color:#2c3e5c;opacity:1}@keyframes rewind-glow{50%{box-shadow:0 0 0 1px #2f7dff88,0 0 24px #bfe6ffcc}}.club-hero{position:relative}.rewind-flash{position:absolute;inset:0;z-index:5000;pointer-events:none;overflow:hidden;isolation:isolate;display:grid;place-items:center;animation:rf-bg 2.6s ease-out forwards}@keyframes rf-bg{0%{background:#e1f2fff2}8%{background:#8cc8ff8c}70%{background:#3c82ff2e}to{background:#3c82ff00}}.rewind-flash .co2{position:absolute;bottom:-20%;width:46%;height:140%;background:radial-gradient(ellipse 40% 30% at 50% 85%,#ffffff 0%,#e6f4ffee 30%,transparent 70%),radial-gradient(ellipse 55% 45% at 50% 55%,#d8eeffcc 0%,#9fd2ff88 40%,transparent 75%),radial-gradient(ellipse 70% 60% at 50% 25%,#bfe3ff66 0%,transparent 70%);filter:blur(6px);transform-origin:50% 100%;opacity:0;animation:co2-blast 2.2s cubic-bezier(.15,.7,.3,1) forwards}.rewind-flash .co2-l{left:-12%;--tilt: 18deg}.rewind-flash .co2-r{right:-12%;--tilt: -18deg;animation-delay:.06s}.rewind-flash .co2-c{left:27%;--tilt: 0deg;animation-delay:.12s;width:46%}@keyframes co2-blast{0%{opacity:0;transform:rotate(var(--tilt)) scaleY(.1) scaleX(.6)}12%{opacity:1;transform:rotate(var(--tilt)) scaleY(1) scaleX(.9)}55%{opacity:.85;transform:rotate(var(--tilt)) scaleY(1.15) scaleX(1.25)}to{opacity:0;transform:rotate(var(--tilt)) scaleY(1.25) scaleX(1.6) translateY(-8%)}}.rewind-word{position:relative;text-align:center;animation:rw-pop 2.6s ease-out forwards}.rewind-word strong{display:block;font-size:clamp(54px,14vw,148px);line-height:.9;font-weight:900;font-style:italic;letter-spacing:-.02em;color:#fff;-webkit-text-stroke:3px #1450d6;text-shadow:0 0 18px #9fd8ff,0 0 42px #4aa3ff,6px 6px 0 #0b2a7a,-4px 0 0 #6ff3ff,4px 0 0 #ff6fd8;animation:rw-shake .5s steps(2) 3}.rewind-word span{display:inline-block;margin-top:10px;padding:6px 14px;border-radius:999px;background:#061226d9;color:#dff1ff;font-weight:700;font-size:clamp(13px,2.4vw,18px);border:1px solid #8fd0ff88}@keyframes rw-pop{0%{transform:scale(2.6) rotate(-6deg);opacity:0;filter:blur(8px)}10%{transform:scale(.92) rotate(-3deg);opacity:1;filter:blur(0)}16%{transform:scale(1.06) rotate(-4deg)}80%{transform:scale(1) rotate(-4deg);opacity:1}to{transform:scale(1.1) rotate(-4deg);opacity:0}}@keyframes rw-shake{0%{translate:-3px 1px}to{translate:3px -1px}}.chat-panel li.chat-system strong{color:#8fd0ff}.chat-panel li.chat-system span{color:#e6f4ff;font-weight:700}@media(prefers-reduced-motion:reduce){.rewind-flash,.rewind-flash .co2,.rewind-word,.rewind-word strong,.dock-actions .rewind{animation-duration:.01s;animation-iteration-count:1}}.fx-layer{position:absolute;inset:0;z-index:4000;pointer-events:none;overflow:hidden;container-type:size;isolation:isolate;--fx-cw: clamp(30px, 4.6vw, 62px);--fx-stage-y: calc(250px + env(safe-area-inset-top)) ;image-rendering:pixelated}@media(min-width:900px){.fx-layer{--fx-stage-y: calc(290px + env(safe-area-inset-top)) }}.fx-shot{position:absolute;inset:0}.fx-layer .p{position:absolute;display:block}.fx-layer .o-stage{top:var(--fx-stage-y)}.fx-layer .o-booth{top:calc(var(--fx-stage-y) - 54px)}.fx-layer .o-tl{left:calc(10px + var(--fx-cw) * .55);top:calc(var(--fx-stage-y) + var(--fx-cw) * .7)}.fx-layer .o-tr{left:calc(100% - 10px - var(--fx-cw) * .55);top:calc(var(--fx-stage-y) + var(--fx-cw) * .7)}.fx-layer .o-bl{left:calc(10px + var(--fx-cw) * .55);top:calc(100% - 8px - var(--fx-cw) * .6)}.fx-layer .o-br{left:calc(100% - 10px - var(--fx-cw) * .55);top:calc(100% - 8px - var(--fx-cw) * .6)}.fx-puff{width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);background:var(--c);opacity:0;clip-path:polygon(25% 0,75% 0,75% 12%,88% 12%,88% 25%,100% 25%,100% 75%,88% 75%,88% 88%,75% 88%,75% 100%,25% 100%,25% 88%,12% 88%,12% 75%,0 75%,0 25%,12% 25%,12% 12%,25% 12%);animation:fx-puff var(--t) steps(14) var(--d) both}@keyframes fx-puff{0%{translate:0 0;scale:.3;opacity:0}8%{opacity:.95}35%{translate:calc(var(--dx) * .7) calc(var(--dy) * .7);scale:1.1;opacity:.9}to{translate:var(--dx) var(--dy);scale:2.4;opacity:0}}.fx-fog{position:absolute;left:0;right:0;top:var(--fx-stage-y);bottom:0;opacity:0;background:radial-gradient(circle at 2px 2px,rgba(235,246,255,.5) 1.5px,transparent 2px) 0 0 / 8px 8px,linear-gradient(180deg,rgba(220,238,255,.55),rgba(200,228,255,.15) 70%,transparent);animation:fx-fog 2.6s steps(10) var(--d) both}@keyframes fx-fog{0%{opacity:0}30%{opacity:.55}to{opacity:0;translate:0 6px}}.fx-bit{width:var(--s);height:calc(var(--s) * 1.5);margin-left:calc(var(--s) / -2);background:var(--c);box-shadow:inset 0 -2px #00000040;opacity:0;animation:fx-bit var(--t) cubic-bezier(.2,.7,.4,1) var(--d) both,fx-flutter .28s steps(2,jump-none) var(--d) infinite}@keyframes fx-bit{0%{translate:0 0;opacity:1;rotate:0deg}30%{translate:var(--mx) var(--my)}88%{opacity:1}to{translate:var(--dx) var(--dy);rotate:var(--spin);opacity:0}}@keyframes fx-flutter{0%,to{scale:1 1}50%{scale:1 .34}}.fx-haze{position:absolute;inset:0;opacity:0;background:radial-gradient(60% 50% at 50% 40%,rgba(110,180,255,.22),transparent 70%),#060a1659;animation:fx-haze 3.6s steps(8) var(--d) both}@keyframes fx-haze{0%,to{opacity:0}15%,85%{opacity:1}}.fx-beam{width:var(--w);height:140cqh;margin-left:calc(var(--w) / -2);transform-origin:50% 0;background:repeating-linear-gradient(180deg,var(--c) 0 6px,color-mix(in srgb,var(--c) 55%,transparent) 6px 8px);mask:linear-gradient(180deg,#000,rgba(0,0,0,.6) 45%,transparent 85%);box-shadow:0 0 6px var(--c),0 0 14px var(--c);mix-blend-mode:screen;opacity:0;animation:fx-sweep var(--t) steps(24) var(--d) both}.fx-beam:before{content:"";position:absolute;left:-3px;top:-3px;width:calc(var(--w) + 6px);height:8px;background:#fff;box-shadow:0 0 10px var(--c)}@keyframes fx-sweep{0%{rotate:var(--a0);opacity:0}8%{opacity:1}50%{rotate:var(--a1)}92%{opacity:1}to{rotate:var(--a0);opacity:0}}.fx-heat{position:absolute;inset:0;opacity:0;background:radial-gradient(80% 40% at 50% calc(var(--fx-stage-y) - 20px),rgba(255,140,40,.45),transparent 70%),#ff5a141f;animation:fx-heat 1.8s steps(6) var(--d) both}@keyframes fx-heat{0%,to{opacity:0}20%{opacity:1}}.fx-flame{width:var(--s);height:var(--h);margin:calc(var(--h) * -1) 0 0 calc(var(--s) / -2);transform-origin:50% 100%;rotate:var(--a);scale:1 0;animation:fx-jet var(--t) steps(18) var(--d) both;filter:drop-shadow(0 0 6px #ff7a1a) drop-shadow(0 0 14px rgba(255,90,20,.6))}.fx-flame b{position:absolute;inset:0;background:linear-gradient(0deg,#fff6c4 0 14%,#ffd84a 14% 32%,#ff9a2e 32% 56%,#ff4d1f 56% 78%,#9a2412 78% 90%,transparent 90%);clip-path:polygon(12% 100%,88% 100%,88% 60%,100% 60%,100% 30%,75% 30%,75% 12%,62% 12%,62% 0,38% 0,38% 18%,25% 18%,25% 36%,0 36%,0 62%,12% 62%);animation:fx-lick .16s steps(2,jump-none) infinite}@keyframes fx-jet{0%{scale:.6 0;opacity:1}12%{scale:1 1.08}25%{scale:1 .84}40%{scale:1.05 1}55%{scale:1 .9}70%{scale:1 1}86%{scale:.8 .55;opacity:1}to{scale:.4 0;opacity:0}}@keyframes fx-lick{0%,to{scale:1 1}50%{scale:-1 .94}}.fx-spark{width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);background:var(--c);box-shadow:0 0 4px var(--c);opacity:0;animation:fx-spark var(--t) steps(10) var(--d) both}@keyframes fx-spark{0%{translate:0 0;opacity:1}40%{translate:var(--mx) var(--my)}to{translate:var(--dx) var(--dy);opacity:0}}.fx-strobe{position:absolute;inset:0;background:#fff;opacity:0;mix-blend-mode:overlay;animation:fx-strobe 1.6s steps(1) 3.6s both}@keyframes fx-strobe{0%,25%,50%,75%{opacity:.55}12%,37%,62%,to{opacity:0}}.fx-tag{position:absolute;left:50%;top:calc(var(--fx-stage-y) + 14px);translate:-50% 0;margin:0;font:800 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;white-space:nowrap;color:#fff;background:#0b1020e6;padding:6px 10px;border:2px solid #8ec2ff;box-shadow:0 4px #04060c,0 0 18px #8ec2ff66;animation:fx-tag var(--life) steps(8) both}.fx-tag em{font-style:normal;color:#9fb3d1;font-weight:700}.fx-pyro .fx-tag{border-color:#ff9a2e;box-shadow:0 4px #04060c,0 0 18px #ff7a1a88}.fx-confetti .fx-tag{border-color:#ff6fd8}.fx-lasers .fx-tag{border-color:#6ff3ff}.fx-finale .fx-tag{border-color:#ffd84a;box-shadow:0 4px #04060c,0 0 22px #ffd84a99}@keyframes fx-tag{0%{opacity:0;translate:-50% -6px}8%,85%{opacity:1;translate:-50% 0}to{opacity:0}}.fx-calm{display:none}@media(prefers-reduced-motion:reduce){.fx-layer .p,.fx-fog,.fx-haze,.fx-heat,.fx-strobe{display:none!important}.fx-calm{display:block;position:absolute;inset:0;opacity:.5;background:radial-gradient(70% 45% at 50% var(--fx-stage-y),var(--calm, #8ec2ff55),transparent 70%)}.fx-pyro{--calm: #ff9a2e55}.fx-confetti{--calm: #ff6fd855}.fx-lasers{--calm: #6ff3ff55}.fx-finale{--calm: #ffd84a66}.fx-tag{animation:none}}.fx-bar{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.fx-bar .fx-title{font:800 10px/1 ui-monospace,Menlo,monospace;letter-spacing:.12em;color:#9fb3d1}.fx-bar button{display:inline-flex;align-items:center;gap:4px;min-width:0;padding:6px 9px;border-radius:0;cursor:pointer;font:800 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em;text-transform:uppercase;color:#eaf2ff;background:#1d2636;border:2px solid #3c4a63;box-shadow:0 3px #05070c}.fx-bar button.ready.fx-cryo{border-color:#cfe9ff;background:#1c3350}.fx-bar button.ready.fx-confetti{border-color:#ff6fd8;background:#3a1d3c}.fx-bar button.ready.fx-lasers{border-color:#6ff3ff;background:#13343c}.fx-bar button.ready.fx-pyro{border-color:#ff9a2e;background:#3e2112}.fx-bar button.ready.fx-finale{border-color:#ffd84a;background:#3a3112;box-shadow:0 3px #05070c,0 0 12px #ffd84a66}.fx-bar button.ready:active{translate:0 2px;box-shadow:0 1px #05070c}.fx-bar button:disabled{cursor:not-allowed;opacity:.55}.fx-bar button.locked{color:#7d8aa3;border-style:dashed}.fx-toast{position:fixed;left:50%;bottom:calc(150px + env(safe-area-inset-bottom));translate:-50% 0;z-index:6000;font:800 12px/1.3 ui-monospace,Menlo,monospace;color:#fff;text-align:center;background:#0b1020f2;border:2px solid #ffd84a;padding:8px 12px;box-shadow:0 4px #04060c,0 0 20px #ffd84a66}.fx-ladder{list-style:none;padding:0;margin:0;display:grid;gap:6px}.fx-ladder li{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border:2px solid #3c4a63;background:#141b27;font:700 12px/1.3 ui-monospace,Menlo,monospace}.fx-ladder li.on{border-color:#8ec2ff}.fx-ladder li.off{opacity:.6;border-style:dashed}.fx-ladder small{color:#9fb3d1}@media(max-width:480px){.fx-bar{gap:4px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.fx-bar button{padding:5px 6px;font-size:10px;gap:3px;flex:none}.fx-bar .fx-title{display:none}}
