  body {
      min-height: 100vh;
      background: linear-gradient(135deg, #f05a36, #98afbf, #dae3ec);
      background-attachment: fixed;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  .login-card {
      background: rgba(255, 255, 255, 0.9);
      /* base clara */
      backdrop-filter: blur(10px);
      border-radius: 1rem;
      box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
      max-width: 400px;
      width: 100%;
      padding: 2rem;
  }

  .btn-serfinsa {
      background-color: #f05a36;
      border: none;
      color: #fff;
      font-weight: 500;
      transition: all 0.3s ease;
  }

  .btn-serfinsa:hover {
      background-color: #d44f2f;
      transform: translateY(-2px);
      box-shadow: 0 6px 15px rgba(240, 90, 54, 0.4);
  }

  h3 {
      color: #000000;
      font-weight: 600;
  }

  label {
      font-weight: 500;
      color: #333;
  }

  .small {
      color: #555 !important;
  }

  /* Estilos para campos readonly */
.form-control[readonly] {
    color: #495057 !important;
    background-color: #f8f9fa !important;
    border-color: #ced4da !important;
    cursor: not-allowed !important;
    opacity: 0.8;
}

.form-control[readonly]:focus {
    background-color: #f8f9fa !important;
    border-color: #ced4da !important;
    box-shadow: none !important;
}

/* Estilo con animación de entrada/salida */
#strengthMessage, #messageConfirmPassword {
    font-size: 0.875rem;
    font-weight: 500;
    margin-top: 10px;
    padding: 12px 15px;
    border-radius: 8px;
    transition: all 0.3s ease;
    border-left: 4px solid transparent;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08);
    /* Ocultar por defecto */
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
}

/* Mostrar con animación cuando tenga contenido */
#strengthMessage.Short, #strengthMessage.Weak, #strengthMessage.Good, #strengthMessage.Strong,
#messageConfirmPassword.Short {
    opacity: 1;
    max-height: 60px;
    padding-top: 12px;
    padding-bottom: 12px;
    margin-top: 10px;
}

#strengthMessage.Short, #messageConfirmPassword.Short {
    background-color: #ffeaea;
    color: #d63031;
    border-left-color: #e17055;
}

#strengthMessage.Weak {
    background-color: #fff8e1;
    color: #f57c00;
    border-left-color: #fdcb6e;
}

#strengthMessage.Good {
    background-color: #e8f4fd;
    color: #0984e3;
    border-left-color: #74b9ff;
}

#strengthMessage.Strong {
    background-color: #eafaf1;
    color: #00b894;
    border-left-color: #55efc4;
}