.product-gallery {position:relative; width:100%}
.product-gallery-layout {display:grid; grid-template-columns:minmax(0,1fr) 96px; gap:18px; align-items:start}
.product-gallery-main-wrap {min-width:0}
@media (min-width:959px) {.product-gallery-layout {padding-top:30px}
 .product-gallery-main-wrap {padding-left:20px}
 .product-gallery-main-wrap {padding-top:40px}
}
.product-gallery-main {position:relative; overflow:hidden; border-radius:var(--radius-lg); background:linear-gradient(180deg,var(--bg-card-soft) 0,var(--bg-card) 100%); border:1px solid var(--border-color)}
.product-gallery-slide {display:none; height:100%}
.product-gallery-slide.is-active {display:block}
.product-gallery-lightbox-link {display:block; text-decoration:none; color:inherit}
.product-gallery-zoom-area {position:relative; width:100%; display:flex; align-items:center; justify-content:center; overflow:hidden; cursor:zoom-in; background-repeat:no-repeat; background-position:center; background-size:contain; padding:20px; box-sizing:border-box}
.product-gallery-image-frame {position:relative; display:inline-flex; align-items:flex-start; justify-content:center; max-width:100%}
.product-gallery-main-image {display:block; max-width:100%; max-height:420px; width:auto; height:auto; object-fit:contain; transition:opacity .2s ease,transform .25s ease}
.product-gallery-stickers {position:absolute; top:10px; left:10px; z-index:6; display:flex; flex-direction:column; gap:8px; pointer-events:none}
.product-gallery-sticker {display:inline-flex; align-items:center; justify-content:center; min-height:30px; padding:0 13px; border-radius:999px; font-size:12px; font-weight:700; letter-spacing:.02em; box-shadow:0 6px 18px rgb(15 23 42 / 0.14); backdrop-filter:blur(8px); white-space:nowrap}
.product-gallery-sticker-hit {color:var(--white-1); background:linear-gradient(135deg,var(--red-6),var(--rose-6))}
.product-gallery-sticker-new {color:var(--slate-10); background:linear-gradient(135deg,var(--amber-4),var(--yellow-4))}
.product-gallery-nav {position:absolute; top:50%; transform:translateY(-50%); z-index:4; width:44px; height:44px; border:0; border-radius:999px; background:rgb(255 255 255 / 0.8); color:var(--text-main); box-shadow:var(--shadow); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:transform .2s ease,background .2s ease,opacity .2s ease}
.product-gallery-nav:hover {transform:translateY(-50%) scale(1.05)}
.product-gallery-nav-prev {left:16px}
.product-gallery-nav-next {right:16px}
.dark .product-gallery-nav {background:rgb(15 23 42 / 0.7); color:var(--text-main)}
.product-gallery-thumbs-wrap {display:flex; flex-direction:column; gap:10px; min-height:100%; width:96px}
.product-gallery-thumbs-viewport {overflow:hidden; width:100%}
.product-gallery-thumbs {display:flex; flex-direction:column; gap:12px; transition:transform .25s ease; will-change:transform}
.product-gallery-thumb {display:flex; align-items:center; justify-content:center; width:96px; height:96px; padding:8px; border:1px solid var(--border-color); background:var(--bg-card); border-radius:var(--radius-sm); cursor:pointer; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease; flex:0 0 auto}
.product-gallery-thumb:hover {border-color:var(--border-strong); transform:translateY(-2px)}
.product-gallery-thumb.is-active {border-color:var(--primary); box-shadow:var(--shadow-sm); background:var(--bg-card-soft)}
.product-gallery-thumb img {max-width:100%; max-height:100%; object-fit:contain}
.product-gallery-thumbs-nav {width:100%; min-height:38px; border:1px solid var(--border-color); background:var(--bg-card); color:var(--text-main); border-radius:var(--radius-sm); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:border-color .2s ease,background .2s ease,transform .2s ease}
.product-gallery-thumbs-nav:hover {border-color:var(--border-strong); transform:translateY(-1px)}
.product-gallery-thumbs-nav:disabled {opacity:.45; cursor:default; transform:none}
.product-gallery-empty {min-height:320px; border:1px dashed var(--border-color); border-radius:var(--radius-lg); background:var(--bg-card-soft); color:var(--text-muted)}
@media (max-width:1199px) {.product-gallery-layout {grid-template-columns:minmax(0,1fr) 84px}
 .product-gallery-thumbs-wrap {width:84px}
 .product-gallery-thumb {width:84px; height:84px}
}
@media (max-width:959px) {.product-gallery-layout {grid-template-columns:1fr}
 .product-gallery-thumbs-wrap {order:2; flex-direction:row; align-items:center; width:100%; min-width:0}
 .product-gallery-thumbs-viewport {flex:1 1 auto; min-width:0}
 .product-gallery-thumbs {flex-direction:row; gap:10px}
 .product-gallery-thumb {width:82px; height:82px}
 .product-gallery-thumbs-nav {width:38px; min-width:38px; min-height:82px}
 .product-gallery-thumbs-nav-prev span,.product-gallery-thumbs-nav-next span {transform:rotate(90deg)}
 .product-gallery-main-image {max-height:360px}
}
@media (max-width:639px) {.product-gallery-zoom-area {padding:16px}
 .product-gallery-main-image {max-height:250px}
 .product-gallery-thumb {width:72px; height:72px}
 .product-gallery-thumbs-nav {min-height:72px}
 .product-gallery-nav {width:38px; height:38px}
 .product-gallery-stickers {top:8px; left:8px; gap:6px}
 .product-gallery-sticker {min-height:24px; padding:0 10px; font-size:11px}
}
