/* ==========================================================================
   Page de connexion — réglages d'affichage (Paramètres → Page de connexion)
   Taille du logo du panneau : variable --auth-logo (px).
   Taille du formulaire : data-densite = compact | moyen | standard.
   Fichier commun à toutes les plateformes FSF (Portail, InfraTech, Flotte…).
   ========================================================================== */
.auth-split .auth-logo { width: min(62%, var(--auth-logo, 200px)); }
.auth-split .auth-logo-vide { font-size: clamp(28px, calc(var(--auth-logo, 200px) * .24), 76px); }

/* ---- Compact ---------------------------------------------------------- */
.auth-split[data-densite="compact"] .auth-panel { gap: 22px; }
.auth-split[data-densite="compact"] .auth-form { max-width: 360px; }
.auth-split[data-densite="compact"] .auth-head { gap: 6px; margin-bottom: 22px; }
.auth-split[data-densite="compact"] .auth-head .brand-mark,
.auth-split[data-densite="compact"] .auth-head .brand-logo { width: 40px; height: 40px; border-radius: 12px; font-size: 14px; }
.auth-split[data-densite="compact"] .auth-head .auth-app { font-size: 14px; }
.auth-split[data-densite="compact"] .auth-head .auth-app small { font-size: 12px; }
.auth-split[data-densite="compact"] .auth-form h1 { font-size: 24px; margin-bottom: 4px; }
.auth-split[data-densite="compact"] .auth-form .lead { font-size: 14px; margin-bottom: 20px; }
.auth-split[data-densite="compact"] .form { gap: 14px; }
.auth-split[data-densite="compact"] .field { gap: 6px; }
.auth-split[data-densite="compact"] .label { font-size: 14px; }
.auth-split[data-densite="compact"] .input { min-height: 42px; padding: 8px 14px; border-radius: 12px; }
.auth-split[data-densite="compact"] .btn { min-height: 42px; font-size: 15px; border-radius: 12px; }
.auth-split[data-densite="compact"] .check { min-height: 34px; font-size: 14px; gap: 8px; }
.auth-split[data-densite="compact"] .check input { width: 18px; height: 18px; }
.auth-split[data-densite="compact"] .hint { font-size: 12.5px; }
.auth-split[data-densite="compact"] .otp-input { font-size: 26px; min-height: 54px; }
.auth-split[data-densite="compact"] .auth-foot { margin-top: 26px; font-size: 12px; }
.auth-split[data-densite="compact"] .fsf-sso { margin-bottom: 16px !important; }
.auth-split[data-densite="compact"] .fsf-sso p { margin-top: 12px !important; }

/* ---- Moyen ------------------------------------------------------------ */
.auth-split[data-densite="moyen"] .auth-form { max-width: 390px; }
.auth-split[data-densite="moyen"] .auth-head { gap: 8px; margin-bottom: 28px; }
.auth-split[data-densite="moyen"] .auth-head .brand-mark,
.auth-split[data-densite="moyen"] .auth-head .brand-logo { width: 46px; height: 46px; border-radius: 14px; font-size: 15px; }
.auth-split[data-densite="moyen"] .auth-form h1 { font-size: 27px; margin-bottom: 6px; }
.auth-split[data-densite="moyen"] .auth-form .lead { margin-bottom: 24px; }
.auth-split[data-densite="moyen"] .form { gap: 17px; }
.auth-split[data-densite="moyen"] .field { gap: 7px; }
.auth-split[data-densite="moyen"] .input { min-height: 47px; padding: 10px 15px; }
.auth-split[data-densite="moyen"] .btn { min-height: 46px; }
.auth-split[data-densite="moyen"] .check { min-height: 40px; }
.auth-split[data-densite="moyen"] .otp-input { font-size: 30px; min-height: 62px; }
.auth-split[data-densite="moyen"] .auth-foot { margin-top: 32px; }

/* ---- Écrans de bureau : texte des champs un peu plus fin ---------------- */
@media (min-width: 901px) {
  .auth-split[data-densite="compact"] .input { font-size: 15px; }
}

/* ---- Téléphone : logo plafonné, champs à 16 px (évite le zoom iOS) ------- */
@media (max-width: 900px) {
  .auth-split .auth-logo { width: min(120px, var(--auth-logo, 200px) * .6); }
  .auth-split[data-densite="compact"] .auth-panel { padding: 22px 20px; gap: 10px; }
  .auth-split .input { font-size: 16px; }
}
