/* ═══════════════════════════════════════════════════════════════════════════
 *  v325 · موج صدای لایو صوتی — سبک «هاله»: نوار نورانیِ چرخان دقیقاً دور لبهٔ قاب/هدور
 *  (یا دور عکس اگر قاب ندارد) + جرقه + پالس نرم از پشت. همه پشتِ عکس و قاب‌اند،
 *  پس وسط (صورت کاربر) هیچ‌وقت پوشیده نمی‌شود.  لایه‌ها: ۱ و ۲ نوار چرخان، ۳ جرقه، ۴ پالس.
 *  اندازه/ضخامت/سرعت/رنگ از پنل ← «موج صدای لایو» (309-v324-wave.js)
 * ═══════════════════════════════════════════════════════════════════════════ */
#liveRoom49 .lr-seat{isolation:isolate}
#liveRoom49 .lr-seat .circ,#liveRoom49 .lr-hostchip #lrHostAv{position:relative;z-index:2}
#liveRoom49 .lr-seat > .mwx226,.lr-hostchip .mwx226,.mwx226.fr323,.wv123{z-index:1 !important}
#liveRoom49 .lr-seat.speaking:not(.v) .circ{border-color:transparent !important;box-shadow:0 0 0 1.5px rgba(255,255,255,.55) !important}
#liveRoom49 .lr-seat.speaking:not(.v):has(> .fr226) .circ{box-shadow:none !important}

.mwx226::before,.mwx226::after,.wv123::before{content:none !important}
.wv123{--a:var(--w1,#FFE066);--b:var(--w2,#FF3D7F);--c:var(--w3,#B14BFF)}

/* پایهٔ مشترک چهار لایه */
.mwx226:not(.img)>b,.wv123>i{position:absolute;inset:0;border-radius:50%;opacity:0;pointer-events:none;border:0 !important;
  background:none;filter:none !important;transform:none;animation:none;transition:opacity .3s ease}
.mwx226:not(.img)>b:nth-child(-n+2),.wv123>i:nth-child(-n+2){
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - var(--wv-t,8px) * 1.5),#000 calc(100% - var(--wv-t,8px)),#000 calc(100% - 2px),transparent 100%) !important;
          mask:radial-gradient(farthest-side,transparent calc(100% - var(--wv-t,8px) * 1.5),#000 calc(100% - var(--wv-t,8px)),#000 calc(100% - 2px),transparent 100%) !important;
  scale:calc(1 + var(--lvl,.3) * var(--wv-r,.35) * .14);transition:opacity .3s ease,scale .12s linear}
/* ۱ — نوار اصلی: کمان‌های نورانی (تعدادشان = «تعداد کمان») که دور قاب می‌چرخند */
.mwx226:not(.img)>b:nth-child(1),.wv123>i:nth-child(1){
  background:repeating-conic-gradient(from 0deg,transparent 0deg,var(--a) calc(var(--wv-p,180deg) * .16),#fff calc(var(--wv-p,180deg) * .3),var(--b) calc(var(--wv-p,180deg) * .44),var(--c) calc(var(--wv-p,180deg) * .6),transparent calc(var(--wv-p,180deg) * .8),transparent var(--wv-p,180deg))}
/* ۲ — نوار دوم، پهن‌تر و نرم، خلاف جهت (حس گرداب) */
.mwx226:not(.img)>b:nth-child(2),.wv123>i:nth-child(2){inset:calc(var(--wv-t,8px) * -.3);
  background:repeating-conic-gradient(from 70deg,transparent 0deg,var(--c) calc(var(--wv-p,180deg) * .2),var(--a) calc(var(--wv-p,180deg) * .42),transparent calc(var(--wv-p,180deg) * .7),transparent var(--wv-p,180deg))}
/* ۳ — جرقه‌ها روی لبه */
.mwx226:not(.img)>b:nth-child(3),.wv123>i:nth-child(3){inset:calc(var(--wv-t,8px) * .45);
  background:radial-gradient(circle at 50% 2%,#fff 0 1.4px,transparent 2.6px),radial-gradient(circle at 93% 32%,#fff 0 1.1px,transparent 2.2px),
    radial-gradient(circle at 80% 88%,#fff 0 1.5px,transparent 2.7px),radial-gradient(circle at 12% 76%,#fff 0 1px,transparent 2px),radial-gradient(circle at 6% 26%,#fff 0 1.3px,transparent 2.4px)}
/* ۴ — پالس نرم که از پشت قاب/عکس بیرون می‌آید و محو می‌شود */
.mwx226:not(.img)>b:nth-child(4),.wv123>i:nth-child(4){z-index:-1;background:radial-gradient(closest-side,transparent 52%,var(--b) 74%,transparent 100%)}

/* در حال صحبت */
.speaking .mwx226:not(.img),.spk121 .mwx226:not(.img),.mwx226.on:not(.img),.wv123{
  filter:drop-shadow(0 0 calc(var(--wv-g,.8) * 7px) var(--a)) drop-shadow(0 0 calc(var(--wv-g,.8) * 2px) var(--c)) !important}
.speaking .mwx226:not(.img)>b:nth-child(1),.spk121 .mwx226:not(.img)>b:nth-child(1),.mwx226.on:not(.img)>b:nth-child(1),.wv123>i:nth-child(1){
  opacity:var(--wv-o,.95);animation:wv325r var(--wv-sp,2.6s) linear infinite}
.speaking .mwx226:not(.img)>b:nth-child(2),.spk121 .mwx226:not(.img)>b:nth-child(2),.mwx226.on:not(.img)>b:nth-child(2),.wv123>i:nth-child(2){
  opacity:calc(var(--wv-o,.95) * .7);animation:wv325r calc(var(--wv-sp,2.6s) * 1.7) linear infinite reverse}
.speaking .mwx226:not(.img)>b:nth-child(3),.spk121 .mwx226:not(.img)>b:nth-child(3),.mwx226.on:not(.img)>b:nth-child(3),.wv123>i:nth-child(3){
  animation:wv325s calc(var(--wv-sp,2.6s) * 2.4) linear infinite}
.speaking .mwx226:not(.img)>b:nth-child(4),.spk121 .mwx226:not(.img)>b:nth-child(4),.mwx226.on:not(.img)>b:nth-child(4),.wv123>i:nth-child(4){
  animation:wv325p calc(var(--wv-sp,2.6s) * .6) cubic-bezier(.2,.6,.35,1) infinite}
.mwx226.fr323:not(.img)>b:nth-child(4),.wv123.fr323>i:nth-child(4){animation-name:wv325pf !important}

@keyframes wv325r{to{transform:rotate(360deg)}}
@keyframes wv325s{0%{transform:rotate(0);opacity:.35}25%{opacity:1}50%{opacity:.5}75%{opacity:1}100%{transform:rotate(360deg);opacity:.35}}
@keyframes wv325p{0%{transform:scale(var(--ps,.8));opacity:calc(var(--wv-o,.95) * .5)}100%{transform:scale(calc(var(--wv-ne,1.35) + var(--lvl,.3) * var(--wv-r,.35)));opacity:0}}
@keyframes wv325pf{0%{transform:scale(var(--ps,.8));opacity:calc(var(--wv-o,.95) * .4)}100%{transform:scale(calc(var(--wv-fe,1.25) + var(--lvl,.3) * var(--wv-r,.35)));opacity:0}}

/* موج‌های عکس‌دار (خریدنی/VIP): پشت قاب و عکس، هم‌اندازهٔ هاله، وسط شفاف */
.mwx226.img .ha-img{transform:none !important;
  -webkit-mask:radial-gradient(closest-side,transparent var(--hole,62%),#000 calc(var(--hole,62%) + 6%)) !important;
          mask:radial-gradient(closest-side,transparent var(--hole,62%),#000 calc(var(--hole,62%) + 6%)) !important}
.speaking .mwx226.img .ha-img,.spk121 .mwx226.img .ha-img{opacity:1;animation:wvi324 calc(var(--wv-sp,2.6s) * .35) ease-in-out infinite alternate !important}
@keyframes wvi324{from{transform:scale(1);filter:brightness(1)}to{transform:scale(calc(1.03 + var(--lvl,.3) * var(--wv-r,.35) * .2));filter:brightness(1.25)}}
@media (prefers-reduced-motion:reduce){.mwx226>b,.wv123 i,.mwx226.img .ha-img{animation:none !important}}
