/* ============================================================
   PADELSHOP — gabarit cart/cart.php
   ============================================================ */
.tunnel-tete{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;margin-bottom:1.5rem}
.panier{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:clamp(1.25rem,3vw,2.25rem);align-items:start}
@media(max-width:960px){
  .panier{grid-template-columns:1fr}
}
/* ---------- Lignes ---------- */
.lignes{background:var(--blanc);border:1px solid var(--ligne);border-radius:var(--r-carte);overflow:hidden}
.ligne{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:1.1rem;align-items:start;
  padding:1.15rem clamp(1rem,2vw,1.4rem);border-bottom:1px solid var(--ligne)}
.ligne:last-of-type{border-bottom:0}
.ligne-visuel{width:78px;height:94px;flex:none;background:linear-gradient(165deg,#EAF1FA,#DCE7F5);
  border-radius:var(--r-tuile);display:grid;place-items:center;padding:.5rem}
.ligne-visuel svg{width:100%;height:100%;color:var(--court)}
.ligne-nom{font-size:1rem;font-weight:700;line-height:1.3}
.ligne-nom:hover{color:var(--azur)}
.ligne-var{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.8rem;color:var(--gris);margin-top:.35rem}
.ligne-var b{color:var(--encre);font-weight:600}
.ligne-etat{margin-top:.55rem;font-size:.78rem;font-weight:600}
.ligne-actions{display:flex;gap:.9rem;margin-top:.7rem;font-size:.8rem;color:var(--gris)}
/* WooCommerce retire une ligne par un lien, pas par un bouton : les deux. */
.ligne-actions a,
.ligne-actions button{color:inherit;border-bottom:1px solid var(--ligne)}
.ligne-actions a:hover,
.ligne-actions button:hover{color:var(--brique);border-bottom-color:var(--brique)}
.ligne-qte{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem}
.ligne-prix{text-align:right;min-width:104px}
.ligne-prix b{display:block;font-size:1.12rem;font-weight:900;font-variation-settings:'wdth' 110;white-space:nowrap}
.ligne-prix s{font-size:.8rem;color:var(--gris)}
.ligne-prix small{display:block;font-size:.75rem;color:var(--gris);margin-top:.2rem}
@media(max-width:680px){
  .ligne{grid-template-columns:auto minmax(0,1fr);row-gap:.9rem}
  .ligne-qte{grid-column:1/2;align-items:flex-start}
  .ligne-prix{grid-column:2/3;text-align:right;align-self:center}
}
.lignes-pied{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.1rem clamp(1rem,2vw,1.4rem);background:var(--chaux);border-top:1px solid var(--ligne)}
.lien-retour{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:700;color:var(--azur)}
.lien-retour:hover{text-decoration:underline}
/* ---------- Code promo ---------- */
.promo-form{display:flex;gap:.5rem;flex-wrap:wrap}
.promo-form input{flex:1;min-width:150px;padding:.65rem .85rem;border:2px solid var(--ligne);border-radius:var(--r-btn);
  background:var(--blanc);outline:none;font-weight:600;text-transform:uppercase}
.promo-form input:focus{border-color:var(--azur)}
/* ---------- Vente croisée ---------- */
.ventes-croisees{margin-top:clamp(1.5rem,3vw,2.25rem)}
.ajouts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ajout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.8rem;align-items:center;background:var(--blanc);
  border:1px solid var(--ligne);border-radius:var(--r-tuile);padding:.75rem .85rem;text-align:left}
.ajout:hover{border-color:var(--azur)}
.ajout-visuel{width:44px;height:54px;flex:none;background:linear-gradient(165deg,#EAF1FA,#DCE7F5);
  border-radius:3px;display:grid;place-items:center;padding:.25rem}
.ajout-visuel svg{width:100%;height:100%;color:var(--court)}
.ajout-nom{display:block;font-size:.8rem;font-weight:700;line-height:1.25}
.ajout-prix{display:block;font-size:.8rem;font-weight:800;margin-top:.2rem}
.ajout-plus{font-size:1.3rem;font-weight:700;color:var(--azur);justify-self:end}
@media(max-width:1080px){
  .ajouts{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .ajouts{grid-template-columns:1fr}
}
/* ---------- Panier vide ---------- */
.vide{background:var(--blanc);border:1px solid var(--ligne);border-radius:var(--r-carte);
  padding:clamp(2rem,5vw,3.5rem);text-align:center;display:grid;justify-items:center;gap:1rem}
.vide-visuel{width:110px;color:var(--ligne)}
.vide p{color:var(--gris);max-width:46ch}
/* ---------- Bascule de maquette (hors thème) ---------- */
.bascule{position:fixed;right:14px;bottom:14px;z-index:80;display:flex;align-items:center;gap:.5rem;
  background:var(--encre);color:#fff;border:2px dashed var(--balle);border-radius:999px;padding:.5rem .9rem;font-size:.78rem;font-weight:700}
.bascule span{color:var(--balle);letter-spacing:.08em;font-size:.66rem}
@media(max-width:720px){
  .bascule{bottom:82px}
}
