/* ====================================
   WebApp - Main Entry Point
   ==================================== */

/* Base/components/layout/dashboard CSS are loaded from _SiteCssBundle.cshtml with
   asp-append-version so cache busting is file-hash based instead of manual. */

/* Global validation policy:
   keep border/message feedback, never render Bootstrap status icons inside fields. */
.form-control.is-valid,
.was-validated .form-control:valid {
  background-image: none !important;
  box-shadow: none !important;
}

.form-control.is-invalid,
.form-control.input-validation-error,
.was-validated .form-control:invalid {
  background-image: none !important;
}

.form-select.is-valid:not([multiple]):not([size]),
.form-select.input-validation-error.is-valid:not([multiple]):not([size]),
.was-validated .form-select:valid:not([multiple]):not([size]),
.form-select.is-invalid:not([multiple]):not([size]),
.form-select.input-validation-error:not([multiple]):not([size]),
.was-validated .form-select:invalid:not([multiple]):not([size]) {
  --bs-form-select-bg-icon: none;
  background-image: var(--bs-form-select-bg-img), none !important;
  padding-right: var(--ui-form-select-state-padding-right, 2.25rem) !important;
}

.resend-exhausted-alert {
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.resend-exhausted-alert.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ====================================================================
   Alinhamento vertical do indicador nativo de data/hora.
   Em .form-floating o padding superior (para o label flutuante) empurra
   o icone do calendario para baixo; aqui ele e centralizado verticalmente
   em qualquer contexto (form-floating ou label-acima), em toda a plataforma.
   ==================================================================== */
input[type="date"],
input[type="datetime-local"],
input[type="time"],
input[type="month"],
input[type="week"] {
  position: relative;
}

input[type="date"]::-webkit-calendar-picker-indicator,
input[type="datetime-local"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator,
input[type="month"]::-webkit-calendar-picker-indicator,
input[type="week"]::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 50%;
  right: 0.85rem;
  margin: 0;
  padding: 0;
  transform: translateY(-50%);
  cursor: pointer;
}
