/* ===========================================================================
   Module d'authentification IAV : la DISPOSITION de ses écrans seulement.

   Couleurs, espacements, tailles, rayons : uniquement les jetons du socle
   (web/tokens.css), chacun avec sa valeur de repli. Les composants (boutons,
   champs, tableaux, alertes, en-tête, pied, écran de connexion) viennent du
   socle et ne sont pas redéfinis ici.
   =========================================================================== */

.page {
  flex: 1 0 auto;
  width: 100%;
  max-width: var(--iav-largeur-lecture, 72rem);
  margin: 0 auto;
  padding: var(--iav-espace-large, 24px) var(--iav-espace-moyen, 16px);
  box-sizing: border-box;
}
.page-titre {
  display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
  gap: var(--iav-espace-moyen, 16px); margin-bottom: var(--iav-espace-large, 24px);
}
.page-titre h1 { margin: 0; }
.section { margin-bottom: var(--iav-espace-section, 48px); }
.section > h2 { margin: 0 0 var(--iav-espace-moyen, 16px) 0; color: var(--iav-bleu-lien, #2B6CB0); }

/* Le lien sous un formulaire de connexion (« mot de passe oublié », retour). */
.iav-auth-lien { margin-top: var(--iav-espace-moyen, 16px); text-align: center; }
.iav-auth-lien a { color: var(--iav-bleu-lien, #2B6CB0); }

.iav-auth-pastille {
  display: inline-block; white-space: nowrap;
  padding: var(--iav-espace-minuscule, 2px) var(--iav-espace-petit, 8px);
  border: var(--iav-trait, 1px) solid var(--iav-info-bordure, #D6DEE8);
  border-radius: var(--iav-rayon-rond, 999px);
  background: var(--iav-info-fond, #EDF3FA); color: var(--iav-info-texte, #215387);
  font-size: var(--iav-taille-petite, 12px); font-weight: var(--iav-graisse-semi, 600);
}

.ligne-formulaire { display: flex; flex-wrap: wrap; align-items: center; gap: var(--iav-espace-petit, 8px); margin-bottom: var(--iav-espace-petit, 8px); }
.ligne-formulaire .iav-controle { flex: 1 1 10rem; min-width: 0; }
.en-ligne { display: inline-block; margin: 0; }
.menu-formulaire { margin: 0; }
.menu-formulaire .iav-menu-entree { width: 100%; text-align: start; background: none; border: 0; cursor: pointer; font: inherit; }
.espace-haut { margin-top: var(--iav-espace-petit, 8px); }

/* État de l'envoi du code : jamais d'attente sans fin, l'échec se voit. */
.etat-envoi { display: flex; gap: var(--iav-espace-petit, 8px); align-items: baseline; color: var(--iav-texte-secondaire, #5A6B7F); }
.etat-envoi-point {
  flex: none; width: var(--iav-espace-petit, 8px); height: var(--iav-espace-petit, 8px);
  border-radius: var(--iav-rayon-rond, 999px); background: var(--iav-bordure, #E3E9F0);
}
.etat-envoi[data-etat="remis"] .etat-envoi-point { background: var(--iav-succes-texte, #1B7A4B); }
.etat-envoi[data-etat="retard"] .etat-envoi-point,
.etat-envoi[data-etat="echec"] .etat-envoi-point,
.etat-envoi[data-etat="non-depose"] .etat-envoi-point { background: var(--iav-avertissement-texte, #7B241C); }
.etat-envoi[data-etat="echec"] { color: var(--iav-erreur-texte, #A61B2B); font-weight: var(--iav-graisse-semi, 600); }
