:root { color-scheme: light dark; }
.auth-page { margin: 0; padding: 28px; min-height: 90vh; display: grid; place-items: center; background: #f6f4ef; color: #252a25; font: 16px/1.5 system-ui, sans-serif; }
.auth-page main { box-sizing: border-box; width: min(100%, 430px); padding: 32px; background: #fff; border: 1px solid #d8dcd5; border-radius: 16px; box-shadow: 0 16px 55px #1425190a; }
.auth-page .eyebrow { font-size: 11px; letter-spacing: .12em; color: #64705f; }
.auth-page h1 { font-size: 27px; line-height: 1.2; margin: 20px 0 14px; }
.auth-page p { color: #64705f; }
.auth-page form { display: grid; gap: 8px; margin: 24px 0; }
.auth-page label { margin-top: 10px; font-size: 14px; font-weight: 600; }
.auth-page input, .auth-page button { box-sizing: border-box; width: 100%; border: 1px solid #b4beb0; border-radius: 7px; padding: 12px; font: inherit; }
.auth-page input { background: #fff; color: #252a25; }
.auth-page input[readonly] { background: #f5f6f3; color: #64705f; }
.auth-page button { margin-top: 16px; color: #fff; background: #28593b; border-color: #28593b; cursor: pointer; }
.auth-page button:disabled { opacity: .5; cursor: default; }
.auth-page :focus-visible { outline: 3px solid #81ac87; outline-offset: 3px; }
.auth-page .error { color: #a12e24; }
.auth-page a { color: inherit; }
.auth-page #setup-help { font-size: 13px; }
.admin-account { position: fixed; bottom: 12px; right: 14px; z-index: 100; padding: 7px 12px; border-radius: 20px; border: 1px solid #b4beb0; background: #fff; color: #28593b; box-shadow: 0 2px 10px #14251912; font: 12px/1.4 system-ui,sans-serif; text-decoration: none; }
@media (prefers-color-scheme: dark) {
 .auth-page { background: #171b18; color: #edf0e9; }
 .auth-page main, .auth-page input, .admin-account { background: #202722; color: #edf0e9; border-color: #475448; }
 .auth-page p, .auth-page .eyebrow { color: #a9b5a6; }
 .auth-page input[readonly] { background: #29322b; color: #b9c4b7; }
 .auth-page .error { color: #f1a79b; }
}
@media (max-width: 480px) { .auth-page { padding: 16px; } .auth-page main { padding: 24px; } }
