/* MOURNA VENTE v1.0.16.11 — cartes produit plein cadre */
.products-grid{align-items:stretch}
.product-card{
 position:relative!important;
 min-height:390px!important;
 overflow:hidden!important;
 background:#eef3f0!important;
 border:1px solid var(--line)!important;
 border-radius:17px!important;
 isolation:isolate;
}
.product-image{
 position:absolute!important;
 inset:0!important;
 width:100%!important;
 height:100%!important;
 min-height:100%!important;
 display:grid!important;
 place-items:center!important;
 overflow:hidden!important;
 background:#eef3f0!important;
 z-index:0;
}
.product-image img{
 width:100%!important;
 height:100%!important;
 object-fit:cover!important;
 object-position:center!important;
 display:block!important;
}
.product-image i{font-size:46px!important;color:#a5b9ae!important}
.product-body{
 position:absolute!important;
 left:9px!important;
 right:9px!important;
 bottom:9px!important;
 z-index:2!important;
 min-width:0!important;
 padding:11px 12px!important;
 display:flex!important;
 flex-direction:column!important;
 gap:6px!important;
 background:rgba(255,255,255,.78)!important;
 border:1px solid rgba(255,255,255,.82)!important;
 border-radius:13px!important;
 box-sizing:border-box!important;
}
.product-name{font-size:15px!important;line-height:1.2!important;font-weight:900!important}
.product-desc{
 font-size:11px!important;
 line-height:1.35!important;
 display:-webkit-box!important;
 -webkit-line-clamp:2!important;
 -webkit-box-orient:vertical!important;
 overflow:hidden!important;
}
.product-meta{align-items:flex-end!important;gap:8px!important}
.product-price{font-size:18px!important;line-height:1.05!important}
.stock{font-size:11px!important}
.add-cart{width:39px!important;height:39px!important;flex:0 0 39px!important}
@media (max-width:900px){
 .product-card{min-height:350px!important}
}
@media (max-width:620px){
 .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .product-card{min-height:285px!important;border-radius:14px!important}
 .product-body{left:6px!important;right:6px!important;bottom:6px!important;padding:8px!important;border-radius:10px!important;gap:4px!important}
 .product-name{font-size:13px!important}
 .product-desc{font-size:10px!important;-webkit-line-clamp:1!important}
 .product-price{font-size:15px!important}
 .stock{font-size:10px!important}
 .add-cart{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:9px!important}
}
@media (max-width:360px){
 .product-card{min-height:255px!important}
 .product-body{padding:7px!important}
 .product-name{font-size:12px!important}
 .product-price{font-size:14px!important}
}


/* v1.0.16.13 — surface générale blanche */
.product-card{background-color:#fff!important}
.product-body{background:rgba(255,255,255,.78)!important}
.product-image:not(:has(img)){background:#fff!important}


/* v1.0.16.14 — photo plein écran + infos semi-transparentes */
.product-image img[data-product-photo]{cursor:zoom-in;touch-action:manipulation}
.product-image img[data-product-photo]:focus-visible{outline:3px solid #fd8102;outline-offset:-4px}
.product-body{
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(255,255,255,.82)!important;
}
.photo-viewer-open{overflow:hidden!important}
.product-photo-viewer{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  box-sizing:border-box;
  background:rgba(0,0,0,.92);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease,visibility .16s ease;
}
.product-photo-viewer.open{opacity:1;visibility:visible;pointer-events:auto}
.product-photo-viewer-stage{
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:10px;
}
.product-photo-viewer img{
  display:block;
  max-width:100%;
  max-height:calc(100vh - 76px);
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:10px;
  background:#fff;
}
.product-photo-viewer-title{
  max-width:min(92vw,760px);
  color:#fff;
  font-size:15px;
  font-weight:800;
  text-align:center;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.product-photo-viewer-close{
  position:absolute;
  top:max(14px,env(safe-area-inset-top));
  right:max(14px,env(safe-area-inset-right));
  z-index:2;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.65);
  border-radius:50%;
  background:#fff;
  color:#005230;
  display:grid;
  place-items:center;
  font-size:20px;
  cursor:pointer;
}
@media (max-width:620px){
  .product-body{background:rgba(255,255,255,.76)!important}
  .product-photo-viewer{padding:10px}
  .product-photo-viewer img{max-height:calc(100vh - 64px);border-radius:7px}
  .product-photo-viewer-title{font-size:13px;padding:0 48px}
  .product-photo-viewer-close{width:42px;height:42px;top:max(9px,env(safe-area-inset-top));right:max(9px,env(safe-area-inset-right))}
}

/* v1.0.16.15 — Grille produits jusqu'aux bords de la page */
.products-grid{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}


/* v1.0.16.16 — panier sans fond + vider le panier */
.add-cart{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#005230!important;
  box-shadow:none!important;
  cursor:pointer;
}
.add-cart i{font-size:27px!important;line-height:1!important;color:#005230!important}
.add-cart:hover,.add-cart:focus-visible{background:transparent!important;color:#fd8102!important;outline:none!important}
.add-cart:hover i,.add-cart:focus-visible i{color:#fd8102!important}
.add-cart:disabled{background:transparent!important;opacity:.35!important;cursor:not-allowed!important}
.drawer-head-actions{display:flex;align-items:center;gap:8px;min-width:0}
.clear-cart-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:7px 10px;
  border:1px solid #d7e2dd;
  border-radius:10px;
  background:#fff;
  color:#005230;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.clear-cart-btn i{color:#fd8102}
.clear-cart-btn[hidden]{display:none!important}
.clear-cart-btn:hover,.clear-cart-btn:focus-visible{border-color:#005230;outline:none}
@media(max-width:620px){
  .add-cart{width:36px!important;height:36px!important;flex-basis:36px!important}
  .add-cart i{font-size:23px!important}
  .drawer-head{align-items:flex-start!important;gap:8px!important}
  .drawer-head-actions{gap:5px}
  .clear-cart-btn{min-height:36px;padding:6px 8px;font-size:12px}
}
@media(max-width:360px){
  .clear-cart-btn span{display:none}
  .clear-cart-btn{width:36px;padding:0}
}

/* MOURNA VENTE v1.0.16.18 — prix produit gris foncé */
.product-card .product-price{color:#56615c!important;}

/* v1.0.16.19 — boutique mobile plus visuelle */
.store-footer{
  width:100%;
  margin-top:18px;
  padding:14px 8px 16px;
  border-top:1px solid var(--line);
  text-align:center;
  color:var(--muted);
  font-size:10.5px;
  font-weight:700;
  background:#fff;
}
@media(max-width:620px){
  .product-card{min-height:270px!important}
  .product-body{gap:3px!important;padding:8px 9px!important}
  .product-name{font-size:13px!important;line-height:1.15!important}
  .product-meta{margin-top:1px!important;align-items:center!important}
  .product-price{font-size:15px!important}
  .stock{font-size:9.5px!important}
  .store-footer{margin-top:12px}
}
@media(max-width:360px){
  .product-card{min-height:245px!important}
}
