/* Login page specific styles: restores original visual language without loading heavy global bundles */
body.login-page {
  min-height: 100vh;
  margin: 0;
  background:
    radial-gradient(1200px 600px at 20% -10%, #2a3f9d 0%, rgba(42, 63, 157, 0) 55%),
    radial-gradient(1000px 500px at 90% 110%, #7a2a8f 0%, rgba(122, 42, 143, 0) 55%),
    #0f1535;
}

.auth-basic-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.border-gradient-1 {
  border-top: 4px solid transparent;
  border-image: linear-gradient(to right, #7928ca, #ff0080, #04e09a, #e0d504) 1;
}

.login-card {
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}

.separator {
  display: flex;
  align-items: center;
  margin: 1.25rem 0;
  gap: 12px;
}

.separator .line {
  flex: 1 1 0;
  height: 1px;
  background: rgba(0, 0, 0, 0.14);
}

.separator p {
  margin: 0;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  color: #6c757d;
  font-weight: 600;
  white-space: nowrap;
}

.btn-grd,
.btn-grd:hover,
.btn-grd:focus {
  color: #fff !important;
}

.btn-grd-primary {
  background-image: linear-gradient(310deg, #7928ca, #ff0080) !important;
  border: 0 !important;
}

.btn-grd-danger {
  background-image: linear-gradient(310deg, #ee0979, #ff6a00) !important;
  border: 0 !important;
}

.password-toggle {
  min-width: 68px;
}

@media (max-width: 576px) {
  .auth-basic-wrapper {
    padding: 12px;
  }

  .card-body {
    padding: 1.5rem !important;
  }
}
