:root { color-scheme: light; }

.login-page{
  min-height:100vh;
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(13,110,253,.18), transparent 60%),
    radial-gradient(900px 500px at 90% 20%, rgba(25,135,84,.14), transparent 55%),
    radial-gradient(900px 700px at 50% 110%, rgba(111,66,193,.12), transparent 55%),
    #0b1220;
}

.glass{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,.35);
}

.brand-badge{
  width:44px;height:44px;border-radius:14px;
  background: linear-gradient(135deg, rgba(13,110,253,.95), rgba(111,66,193,.95));
  display:grid;place-items:center;
  box-shadow: 0 10px 25px rgba(13,110,253,.25);
  flex: 0 0 auto;
}

.brand-badge svg{ filter: drop-shadow(0 6px 10px rgba(0,0,0,.25)); }
.muted{ color: rgba(255,255,255,.72) !important; }
.label{ color: rgba(255,255,255,.86); }

.form-control, .input-group-text{
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  color: #fff !important;
}

.form-control::placeholder{ color: rgba(255,255,255,.55); }
.form-control:focus{
  box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
  border-color: rgba(13,110,253,.55) !important;
}

.input-group-text{ color: rgba(255,255,255,.75) !important; }

.btn-primary{
  background: linear-gradient(135deg, #0d6efd, #6f42c1);
  border: 0;
  box-shadow: 0 12px 30px rgba(13,110,253,.18);
}
.btn-primary:hover{ filter: brightness(1.05); }

.link-light{ color: rgba(255,255,255,.8) !important; }
.link-light:hover{ color: #fff !important; }

.small-hint{ color: rgba(255,255,255,.60); font-size: .9rem; }

.divider{
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
}