/* Cazapub : configurateur, devis, éléments de marque */
:root{--cz-encre:#123247;--cz-lagon:#0f7c80;--cz-brume:#eef4f3;--cz-soleil:#ffc531;--cz-corail:#d94a3d;--cz-gris:#5d6f7b;--cz-trait:#d6e2e1;
  --cz-titre:"Bricolage Grotesque","Avenir Next",system-ui,sans-serif;--cz-texte:"Figtree","Segoe UI",system-ui,sans-serif}
.cz-config,.cz-devis-page,#cz-vendeur{font-family:var(--cz-texte);color:var(--cz-encre)}
.cz-config h3,.cz-recap h3{font:600 15px var(--cz-texte);color:var(--cz-gris);margin:0 0 10px}
.cz-bloc{margin-top:20px}
.cz-page{display:inline-block;background:var(--cz-lagon);color:#fff;border-radius:999px;padding:2px 12px;font-size:13px;margin:0}
.cz-nuancier{display:flex;flex-wrap:wrap;gap:10px}
.cz-nuancier button{width:36px;height:36px;border-radius:50%;border:1px solid #0003;cursor:pointer;padding:0}
.cz-nuancier button[aria-pressed="true"]{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--cz-encre)}
.cz-nuancier button:disabled{opacity:.3;cursor:not-allowed}
.cz-coloris{font-size:14px;margin:6px 0 0}
.cz-options{display:grid;gap:8px}
.cz-option{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1.5px solid var(--cz-trait);border-radius:12px;padding:10px 12px;cursor:pointer;margin:0}
.cz-option:has(input:checked){border-color:var(--cz-encre);background:#f6fafa}
.cz-option input{margin-top:4px;accent-color:var(--cz-encre)}
.cz-option b{display:block;font-weight:600}
.cz-option small{display:block;font-size:14px;color:var(--cz-gris)}
.cz-qte{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cz-qte input{width:120px;border:1.5px solid var(--cz-encre);border-radius:12px;padding:10px 12px;font:700 20px var(--cz-titre);text-align:center}
.cz-puce{display:inline-block;flex:none;border:1.5px solid var(--cz-encre);background:#fff;color:var(--cz-encre)!important;border-radius:999px;padding:7px 15px;cursor:pointer;font:600 15px var(--cz-texte);text-decoration:none;white-space:nowrap}
.cz-puce:hover{background:var(--cz-encre);color:#fff!important}
.cz-puces{display:flex;gap:8px;overflow-x:auto;padding:6px 0;scrollbar-width:none}
.cz-note{font-size:13px;color:var(--cz-gris);margin:8px 0 0}
.cz-etiquette{margin-top:22px;background:var(--cz-soleil);border-radius:18px 18px 18px 4px;padding:20px 22px;position:relative}
.cz-etiquette::before{content:"";position:absolute;top:18px;right:18px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:inset 0 1px 2px #0003}
.cz-etiquette .cz-note{color:var(--cz-encre)}
.cz-pu{font:800 clamp(38px,5vw,54px)/1 var(--cz-titre);letter-spacing:-.03em}
.cz-pu small{font:600 16px var(--cz-texte);letter-spacing:0}
.cz-tot{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;font-size:15px}
.cz-tot b{font-family:var(--cz-titre);font-size:18px}
.cz-dispo{margin-top:10px;font-size:14px}
.cz-etiquette table{width:100%;border-collapse:collapse;margin:14px 0 0;font-size:14px;border:0}
.cz-etiquette th,.cz-etiquette td{text-align:left;padding:5px 4px;border:0;border-top:1px solid #12324722;background:transparent}
.cz-etiquette td:last-child,.cz-etiquette th:last-child{text-align:right;font-variant-numeric:tabular-nums}
.cz-etiquette .cz-actif td{font-weight:700}
.cz-etiquette.charge .cz-pu{opacity:.35}
.cz-interne{font-size:12px;margin:8px 0 0;background:#ffffffa0;border-radius:8px;padding:6px 8px}
.cz-ajout{margin-top:14px;width:100%;border:0;border-radius:14px;background:var(--cz-encre);color:#fff;padding:16px;font:700 18px var(--cz-titre);cursor:pointer}
.cz-ajout:disabled{opacity:.5}
.cz-erreur{color:var(--cz-corail);font-weight:600}
.cz-prix-appel{font-family:var(--cz-texte);color:var(--cz-encre)}
.cz-prix-appel b{font-family:var(--cz-titre);font-weight:800}
.cz-prix-appel small{color:var(--cz-gris);font-size:.75em}
/* devis */
.cz-devis{display:grid;grid-template-columns:1.2fr .8fr;gap:40px}
@media (max-width:900px){.cz-devis{grid-template-columns:1fr}}
.cz-ligne{display:grid;grid-template-columns:84px 1fr auto;gap:14px;padding:14px 0;border-bottom:1px solid var(--cz-trait);align-items:center}
.cz-ligne img{width:84px;height:84px;object-fit:contain;background:var(--cz-brume);border-radius:10px}
.cz-ligne h4{font:600 16px/1.3 var(--cz-texte);margin:0}
.cz-ligne p{margin:2px 0;font-size:14px;color:var(--cz-gris)}
.cz-ligne input{width:90px;border:1px solid var(--cz-trait);border-radius:8px;padding:4px 8px}
.cz-montant{text-align:right;font:700 18px var(--cz-titre)}
.cz-montant small{display:block;font:400 13px var(--cz-texte);color:var(--cz-gris)}
.cz-retirer{border:0;background:none;color:var(--cz-corail);cursor:pointer;padding:0;font-size:14px}
@media (max-width:480px){.cz-ligne{grid-template-columns:64px 1fr}.cz-ligne img{width:64px;height:64px}.cz-montant{grid-column:2;text-align:left}}
.cz-recap{background:var(--cz-brume);border-radius:18px;padding:22px;align-self:start}
.cz-total{display:flex;justify-content:space-between;font-size:15px;padding:4px 0}
.cz-grand{font:800 26px var(--cz-titre);border-top:2px solid var(--cz-encre);margin-top:8px;padding-top:10px}
.cz-form{display:grid;gap:10px;margin-top:18px}
.cz-form label{display:grid;gap:4px;font-size:14px;font-weight:600}
.cz-form input,.cz-form textarea{border:1px solid #b9cbca;border-radius:10px;padding:10px 12px;background:#fff;font:400 16px var(--cz-texte)}
.cz-pin{max-width:320px}
.cz-pin input{font:700 26px var(--cz-titre);letter-spacing:.3em;text-align:center}
.cz-cache{position:absolute!important;left:-9999px}
.cz-merci h2{font:800 40px var(--cz-titre)}
/* bouton flottant + toast */
.cz-flottant{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:90;background:var(--cz-encre);color:#fff!important;text-decoration:none;border-radius:999px;padding:12px 16px 12px 20px;font:700 16px var(--cz-titre);display:flex;gap:10px;align-items:center;box-shadow:0 6px 20px #12324740}
.cz-flottant b{min-width:28px;height:28px;border-radius:999px;background:var(--cz-soleil);color:var(--cz-encre);display:grid;place-items:center;font-size:14px;padding:0 6px}
body.cz-mode-vendeur .cz-flottant{background:var(--cz-lagon)}
.cz-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);opacity:0;visibility:hidden;background:var(--cz-encre);color:#fff;padding:12px 20px;border-radius:999px;transition:.25s;z-index:95;font:600 15px var(--cz-texte)}
.cz-toast.vu{transform:translate(-50%,0);opacity:1;visibility:visible}
@media (prefers-reduced-motion:reduce){.cz-toast{transition:none}}
.cz-champ{display:grid;gap:4px;font:600 14px var(--cz-texte);margin:0 0 10px}
.cz-champ[hidden]{display:none}
.cz-champ select{border:1.5px solid var(--cz-encre);border-radius:12px;padding:10px 12px;background:#fff;font:500 16px var(--cz-texte);color:var(--cz-encre);max-width:100%}
.cz-tailles{margin-top:10px;max-width:240px}
