/* Shared readability pass. Keep these overrides after the shell and page styles. */
body {
  font-size: 15px;
  line-height: 1.5;
}

.brand-name { font-size: 14px; }
.brand-caption { font-size: 10px; }
.brand-mark { font-size: 11px; }
.nav-heading,
.context-field > span,
.asof,
.section-kicker { font-size: 11px; }
.primary-nav > a { font-size: 13px; }
.nav-index { font-size: 10px; }
.nav-foot p { font-size: 11px; }
.status-pill { font-size: 10px; }
.context-field select,
.context-field input { font-size: 13px; min-height: 30px; }
.asof time { font-size: 13px; }
.theme-toggle { font-size: 12px; }
.page-status { font-size: 12px; }
.app-footer { font-size: 11px; }
.page-heading h1 { font-size: 23px; }
.data-table { font-size: 12px; }
.data-table th { font-size: 11px; }
.data-table td { height: 36px; }

/* Market State */
.ms-page { font-size: 15px; }
.ms-page .ms-eyebrow,
.ms-page .ms-index { font-size: 11px; }
.ms-page .ms-toggle button { font-size: 14px; }
.ms-page .ms-asof { font-size: 13px; }
.ms-page .ms-provenance { font-size: 12px; }
.ms-page .ms-module h2 { font-size: 17px; }
.ms-page .ms-state { font-size: 11px; }
.ms-page .ms-module-value small { font-size: 12px; }
.ms-page .ms-module-copy,
.ms-page .ms-inline-facts span,
.ms-page .ms-levels span,
.ms-page .ms-structure-summary span { font-size: 12px; }
.ms-page .ms-inline-facts b,
.ms-page .ms-levels b,
.ms-page .ms-structure-summary b { font-size: 12px; }
.ms-page .ms-events-label { font-size: 11px; }
.ms-page .ms-events { font-size: 13px; }
.ms-page summary { font-size: 12px; }
.ms-page details p { font-size: 12px; }
.ms-page .ms-footer { font-size: 11px; }

/* Tables */
.tables-page { font-size: 15px; }
.tables-intro .eyebrow { font-size: 11px; }
.legacy-tally span { font-size: 13px; }
.legacy-tally small { font-size: 11px; }
.control-group { font-size: 12px; }
.control-group input,
.control-group select,
.tables-select { min-height: 38px; font-size: 13px; }
.export-placeholder { min-height: 38px; font-size: 12px; }
.table-subtitle { font-size: 12px; }
.fixture-tag { font-size: 10px; }
.table-status,
.table-footnote { font-size: 11px; }
.data-table th { font-size: 11px; }
.data-table td { font-size: 12px; }
.table-availability summary { font-size: 12px; }
.table-availability-list li { font-size: 11px; }

/* Pivot Monitor */
.pivot-monitor { font-size: 15px; }
.pivot-header .eyebrow { font-size: 11px; }
.pivot-lede { font-size: 13px; }
.source-note,
.pivot-monitor .shell-context { font-size: 12px; }
.matrix-control { font-size: 11px; }
.matrix-control select,
.matrix-control input { min-height: 34px; font-size: 12px; }
.matrix-status,
.matrix-legend { font-size: 11px; }
.pivot-matrix thead th { font-size: 10px; }
.pivot-matrix .row-heading { font-size: 12px; }
.pivot-matrix .matrix-value { font-size: 11px; }

/* Research */
.research-workspace { font-size: 15px; }
.research-eyebrow,
.research-kicker { font-size: 11px; }
.research-contract-tag { font-size: 12px; }
.research-method-alert h2 { font-size: 15px; }
.research-method-alert p { font-size: 13px; }
.research-filter-heading h2,
.research-panel-head h2 { font-size: 17px; }
.research-filter-note,
.research-filter-grid label,
.research-filter-status { font-size: 12px; }
.research-filter-grid input,
.research-filter-grid select,
.research-filter-grid button { min-height: 40px; font-size: 13px; }
.research-summary-card > span { font-size: 12px; }
.research-summary-card small { font-size: 11px; }
.research-unit { font-size: 11px; }
.research-panel-copy { font-size: 12px; }
.research-table-wrap table { font-size: 12px; }
.research-table-wrap caption { font-size: 11px; }
.research-table-wrap thead th { font-size: 10px; }
.research-table-wrap tbody th span,
.research-table-wrap td span,
.research-table-wrap small { font-size: 10px; }
.research-table-wrap tbody td strong { font-size: 13px; }
.research-footnote,
.research-cohort-fixed-note { font-size: 12px; }
.research-subpanel h3 { font-size: 13px; }
.research-transition-strip { font-size: 11px; }
.research-transition-strip strong { font-size: 12px; }
.research-spx-stats span { font-size: 11px; }
.research-spx-stats strong { font-size: 15px; }
.research-spx-result { font-size: 11px; }
.research-spx-result strong { font-size: 13px; }
.research-method-details summary { font-size: 13px; }
.research-method-details > div { font-size: 12px; }
.research-footer { font-size: 11px; }
.research-plot figcaption { font-size: 11px; }
.research-plot text { font-size: 12px; }
.research-plot .plot-tick,
.research-plot .plot-n { font-size: 11px; }
