/* Sign-in and password pages (views from WP00), on the shared tokens in tokens.css. */
body:has(.auth) {
  margin: 0; min-height: 100vh; display: grid; grid-template-rows: 1fr auto;
  background: var(--bg); color: var(--ink); font: 15px/1.55 var(--f-body);
}
.auth { box-sizing: border-box; width: min(100%, 26rem); margin: 10vh auto 2rem; padding: 0 16px; display: grid; gap: 1rem; align-content: start; }
.auth .auth-mark { font-size: 1.35rem; justify-self: start; margin-bottom: .6rem; }
.auth h1 { margin: 0; font-family: var(--f-display); font-weight: 800; font-size: 1.9rem; letter-spacing: -.02em; }
.auth .brand { margin: 0; color: var(--muted); font-size: .9rem; }
.auth form { display: grid; gap: .7rem; background: var(--surface); border: 1px solid var(--rule); border-radius: 12px; padding: 1.1rem; box-shadow: 0 18px 40px -28px var(--shadow); }
.auth label { display: grid; gap: .25rem; font-size: .86rem; color: var(--muted); }
.auth input[type=email], .auth input[type=password] { font: inherit; font-size: .95rem; color: var(--ink); background: var(--surface); border: 1px solid var(--rule); border-radius: 8px; padding: .5rem .65rem; }
.auth input[type=submit] { font: inherit; font-weight: 600; background: var(--accent); color: var(--on-accent); border: 0; border-radius: 7px; padding: .5rem .9rem; cursor: pointer; }
.auth .alert { margin: 0; color: var(--bad); }
.auth .notice { margin: 0; color: var(--good); }
.auth a { color: var(--accent); }
.auth :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.auth .auth-lede { margin: 0; color: var(--muted); }
.auth .auth-points { margin: 0; padding-left: 1.1rem; display: grid; gap: .35rem; color: var(--muted); font-size: .9rem; }
.auth .auth-alt { margin: 0; font-size: .9rem; color: var(--muted); }
.auth .mono { font-family: var(--f-mono); font-size: .85em; }
