  /* ========== Mast Futures — design tokens ========== */
  :root {
    --mf-bg: #fafaf7;
    --mf-surface: #ffffff;
    --mf-surface-2: #f3f2ee;
    --mf-line: rgba(15,15,15,0.10);
    --mf-line-strong: rgba(15,15,15,0.22);
    --mf-text: #0c0c0a;
    --mf-text-muted: rgba(12,12,10,0.62);
    --mf-text-dim: rgba(12,12,10,0.40);

    --mf-pos: #15803d;
    --mf-neg: #b91c1c;
    --mf-pos-soft: rgba(21,128,61,0.10);
    --mf-neg-soft: rgba(185,28,28,0.10);

    --mf-accent: #ec4899;
    --mf-accent-ink: #fff;

    --mf-c1: #15803d;
    --mf-c2: #b45309;
    --mf-c3: #1d4ed8;
    --mf-c4: #7e22ce;
    --mf-c5: #be185d;
    --mf-c6: #0e7490;
    --mf-c7: #b91c1c;

    --mf-font-sans: 'Geist', ui-sans-serif, system-ui, sans-serif;
    --mf-font-display: 'Geist', ui-sans-serif, system-ui, sans-serif;
    --mf-font-mono: 'Geist Mono', ui-monospace, monospace;
    --mf-font-serif: 'Newsreader', Georgia, serif;

    --mf-pad-card: 18px;
    --mf-pad-card-y: 16px;
    --mf-gap-stack: 28px;
    --mf-gap-grid: 12px;
    --mf-radius: 6px;
    --mf-radius-sm: 4px;
  }

  * { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; background: var(--mf-bg); color: var(--mf-text); font-family: var(--mf-font-sans); font-feature-settings: "ss01", "cv11"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

  /* primitives */
  .mf-mono { font-family: var(--mf-font-mono); }
  .mf-display { font-family: var(--mf-font-display); }
  .mf-serif { font-family: var(--mf-font-serif); }
  .mf-eyebrow { font-family: var(--mf-font-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mf-text-muted); }
  .mf-label { font-family: var(--mf-font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mf-text-muted); }
  .mf-num { font-family: var(--mf-font-mono); font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }
  .mf-pos { color: var(--mf-pos); }
  .mf-neg { color: var(--mf-neg); }
  .mf-muted { color: var(--mf-text-muted); }
  .mf-dim { color: var(--mf-text-dim); }
  .mf-card { background: var(--mf-surface); border: 1px solid var(--mf-line); border-radius: var(--mf-radius); padding: var(--mf-pad-card-y) var(--mf-pad-card); }
  .mf-chip { display: inline-flex; align-items: center; gap: 6px; font-family: var(--mf-font-mono); font-size: 10.5px; padding: 3px 7px; border-radius: 4px; background: var(--mf-surface-2); color: var(--mf-text-muted); border: 1px solid var(--mf-line); }
  .mf-arr::after { content: "→"; margin-left: 8px; font-family: var(--mf-font-mono); }
  .mf-spark { display: block; width: 100%; height: 36px; }

  /* page layout */
  .mf-page { max-width: 1100px; margin: 0 auto; padding: 40px 56px; display: flex; flex-direction: column; gap: var(--mf-gap-stack); }
  @media (max-width: 720px) { .mf-page { padding: 24px 20px; } }

  /* nav */
  .mf-nav { display: flex; align-items: center; justify-content: space-between; padding: 4px 0 20px; border-bottom: 1px solid var(--mf-line); }
  .mf-nav-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; color: inherit; }
  .mf-nav-brand .name { font-family: var(--mf-font-mono); font-size: 13px; }
  .mf-nav-links { display: flex; gap: 22px; font-family: var(--mf-font-mono); font-size: 12px; }
  .mf-nav-links a { color: var(--mf-text-muted); text-decoration: none; transition: color .15s; }
  .mf-nav-links a:hover { color: var(--mf-text); }
  @media (max-width: 540px) { .mf-nav-links { gap: 14px; font-size: 11px; } }

  /* page heading */
  .mf-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-top: 8px; }
  .mf-heading h1 { font-family: var(--mf-font-display); font-size: 30px; font-weight: 500; margin: 0; letter-spacing: -0.01em; }
  .mf-heading .since { font-family: var(--mf-font-mono); font-size: 11.5px; color: var(--mf-text-muted); }

  /* hero stat cards */
  .mf-hero { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--mf-gap-grid); }
  @media (max-width: 720px) { .mf-hero { grid-template-columns: 1fr; } }
  .mf-stat { display: flex; flex-direction: column; gap: 10px; }
  .mf-stat .value { font-size: 32px; font-weight: 500; letter-spacing: -0.01em; }
  .mf-stat .sub { font-size: 12px; color: var(--mf-text-muted); }

  /* chart card */
  .mf-chart-head { display: flex; justify-content: space-between; margin-bottom: 8px; }
  .mf-chart-head .range { font-family: var(--mf-font-mono); font-size: 11px; color: var(--mf-text-muted); }
  .mf-chart-legend { display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 18px; row-gap: 6px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--mf-line); font-family: var(--mf-font-mono); font-size: 11px; color: var(--mf-text-muted); }
  .mf-chart-legend .item { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; overflow: hidden; }
  .mf-chart-legend .swatch { width: 8px; height: 8px; border-radius: 2px; flex-shrink: 0; }
  .mf-chart-legend .name { overflow: hidden; text-overflow: ellipsis; }
  @media (max-width: 720px) { .mf-chart-legend { grid-template-columns: repeat(2, 1fr); } }

  /* firm groups */
  .mf-firm { display: flex; flex-direction: column; gap: 14px; }
  .mf-firm h2 { font-family: var(--mf-font-display); font-size: 22px; font-weight: 500; margin: 0; letter-spacing: -0.01em; }
  .mf-firm .summary { font-family: var(--mf-font-mono); font-size: 11.5px; color: var(--mf-text-muted); margin-top: 4px; }
  .mf-firm .accounts { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--mf-gap-grid); }
  @media (max-width: 720px) { .mf-firm .accounts { grid-template-columns: 1fr; } }

  /* account card */
  .mf-account { display: flex; flex-direction: column; gap: 10px; }
  .mf-account .head { display: flex; justify-content: space-between; align-items: flex-start; }
  .mf-account .ticker { font-family: var(--mf-font-mono); font-size: 13px; font-weight: 500; }
  .mf-account .value { font-size: 26px; font-weight: 500; letter-spacing: -0.01em; }
  .mf-account .meta { font-family: var(--mf-font-mono); font-size: 11.5px; color: var(--mf-text-muted); }
  .mf-account .footer-row { display: flex; justify-content: space-between; font-size: 11px; font-family: var(--mf-font-mono); color: var(--mf-text-dim); }

  /* capital table */
  .mf-capital h3 { font-family: var(--mf-font-display); font-size: 20px; font-weight: 500; margin: 0; }
  .mf-capital .lede { font-size: 12px; color: var(--mf-text-muted); margin: 6px 0 18px; line-height: 1.5; }
  .mf-capital-row { display: grid; grid-template-columns: 1fr auto auto; gap: 24px; padding: 10px 0; border-top: 1px solid var(--mf-line); font-family: var(--mf-font-mono); font-size: 12px; align-items: baseline; }
  .mf-capital-row .multiplier { color: var(--mf-text-muted); }
  .mf-capital-row .amount { min-width: 80px; text-align: right; }
  .mf-capital-total { display: grid; grid-template-columns: 1fr auto auto; gap: 24px; padding: 12px 0 0; border-top: 1px solid var(--mf-line); font-family: var(--mf-font-mono); font-size: 13px; align-items: baseline; }
  .mf-capital-total .label { font-weight: 500; }
  .mf-capital-total .amount { min-width: 80px; text-align: right; font-weight: 600; letter-spacing: -0.01em; }

  /* link cards (Discord / Propfirm / TikTok) */
  .mf-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--mf-gap-grid); }
  @media (max-width: 720px) { .mf-links { grid-template-columns: 1fr; } }
  .mf-link-card { display: flex; flex-direction: column; gap: 10px; min-height: 156px; text-decoration: none; color: var(--mf-text); transition: border-color .15s; }
  .mf-link-card:hover { border-color: var(--mf-line-strong); }
  .mf-link-card h3 { font-family: var(--mf-font-display); font-size: 22px; font-weight: 500; margin: 0; }
  .mf-link-card p { font-size: 12.5px; color: var(--mf-text-muted); margin: 0; line-height: 1.5; flex: 1; }
  .mf-link-card .cta-row { display: flex; align-items: center; gap: 10px; font-family: var(--mf-font-mono); font-size: 12px; }

  /* activity */
  .mf-activity h3 { font-family: var(--mf-font-display); font-size: 20px; font-weight: 500; margin: 0 0 14px; }
  .mf-activity-row { display: grid; grid-template-columns: 1fr auto; padding: 12px 0; border-top: 1px solid var(--mf-line); border-bottom: 1px solid var(--mf-line); font-family: var(--mf-font-mono); font-size: 12px; gap: 16px; }
  .mf-activity-stamp { text-align: center; font-family: var(--mf-font-mono); font-size: 11px; color: var(--mf-text-dim); margin-top: 24px; }

  /* footer */
  .mf-footer { margin-top: 60px; padding-top: 36px; border-top: 1px solid var(--mf-line-strong); display: flex; flex-direction: column; gap: 36px; }
  .mf-footer-cols { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 40px; align-items: start; }
  @media (max-width: 720px) { .mf-footer-cols { grid-template-columns: 1fr; gap: 24px; } }
  .mf-footer-brand { display: flex; flex-direction: column; gap: 14px; }
  .mf-footer-brand p { font-family: var(--mf-font-serif); font-size: 15px; line-height: 1.5; color: var(--mf-text-muted); margin: 0; max-width: 320px; font-style: italic; }
  .mf-footer-col { display: flex; flex-direction: column; gap: 10px; }
  .mf-footer-col .links { display: flex; flex-direction: column; gap: 8px; }
  .mf-footer-col a { color: var(--mf-text); text-decoration: none; font-size: 13.5px; transition: opacity .15s; }
  .mf-footer-col a:hover { opacity: 0.7; }
  .mf-footer-bottom { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; padding-top: 18px; border-top: 1px solid var(--mf-line); font-family: var(--mf-font-mono); font-size: 11px; color: var(--mf-text-dim); }
  .mf-footer-bottom .legal { max-width: 620px; text-align: right; line-height: 1.5; }
  @media (max-width: 720px) { .mf-footer-bottom { flex-direction: column; align-items: flex-start; } .mf-footer-bottom .legal { text-align: left; } }

  ::selection { background: var(--mf-text); color: var(--mf-bg); }
