/* La Festibox — le panier : les poubelles, l'avis de la demande qui attend
   son paiement, la page de paiement (1.77). Voir inc-panier.php. */

/* La poubelle, partout la même. */
.fb-poubelle{
  display:inline-grid;place-items:center;flex-shrink:0;
  width:36px;height:36px;padding:0;border:0;border-radius:50%;
  background:transparent;color:var(--grise-texte,var(--gris,#6E6058));cursor:pointer;
  font-size:0;letter-spacing:0;text-transform:none;line-height:1;
  transition:color .15s ease,background-color .15s ease;
}
.fb-poubelle svg{width:19px;height:19px;display:block;pointer-events:none}
.fb-poubelle:hover,.fb-poubelle:focus-visible{color:var(--rouge,#A33B2E);background:rgba(163,59,46,.09)}
.fb-poubelle:disabled{opacity:.45;cursor:default}
@media (pointer:coarse){.fb-poubelle{width:42px;height:42px}}

/* Le volet du panier : la poubelle à la place de « Retirer ». */
.fb-ligne-bas .fb-oter.fb-poubelle{margin-left:-4px}

/* « Votre devis » : la poubelle au bout de chaque article. */
.fb-recap-liste li.fb-recap-article{gap:10px}
.fb-recap-liste li.fb-recap-article > span:first-child{flex:1;min-width:0}
.fb-recap-liste li.fb-recap-article > span:nth-of-type(2){white-space:nowrap}
.fb-recap-article .fb-recap-oter{margin:-8px -8px -8px 0}
/* Les autres lignes (options, retrait ou livraison, total) gardent leurs
   montants alignés sur ceux des articles, à gauche de la poubelle. */
.fb-recap-liste:has(.fb-recap-oter) > li:not(.fb-recap-article){padding-right:38px}
@media (pointer:coarse){.fb-recap-liste:has(.fb-recap-oter) > li:not(.fb-recap-article){padding-right:44px}}

/* « Votre devis » : la demande qui attend son paiement. */
.fb-devis-attente{
  border:1px solid var(--argile,#C9A38F);background:var(--sable-clair,#F6EFE9);
  border-radius:var(--r,10px);padding:14px 16px;margin:0 0 18px;font-size:14.5px;line-height:1.55;
}
.fb-devis-attente p{margin:0 0 8px}
.fb-devis-attente p:last-child{margin-bottom:0}
.fb-devis-attente .fb-btn{margin-top:2px}

/* La page de paiement. */
.fb-paie-article{display:flex;align-items:center;justify-content:space-between;gap:12px}
.fb-paie-nom{min-width:0}
/* Téléphone : la poubelle sous le nom, qui garde toute la largeur. */
@media (max-width:520px){.fb-paie-article{flex-direction:column;align-items:flex-start;gap:2px}.fb-paie-oter{margin-left:-9px}}
.fb-paie-avis{
  border:1px solid rgba(154,90,74,.28);background:var(--blush-pale,#FAEFEB);color:var(--encre,#2B211D);
  border-radius:14px;padding:12px 16px;margin:0 0 16px;font-size:15px;line-height:1.55;
}
.fb-paie-avis p{margin:0 0 6px}
.fb-paie-avis p:last-child{margin:0}
.fb-paie-avis a{color:var(--rose-fonce,#7A4238);text-decoration:underline;text-underline-offset:3px}
.fb-paie-avis.est-erreur{border-color:rgba(163,59,46,.45);background:#FBEDEA;color:#7E2A1F}
.fb-paie-choix{display:flex;flex-wrap:wrap;gap:8px}
.fb-paie-oui,.fb-paie-non{
  font:inherit;font-size:14.5px;line-height:1.2;border-radius:999px;padding:9px 18px;cursor:pointer;
  border:1px solid var(--rose,#9A5A4A);
}
.fb-paie-oui{background:var(--rose,#9A5A4A);color:#fff}
.fb-paie-oui:hover{background:var(--rose-fonce,#7A4238);border-color:var(--rose-fonce,#7A4238)}
.fb-paie-non{background:transparent;color:var(--rose-fonce,#7A4238)}
.fb-paie-oui:disabled{opacity:.6;cursor:default}
.fb-paie-ajouter{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:14px 0 24px;font-size:15px;line-height:1.5}
.fb-paie-ajouter a{font-weight:600;color:var(--rose-fonce,#7A4238);white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.fb-paie-ajouter span{color:var(--gris,#6E6058);font-size:14px}

/* 1.78 — Le temps pour payer. */
.fb-paie-delai{
  border:1px solid rgba(176,138,47,.45);background:#FBF5E6;color:var(--encre,#2B211D);
  border-radius:14px;padding:12px 16px;margin:0 0 14px;font-size:15px;line-height:1.55;
}
.fb-paie-delai p{margin:0 0 4px}
.fb-paie-delai p:last-child{margin:0}
.fb-paie-delai .fb-temps{font-variant-numeric:tabular-nums;font-size:17px}
.fb-paie-delai-aide{font-size:13.5px;color:var(--gris,#6E6058)}
.fb-paie-delai.est-bientot{border-color:rgba(163,59,46,.5);background:#FBEDEA}
.fb-paie-delai.est-bientot .fb-temps{color:#A33B2E}
.fb-paie-delai.est-passe{border-color:rgba(163,59,46,.45);background:#FBEDEA;color:#7E2A1F}
.fb-paie-renvoyer{
  display:inline-block;margin:6px 10px 2px 0;padding:9px 18px;border-radius:999px;
  background:var(--rose,#9A5A4A);color:#fff!important;text-decoration:none!important;font-weight:600;font-size:14.5px;
}
.fb-paie-renvoyer:hover{background:var(--rose-fonce,#7A4238)}
.fb-devis-attente .fb-temps{font-variant-numeric:tabular-nums}
.fb-devis-attente.est-passe{border-color:rgba(163,59,46,.45);background:#FBEDEA}
.fb-devis-delai{margin:12px 0 0}
.fb-carnet-attente{
  margin:0;padding:10px 26px 10px 40px;font-size:13px;line-height:1.5;
  background:#FBF5E6;border-bottom:1px solid rgba(176,138,47,.35);color:var(--cacao,#2B211D);
}
.fb-carnet-attente p{margin:0}
.fb-carnet-attente a{color:var(--argile-fonce,#7A4238);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.fb-carnet-attente .fb-temps{font-variant-numeric:tabular-nums}
.fb-carnet-attente.est-passe{background:#FBEDEA;border-bottom-color:rgba(163,59,46,.35)}
@media (max-width:600px){.fb-carnet-attente{padding:10px 18px}}

/* 1.79 — Le solde, à la date choisie. */
.fb-solde-choix{
  border:1px solid rgba(154,90,74,.28);background:#FFFFFF;border-radius:14px;
  padding:14px 18px;margin:18px 0 20px;font-size:15px;line-height:1.55;color:var(--encre,#2B211D);
}
.fb-solde-choix p{margin:0 0 8px}
.fb-solde-choix p:last-child{margin:0}
.fb-solde-ligne{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.fb-solde-ligne label{font-weight:600}
.fb-solde-ligne input[type="date"]{
  font:inherit;font-size:16px;padding:8px 12px;border:1px solid rgba(43,33,29,.25);border-radius:10px;background:#fff;color:inherit;min-height:44px;
}
.fb-solde-etat{font-size:14px;color:#2F6B3A}
.fb-solde-etat.est-erreur{color:#A33B2E}
.fb-solde-aide{font-size:13.5px;color:var(--gris,#6E6058)}
.fb-solde-merci{margin:16px 0;padding:12px 16px;background:#FBF5E6;border-radius:12px;font-size:15px;line-height:1.55}

/* 1.80 — Débit automatique ou lien de paiement. */
.fb-solde-choix.a-le-debit .fb-solde-aide{margin-bottom:12px}
.fb-solde-mode{border:0;margin:0 0 10px;padding:0;min-width:0}
.fb-solde-legende{font-weight:600;padding:0;margin:0 0 8px;font-size:15px}
.fb-solde-option{
  display:flex;align-items:flex-start;gap:10px;box-sizing:border-box;min-height:44px;
  margin:0 0 8px;padding:11px 14px;border:1px solid rgba(43,33,29,.18);border-radius:12px;
  background:#fff;cursor:pointer;line-height:1.45;font-size:15px;
  transition:border-color .15s ease,background-color .15s ease;
}
.fb-solde-option:hover{border-color:rgba(154,90,74,.55)}
.fb-solde-option:has(input:checked){border-color:var(--rose,#9A5A4A);background:#FBF5F2;box-shadow:0 0 0 1px var(--rose,#9A5A4A) inset}
.fb-solde-option input[type="radio"]{flex-shrink:0;width:18px;height:18px;margin:2px 0 0;accent-color:var(--rose,#9A5A4A)}
.fb-solde-option input[type="radio"]:disabled + span{opacity:.7}
.fb-solde-mode-etat{display:block;margin-top:2px}
.fb-solde-mode-etat:empty{display:none}
.fb-solde-accord{font-size:13.5px;line-height:1.5;color:var(--gris,#6E6058);margin:2px 0 0}
.fb-solde-accord[hidden]{display:none}

.fb-panier-voix{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media print{.fb-poubelle,.fb-devis-attente,.fb-paie-ajouter{display:none!important}}
