/* Login and brand: scoped to preserve the application layout. */
.login-screen{background:radial-gradient(ellipse at 12% 12%,#dfd7fa,transparent 55%),radial-gradient(ellipse at 90% 90%,#d4eee9,transparent 48%),#f3f2f9;padding:32px;overflow:auto}
.login-card{width:min(980px,100%);min-height:580px;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e7e3f2;border-radius:28px;box-shadow:0 28px 90px #44336c20;backdrop-filter:none}
.login-brand{padding:44px;background:radial-gradient(ellipse at 0 100%,#605396,transparent 65%),#30294a;color:#fff;gap:48px}
.login-logo{color:#fff;font:800 28px Manrope,sans-serif;letter-spacing:-1px;gap:12px}.login-logo img{flex-shrink:0}.brand-flow{font-weight:500;color:#c6b8ff}
.login-eyebrow{font:700 10px 'DM Sans',sans-serif;letter-spacing:.15em;color:#7865bc}.login-brand .login-eyebrow{color:#c8bcf1}
.login-message h2{font:700 36px/1.22 Manrope,sans-serif;letter-spacing:-1px;margin:16px 0 20px}.login-brand .login-message p{font:400 14px/1.8 'DM Sans',sans-serif;color:#d5cee5;max-width:320px;margin:0}
.login-brand-footer{font-size:11px;color:#d5cee5;display:flex;align-items:center;gap:9px}.brand-dot{width:7px;height:7px;border-radius:50%;background:#7ce3cf;flex-shrink:0}
.login-form{padding:52px 46px;gap:20px}.login-intro h1{font:800 26px Manrope,sans-serif;color:#30294a;letter-spacing:-.6px;margin:10px 0}.login-intro p{color:#767084;font-size:13px;margin:0 0 8px}
.login-field label{display:block;font-size:12px;font-weight:700;color:#484154;margin-bottom:8px}.login-field input{width:100%;height:48px;border:1px solid #ddd8e8;border-radius:10px;background:#fcfbfe;font:14px 'DM Sans',sans-serif;padding:12px 14px}.login-password{position:relative}.login-password input{padding-right:80px}
.login-form .password-toggle{position:absolute;right:5px;top:5px;height:38px;padding:0 10px;background:transparent;box-shadow:none;color:#6954b7;font-size:11px;border-radius:7px}.login-form button:focus-visible{outline:3px solid #ac9ae9;outline-offset:3px}
.login-form .login-submit{height:48px;background:#7660d3;border-radius:10px;box-shadow:0 6px 16px #7660d329}.login-form .login-submit:hover{background:#634dbf}.login-form .login-submit:disabled{opacity:.65;cursor:wait}
.login-form .login-error{min-height:0;margin:0;font-size:12px;line-height:1.5;color:#b53150}.login-error:empty{display:none}.login-help{font-size:11px;line-height:1.7;text-align:center;color:#80798d;margin:0}
.brand .mark img{display:block;border-radius:12px}.brand .mark{background:transparent;transform:none}
@media(max-width:700px){.login-screen{padding:20px;align-items:start}.login-card{grid-template-columns:1fr;max-width:440px;min-height:0;margin:auto}.login-brand{padding:26px;min-height:0;gap:24px}.login-logo{font-size:24px}.login-message h2{font-size:26px;margin:10px 0 0}.login-brand .login-message p,.login-brand-footer{display:none}.login-form{padding:30px 26px;gap:18px}.login-intro h1{font-size:24px}}
@media(max-height:650px) and (min-width:701px){.login-screen{align-items:start}.login-card{margin:auto;min-height:520px}}
