:root{--bg: #07030f;--bg-2: #0f0620;--panel: rgba(22, 10, 42, .78);--panel-2: rgba(40, 18, 70, .85);--border: rgba(255, 0, 204, .22);--border-strong: rgba(255, 0, 204, .55);--text: #f6ecff;--muted: #b48ad6;--pink: #ff2ec4;--pink-2: #c800ff;--cyan: #19e6ff;--gold: #ffd166;--primary: var(--pink);--primary-2: var(--pink-2);--danger: #ff3b5c;--ok: #3dff9a;--busy: #ffb020;--radius: 16px;--glow-pink: 0 0 10px rgba(255, 46, 196, .6), 0 0 28px rgba(255, 46, 196, .35);--glow-cyan: 0 0 10px rgba(25, 230, 255, .6), 0 0 28px rgba(25, 230, 255, .3);--font-display: "Bebas Neue", "Impact", "Arial Narrow", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}body:before,body:after{content:"";position:fixed;top:-30%;right:-30%;bottom:-30%;left:-30%;z-index:-1;pointer-events:none;background:radial-gradient(40% 30% at 20% 20%,rgba(255,46,196,.35),transparent 70%),radial-gradient(35% 28% at 80% 30%,rgba(25,230,255,.28),transparent 70%),radial-gradient(45% 35% at 55% 85%,rgba(200,0,255,.3),transparent 70%);animation:lights 22s linear infinite;filter:blur(20px)}body:after{background:radial-gradient(30% 25% at 70% 75%,rgba(255,209,102,.16),transparent 70%),radial-gradient(25% 20% at 30% 70%,rgba(25,230,255,.2),transparent 70%);animation-direction:reverse;animation-duration:31s}@keyframes lights{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.15)}to{transform:rotate(360deg) scale(1)}}@media (prefers-reduced-motion: reduce){body:before,body:after,.live-dot,.brand-icon{animation:none!important}}a{color:var(--cyan);text-decoration:none}a:hover{text-shadow:var(--glow-cyan)}h1,h2,h3{margin:0 0 12px;letter-spacing:.02em}h1{font-family:var(--font-display);font-size:42px;font-weight:400;letter-spacing:.06em;line-height:1}h2{font-family:var(--font-display);font-size:26px;font-weight:400;letter-spacing:.05em}h3{font-size:16px;font-weight:800}h1 span,.brand span{color:var(--pink);text-shadow:var(--glow-pink)}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:12px}.neon-text{color:var(--cyan);text-shadow:var(--glow-cyan);letter-spacing:.04em;text-transform:uppercase;font-size:13px}.center{display:grid;place-items:center;min-height:60vh;color:var(--muted)}.error{background:#ff3b5c29;border:1px solid rgba(255,59,92,.5);color:#ff9db0;padding:10px 12px;border-radius:10px;margin:10px 0}.info{background:#19e6ff1a;border:1px solid rgba(25,230,255,.4);color:var(--cyan);padding:10px 12px;border-radius:10px;margin:10px 0}.neon-info{box-shadow:var(--glow-cyan);text-align:center;font-weight:600}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:24px;padding:12px 24px;background:#07030fb3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);box-shadow:0 1px #ff2ec440,0 8px 30px #00000080;position:sticky;top:0;z-index:10}.brand{font-family:var(--font-display);font-weight:400;font-size:28px;letter-spacing:.08em;color:var(--text);display:flex;align-items:center;gap:8px}.brand-icon{color:var(--cyan);text-shadow:var(--glow-cyan);font-size:20px;animation:pulseIcon 2.4s ease-in-out infinite}@keyframes pulseIcon{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.topbar nav{display:flex;gap:6px;flex:1}.topbar nav a{padding:8px 14px;border-radius:999px;color:var(--muted);font-weight:600;font-size:14px;border:1px solid transparent}.topbar nav a.active,.topbar nav a:hover{background:#ff2ec41f;color:var(--text);border-color:var(--border);text-shadow:none}.userbox{display:flex;align-items:center;gap:12px}.content{padding:28px 24px 60px;max-width:1200px;width:100%;margin:0 auto}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.on{background:var(--ok);box-shadow:0 0 10px var(--ok)}.dot.off{background:var(--danger);box-shadow:0 0 10px var(--danger)}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 40px #00000073,inset 0 1px #ffffff0f;transition:border-color .2s,box-shadow .2s,transform .2s}a.card:hover{border-color:var(--border-strong);box-shadow:0 10px 40px #00000080,var(--glow-pink);transform:translateY(-2px);text-shadow:none}.card.glow{box-shadow:var(--glow-pink),0 10px 40px #00000080}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 800px){.two-col{grid-template-columns:1fr}.topbar{flex-wrap:wrap}h1{font-size:34px}}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;flex-wrap:wrap;gap:12px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}label.check{flex-direction:row;align-items:center;color:var(--text);text-transform:none;letter-spacing:0}input,select,textarea{background:#07030fb3;color:var(--text);border:1px solid var(--border);border-radius:10px;padding:11px 13px;font:inherit;font-size:14px;width:100%;text-transform:none;letter-spacing:0;transition:border-color .15s,box-shadow .15s}input[type=checkbox]{width:18px;height:18px;accent-color:var(--pink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cyan);box-shadow:var(--glow-cyan)}select{margin-bottom:10px}select option{background:#140a26}.btn{background:#281246e6;color:var(--text);border:1px solid var(--border);border-radius:999px;padding:10px 18px;font:inherit;font-weight:700;font-size:14px;cursor:pointer;display:inline-block;transition:transform .12s,box-shadow .2s,filter .2s}.btn:hover{filter:brightness(1.2);box-shadow:var(--glow-pink);transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn.primary{background:linear-gradient(135deg,var(--pink) 0%,var(--pink-2) 100%);border-color:transparent;color:#fff;box-shadow:0 0 18px #ff2ec473}.btn.primary:hover{box-shadow:0 0 28px #ff2ec4bf}.btn.danger{background:linear-gradient(135deg,#ff3b5c,#c2003a);border-color:transparent;color:#fff}.btn.danger:hover{box-shadow:0 0 22px #ff3b5cb3}.btn.ghost{background:transparent}.btn.small{padding:6px 12px;font-size:13px}.pill{background:#07030fb3;border:1px solid var(--border);border-radius:999px;padding:6px 14px;color:var(--text);font-weight:700}.pill.big{font-size:22px;padding:10px 22px}.pill.neon{border-color:var(--cyan);color:var(--cyan);box-shadow:var(--glow-cyan)}.badge{display:inline-block;background:#ff2ec42e;color:var(--pink);padding:2px 8px;border-radius:6px;font-size:12px;margin:6px 0;font-weight:700}.status{font-size:13px;font-weight:700}.status.on{color:var(--ok);text-shadow:0 0 8px rgba(61,255,154,.7)}.status.busy{color:var(--busy)}.status.off{color:var(--muted)}.tag{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;background:#ffffff14;letter-spacing:.03em}.tag.in_progress,.tag.ringing{background:#3dff9a2e;color:var(--ok)}.tag.scheduled,.tag.requested{background:#ff2ec42e;color:var(--pink)}.tag.cancelled,.tag.no_show,.tag.failed{color:var(--muted)}.tag.accept{background:#ffd1662e;color:var(--gold)}.pos{color:var(--ok)}.neg{color:#ff9db0}.dim{opacity:.5}.celeb{display:flex;gap:14px;align-items:center;color:var(--text)}.avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--pink-2),var(--cyan));display:grid;place-items:center;font-size:22px;font-weight:800;background-size:cover;flex-shrink:0;box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--pink),var(--glow-pink)}.avatar.big{width:96px;height:96px;font-size:38px}.profile-head{display:flex;gap:20px;align-items:center}.content .thumb{height:120px;border-radius:10px;background:var(--panel-2) center/cover;display:grid;place-items:center;font-size:36px;margin-bottom:10px}.pack{text-align:center}.big-num{font-family:var(--font-display);font-size:36px;letter-spacing:.04em;margin:6px 0;color:var(--cyan);text-shadow:var(--glow-cyan)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{text-align:left;padding:10px 8px;border-bottom:1px solid rgba(255,46,196,.12);vertical-align:middle}.table th{color:var(--muted);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.table tr:hover td{background:#ff2ec40d}.tabs{display:flex;gap:6px;margin-bottom:18px;flex-wrap:wrap}.tabs button{background:transparent;border:1px solid var(--border);color:var(--muted);padding:8px 16px;border-radius:999px;cursor:pointer;font:inherit;font-weight:700;font-size:13px}.tabs button.active{background:linear-gradient(135deg,var(--pink),var(--pink-2));border-color:transparent;color:#fff;box-shadow:var(--glow-pink)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:100%;max-width:420px;text-align:center;border-color:var(--border-strong);box-shadow:var(--glow-pink),0 20px 60px #0009}.auth-card h1{font-size:52px}.auth-card label{text-align:left}.auth-card .btn{width:100%;margin-top:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#03000ac7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;z-index:100;padding:20px}.modal{background:#140a26;border:1px solid var(--border-strong);border-radius:var(--radius);padding:24px;width:100%;max-width:440px;max-height:90vh;overflow:auto;box-shadow:var(--glow-pink),0 30px 80px #000000b3}.modal.wide{max-width:860px}.modal.ring{border-color:var(--ok);animation:pulse 1.2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #3dff9a80}50%{box-shadow:0 0 0 18px #3dff9a00}}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:#140a26;border:1px solid var(--cyan);box-shadow:var(--glow-cyan);padding:12px 20px;border-radius:999px;z-index:200;font-weight:600}.center-card{max-width:520px;margin:40px auto;text-align:center}.end-emoji{margin-bottom:8px;color:var(--pink);filter:drop-shadow(0 0 12px rgba(255,46,196,.8))}.room{display:flex;flex-direction:column;gap:14px}.room-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.room-who{display:flex;align-items:center;gap:10px;font-size:16px}.live-dot{width:12px;height:12px;border-radius:50%;background:var(--pink);box-shadow:0 0 12px var(--pink);animation:livePulse 1.3s ease-in-out infinite}@keyframes livePulse{0%,to{transform:scale(.85);opacity:.7}50%{transform:scale(1.15);opacity:1}}.timer{font-family:var(--font-display);font-size:40px;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--cyan);text-shadow:var(--glow-cyan);line-height:1}.timer.alert{color:var(--danger);text-shadow:0 0 14px rgba(255,59,92,.8);animation:blink 1s steps(2) infinite}@keyframes blink{to{opacity:.35}}.stage{position:relative;background:#000;border-radius:var(--radius);overflow:hidden;aspect-ratio:16/9;border:1px solid var(--border-strong);box-shadow:var(--glow-pink),0 30px 80px #000000b3}.stage .remote{width:100%;height:100%;object-fit:cover}.stage .local{position:absolute;right:14px;bottom:14px;width:22%;min-width:120px;border-radius:10px;border:2px solid var(--cyan);box-shadow:var(--glow-cyan);object-fit:cover;z-index:4}.warn-overlay{position:absolute;top:14px;left:50%;transform:translate(-50%);background:#ff3b5ceb;padding:8px 18px;border-radius:999px;font-weight:800;z-index:6;box-shadow:0 0 20px #ff3b5ccc}.controls{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.action-bar{position:absolute;top:14px;left:14px;right:14px;z-index:6;display:flex;align-items:center;gap:14px;padding:10px 16px;background:linear-gradient(90deg,#c800ff8c,#19e6ff59);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);border-radius:14px;box-shadow:var(--glow-pink);animation:slideDown .4s ease-out}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:none;opacity:1}}.action-emoji{display:inline-flex;color:#fff;animation:bounce .9s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(25,230,255,.9))}@keyframes bounce{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-6px) rotate(6deg)}}.action-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.action-progress{height:6px;border-radius:999px;background:#0006;overflow:hidden;margin-top:4px}.action-progress-fill{height:100%;background:linear-gradient(90deg,var(--cyan),var(--pink));box-shadow:0 0 10px var(--cyan);transition:width .25s linear}.action-time{font-family:var(--font-display);font-size:30px;letter-spacing:.06em;color:#fff;text-shadow:var(--glow-cyan)}.request-alert{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:7;display:flex;gap:18px;align-items:center;width:min(92%,520px);padding:20px 22px;border-radius:20px;background:linear-gradient(145deg,#140a26f5,#3c0a5af5);border:2px solid var(--gold);box-shadow:0 0 0 6px #ffd16626,0 0 40px #ffd16699,0 30px 80px #000c;animation:popIn .35s cubic-bezier(.2,1.4,.4,1),ringGold 1.4s ease-in-out infinite .4s}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(.6);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes ringGold{0%,to{box-shadow:0 0 0 6px #ffd16626,0 0 40px #ffd16699,0 30px 80px #000c}50%{box-shadow:0 0 0 14px #ffd16600,0 0 60px #ffd166e6,0 30px 80px #000c}}.request-emoji{display:inline-flex;color:var(--gold);filter:drop-shadow(0 0 16px rgba(255,209,102,.8));animation:bounce .9s ease-in-out infinite}.request-body{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.request-title{color:var(--muted);font-size:14px}.request-title strong{color:var(--text)}.request-name{font-family:var(--font-display);font-size:34px;letter-spacing:.05em;color:var(--gold);text-shadow:0 0 14px rgba(255,209,102,.8);line-height:1}.request-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.request-countdown{height:5px;border-radius:999px;background:#00000080;overflow:hidden;margin:4px 0 8px}.request-countdown>div{height:100%;background:linear-gradient(90deg,var(--gold),var(--pink));transition:width .25s linear;box-shadow:0 0 8px var(--gold)}@media (max-width: 600px){.request-alert{flex-direction:column;text-align:center;padding:16px}.request-meta,.request-body .row{justify-content:center}}.pending-banner{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:#140a26eb;border:1px solid var(--gold);box-shadow:0 0 20px #ffd16680;font-size:14px;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,209,102,.3);border-top-color:var(--gold);animation:spin .8s linear infinite;flex-shrink:0}.gift-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:5}.gift-float{position:absolute;bottom:10%;display:flex;flex-direction:column;align-items:center;animation:floatUp 3.8s ease-out forwards}.gift-emoji{display:inline-flex;color:var(--pink);filter:drop-shadow(0 0 14px rgba(255,46,196,.9))}.gift-label{background:#07030fcc;border:1px solid var(--pink);box-shadow:var(--glow-pink);padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}@keyframes floatUp{0%{transform:translateY(0) scale(.5) rotate(-8deg);opacity:0}12%{opacity:1;transform:translateY(-24px) scale(1.2) rotate(6deg)}60%{transform:translateY(-180px) scale(1) rotate(-4deg);opacity:1}to{transform:translateY(-340px) scale(.9) rotate(4deg);opacity:0}}.mtx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px;margin-top:12px}.mtx{background:#07030f99;border:1px solid var(--border);border-radius:14px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text);cursor:pointer;font:inherit;transition:transform .12s,box-shadow .2s,border-color .2s}.mtx:hover{border-color:var(--pink);box-shadow:var(--glow-pink);transform:translateY(-3px) scale(1.03)}.mtx:active{transform:scale(.97)}.mtx:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.mtx-action{border-color:#ffd16673;background:linear-gradient(180deg,#ffd16614,#07030f99)}.mtx-action:hover{border-color:var(--gold);box-shadow:0 0 18px #ffd16680}.mtx-emoji{display:inline-flex;color:var(--cyan);filter:drop-shadow(0 0 8px rgba(25,230,255,.6))}.mtx-action .mtx-emoji{color:var(--gold);filter:drop-shadow(0 0 8px rgba(255,209,102,.6))}.mtx-name{font-weight:700;font-size:13px;text-align:center}.mtx-price{color:var(--cyan);font-weight:800;font-size:12px}.mtx-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-top:2px}.mtx-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px;font-size:14px}.bars{display:flex;gap:6px;align-items:flex-end;height:160px;overflow-x:auto;padding-top:10px}.bar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:34px;font-size:10px;color:var(--muted)}.bar-fill{width:24px;background:linear-gradient(180deg,var(--cyan),var(--pink));border-radius:4px 4px 0 0;min-height:2px;box-shadow:var(--glow-pink)}.icon{vertical-align:-.18em;flex-shrink:0}.btn .icon,h2 .icon,.tag .icon,.pill .icon,.status .icon{margin-right:4px}.status .icon{vertical-align:0}.conn.ok{color:var(--ok)}.controls-note{max-width:420px;text-align:center;align-self:center}.brand-icon{display:inline-flex}.avatar.clickable{cursor:zoom-in;transition:transform .15s,box-shadow .15s}.avatar.clickable:hover{transform:scale(1.05);box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--cyan),var(--glow-cyan)}.file-btn{position:relative;overflow:hidden;margin:0;text-transform:none;letter-spacing:0;color:#fff}.file-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#03000aeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;cursor:zoom-out;animation:fadeIn .2s ease-out}.lightbox img{max-width:min(92vw,900px);max-height:82vh;border-radius:18px;border:2px solid var(--pink);box-shadow:var(--glow-pink),0 30px 80px #000c;cursor:default;object-fit:contain}.lightbox-close{position:absolute;top:20px;right:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tz-select{width:auto;max-width:190px;padding:6px 10px;font-size:12px;margin:0;border-radius:999px}@media (max-width: 800px){.tz-select{max-width:140px}}.avatar-svg{overflow:visible;display:block}.avatar-svg .ua,.avatar-svg .fa,.avatar-svg .th,.avatar-svg .sh,.avatar-svg .tail{transform-box:fill-box;transform-origin:50% 0}.avatar-svg .head{transform-box:fill-box;transform-origin:50% 85%}.avatar-svg .tail{transform-origin:20% 10%}.avatar-svg.walking .th-l{animation:stepThigh .64s ease-in-out infinite}.avatar-svg.walking .th-r{animation:stepThigh .64s ease-in-out infinite;animation-delay:-.32s}.avatar-svg.walking .sh-l{animation:stepShin .64s ease-in-out infinite}.avatar-svg.walking .sh-r{animation:stepShin .64s ease-in-out infinite;animation-delay:-.32s}.avatar-svg.walking .ua-l{animation:armSwing .64s ease-in-out infinite;animation-delay:-.32s}.avatar-svg.walking .ua-r{animation:armSwing .64s ease-in-out infinite}.avatar-svg.walking .fa-l{animation:foreSwing .64s ease-in-out infinite;animation-delay:-.32s}.avatar-svg.walking .fa-r{animation:foreSwing .64s ease-in-out infinite}.avatar-svg.walking .tail{animation:tailSwing .64s ease-in-out infinite}.avatar-svg.walking .upper{animation:stepBob .32s ease-in-out infinite}@keyframes stepThigh{0%{transform:rotate(-4deg) scaleY(1)}25%{transform:rotate(7deg) scaleY(.8)}50%{transform:rotate(4deg) scaleY(1)}75%{transform:rotate(-2deg) scaleY(1)}to{transform:rotate(-4deg) scaleY(1)}}@keyframes stepShin{0%,50%,to{transform:rotate(0) scaleY(1)}25%{transform:rotate(-12deg) scaleY(.78)}75%{transform:rotate(2deg) scaleY(1)}}@keyframes armSwing{0%,to{transform:rotate(-11deg)}50%{transform:rotate(11deg)}}@keyframes foreSwing{0%,to{transform:rotate(-3deg)}50%{transform:rotate(-12deg)}}@keyframes tailSwing{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes stepBob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}.avatar-svg.dancing .ua-l{animation:grooveArmL 1.936s ease-in-out infinite}.avatar-svg.dancing .fa-l{animation:grooveForeL 1.936s ease-in-out infinite}.avatar-svg.dancing .ua-r{animation:grooveArmR .968s ease-in-out infinite;animation-delay:-.484s}.avatar-svg.dancing .fa-r{animation:grooveForeR .968s ease-in-out infinite;animation-delay:-.484s}.avatar-svg.dancing .th-l{animation:grooveLeg .968s ease-in-out infinite}.avatar-svg.dancing .th-r{animation:grooveLeg .968s ease-in-out infinite reverse}.avatar-svg.dancing .upper{animation:grooveBody .968s ease-in-out infinite}.avatar-svg.dancing .head{animation:grooveHead .968s ease-in-out infinite}.avatar-svg.dancing .tail{animation:tailSwing .484s ease-in-out infinite}@keyframes grooveArmL{0%,to{transform:rotate(18deg)}12.5%,37.5%{transform:rotate(32deg)}25%,50%{transform:rotate(18deg)}60%{transform:rotate(148deg)}75%{transform:rotate(164deg)}90%{transform:rotate(150deg)}}@keyframes grooveForeL{0%,to{transform:rotate(-86deg)}12.5%,37.5%{transform:rotate(-114deg)}25%,50%{transform:rotate(-86deg)}60%{transform:rotate(-22deg)}75%{transform:rotate(-6deg)}90%{transform:rotate(-24deg)}}@keyframes grooveArmR{0%,to{transform:rotate(-18deg)}25%,75%{transform:rotate(-32deg)}50%{transform:rotate(-18deg)}}@keyframes grooveForeR{0%,to{transform:rotate(86deg)}25%,75%{transform:rotate(114deg)}50%{transform:rotate(86deg)}}@keyframes grooveLeg{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes grooveBody{0%,50%,to{transform:translate(0) rotate(0)}25%{transform:translate(-2px,3px) rotate(-2deg)}75%{transform:translate(2px,3px) rotate(2deg)}}@keyframes grooveHead{0%,50%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(2px) rotate(4deg)}75%{transform:translateY(2px) rotate(-4deg)}}.av-editor{display:grid;grid-template-columns:340px 1fr;gap:16px;align-items:start}@media (max-width: 860px){.av-editor{grid-template-columns:1fr}.av-preview{position:static}}.av-preview{text-align:center;position:sticky;top:80px}.av-stage{position:relative;display:grid;place-items:center;padding:22px 0 14px;border-radius:14px;margin-bottom:12px;overflow:hidden;background:radial-gradient(60% 40% at 50% 100%,rgba(255,46,196,.35),transparent 70%),linear-gradient(180deg,#0a0414,#1b0a33);border:1px solid var(--border)}.av-floor{position:absolute;left:10%;right:10%;bottom:12px;height:26px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,rgba(0,0,0,.7),transparent 70%)}.av-stage .avatar-svg{position:relative;filter:drop-shadow(0 8px 10px rgba(0,0,0,.6))}.av-preview-modes{justify-content:center;margin-bottom:10px}.av-preview .row{justify-content:center}.av-tabs{margin-bottom:12px}.av-group{margin-bottom:14px}.av-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.av-swatches,.av-choices{display:flex;flex-wrap:wrap;gap:8px}.av-swatch{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.25);cursor:pointer;padding:0;transition:transform .12s,box-shadow .12s;box-shadow:inset -4px -4px 8px #00000059,inset 3px 3px 6px #ffffff40}.av-swatch:hover{transform:scale(1.1)}.av-swatch.on{border-color:#fff;box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--cyan),var(--glow-cyan)}.av-choice{background:#07030f99;border:1px solid var(--border);color:var(--text);border-radius:999px;padding:7px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.av-choice.on{background:linear-gradient(135deg,var(--pink),var(--pink-2));border-color:transparent;box-shadow:var(--glow-pink);color:#fff}.club-page{margin:-28px -24px -60px}@media (max-width: 800px){.club-page{margin:-28px -16px -60px}}.scene{position:relative;user-select:none;-webkit-user-select:none}.scene-hud{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:13px;color:var(--muted);flex-wrap:wrap}.hud-tip{display:inline-flex;align-items:center;gap:6px}.scene-hud .btn.on{border-color:var(--cyan);color:var(--cyan)}.scene-view{position:relative;overflow:hidden;width:100%;background:#05020a;touch-action:none;cursor:pointer;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.world{position:absolute;left:0;top:0;transform-origin:top left;will-change:transform}.world .layer{position:absolute;left:0;top:0;display:block;will-change:transform}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 120px 40px #000000bf}.street.entering .scene-view{animation:fadeToBlack .8s forwards}@keyframes fadeToBlack{to{filter:brightness(0)}}.club .scene-view{animation:fadeIn .9s ease-out}.neon-flicker{animation:flicker 5s infinite}.neon-flicker.pink{animation-delay:1.7s}@keyframes flicker{0%,91%,to{opacity:1}92%{opacity:.45}93.5%{opacity:1}96%{opacity:.65}97%{opacity:1}}.twinkle{animation:twinkle 3s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:.9}}.blink{animation:blink 1.6s steps(2) infinite}.bulb{animation:chase .9s steps(1) infinite}.bulb.b1{animation-delay:.3s}.bulb.b2{animation-delay:.6s}@keyframes chase{0%{opacity:1}33%{opacity:.25}66%{opacity:.55}to{opacity:1}}.spill{transition:opacity .4s;opacity:.6}.spill.on{opacity:1}.grain{pointer-events:none;mix-blend-mode:overlay}@media (max-width: 800px){.grain{display:none}}.actor{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.actor .avatar-svg{filter:drop-shadow(0 6px 6px rgba(0,0,0,.55))}.actor-shadow{width:44px;height:11px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,#000000b3,#0000 75%);margin-top:-7px}.actor-name{font-size:12px;font-weight:700;background:#07030fc7;border:1px solid var(--border);padding:2px 8px;border-radius:999px;margin-bottom:5px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.actor.me .actor-name{border-color:var(--cyan);color:var(--cyan);box-shadow:var(--glow-cyan)}.npc-idle .avatar-svg{animation:idleBreath 3s ease-in-out infinite}@keyframes idleBreath{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}.silhouette{opacity:.85;filter:brightness(.22) blur(.6px);animation:crowdBob .9s ease-in-out infinite}.silhouette .avatar-svg{filter:none}@keyframes crowdBob{0%,to{margin-top:0}50%{margin-top:-5px}}.celeb-actor{pointer-events:auto;cursor:pointer}.celeb-actor .avatar-svg{transition:filter .15s}.celeb-actor:hover .avatar-svg,.celeb-actor.selected .avatar-svg{filter:drop-shadow(0 0 12px var(--pink)) drop-shadow(0 6px 6px rgba(0,0,0,.55))}.celeb-actor.offline .avatar-svg{filter:grayscale(.85) brightness(.55) drop-shadow(0 6px 6px rgba(0,0,0,.55))}.celeb-actor.busy .avatar-svg{filter:sepia(.5) brightness(.75) drop-shadow(0 6px 6px rgba(0,0,0,.55))}.celeb-name{border-color:var(--pink)}.celeb-status{margin-top:2px;font-size:11px;color:var(--muted)}.tile{animation:tileGlow 2.6s ease-in-out infinite}.tile.t0{fill:#2a0a4a}.tile.t1{fill:#0a2a4a}.tile.t2{fill:#4a0a3a}.tile.t3{fill:#0a3a3a}@keyframes tileGlow{0%,to{opacity:.45}50%{opacity:.95}}.beam{animation:sweep linear infinite;mix-blend-mode:screen}@keyframes sweep{0%{transform:rotate(-28deg)}50%{transform:rotate(28deg)}to{transform:rotate(-28deg)}}.lamp-pulse{animation:lampPulse 1.2s ease-in-out infinite}@keyframes lampPulse{0%,to{opacity:.6}50%{opacity:1}}.lasers{animation:laserSweep 4s ease-in-out infinite;mix-blend-mode:screen}@keyframes laserSweep{0%,to{transform:rotate(-20deg)}50%{transform:rotate(20deg)}}.disco-spin{animation:spin 6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sparkle{animation:sparkle 2.4s ease-in-out infinite;opacity:0}@keyframes sparkle{0%,to{opacity:0}50%{opacity:.9}}.ledscreen{animation:screenShift 6s ease-in-out infinite}@keyframes screenShift{0%,to{opacity:.85}50%{opacity:.55}}.screen-text{animation:screenText 3s ease-in-out infinite}@keyframes screenText{0%,to{opacity:.95}50%{opacity:.6}}.ledstrip{animation:ledstrip 1.3s ease-in-out infinite}@keyframes ledstrip{0%,to{opacity:.55}50%{opacity:1}}.eq{animation:eq .7s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}.eq.e1{animation-delay:.15s}.eq.e2{animation-delay:.3s}.eq.e3{animation-delay:.45s}@keyframes eq{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.cone{animation:cone .48s ease-in-out infinite}@keyframes cone{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.haze{animation:hazeDrift 14s ease-in-out infinite;mix-blend-mode:screen}.haze.b{animation-duration:18s;animation-direction:reverse}@keyframes hazeDrift{0%,to{transform:translate(0)}50%{transform:translate(80px)}}.celeb-popover{position:absolute;left:50%;bottom:16px;transform:translate(-50%);width:min(92%,520px);margin:0;z-index:500;cursor:default;border-color:var(--border-strong);animation:popIn2 .25s ease-out}@keyframes popIn2{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%);opacity:1}}.popover-actions{margin-top:12px}.touchpad{display:none;position:absolute;right:16px;bottom:16px;width:132px;height:132px;z-index:400}@media (pointer: coarse){.touchpad{display:block}}.tp{position:absolute;width:44px;height:44px;border-radius:50%;background:#140a26d9;border:1px solid var(--cyan);color:var(--cyan);display:grid;place-items:center;cursor:pointer;touch-action:none}.tp:active{background:var(--cyan);color:#000}.tp.up{left:44px;top:0}.tp.down{left:44px;bottom:0}.tp.left{left:0;top:44px}.tp.right{right:0;top:44px}@media (prefers-reduced-motion: reduce){.tile,.beam,.lasers,.disco-spin,.sparkle,.ledscreen,.screen-text,.ledstrip,.eq,.cone,.haze,.silhouette,.npc-idle .avatar-svg,.neon-flicker,.bulb,.twinkle,.blink{animation:none!important}}.scene3d-view{position:relative;width:100%;height:clamp(380px,70vh,820px);background:#05020a;overflow:hidden;border-top:1px solid var(--border);border-bottom:1px solid var(--border);touch-action:none}.scene3d-canvas{display:block;width:100%;height:100%;cursor:pointer}.scene3d.entering .scene3d-canvas{animation:fadeToBlack .9s forwards}.scene3d-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);pointer-events:none}.scene3d-error{position:absolute;left:16px;right:16px;top:16px}.labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.label3d{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:center;will-change:transform}.label3d .celeb-status{font-size:11px;color:var(--muted);background:#07030f99;padding:1px 6px;border-radius:999px;margin-top:2px}.label3d.selected .actor-name{box-shadow:var(--glow-pink)}.av3d{position:relative;width:100%;border-radius:14px;overflow:hidden;border:1px solid var(--border);margin-bottom:12px;background:#0b0516}.av3d canvas{display:block;width:100%;height:100%}
