/* LESTER_MOBILE_PRODUCT_ZOOM_V1_1_20260728
   Mobile/touch-only full-screen media viewer.
   No floating icon: open with a double tap or a two-finger gesture. */
.lester-mobile-product-zoom-trigger,
.lester-mobile-media-viewer{
  display:none;
}

@media (hover:none) and (pointer:coarse){
  html.lester-mobile-viewer-open,
  html.lester-mobile-viewer-open body{
    overscroll-behavior:none;
  }

  #lester-app-shell [data-product-photo-zoom],
  #lester-app-shell .lester-mobile-product-zoom-gesture{
    -webkit-tap-highlight-color:transparent;
    touch-action:pan-y;
  }

  /* The old floating zoom trigger must never be shown on mobile. */
  #lester-app-shell .lester-mobile-product-zoom-trigger{
    display:none!important;
  }

  /* Keep the visual dots compact while increasing their actual touch targets. */
  #lester-app-shell .lester-product-media-slider__dots{
    gap:0;
    padding:2px 5px;
  }
  #lester-app-shell .lester-product-media-slider__dots button,
  #lester-app-shell .lester-product-media-slider__dots button.is-active{
    position:relative;
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    padding:0;
    background:transparent;
  }
  #lester-app-shell .lester-product-media-slider__dots button::before{
    content:"";
    display:block;
    width:9px;
    height:9px;
    border-radius:999px;
    background:#aeb2c6;
    transition:width .16s ease,background .16s ease;
  }
  #lester-app-shell .lester-product-media-slider__dots button.is-active::before{
    width:23px;
    background:#000080;
  }

  .lester-mobile-media-viewer{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:block;
    width:100%;
    height:100vh;
    height:100dvh;
    overflow:hidden;
    background:rgba(7,8,18,.985);
    color:#fff;
    opacity:0;
    visibility:hidden;
    overscroll-behavior:none;
    transition:opacity .18s ease,visibility 0s linear .18s;
    -webkit-tap-highlight-color:transparent;
  }
  .lester-mobile-media-viewer[hidden]{display:none!important}
  .lester-mobile-media-viewer.is-open{
    opacity:1;
    visibility:visible;
    transition-delay:0s;
  }
  .lester-mobile-media-viewer__dialog{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    outline:none;
  }
  .lester-mobile-media-viewer__toolbar{
    position:absolute;
    top:0;
    left:0;
    right:0;
    z-index:5;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:74px;
    padding:calc(10px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) 10px calc(16px + env(safe-area-inset-left));
    background:linear-gradient(to bottom,rgba(0,0,0,.62),rgba(0,0,0,0));
    pointer-events:none;
  }
  .lester-mobile-media-viewer__meta{min-width:0;pointer-events:none}
  .lester-mobile-media-viewer__counter{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    background:rgba(0,0,0,.34);
    font:700 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
    letter-spacing:.02em;
  }
  .lester-mobile-media-viewer__label{
    display:block;
    max-width:min(70vw,420px);
    margin-top:5px;
    overflow:hidden;
    color:rgba(255,255,255,.78);
    font:600 12px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .lester-mobile-media-viewer__close,
  .lester-mobile-media-viewer__nav{
    display:grid;
    place-items:center;
    margin:0;
    padding:0;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    background:rgba(0,0,0,.38);
    color:#fff;
    box-shadow:none;
    touch-action:manipulation;
    pointer-events:auto;
    -webkit-tap-highlight-color:transparent;
  }
  .lester-mobile-media-viewer__close{
    flex:0 0 50px;
    width:50px;
    height:50px;
    font:300 39px/1 Arial,sans-serif;
  }
  .lester-mobile-media-viewer__close span{display:block;margin-top:-3px}
  .lester-mobile-media-viewer__nav{
    position:absolute;
    top:50%;
    z-index:4;
    width:48px;
    height:48px;
    font:400 36px/1 Arial,sans-serif;
    opacity:.72;
    transform:translateY(-50%);
  }
  .lester-mobile-media-viewer__nav--prev{left:calc(8px + env(safe-area-inset-left))}
  .lester-mobile-media-viewer__nav--next{right:calc(8px + env(safe-area-inset-right))}
  .lester-mobile-media-viewer__nav[hidden]{display:none!important}
  .lester-mobile-media-viewer__close:active,
  .lester-mobile-media-viewer__nav:active{background:rgba(255,255,255,.2)}

  .lester-mobile-media-viewer__stage{
    position:absolute;
    inset:0;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    padding:calc(82px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(142px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));
    overflow:hidden;
    touch-action:none;
    user-select:none;
    -webkit-user-select:none;
  }
  .lester-mobile-media-viewer__image{
    display:block;
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
    margin:0;
    opacity:0;
    object-fit:contain;
    transform:translate3d(0,0,0) scale(1);
    transform-origin:center center;
    will-change:transform;
    pointer-events:none;
    user-select:none;
    -webkit-user-select:none;
    -webkit-user-drag:none;
  }
  .lester-mobile-media-viewer__image.is-loaded{opacity:1}
  .lester-mobile-media-viewer__image.is-animated{transition:transform .2s ease}
  .lester-mobile-media-viewer__hint{
    position:absolute;
    left:50%;
    bottom:calc(86px + env(safe-area-inset-bottom));
    z-index:3;
    max-width:calc(100% - 32px);
    margin:0;
    padding:9px 14px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:rgba(0,0,0,.52);
    color:#fff;
    font:600 13px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;
    text-align:center;
    transform:translateX(-50%);
    pointer-events:none;
  }
  .lester-mobile-media-viewer__hint[hidden]{display:none!important}
  .lester-mobile-media-viewer.is-zoomed .lester-mobile-media-viewer__nav{
    opacity:.18;
    pointer-events:none;
  }

  .lester-mobile-media-viewer__footer{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:6;
    display:flex;
    justify-content:center;
    padding:24px calc(16px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));
    background:linear-gradient(to top,rgba(7,8,18,.98) 0%,rgba(7,8,18,.86) 58%,rgba(7,8,18,0) 100%);
    pointer-events:none;
  }
  .lester-mobile-media-viewer__return{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:min(100%,330px);
    min-height:52px;
    margin:0;
    padding:12px 20px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:999px;
    background:#fff;
    color:#000080;
    box-shadow:0 12px 34px rgba(0,0,0,.34);
    font:800 15px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
    letter-spacing:.01em;
    touch-action:manipulation;
    pointer-events:auto;
    -webkit-tap-highlight-color:transparent;
  }
  .lester-mobile-media-viewer__return span:first-child{
    font-size:22px;
    line-height:1;
  }
  .lester-mobile-media-viewer__return:active{
    transform:scale(.98);
    background:#f1f1f8;
  }
}

@media (prefers-reduced-motion:reduce){
  .lester-mobile-media-viewer,
  .lester-mobile-media-viewer__image,
  #lester-app-shell .lester-product-media-slider__dots button::before,
  .lester-mobile-media-viewer__return{
    transition:none!important;
  }
}
