/* ============================================================
   intl-tel-input : adaptation charte TECO (dark glassmorphism + light)
   Charge apres intlTelInput.min.css pour overrider.
   Utilise les variables du framework V2 (--color-*).
   ============================================================ */

/* Le wrapper prend toute la largeur comme un .ct-input classique */
.iti { width: 100%; display: block; }
.iti > input[type="tel"] { width: 100%; }

/* Bouton de selection du pays (drapeau + indicatif) */
.iti__selected-country,
.iti__selected-country-primary { border-radius: 10px 0 0 10px; }
.iti__selected-country:hover,
.iti__selected-country-primary:hover { background: rgba(255, 255, 255, 0.05); }
.iti--separate-dial-code .iti__selected-dial-code { color: var(--color-text-primary); }

/* Menu deroulant : fond dark glass, lisible */
.iti__dropdown-content {
  background: var(--color-bg-primary);
  border: 1px solid var(--color-border-subtle);
  border-radius: 12px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.45);
  overflow: hidden;
}
.iti__search-input {
  background: rgba(255, 255, 255, 0.04);
  color: var(--color-text-primary);
  border: none;
  border-bottom: 1px solid var(--color-border-subtle);
  padding: 11px 14px;
  font-size: 0.9rem;
}
.iti__search-input::placeholder { color: var(--color-text-muted); }
.iti__country-list { background: transparent; }
.iti__country { color: var(--color-text-primary); padding: 9px 12px; }
.iti__country:hover,
.iti__country.iti__highlight { background: rgba(232, 0, 10, 0.12); }
.iti__dial-code { color: var(--color-text-muted); }
.iti__divider { border-bottom: 1px solid var(--color-border-subtle); }

/* Light theme */
[data-theme="light"] .iti__dropdown-content { background: #ffffff; color: #14161f; }
[data-theme="light"] .iti__country { color: #14161f; }
[data-theme="light"] .iti__search-input { background: #f1f3f5; color: #14161f; }
[data-theme="light"] .iti__selected-country:hover,
[data-theme="light"] .iti__selected-country-primary:hover { background: rgba(0, 0, 0, 0.04); }
[data-theme="light"] .iti__country:hover,
[data-theme="light"] .iti__country.iti__highlight { background: rgba(232, 0, 10, 0.10); }

/* Etat invalide + message d'erreur */
.iti-invalid.ct-input,
.iti-invalid .iti__tel-input,
input.ct-input.iti-invalid { border-color: var(--color-rouge-teco) !important; }
.iti-error-msg {
  color: var(--color-rouge-teco);
  font-size: 0.8rem;
  margin-top: 5px;
  line-height: 1.3;
}
