/* Two families only. Sans for prose and names; mono for every number, label,
   ticker, control and eyebrow. If it is data, it is mono. */
:root{
  --font-sans:'Plex Sans',ui-sans-serif,system-ui,sans-serif;
  --font-mono:'Plex Mono',ui-monospace,SFMono-Regular,monospace;

  /* size scale — the literal sizes used across the product, not a rounded ramp */
  --text-9:9.5px;
  --text-10:10.5px;
  --text-11:11px;
  --text-11-5:11.5px;
  --text-12:12px;
  --text-12-5:12.5px;
  --text-13:13px;
  --text-13-5:13.5px;
  --text-14:14px;   /* body default */
  --text-15:15px;   /* panel heading */
  --text-16:16px;   /* stat value */
  --text-17:17px;
  --text-20:20px;   /* token name, swap input, leverage readout */
  --text-30:30px;   /* hero price */

  --weight-regular:400;
  --weight-semibold:600;
  --weight-bold:700;

  --leading-tight:1.2;
  --leading-body:1.5;

  --tracking-tight:-.01em;
  --tracking-label:.04em;
  --tracking-eyebrow:.06em;
  --tracking-caps:.08em;

  /* composed roles */
  --type-body:var(--weight-regular) var(--text-14)/var(--leading-body) var(--font-sans);
  --type-panel-title:var(--weight-semibold) var(--text-15)/var(--leading-tight) var(--font-sans);
  --type-numeric:var(--weight-semibold) var(--text-16)/var(--leading-tight) var(--font-mono);
  --type-price:var(--weight-semibold) var(--text-30)/var(--leading-tight) var(--font-mono);
  --type-eyebrow:var(--weight-regular) var(--text-11)/var(--leading-body) var(--font-mono);
  --type-control:var(--weight-semibold) var(--text-12)/1 var(--font-mono);
}
