.radio-ad-slot{display:block;box-sizing:border-box;width:min(1120px,calc(100% - 32px));margin:22px auto;padding:0;position:relative;z-index:1;min-width:0;text-align:center;overflow:hidden;border-radius:12px}
.radio-ad-slot:empty{display:none}
.radio-ad-slot img{display:block;width:100%;height:auto;max-height:320px;object-fit:contain;margin:auto;border-radius:10px}
.radio-ad-slot>a{display:block}
.radio-ad-content{display:block;max-width:100%;overflow:hidden}
.radio-ad-content iframe{max-width:100%}
.ad-footer-banner{margin-bottom:28px}
@media(max-width:600px){.radio-ad-slot{width:calc(100% - 24px);margin:16px auto}.radio-ad-slot img{max-height:220px}}

/* Reserve only enough space for the fixed player; increase it only when a real ad is rendered in its stack. */
body{padding-bottom:110px}
body:has(.sticky-player-ad-stack .radio-ad-content:not(:empty)){padding-bottom:220px}
@media(max-width:650px){
  body{padding-bottom:88px}
  body:has(.sticky-player-ad-stack .radio-ad-content:not(:empty)){padding-bottom:190px}
}


/* Unified persistent advertising stack: ad above, fixed player, optional ad below. */
.sticky-player-ad-stack{
  position:fixed; inset-inline:0; bottom:0; z-index:60;
  display:flex; flex-direction:column; align-items:stretch;
  width:100%; max-width:none; margin:0; padding:0;
  pointer-events:none;
}
.sticky-player-ad-stack > .radio-ad-slot{
  pointer-events:auto; width:min(1120px,calc(100% - 24px));
  margin:0 auto 6px; padding:8px 12px; max-height:86px;
  overflow:auto; border:1px solid var(--line,#493354);
  border-radius:12px; background:rgba(27,18,35,.97);
  box-shadow:0 5px 24px rgba(0,0,0,.28);
}
.sticky-player-ad-stack > .radio-ad-slot:empty{display:none}
.sticky-player-ad-stack > .sticky-player{
  position:relative!important; inset:auto!important; bottom:auto!important;
  z-index:auto!important; width:100%; max-width:none; margin:0;
  pointer-events:auto;
}
.sticky-player-ad-stack > .sticky-player + .radio-ad-slot{margin:6px auto 0}
.sticky-player-ad-stack .radio-ad-content{max-height:68px;overflow:auto}
.sticky-player-ad-stack .radio-ad-slot img{max-height:64px;width:auto;max-width:100%;object-fit:contain}
@media(max-width:650px){
 .sticky-player-ad-stack > .radio-ad-slot{width:calc(100% - 12px);max-height:68px;padding:5px 8px;margin-bottom:4px}
 .sticky-player-ad-stack .radio-ad-content{max-height:54px}
 .sticky-player-ad-stack .radio-ad-slot img{max-height:48px}
 .sticky-player-ad-stack > .sticky-player + .radio-ad-slot{margin-top:4px}
}
