/* =========================================================
   GLOBALE ESTHETIQUE — PANIER (10/10/2026) — version « C »
   Étapes en haut, produits en cartes, récapitulatif complet,
   code promo replié, lien « Continuer mes achats ».
   Le PC garde sa mise en page ; seuls le nom (marque en petit)
   et l'icône corbeille changent aussi sur PC.
   ========================================================= */

/* ---------- Commun PC + mobile ---------- */
.panier-marque{ font-size:10.5px; letter-spacing:1.4px; text-transform:uppercase; color:#8a7f7f; font-weight:700; margin-bottom:2px; }
.panier-retirer{ display:inline-flex; align-items:center; gap:5px; border:0; background:none; cursor:pointer; color:#a99d9d; font:inherit; font-size:12.5px; padding:4px 0; margin-top:4px; transition:color .2s ease; }
.panier-retirer:hover{ color:#c0364a; }
.titre-panier-mobile{ display:none; }
.panier-etapes{ display:none; }
.lien-continuer--recap{ display:none; }
.panier-rassurance{ display:flex; align-items:center; justify-content:center; gap:6px; margin:12px 0 0; font-size:11.5px; color:#8a7f7f; }

/* ---------- Mobile ---------- */
@media (max-width:900px){
  /* Étapes */
  .panier-etapes{
    display:flex; align-items:center; gap:6px; padding:11px 16px;
    font-size:11px; font-weight:600; color:#a99d9d;
    background:#FDFAF6; border-bottom:1px solid #f3ebe8;
  }
  .panier-etapes span{ display:flex; align-items:center; gap:5px; white-space:nowrap; }
  .panier-etapes i{ font-style:normal; width:20px; height:20px; border-radius:50%; border:1px solid #d9cfcc; display:flex; align-items:center; justify-content:center; font-size:10px; }
  .panier-etapes .est-active{ color:#6E1B2C; }
  .panier-etapes .est-active i{ background:#6E1B2C; border-color:#6E1B2C; color:#fff; }
  .panier-etapes em{ flex:1; height:1px; background:#e6dcd9; }

  /* Titre court + lien Continuer à droite */
  .page-head--panier{ display:flex !important; align-items:baseline; justify-content:space-between; gap:10px; padding:14px 0 6px !important; border-bottom:0 !important; }
  .page-head--panier .fil-ariane,
  .page-head--panier .eyebrow{ display:none !important; }
  .page-head--panier h1{ font-size:22px !important; margin:0 !important; line-height:1.2 !important; }
  .page-head--panier h1 small{ font-family:'DM Sans', sans-serif; font-size:14px; color:#8a7f7f; font-weight:500; }
  .titre-panier-mobile{ display:inline; }
  .titre-panier-pc{ display:none; }
  .page-head--panier .lien-continuer{ margin:0 !important; font-size:12.5px !important; white-space:nowrap; }
  .page-head--panier .lien-continuer span{ font-size:14px !important; }

  /* Lignes en cartes */
  .panier-layout{ padding:8px 0 24px !important; }
  .panier-ligne{
    position:relative !important; width:100% !important; box-sizing:border-box;
    grid-template-columns:92px minmax(0,1fr) auto !important;
    grid-template-areas:
      "img nom nom"
      "img qty prix" !important;
    gap:8px 12px !important; align-items:center !important;
    background:#FDFAF6 !important; border:0 !important; border-radius:16px !important;
    padding:12px !important; margin-bottom:10px !important;
  }
  .panier-ligne > img{ grid-area:img !important; width:92px !important; height:104px !important; object-fit:cover !important; border-radius:12px !important; align-self:start; background:#fff !important; }
  .panier-ligne > div:nth-child(2){ grid-area:nom !important; min-width:0; padding-right:34px; }
  .panier-ligne > form:nth-child(3){ grid-area:qty !important; margin:0 !important; }
  .panier-ligne > div:nth-child(4){ grid-area:prix !important; display:block !important; text-align:right !important; }
  .panier-nom{ font-family:'DM Sans', sans-serif !important; font-size:13.5px !important; font-weight:600; line-height:1.3 !important;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
  .panier-variante{ font-size:11px !important; white-space:normal !important; }
  .panier-stock{ font-size:11.5px !important; font-weight:600; margin-top:3px !important; }
  .panier-ligne > div:nth-child(4) strong{ font-size:15px !important; color:#6E1B2C !important; }
  .panier-ligne .qty-stepper{ background:#fff; height:32px; border-radius:999px; }
  /* Corbeille ronde en haut à droite de la carte */
  .panier-ligne > div:nth-child(4) form{ position:absolute; top:10px; right:10px; display:block !important; }
  .panier-retirer{ width:30px; height:30px; border-radius:50%; background:#fff; justify-content:center; margin:0; padding:0; }
  .panier-retirer span{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .panier-ligne > div:nth-child(4) br{ display:none; }

  /* Récapitulatif */
  .panier-layout > .recap-carte{ width:100% !important; box-sizing:border-box; margin-top:8px !important; background:#fff !important; border:1px solid #f0e6e3 !important; border-radius:16px !important; padding:14px 16px !important; }
  .recap-carte h3{ display:none; }
  .recap-carte .recap-ligne.total{ font-size:16px; }
  .btn-commander{ margin-top:12px !important; }
  .lien-continuer--recap{ display:flex !important; justify-content:center; margin:12px 0 0 !important; font-size:13px !important; }

  /* Code promo replié en une ligne */
  .promo-invite{ padding:12px 14px !important; cursor:pointer; }
  .promo-invite .promo-label{ display:flex !important; align-items:center; gap:8px; margin:0 !important; cursor:pointer;
    font-size:13px !important; font-weight:600 !important; letter-spacing:0 !important; text-transform:none !important; color:#241712 !important; }
  .promo-invite .promo-label::after{ white-space:nowrap; letter-spacing:0; }
  .promo-invite:not(.est-ouvert) .promo-label::after{ content:"Ajouter +"; margin-left:auto; color:#6E1B2C; font-weight:700; font-size:12.5px; }
  .promo-invite:not(.est-ouvert) .promo-invite-txt,
  .promo-invite:not(.est-ouvert) .promo-champs{ display:none !important; }
  .promo-invite.est-ouvert .promo-invite-txt{ margin-top:6px !important; }

  /* « Vider le panier » plus discret */
  #listePanier > form button[name="vider"]{ font-size:12px !important; text-decoration:underline; }
}

/* =========================================================
   PAGE « MERCI » (10/10/2026)
   ========================================================= */
.merci{ max-width:600px; margin:0 auto; padding-top:34px; padding-bottom:60px; }
.merci-tete{ text-align:center; }
.merci-coche{ width:66px; height:66px; border-radius:50%; background:#2f7a4b; margin:0 auto 14px; display:flex; align-items:center; justify-content:center; box-shadow:0 0 0 8px rgba(47,122,75,.12); animation:merciPop .55s cubic-bezier(.34,1.56,.64,1) both; }
@keyframes merciPop{ from{ transform:scale(.4); opacity:0; } to{ transform:none; opacity:1; } }
.merci-tete h1{ font-size:28px; margin:0; }
.merci-tete p{ color:var(--gray); margin:6px 0 0; font-size:15px; }
.merci-ref{ display:inline-block; margin-top:12px; background:#FBF3EF; border:1px dashed #d9c3c8; border-radius:999px; padding:8px 16px; font-size:13.5px; }
.merci-ref strong{ letter-spacing:.06em; color:#6E1B2C; }
.merci-etapes{ list-style:none; margin:26px 0 18px; padding:0; position:relative; }
.merci-etapes::before{ content:""; position:absolute; left:15px; top:16px; bottom:16px; width:2px; background:#eee3e0; }
.merci-etapes li{ position:relative; display:flex; gap:14px; padding:8px 0; }
.merci-etapes .pt{ position:relative; z-index:1; flex:none; width:32px; height:32px; border-radius:50%; background:#fff; border:2px solid #e3d7d4; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; color:#a99d9d; }
.merci-etapes b{ display:block; font-size:14.5px; }
.merci-etapes small{ display:block; font-size:13px; color:var(--gray); line-height:1.45; margin-top:2px; }
.merci-etapes .est-fait .pt{ background:#2f7a4b; border-color:#2f7a4b; color:#fff; }
.merci-etapes .est-encours .pt{ background:#6E1B2C; border-color:#6E1B2C; color:#fff; box-shadow:0 0 0 5px rgba(110,27,44,.12); }
.merci-etapes .est-encours b{ color:#6E1B2C; }
.merci-article span:first-child{ padding-right:12px; }
.merci-article small{ color:var(--gray); }
.merci-actions{ display:flex; flex-direction:column; gap:10px; align-items:stretch; margin-top:20px; }
.merci-actions > a{ justify-content:center; text-align:center; }
.merci-wa{ display:flex; align-items:center; justify-content:center; gap:8px; background:#25D366; color:#fff !important; border-radius:999px; padding:13px 18px; font-weight:700; font-size:14px; text-decoration:none; }
.merci-note{ text-align:center; font-size:12.5px; color:var(--gray); margin-top:14px; }
@media (min-width:901px){ .merci-actions{ flex-direction:row; flex-wrap:wrap; justify-content:center; } .merci-actions > a{ flex:1 1 220px; } }
@media (max-width:900px){ .merci{ padding:22px 16px 40px !important; } .merci-tete h1{ font-size:24px; } .merci-article span:last-child{ white-space:nowrap; } }
@media (prefers-reduced-motion: reduce){ .merci-coche{ animation:none; } }

/* Note produit : « Nouveau » quand il n'y a pas encore d'avis */
.product-rating--nouveau{ font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#b4364f; }
.fiche-note--vide{ font-size:13px; color:var(--gray); }
