.gallery-enlarge{position:absolute;right:12px;bottom:12px;width:44px;height:44px;border:1px solid #ead7d7;border-radius:50%;display:grid;place-items:center;background:#fffffff0;color:#c25c5c;cursor:zoom-in}
.gallery-enlarge[hidden]{display:none}.gallery-enlarge svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.gallery-slide[data-kind=image]>img{cursor:zoom-in}
.product-lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#fff;color:#322b2b;overflow:hidden}
.product-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.product-lightbox::backdrop{background:#201414bd}
.photo-lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(10px,env(safe-area-inset-top)) 16px 10px;font-size:15px;font-weight:700}
.product-lightbox button{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid #ead7d7;border-radius:999px;background:#fff;color:#c25c5c;font:700 24px/1 Lato,Arial,sans-serif;cursor:pointer}
.product-lightbox button:focus-visible,.gallery-enlarge:focus-visible{outline:3px solid #c25c5c;outline-offset:-3px}
.product-lightbox button:disabled{opacity:.4;cursor:default}
.photo-lightbox-stage{position:relative;min-height:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.photo-lightbox-stage:active{cursor:grabbing}
.product-gallery .photo-lightbox-stage img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;transform-origin:center;will-change:transform;pointer-events:none;border-radius:0}
.photo-lightbox-controls{display:flex;justify-content:center;align-items:center;gap:16px;padding:12px 16px max(12px,env(safe-area-inset-bottom))}
.product-lightbox [data-photo-reset]{font-size:14px;min-width:82px}
.photo-upload-button{gap:10px}.photo-upload-camera{flex:none;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* V36: browse photographs without leaving the enlarged view. */
.photo-lightbox-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding-left:12px;padding-right:12px}
.photo-lightbox-zoom{display:flex;justify-content:center;align-items:center;gap:6px}
.product-lightbox [data-photo-reset]{min-width:64px}
.product-lightbox [data-photo-previous],.product-lightbox [data-photo-next]{font-size:32px}
/* V39: controls sit immediately below the fitted photo on mobile. */
.photo-lightbox-toolbar{justify-content:flex-end}.photo-lightbox-review{display:none}
@media(max-width:760px){
 .product-lightbox[open]{display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}
 .photo-lightbox-toolbar{flex:none;padding:4px 12px;padding-top:max(4px,env(safe-area-inset-top))}
 .photo-lightbox-stage{flex:none;width:100%;height:min(100vw,calc(100dvh - 160px))}
 .photo-lightbox-controls{flex:none;padding:8px 12px}
 .photo-lightbox-review:not([hidden]){display:block;padding:10px 18px max(18px,env(safe-area-inset-bottom));width:100%}
 .photo-lightbox-review .review-card{padding:16px}.photo-lightbox-review .review-text{font-size:14px;line-height:1.5}
 .photo-lightbox-review img{width:64px;height:64px;object-fit:cover;border-radius:8px;margin-top:10px}
}
