

/* Auth page shell — narrow centered column. No card. No background
   fill. No border. The form sits directly on the page background. */

.auth-shell {
  /* Match --container-form (640px) AND the canonical horizontal
     gutter (--space-8) used by /purchase and every other shell in
     app/shared/styles/global.css. Top padding is 0 — PageChrome's
     page-chrome-main already provides the canonical --space-16 top
     band, so any extra here just makes /signin and /signup sit
     lower than every other page. */
  max-width: var(--container-form);
  margin: 0 auto;
  padding: 0 var(--space-8) 5rem;
  width: 100%;
}

/* H1 + subtitle. The .auth-title font-size + weight + letter-spacing
   are forced by the canonical page-h1 rule in app/shared/styles/global.css
   so /signin and /signup share the same H1 scale as /install,
   /pricing, /home, etc. — owned in one place, no per-page drift. */
.auth-shell-head {
  margin-bottom: 2rem;
}

.auth-subtitle {
  font-family: var(--font-sans);
  font-size: 0.9375rem;
  color: var(--ink-soft);
  line-height: 1.5;
  margin: 0;
}
.auth-subtitle a {
  color: var(--accent);
  font-weight: var(--font-medium);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.auth-subtitle a:hover { color: var(--accent-deep); }

@media (max-width: 700px) {
  .auth-shell { padding: 0.5rem 1.5rem 3rem; }
}
