:root,body[data-t=aurora]{--a:#2aabee;--b:#3d9fe0;--c:#64b5ef;--g1:#0e1621;--g2:#17212b;--g3:#17212b;--card:rgba(36,47,61,.88);--line:rgba(255,255,255,.09);--dim:#7f91a4;--green:#2ee59d;--red:#ff4d6a;--gold:#ffc83d}
body[data-t=sunset]{--a:#ff7a45;--b:#ffb347;--c:#ff4d8d;--g1:#2a0d1f;--g2:#5a1d3a;--g3:#7a3b1f}
body[data-t=emerald]{--a:#10b981;--b:#5eead4;--c:#22d3ee;--g1:#04201b;--g2:#0b4a3c;--g3:#0a3b52}
body[data-t=royal]{--a:#8b5cf6;--b:#c084fc;--c:#6366f1;--g1:#12082b;--g2:#2b1768;--g3:#3b1d7a}
body[data-t=rose]{--a:#ec4899;--b:#fb7185;--c:#f59e0b;--g1:#2a0a1c;--g2:#5c1442;--g3:#6b2336}
body[data-t=night]{--a:#64748b;--b:#94a3b8;--c:#6366f1;--g1:#05060c;--g2:#0f1220;--g3:#171a2b}
*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%}
body{font-family:'Tajawal',system-ui,sans-serif;color:#fff;background:var(--g2);overflow-x:hidden}
#bg{position:fixed;inset:0;overflow:hidden;z-index:-1;background:linear-gradient(180deg,var(--g1),var(--g2) 55%,var(--g3));transform:translateZ(0)}
.blob{position:absolute;width:60vmax;height:60vmax;border-radius:50%;filter:blur(70px);opacity:.34;background:var(--a);transition:background .8s}
.blob:nth-child(1){top:-22vmax;right:-18vmax;animation:d1 18s ease-in-out infinite alternate}
.blob:nth-child(2){background:var(--c);bottom:-26vmax;left:-20vmax;animation:d2 22s ease-in-out infinite alternate}
.blob:nth-child(3){background:var(--b);top:35%;left:25%;width:36vmax;height:36vmax;opacity:.18;animation:d1 26s ease-in-out infinite alternate-reverse}
@keyframes d1{to{transform:translate(-14vmax,16vmax) scale(1.2)}}@keyframes d2{to{transform:translate(16vmax,-12vmax) scale(1.15)}}
.glass{background:var(--card);border:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
#app{max-width:760px;margin:0 auto;min-height:100%;padding:14px 14px 96px;display:flex;flex-direction:column;gap:14px;animation:fade .4s both}
#app.room{padding-bottom:14px;height:100dvh}
@keyframes fade{from{opacity:0;transform:translateY(8px)}}
.btn{padding:12px 18px;border-radius:15px;border:1px solid var(--line);background:var(--card);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:transform .15s,filter .2s;text-align:center}
.btn:hover{filter:brightness(1.2)}.btn:active{transform:scale(.96)}
.btn.main{border:0;background:linear-gradient(135deg,var(--a),var(--b));box-shadow:0 8px 26px -8px var(--a)}
.btn.red{color:var(--red)}.btn.sm{padding:8px 12px;font-size:14px;border-radius:12px}.btn.w{width:100%}.btn[disabled]{opacity:.5;pointer-events:none}
input,textarea,select{width:100%;padding:13px 15px;border-radius:15px;border:1px solid var(--line);background:rgba(0,0,0,.28);color:#fff;font:inherit;font-size:16px;outline:none;transition:border-color .2s;resize:none}
select option{color:#000}
input:focus,textarea:focus,select:focus{border-color:var(--b)}
input[type=checkbox]{width:auto;accent-color:var(--a)}
label.f{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--dim)}
.col{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:10px}.sp{flex:1;min-width:0}.wrap{flex-wrap:wrap}
.dim{color:var(--dim);font-size:14px}.err{color:var(--red);font-size:15px;min-height:20px;text-align:center}
.ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.av{border-radius:50%;flex:none;display:grid;place-items:center;font-weight:800;object-fit:cover;overflow:hidden;border:3px solid transparent;transition:border-color .06s,box-shadow .07s;position:relative}
.av.speak{border-color:var(--green)}
.bar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:20px;position:sticky;top:8px;z-index:5}
.brand{font-size:20px;font-weight:800;background:linear-gradient(90deg,var(--b),var(--c));-webkit-background-clip:text;background-clip:text;color:transparent}
.logo{width:76px;height:76px;border-radius:26px;display:grid;place-items:center;margin:0 auto;background:linear-gradient(135deg,var(--a),var(--c));box-shadow:0 0 46px -6px var(--a);animation:fl 4s ease-in-out infinite;overflow:hidden}
.logo img{width:100%;height:100%;object-fit:cover}
@keyframes fl{50%{transform:translateY(-8px) rotate(3deg)}}
.authbox{max-width:420px;margin:auto;width:100%;padding:26px;border-radius:26px}
.tabs{display:flex;padding:4px;border-radius:15px;gap:4px}.tabs button{flex:1;padding:10px;border:0;border-radius:12px;background:none;color:var(--dim);font:inherit;font-weight:700;cursor:pointer;transition:.25s;white-space:nowrap}
.tabs button.on{background:linear-gradient(135deg,var(--a),var(--b));color:#fff}
.tabs.scroll{overflow-x:auto}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}
.chip{padding:8px 14px;border-radius:99px;border:1px solid var(--line);background:var(--card);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;transition:.2s}
.chip.on{background:linear-gradient(135deg,var(--a),var(--b));border-color:transparent}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.rcard{padding:16px;border-radius:22px;display:flex;flex-direction:column;gap:10px;cursor:pointer;position:relative;overflow:hidden;animation:in .45s cubic-bezier(.2,.9,.3,1.2) both;transition:transform .25s}
.rcard:hover{transform:translateY(-3px)}
@keyframes in{from{opacity:0;transform:translateY(14px) scale(.96)}}
.live{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--green);font-weight:700}
.live i{width:8px;height:8px;border-radius:50%;background:var(--green);animation:pulse 1.4s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(46,229,157,0);transform:scale(1.2)}0%{box-shadow:0 0 0 0 rgba(46,229,157,.6)}}
.tag{font-size:12px;padding:3px 9px;border-radius:99px;background:rgba(255,255,255,.1);color:#dfe3ff;white-space:nowrap}
.vf{display:inline-block;vertical-align:middle;margin-inline-start:3px}
.lv{font-size:11px;font-weight:800;padding:1px 7px;border-radius:99px;background:linear-gradient(135deg,var(--c),var(--a));vertical-align:middle;margin-inline-start:4px}
.nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:center;padding:0 10px calc(10px + env(safe-area-inset-bottom,0))}
.nav>div{display:flex;width:100%;max-width:520px;border-radius:24px;padding:6px;gap:2px}
.nav button{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border:0;background:none;color:var(--dim);font:inherit;font-size:12px;font-weight:700;cursor:pointer;border-radius:18px;transition:.25s}
.nav button svg{width:23px;height:23px}
.nav button.on{color:#fff;background:linear-gradient(135deg,var(--a),var(--b));box-shadow:0 6px 20px -8px var(--a)}
.dot{position:absolute;top:4px;inset-inline-end:22%;min-width:17px;height:17px;border-radius:99px;background:var(--red);font-size:11px;display:grid;place-items:center;padding:0 4px;color:#fff}
.fab{position:fixed;bottom:calc(86px + env(safe-area-inset-bottom,0));inset-inline-start:18px;z-index:15;width:58px;height:58px;border-radius:20px;border:0;background:linear-gradient(135deg,var(--a),var(--b));color:#fff;font-size:30px;cursor:pointer;box-shadow:0 12px 30px -8px var(--a);animation:fl 4s ease-in-out infinite}
.sheetbg{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:70;display:flex;align-items:flex-end;justify-content:center;animation:fadeb .2s both}
@keyframes fadeb{from{opacity:0}}
.sheet{width:100%;max-width:560px;max-height:88dvh;overflow-y:auto;border-radius:26px 26px 0 0;padding:20px 18px calc(22px + env(safe-area-inset-bottom,0));background:linear-gradient(180deg,var(--g2),var(--g1));border:1px solid var(--line);border-bottom:0;animation:up .3s cubic-bezier(.2,.9,.3,1) both;display:flex;flex-direction:column;gap:12px}
@keyframes up{from{transform:translateY(60px);opacity:0}}
.sheet h3{font-size:19px}
.toast{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:99;padding:12px 18px;border-radius:16px;background:rgba(30,42,56,.97);border:1px solid var(--line);font-weight:700;max-width:92vw;text-align:center;animation:tin .3s both}
@keyframes tin{from{opacity:0;transform:translate(-50%,-14px)}}
.banner{padding:11px 14px;border-radius:16px;background:linear-gradient(90deg,rgba(255,200,61,.18),rgba(255,122,69,.14));border:1px solid rgba(255,200,61,.4);font-size:15px;display:flex;gap:8px;align-items:center}
.empty{text-align:center;color:var(--dim);padding:34px 10px;line-height:1.9}
.stat{padding:16px;border-radius:20px;display:flex;flex-direction:column;gap:2px}.stat b{font-size:28px}.stat span{color:var(--dim);font-size:13px}
.li{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:18px;cursor:pointer}
.xpbar{height:8px;border-radius:9px;background:rgba(255,255,255,.12);overflow:hidden}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,var(--b),var(--c));border-radius:9px;transition:width .8s}
/* room */
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:14px 8px;justify-items:center}
.pp{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;width:100%;position:relative}
.pp.new{animation:in .4s both}
.pp .nm{font-size:13px;font-weight:700;max-width:92px;text-align:center}
/*mic*/.avw{position:relative;display:flex;flex:none}.pp .mic{position:absolute;bottom:-2px;inset-inline-end:-4px;width:24px;height:24px;border-radius:50%;background:#0d1030;border:1px solid var(--line);display:grid;place-items:center}
.hand{position:absolute;top:-6px;inset-inline-start:-6px;font-size:22px;animation:wave 1s infinite;z-index:2}
@keyframes wave{50%{transform:rotate(18deg)}}
.sec{font-size:13px;color:var(--dim);font-weight:700;padding:4px 2px}
.ctrls{display:flex;gap:10px;justify-content:center;padding:10px;border-radius:26px;align-items:center}
.cb{width:54px;height:54px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:#fff;display:grid;place-items:center;cursor:pointer;font-size:22px;transition:.2s;position:relative}
.cb:active{transform:scale(.92)}.cb.on{background:linear-gradient(135deg,var(--a),var(--b));border:0}.cb.off{background:rgba(255,77,106,.25);border-color:var(--red)}
.cb.leave{background:var(--red);border:0}
.msgs{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:4px}
.msg{max-width:84%;padding:8px 12px;border-radius:16px;background:rgba(255,255,255,.1);align-self:flex-start;word-break:break-word;font-size:15px;line-height:1.5}
.msg.me{align-self:flex-end;background:linear-gradient(135deg,var(--a),var(--b))}
.msg small{display:block;font-size:11px;opacity:.75}
.chatp{display:flex;flex-direction:column;border-radius:22px;padding:10px;gap:8px;height:42dvh;animation:up .25s both}
.pin{padding:9px 13px;border-radius:15px;background:rgba(255,200,61,.14);border:1px solid rgba(255,200,61,.4);font-size:14px;display:flex;gap:8px;align-items:center}
.np{padding:8px 13px;border-radius:15px;background:rgba(139,92,246,.2);border:1px solid rgba(139,92,246,.45);font-size:14px;display:flex;gap:8px;align-items:center}
.emoji{position:fixed;bottom:110px;font-size:34px;pointer-events:none;animation:fl2 2.4s ease-out forwards;z-index:40}
@keyframes fl2{to{transform:translateY(-240px) scale(1.4);opacity:0}}
.sw{display:flex;gap:8px;flex-wrap:wrap}.sw button{width:34px;height:34px;border-radius:50%;border:2px solid transparent;cursor:pointer}.sw button.on{border-color:#fff}
.tog{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 4px}
.spin{width:30px;height:30px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--b);animation:rot .8s linear infinite;margin:30px auto}@keyframes rot{to{transform:rotate(360deg)}}
.tbl{display:flex;flex-direction:column;gap:8px}
.urow{padding:12px;border-radius:18px;display:flex;flex-direction:column;gap:10px}
/* chat */
.chatov{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--g1),var(--g2) 60%,var(--g3));animation:slidein .28s cubic-bezier(.2,.9,.3,1) both;max-width:760px;margin:0 auto}
@keyframes slidein{from{transform:translateX(-40px);opacity:0}}
.chh{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top,0)) 12px 10px;border-bottom:1px solid var(--line);background:rgba(10,12,35,.55);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.chh .back{width:40px;height:40px;border-radius:50%;border:0;background:var(--card);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none}
.chh .back svg{transform:scaleX(-1)}
.status{font-size:12px;color:var(--dim)}.status.on{color:var(--green)}
.odot{position:absolute;bottom:0;inset-inline-end:0;width:13px;height:13px;border-radius:50%;background:var(--green);border:2px solid var(--g1)}
.cbody{flex:1;overflow-y:auto;padding:14px 12px 6px;display:flex;flex-direction:column;gap:2px;scroll-behavior:smooth;overscroll-behavior:contain}
.day{align-self:center;font-size:12px;color:var(--dim);background:rgba(255,255,255,.08);padding:3px 12px;border-radius:99px;margin:10px 0 6px}
.bub{max-width:80%;padding:8px 12px 6px;font-size:16px;line-height:1.55;word-break:break-word;white-space:pre-wrap;position:relative;animation:pop .22s cubic-bezier(.2,.9,.3,1.3) both}
@keyframes pop{from{opacity:0;transform:translateY(8px) scale(.94)}}
.bub.me{align-self:flex-start;background:linear-gradient(135deg,var(--a),var(--b));border-radius:20px 20px 6px 20px;box-shadow:0 6px 18px -10px var(--a)}
.bub.th{align-self:flex-end;background:rgba(255,255,255,.12);border:1px solid var(--line);border-radius:20px 20px 20px 6px}
.bub.me.first{border-radius:20px 20px 8px 20px}.bub.me.mid{border-radius:20px 8px 8px 20px}.bub.me.last{border-radius:20px 8px 6px 20px}
.bub.th.first{border-radius:20px 20px 20px 8px}.bub.th.mid{border-radius:8px 20px 20px 8px}.bub.th.last{border-radius:8px 20px 20px 6px}
.bub .meta{display:flex;gap:4px;justify-content:flex-end;align-items:center;font-size:11px;opacity:.75;margin-top:2px}
.bub a{color:#fff;text-decoration:underline;word-break:break-all}
.bub .tick{font-weight:800;letter-spacing:-3px}.bub .tick.rd{color:#7ff0ff;opacity:1}
.bub.pend{opacity:.65}
.cfoot{padding:8px 10px calc(10px + env(safe-area-inset-bottom,0));border-top:1px solid var(--line);background:rgba(10,12,35,.55);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.comp{display:flex;align-items:flex-end;gap:8px}
.comp .box{flex:1;display:flex;align-items:flex-end;background:rgba(255,255,255,.1);border:1px solid var(--line);border-radius:24px;padding:2px 6px}
.comp textarea{border:0;background:none;padding:10px 8px;max-height:110px;min-height:42px;line-height:1.5;border-radius:0}
.comp textarea:focus{border:0}
.comp .em{width:38px;height:42px;border:0;background:none;font-size:22px;cursor:pointer;flex:none}
.sendb{width:46px;height:46px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--a),var(--b));color:#fff;display:grid;place-items:center;cursor:pointer;flex:none;transition:.2s;box-shadow:0 8px 20px -8px var(--a)}
.sendb svg{transform:scaleX(-1)}
.sendb:disabled{background:rgba(255,255,255,.12);box-shadow:none;cursor:default}.sendb:not(:disabled):active{transform:scale(.88)}
.emrow{display:flex;gap:4px;overflow-x:auto;padding:0 0 8px;scrollbar-width:none}.emrow button{border:0;background:none;font-size:26px;cursor:pointer;padding:2px 6px;flex:none}
.tobot{position:absolute;bottom:84px;inset-inline-start:14px;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(20,24,60,.9);color:#fff;display:none;place-items:center;cursor:pointer;font-size:18px;z-index:2}
.tobot b{position:absolute;top:-6px;inset-inline-end:-4px;background:var(--red);border-radius:99px;font-size:11px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px}
.cempty{margin:auto;text-align:center;color:var(--dim);display:flex;flex-direction:column;gap:12px;align-items:center;padding:20px}
.cempty .chips{justify-content:center;flex-wrap:wrap}
.cnt{min-width:22px;height:22px;border-radius:99px;background:var(--red);font-size:12px;font-weight:800;display:inline-grid;place-items:center;padding:0 6px}
.qb{display:inline-flex;align-items:flex-end;gap:2px;height:20px;flex:none}.qb i{width:4px;border-radius:2px;background:currentColor;display:block}
.cb{width:48px;height:48px;font-size:20px}.ctrls{gap:8px;flex-wrap:nowrap}
.cb.talk{box-shadow:0 0 0 4px rgba(46,229,157,.35),0 0 24px rgba(46,229,157,.5)}
.msg{position:relative}.mdel{position:absolute;top:2px;inset-inline-end:4px;border:0;background:none;color:inherit;opacity:0;font-size:12px;cursor:pointer}.msg:hover .mdel,.msg:active .mdel{opacity:.7}
.msg.me .mdel{inset-inline-end:auto;inset-inline-start:4px}
/* ===== room overlay (separate from the site UI) ===== */
body.rooming{overflow:hidden}
.rovbg{position:fixed;inset:0;z-index:40;background:linear-gradient(180deg,var(--g1),var(--g2) 55%,var(--g3));overflow:hidden;overflow:clip;animation:rin .35s cubic-bezier(.2,.9,.3,1) both}
@keyframes rin{from{opacity:0;transform:translateY(24px)}}
.rovbg::before,.rovbg::after{content:"";position:absolute;width:60vmax;height:60vmax;border-radius:50%;filter:blur(90px);opacity:.28;pointer-events:none}
.rovbg::before{background:var(--a);top:-28vmax;right:-22vmax}.rovbg::after{background:var(--c);bottom:-32vmax;left:-22vmax}
.rovin{position:relative;z-index:1;max-width:760px;margin:0 auto;height:100%;display:flex;flex-direction:column;gap:10px;padding:calc(10px + env(safe-area-inset-top,0)) 12px calc(10px + env(safe-area-inset-bottom,0))}
.rhead{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:22px;flex:none}
.ib{width:40px;height:40px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none;font-size:16px;transition:.2s}
.ib:active{transform:scale(.88)}
.livedot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-inline-end:6px;animation:pulse 1.6s infinite}
.rovin .stage{flex:1;overflow-y:auto;padding:4px 2px;min-height:0}
.stagecard{border-radius:26px;padding:18px 8px 12px}
.sec{display:flex;align-items:center;gap:8px}.sec .cn{background:rgba(255,255,255,.14);border-radius:99px;padding:0 9px;font-size:12px;color:#fff}
@keyframes ripple{0%{box-shadow:0 0 0 0 rgba(46,229,157,.55)}100%{box-shadow:0 0 0 15px rgba(46,229,157,0)}}
.av.speak{border-color:var(--green);animation:none}
.avw::before{content:'';position:absolute;inset:-2px;border-radius:50%;border:3px solid rgba(46,229,157,.55);opacity:0;transform:scale(1);transition:opacity .08s linear,transform .08s linear;pointer-events:none;will-change:transform,opacity}
.avw.spk::before{opacity:1;transform:scale(calc(1 + var(--lv,.3)*.14))}
.rovin .stage .pp{padding:9px 0 0}
.dock{flex:none;display:flex;align-items:flex-end;justify-content:space-between;gap:2px;padding:26px 8px 8px;margin-top:18px;border-radius:30px;background:rgba(10,12,35,.62);border:1px solid var(--line);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.dk{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:none;color:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:700;position:relative;padding:2px 0;min-width:0}
.dk>svg{width:46px;height:46px;padding:11px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid var(--line);transition:.2s}
.dk.on>svg{background:linear-gradient(135deg,var(--a),var(--b));border-color:transparent}
.dk.leave>svg{background:var(--red);border:0;color:#fff}
.dk:active>svg{transform:scale(.88)}
.dk span,.dkm span{color:var(--dim)}
.dkm{flex:1.3;display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:none;color:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:700;padding:0;margin-top:-34px;min-width:0}
.dkm>svg,.dkm>b{width:70px;height:70px;display:grid;place-items:center;border-radius:50%;padding:18px;transition:.25s;border:3px solid rgba(255,255,255,.18)}
.dkm.on>svg{background:linear-gradient(135deg,var(--green),var(--b));box-shadow:0 10px 30px -8px var(--green);border-color:rgba(255,255,255,.35)}
.dkm.off>svg{background:rgba(255,77,106,.28);border-color:var(--red);color:#fff}
.dkm.talk>svg{animation:ripple 1.1s ease-out infinite}
.dkm.hand>b{background:rgba(255,255,255,.14);padding:0}.dkm.hand.on>b{background:linear-gradient(135deg,var(--c),var(--a));box-shadow:0 10px 30px -8px var(--c);animation:wave 1.2s infinite}
.dkm:active>svg,.dkm:active>b{transform:scale(.9)}
.pill{align-self:center;border:0;border-radius:99px;padding:9px 18px;background:linear-gradient(90deg,#ffc83d,#ff9f43);color:#1b1300;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 8px 24px -8px #ff9f43;animation:in .3s both}
.reactrow{display:flex;justify-content:space-around;padding:6px 8px;border-radius:22px;flex:none}.reactrow button{border:0;background:none;font-size:27px;padding:4px 6px;cursor:pointer;transition:.15s}.reactrow button:active{transform:scale(1.5)}
#chatbox:not(:empty){flex:1;min-height:0;display:flex;flex-direction:column}
.chatp{height:auto;flex:1;min-height:0;display:flex;flex-direction:column;border-radius:24px;padding:10px;gap:8px}
.rovin.chatting .stage{flex:0 0 auto;max-height:30%}
.rovin.typing .dock{display:none}.rovin.typing .stage{max-height:18%}
.sendr{width:44px;height:44px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--a),var(--b));color:#fff;display:grid;place-items:center;flex:none;cursor:pointer}
.avw{position:relative;display:flex}
/* ===== call bar (like Telegram) ===== */
.mini{position:fixed;top:0;left:0;right:0;z-index:45;max-width:760px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:calc(9px + env(safe-area-inset-top,0)) 14px 11px;background:linear-gradient(90deg,#10b981,#0ea5c9);color:#fff;border-radius:0 0 22px 22px;box-shadow:0 12px 30px -10px rgba(0,0,0,.65);cursor:pointer;animation:mdown .35s cubic-bezier(.2,.9,.3,1) both}
@keyframes mdown{from{transform:translateY(-100%)}}
.mini .sub{font-size:12px;opacity:.9}
.mini .mb{width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.24);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none}
.mini .mb.off,.mini .mb.red{background:rgba(255,64,96,.95)}
.eq{display:flex;align-items:flex-end;gap:3px;height:22px;flex:none;width:28px;justify-content:center}.eq i{width:4px;height:6px;border-radius:2px;background:#fff;display:block}
.eq.on i{animation:eq .9s ease-in-out infinite}.eq.on i:nth-child(2){animation-delay:.15s}.eq.on i:nth-child(3){animation-delay:.3s}.eq.on i:nth-child(4){animation-delay:.45s}
@keyframes eq{50%{height:22px}}
body.incall #app{padding-top:72px}body.incall .bar{top:68px}body.incall .toast{top:80px}body.incall .fab{bottom:calc(86px + env(safe-area-inset-bottom,0))}

/* ===== my account ===== */
.rise{animation:in .5s cubic-bezier(.2,.9,.3,1.1) both;animation-delay:calc(var(--i,0)*55ms)}
.phero{border-radius:28px;overflow:hidden;padding:0}
.pcover{height:118px;position:relative;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.28),transparent 45%),radial-gradient(circle at 85% 80%,rgba(255,255,255,.18),transparent 40%),linear-gradient(135deg,hsl(var(--h),78%,50%),hsl(calc(var(--h) + 70),75%,38%))}
.cbtn{position:absolute;top:12px;inset-inline-start:12px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(0,0,0,.28);backdrop-filter:blur(10px);color:#fff;font-size:18px;cursor:pointer}
.pbody{padding:0 18px 18px;margin-top:-58px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.pav{position:relative}.pavring{border-radius:50%;padding:4px;background:linear-gradient(135deg,hsl(var(--h),80%,60%),hsl(calc(var(--h) + 80),80%,55%));box-shadow:0 12px 34px -10px rgba(0,0,0,.6)}
.pavring .av{border:4px solid var(--g1)}
.pcam{position:absolute;bottom:2px;inset-inline-end:2px;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--a),var(--b));display:grid;place-items:center;color:#fff;cursor:pointer;border:3px solid var(--g1);transition:.2s}.pcam:active{transform:scale(.88)}
.pname{font-size:23px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:wrap}
.puser{border:0;background:rgba(255,255,255,.1);color:var(--dim);border-radius:99px;padding:4px 12px;font:inherit;font-size:14px;cursor:pointer}
.pbio{line-height:1.7;max-width:34ch;color:#e6e9ff}.linkbtn{border:0;background:none;color:var(--b);font:inherit;font-weight:700;cursor:pointer}
.pstats{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:8px;margin:6px 0}
.pstats>div{background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:18px;padding:12px 4px;cursor:pointer;transition:.2s}.pstats>div:active{transform:scale(.95)}
.pstats b{display:block;font-size:24px}.pstats span{font-size:12px;color:var(--dim)}
.lvlcard{display:flex;align-items:center;gap:16px;padding:16px;border-radius:26px}
.ring circle:nth-of-type(2){transition:stroke-dashoffset 1.1s cubic-bezier(.2,.8,.2,1)}
.sech{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:17px;padding:6px 4px 0}.sech span{color:var(--dim);font-size:14px;font-weight:700}
.achgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ach{background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:20px;padding:14px 6px 12px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center;opacity:.6;filter:grayscale(.7);transition:.3s}
.ach b{font-size:12px}.ach .ae{font-size:30px}.ach.on{opacity:1;filter:none;background:linear-gradient(160deg,rgba(255,200,61,.18),rgba(255,255,255,.06));border-color:rgba(255,200,61,.5)}
.abar{width:70%;height:5px;border-radius:5px;background:rgba(255,255,255,.14);overflow:hidden}.abar i{display:block;height:100%;background:linear-gradient(90deg,var(--b),var(--c));border-radius:5px}
.myr{display:flex;align-items:center;gap:10px;padding:12px;border-radius:20px}
.setlist{border-radius:22px;overflow:hidden}
.setrow{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border:0;background:none;color:#fff;font:inherit;cursor:pointer;border-bottom:1px solid var(--line);transition:background .2s}
.setrow:last-child{border-bottom:0}.setrow:active{background:rgba(255,255,255,.08)}
.setrow b{display:block;font-size:16px}.setrow small{color:var(--dim);font-size:13px}
.sic{width:40px;height:40px;border-radius:13px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:20px;flex:none}

/* ===== cover + cropper ===== */
.pcover.has{background-size:cover;background-position:center}
.cbtn.c2{inset-inline-start:auto;inset-inline-end:12px}
.scov{height:90px;border-radius:18px;background-size:cover;background-position:center;margin-bottom:-34px}
.cropov{position:fixed;inset:0;z-index:95;background:rgba(5,7,20,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:16px;animation:fadeb .2s both}
.croptop{text-align:center;display:flex;flex-direction:column;gap:4px;font-size:18px}.croptop .dim{font-size:13px}
.cropbox{position:relative;overflow:hidden;border-radius:18px;border:2px solid rgba(255,255,255,.5);touch-action:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.35)}
.cropbox.round{border-radius:50%}
.cropbox canvas{display:block;cursor:grab}
.cropctl{direction:ltr;display:flex;align-items:center;gap:10px;width:min(100%,380px)}.cropctl input{flex:1;accent-color:var(--b)}

.dock{flex-direction:row-reverse}

/* rooms v3 */
.srch{position:relative}.srch input{padding-inline-start:44px;margin:0}.srch .si{position:absolute;inset-inline-start:15px;top:50%;transform:translateY(-50%);color:var(--dim);display:flex;pointer-events:none}
.chip{display:inline-flex;align-items:center;gap:6px}
.rsec{display:flex;align-items:center;justify-content:space-between;margin:18px 2px 10px;font-weight:800;font-size:16px}.rsec span{display:flex;align-items:center;gap:8px}.rsec em{font-style:normal;font-size:12px;color:var(--dim);background:var(--card);border-radius:99px;padding:2px 10px}
.eq{display:inline-flex;align-items:flex-end;gap:2px;height:12px}.eq i{width:3px;border-radius:2px;background:currentColor;animation:eq 1s ease-in-out infinite}.eq i:nth-child(1){height:60%}.eq i:nth-child(2){height:100%;animation-delay:.2s}.eq i:nth-child(3){height:45%;animation-delay:.4s}
@keyframes eq{50%{transform:scaleY(.4)}}.eq i{transform-origin:bottom}
.hero{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:2px 16px 6px;scrollbar-width:none}.hero::-webkit-scrollbar{display:none}
.hc{flex:none;width:min(300px,82%);scroll-snap-align:center;border-radius:26px;padding:16px;position:relative;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:12px;min-height:218px;color:#fff;
 background:linear-gradient(150deg,color-mix(in srgb,var(--cc) 80%,#000) 0%,color-mix(in srgb,var(--cc) 35%,#0a0b24) 100%);box-shadow:0 14px 30px -14px var(--cc);border:1px solid rgba(255,255,255,.18);transition:transform .2s}
.hc:active{transform:scale(.98)}
.hc .wm{position:absolute;inset-inline-end:-18px;bottom:-22px;opacity:.13;pointer-events:none}.hc .wm svg{width:130px;height:130px}
.hc .rt{font-size:19px;line-height:1.35;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hc .rd{color:rgba(255,255,255,.75);font-size:13px}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.2);backdrop-filter:blur(6px)}
.pill.g{background:var(--green);color:#06281a}.pill.y{background:rgba(255,200,61,.18);color:var(--gold)}
.hrow{display:flex;align-items:center;justify-content:space-between;gap:8px}
.spks{display:flex;gap:10px}.spk1{display:flex;flex-direction:column;align-items:center;gap:4px;width:46px;position:relative}
.spk1 .av{border:2px solid rgba(255,255,255,.35)}.spk1 span{font-size:11px;max-width:48px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.9}
.spk1 .mk{position:absolute;top:28px;inset-inline-end:-1px;width:17px;height:17px;border-radius:50%;background:var(--green);color:#06281a;display:flex;align-items:center;justify-content:center;border:2px solid #101640}
.spk1.more .av{display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.18);font-weight:800;font-size:14px}
.stats{display:flex;gap:8px;margin-top:auto}.stt{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;padding:6px 11px;border-radius:12px;background:rgba(0,0,0,.28)}
.stt.m{color:var(--green)}
.rcard{padding:14px;gap:12px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.04))}
.rcard:hover{transform:none}.rcard:active{transform:scale(.985)}
.rcard.islive{border-color:color-mix(in srgb,var(--cc) 40%,transparent)}
.rtop{display:flex;align-items:flex-start;gap:12px}.rmid{flex:1;min-width:0}
.rtile{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff;background:linear-gradient(145deg,var(--cc),color-mix(in srgb,var(--cc) 50%,#000))}
.rt{font-size:16.5px;display:block}.rd{font-size:13px;margin-top:2px}
.rcard .spks{padding:2px 0}.rcard .spk1 span{color:#dfe3ff}.rcard .spk1 .av{border-color:rgba(255,255,255,.2)}
.rcard .stt{background:rgba(255,255,255,.08)}
.rfoot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}
.rhost{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;color:var(--dim)}.rhost .av{flex:none}
.rch{display:inline-flex;align-items:center;gap:4px;font-size:12px;padding:4px 9px;border-radius:99px;background:rgba(255,255,255,.1);color:#dfe3ff;white-space:nowrap}
.rtags{display:flex;gap:6px;flex:none}
.rsk{height:130px;border-radius:24px;margin-bottom:12px;background:linear-gradient(100deg,rgba(255,255,255,.05) 30%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.05) 70%);background-size:200% 100%;animation:sk 1.3s linear infinite}
@keyframes sk{to{background-position:-200% 0}}
.eic{width:72px;height:72px;border-radius:24px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--a),var(--b));box-shadow:0 12px 28px -10px var(--a)}
.grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}
.fab{display:flex;align-items:center;justify-content:center}
#app{overflow-x:clip}.hc>*{position:relative;z-index:1}.hc .wm{z-index:0}
.hc .wm{opacity:.08}

/* calm rooms */
.rcard,.hc{animation:none!important;transition:none}.rcard:active,.hc:active{transform:scale(.99);transition:transform .1s}
#list.fi{animation:lfi .18s ease-out}@keyframes lfi{from{opacity:.35}}
.ld{width:7px;height:7px;border-radius:50%;background:#06281a;display:inline-block}
.pill.md{background:rgba(255,255,255,.16)}
.chips{margin:0 -16px;padding:2px 16px 6px;scroll-padding:0 16px}
.chip{flex:none}
.eq{display:none}
#list{padding-bottom:110px}
.cbody>*{flex-shrink:0}.cbody{min-height:0}

.cbody{overflow-x:hidden}.dmov,.chatov{overflow:hidden}

/* keep scrolling smooth while a call is running: no animated blur blobs, no backdrop blur */
body.incall .blob,body.rooming .blob{animation:none!important}
body.incall *,body.incall *::before,body.incall *::after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.incall .glass{background:rgba(30,42,56,.92)}body.incall .nav>div,body.incall .bar.glass,body.incall .tabs{background:rgba(23,33,43,.97)}



/* ===== voice room v5 (neon seats) ===== */
.rovin.v5{gap:8px}
.rovin.v5 .rhead{display:flex;align-items:center;gap:6px;padding:2px 0;background:none;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.rimg{width:46px;height:46px;border-radius:50%;padding:2px;border:0;background:conic-gradient(from 30deg,#2aabee,#5ec4f5,#8774e1,#2aabee);display:grid;place-items:center;flex:none;cursor:pointer;box-shadow:0 0 8px rgba(160,70,255,.55)}
.rimg>.av,.rimg>span{width:42px!important;height:42px!important;border-radius:50%;background:#17212b;display:grid;place-items:center;font-size:22px;border:0!important}
.rtt{cursor:pointer;min-width:0}.rtt b{display:flex;align-items:center;gap:5px;font-size:16.5px}.rtt .tt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.rtt .crn{flex:none;display:inline-flex}
.rsub{white-space:nowrap;overflow:hidden;font-size:12px;color:var(--dim);display:flex;align-items:center;gap:4px;margin-top:2px}.rsub svg{width:13px;height:13px}
.rcnt{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:99px;border:1px solid var(--line);background:rgba(24,37,51,.92);font-size:13px;font-weight:800;flex:none;direction:ltr}.rcnt svg{width:16px;height:16px}
.hb{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:rgba(24,37,51,.92);color:#fff;display:grid;place-items:center;flex:none;cursor:pointer;padding:0}.hb svg{width:18px;height:18px}.hb:active,.rbi:active{transform:scale(.9)}
.rpills{display:flex;justify-content:space-between;align-items:center;gap:8px;flex:none}
.rpil{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:99px;border:1px solid rgba(120,150,180,.38);background:rgba(24,37,51,.92);color:#fff;font:inherit;font-size:13px;font-weight:700;min-width:0;max-width:58%}
.rpil.talk{color:var(--dim)}.rpil.talk.on{color:#fff;border-color:rgba(25,198,255,.6);box-shadow:0 0 7px rgba(25,198,255,.25)}
.rpil.topic{cursor:pointer;border-color:rgba(42,171,238,.5)}.rpil .chv{font-size:18px;line-height:1;opacity:.8}
.eqi{display:inline-flex;gap:2px;align-items:center;height:14px}.eqi i{width:3px;height:4px;border-radius:2px;background:var(--c)}
.rpil.on .eqi i{animation:eqb .7s ease-in-out infinite alternate}.rpil.on .eqi i:nth-child(2){animation-delay:.2s}.rpil.on .eqi i:nth-child(3){animation-delay:.4s}.rpil.on .eqi i:nth-child(4){animation-delay:.1s}
@keyframes eqb{to{height:14px}}
.rovin.v5 .stage{flex:0 1 auto;max-height:58%;overflow-y:auto;padding:0!important}
.rovin.v5.typing .stage{max-height:24%}
.seats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 0;padding:14px 4px 12px;border-radius:24px;border:1px solid rgba(120,150,180,.28);background:linear-gradient(180deg,rgba(18,10,52,.72),rgba(12,8,38,.6));box-shadow:inset 0 0 30px rgba(42,171,238,.12)}
.seat{padding:0!important;margin:0!important;gap:3px;min-width:0;display:flex;flex-direction:column;align-items:center}
.seat .sav{position:relative;width:80px;height:80px;display:grid;place-items:center;flex:none}
.seat .avw{position:relative}
.seat .sn{position:absolute;top:3px;inset-inline-start:3px;z-index:7;min-width:21px;height:21px;padding:0 4px;border-radius:99px;background:#17212b;border:1.5px solid rgba(255,255,255,.55);font-size:11px;font-weight:800;display:grid;place-items:center;color:#fff}
.seat .hand{position:absolute;top:0;inset-inline-end:2px;inset-inline-start:auto;font-size:18px;z-index:8}
.seat .av{border:3px solid #8774e1!important;box-shadow:0 0 7px rgba(135,116,225,.75),0 0 0 2px rgba(135,116,225,.18)}
.seat.c0 .av{border-color:#2aabee!important;box-shadow:0 0 7px rgba(42,171,238,.8),0 0 0 2px rgba(42,171,238,.18)}
.seat.owner .av{border-color:#ffc83d!important;box-shadow:0 0 7px rgba(255,200,61,.85)}.seat.cohost .av{border-color:#19e0ff!important;box-shadow:0 0 7px rgba(25,224,255,.8)}
.seat.lstn .av{opacity:.92;filter:saturate(.85)}
.seat .avfw .av{border:0!important;box-shadow:none}
.seat .mic{width:22px;height:22px;bottom:-3px;inset-inline-end:-5px;border:2px solid #17212b}
.seat .avw:has(.avfw) .mic{bottom:-14px;inset-inline-end:-16px}
.seat .nm{display:flex;align-items:center;justify-content:center;gap:3px;max-width:94%;height:18px;margin:0!important;font-size:12.5px;font-weight:700}
.seat .nm .nt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat .nm svg,.seat .nm .bdg,.seat .nm .ri{flex:none;font-size:12px}.seat .nm svg{width:13px;height:13px}
.seat.c0 .nm .nt{color:#9fd3ff}.seat.c1 .nm .nt{color:#b9adf3}.seat.owner .nm .nt{color:#ffd76a}.seat.me .nm .nt{color:#fff}
.seat.empty{cursor:default}.seat.empty .es{width:58px;height:58px;border-radius:50%;border:2px dashed rgba(120,150,180,.28);display:grid;place-items:center;color:rgba(170,195,220,.28);background:rgba(255,255,255,.02)}
.rovin .stage .seats .pp:has(.avfw){margin-top:0!important;padding-bottom:0!important}.rovin .stage .seats .pp:has(.avfw) .nm{margin-top:0!important}
.rovin.v5 #chatbox{flex:1;min-height:70px;display:flex;flex-direction:column}
.rovin.v5 .msgs{gap:8px;padding:2px 0}
.rovin.v5 .msg{display:flex;align-items:flex-start;gap:8px;max-width:92%;padding:0;background:none;align-self:flex-start;border-radius:0}
.mav{flex:none;cursor:pointer;border-radius:50%;padding:2px;background:linear-gradient(135deg,#ff3fb4,#2aabee)}.mav .av{border:2px solid #17212b!important}
.mbd{position:relative;min-width:110px;padding:6px 12px 16px;border-radius:18px;border-start-start-radius:6px;background:linear-gradient(135deg,rgba(43,82,120,.42),rgba(30,50,75,.42));border:1px solid rgba(120,150,180,.3)}
.msg.me .mbd{background:linear-gradient(135deg,rgba(42,171,238,.38),rgba(42,171,238,.42));border-color:rgba(42,171,238,.4)}
.mbd small{display:flex;align-items:center;gap:4px;font-size:12.5px;font-weight:800;cursor:pointer;opacity:1}.mbd small svg{width:13px;height:13px}
.mtx{font-size:14.5px;line-height:1.5;word-break:break-word}
.mtm{position:absolute;bottom:3px;inset-inline-end:10px;font-size:10px;color:rgba(255,255,255,.55);direction:ltr}
.rovin.v5 .mdel{top:4px}
.rbar{display:flex!important;align-items:center;gap:7px;padding:4px 0 0!important;margin:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;flex:none}
.rovin.v5.typing .dock{display:flex!important}
.rbi{flex:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(24,37,51,.95);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0;transition:transform .15s}
.rbi svg{width:22px;height:22px}
.rbi.gift{border:0;background:linear-gradient(135deg,#2aabee,#1c8fd0);box-shadow:0 0 8px rgba(42,171,238,.65)}
#rmicw{display:contents}
.rbi.rmic.on{border:0;background:linear-gradient(135deg,#34f0a8,#13c47c);color:#03261a}.rbi.rmic.off{color:#ff8ea0}
.rbi.rmic.talk{animation:micwave 1.15s ease-out infinite}
.rbi.hand b{font-size:21px}.rbi.hand.on{background:linear-gradient(135deg,#ffc83d,#ff9f43);border:0}
.cin{flex:1;min-width:0;display:flex;align-items:center;gap:4px;height:48px;border-radius:99px;border:1px solid rgba(120,150,180,.35);background:rgba(23,33,43,.96);padding-inline:14px 5px}
.cin input{flex:1;min-width:0;border:0!important;background:none!important;padding:0 2px;height:100%;font-size:15px;border-radius:0}
.cs{flex:none;width:34px;height:34px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--a),var(--b));color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}.cs svg{transform:scaleX(-1)}
.cemo{flex:none;width:36px;height:36px;border-radius:50%;border:0;background:none;color:#9fb3c8;display:grid;place-items:center;cursor:pointer;padding:0}.cemo svg{width:24px;height:24px}.cemo.on{color:var(--b)}
.rovin.v5 #gfab{display:none!important}
.rovin.v5>div:empty{display:none}
.seats{background:none!important;border:0!important;box-shadow:none!important;padding:6px 0 4px!important;gap:12px 0!important}
.seat .sav{width:88px;height:88px}.seat.empty .es{width:66px;height:66px}.seat .nm{font-size:13px}
.rovin.v5 .stage{max-height:62%}

/* bottom bar reversed + tiktok comments + invite */
.rbar{flex-direction:row!important;direction:rtl}
.rovin.v5 .msgs{gap:6px;padding-top:18px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 30px);mask-image:linear-gradient(to bottom,transparent 0,#000 30px)}
.rovin.v5 .msg{gap:7px;max-width:86%;align-items:flex-start}
.rovin.v5 .mav{padding:0;background:none;margin-top:2px}.rovin.v5 .mav .av{border:1.5px solid rgba(255,255,255,.35)!important}
.rovin.v5 .mbd{min-width:0;padding:5px 12px 6px;border-radius:16px;background:rgba(0,0,0,.32);border:0;backdrop-filter:none}
.rovin.v5 .msg.me .mbd{background:rgba(42,171,238,.18)}
.rovin.v5 .mbd small{color:rgba(255,255,255,.62);font-size:12px;font-weight:700}
.rovin.v5 .mtx{font-size:14px;line-height:1.45;color:#fff}
.rovin.v5 .msg.new-in{animation:tkin .25s ease-out both}@keyframes tkin{from{opacity:0;transform:translateY(8px)}}
.seat.empty{cursor:pointer}.seat.empty .es{color:rgba(170,195,220,.55);border-color:rgba(120,150,180,.38);transition:transform .15s,background .2s}.seat.empty:active .es{transform:scale(.92);background:rgba(120,150,180,.15)}.seat.empty .nm .nt{color:rgba(170,195,220,.45);font-size:11.5px;font-weight:600}
.ivs{display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:15px;border:1px solid var(--line);background:rgba(0,0,0,.28)}.ivs input{border:0;background:none;padding:12px 0}.ivs svg{flex:none;opacity:.7}
.ivl{display:flex;flex-direction:column;gap:4px;max-height:52vh;overflow-y:auto}
.ivr{display:flex;align-items:center;gap:11px;padding:8px 4px}
.ivb{flex:none;padding:8px 16px;border-radius:99px;border:0;background:linear-gradient(135deg,var(--a),var(--b));color:#fff;font:inherit;font-size:13.5px;font-weight:800;cursor:pointer}.ivb.done{background:rgba(255,255,255,.1);color:var(--dim)}
.dminv{display:flex;align-items:center;gap:10px;min-width:220px;padding:4px 2px}.dminvi{font-size:26px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);flex:none}.dminv small{display:block;font-size:11.5px;opacity:.75}
.dminvb{flex:none;padding:8px 16px;border-radius:99px;border:0;background:#fff;color:#2a0d55;font:inherit;font-weight:800;cursor:pointer}

.cin input:focus,#ci:focus{box-shadow:none!important;outline:none!important}.cin:focus-within{border-color:rgba(120,170,210,.6)}
.cin .cs{display:none}.cin.has .cs{display:grid;animation:csin .18s ease-out}@keyframes csin{from{transform:scale(.4);opacity:0}}
.seat.me{cursor:pointer}

/* telegram-like calm default theme */
body[data-t=aurora] .blob,body:not([data-t]) .blob{opacity:.05}
body[data-t=aurora] .btn.main{box-shadow:none}
body[data-t=aurora] .glass{backdrop-filter:none;-webkit-backdrop-filter:none}
.pib{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center;cursor:pointer;transition:transform .15s}.pib:active{transform:scale(.9)}.pib.main{background:linear-gradient(135deg,var(--a),var(--b));border:0;box-shadow:0 6px 18px -8px var(--a)}
.seat .mic.off{background:#2a3644;color:#8fa3b8}.seat .mic.mm{background:#e5484d;color:#fff;border-color:#17212b;box-shadow:0 0 8px rgba(229,72,77,.6)}
