/* ZOC_PRODUCT_GALLERY_VIDEO_FIX_V43 */

/* The inline video itself owns pointer input; the explicit expand button opens the viewer. */
.lsf-product-main[data-lsf-product-main] > video{
  position:relative;
  z-index:2;
  width:100%;
  max-width:100%;
  min-height:260px;
  max-height:min(620px,72vh);
  object-fit:contain;
  background:#000;
  cursor:default!important;
  touch-action:manipulation;
}
.lsf-product-main[data-lsf-product-main]:has(> video) .lsf-media-expand-v24{
  top:14px;
  bottom:auto;
  z-index:5;
}
.lsf-product-main[data-lsf-product-main]:has(> video){
  overflow:visible;
  isolation:isolate;
  background:#000;
}
.lsf-product-thumbs-v24{
  position:relative;
  z-index:1;
  clear:both;
  margin-top:14px;
}

/* Full-screen viewer: keep native controls fully above the thumbnail footer. */
.lsf-media-viewer-v24{
  --lsf-video-control-reserve-v43:74px;
}
.lsf-media-viewer-stage-v24{
  z-index:1;
  overflow:hidden;
  isolation:isolate;
}
.lsf-media-viewer-media-v24{
  z-index:1;
}
.lsf-media-viewer-media-v24.is-active{
  z-index:3;
}
.lsf-media-viewer-media-v24.is-active:has(video){
  padding-bottom:calc(18px + var(--lsf-video-control-reserve-v43));
}
.lsf-media-viewer-media-v24 video{
  position:relative;
  z-index:4;
  width:min(1180px,100%);
  max-width:100%;
  max-height:calc(100% - var(--lsf-video-control-reserve-v43));
  background:#000;
  pointer-events:auto!important;
  touch-action:manipulation;
}
.lsf-media-viewer-caption-v24{
  z-index:6;
}
.lsf-media-viewer-foot-v24{
  position:relative;
  z-index:12;
  isolation:isolate;
  flex:0 0 auto;
  box-shadow:0 -10px 26px rgba(0,0,0,.24);
}
.lsf-media-viewer-thumbs-v24{
  position:relative;
  z-index:13;
}
.lsf-media-viewer-arrow-v24{
  z-index:9;
}

/* Native media controls need a real painted layer in Chromium/WebView. */
.lsf-product-main video::-webkit-media-controls,
.lsf-media-viewer-v24 video::-webkit-media-controls{
  position:relative;
  z-index:20;
}

@media(max-width:760px){
  .lsf-media-viewer-v24{
    --lsf-video-control-reserve-v43:92px;
  }
  .lsf-media-viewer-media-v24.is-active:has(video){
    padding:8px 6px calc(12px + var(--lsf-video-control-reserve-v43));
  }
  .lsf-media-viewer-media-v24 video{
    max-height:calc(100% - var(--lsf-video-control-reserve-v43));
    border-radius:10px;
  }
  .lsf-product-main[data-lsf-product-main] > video{
    min-height:220px;
    max-height:68vh;
  }
}
