[data-viewer] .tt-gallery__stage { cursor: zoom-in; }
[data-viewer]:has(.tt-gallery__slide + .tt-gallery__slide) .tt-gallery__stage { cursor: grab; }
/* classic TaLim Default product image: a bordered square with a wishlist heart (29 Oct 2026) */
.tt-gallery { position: relative; display: grid; gap: 10px; }
.tt-gallery__stage { position: relative; overflow: hidden; background: #F5F6F8; border: 1px solid #E6E8EC; border-radius: 6px; }
.tt-gallery__slides { box-sizing: border-box; display: grid; grid-auto-flow: column; grid-auto-columns: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0; padding: 0; list-style: none; }
.tt-gallery__arrow { position: absolute; top: 50%; z-index: 2; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; transform: translateY(-50%); background: rgba(255,255,255,0.94); border: 1px solid #E6E8EC; border-radius: 6px; cursor: pointer; }
.tt-gallery__arrow--prev { left: 10px; }
.tt-gallery__arrow--next { right: 10px; }
.tt-gallery__slides::-webkit-scrollbar { display: none; }
.tt-gallery__slide { scroll-snap-align: start; aspect-ratio: 1; overflow: hidden; }
.tt-gallery__slide iframe { background: #000; }
.tt-gallery__image, .tt-gallery__slide img, .tt-gallery__slide svg, .tt-gallery__video, .tt-gallery__slide iframe { display: block; width: 100%; height: 100%; object-fit: cover; border: 0; }
.tt-gallery__fav { position: absolute; top: 14px; right: 14px; z-index: 2; display: inline-flex; justify-content: center; align-items: center; width: 42px; height: 42px; background: rgba(255,255,255,0.94); border-radius: 999px; color: #0A1628; box-shadow: 0 2px 8px rgba(10,22,40,0.14); }
.tt-gallery__fav-icon { width: 22px; height: 22px; stroke-width: 2; }
.tt-gallery__thumbs { display: flex; gap: 10px; overflow-x: auto; margin: 0; padding: 0; list-style: none; }
.tt-gallery__thumbs li { display: flex; }
.tt-gallery__thumb { position: relative; display: block; width: 64px; height: 64px; }
.tt-gallery__play { position: absolute; inset: 0; z-index: 1; display: flex; align-items: center; justify-content: center; color: #ffffff; font-size: 13px; text-shadow: 0 1px 3px rgba(0,0,0,.6); pointer-events: none; }
.tt-gallery__thumb:has(.tt-gallery__play) { box-sizing: border-box; background: #0A1628; border: 1px solid #E6E8EC; border-radius: 6px; overflow: hidden; }
.tt-gallery__thumb:has(.tt-gallery__play) img { width: 62px; height: 62px; border: 0; border-radius: 0; opacity: .7; }
.tt-gallery__thumb img, .tt-gallery__thumb svg { box-sizing: border-box; display: block; width: 64px; height: 64px; object-fit: cover; border: 1px solid #E6E8EC; border-radius: 6px; }
.tt-gallery__thumb[aria-current="true"] img, .tt-gallery__thumb[aria-current="true"] svg { border-color: #0A1628; }
@media (min-width: 1025px) {
  .tt-gallery--thumbs-left { grid-template-columns: 72px minmax(0, 1fr); }
  .tt-gallery--thumbs-left .tt-gallery__thumbs { order: -1; flex-direction: column; }
}
