/* Presentation only: authentication form IDs and handlers remain unchanged. */
body #loginPanel:not(.hidden) { display:grid; grid-template-columns:minmax(340px,1fr) minmax(440px,1fr); align-items:center; justify-items:center; gap:0; padding:0; overflow-y:auto; background:#f4f4f7; color:#25252b; }
#loginPanel .auth-brand { align-self:stretch; width:100%; min-height:100vh; box-sizing:border-box; padding:clamp(32px,5vw,80px); display:flex; flex-direction:column; justify-content:space-between; background:#232329; color:#fff; }
#loginPanel .auth-wordmark { font-size:28px; font-weight:700; letter-spacing:.02em; }
#loginPanel .auth-brand-copy { padding:64px 0; }
#loginPanel .auth-brand-copy h2 { color:#fff; font-size:clamp(32px,3.5vw,56px); line-height:1.35; margin:20px 0 28px; }
#loginPanel .auth-brand-copy p { color:#c7c4db; font-size:16px; line-height:1.9; margin:0; }
#loginPanel .auth-brand-footer { color:#a8a5ba; font-size:13px; }
body #loginPanel .login-card { box-sizing:border-box; width:min(440px,calc(100% - 64px)); margin:40px 0; padding:32px; gap:20px; background:#fff; border:1px solid #e2e2e8; border-radius:16px; box-shadow:0 12px 40px #2323290d; }
#loginPanel .auth-form-heading p { color:#777580; font-size:14px; margin:0 0 8px; }
#loginPanel .auth-form-heading h1 { color:#25252b; font-size:28px; line-height:1.4; margin:0 0 10px; }
body #loginPanel .login-card label { color:#55535f; font-size:14px; gap:8px; }
body #loginPanel .login-card input:not([type=radio]):not([type=checkbox]) { box-sizing:border-box; width:100%; min-height:44px; border:1px solid #dcdbe4; border-radius:8px; background:#fafafd; color:#25252b; }
body #loginPanel .login-card input:focus { border-color:#6150c7; outline:3px solid #6150c71c; }
body #loginPanel .login-card button:not(.password-toggle) { min-height:44px; border-radius:8px; background:#6150c7; color:white; box-shadow:none; }
body #loginPanel .login-card button:hover:not(:disabled):not(.password-toggle) { background:#5040ad; }
body #loginPanel .login-card button:active:not(:disabled) { transform:translateY(1px); }
body #loginPanel .login-card button:focus-visible { outline:2px solid #6150c7; outline-offset:3px; }
body #loginPanel .login-card button.text-button:not(.password-toggle) { background:transparent; color:#6150c7; }
body #loginPanel .login-card button.text-button:hover:not(:disabled):not(.password-toggle) { background:#efedf8; }
#loginPanel .login-status:empty { display:none; }
#loginPanel .login-status { margin:0; color:#b42332; line-height:1.6; }
body #loginPanel .register-method-tabs { background:#f1eff8; }
#loginPanel .register-method-tabs input { accent-color:#6150c7; }
#loginPanel #totpCodeWrapper { padding:16px; background:#f1eff8; border-radius:10px; }
@media(max-width:800px) {
 body #loginPanel:not(.hidden) { grid-template-columns:1fr; align-content:start; }
 #loginPanel .auth-brand { min-height:0; padding:24px 28px; }
 #loginPanel .auth-wordmark { font-size:24px; }
 #loginPanel .auth-brand-copy, #loginPanel .auth-brand-footer { display:none; }
 body #loginPanel .login-card { width:min(440px,calc(100% - 32px)); margin:24px 0; padding:24px; }
}
