.account-tools { display:flex; align-items:center; gap:10px; font-size:13px; }
.account-tools form { margin:0; }
.account-tools button { padding:7px 12px; border:1px solid var(--line); border-radius:4px; color:var(--ink); background:var(--surface); font-size:13px; }
.login-page { min-height:100dvh; display:grid; place-items:center; padding:28px; border-top:4px solid var(--rule); }
.login-card { width:100%; max-width:470px; }
.login-card h1 { font-size:36px; }
.login-card label { display:block; margin:20px 0 6px; font-size:16px; font-weight:650; }
.login-card input { width:100%; padding:12px; border:1px solid var(--line); border-radius:4px; background:var(--surface); color:var(--ink); font:inherit; }
.login-card input:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
.login-card button { margin:25px 0 20px; width:100%; padding:12px; border:0; border-radius:4px; background:var(--accent); color:white; font-weight:650; }
.login-note { color:var(--muted); font-size:14px; }
.login-error { padding:14px; border-left:4px solid #ae2929; background:var(--tint); font-size:16px; }
@media (max-width:1100px) { .masthead-tools { flex-wrap:wrap; justify-content:flex-end; } }
@media (max-width:700px) { .account-tools { margin-right:auto; font-size:11px; } .account-tools button { font-size:11px; padding:4px 8px; } }
@media print { .account-tools { display:none; } }
