/* EquaShop Pro — product image gallery (mosaic) + lightbox. Enqueued from pro/assets/ on the
   product-detail surface when the Pro features are active. Free ships none of this. */

/* ---- Product image gallery (mosaic) ----------------------------------- */
.equashop-shop .equashop-detail__gallery { margin: 1.4rem 0; }
.equashop-shop .equashop-gallery__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax( 140px, 1fr ) );
	gap: var( --equashop-gap, .8rem );
}
.equashop-shop .equashop-gallery__item { margin: 0; }
.equashop-shop .equashop-gallery__thumb {
	display: block;
	width: 100%;
	padding: 0;
	border: 1px solid var( --equashop-border, #dbe3ec );
	border-radius: var( --equashop-radius, 10px );
	background: var( --equashop-soft, #f4f7fb );
	cursor: zoom-in;
	overflow: hidden;
	transition: box-shadow var( --equashop-anim-dur, .18s ) var( --equashop-anim-ease, ease ), transform var( --equashop-anim-dur, .18s ) var( --equashop-anim-ease, ease );
}
.equashop-shop .equashop-gallery__thumb:hover,
.equashop-shop .equashop-gallery__thumb:focus-visible { box-shadow: 0 4px 18px rgba( 12, 58, 102, .18 ); transform: translateY( -2px ); outline: none; }
.equashop-shop .equashop-gallery__thumb img { display: block; width: 100%; height: 150px; object-fit: cover; }

/* ---- Gallery lightbox (overlay appended to <body>, outside .equashop-shop) -- */
html.equashop-lb-lock { overflow: hidden; }
.equashop-lightbox { position: fixed; inset: 0; z-index: 100000; display: none; }
.equashop-lightbox.is-open { display: block; }
.equashop-lightbox__backdrop { position: absolute; inset: 0; background: rgba( 0, 13, 28, .82 ); cursor: zoom-out; }
.equashop-lightbox__stage {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 3vmin;
	pointer-events: none;
}
.equashop-lightbox__img {
	max-width: 92vw;
	max-height: 88vh;
	object-fit: contain;
	border-radius: 8px;
	box-shadow: 0 10px 50px rgba( 0, 0, 0, .5 );
	pointer-events: auto;
}
.equashop-lightbox__btn {
	position: absolute;
	pointer-events: auto;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: none;
	background: rgba( 255, 255, 255, .14 );
	color: #fff;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .15s ease;
}
.equashop-lightbox__btn svg { display: block; width: 1.5rem; height: 1.5rem; }
.equashop-lightbox__btn:hover { background: rgba( 255, 255, 255, .3 ); }
.equashop-lightbox__prev { left: 3vmin; top: 50%; transform: translateY( -50% ); }
.equashop-lightbox__next { right: 3vmin; top: 50%; transform: translateY( -50% ); }
.equashop-lightbox__close { top: 3vmin; right: 3vmin; }
.equashop-lightbox__close svg { width: 1.35rem; height: 1.35rem; }
@media ( max-width: 560px ) {
	.equashop-shop .equashop-gallery__thumb img { height: 120px; }
	.equashop-lightbox__prev { left: 1vmin; }
	.equashop-lightbox__next { right: 1vmin; }
}
