/* Single-column layout for sign-in, reset, invitation and error pages for guests. */
.auth-page {
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-rows: auto 1fr auto;
  justify-items: center;
  padding: var(--space-6) var(--space-4);
  background: var(--bg);
}
.auth-logo { margin-bottom: var(--space-2); }
.auth-main { width: 100%; max-width: 420px; align-self: center; padding-block: var(--space-6); }
.auth-card {
  display: grid;
  gap: var(--space-6);
  padding: var(--space-6);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}
.auth-wide { max-width: 560px; }
.auth-head { display: grid; gap: var(--space-2); }
.auth-head p { color: var(--text-muted); }
.auth-form { display: grid; gap: var(--space-4); }
.auth-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2) var(--space-4); }
.auth-links a { display: inline-flex; align-items: center; min-height: var(--touch); }
.auth-foot { color: var(--text-muted); font-size: var(--text-xs); text-align: center; }
.auth-meta { padding: var(--space-3) var(--space-4); background: var(--gray-50); border: 1px solid var(--border); border-radius: var(--radius-md); display: grid; gap: var(--space-1); }
@media (min-width: 480px) { .auth-card { padding: var(--space-8); } }
