/* ============================================================================
   pages/auth.css — register / login / forgot / reset / terms / dashboard
   (phase 5). Page layer only: layout + spacing. All values from tokens.css.
   ============================================================================ */

.auth-card {
  max-inline-size: 480px;
  margin-inline: auto;
  margin-block: var(--space-8) var(--space-16);
}

.auth-title { margin-block-end: var(--space-1); }
.auth-sub   { margin-block-end: var(--space-6); }
.auth-alert { margin-block-end: var(--space-5); }

/* Goal checkboxes: two columns, stacking on narrow screens */
.auth-goals {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-2) var(--space-4);
}
@media (max-width: 420px) {
  .auth-goals { grid-template-columns: 1fr; }
}

/* Proof-of-work note (hidden by pow.js once the nonce is found) */
.auth-pow {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin-block-start: var(--space-4);
}
.auth-pow .icon { color: var(--icon-accent); }

.auth-forgot {
  margin-block-start: var(--space-3);
  font-size: var(--fs-body-sm);
  line-height: var(--lh-body-sm);
}

.auth-actions { margin-block-start: var(--space-5); }
.auth-actions .btn { inline-size: 100%; }

.auth-alt {
  margin-block-start: var(--space-5);
  padding-block-start: var(--space-4);
  border-block-start: 1px solid var(--border);
  text-align: center;
  color: var(--ink-2);
}

/* ---- Student dashboard (initial empty state) ------------------------------ */

.dash {
  max-inline-size: 780px;
  margin-inline: auto;
  margin-block: var(--space-8) var(--space-16);
}
.dash-title { margin-block-end: var(--space-5); }

/* ---- Legal (terms) --------------------------------------------------------- */

.legal {
  margin-inline: auto;
  margin-block: var(--space-8) var(--space-16);
}
.legal > h1 { margin-block-end: var(--space-1); }
.legal > .text-body-lg { margin-block-start: var(--space-5); }
.legal section { margin-block-start: var(--space-6); }
.legal section h2 { margin-block-end: var(--space-2); }
