/* ============================
   LOGIN PAGE CUSTOM STYLES
============================ */

html, body {
  width: 100%;
  overflow-x: hidden;
}

.login-page {
  background-color: #f0f4f8;
  padding: 2rem;
}

.login-container {
  width: 100%;
  max-width: 420px;
  background-color: #fff;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  padding: 2rem;
  animation: fadeIn 0.4s ease-in-out;
}

.role-button {
  transition: all 0.3s ease;
  border-radius: 8px;
  font-weight: 500;
}

.role-button.active {
  background-color: #027ec1 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.2rem rgba(2, 126, 193, 0.3);
}

#loginForm {
  animation: fadeIn 0.3s ease-in-out;
}

#togglePassword {
  z-index: 5;
  top: calc(50% + 2px);
  transition: top 0.2s ease;
}

/* Espaço nos ícones das labels */
.form-label i {
  margin-right: 6px;
}

/* Animação */
.fade-in {
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  from {
      opacity: 0;
      transform: translateY(-10px);
  }
  to {
      opacity: 1;
      transform: translateY(0);
  }
}

/* Responsivo para celular */
@media (max-width: 576px) {
  .login-container {
      padding: 1rem;
      margin: 0 1rem;
  }

  .form-label {
      font-size: 0.9rem;
  }

  .form-control {
      font-size: 0.95rem;
  }

  .btn {
      font-size: 0.95rem;
  }
}
