:root{--bg:#050208;--card:#0d0816;--line:rgba(200,67,233,.18);--mag:#c843e9;--mag2:#e040fb;--vio:#8b3dff;--cyan:#5ec9f6;--blue:#4c9fe8;--teal:#5ec9f6;--teal2:#4c9fe8;--grad:linear-gradient(90deg,#c843e9,#8b3dff 50%,#5ec9f6);--muted:rgba(236,226,255,.68);--live:#e040fb}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:inherit;text-decoration:none}
header{position:sticky;top:0;z-index:9;display:flex;align-items:center;gap:20px;padding:14px 24px;background:rgba(6,2,12,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:10px;font-family:Orbitron,Audiowide,Inter,sans-serif;font-weight:800;font-size:18px;letter-spacing:.02em}.logo img{width:40px;height:40px;border-radius:50%;box-shadow:0 0 14px rgba(200,67,233,.55),0 0 26px rgba(94,201,246,.25)}.logo .wm span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
nav{display:flex;gap:18px;font-size:14px;color:var(--muted)}nav a:hover,nav a.on{color:#fff}
.spacer{flex:1}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:600}
.live{color:var(--live);border-color:rgba(224,64,251,.4)}.live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--live);animation:p 1.4s infinite}
@keyframes p{50%{opacity:.3}}
.btn{background:var(--grad);color:#0b0016;box-shadow:0 0 18px rgba(200,67,233,.35);border:0;padding:10px 18px;border-radius:999px;font-weight:700;cursor:pointer}
.btn.ghost{background:transparent;color:#fff;border:1px solid var(--line)}
main{max-width:1100px;margin:0 auto;padding:32px 20px 80px}
.hero{text-align:center;padding:40px 0 24px}.hero h1{font-size:clamp(32px,6vw,58px);margin:0 0 10px;letter-spacing:-.03em}.hero p{color:var(--muted);max-width:620px;margin:0 auto 22px}
.tabs{display:flex;gap:8px;justify-content:center;margin:18px 0 28px}
.feed{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.card{background:#000;border:1px solid var(--teal2);border-radius:24px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center}
.tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:12px}
.art{width:100%;aspect-ratio:1;border-radius:20px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.35);font-size:12px;margin-bottom:16px;box-shadow:0 16px 60px #00000080}
.a1{background:linear-gradient(135deg,#1a0630,#c843e9)}.a2{background:linear-gradient(135deg,#0a1440,#4c9fe8)}.a3{background:linear-gradient(135deg,#1a0838,#8b3dff)}.a4{background:linear-gradient(135deg,#061a2e,#5ec9f6)}
.card h3{margin:0 0 4px;font-size:22px}.artist{color:var(--muted);font-weight:600;margin-bottom:8px}.desc{font-style:italic;color:rgba(255,255,255,.45);font-size:14px;margin-bottom:10px}
.genre{font-size:13px;color:rgba(255,255,255,.6);background:rgba(255,255,255,.08);padding:4px 14px;border-radius:999px;margin-bottom:12px}
.stats{display:flex;gap:16px;font-size:13px;color:rgba(255,255,255,.45);margin-bottom:12px}.row{display:flex;gap:8px}
.play{display:flex;gap:8px;margin-bottom:14px}
section h2{font-size:28px;margin:48px 0 16px}
.list{border:1px solid var(--line);border-radius:18px;overflow:hidden}.li{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line)}.li:last-child{border:0}.n{width:28px;color:var(--teal);font-weight:800}.thumb{width:44px;height:44px;border-radius:10px}.li .t{flex:1}.li small{display:block;color:var(--muted)}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.tile{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;text-align:center}.tile .art{border-radius:50%}
.cta{margin-top:56px;padding:36px;border-radius:24px;background:linear-gradient(135deg,rgba(200,67,233,.18),rgba(224,64,251,.12));border:1px solid var(--line);text-align:center}
form{display:grid;gap:12px;max-width:520px;margin:20px auto 0}input,select,textarea{background:#08040f;border:1px solid var(--line);color:#fff;padding:12px;border-radius:12px;font:inherit}
footer{border-top:1px solid var(--line);padding:28px 24px;color:var(--muted);font-size:13px;display:flex;flex-wrap:wrap;gap:18px;justify-content:center}
.ph{font-size:11px;color:#ffb020}
@media(max-width:760px){nav{display:none}}

.hostpick{border:0;padding:0;margin:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.hostpick legend{font-weight:700;margin-bottom:10px;grid-column:1/-1}.hostpick legend small{color:var(--muted);font-weight:400}
.hcard{position:relative;display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.hcard input{position:absolute;opacity:0;pointer-events:none}
.hcard .hph{width:52px;height:52px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px;color:rgba(255,255,255,.4)}
.hcard b{display:block}.hcard small{display:block;color:var(--muted);font-size:12px}
.hcard:hover{border-color:rgba(200,67,233,.5)}
.hcard:has(input:checked){border-color:var(--teal);box-shadow:0 0 0 2px var(--teal),0 0 24px rgba(200,67,233,.25);background:rgba(200,67,233,.08)}
.hcard:has(input:checked):after{content:"✓";position:absolute;top:8px;right:10px;width:20px;height:20px;border-radius:50%;background:var(--teal);color:#0b0016;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}
.hcard:has(input:focus-visible){outline:2px solid #fff;outline-offset:2px}
.hosterr{color:var(--live);font-size:13px;display:none}.hosterr.show{display:block}
.subhost{margin-top:10px;display:inline-block;font-size:13px;padding:8px 14px}

.empty{max-width:620px;margin:10px auto 0;text-align:center;padding:44px 28px;border:1px dashed rgba(200,67,233,.45);border-radius:24px;background:radial-gradient(ellipse at top,rgba(200,67,233,.10),transparent 70%)}
.empty .eico{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--teal);border:1px solid var(--teal2);box-shadow:0 0 30px rgba(200,67,233,.25)}
.empty h3{margin:0 0 8px;font-size:24px}.empty p{color:var(--muted);margin:0 auto 20px;max-width:460px}
.hostempty{grid-column:1/-1;color:var(--muted);font-size:14px;padding:12px 14px;border:1px dashed var(--line);border-radius:14px}
.hph.big{width:96px;height:96px;font-size:28px;color:#fff}
.hph{color:#fff!important;font-size:18px!important;font-weight:800}
.fmsg{min-height:1px;font-size:14px;border-radius:12px}.fmsg.ok{padding:12px 14px;background:rgba(200,67,233,.12);border:1px solid var(--teal);color:#eedcff}.fmsg.err{padding:12px 14px;background:rgba(224,64,251,.12);border:1px solid var(--live);color:#ffc2cd}
button:disabled{opacity:.6;cursor:wait}
.authbox{max-width:620px;margin:0 auto}.tabbtn{background:transparent;color:#fff;cursor:pointer}.tabbtn.on,.amt.on{border-color:var(--teal);color:var(--teal)}
.rolepick{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:12px}
.lbl{display:grid;gap:6px;font-size:13px;color:var(--muted)}.lbl small{color:rgba(255,255,255,.4)}.chk{display:flex;gap:10px;align-items:center;font-size:14px}
.sect{font-weight:700;margin:22px 0 10px;color:var(--teal);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.roleblock{display:grid;gap:12px}
.soon{margin-top:8px;font-size:12px;color:#ffd27a}
.fmsg.info{padding:12px 14px;background:rgba(255,176,32,.10);border:1px solid rgba(255,176,32,.5);color:#ffe2a8}
.balance{border:1px solid var(--teal2);border-radius:18px;padding:18px;margin-bottom:18px;background:rgba(200,67,233,.06)}.bigmoney{font-size:30px;font-weight:800}
.acbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.pfhead{display:flex;gap:22px;align-items:center;margin:20px 0 26px}.pfhead h1{margin:4px 0;font-size:40px}.pfhead .tag{margin:0;text-align:left}
.pfgrid{display:grid;gap:24px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}@media(max-width:760px){.pfgrid{grid-template-columns:1fr}}
.bio{white-space:pre-wrap;color:rgba(255,255,255,.8)}.links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.card2{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px;display:grid;gap:10px}
.tipamts{display:flex;gap:8px;flex-wrap:wrap}.amt{background:transparent;color:#fff;cursor:pointer}
.badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;margin-right:6px;border:1px solid var(--line)}.badge.b1{background:var(--teal);color:#0b0016;border-color:var(--teal)}.badge.b2{border-color:var(--teal);color:var(--teal)}.badge.b0{border-color:rgba(255,176,32,.6);color:#ffd27a}
.qctl{display:flex;justify-content:center;margin-bottom:16px}.qctl select{min-width:300px}
.boostbox{border:1px solid var(--teal2);border-radius:16px;padding:14px;background:rgba(200,67,233,.06)}
.memnote{text-align:center;color:var(--muted);font-size:14px;margin:-10px 0 18px}.memnote a{color:var(--teal)}
.tiprow{display:grid;gap:12px;grid-template-columns:2fr 1fr}.emptysmall{color:var(--muted);font-size:14px;text-align:center}
.linkbtn{background:none;border:0;color:var(--teal);font:inherit;cursor:pointer;text-decoration:underline;padding:0}

.chooser{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:980px;margin:0 auto}
.choice{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px 22px;color:#fff;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s;min-height:220px}
.choice:hover,.choice:focus-visible{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 0 28px rgba(200,67,233,.25)}
.choice b{font-size:24px}.choice small{color:var(--muted);font-size:14px;line-height:1.45;flex:1}.cgo{color:var(--teal);font-weight:700}
.cico{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px}
.haveacct{text-align:center;color:var(--muted);font-size:15px;margin-top:22px}.haveacct a{color:var(--teal)}
.perks{color:var(--muted);margin:0 0 14px;padding-left:20px;line-height:1.7}

/* ---- neon brand layer ---- */
body{background:radial-gradient(900px 500px at 10% -10%,rgba(200,67,233,.16),transparent 60%),radial-gradient(800px 500px at 100% 0%,rgba(94,201,246,.12),transparent 60%),var(--bg);background-attachment:fixed;min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.35;background-image:linear-gradient(90deg,rgba(94,201,246,.22) 0 14px,transparent 14px),linear-gradient(90deg,rgba(200,67,233,.2) 0 8px,transparent 8px);background-size:220px 37px,310px 53px;background-position:93% 11%,4% 63%;background-repeat:no-repeat;filter:blur(.2px)}
header,main,footer{position:relative;z-index:1}
header{border-bottom:1px solid transparent;border-image:var(--grad) 1}
h1,h2,h3,.sect,legend,.choice b{font-family:Orbitron,Audiowide,Inter,sans-serif;letter-spacing:.01em}
.hero h1{background:linear-gradient(90deg,#fff,#eedcff 40%,#5ec9f6);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 18px rgba(200,67,233,.35))}
.hero:after{content:"";display:block;height:34px;margin:22px auto 0;max-width:520px;opacity:.85;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 34'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%23c843e9'/%3E%3Cstop offset='1' stop-color='%235ec9f6'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 17h150l6-9 6 18 6-26 6 32 6-24 6 16 6-10 6 6 6-4h40l5-7 5 14 5-20 5 26 5-18 5 10h40l6-12 6 24 6-30 6 34 6-22 6 12 6-6h150' fill='none' stroke='url(%23g)' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat}
.herologo{display:block;margin:0 auto 18px;width:min(260px,60vw);height:auto;border-radius:50%;box-shadow:0 0 40px rgba(200,67,233,.45),0 0 90px rgba(94,201,246,.22)}
.card,.card2,.hcard,.choice,.li,.empty,.cta,.authbox form,.balance{box-shadow:0 0 0 1px rgba(200,67,233,.06)}
.card:hover,.card2:hover,.li:hover{box-shadow:0 0 22px rgba(200,67,233,.18),0 0 0 1px rgba(94,201,246,.25)}
a.pill:hover,nav a:hover{color:#fff;text-shadow:0 0 10px rgba(94,201,246,.6)}
.btn.ghost{background:rgba(13,8,22,.6);border:1px solid rgba(94,201,246,.35);color:#fff;box-shadow:none}.btn.ghost:hover{border-color:var(--mag);box-shadow:0 0 14px rgba(200,67,233,.35)}
.btn:hover{filter:brightness(1.1)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--mag)!important;box-shadow:0 0 0 2px rgba(200,67,233,.35)}
.hcard:has(input:checked){border-color:var(--mag);box-shadow:0 0 0 2px var(--mag),0 0 24px rgba(200,67,233,.35);background:rgba(200,67,233,.08)}
.hcard:has(input:checked):after{background:var(--grad)}
.choice:hover,.choice:focus-visible{border-color:var(--mag);box-shadow:0 0 28px rgba(200,67,233,.35),0 0 60px rgba(94,201,246,.12)}
.cgo,.haveacct a,.linkbtn{color:var(--cyan)}
footer{border-top:1px solid transparent;border-image:var(--grad) 1}
/* ---- age gate ---- */
html.gated body{overflow:hidden}
html.gated body>*:not(#svgate){visibility:hidden}
#svgate{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;background:radial-gradient(700px 500px at 50% 30%,rgba(200,67,233,.25),transparent 70%),radial-gradient(600px 400px at 50% 90%,rgba(94,201,246,.15),transparent 70%),#050208}
.gatebox{max-width:520px;width:100%;text-align:center;background:rgba(13,8,22,.85);border:1px solid rgba(200,67,233,.4);border-radius:24px;padding:28px 24px;box-shadow:0 0 40px rgba(200,67,233,.3),0 0 80px rgba(94,201,246,.12)}
.gatelogo{width:180px;height:180px;border-radius:50%;box-shadow:0 0 36px rgba(200,67,233,.5),0 0 70px rgba(94,201,246,.25)}
.gatebox h2{font-size:22px;margin:16px 0 6px;line-height:1.3}.gatebox p{color:var(--muted);margin:0 0 16px}
.dob{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:10px;text-align:left}.dob label{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:4px}
.dob select{width:100%;padding:12px;border-radius:12px;background:#0b0614;color:#fff;border:1px solid rgba(94,201,246,.35);font:inherit}
.gatebtns{display:flex;gap:10px;justify-content:center;margin-top:16px}.gatebtns .btn{min-width:120px}
.gatemsg{color:#ffb4f0;min-height:20px;margin-top:10px;font-size:14px}
.nojs{position:fixed;inset:0;z-index:1001;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;background:#050208;color:#fff;font-family:Inter,sans-serif}
.verifybanner{background:linear-gradient(90deg,rgba(200,67,233,.18),rgba(94,201,246,.14));border:1px solid rgba(200,67,233,.45);border-radius:16px;padding:14px 16px;margin-bottom:16px}
.agecheck{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--muted);margin:6px 0 10px}

html.svonb main{visibility:hidden}

/* ---- live ---- */
.livebadge,.offbadge{display:inline-flex;align-items:center;gap:6px;font-family:Orbitron,sans-serif;font-size:12px;font-weight:800;letter-spacing:.12em;padding:5px 10px;border-radius:999px}
.livebadge{background:linear-gradient(90deg,#e040fb,#c843e9);color:#12001f;box-shadow:0 0 16px rgba(224,64,251,.7);animation:lv 1.6s infinite}.livebadge:before{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
@keyframes lv{50%{box-shadow:0 0 30px rgba(224,64,251,.95)}}
.offbadge{background:rgba(255,255,255,.08);color:var(--muted);border:1px solid var(--line)}
.pill.live.idle{opacity:.7}
.livewrap{border:1px solid rgba(224,64,251,.5);border-radius:22px;padding:16px;margin-bottom:22px;background:rgba(13,8,22,.75);box-shadow:0 0 34px rgba(200,67,233,.35),0 0 80px rgba(94,201,246,.12)}
.livetop{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.livetop b{font-family:Orbitron,sans-serif;font-size:20px}.livetop span:not(.livebadge){color:var(--muted)}
.livegrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:14px}.livegrid.nochat{grid-template-columns:1fr}
@media(max-width:860px){.livegrid{grid-template-columns:1fr}}
.liveframe{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 0 0 1px rgba(94,201,246,.3)}.liveframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.liveaudio{border-radius:16px;padding:14px;background:#08040f;border:1px solid rgba(94,201,246,.3)}.liveaudio iframe{width:100%;border:0;border-radius:12px}.liveaudio audio{width:100%}.liveaudio small{color:var(--muted)}
.livechat{width:100%;height:100%;min-height:420px;border:0;border-radius:16px;background:#08040f}
.livebelow{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:14px;margin-top:6px;align-items:start}@media(max-width:860px){.livebelow{grid-template-columns:1fr}}
.liveactions{display:flex;flex-direction:column;gap:10px;margin-top:40px}
.offline{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:14px 16px;border-radius:16px;border:1px dashed var(--line);margin-bottom:18px;background:rgba(13,8,22,.6)}.offline span:last-child{color:var(--muted)}
.npcard{display:flex;gap:14px;align-items:center;margin-top:14px;padding:12px;border-radius:16px;background:linear-gradient(90deg,rgba(200,67,233,.16),rgba(94,201,246,.1));border:1px solid rgba(200,67,233,.4)}
.npcover{width:92px;height:92px;flex:none;border-radius:12px;background:#1a0630 center/cover;box-shadow:0 0 16px rgba(94,201,246,.3)}.npcover.blank{display:flex;align-items:center;justify-content:center;font-size:34px}
.npinfo{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.npinfo small{font-family:Orbitron,sans-serif;letter-spacing:.16em;font-size:11px;color:var(--cyan)}.npinfo b{font-size:20px}.npinfo span a{color:var(--cyan)}.npinfo em{font-style:normal;color:var(--muted);font-size:12px}
.npbar{height:5px;border-radius:5px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:6px}.npbar i{display:block;height:100%;background:var(--grad)}
.qcover{width:44px;height:44px;flex:none;border-radius:8px;background:#1a0630 center/cover;display:inline-flex;align-items:center;justify-content:center;margin-right:10px}
.li.playing{border-color:var(--mag);box-shadow:0 0 16px rgba(200,67,233,.3)}
.stgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:900px){.stgrid{grid-template-columns:1fr}}
.stgrid .card2{margin-bottom:16px}.ststatus{margin-bottom:16px}.ststatus a{color:var(--cyan)}
.stctl{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.mutedp{color:var(--muted);font-size:13px;line-height:1.5}
.mxrow{display:grid;grid-template-columns:1fr 1fr;gap:10px}#mxpreview{width:100%;border-radius:14px;background:#000;margin:8px 0;aspect-ratio:16/9;object-fit:cover}
.mxmeter{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--muted);margin:6px 0 10px}.meter{flex:1;height:10px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden}.meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#5ec9f6,#c843e9,#e040fb);transition:width .08s}
input[type=range]{width:100%;accent-color:#c843e9}.howto ol{padding-left:20px;line-height:1.7;color:#eedcff}.howto code,.golive code{background:#08040f;border:1px solid var(--line);padding:2px 6px;border-radius:6px;font-size:12px;word-break:break-all}
.livesec h2{display:flex;align-items:center;gap:10px}.livecount{font-size:14px;padding:2px 10px;border-radius:999px;background:var(--grad);color:#12001f}
.livetile{position:relative;display:block}.livetile .livebadge{position:absolute;top:10px;left:10px}.tilenp{font-size:12px;color:var(--cyan);margin-top:6px}
.ststatus{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:8px 12px}.ststatus>*{flex:none}
.livebadge,.offbadge{width:auto;align-self:center}.mixer .btn,.stctl .btn,.golive .btn{width:auto}
/* ---- chat ---- */
#svchat{position:fixed;right:18px;bottom:84px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:Inter,sans-serif}
.chbubble{position:relative;display:flex;align-items:center;gap:8px;border:0;cursor:pointer;padding:12px 18px;border-radius:999px;font:700 15px Inter,sans-serif;color:#12001f;background:var(--grad);box-shadow:0 0 22px rgba(200,67,233,.65),0 0 46px rgba(94,201,246,.3)}
.chbubble:hover{transform:translateY(-1px)}#svchat.open .chbubble span{display:none}
.chun{display:inline-flex;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ff3d7f;color:#fff;font:700 11px Inter,sans-serif;font-style:normal;align-items:center;justify-content:center;box-shadow:0 0 10px #ff3d7f}
.chbubble .chun{position:absolute;top:-6px;right:-6px}
.chpanel{width:min(380px,calc(100vw - 30px));height:min(560px,calc(100vh - 170px));border-radius:20px;overflow:hidden;background:rgba(10,5,18,.97);border:1px solid rgba(200,67,233,.55);box-shadow:0 0 30px rgba(200,67,233,.45),0 0 70px rgba(94,201,246,.15)}
.chpanel[hidden]{display:none}
.chui{display:flex;flex-direction:column;height:100%;color:#f2e9ff}.chui.full{height:min(72vh,760px);border:1px solid var(--line);border-radius:20px;overflow:hidden;background:rgba(10,5,18,.85);box-shadow:0 0 30px rgba(200,67,233,.2)}
.chui.embed{height:100%;min-height:420px;border-radius:16px;overflow:hidden;background:#08040f;border:1px solid rgba(94,201,246,.3)}
.chtabs{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--line);align-items:center}.chtabs button{flex:1;border:1px solid var(--line);background:transparent;color:var(--muted);padding:8px;border-radius:999px;font:700 13px Orbitron,sans-serif;letter-spacing:.06em;cursor:pointer}
.chtabs button.on{background:var(--grad);color:#12001f;border-color:transparent;box-shadow:0 0 14px rgba(200,67,233,.5)}.chfull{color:var(--cyan);text-decoration:none;font-size:20px;padding:0 6px}
.chbody{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto}
.chsplit{display:grid;grid-template-columns:280px 1fr;height:100%;min-height:0}.chside{border-right:1px solid var(--line);overflow:auto}.chmain{min-height:0;display:flex;flex-direction:column}
@media(max-width:760px){.chsplit{grid-template-columns:1fr;grid-template-rows:auto 1fr}.chside{max-height:200px;border-right:0;border-bottom:1px solid var(--line)}}
.chlist{padding:8px;display:flex;flex-direction:column;gap:4px}.chsect{font:700 11px Orbitron,sans-serif;letter-spacing:.14em;color:var(--cyan);margin:10px 6px 4px}.chnone{color:var(--muted);font-size:13px;padding:4px 8px}
.chroomli{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;width:100%;border:1px solid transparent;background:rgba(255,255,255,.03);color:#f2e9ff;padding:9px 11px;border-radius:12px;cursor:pointer;font:14px Inter,sans-serif}
.chroomli small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.chroomli:hover,.chroomli.on{border-color:rgba(200,67,233,.6);box-shadow:0 0 12px rgba(200,67,233,.25)}
.chlive{font:800 10px Orbitron,sans-serif;color:#12001f;background:var(--live);padding:2px 6px;border-radius:6px}
.chnew{margin:10px 4px}.chnew summary{cursor:pointer;color:var(--cyan);font-size:13px}.chnew form{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.chnew input,.chform textarea{background:#08040f;color:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font:14px Inter,sans-serif}
.chroom{display:flex;flex-direction:column;height:100%;min-height:0}.chhead{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.chhead small{display:block;color:var(--muted);font-size:12px}
.chtitle{font-family:Orbitron,sans-serif;font-size:14px}.chback{border:0;background:transparent;color:var(--cyan);font-size:26px;cursor:pointer;line-height:1}
.chmsgs{flex:1;overflow:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px;min-height:120px}
.chmsg{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.05)}.chmsg.mine{background:linear-gradient(90deg,rgba(200,67,233,.16),rgba(94,201,246,.08));border-color:rgba(200,67,233,.35)}
.chmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px}.chmeta a{color:#fff;font-weight:700;text-decoration:none}.chmeta a:hover{color:var(--cyan)}.chmeta time{color:var(--muted)}
.chrole{font:700 9px Orbitron,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:6px;background:rgba(94,201,246,.18);color:var(--cyan)}.chrole.r-host{background:rgba(224,64,251,.2);color:#f0a6ff}.chrole.r-artist{background:rgba(139,61,255,.25);color:#cdb3ff}
.chacts{margin-left:auto;display:none;gap:6px}.chmsg:hover .chacts,.chmsg:focus-within .chacts{display:inline-flex}.chacts button{border:0;background:transparent;color:var(--muted);font-size:11px;cursor:pointer;padding:0}.chacts button:hover{color:#ff7aa8}
.chtext{margin-top:3px;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.45}
.chform{border-top:1px solid var(--line);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.chform textarea{resize:none}.chbar{display:flex;gap:8px;align-items:center}.chbar .btn{margin-left:auto;padding:8px 16px}.chcount{color:var(--muted);font-size:11px}
.cherr{color:#ff7aa8;font-size:12px}.chempty{color:var(--muted);text-align:center;margin:auto;padding:20px;font-size:14px}
.chgate{text-align:center;margin:auto;padding:24px;display:flex;flex-direction:column;gap:10px;align-items:center}.chgate p{color:var(--muted);font-size:14px;margin:0}.chgate small{color:var(--muted)}.chgate small a{color:var(--cyan)}.chgate h3{margin:0}
.chatcol{min-height:420px;display:flex;flex-direction:column}.chatcol>#hostchat{flex:1;display:flex}.chatcol>#hostchat>.chui{flex:1}
@media print{#svchat{display:none}}
.chun[hidden]{display:none!important}
/* v15: private chats, uploads, track library, players */
.chpriv{font-size:12px;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}.chpriv b{color:#fff}
.chhead .chtools{margin-left:auto;display:flex;gap:6px}.chtools button{border:1px solid var(--line);background:transparent;color:var(--cyan);border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer}
.chmembers{display:block;color:var(--muted);font-size:11px}.chnew small{display:block;color:var(--muted);font-size:11px;padding:4px 0}
.upbox{border:1px dashed var(--line);border-radius:14px;padding:14px;display:grid;gap:8px;background:rgba(200,67,233,.04)}
.upbox label.ufile{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.upbox input[type=file]{color:var(--muted);max-width:100%}
.upbox small{color:var(--muted)}.uprow{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.upbar{height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.upbar i{display:block;height:100%;width:0;background:var(--grad);transition:width .2s}
.upst{font-size:13px;color:var(--muted)}.upst.ok{color:var(--cyan)}.upst.err{color:#ff8fb1}
.cprev{width:84px;height:84px;border-radius:12px;background:#120a1e center/cover;border:1px solid var(--line);display:grid;place-items:center;color:var(--muted);font-size:26px}
.srcpick{display:flex;gap:8px;flex-wrap:wrap}.srcpick label{border:1px solid var(--line);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:14px}.srcpick input{margin-right:6px}
.tlist{display:grid;gap:10px}.trk{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px}
.trk .tcov{width:64px;height:64px;border-radius:10px;background:#120a1e center/cover;display:grid;place-items:center;color:var(--muted);font-size:22px}
.trk b{display:block}.trk small{color:var(--muted)}.trk audio{width:100%;height:34px;margin-top:6px}
.trk .tacts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px;font-size:13px}.trk .tacts button,.trk .tacts select{border:1px solid var(--line);background:transparent;color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer}
.trk .tacts select{background:#0d0816}.trk .tmsg{font-size:12px;color:var(--cyan)}.trk .tmsg.err{color:#ff8fb1}
.qaudio{width:100%;height:32px;margin-top:6px}.qcov{width:48px;height:48px;border-radius:8px;background:#120a1e center/cover;flex:none}
.svwhep video{width:100%;max-height:70vh;background:#000;border-radius:14px}.svwhep small{display:block;color:var(--muted);margin-top:6px}
.btn.msgbtn{background:transparent;border:1px solid var(--cyan);color:var(--cyan)}
.chroom .chform{max-width:none;margin:0;width:100%}
