/* ZLOT V453 - Mobile side-ad cleanup and compact player layout */
@media (max-width: 900px){
  html,body{overflow-x:hidden!important}

  /* 180x600 desktop side banners must never enter the mobile flow. */
  html body .v420-mobile-side-banner,
  html body .v420-mobile-side-left,
  html body .v420-mobile-side-right,
  html body .v421-mobile-side-slot,
  html body [data-v421-mobile-side],
  html body .classic-side-rails,
  html body .v4-side-rails,
  html body .patron-side-rails,
  html body .patron-side-rails-toplayer,
  html body .v376-side-rails{
    display:none!important;
    visibility:hidden!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    max-width:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  /* Single clean mobile content column. */
  html body .z401-stage-wrap{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
  }
  html body .z401-player-col{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
  }
  html body .z401-player-card{
    order:1!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  html body .z401-player-shell{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:16/9!important;
    background:#000!important;
  }
  html body .z401-player-mount,
  html body .z401-player-mount video,
  html body .z401-player-mount iframe,
  html body .z401-player-shell video,
  html body .z401-player-shell iframe{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
  }
  html body .z401-player-controls{
    width:100%!important;
    min-height:54px!important;
    padding:8px 10px!important;
    margin:0!important;
    gap:8px!important;
    box-sizing:border-box!important;
  }

  /* Real horizontal banner areas remain visible and compact. */
  html body .z449-bottom-banner-wrap,
  html body .z401-promo-bottom{
    order:2!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  html body .z449-bottom-banner-wrap.has-v449-slider,
  html body .z449-bottom-banner-wrap .v449-bottom-slider,
  html body .z449-bottom-banner-wrap .v449-header-slider,
  html body .z401-promo-bottom .v449-bottom-slider,
  html body .z401-promo-bottom .v449-header-slider{
    width:100%!important;
    height:clamp(92px,27vw,132px)!important;
    min-height:92px!important;
    max-height:132px!important;
  }
  html body .z449-bottom-banner-wrap img,
  html body .z449-bottom-banner-wrap video,
  html body .z401-promo-bottom img,
  html body .z401-promo-bottom video{
    width:100%!important;
    height:100%!important;
    max-height:132px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  /* Channel panel follows the player without giant gaps. */
  html body .z401-sidebar{
    order:3!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  html body .z401-scroll-list{
    max-height:390px!important;
    overscroll-behavior:contain!important;
  }

  /* Keep fixed mobile navigation away from content. */
  html body{
    padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))!important;
  }
  html body .mobile-app-nav{
    left:8px!important;
    right:8px!important;
    width:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
  }
}

@media (max-width: 480px){
  html body .z401-shell{
    width:calc(100vw - 10px)!important;
    margin-left:5px!important;
    margin-right:5px!important;
  }
  html body .z401-player-card,
  html body .z401-sidebar,
  html body .z449-bottom-banner-wrap,
  html body .z401-promo-bottom{
    border-radius:15px!important;
  }
}
