/* Login page custom styles */
:root{
  --brand:#0d6efd;
}

body.login-page{
  min-height:100vh;
  background: radial-gradient(1200px circle at 10% 10%, rgba(13,110,253,.15), transparent 45%),
              radial-gradient(900px circle at 90% 20%, rgba(13,110,253,.10), transparent 40%),
              #f8fafc;
}

.login-card{
  border:0;
  border-radius:1rem;
  box-shadow:0 10px 30px rgba(13,110,253,.12);
  overflow:hidden;
}

.login-card .card-body{
  padding: 1.5rem;
}

.login-badge{
  width: 54px;
  height: 54px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius: 16px;
  background: rgba(13,110,253,.12);
  color: var(--brand);
  font-weight: 700;
  letter-spacing:.5px;
}

.form-control:focus{
  box-shadow: 0 0 0 .2rem rgba(13,110,253,.18);
  border-color: rgba(13,110,253,.7);
}

.btn-primary{
  background: linear-gradient(180deg, #1a7cff 0%, #0d6efd 100%);
  border-color:#0d6efd;
}

.small.error{
  display:block;
  color:#dc3545;
}

@media (min-width: 576px){
  .login-card .card-body{ padding: 1.75rem; }
}

