/* components.css — shared page furniture.
 *
 * Loaded by theme.css, so it lands BEFORE every page stylesheet: a page can
 * still override anything here by declaring it locally.
 *
 * The bar for putting something in this file is that every page using the
 * class agrees on it. Where pages genuinely disagree, the property stays in
 * the page stylesheet rather than being averaged into a value nobody chose:
 *   - .page-header layout mode — earnings/earnings-live/macro/institutions
 *     lay it out with flex, leaderboard/squeeze stack it as a block. Forcing
 *     flex would put their h1 and subtitle on one row.
 *   - .section — portfolio/settings use it as a bordered card, macro/squeeze
 *     as a full-width band with a bottom rule. Two components sharing a name,
 *     not one component with drift; unify the names before the styles.
 */

/* ── Page header ──
 * One definition replacing six near-copies whose padding ranged 10-24px and
 * whose h1 ranged 1.05-1.5rem. Two pages had hardcoded h1 colors (#e5e7eb,
 * #f8d4d4) that ignored the theme; they use the token now.
 */
.page-header {
  padding: var(--space-6);
  border-bottom: 1px solid var(--border);
}

.page-header h1 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-strong);
  letter-spacing: 0.04em;
}

.page-header .subtitle {
  font-size: 0.78rem;
  color: var(--muted);
  letter-spacing: 0.03em;
}
