/* Meloshad v83 — single-audio controls, animated playback wave and stop controls */
:root{--m83-green:var(--brand,#22f04e)}

.melo-wave-button{position:relative!important;overflow:visible!important;isolation:isolate}
.melo-wave-bars{position:absolute;z-index:0;inset:7px;display:none;align-items:center;justify-content:center;gap:2px;pointer-events:none;opacity:.44}
.melo-wave-bars i{display:block!important;width:2px!important;min-width:2px!important;height:35%;margin:0!important;border:0!important;border-radius:3px!important;background:currentColor!important;transform-origin:center!important;animation:melo83Wave .52s ease-in-out infinite alternate!important}
.melo-wave-bars i:nth-child(2){height:65%;animation-delay:-.15s!important}.melo-wave-bars i:nth-child(3){height:95%;animation-delay:-.31s!important}.melo-wave-bars i:nth-child(4){height:55%;animation-delay:-.22s!important}.melo-wave-bars i:nth-child(5){height:78%;animation-delay:-.42s!important}
.melo-wave-button.is-playing .melo-wave-bars{display:flex}
.melo-wave-button.is-playing{box-shadow:0 0 0 5px rgba(34,240,78,.09),0 10px 30px rgba(0,0,0,.35)!important}
@keyframes melo83Wave{from{transform:scaleY(.24);opacity:.45}to{transform:scaleY(1);opacity:1}}

/* Card/slider play controls turn into a stop button while the wave remains animated. */
.melo-v78-play.is-playing>span,
.melo-slider-play.is-playing>.melo-play-triangle,
.play-overlay.is-playing{font-size:0!important}
.melo-v78-play.is-playing>span{display:none!important}
.melo-slider-play.is-playing>.melo-slider-equalizer{display:none!important}
.melo-v78-play.is-playing::after,
.melo-slider-play.is-playing::after,
.play-overlay.is-playing::after{
  content:""!important;position:absolute!important;z-index:3!important;left:50%!important;top:50%!important;width:10px!important;height:10px!important;margin:-5px 0 0 -5px!important;border:0!important;border-radius:2px!important;background:currentColor!important;box-shadow:none!important
}
.melo-v78-play.is-playing,.melo-slider-play.is-playing,.play-overlay.is-playing{background:var(--m83-green)!important;color:#041008!important;border-color:var(--m83-green)!important}
.melo-v78-play .melo-wave-bars,.melo-slider-play .melo-wave-bars,.play-overlay .melo-wave-bars{inset:5px;opacity:.32}

/* Fixed player: play/pause plus a dedicated hard-stop control. */
.player-controls{gap:8px!important}
.player-controls #stopBtn{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;background:#121819!important;color:#fff!important;font-size:13px!important}
.player-controls #mainPlay,.np-controls #npPlay,.v50-gp-controls #v50GpPlay,.v50-sheet-controls #v50SheetPlay{z-index:1}
.player-controls #mainPlay .melo-wave-bars,.np-controls #npPlay .melo-wave-bars,.v50-gp-controls #v50GpPlay .melo-wave-bars,.v50-sheet-controls #v50SheetPlay .melo-wave-bars{inset:5px;opacity:.23}
.melo-stop-button{cursor:pointer}
.np-controls #npStop,.v50-sheet-controls #v50SheetStop{border:1px solid rgba(255,255,255,.18)!important;background:#111819!important;color:#fff!important}
.v50-gp-controls #v50GpStop{width:34px;height:34px;border-radius:10px;border:1px solid #26312f;background:#101718;color:#fff;font-size:11px}

/* Detail-page controls */
#trackPlay.is-playing{position:relative;overflow:hidden;background:var(--m83-green)!important;color:#031008!important}
#trackStop{min-width:88px}
#trackPlay .melo-wave-bars{inset:4px 8px;opacity:.18}

@media(max-width:900px){
  .player-controls button:not(.mainplay):not(#stopBtn){display:none!important}
  .player-controls #stopBtn{display:grid!important;width:40px!important;height:40px!important}
  .player-controls .mainplay{width:48px!important;height:48px!important}
  .np-controls{gap:4px!important;justify-content:center!important}
  .np-controls button{flex:none}.np-controls #npShuffle,.np-controls #npRepeat{width:38px;height:38px;font-size:16px}
  .np-controls #npStop{width:46px;height:46px}
  .v50-gp-controls{gap:6px!important}
  .v50-gp-controls #v50GpStop{display:grid!important;place-items:center!important}
}
@media(prefers-reduced-motion:reduce){.melo-wave-bars i{animation:none!important}}

/* Radio/offline compact players keep both pause/play and hard stop visible. */
.radio-now{grid-template-columns:64px minmax(0,1fr) 48px 42px!important}
.radio-now #radioStop{width:40px!important;height:40px!important;background:#111819!important;color:#fff!important;border:1px solid #25332f!important}
.offline-player{grid-template-columns:52px minmax(0,1fr) 46px 40px!important}
.offline-player #offStop{width:38px!important;height:38px!important;background:#111819!important;color:#fff!important;border:1px solid #25332f!important}
.melo-famous-clip.is-playing .melo-wave-bars{display:flex;position:relative;inset:auto;width:28px;height:16px;opacity:.55}
@media(max-width:520px){.radio-now{grid-template-columns:54px minmax(0,1fr) 44px 38px!important}.radio-now img{width:54px!important;height:54px!important}.offline-player{left:8px!important;right:8px!important;grid-template-columns:46px minmax(0,1fr) 42px 36px!important}.offline-player img{width:46px!important;height:46px!important}}
