@charset "UTF-8";
.login-page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--paper)}
.login-page .site-header{position:relative;flex-shrink:0;background:#fffffff2}
.login-header-label{font-size:9px;font-weight:650;letter-spacing:1.9px;color:var(--muted)}
.login-main{flex:1;display:grid;place-items:center;padding:46px 22px 34px}
.login-card{width:100%;max-width:438px;padding:36px 36px 0;border:1px solid #c5dcf2;border-radius:20px;background:#fff;box-shadow:0 18px 55px #1e40af13,0 3px 12px #1e40af05;overflow:hidden}
.login-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d1e4fa;border-radius:13px;background:#eff6ff;color:var(--accent);margin-bottom:27px}
.login-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.login-card .eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:12px}
.login-card h1{font-size:34px;font-weight:600;letter-spacing:-1.2px;line-height:1.2;margin:0 0 13px}
.login-description{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 30px}
.login-form{margin:0}
.login-form label{display:block;font-size:12px;font-weight:600;color:var(--ink);margin-bottom:9px}
.login-form>input[type=password]{display:block;width:100%;height:48px;border:1px solid #cbddeb;border-radius:10px;background:#f8fbff;color:var(--ink);font-size:14px;padding:0 14px;outline-offset:2px;transition:border-color .18s,box-shadow .18s}
.login-form>input[type=password]::placeholder{color:#94a3b8}
.login-form>input[type=password]:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe;outline:none}
.login-form>input[aria-invalid=true]{border-color:#e1a2a2;background:#fffafa}
.login-submit{display:flex;width:100%;height:48px;align-items:center;justify-content:space-between;border:0;border-radius:10px;padding:0 17px;margin-top:20px;color:#fff;background:var(--accent);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 9px #2563eb15;transition:background .18s,transform .18s}
.login-submit span{font-size:19px;font-weight:400}.login-submit:hover{background:#1d4ed8;transform:translateY(-1px)}.login-submit:active{transform:translateY(0)}
.login-error{font-size:12px;line-height:1.7;color:#9a3434;background:#fff4f3;border:1px solid #f0d1ce;border-radius:9px;padding:11px 13px;margin:-7px 0 23px}
.login-card-footer{display:flex;align-items:center;gap:7px;border-top:1px solid #e4edf7;padding:18px 0;margin-top:30px;color:#7c91aa;font-size:10px;letter-spacing:.2px}
.login-dot{width:5px;height:5px;border-radius:50%;background:#76a5e0}.login-footer{flex-shrink:0;text-align:center;color:#7c91aa;font-size:10px;letter-spacing:.5px;padding:16px 20px 25px}.login-footer>span{padding:0 7px;color:#a4bdd8}
@media(max-width:480px){.login-header-label{font-size:8px;letter-spacing:1.1px}.login-main{padding:28px 18px 22px}.login-card{padding:28px 25px 0;border-radius:16px}.login-icon{margin-bottom:24px}.login-card h1{font-size:31px}.login-description{font-size:12px;margin-bottom:26px}.login-card-footer{margin-top:26px}.login-footer{padding-bottom:22px}}
@media(prefers-reduced-motion:reduce){.login-submit,.login-form>input[type=password]{transition:none}.login-submit:hover{transform:none}}
