/* Sellarus — interface injected into every theme by Content::registerSiteUi() (asset "site-ui"), in the cascade
   layer "sellarus-ui" below the theme's own rules: a theme wins on equal specificity and may remove the asset
   altogether (Assets::remove('site-ui') in functions.php) or declare "site-ui" in the "supports" of its theme.json.
   Themes only need the common class names of the contract (.product__image, .product__buttons, .product-gallery__main,
   .product-gallery__thumb, .gallery-grid). */
@layer sellarus-ui {

/* 1. The picture and the title already open the product page: the "Details" button is redundant. */
.product__buttons a[href*="produit.php?p="]:not(.product__choose), .product__foot > a[href*="produit.php?p="]:not(.product__choose) { display: none; }

/* 2. Image viewer (markup and script: templates/site/_lightbox.php) */
.product-gallery__main img, .gallery-grid a { cursor: zoom-in; }
.vb-lightbox { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(10, 12, 16, .92); }
.vb-lightbox[hidden] { display: none; }
.vb-lightbox__img { max-width: min(96vw, 1400px); max-height: 92vh; object-fit: contain; border-radius: 8px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); }
.vb-lightbox__close, .vb-lightbox__nav { position: absolute; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; font: 28px/1 system-ui, sans-serif; cursor: pointer; }
.vb-lightbox__close:hover, .vb-lightbox__nav:hover { background: rgba(255, 255, 255, .3); }
.vb-lightbox__close { top: 18px; right: 18px; }
.vb-lightbox__nav { top: 50%; transform: translateY(-50%); }
.vb-lightbox__nav--prev { left: 18px; }
.vb-lightbox__nav--next { right: 18px; }
.vb-lightbox__nav[hidden] { display: none; }
}
