/* Les Pros du Var : module « Devis et paiement en ligne » (mobile d'abord). */
.lpdv-statut--d-brouillon{background:#eceae6;color:#3b3b3b}
.lpdv-statut--d-envoye,.lpdv-statut--d-vu{background:#fff1cc;color:#5a4300}
.lpdv-statut--d-signe,.lpdv-statut--d-acompte_paye,.lpdv-statut--d-en_cours{background:var(--c-rade-clair,#dcebf2);color:var(--c-rade-fonce,#143f57)}
.lpdv-statut--d-termine{background:#efe3ff;color:#3c2a6b}
.lpdv-statut--d-valide,.lpdv-statut--d-solde{background:#e1ecd9;color:#21451a}
.lpdv-statut--d-litige,.lpdv-statut--d-refuse,.lpdv-statut--d-retracte{background:#fbeae8;color:#5c130f}
.lpdv-statut--d-expire,.lpdv-statut--d-annule{background:#eceae6;color:#4c524a}

.lpdv-kpis--3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
@media (max-width:560px){.lpdv-kpis--3{grid-template-columns:1fr}}
.lpdv-grille-2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media (max-width:560px){.lpdv-grille-2{grid-template-columns:1fr}}
.lpdv-liste-simple{list-style:none;margin:0 0 1rem;padding:0}
.lpdv-liste-simple li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--c-bord,#e6d9c4)}

/* Liste des devis */
.lpdv-devis-liste{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.lpdv-devis-item a{display:grid;gap:.25rem;padding:.85rem 1rem;border:1px solid var(--c-bord,#e6d9c4);border-radius:14px;background:var(--c-surface,#fff);color:inherit;text-decoration:none}
.lpdv-devis-item a:hover,.lpdv-devis-item a:focus-visible{border-color:var(--c-rade,#1e5a7a);box-shadow:0 4px 14px rgba(20,63,87,.1)}
.lpdv-devis-item__haut,.lpdv-devis-item__bas{display:flex;justify-content:space-between;gap:.5rem;align-items:center}
.lpdv-devis-item__objet{color:var(--c-encre-doux,#4a5258);font-size:.94rem}
.lpdv-devis-item__montant{font-weight:700}
.lpdv-devis-entete{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.lpdv-devis-entete h2,.lpdv-devis-entete h3{margin:0}

/* Éditeur */
.lpdv-ligne{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 .6rem;padding:.75rem 2.2rem .2rem .75rem;margin:0 0 .6rem;border:1px solid var(--c-bord,#e6d9c4);border-radius:12px;background:var(--c-fond,#fbf6ee)}
.lpdv-ligne .lpdv-field{margin:0 0 .55rem}
.lpdv-ligne label{font-size:.82rem;font-weight:600;display:block}
.lpdv-ligne input,.lpdv-ligne select{width:100%}
.lpdv-ligne__lib{grid-column:1/-1}
.lpdv-ligne__suppr{position:absolute;top:.35rem;right:.35rem;width:30px;height:30px;border-radius:50%;border:1px solid var(--c-bord-fort,#8a7f70);background:#fff;font-size:1.1rem;line-height:1;cursor:pointer}
@media (min-width:900px){.lpdv-ligne{grid-template-columns:minmax(0,3.2fr) .7fr 1fr 1fr .9fr}.lpdv-ligne__lib{grid-column:auto}}
.lpdv-ligne--cat{grid-template-columns:1fr 1fr 1fr;padding-right:.75rem}
@media (min-width:900px){.lpdv-ligne--cat{grid-template-columns:minmax(0,3fr) 1fr 1fr 1fr auto}}
.lpdv-ligne__del{align-self:end}
.lpdv-totaux{display:grid;gap:.25rem;margin:.75rem 0;padding:.75rem 1rem;border-radius:12px;background:var(--c-surface,#fff);border:1px solid var(--c-bord,#e6d9c4)}
.lpdv-totaux div{display:flex;justify-content:space-between;gap:1rem}
.lpdv-totaux__ttc{font-size:1.15rem;border-top:1px solid var(--c-bord,#e6d9c4);padding-top:.35rem}
.lpdv-choix-paiement{display:grid;gap:.6rem;margin:0 0 1rem}
.lpdv-radio-carte{display:flex;gap:.6rem;align-items:flex-start;padding:.75rem;border:1.5px solid var(--c-bord,#e6d9c4);border-radius:12px;background:var(--c-surface,#fff);cursor:pointer}
.lpdv-radio-carte:has(input:checked){border-color:var(--c-terre,#b4482a);box-shadow:0 0 0 2px rgba(180,72,42,.15)}
.lpdv-radio-carte.is-disabled{opacity:.6;cursor:not-allowed}
.lpdv-radio-carte input{margin-top:.3rem}
.lpdv-barre-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
@media (max-width:700px){.lpdv-barre-actions{position:sticky;bottom:0;z-index:5;background:var(--c-fond,#fbf6ee);padding:.6rem 0 calc(.6rem + env(safe-area-inset-bottom));border-top:1px solid var(--c-bord,#e6d9c4)}.lpdv-barre-actions .lpdv-bouton{flex:1 1 auto}}

/* Frise d'avancement */
.lpdv-frise{display:flex;list-style:none;margin:1rem 0;padding:0;gap:.25rem;overflow-x:auto;scrollbar-width:thin}
.lpdv-frise li{flex:1 0 auto;min-width:4.6rem;text-align:center;font-size:.78rem;padding:1.4rem .2rem .2rem;position:relative;color:var(--c-encre-doux,#4a5258)}
.lpdv-frise li::before{content:"";position:absolute;top:.35rem;left:50%;transform:translateX(-50%);width:.9rem;height:.9rem;border-radius:50%;border:2px solid var(--c-bord-fort,#8a7f70);background:#fff}
.lpdv-frise li.is-done::before{background:var(--c-pin,#3e5a3a);border-color:var(--c-pin,#3e5a3a)}
.lpdv-frise li.is-current{font-weight:700;color:var(--c-encre,#1d2328)}
.lpdv-frise li.is-current::before{background:var(--c-terre,#b4482a);border-color:var(--c-terre,#b4482a)}
.lpdv-actions-devis{display:grid;gap:.75rem;margin:1rem 0}
.lpdv-journal ol{font-size:.85rem;padding-left:1.2rem}
.lpdv-journal time{color:var(--c-encre-doux,#4a5258)}

/* Particulier : comparaison et signature */
.lpdv-comparatif{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:.8rem;overflow-x:auto;padding-bottom:.4rem;scroll-snap-type:x mandatory}
.lpdv-comparatif__col{scroll-snap-align:start;border:1px solid var(--c-bord,#e6d9c4);border-radius:16px;background:var(--c-surface,#fff);padding:1rem;display:flex;flex-direction:column}
.lpdv-comparatif__col header{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start}
.lpdv-comparatif__nom{font-weight:700;margin:0}
.lpdv-comparatif__prix{font-size:1.6rem;font-weight:700;margin:.5rem 0}
.lpdv-comparatif__prix small{font-size:.85rem;font-weight:400}
.lpdv-comparatif dl{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;font-size:.9rem;margin:0 0 1rem;flex:1}
.lpdv-comparatif dt{color:var(--c-encre-doux,#4a5258)}
.lpdv-comparatif dd{margin:0;text-align:right}
@media (max-width:560px){.lpdv-comparatif{grid-auto-flow:row;grid-auto-columns:auto;overflow:visible}}
.lpdv-table--lignes td:not(:first-child),.lpdv-table--lignes th:not(:first-child){text-align:right;white-space:nowrap}
.lpdv-signature .lpdv-check label{font-size:.95rem}
.lpdv-check--option{background:var(--c-rade-clair,#dcebf2);border-radius:10px;padding:.5rem .6rem}
.lpdv-code{display:grid;gap:.25rem;padding:.75rem;border:1px dashed var(--c-bord-fort,#8a7f70);border-radius:12px;margin:0 0 1rem}
.lpdv-code input{font-size:1.4rem;letter-spacing:.3em;max-width:12rem}
.lpdv-radios{border:0;padding:0;margin:0 0 1rem}
.lpdv-radios legend{font-weight:600;margin-bottom:.35rem}
.lpdv-notes{border:0;padding:0;margin:0 0 1rem;display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:.35rem}
.lpdv-notes legend{width:100%;font-weight:600}
.lpdv-notes input{position:absolute;opacity:0}
.lpdv-notes label{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--c-bord-fort,#8a7f70);cursor:pointer;font-weight:700}
.lpdv-notes input:checked~label,.lpdv-notes label:hover,.lpdv-notes label:hover~label{background:var(--c-ocre,#d9a441);border-color:var(--c-ocre,#d9a441)}
.lpdv-notes input:focus-visible+label{outline:3px solid var(--c-focus,#1e5a7a)}
.lpdv-client details{margin:1rem 0}
.lpdv-client summary{cursor:pointer;font-weight:600}
.lpdv-docs a{word-break:break-word}

/* Simulateur de paiement */
.lpdv-sim{max-width:560px;margin:0 auto;padding:1rem;border:1px solid var(--c-bord,#e6d9c4);border-radius:16px;background:var(--c-surface,#fff)}
.lpdv-sim__bandeau{background:#fff1cc;color:#5a4300;border-radius:10px;padding:.5rem .75rem;font-weight:600;font-size:.9rem}
.lpdv-sim__boutons{display:flex;flex-wrap:wrap;gap:.5rem}

/* Champs saisis sans attribut type (texte par défaut) : même style que les autres champs. */
.lpdv-form input:not([type]),.lpdv-form input[type=file]{width:100%;min-height:44px;padding:.55rem .7rem;border:1px solid var(--c-bord-fort,#8a8476);border-radius:8px;background:#fff;color:var(--c-encre,#1f2420);font:inherit}
.lpdv-form input:not([type]){border-radius:12px;min-height:50px;border:1.5px solid var(--c-bord-fort,#8a7f70)}
.lpdv-form input[type=file]{min-height:auto;padding:.5rem;background:#fff}
.lpdv-ligne input:not([type]),.lpdv-ligne select{min-height:44px}

/* Clients personnels */
.lpdv-tag{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:.05rem .5rem;background:var(--c-sable,#f3e8d6);color:var(--c-encre-doux,#4a5258);vertical-align:middle}
.lpdv-devis-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}
.lpdv-devis-item--actions{display:grid;gap:.4rem}
.lpdv-devis-item__boutons{display:flex;gap:.4rem;flex-wrap:wrap;padding:0 .2rem}
.lpdv-perso-page{margin:0;background:var(--c-fond,#fbf6ee);color:var(--c-encre,#1d2328);font-family:var(--f-texte,system-ui,sans-serif)}
.lpdv-perso-conteneur{max-width:880px;margin:0 auto;padding:0 16px}
.lpdv-perso-entete{background:#fff;border-bottom:1px solid var(--c-bord,#e6d9c4);padding:1rem 0}
.lpdv-perso-nom{font-family:var(--f-titre,Georgia,serif);font-size:1.5rem;margin:0}
.lpdv-perso-entete .lpdv-small{margin:.2rem 0 0}
.lpdv-perso-page main{padding:1.5rem 16px 2rem}
.lpdv-perso-pied{border-top:1px solid var(--c-bord,#e6d9c4);padding:1rem 0 2rem;color:var(--c-encre-doux,#4a5258)}

/* Fiabilité (système de confiance) */
.lpdv-fiabilite{border:1px solid var(--c-bord,#e6d9c4);border-radius:12px;padding:.7rem .9rem;margin:1rem 0;background:#fff}
.lpdv-fiabilite__titre{font-weight:700;margin:0 0 .3rem}
.lpdv-fiabilite__niveau{display:inline-block;border-radius:999px;padding:.15rem .7rem;font-weight:700}
.lpdv-fiabilite__niveau--elevee{background:#e1ecd9;color:#21451a}
.lpdv-fiabilite__niveau--moyenne{background:#fff1cc;color:#5a4300}
.lpdv-fiabilite__niveau--a_confirmer{background:#eceae6;color:#3b3b3b}
.lpdv-eval-critere{border:0;padding:0;margin:0 0 .6rem}
.lpdv-eval-critere legend{font-weight:600;margin-bottom:.25rem}
.lpdv-eval-choix{display:inline-flex;align-items:center;gap:.3rem;margin:0 .9rem .3rem 0;min-height:36px}
.lpdv-evals li{display:grid;gap:.4rem}
