.login-body{min-height:100vh;display:grid;grid-template-columns:minmax(380px,48%) 1fr;background:#0b0e14;color:#edf3fa}.login-shell{width:min(440px,100%);padding:60px 30px;margin:auto;position:relative;z-index:1}.login-brand{display:flex;gap:13px;align-items:center;margin-bottom:65px}.login-brand img{width:43px;height:43px}.login-brand>span{font-size:25px;font-weight:800;letter-spacing:-.7px}.login-brand small{display:block;font-size:11px;color:#8c9fb6;font-weight:400;letter-spacing:0;margin-top:3px}.login-eyebrow{font-size:10px;letter-spacing:2px;color:#66d4ba;margin-bottom:18px}.login-shell h1{font-size:32px;line-height:1.2;letter-spacing:-1px;margin-bottom:12px}.login-shell>p{font-size:13px;color:#a4b3c7;line-height:1.7;margin-bottom:25px}.login-shell form{display:grid;gap:20px;margin-top:25px}.login-shell label{display:grid;gap:9px;font-size:12px;color:#bdcadd}.login-shell input{width:100%;height:48px;padding:12px 14px;border-radius:7px;background:#131c27;border:1px solid #304156;color:#f1f6fa;font-size:14px}.login-shell .button{width:100%;min-height:46px;justify-content:center;margin-top:7px}.login-shell footer{color:#75889f;font-size:11px;line-height:1.8;margin-top:35px;border-top:1px solid #253244;padding-top:22px}.login-art{position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 40%,#1c514845,#10262d70 48%,#0e1521 80%);border-left:1px solid #20313e}.login-orbit{position:absolute;width:510px;height:510px;border:1px solid #509d8b33;border-radius:50%;top:10%;left:10%;transform:rotate(-25deg) scaleX(.65)}.login-orbit.two{transform:rotate(30deg) scaleX(.65);border-color:#5bdabf42}.login-art-label{position:absolute;bottom:18%;left:13%;font-size:36px;color:#abbecb;line-height:1.4;letter-spacing:-1px}.login-art-label strong{color:#eaf6f2}.login-art-label span{display:block;font-size:11px;color:#6a9c93;letter-spacing:1px;margin-top:25px}#login-error{color:#ff9aa3;font-size:12px;line-height:1.7;min-height:20px;margin:17px 0}.mfa-key{display:block;background:#17332f;border:1px solid #3e7063;color:#8fe9d2;padding:15px;border-radius:6px;font-size:16px;word-break:break-all;user-select:all;letter-spacing:1px}.login-hint{font-size:12px;color:#9fb3c9;line-height:1.8;margin:15px 0}.recovery-list{font-family:monospace;font-size:13px;background:#14252b;padding:20px;line-height:1.9;border:1px solid #3c6158;border-radius:8px;white-space:pre-wrap;user-select:all}#cfo-session-status{gap:12px;display:flex;align-items:center}#cfo-session-status .button{font-size:10px;min-height:23px;padding:3px 8px}@media(max-width:760px){.login-body{display:block}.login-art{display:none}.login-shell{padding:35px 24px}.login-brand{margin-bottom:50px}.login-shell h1{font-size:29px}}@media(prefers-reduced-motion:no-preference){.login-shell{animation:login-in .35s ease-out}@keyframes login-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}}
.mfa-qr{box-sizing:border-box;width:min(100%,288px);padding:12px;margin:10px auto 18px;background:#fff;border:1px solid #d8e0e6;border-radius:10px}.mfa-qr svg{display:block;width:100%;height:auto;max-width:264px;margin:auto}.mfa-qr .login-hint{color:#27364b;margin:0}.mfa-manual{margin:0 0 18px;color:#a2c1ca;font-size:12px;line-height:1.7}.mfa-manual summary{cursor:pointer;padding:7px 0}.mfa-manual .mfa-key{margin-top:8px;font-size:13px;letter-spacing:.6px}.login-body:has(#setup-form) .login-brand{margin-bottom:30px}.login-body:has(#setup-form) .login-shell{padding-top:32px;padding-bottom:32px}
