/* SKILLSUPS FRONTEND 100% FINAL PATCH */
:root{--safe-bottom:18px;--topbar-h:76px}.page{padding-bottom:calc(34px + env(safe-area-inset-bottom,0px))}.topbar{position:sticky;top:12px;z-index:80;border-radius:24px!important;margin-top:12px!important;min-height:64px!important}.brand{min-width:max-content}.brand img{width:46px!important;height:46px!important;border-radius:14px!important}.brand span,.brand strong{font-weight:950;letter-spacing:-.045em}.nav-actions,.top-actions,.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero{padding-block:clamp(38px,6vw,74px)!important}.hero h1{max-width:900px}.shop-layout,.product-layout,.login-layout{align-items:start}.products-grid,.product-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr))!important}.product-card{min-height:100%;display:flex!important;flex-direction:column!important}.product-card .product-body{display:flex;flex-direction:column;gap:10px;flex:1}.product-card .btn,.product-card button{margin-top:auto}.category-panel{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto}.cart-modal,.nav-menu-modal,.recommendation-modal,.partner-modal{max-height:min(88vh,820px);overflow:auto}.cart-modal-overlay[aria-hidden="false"],.nav-menu-overlay[aria-hidden="false"],.category-modal-overlay[aria-hidden="false"]{display:flex!important;opacity:1!important;pointer-events:auto!important}.cart-modal-overlay[aria-hidden="true"],.nav-menu-overlay[aria-hidden="true"],.category-modal-overlay[aria-hidden="true"]{display:none!important}.empty-state{border:1px dashed rgba(255,255,255,.16)!important;border-radius:28px!important;background:rgba(255,255,255,.05)!important}.status-badge,.pill,.badge{border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.08);padding:7px 10px;color:#fff}.status-active{background:rgba(20,210,120,.14)!important;border-color:rgba(20,210,120,.35)!important}.status-ended,.status-inactive{background:rgba(255,80,80,.14)!important;border-color:rgba(255,80,80,.35)!important}.sk-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);z-index:9999;background:linear-gradient(135deg,rgba(15,16,24,.96),rgba(30,22,18,.96));border:1px solid rgba(253,62,6,.35);box-shadow:0 22px 70px rgba(0,0,0,.38),0 16px 50px rgba(253,62,6,.18);color:#fff;border-radius:18px;padding:13px 16px;display:flex;gap:10px;align-items:center;opacity:0;transition:.25s ease;max-width:min(92vw,520px);font-weight:750}.sk-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.sk-toast i{color:var(--sk-orange)}.skeleton{position:relative;overflow:hidden;background:rgba(255,255,255,.08)!important}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);animation:sk-shimmer 1.25s infinite}@keyframes sk-shimmer{100%{transform:translateX(100%)}}.frontend-note{border:1px solid rgba(253,62,6,.26);background:linear-gradient(135deg,rgba(253,62,6,.12),rgba(255,255,255,.045));border-radius:24px;padding:16px;display:flex;gap:12px;align-items:flex-start;color:rgba(255,255,255,.78)}.frontend-note strong{color:#fff}.admin-shell{min-height:100vh}.admin-table-wrap{overflow:auto;border-radius:24px}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid rgba(255,255,255,.09);text-align:left}.admin-table th{color:rgba(255,255,255,.62);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.admin-action-row{display:flex;gap:8px;flex-wrap:wrap}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.two-col{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px}.mobile-bottom-safe{height:env(safe-area-inset-bottom,0px)}@media(max-width:920px){.category-panel{display:none}.shop-layout,.product-layout,.login-layout,.two-col{grid-template-columns:1fr!important}.filter-mobile-btn{display:inline-flex!important}.topbar{top:8px;margin-top:8px!important;border-radius:20px!important}.header-search{order:10;width:100%;max-width:none!important}.products-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.product-card .product-image,.product-card img{border-radius:18px!important}.nav-actions,.top-actions,.topbar-actions{gap:8px}.brand span{display:none}}@media(max-width:560px){body{font-size:14px}.page{width:min(100% - 16px,1220px)!important}.topbar{min-height:56px!important;padding:8px!important}.brand img{width:40px!important;height:40px!important}.products-grid,.product-grid{grid-template-columns:1fr!important}.hero{padding-block:28px!important}.hero h1{font-size:clamp(32px,12vw,52px)!important}.cart-modal,.nav-menu-modal,.recommendation-modal,.partner-modal{width:calc(100vw - 18px)!important;border-radius:24px!important}.footer-row{padding-bottom:24px!important}}

/* =========================================================
   SHOP IMAGE VISIBILITY PATCH
   Objectif : faire ressortir les photos produits dans les cards
   sans crop agressif, avec un rendu premium Skillsups.
   ========================================================= */
.products-grid,
.product-grid{
  align-items:stretch!important;
}

.product-card{
  isolation:isolate!important;
}

.product-card .product-visual,
.product-visual{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:260px!important;
  height:clamp(240px, 24vw, 330px)!important;
  padding:18px!important;
  border-radius:28px 28px 18px 18px!important;
  background:
    radial-gradient(circle at 50% 36%, rgba(253,62,6,.24), transparent 42%),
    radial-gradient(circle at 20% 10%, rgba(255,154,31,.18), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.035))!important;
}

.product-card .product-visual::before,
.product-visual::before{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.015));
  pointer-events:none;
}

.product-card .product-visual img,
.product-visual img,
.product-card img.product-image,
.product-card .product-image{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  border-radius:20px!important;
  filter:saturate(1.14) contrast(1.06) drop-shadow(0 18px 28px rgba(0,0,0,.34))!important;
  transform:translateZ(0)!important;
}

.product-card:hover .product-visual img,
.product-card:hover img.product-image{
  transform:scale(1.055)!important;
}

.product-badge,
.recommendation-tag{
  z-index:3!important;
}

.product-body{
  padding-top:16px!important;
}

@media(max-width:920px){
  .product-card .product-visual,
  .product-visual{
    min-height:220px!important;
    height:clamp(210px, 42vw, 285px)!important;
    padding:14px!important;
    border-radius:24px 24px 16px 16px!important;
  }
}

@media(max-width:560px){
  .product-card .product-visual,
  .product-visual{
    min-height:245px!important;
    height:300px!important;
    padding:16px!important;
  }
}
