.login-page{padding:24px;background:radial-gradient(circle at 15% 12%,rgba(21,94,117,.12) 0,transparent 30%),radial-gradient(circle at 88% 85%,rgba(23,116,91,.08) 0,transparent 28%),var(--canvas)}
.login-card{position:relative;width:min(430px,100%);padding:38px 40px 28px;overflow:hidden}
.login-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--brand),#23826d)}
.login-heading{display:flex;align-items:center;gap:14px}.login-heading h1{margin:3px 0 0;font-size:25px;letter-spacing:-.025em}.login-heading .eyebrow{display:block;color:var(--brand);font-size:9px;font-weight:800;letter-spacing:.14em}
.login-intro{margin:20px 0 24px;color:var(--muted);font-size:13px;line-height:1.55}.login-card form{display:grid;gap:17px}.login-card label{margin:0;font-size:12px;font-weight:750}.login-card input{margin-top:7px;padding:12px 13px;border-radius:9px;transition:border-color .15s,box-shadow .15s}.login-card input::placeholder{color:#9ba7af}.login-card input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px rgba(21,94,117,.12)}
.login-card .btn{min-height:44px;margin-top:4px;border-radius:9px;transition:transform .15s,box-shadow .15s}.login-card .btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(21,94,117,.18)}.login-card .alert{margin:0 0 20px}.brand-mark{width:48px;height:48px;background:linear-gradient(145deg,var(--brand),#23826d);font-size:21px;box-shadow:0 7px 16px rgba(21,94,117,.2)}
.login-footer{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:25px;padding-top:19px;border-top:1px solid var(--line);color:#7b8790;font-size:10px}.login-footer span{color:var(--brand);font-size:13px}
@media(max-width:480px){.login-page{padding:16px}.login-card{padding:32px 24px 24px}.login-heading h1{font-size:22px}.login-intro{margin-bottom:21px}}
