/* 1. Ajustes de Tipografía y Escala */
html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

/* 2. Estructura de "Sticky Footer" (Pie de página pegajoso)
   Materialize funciona mejor con Flexbox para mantener el footer abajo
*/
body {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  margin: 0;
}

main {
  flex: 1 0 auto;
}

/* 3. Ajustes de Foco
   Sustituimos los selectores de Bootstrap por los de Materialize
*/
.btn:focus, .btn-flat:focus {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

/* 4. Validaciones de ASP.NET Core
   Mantenemos estos estilos para que los errores de C# se integren con Materialize
*/
.field-validation-error {
  color: #f44336;
  font-size: 0.8rem;
  display: block;
  margin-top: -15px; /* Ajuste para que el error no quede muy lejos del input */
  margin-bottom: 10px;
}

input.input-validation-error,
textarea.input-validation-error {
  border-bottom: 1px solid #f44336 !important;
  box-shadow: 0 1px 0 0 #f44336 !important;
}

/* 5. Ajustes personalizados para el Layout */
nav .brand-logo {
  font-weight: 500;
}

.section {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

/* Color del foco en inputs de Materialize */
input:focus:not([readonly]),
textarea:focus:not([readonly]) {
  border-bottom: 1px solid #512da8 !important; /* deep-purple darken-2 */
  box-shadow: 0 1px 0 0 #512da8 !important;
}

input:focus:not([readonly]) + label,
textarea:focus:not([readonly]) + label {
  color: #512da8 !important;
}

/* Iconos de prefijo en foco */
.input-field .prefix.active {
  color: #4527a0 !important; /* deep-purple darken-3 */
}

/* Ajuste de badges */
.badge {
  border-radius: 4px;
  font-weight: 500;
  min-width: 100px !important;
}