/* Mobile-only UI: leave the native WooCommerce desktop gallery intact. */
.hk-mobile-gallery{display:none}
.hk-mobile-viewer:not([open]){display:none}
@media(max-width:760px){
  .hk-product-gallery-card.has-mobile-gallery{padding:0;border:0;border-radius:12px;background:#fff}
  .hk-product-gallery-card.has-mobile-gallery .woocommerce-product-gallery{position:absolute!important;top:0;right:0;visibility:hidden;pointer-events:none}
  .has-mobile-gallery .hk-mobile-gallery{display:block;min-width:0;overflow:hidden;border-radius:12px;background:#fff}
  .hk-mobile-gallery__track,.hk-mobile-viewer__track{display:flex;direction:rtl;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .hk-mobile-gallery__track::-webkit-scrollbar,.hk-mobile-viewer__track::-webkit-scrollbar,.hk-mobile-viewer__thumbs::-webkit-scrollbar{display:none}
  .hk-mobile-gallery__slide{position:relative;display:grid;place-items:center;flex:0 0 100%;min-width:0;aspect-ratio:6/5;scroll-snap-align:center;background:#fff;cursor:zoom-in;-webkit-tap-highlight-color:transparent}
  .hk-mobile-gallery__slide img{position:absolute;inset:0;margin:auto;display:block;width:88%;height:88%;min-height:0;object-fit:contain;user-select:none}
  .hk-mobile-gallery__footer{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;min-height:42px;padding:0 10px 8px;gap:12px}
  .hk-mobile-gallery__dots{display:flex;direction:rtl;align-items:center;flex-wrap:wrap;gap:0}
  .hk-mobile-gallery__dots[hidden]{display:none}
  .hk-mobile-gallery__dot{display:grid;place-items:center;width:26px;height:32px;padding:0;border:0;background:transparent;cursor:pointer}
  .hk-mobile-gallery__dot::after{content:'';width:7px;height:7px;border-radius:9px;background:#ddd;transition:width .15s}
  .hk-mobile-gallery__dot[aria-current=true]::after{width:17px;background:#111}
  .hk-mobile-gallery__video{min-height:36px;padding:5px 12px;border:0;border-radius:20px;background:#f4f5f6;color:#5d626b;font:inherit;font-size:12px;cursor:pointer}
  .has-mobile-gallery .hk-gallery-video-stage{top:0;right:0;left:0;height:auto;aspect-ratio:6/5}
  .hk-mobile-gallery :focus-visible,.hk-mobile-viewer :focus-visible{outline:2px solid var(--hk-primary,#1636db);outline-offset:-3px}
  html.hk-mobile-gallery-open,html.hk-mobile-gallery-open body{overflow:hidden!important;overscroll-behavior:none}
  .hk-mobile-viewer[open]{position:fixed;inset:0;z-index:999999;display:block;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0 0 max(24px,env(safe-area-inset-bottom));border:0;background:#fff;color:#505663;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;font-family:inherit}
  .hk-mobile-viewer::backdrop{background:rgba(0,0,0,.45)}
  .hk-mobile-viewer__header{display:flex;justify-content:flex-end;align-items:center;min-height:56px;padding:env(safe-area-inset-top) 12px 0}
  .hk-mobile-viewer__close{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#f4f5f6;color:#30343b;font-size:30px;line-height:1;cursor:pointer}
  .hk-mobile-viewer__track{gap:12px;padding:12px 18px 24px;scroll-padding-inline:18px}
  .hk-mobile-viewer__slide{position:relative;flex:0 0 calc(100% - 16px);min-width:0;aspect-ratio:1;display:grid;place-items:center;background:#fff;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.09);scroll-snap-align:center}
  .hk-mobile-viewer__slide img{position:absolute;inset:0;margin:auto;display:block;width:88%;height:88%;min-height:0;object-fit:contain;user-select:none}
  .hk-mobile-viewer__count{margin:8px 20px 16px;text-align:right;font-size:14px;color:#777}
  .hk-mobile-viewer__thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 20px 16px;scrollbar-width:none}
  .hk-mobile-viewer__thumb{display:grid;place-items:center;flex:0 0 70px;height:70px;padding:5px;border:1px solid #e1e3e6;border-radius:12px;background:#fff;cursor:pointer}
  .hk-mobile-viewer__thumb img{display:block;width:100%;height:100%;object-fit:contain}
  .hk-mobile-viewer__thumb[aria-current=true]{border-color:#80858b;box-shadow:0 0 0 1px #80858b}
}
@media(prefers-reduced-motion:reduce){.hk-mobile-gallery__dot::after{transition:none}}
