/* Shared site/admin login composition; existing auth and CAPTCHA stay native. */
body.login { min-height: 100vh; background: radial-gradient(ellipse at 50% 0, var(--mf-surface-accent), transparent 65%), var(--mf-bg); }
body.login #container { width: min(31rem, calc(100% - 2rem)); margin: 5vh auto; border-radius: 20px; border: 1px solid var(--mf-line); box-shadow: 0 20px 55px #111a2e12; }
body.login #header { padding: 1.4rem; border-radius: 20px 20px 0 0; }
body.login #content { padding: 2rem; }
.mf-login-panel h1 { font-size: 1.9rem; line-height: 1.2; font-weight: 750; margin: .5rem 0 .8rem; color: var(--mf-ink); }
.mf-login-eyebrow { margin: 0; color: var(--mf-primary); font-size: .85rem; font-weight: 700; }
.mf-login-intro, .mf-login-footnote { color: var(--mf-ink-muted); line-height: 1.6; }
.mf-login-intro { margin-bottom: 1.8rem; }
.mf-login-footnote { margin: 1.5rem 0 0; font-size: .85rem; }
body.login .form-row { padding: 0; margin: 0 0 1.2rem; border: 0; }
body.login .form-row label { display: block; padding: 0; margin-bottom: .5rem; font-size: 1rem; font-weight: 600; }
body.login #login-form input:not([type=hidden]):not([type=submit]), body.login #login-form select { box-sizing: border-box; width: 100%; min-height: 48px; padding: .75rem; background: var(--mf-surface); color: var(--mf-ink); border: 1px solid var(--mf-line-strong); border-radius: 10px; font: inherit; }
body.login #login-form .submit-row { padding: 0; margin: 1.5rem 0 0; border: 0; background: transparent; box-shadow: none; }
body.login #login-form .submit-row input { width: 100%; min-height: 48px; font-size: 1rem; font-weight: 700; border-radius: 10px; }
body.login #login-form :focus-visible { outline: 3px solid var(--mf-primary); outline-offset: 3px; }
.login-shell .form-panel { background: var(--auth-surface, #fff); color: var(--auth-ink, #172033); }
.login-shell .form-row input, .login-shell .form-row select { background: var(--auth-surface, #fff); color: var(--auth-ink, #172033); border-color: var(--auth-border, #b8c4d3); }
.login-shell .intro, .login-shell .access-note { color: var(--auth-muted, #637083); }
@media (prefers-color-scheme: dark) {
 .login-shell { --auth-surface: #172033; --auth-ink: #eef3f9; --auth-muted: #bdc9d8; --auth-border: #586a85; border-color: #35445c; }
 body:not(.login) { background: #0c1423; }
 .login-shell .eyebrow { color: #92b5ff; }
 .login-shell .submit-button { background: #92b5ff; color: #111a2e; }
 .login-shell .submit-button:hover { background: #b3cbff; }
 .login-shell .captcha-retry { background: #172033; color: #eef3f9; border-color: #586a85; }
}
@media (max-width: 600px) { body.login #content { padding: 1.5rem 1rem; } body.login #container { margin: 1rem auto; } body.login .form-row label { font-size: 1rem; } }
