/**
 * Formulaires SOGETEC — feuille ADDITIVE (Lot M7).
 *
 * Le MPA ne montre jamais d'erreurs serveur (il simule le succès en JS) : ce
 * fichier ajoute uniquement l'état d'erreur, l'aide de champ et l'état
 * « lecture seule » (champ pré-rempli verrouillé). Chargée APRÈS `style.css`,
 * qui reste STRICTEMENT inchangé. Le succès réutilise `.sent-box` de
 * `style.css`. Toutes les couleurs viennent des tokens `:root` du MPA.
 */

/* Résumé d'erreurs en tête de formulaire. */
.form-grid .form-errors{
  grid-column:1 / -1;
  border:1px solid var(--red);
  background:rgba(225,29,72,0.06);
  border-radius:3px;
  padding:16px 18px;
}
.form-grid .form-errors p{
  margin:0 0 8px;
  font-family:var(--display);
  font-weight:700;
  font-size:12px;
  letter-spacing:0.04em;
  color:var(--red);
}
.form-grid .form-errors ul{
  margin:0;
  padding-left:20px;
  font-size:13px;
  line-height:1.7;
  font-weight:300;
  color:var(--slate-600);
}

/* État d'erreur d'un champ. */
.field--error .ip-field{border-color:var(--red);}
.field--error .ip-field:focus{box-shadow:0 0 0 3px rgba(225,29,72,0.14);}
.field-error{
  display:block;
  margin-top:7px;
  font-size:12px;
  font-weight:600;
  line-height:1.5;
  color:var(--red);
}
.field-error--consent{margin-top:4px;}
.consent--error span{color:var(--red);}

/* Aide de champ (facultative). */
.field-hint{
  display:block;
  margin-top:7px;
  font-size:12px;
  font-weight:300;
  line-height:1.5;
  color:var(--slate-500);
}

/* Champ pré-rempli et verrouillé (ex. « Poste visé » depuis une offre). */
.ip-field[readonly]{
  background:var(--bg-1);
  color:var(--slate-600);
  cursor:not-allowed;
}

/* Groupe de boutons radio (palette : rarement utilisé, garde le style MPA). */
.field-radios{display:flex;flex-wrap:wrap;gap:14px 22px;padding-top:4px;}
.field-radio{
  display:flex;align-items:center;gap:9px;
  font-size:14px;font-weight:300;color:var(--slate-600);cursor:pointer;
}
.field-radio input{width:16px;height:16px;accent-color:var(--red);}

/* Cible tactile confortable pour la case de consentement. */
.consent{min-height:44px;}
