/* ═══════════════════════════════════════════════════════════
   eMB Shop — redesign complet · accent vert #1DB954 · préfixe .shx-
═══════════════════════════════════════════════════════════ */
.emb-shop{--sh:#1DB954;--sh2:#0E9345;--mut:#8792A2;--ink:#0B0E13;font-family:'Inter',sans-serif;color:var(--ink);padding-bottom:60px}
.shx-wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.emb-shop *{box-sizing:border-box}

/* ── HERO ── */
.shx-hero{position:relative;background:linear-gradient(120deg,#0B4025 0%,#1DB954 70%,#5FE894 130%);border-radius:26px;padding:38px 40px;color:#fff;overflow:hidden;margin-top:20px}
.shx-hero .em{position:absolute;right:-6px;bottom:-30px;font-size:180px;opacity:.14;line-height:1}
.shx-hero .kick{display:inline-block;background:rgba(255,255,255,.2);backdrop-filter:blur(6px);font-size:12px;font-weight:700;padding:6px 14px;border-radius:20px;margin-bottom:14px;position:relative}
.shx-hero h1{font-family:'Bricolage Grotesque',sans-serif;font-weight:900;font-size:38px;line-height:1.03;letter-spacing:-1px;margin-bottom:10px;position:relative}
.shx-hero p{font-size:15px;opacity:.94;max-width:440px;position:relative;margin-bottom:18px}
.shx-search{display:flex;background:#fff;border-radius:14px;padding:6px;max-width:480px;position:relative}
.shx-search input{flex:1;border:none;outline:none;padding:12px 16px;font-size:14px;font-family:inherit;background:transparent;min-width:0}
.shx-search button{background:var(--sh);color:#fff;border:none;border-radius:10px;padding:0 22px;font-weight:700;cursor:pointer;white-space:nowrap}

/* ── CATÉGORIES ── */
.shx-cats{display:flex;gap:12px;overflow-x:auto;padding:22px 0 8px;scrollbar-width:none}
.shx-cats::-webkit-scrollbar{display:none}
.shx-cat{flex-shrink:0;text-align:center;text-decoration:none;color:inherit;width:88px}
.shx-cat .ic{width:76px;height:76px;border-radius:20px;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 8px;transition:.15s;overflow:hidden}
.shx-cat .ic img{width:100%;height:100%;object-fit:cover}
.shx-cat:hover .ic{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.1)}
.shx-cat .nm{font-size:12.5px;font-weight:600;line-height:1.2}
.shx-cat .ct{font-size:10.5px;color:var(--mut)}

/* ── SECTION ── */
.shx-sec{margin-top:30px}
.shx-sechead{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.shx-sechead h2{font-family:'Bricolage Grotesque',sans-serif;font-size:22px}
.shx-shnav{display:flex;gap:8px;align-items:center}
.shx-arr{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid #E6E0D5;font-size:16px;cursor:pointer;transition:.15s}
.shx-arr:hover{background:#0B0E13;color:#fff;border-color:#0B0E13}
.shx-seeall{font-size:13px;font-weight:700;color:var(--sh2);text-decoration:none;white-space:nowrap}

/* ── PRODUCT CARD ── */
.shx-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.shx-rail{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none;scroll-behavior:smooth}
.shx-rail::-webkit-scrollbar{display:none}
.shx-rail .shx-card{flex-shrink:0;width:222px}
.shx-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.06);color:inherit;transition:.18s;position:relative;display:flex;flex-direction:column}
.shx-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.1)}
.shx-card .media{position:relative;height:180px;background:#F5F3EF;display:flex;align-items:center;justify-content:center;font-size:52px;text-decoration:none}
.shx-card .media img{width:100%;height:100%;object-fit:cover}
.shx-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:5px;z-index:2}
.shx-badge{font-size:10px;font-weight:800;padding:3px 9px;border-radius:12px;color:#fff}
.b-new{background:#34A8E0}.b-hot{background:#F39314}.b-promo{background:#E8362A}.b-sold{background:#8792A2}
.shx-wish{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);border:none;font-size:16px;cursor:pointer;color:#E8362A;z-index:2;transition:.15s}
.shx-wish:hover{transform:scale(1.1)}
.shx-wish.active{background:#E8362A;color:#fff}
.shx-card .b{padding:14px;display:flex;flex-direction:column;flex:1}
.shx-card .brand{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.4px;font-weight:600}
.shx-card .nm{font-weight:700;font-size:14px;margin:3px 0 6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px;text-decoration:none;color:inherit}
.shx-card .rate{font-size:11.5px;color:var(--mut);margin-bottom:8px}
.shx-card .rate b{color:#0B0E13}
.shx-price{display:flex;align-items:baseline;gap:7px;margin-top:auto}
.shx-price .now{font-family:'Bricolage Grotesque',sans-serif;font-weight:900;font-size:16px;color:var(--sh2)}
.shx-price .old{font-size:12px;color:var(--mut);text-decoration:line-through}
.shx-add{width:100%;margin-top:10px;background:var(--sh);color:#fff;border:none;border-radius:10px;padding:9px;font-weight:700;font-size:12.5px;cursor:pointer;transition:.15s}
.shx-add:hover{background:var(--sh2)}
.shx-add:disabled{background:#C7CDD6;cursor:not-allowed}

/* ── BANNER ── */
.shx-banner{background:linear-gradient(120deg,#E8362A,#F39314);border-radius:22px;padding:28px 32px;color:#fff;display:flex;justify-content:space-between;align-items:center;margin-top:30px;gap:16px;flex-wrap:wrap}
.shx-banner h3{font-family:'Bricolage Grotesque',sans-serif;font-size:24px;margin-bottom:6px}
.shx-banner p{opacity:.9;font-size:13.5px}
.shx-banner .cta{background:#fff;color:#E8362A;padding:11px 22px;border-radius:12px;font-weight:700;text-decoration:none;white-space:nowrap}

/* ── FICHE PRODUIT ── */
.shx-pd{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:20px}
.shx-gallery .main{background:#fff;border-radius:20px;height:380px;display:flex;align-items:center;justify-content:center;font-size:90px;box-shadow:0 4px 18px rgba(0,0,0,.05);margin-bottom:12px;overflow:hidden}
.shx-gallery .main img{width:100%;height:100%;object-fit:contain;padding:20px}
.shx-thumbs{display:flex;gap:10px;flex-wrap:wrap}
.shx-thumb{width:66px;height:66px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;cursor:pointer;border:2px solid transparent;overflow:hidden}
.shx-thumb img{width:100%;height:100%;object-fit:cover}
.shx-thumb.on{border-color:var(--sh)}
.shx-pd-info .brand{color:var(--mut);text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:.5px}
.shx-pd-info h1{font-family:'Bricolage Grotesque',sans-serif;font-size:28px;margin:4px 0 10px;line-height:1.15}
.shx-pd-rate{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;color:var(--mut);flex-wrap:wrap}
.shx-pd-price{display:flex;align-items:baseline;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.shx-pd-price .now{font-family:'Bricolage Grotesque',sans-serif;font-weight:900;font-size:32px;color:var(--sh2)}
.shx-pd-price .old{font-size:16px;color:var(--mut);text-decoration:line-through}
.shx-pd-price .save{background:rgba(232,54,42,.1);color:#E8362A;font-size:12px;font-weight:700;padding:4px 10px;border-radius:12px}
.shx-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.shx-tag{background:rgba(29,185,84,.1);color:var(--sh2);font-size:11.5px;font-weight:600;padding:5px 12px;border-radius:20px}
.shx-pd-desc{font-size:14px;color:#42495B;line-height:1.6;margin-bottom:20px}
.shx-flabel{font-size:12px;font-weight:700;color:var(--mut);margin-bottom:8px}
.shx-variants{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}
.shx-var{border:1.5px solid #E6E0D5;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer;background:#fff}
.shx-var.on{border-color:var(--sh);background:rgba(29,185,84,.06)}
.shx-buy{display:flex;gap:12px;align-items:center}
.shx-qty{display:flex;align-items:center;border:1.5px solid #E6E0D5;border-radius:12px;flex-shrink:0}
.shx-qty button{width:40px;height:46px;border:none;background:none;font-size:18px;cursor:pointer}
.shx-qty span{width:36px;text-align:center;font-weight:700}
.shx-buy-btn{flex:1;background:var(--sh);color:#fff;border:none;border-radius:12px;padding:15px;font-weight:800;font-size:15px;cursor:pointer;transition:.15s}
.shx-buy-btn:hover{background:var(--sh2)}
.shx-buy-btn:disabled{background:#C7CDD6;cursor:not-allowed}
.shx-stock{font-size:12.5px;margin-top:12px;font-weight:600}
.shx-stock.ok{color:var(--sh2)}
.shx-stock.low{color:#B45309}
.shx-stock.no{color:#E8362A}

.shx-pd-block{background:#fff;border-radius:16px;padding:20px 22px;margin-top:16px;box-shadow:0 3px 12px rgba(0,0,0,.04)}
.shx-pd-block h3{font-family:'Bricolage Grotesque',sans-serif;font-size:15px;margin-bottom:8px}
.shx-pd-block p{font-size:13.5px;color:#42495B;line-height:1.6}

/* ── AVIS ── */
.shx-reviews{background:#fff;border-radius:20px;padding:26px;margin-top:30px;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.shx-reviews h2{font-family:'Bricolage Grotesque',sans-serif;font-size:20px;margin-bottom:20px}
.shx-rev-top{display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:center;margin-bottom:24px}
.shx-rev-score{text-align:center}
.shx-rev-score .big{font-family:'Bricolage Grotesque',sans-serif;font-size:48px;font-weight:900;line-height:1}
.shx-rev-score .stars{color:#F39314;font-size:16px;margin:6px 0}
.shx-rev-bars .bar{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:12px;color:var(--mut)}
.shx-rev-bars .track{flex:1;height:7px;background:#F0F0F0;border-radius:4px;overflow:hidden}
.shx-rev-bars .fill{height:100%;background:#F39314}
.shx-rev-item{border-top:1px solid #F2EFEA;padding:16px 0}
.shx-rev-item .head{display:flex;justify-content:space-between;margin-bottom:6px}
.shx-rev-item .who{font-weight:700;font-size:13.5px}
.shx-rev-item .when{font-size:12px;color:var(--mut)}
.shx-rev-item .stars{color:#F39314;font-size:13px;margin-bottom:6px}
.shx-rev-item .txt{font-size:13.5px;color:#42495B;line-height:1.5}
.shx-rev-form{border-top:1px solid #F2EFEA;padding-top:20px;margin-top:8px}
.shx-star-pick{display:flex;gap:4px;font-size:26px;color:#E6E0D5;cursor:pointer;margin-bottom:12px}
.shx-star-pick .on{color:#F39314}

/* ── GRILLE (catégorie/recherche) ── */
.shx-listing{display:grid;grid-template-columns:240px 1fr;gap:24px;margin-top:20px;align-items:start}
.shx-filters{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 16px rgba(0,0,0,.05);position:sticky;top:84px}
.shx-filters h4{font-size:13px;font-weight:800;margin:16px 0 8px}
.shx-filters h4:first-child{margin-top:0}
.shx-filters label{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 0;color:#42495B;cursor:pointer}
.shx-price-range{display:flex;gap:8px;margin-top:6px}
.shx-price-range input{width:100%;border:1.5px solid #E6E0D5;border-radius:8px;padding:8px;font-size:12px;font-family:inherit}
.shx-filter-btn{width:100%;background:#0B0E13;color:#fff;border:none;border-radius:10px;padding:10px;font-weight:700;font-size:13px;cursor:pointer;margin-top:14px}
.shx-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px;flex-wrap:wrap}
.shx-toolbar .count{font-size:13.5px;color:var(--mut)}
.shx-toolbar select{border:1.5px solid #E6E0D5;border-radius:10px;padding:9px 14px;font-size:13px;font-family:inherit;background:#fff}
.shx-page-title{font-family:'Bricolage Grotesque',sans-serif;font-size:26px;margin-bottom:6px}
.shx-crumb{font-size:13px;color:var(--mut);margin-bottom:16px}
.shx-crumb a{color:var(--sh2);text-decoration:none}
.shx-mobfilter{display:none}

/* ── PAGINATION ── */
.shx-pag{margin-top:24px;display:flex;justify-content:center}
.shx-pag nav > div{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.shx-pag a,.shx-pag span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border-radius:10px;background:#fff;color:#42495B;text-decoration:none;font-size:13.5px;font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.shx-pag [aria-current] span{background:var(--sh);color:#fff}
.shx-pag svg{width:16px;height:16px}

.shx-empty{background:#fff;border-radius:20px;padding:50px 24px;text-align:center;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.shx-empty .big{font-size:52px;margin-bottom:12px}
.shx-empty h3{font-family:'Bricolage Grotesque',sans-serif;font-size:19px;margin-bottom:6px}
.shx-empty p{color:var(--mut);font-size:14px;margin-bottom:18px}
.shx-empty .btn{background:var(--sh);color:#fff;text-decoration:none;padding:12px 22px;border-radius:12px;font-weight:700;display:inline-block}

/* ── RESPONSIVE ── */
@media(max-width:920px){
  .shx-grid{grid-template-columns:repeat(3,1fr)}
  .shx-pd{grid-template-columns:1fr;gap:24px}
  .shx-listing{grid-template-columns:1fr}
  .shx-filters{position:fixed;top:0;left:0;bottom:0;width:min(84vw,320px);z-index:2000;border-radius:0;transform:translateX(-100%);transition:transform .28s;overflow-y:auto;display:none}
  .shx-filters.open{transform:translateX(0);display:block}
  .shx-mobfilter{display:inline-flex;align-items:center;gap:6px;background:#0B0E13;color:#fff;border:none;border-radius:10px;padding:9px 16px;font-weight:700;font-size:13px;cursor:pointer}
  .shx-filters-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1999;display:none}
  .shx-filters-overlay.open{display:block}
}
@media(max-width:680px){
  .shx-hero{padding:28px 24px}
  .shx-hero h1{font-size:28px}
  .shx-grid{grid-template-columns:repeat(2,1fr)}
  .shx-sechead h2{font-size:19px}
  .shx-rev-top{grid-template-columns:1fr}
}
@media(max-width:420px){
  .shx-card .media{height:150px;font-size:42px}
  .shx-add{font-size:11.5px;padding:8px}
}
