.login-page{min-height:100vh;display:grid;place-items:center;background:#f2f1f1}
.login-page .login-shell{width:min(940px,calc(100% - 40px));max-width:none;display:grid;grid-template-columns:1fr 1fr;padding:0;margin:40px auto;border-radius:16px;overflow:hidden;box-shadow:0 16px 60px #2d004c12;background:white}
.login-intro{padding:48px;background:#2d004c;color:white;display:flex;flex-direction:column;align-items:flex-start;min-height:480px}
.login-intro img{width:185px;background:white;padding:14px;border-radius:6px;margin-bottom:48px}.login-intro .eyebrow{color:#d09dff}.login-intro h1{font-size:38px;line-height:1.2;margin:12px 0 18px}.login-intro>p:not(.eyebrow){line-height:1.8;color:#e7cfff;font-size:14px}.login-version{margin-top:auto;padding-top:28px;font-size:12px;color:#e7cfff}
.login-card{padding:48px 40px}.login-card h2{font-size:26px;margin:12px 0 16px}.login-hint{font-size:13px;color:#806b6f;line-height:1.7;margin-bottom:28px}#login-form{display:grid;gap:20px}#login-form input{padding:12px}#login-form button{margin-top:4px;padding:13px}#login-status,.login-footnote{font-size:12px;line-height:1.7;color:#806b6f}.login-footnote{border-top:1px solid #e9e7e8;padding-top:18px;margin-top:24px}#login-error{font-size:12px;line-height:1.7;margin-top:18px}
@media(max-width:700px){.login-page .login-shell{grid-template-columns:1fr;margin:20px auto}.login-intro{min-height:0;padding:28px}.login-intro img{width:155px;margin-bottom:20px}.login-intro h1{font-size:30px}.login-intro h1 br{display:none}.login-intro>p:not(.eyebrow){margin:4px 0}.login-version{padding-top:16px}.login-card{padding:28px}}
.login-page{color:#2d004c;font-size:14px}
.login-intro h1{color:#fff;overflow-wrap:anywhere}
.login-card .eyebrow{color:#ff003e}
#login-form label{display:grid;gap:8px;margin:0;text-transform:none;letter-spacing:normal;color:#2d004c}
#login-form input{width:100%;margin:0;border-radius:8px}
#login-form button{background:#ff003e;border-radius:8px;color:#fff}
#login-form button:disabled{cursor:wait;opacity:.65}
#login-error{padding:12px;background:#fff0f4;border:1px solid #ffcfdf;border-radius:8px;color:#ac0023}
[hidden]{display:none!important}
