/* =====================================================================
   Page « Faire ma demande » — styles externalisés (CSP style-src stricte).
   Remplace les attributs style="" du gabarit par des classes.
   ===================================================================== */

/* --- Barres de progression : largeurs finies -> classes (réactives via Livewire) --- */
/* Demande normale : 3 étapes (Identification / Documents / Récapitulatif & paiement) */
.dem-progress-1 { width: 33.333%; }
.dem-progress-2 { width: 66.667%; }
.dem-progress-3 { width: 100%; }
/* Duplicata : 2 étapes de saisie (Identification / Paiement) */
.dem-progress-dup-1 { width: 50%; }
.dem-progress-dup-2 { width: 100%; }

/* --- Timbre : bordure selon validité --- */
.dem-timbre-ok { border-color: #27500A; }
.dem-timbre-ko { border-color: #A32D2D; }

/* --- Couleurs / liens --- */
.dem-green { color: #27500A; }
.dem-green-ml { color: #27500A; margin-left: 8px; }
.dem-green-italic { font-size: 12px; color: #27500A; margin-top: 14px; font-style: italic; }
.dem-red { color: #A32D2D; }
.dem-blue { color: #185FA5; }
.dem-vert { color: var(--vert); }
.dem-vert-bold { color: var(--vert); font-weight: 600; }
.dem-vert-mr { color: var(--vert); margin-right: 10px; }
.dem-link { color: var(--vert); font-weight: 600; text-decoration: none; }
.dem-link-sm { color: var(--vert); font-weight: 600; font-size: 13px; text-decoration: none; }
.dem-muted-mb0 { color: var(--texte-s); margin-bottom: 0; }

/* --- Légendes / petits textes --- */
.dem-hint { font-size: 11px; color: var(--texte-s); }
.dem-muted-12-mb8 { font-size: 12px; color: var(--texte-s); margin-bottom: 8px; }
.dem-muted-mb16 { font-size: 13px; color: var(--texte-s); margin-bottom: 16px; }
.dem-muted-mb28 { font-size: 13px; color: var(--texte-s); margin-bottom: 28px; }

/* --- Titres / icônes --- */
.dem-success-title { font-size: 24px; font-weight: 800; margin-bottom: 8px; }
.dem-bold-15 { font-weight: 700; font-size: 15px; }
.dem-icon-11 { font-size: 11px; }
.dem-icon-16-shrink { font-size: 16px; flex-shrink: 0; }
.dem-icon-18 { font-size: 18px; }
.dem-icon-28 { font-size: 28px; flex-shrink: 0; }

/* --- Mises en page ponctuelles --- */
.dem-btn-row { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.dem-mt-8 { margin-top: 8px; }
.dem-mb20 { margin-bottom: 20px; }
.dem-list { margin: 8px 0 8px 0; padding-left: 20px; line-height: 1.7; }
.dem-center-note { text-align: center; padding: 16px; font-size: 13px; color: var(--texte-s); }
.dem-center-note-sm { text-align: center; font-size: 12px; color: var(--texte-s); margin-top: 12px; }
.dem-submit-btn { width: 100%; padding: 15px; font-size: 15px; font-weight: 700; }
.dem-doc-or { background: var(--or-l); color: #854F0B; }

/* --- Paiement --- */
.dem-pay-sub { font-size: 12px; margin-top: 4px; opacity: .8; }
.dem-pay-sub2 { font-size: 12px; margin-top: 2px; opacity: .8; }
.dem-pay-ok-box { background: #EAF3DE; border-radius: 10px; padding: 18px; display: flex; align-items: center; gap: 12px; color: #27500A; }

/* --- Boîtes info / erreur / dossier trouvé (duplicata) --- */
.dem-info-box { background: var(--gris); border-radius: 8px; padding: 10px 14px; margin-bottom: 16px; font-size: 12px; color: var(--texte-s); }
.dem-error-box { background: #FCEBEB; color: #A32D2D; padding: 12px; border-radius: 8px; font-size: 13px; margin-top: 12px; display: flex; align-items: center; gap: 8px; }
.dem-found-box { background: #EAF3DE; border: 1.5px solid #a8d5b5; border-radius: 12px; padding: 20px; margin-top: 16px; }
.dem-found-head { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; color: #27500A; font-weight: 700; }

/* --- Champs verrouillés (renouvellement : NIP / téléphone vérifiés) --- */
.dem-input-locked { background: #F2F2F2; cursor: not-allowed; }

/* --- Message d'éligibilité au renouvellement (variantes de couleur) --- */
.dem-renouv-msg { padding: 14px; border-radius: 8px; font-size: 13px; margin-top: 12px; display: flex; align-items: flex-start; gap: 10px; }
.dem-renouv-msg--succes  { background: #EAF3DE; color: #27500A; }
.dem-renouv-msg--attente { background: #FDF3E0; color: #854F0B; }
.dem-renouv-msg--erreur  { background: #FCEBEB; color: #A32D2D; }
.dem-renouv-msg--info    { background: #F2F2F2; color: #595959; }
