/* Scope authentication styles so workspace forms keep their existing layout. */
body.signed-out{background:#f3f6f4;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
body.signed-out.login-page{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:40px 20px}
.signed-out main{box-sizing:border-box;min-height:100vh;min-height:100dvh;padding:40px 20px;display:grid;place-items:center}
.signed-out #login,.signed-out #login.login-shell{box-sizing:border-box;width:min(100%,420px);max-width:420px;margin:0;padding:32px;border:1px solid #dfe7e2;border-radius:16px;background:#fff;box-shadow:0 16px 48px #173d390a;color:#173936}
.signed-out #login .eyebrow{margin:0 0 10px;color:#60766d;font-size:11px;letter-spacing:.18em;line-height:1.5}
.signed-out #login h1{margin:0;font-family:inherit;font-size:28px;font-weight:650;letter-spacing:0;line-height:1.4}
.signed-out #login .login-intro{margin:8px 0 0;color:#61746b;font-size:14px;line-height:1.6}
.signed-out #login form{max-width:none;margin:24px 0 0}
.signed-out #login label{display:grid;gap:8px;margin:0 0 18px;font-size:14px;line-height:1.5;font-weight:500}
.signed-out #login input:not([type="checkbox"]):not([type="hidden"]){box-sizing:border-box;width:100%;height:44px;padding:10px 12px;border:1px solid #cddad3;border-radius:8px;background:#fff;color:#173936;font-family:inherit;font-size:16px;line-height:1.5}
.signed-out #login input:focus-visible,.signed-out #login button:focus-visible{outline:2px solid #16776d;outline-offset:3px}
.signed-out #login #loginForm .remember-device{display:flex;align-items:center;gap:8px;min-height:32px;margin:0 0 4px;cursor:pointer;font-size:14px;font-weight:400}
#loginForm .remember-device input{box-sizing:border-box;width:16px;height:16px;padding:0;margin:0;flex:0 0 16px;accent-color:#0d6b63}
.signed-out #login #loginForm .remember-help{margin:0 0 20px;color:#61746b;font-size:12px;line-height:1.6}
.signed-out #login button.primary{width:100%;height:44px;margin:0;padding:10px 14px;border-radius:8px;border:1px solid #0d6b63;background:#0d6b63;color:#fff;font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;transition:background-color .15s}
.signed-out #login button.primary:hover{background:#095a53}
.signed-out #login button.primary:disabled{opacity:.65;cursor:wait}
.signed-out #login #showRegister{display:block;margin:16px auto 0;padding:6px 8px;border:0;background:transparent;color:#0d6b63;font-size:13px;line-height:1.5}
.signed-out #login>.quiet,.signed-out #login>.muted{margin:20px 0 0;padding-top:16px;border-top:1px solid #e7ede9;color:#61746b;font-size:12px;line-height:1.6}
.signed-out #login #notice:not(:empty),.signed-out #login #loginError:not(:empty){position:static;width:auto;max-width:none;min-height:0;margin:0 0 18px;padding:10px 12px;border:1px solid #edc9c5;border-radius:8px;background:#fff4f2;color:#a4433b;font-size:13px;line-height:1.6;transform:none;backdrop-filter:none;box-shadow:none;overflow-wrap:anywhere}
.signed-out #login #loginError:empty{display:none}
.signed-out #login .login-mark{width:44px;height:44px;margin-bottom:18px;border-radius:12px;background:#173936;font-size:20px}
.signed-out #login #registerForm h2{margin:0 0 18px;font-size:20px;font-weight:600}
.signed-out #login #registerForm .quiet{color:#61746b;font-size:12px;line-height:1.6}
.signed-out #login #backLogin{display:block;margin:12px auto 0;font-size:13px}
@media(max-width:480px){.signed-out main{padding:24px 16px}.signed-out #login,.signed-out #login.login-shell{width:calc(100% - 32px);margin:24px auto;padding:24px}.signed-out main #login{width:100%;margin:0}.signed-out #login h1{font-size:26px}.signed-out #login #loginForm .remember-device{min-height:44px}}
@media(prefers-reduced-motion:reduce){.signed-out #login button.primary{transition:none}}
