/* Living Systems Capital - production styles.
   Every value resolves to a token declared in :root, mirroring docs/design.md.
   Raw px outside :root is limited to media query breakpoints (900/720/560),
   1px hairlines, and small token-structural values (focus outline, svg hairlines). */

:root{
  /* colors (design.md colors:) */
  --surface:#232629;
  --surface-sunken:#202326;
  --on-surface:#E9E7E2;
  --text-body:#C8CCD0;
  --text-secondary:#9EA4A9;
  --text-tertiary:#8B9096;
  --border-subtle:#3A3F44;
  --border-strong:#4B5157;
  --stroke-ui:#6B7278;
  --accent:#D3A852;
  --accent-wash:#D3A8520F;
  --accent-veil:#D3A8520E;
  --ink-wash:#E9E7E205;
  --error:#C97F72;

  /* typography (design.md typography:) */
  --font-family-wordmark:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-wordmark:13px;
  --font-weight-wordmark:600;
  --line-height-wordmark:1.4;
  --letter-spacing-wordmark:0.16em;

  --font-family-display:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-size-display:clamp(20px,2.8vw,28px);
  --font-weight-display:500;
  --line-height-display:1.3;
  --letter-spacing-display:-0.01em;

  --font-family-heading-strategy:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-heading-strategy:clamp(17px,2.2vw,21px);
  --font-weight-heading-strategy:600;
  --line-height-heading-strategy:1.3;
  --letter-spacing-heading-strategy:0.01em;

  --font-family-section-tag:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-section-tag:10.5px;
  --font-weight-section-tag:400;
  --line-height-section-tag:1.5;
  --letter-spacing-section-tag:0.14em;

  --font-family-label-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-label-mono:9.5px;
  --font-weight-label-mono:400;
  --line-height-label-mono:1.5;
  --letter-spacing-label-mono:0.12em;

  --font-family-micro-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-micro-mono:10px;
  --font-weight-micro-mono:400;
  --line-height-micro-mono:1.5;
  --letter-spacing-micro-mono:0.12em;

  --font-family-ledger-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-ledger-mono:12.5px;
  --font-weight-ledger-mono:400;
  --line-height-ledger-mono:1.5;
  --letter-spacing-ledger-mono:0em;
  --font-feature-ledger-mono:'tnum';

  --font-family-value-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-value-mono:20px;
  --font-weight-value-mono:500;
  --line-height-value-mono:1.25;
  --letter-spacing-value-mono:0em;
  --font-feature-value-mono:'tnum';

  --font-family-value-mono-sm:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-value-mono-sm:18px;
  --font-weight-value-mono-sm:500;
  --line-height-value-mono-sm:1.25;
  --letter-spacing-value-mono-sm:0em;
  --font-feature-value-mono-sm:'tnum';

  --font-family-cta:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-cta:11.5px;
  --font-weight-cta:400;
  --line-height-cta:1.4;
  --letter-spacing-cta:0.1em;

  --font-family-address-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-size-address-mono:10.5px;
  --font-weight-address-mono:400;
  --line-height-address-mono:1.6;
  --letter-spacing-address-mono:0.04em;

  --font-family-body:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-size-body:15px;
  --font-weight-body:400;
  --line-height-body:1.5;
  --letter-spacing-body:0em;

  --font-family-body-relaxed:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-size-body-relaxed:14.5px;
  --font-weight-body-relaxed:400;
  --line-height-body-relaxed:1.7;
  --letter-spacing-body-relaxed:0em;

  --font-family-fine-print:'Inter',-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-size-fine-print:11.5px;
  --font-weight-fine-print:400;
  --line-height-fine-print:1.75;
  --letter-spacing-fine-print:0em;

  /* spacing (design.md spacing:) */
  --space-1:4px;
  --space-2:8px;
  --space-3:10px;
  --space-4:12px;
  --space-5:14px;
  --space-6:16px;
  --space-7:20px;
  --space-8:24px;
  --space-9:28px;
  --space-10:34px;
  --space-11:40px;
  --space-12:44px;
  --space-13:52px;

  /* rounded (design.md rounded:) */
  --rounded-none:0px;

  /* structural layout (documented in design.md Layout / locked mockup grid geometry) */
  --layout-max-width:1080px;
  --index-marker-col:2.2rem;
  --lineage-label-col:5rem;
  --lineage-label-col-sm:3.6rem;
  --how-num-col:3rem;
  --chart-line-width:1.6px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--surface);
  color:var(--on-surface);
  font-family:var(--font-family-body);
  font-size:var(--font-size-body);
  font-weight:var(--font-weight-body);
  line-height:var(--line-height-body);
  letter-spacing:var(--letter-spacing-body);
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--layout-max-width);margin:0 auto;padding:0 var(--space-8)}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible{outline:1px solid var(--accent);outline-offset:2px}

/* header */
.top{
  display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;
  gap:var(--space-2) var(--space-6);
  padding:var(--space-7) 0;border-bottom:1px solid var(--border-subtle);
}
h1{
  font-family:var(--font-family-wordmark);font-size:var(--font-size-wordmark);
  font-weight:var(--font-weight-wordmark);line-height:var(--line-height-wordmark);
  letter-spacing:var(--letter-spacing-wordmark);text-transform:uppercase;
}
.top-meta{display:flex;align-items:baseline;gap:var(--space-7);flex-wrap:wrap}
.asof{
  font-family:var(--font-family-section-tag);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-section-tag);line-height:var(--line-height-section-tag);
  letter-spacing:var(--letter-spacing-section-tag);color:var(--text-tertiary);text-transform:uppercase;
}
.asof.is-error{color:var(--error)}
.x-link{
  font-family:var(--font-family-cta);font-size:var(--font-size-cta);
  font-weight:var(--font-weight-cta);line-height:var(--line-height-cta);
  letter-spacing:var(--letter-spacing-cta);
}

/* thesis */
.thesis{padding:var(--space-11) 0 var(--space-10)}
.thesis p{
  font-family:var(--font-family-display);font-size:var(--font-size-display);
  font-weight:var(--font-weight-display);line-height:var(--line-height-display);
  letter-spacing:var(--letter-spacing-display);max-width:32ch;
}

/* shared section tag */
.sec-tag{
  font-family:var(--font-family-section-tag);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-section-tag);line-height:var(--line-height-section-tag);
  letter-spacing:var(--letter-spacing-section-tag);color:var(--text-secondary);
  text-transform:uppercase;padding:var(--space-3) 0;
}

/* vault index strip */
.index{border-top:1px solid var(--border-subtle)}
.idx{border-top:1px solid var(--border-subtle)}
.ir{
  display:grid;grid-template-columns:var(--index-marker-col) minmax(0,1.7fr) repeat(4,minmax(0,1fr));
  column-gap:var(--space-6);align-items:baseline;padding:var(--space-3) 0;
  border-top:1px solid var(--border-subtle);color:inherit;
}
.ir:first-child{border-top:0}
a.ir:hover{text-decoration:none;background:var(--ink-wash)}
a.ir:hover .k-name{color:var(--accent)}
.ih{padding:var(--space-2) 0;border-top:0}
.ih span{
  font-family:var(--font-family-label-mono);font-size:var(--font-size-label-mono);
  font-weight:var(--font-weight-label-mono);line-height:var(--line-height-label-mono);
  letter-spacing:var(--letter-spacing-label-mono);color:var(--text-tertiary);text-transform:uppercase;
}
.ir span{
  font-family:var(--font-family-ledger-mono);font-size:var(--font-size-ledger-mono);
  font-weight:var(--font-weight-ledger-mono);line-height:var(--line-height-ledger-mono);
  letter-spacing:var(--letter-spacing-ledger-mono);font-feature-settings:var(--font-feature-ledger-mono);
}
.k-tag{color:var(--text-tertiary)}
.k-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.k-tvl,.k-pnl,.k-apr,.k-days{text-align:right;font-feature-settings:var(--font-feature-value-mono)}
.ir .is-loading{color:var(--text-tertiary)}
.ir .is-error{color:var(--error)}
.idx-note{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);
  text-transform:uppercase;padding:var(--space-3) 0 var(--space-4);
  border-top:1px solid var(--border-subtle);
}

/* strategy sections */
.strategy{border-top:1px solid var(--border-subtle);padding:var(--space-11) 0 var(--space-13)}
.s-meta{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);flex-wrap:wrap}
.s-tag,.s-live{
  font-family:var(--font-family-section-tag);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-section-tag);line-height:var(--line-height-section-tag);
  letter-spacing:var(--letter-spacing-section-tag);color:var(--text-secondary);text-transform:uppercase;
}
.strategy h2{
  font-family:var(--font-family-heading-strategy);font-size:var(--font-size-heading-strategy);
  font-weight:var(--font-weight-heading-strategy);line-height:var(--line-height-heading-strategy);
  letter-spacing:var(--letter-spacing-heading-strategy);margin-top:var(--space-4);
}
.addr{
  font-family:var(--font-family-address-mono);font-size:var(--font-size-address-mono);
  font-weight:var(--font-weight-address-mono);line-height:var(--line-height-address-mono);
  letter-spacing:var(--letter-spacing-address-mono);color:var(--text-tertiary);
  margin-top:var(--space-2);word-break:break-all;
}

/* stat grid (live: solid hairline mosaic) */
.stats{
  display:grid;grid-template-columns:repeat(6,1fr);
  gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);
  margin-top:var(--space-8);
}
.st{background:var(--surface);padding:var(--space-5) var(--space-6);min-width:0}
.sl{
  font-family:var(--font-family-label-mono);font-size:var(--font-size-label-mono);
  font-weight:var(--font-weight-label-mono);line-height:var(--line-height-label-mono);
  letter-spacing:var(--letter-spacing-label-mono);color:var(--text-secondary);text-transform:uppercase;
}
.sv{
  font-family:var(--font-family-value-mono);font-size:var(--font-size-value-mono);
  font-weight:var(--font-weight-value-mono);line-height:var(--line-height-value-mono);
  letter-spacing:var(--letter-spacing-value-mono);
  font-feature-settings:var(--font-feature-value-mono);
  margin:var(--space-2) 0 var(--space-1);white-space:nowrap;
}
.sv.is-loading{color:var(--text-tertiary)}
.sv.is-error{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);letter-spacing:var(--letter-spacing-micro-mono);
  color:var(--error);white-space:normal;
}
.ss{
  font-family:var(--font-family-label-mono);font-size:var(--font-size-label-mono);
  font-weight:var(--font-weight-label-mono);line-height:var(--line-height-label-mono);
  letter-spacing:var(--letter-spacing-label-mono);color:var(--text-tertiary);text-transform:uppercase;
}
.st.wide{grid-column:1 / -1;display:flex;align-items:baseline;gap:var(--space-2) var(--space-7);flex-wrap:wrap}
.st.wide .sv{
  font-family:var(--font-family-value-mono-sm);font-size:var(--font-size-value-mono-sm);
  font-weight:var(--font-weight-value-mono-sm);line-height:var(--line-height-value-mono-sm);
  letter-spacing:var(--letter-spacing-value-mono-sm);
  font-feature-settings:var(--font-feature-value-mono-sm);margin:0;
}
.sv.wrap{white-space:normal;line-height:var(--line-height-value-mono)}

/* chart */
.chart-cap{
  display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-secondary);
  text-transform:uppercase;margin:var(--space-9) 0 var(--space-2);
}
.chart{border:1px solid var(--border-subtle)}
.chart svg{display:block;width:100%;height:auto}
.chart.is-loading svg,.chart.is-error svg{display:none}
.chart-state{display:none}
.chart.is-loading .chart-state{
  display:block;
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);
  padding:var(--space-5) var(--space-6);
}
.chart.is-error .chart-state{
  display:block;
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--error);
  padding:var(--space-5) var(--space-6);
}
.retry{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);text-transform:uppercase;
  color:var(--text-secondary);background:var(--surface);
  border:1px solid var(--border-strong);border-radius:var(--rounded-none);
  padding:var(--space-2) var(--space-4);margin-left:var(--space-4);cursor:pointer;
}
.retry:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-wash)}
.retry:focus-visible{outline:1px solid var(--accent);outline-offset:2px}
.cl{stroke:var(--border-subtle);stroke-width:1}
.gl{stroke:var(--border-subtle);stroke-width:1;stroke-dasharray:2 4}
.zl{stroke:var(--stroke-ui);stroke-width:1}
.area{fill:var(--accent-veil)}
.pline{fill:none;stroke:var(--accent);stroke-width:var(--chart-line-width);stroke-linejoin:round;stroke-linecap:round}
.pdot{fill:var(--accent)}
.yt,.xt{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  fill:var(--text-secondary);
}
.pl{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-heading-strategy);fill:var(--on-surface);
}
/* official-start level marker (chart-pnl treatment, design.md) */
.ml{stroke:var(--stroke-ui);stroke-width:1;stroke-dasharray:2 4}
.mdot{fill:var(--stroke-ui)}
.mt{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  letter-spacing:var(--letter-spacing-cta);fill:var(--text-secondary);text-transform:uppercase;
}

/* chart status caption */
.chart-note{
  font-family:var(--font-family-address-mono);font-size:var(--font-size-address-mono);
  font-weight:var(--font-weight-address-mono);line-height:var(--line-height-address-mono);
  letter-spacing:var(--letter-spacing-address-mono);color:var(--text-secondary);
  margin-top:var(--space-3);
}

/* mechanism */
.mech-tag{
  font-family:var(--font-family-section-tag);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-section-tag);line-height:var(--line-height-section-tag);
  letter-spacing:var(--letter-spacing-section-tag);color:var(--text-secondary);
  text-transform:uppercase;margin:var(--space-9) 0 var(--space-3);
}
.mech{
  font-family:var(--font-family-body-relaxed);font-size:var(--font-size-body-relaxed);
  font-weight:var(--font-weight-body-relaxed);line-height:var(--line-height-body-relaxed);
  letter-spacing:var(--letter-spacing-body-relaxed);color:var(--text-body);max-width:76ch;
}

/* primary action */
.cta-row{display:flex;align-items:center;gap:var(--space-5) var(--space-8);flex-wrap:wrap;margin-top:var(--space-8)}
.cta{
  display:inline-flex;align-items:center;gap:var(--space-3);
  font-family:var(--font-family-cta);font-size:var(--font-size-cta);
  font-weight:var(--font-weight-cta);line-height:var(--line-height-cta);
  letter-spacing:var(--letter-spacing-cta);text-transform:uppercase;
  color:var(--accent);background:var(--surface);
  border:1px solid var(--border-strong);border-radius:var(--rounded-none);
  padding:var(--space-4) var(--space-6);
}
.cta:hover{text-decoration:none;border-color:var(--accent);background:var(--accent-wash)}
.cta2{
  font-family:var(--font-family-cta);font-size:var(--font-size-cta);
  font-weight:var(--font-weight-cta);line-height:var(--line-height-cta);
  letter-spacing:var(--letter-spacing-cta);
  text-transform:uppercase;color:var(--text-secondary);padding:var(--space-2) 0;
}
.cta2:hover{color:var(--accent);text-decoration:none}

/* lineage */
.lineage{
  display:grid;grid-template-columns:var(--lineage-label-col) minmax(0,1fr);
  gap:var(--space-6);align-items:baseline;
  border-top:1px solid var(--border-subtle);margin-top:var(--space-8);padding-top:var(--space-5);
}
.ll{
  font-family:var(--font-family-label-mono);font-size:var(--font-size-label-mono);
  font-weight:var(--font-weight-label-mono);line-height:var(--line-height-label-mono);
  letter-spacing:var(--letter-spacing-label-mono);color:var(--text-tertiary);text-transform:uppercase;
}
.lineage p{
  font-family:var(--font-family-body-relaxed);font-size:var(--font-size-body-relaxed);
  font-weight:var(--font-weight-body-relaxed);line-height:var(--line-height-body-relaxed);
  letter-spacing:var(--letter-spacing-body-relaxed);color:var(--text-secondary);max-width:80ch;
}

/* pre-live research (dashed hairline mosaic) */
.research{border-top:1px solid var(--border-subtle);margin-top:var(--space-10);padding-top:var(--space-1)}
.res-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-6);flex-wrap:wrap}
.res-window{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);text-transform:uppercase;
}
.research .stats{border-style:dashed;border-color:var(--border-strong);margin-top:var(--space-5)}
.stats.four{grid-template-columns:repeat(4,1fr)}
.stats.eight{grid-template-columns:repeat(4,1fr)}
.res-cap{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);
  margin-top:var(--space-3);
}

/* collapsible research figures */
.fig{margin-top:var(--space-5);border:1px solid var(--border-subtle)}
.fig summary{
  display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);
  min-height:var(--space-12);padding:var(--space-3) var(--space-5);cursor:pointer;list-style:none;
  font-family:var(--font-family-section-tag);font-size:var(--font-size-section-tag);
  font-weight:var(--font-weight-section-tag);line-height:var(--line-height-section-tag);
  letter-spacing:var(--letter-spacing-section-tag);text-transform:uppercase;
  color:var(--text-secondary);background:var(--surface);border-radius:var(--rounded-none);
}
.fig summary::-webkit-details-marker{display:none}
.fig summary::marker{content:""}
.fig summary:hover{color:var(--on-surface);background:var(--ink-wash)}
.fig summary:focus-visible{outline:1px solid var(--accent);outline-offset:2px}
.fig-toggle{color:var(--text-tertiary);white-space:nowrap}
.fig summary:hover .fig-toggle{color:var(--on-surface)}
.fig .fig-hide{display:none}
.fig[open] .fig-hide{display:inline}
.fig[open] .fig-show{display:none}
.fig[open] summary{border-bottom:1px solid var(--border-subtle);background:var(--surface-sunken);color:var(--on-surface)}
.fig-frame{background:var(--surface-sunken);padding:var(--space-5)}
.fig-frame img{display:block;max-width:100%;height:auto;margin:0 auto}

/* inline subordinate feed links */
.ifl{font-family:var(--font-family-micro-mono);font-size:.9em;color:var(--text-secondary)}
.ifl:hover{color:var(--accent);text-decoration:none}

/* closing line */
.closing{
  border-top:1px solid var(--border-subtle);padding:var(--space-7) 0;
  font-family:var(--font-family-body);font-size:var(--font-size-body);
  font-weight:var(--font-weight-body);line-height:var(--line-height-body);
  letter-spacing:var(--letter-spacing-body);color:var(--on-surface);
}

/* where the numbers live */
.how{border-top:1px solid var(--border-subtle);padding-bottom:var(--space-12)}
.how-row{
  display:grid;grid-template-columns:var(--how-num-col) minmax(0,1fr);
  gap:var(--space-6);align-items:baseline;
  padding:var(--space-5) 0;border-top:1px solid var(--border-subtle);
}
.how-row:first-of-type{border-top:0}
.hn{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);
  font-feature-settings:var(--font-feature-value-mono);
}
.how-row p{
  font-family:var(--font-family-body-relaxed);font-size:var(--font-size-body-relaxed);
  font-weight:var(--font-weight-body-relaxed);line-height:var(--line-height-body-relaxed);
  letter-spacing:var(--letter-spacing-body-relaxed);color:var(--text-body);max-width:72ch;
}
.how p{
  font-family:var(--font-family-body-relaxed);font-size:var(--font-size-body-relaxed);
  font-weight:var(--font-weight-body-relaxed);line-height:var(--line-height-body-relaxed);
  letter-spacing:var(--letter-spacing-body-relaxed);color:var(--text-body);max-width:72ch;
}
.how p + p{margin-top:var(--space-4)}

/* footer */
footer{border-top:1px solid var(--border-subtle);padding:var(--space-9) 0 var(--space-12)}
.fine{
  font-family:var(--font-family-fine-print);font-size:var(--font-size-fine-print);
  font-weight:var(--font-weight-fine-print);line-height:var(--line-height-fine-print);
  letter-spacing:var(--letter-spacing-fine-print);color:var(--text-secondary);max-width:82ch;
}
.fine + .fine{margin-top:var(--space-4)}
.foot-meta{
  font-family:var(--font-family-micro-mono);font-size:var(--font-size-micro-mono);
  font-weight:var(--font-weight-micro-mono);line-height:var(--line-height-micro-mono);
  letter-spacing:var(--letter-spacing-micro-mono);color:var(--text-tertiary);
  text-transform:uppercase;margin-top:var(--space-6);
}
.foot-meta .is-error{color:var(--error)}

/* breakpoints per design.md: 900px, 720px, 560px */
@media (max-width:900px){
  .stats{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:720px){
  .ir{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr))}
  .k-tag,.k-apr,.k-days{display:none}
}
@media (max-width:560px){
  .wrap{padding:0 var(--space-6)}
  .stats{grid-template-columns:repeat(2,1fr)}
  .stats.four,.stats.eight{grid-template-columns:repeat(2,1fr)}
  .lineage{grid-template-columns:var(--lineage-label-col-sm) minmax(0,1fr);gap:var(--space-4)}
  .sv{font-size:var(--font-size-value-mono-sm)}
  .thesis{padding:var(--space-9) 0}
  .strategy{padding:var(--space-10) 0 var(--space-12)}
}
