:root {
  --type-xs: 11px;
  --type-sm: 13px;
  --type-body: 16px;
  --type-heading: 24px;
  --type-display: 56px;
}

body { font-size:var(--type-body); }
.workspace-switcher,.user-card small,.page-title small,.panel-header p,.panel-header a,.mini-list p small { font-size:var(--type-sm); }
.nav-label,.nav-count,.eyebrow,.chart-labels,.categorize { font-size:var(--type-sm); }
.user-card strong,.metric-heading,.task strong,.invoice-row strong,.activity-row strong,.mini-list p strong { font-size:var(--type-body); }
.date-picker,.quiet-button,.metric-card p,.insight-strip p,.insight-strip a,.task small,.invoice-row small,.activity-row small,.amount,.invoice-amount,.category-chip { font-size:var(--type-sm); }
.page-title span,.view-toolbar strong,.data-row,.data-row strong { font-size:var(--type-body); }
.insight-strip strong,.panel-header h2,.chart-summary strong,.report-card > span { font-size:var(--type-heading); }
.status,.data-head { font-size:var(--type-xs); }
.approved { font-size:var(--type-sm); }
.upload-zone p { font-size:var(--type-body); }
.welcome-row h1,.view-heading h1 { font-size:var(--type-heading); }

@media (max-width:720px) {
  .subtitle { font-size:var(--type-sm); }
  .welcome-row h1,.view-heading h1 { font-size:var(--type-heading); }

/* Landing-page font roles */
body,button,input,select,textarea { font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
h1,h2,h3,.brand,.nav-item,.page-title,.panel-header { font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.metric-card > strong,.report-card strong,.statement-line strong,.chart-summary strong,.amount,.invoice-amount,.payment-date,.trial-row span:nth-last-child(-n+2),#generalLedger .data-row > strong:nth-of-type(2),#transactionTable .data-row > strong:nth-of-type(2) { font-family:'DM Mono',monospace; font-variant-numeric:tabular-nums; }
.data-head,.eyebrow,.nav-label,.nav-count,.category-chip,.approved,.review-status,.status,.transaction-note,.meta-date,code { font-family:'DM Mono',monospace; font-variant-numeric:tabular-nums; }
.data-row > span:first-child { font-family:'DM Mono',monospace; font-variant-numeric:tabular-nums; }
.metric-card > strong,.report-card strong { font-weight:500; }
}