:root {
  color-scheme: light dark;
  --color-fg: #16181d; --color-fg-muted: #5c6470; --color-bg: #f6f6f3; --color-panel: #ffffff; --color-border-line: #e2e2dd;
  --color-ok: #1a7f4b; --color-warn: #b7791f; --color-bad: #c0392b;
  --cds-font-size-caption: .78rem; --cds-font-size-body: .875rem; --cds-font-size-heading: 1rem; --cds-font-size-title: 1.4rem; --cds-font-weight-medium: 500;
  --cds-gap-xs: 4px; --cds-gap-sm: 8px; --cds-gap-md: 14px; --cds-gap-lg: 22px; --cds-gap-xl: 32px;
  --cds-pad-xs: 6px; --cds-pad-sm: 8px; --cds-pad-md: 12px; --cds-pad-lg: 18px; --cds-radius: 8px;
  --cds-chart-grid: #ececE8; --cds-chart-reference: #70757d; --cds-surface-popover: #ffffff; --cds-border: #d4d4ce;
  --cds-shadow-popover: 0 4px 14px rgba(0, 0, 0, .14); --cds-text-secondary: #5c6470; --cds-ease-out: cubic-bezier(.16, 1, .3, 1);
  --font-anthropic-sans: Inter, system-ui, sans-serif; --font-anthropic-serif: "Source Serif 4", Georgia, serif;
}
@media (prefers-color-scheme: dark) {
  :root {
    --color-fg: #ececea; --color-fg-muted: #a2a7ae; --color-bg: #15171b; --color-panel: #1e2025; --color-border-line: #33363d;
    --color-ok: #4cc38a; --color-warn: #e2b04a; --color-bad: #ef6f62;
    --cds-chart-grid: #2c2f35; --cds-chart-reference: #8e939a; --cds-surface-popover: #272a30; --cds-border: #3d4048;
    --cds-shadow-popover: 0 4px 14px rgba(0, 0, 0, .5); --cds-text-secondary: #a2a7ae;
  }
}
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--color-bg); color: var(--color-fg); font-family: var(--font-anthropic-sans); }
#dash-root { padding: 16px clamp(16px, 3vw, 32px) 32px; }
.cf-indep { max-width: 1320px; margin: 24px auto 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); }
.cf-indep a { color: inherit; }
/* Layout: a two-slide brief. Photo hero with the finding, a figure strip, then cards grouped by question.
   Networks keep one colour on every chart; acquirers are coloured by type. */
.cf {
  --v: #2456D6; --m: #E8590C; --e: #0E9F8E;
  --bank: #5B4FCF; --spec: #D6336C;
  --cp: #27408B; --cps: #9DB2E8; --cnp: #B8571A; --cnps: #F0C39E;
  --ic: #27408B; --sch: #E0A030;
  --heat: #5B4FCF;
  --zone: rgba(120, 120, 135, .22);
  max-width: 1320px; margin-inline: auto; overflow-x: clip;
  display: flex; flex-direction: column; gap: var(--cds-gap-lg);
  font-family: var(--font-anthropic-sans); color: var(--color-fg);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .cf {
    --v: #4673E8; --m: #E2631A; --e: #129E8D; --bank: #8279E8; --spec: #E8557F;
    --cp: #7E9CF0; --cps: #33487F; --cnp: #E58A4C; --cnps: #6E4526; --ic: #7E9CF0; --heat: #8279E8; --zone: rgba(190, 190, 205, .18);
  }
}
:root[data-theme="dark"] .cf {
  --v: #4673E8; --m: #E2631A; --e: #129E8D; --bank: #8279E8; --spec: #E8557F;
  --cp: #7E9CF0; --cps: #33487F; --cnp: #E58A4C; --cnps: #6E4526; --ic: #7E9CF0; --heat: #8279E8; --zone: rgba(190, 190, 205, .18);
}

.cf-tabs { display: flex; flex-wrap: wrap; gap: var(--cds-gap-sm); }
.cf-tab {
  font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg-muted); background: transparent;
  border: 1px solid var(--color-border-line); border-radius: 999px; padding: 6px 14px; cursor: pointer;
}
.cf-tab-n { font-variant-numeric: tabular-nums; opacity: .7; margin-right: 6px; }
.cf-tab[aria-pressed="true"] { color: var(--color-bg); background: var(--color-fg); border-color: var(--color-fg); }
.cf-tab:focus-visible, .cf-seg button:focus-visible, .cf-next:focus-visible { outline: 2px solid var(--v); outline-offset: 2px; }

.cf-slide { display: flex; flex-direction: column; gap: var(--cds-gap-lg); min-width: 0; }
.cf-slide[hidden], .cf-tip[hidden] { display: none; }

.cf-slide { container-type: inline-size; }
.cf-hero {
  position: relative; border-radius: calc(var(--cds-radius) * 2); overflow: hidden;
  display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center;
  background-color: var(--hv-bg); background-image: radial-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px); background-size: 18px 18px;
  --hv-bg: #0D1636; --hv-v: #5B84F5; --hv-m: #F07A2E; --hv-e: #24BFAC; --hv-bank: #9A90F5; --hv-spec: #F0709A; --hv-soft: #C9D4F5;
}
.hv-acq { --hv-bg: #181338; }
.hv-rba { --hv-bg: #08262C; --hv-soft: #BFE3E0; }
.cf-hero-in { position: relative; padding: clamp(20px, 4vw, 44px); display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.cf-hv { margin: 0; padding: clamp(16px, 2.5vw, 28px); padding-left: 0; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.cf-hv-plot { width: 100%; }
.cf-hv-plot svg { display: block; width: 100%; height: auto; }
.cf-hv figcaption { color: var(--hv-soft); font-size: var(--cds-font-size-caption); line-height: 1.45; }
.cf-hv figcaption i { display: inline-block; width: 9px; height: 9px; border-radius: 2px; margin-right: 4px; }
.cf-hv-leg { display: inline-flex; align-items: center; margin-right: 10px; white-space: nowrap; }
.cf-hv .cf-hv-t { color: #fff; font-size: var(--cds-font-size-body); font-weight: var(--cds-font-weight-medium); }
.hv-name { font-size: 12.5px; font-weight: 600; fill: #fff; }
.hv-val { font-size: 12px; fill: var(--hv-soft); font-variant-numeric: tabular-nums; }
.hv-coin-t { margin: 0 0 6px; color: #fff; font-size: var(--cds-font-size-body); font-weight: var(--cds-font-weight-medium); line-height: 1.3; min-height: 1.3em; }
.hv-coin-n { margin: 8px 0 0; color: var(--hv-soft); font-size: var(--cds-font-size-caption); line-height: 1.45; min-height: 2.9em; }
.hv-coin-v { font-family: var(--font-anthropic-serif); font-size: 21px; fill: #fff; font-variant-numeric: tabular-nums; }
.hv-coin-f { display: flex; align-items: center; flex-wrap: wrap; gap: 0; margin-left: -4px; }
.hv-coin-f button { background: none; border: 0; padding: 0; margin: 0; cursor: pointer; width: 26px; height: 26px; display: grid; place-items: center; color: #fff; }
.hv-coin-d::before { content: ""; width: 8px; height: 8px; border-radius: 50%; border: 1px solid var(--hv-soft); }
.hv-coin-d[aria-pressed="true"]::before { background: #fff; border-color: #fff; }
.hv-coin-f button:focus-visible { outline: 2px solid #fff; outline-offset: -2px; border-radius: 6px; }
@media (prefers-reduced-motion: no-preference) {
  .hv-coin { animation: hv-drop 620ms var(--cds-ease-out) both; }
  .hv-coin-v { animation: hv-fade 420ms var(--cds-ease-out) both; }
  @keyframes hv-drop { from { opacity: 0; transform: translateY(-30px); } to { opacity: 1; transform: none; } }
  @keyframes hv-fade { from { opacity: 0; } to { opacity: 1; } }
}
.hv-tl { list-style: none; margin: 0; padding: 0 0 0 22px; position: relative; }
.hv-tl::before { content: ""; position: absolute; left: 5px; top: 8px; bottom: 40px; width: 2px; background: rgba(255, 255, 255, .22); }
.hv-tl::after { content: ""; position: absolute; left: 0; top: 3px; width: 12px; height: 12px; border-radius: 50%; background: var(--hv-e); box-shadow: 0 0 0 4px rgba(36, 191, 172, .25); }
.hv-tl li { height: 58px; position: relative; display: flex; flex-direction: column; gap: 2px; font-size: var(--cds-font-size-caption); line-height: 1.35; color: var(--hv-soft); }
.hv-tl li::before { content: ""; position: absolute; left: -19px; top: 6px; width: 6px; height: 6px; border-radius: 50%; background: var(--hv-soft); }
.hv-tl b { color: #fff; font-size: var(--cds-font-size-body); font-weight: 600; font-variant-numeric: tabular-nums; }
@media (prefers-reduced-motion: no-preference) {
  .hv-tl li { opacity: .68; animation: hv-lit 20s linear infinite; animation-delay: calc(var(--i) * 4s); }
  .hv-tl::after { animation: hv-step 20s var(--cds-ease-out) infinite; }
  @keyframes hv-lit { 0%, 17% { opacity: 1; } 21%, 100% { opacity: .68; } }
  @keyframes hv-step {
    0%, 16% { transform: translateY(0); opacity: 1; }
    20%, 36% { transform: translateY(58px); }
    40%, 56% { transform: translateY(116px); }
    60%, 76% { transform: translateY(174px); }
    80%, 95% { transform: translateY(232px); opacity: 1; }
    99% { transform: translateY(232px); opacity: 0; }
    100% { transform: translateY(0); opacity: 0; }
  }
}
@container (max-width: 860px) {
  .cf-hero { grid-template-columns: minmax(0, 1fr); }
  .cf-hv { padding: 0 clamp(20px, 4vw, 44px) clamp(20px, 4vw, 44px); }
  .hv-coin-t { min-height: 2.6em; }
}
.cf-eyebrow { margin: 0; color: #C9D4F5; font-size: var(--cds-font-size-caption); letter-spacing: .04em; }
.cf-hero h1 {
  margin: 0; color: #fff; font-family: var(--font-anthropic-serif); font-weight: 400;
  font-size: clamp(1.6rem, 3.1vw, 2.5rem); line-height: 1.14; text-wrap: balance;
}
.cf-lede { margin: 0; color: #E7ECFA; font-size: var(--cds-font-size-heading); line-height: 1.5; max-width: 68ch; }
.cf-hero .cf-lede b { color: #fff; font-weight: 600; font-variant-numeric: tabular-nums; }

.cf-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12.5rem), 1fr)); gap: var(--cds-gap-md); }
.cf-kpi { display: flex; flex-direction: column; gap: 4px; padding: var(--cds-pad-sm) 0; border-top: 2px solid var(--color-fg); min-width: 0; }
.cf-ico { color: var(--color-fg-muted); }
.cf-kpi-v { font-family: var(--font-anthropic-serif); font-size: clamp(1.6rem, 2.6vw, 2.2rem); font-weight: 400; font-variant-numeric: tabular-nums; line-height: 1.15; }
.cf-kpi p { margin: 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); line-height: 1.4; }

.cf-h2 { margin: var(--cds-gap-md) 0 0; font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-title); }
.cf-grid { display: grid; gap: var(--cds-gap-md); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) {
  .cf-grid-21 { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
  .cf-grid-12 { grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); }
  .cf-grid-11 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.cf-card {
  background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius);
  padding: var(--cds-pad-lg); display: flex; flex-direction: column; gap: 10px; min-width: 0;
}
.cf-card h3 { margin: 0; font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
.cf-note { margin: 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); line-height: 1.5; max-width: 78ch; }
.cf-note b { color: var(--color-fg); font-variant-numeric: tabular-nums; }
.cf-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 16px; align-items: center; }
.cf-ctrls { display: flex; flex-wrap: wrap; gap: 8px; }

.cf-seg { display: inline-flex; flex-wrap: wrap; border: 1px solid var(--color-border-line); border-radius: 8px; overflow: hidden; }
.cf-seg button {
  font: inherit; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); background: transparent;
  border: 0; padding: 7px 12px; cursor: pointer;
}
.cf-seg button[aria-pressed="true"] { color: var(--color-bg); background: var(--color-fg); }
.cf-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.cf-bar-l { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }

.cf-legend { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.cf-legend span { display: inline-flex; align-items: center; gap: 6px; }
.cf-legend i { width: 12px; height: 12px; border-radius: 3px; display: inline-block; flex: none; }
.cf-legend .k-dot { border-radius: 50%; }
.k-v { background: var(--v); } .k-m { background: var(--m); } .k-e { background: var(--e); }
.k-cp { background: var(--cp); } .k-cps { background: var(--cps); } .k-cnp { background: var(--cnp); } .k-cnps { background: var(--cnps); }
.k-ic { background: var(--ic); } .k-sch { background: var(--sch); }
.k-bank, .k-bank2 { background: var(--bank); } .k-spec, .k-spec2 { background: var(--spec); }
.k-tok { background: var(--cnp); } .k-pln { background: var(--cp); }
.k-iss { background: var(--cp); } .k-acq { background: var(--cnp); }
.k-dom { background: var(--cp); } .k-for { background: var(--cnp); }
.k-all { background: var(--color-fg-muted); } .k-med { background: var(--cp); } .k-sml { background: var(--cnp); }
.k-q3 { background: transparent; border: 2px solid var(--color-fg-muted); box-sizing: border-box; }
.k-oct { background: transparent; border: 2px solid var(--cnp); box-sizing: border-box; }
.k-zone { background: var(--zone); }

.cf-chart { position: relative; min-height: 120px; min-width: 0; }
.cf-chart svg { display: block; overflow: visible; }
.cf-chart text { fill: var(--color-fg); font-size: 12px; font-family: var(--font-anthropic-sans); font-variant-numeric: tabular-nums; }
.cf-chart text.mut { fill: var(--color-fg-muted); }
.cf-chart text.hd { font-weight: 500; font-size: 13px; }

.sb-row { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: 4px 12px; align-items: center; padding: 5px 0; }
.sb-lab { font-size: var(--cds-font-size-caption); line-height: 1.25; }
.sb-lab small { display: block; color: var(--color-fg-muted); font-size: inherit; font-variant-numeric: tabular-nums; }
.sb-track { display: flex; gap: 2px; height: 26px; min-width: 0; }
.sb-seg {
  height: 100%; border-radius: 3px; display: flex; align-items: center; padding-left: 6px; overflow: hidden; white-space: nowrap;
  font-size: var(--cds-font-size-caption); color: #fff; font-weight: 600; font-variant-numeric: tabular-nums; box-sizing: border-box;
}
.sb-v { background: var(--v); } .sb-m { background: var(--m); } .sb-e { background: var(--e); }
.sb-ic { background: var(--ic); color: var(--color-panel); } .sb-sch { background: var(--sch); color: #2a1c00; }
.sb-bank { background: var(--bank); } .sb-spec { background: var(--spec); } .sb-mut { background: var(--color-fg-muted); }
.sb-end { font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; padding-left: 6px; white-space: nowrap; display: flex; align-items: center; }
@media (max-width: 560px) { .sb-row { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: no-preference) {
  .sb-seg, .rk-bar { transition: width 700ms var(--cds-ease-out); }
  .rk-row { transition: transform 600ms var(--cds-ease-out); }
}

.cf-waffles { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr)); gap: var(--cds-gap-md); }
.wf { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.wf-t { font-size: var(--cds-font-size-caption); font-weight: var(--cds-font-weight-medium); }
.wf-s { display: grid; grid-template-columns: 1fr auto; gap: 1px 8px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.wf-s b { color: var(--color-fg); font-weight: 500; text-align: right; }
.wf svg { width: 100%; max-width: 190px; display: block; }
.w0 { fill: var(--cp); } .w1 { fill: var(--cps); } .w2 { fill: var(--cnp); } .w3 { fill: var(--cnps); }
@media (prefers-reduced-motion: no-preference) {
  .wf-play rect { animation: cf-pop 420ms var(--cds-ease-out) both; }
  @keyframes cf-pop { from { opacity: 0; transform: scale(.4); } to { opacity: 1; transform: scale(1); } }
  .wf-play rect { transform-box: fill-box; transform-origin: center; }
  .dot-play circle.pt { animation: cf-fade 500ms var(--cds-ease-out) both; }
  .dot-play line.cn { animation: cf-fade 500ms var(--cds-ease-out) both; }
  @keyframes cf-fade { from { opacity: 0; } to { opacity: 1; } }
}

.pt { stroke: var(--color-panel); stroke-width: 2; }
.pt.c-cp { fill: var(--cp); } .pt.c-cnp { fill: var(--cnp); } .pt.c-mut { fill: var(--color-fg-muted); }
.pt.c-bank { fill: var(--bank); } .pt.c-spec { fill: var(--spec); }
.pt.h-mut { fill: var(--color-panel); stroke: var(--color-fg-muted); } .pt.h-cnp { fill: var(--color-panel); stroke: var(--cnp); }
.cn { stroke: var(--color-border-line); stroke-width: 3; stroke-linecap: round; }
.refl { stroke: var(--cds-chart-reference); stroke-width: 1; stroke-dasharray: 3 3; }
.band { fill: var(--zone); }
.axl { stroke: var(--cds-chart-grid); stroke-width: 1; }

.cf-tip {
  position: absolute; z-index: 5; pointer-events: none; background: var(--cds-surface-popover); border: 1px solid var(--cds-border);
  border-radius: var(--cds-radius); box-shadow: var(--cds-shadow-popover); padding: var(--cds-pad-xs) var(--cds-pad-sm);
  font-size: var(--cds-font-size-caption); max-width: 15rem; line-height: 1.4; font-variant-numeric: tabular-nums;
}
.cf-tip div:first-child { color: var(--cds-text-secondary); }

.rk { position: relative; }
.rk-row { position: absolute; left: 0; right: 0; top: 0; height: 40px; display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 8px; align-items: center; }
.rk-n { font-size: var(--cds-font-size-caption); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-tr { display: flex; align-items: center; min-width: 0; }
.rk-bar { height: 22px; border-radius: 3px; flex: none; }
.rk-v { padding-left: 8px; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; white-space: nowrap; }

.cf-tablewrap { overflow-x: auto; }
.cf-table { border-collapse: collapse; width: 100%; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; }
.cf-table th { text-align: right; font-weight: 500; color: var(--color-fg-muted); padding: 6px 8px; white-space: nowrap; border-bottom: 1px solid var(--color-border-line); }
.cf-table th:first-child, .cf-table td:first-child { text-align: left; }
.cf-table .cf-th-g th { text-align: center; border-bottom: 0; padding-bottom: 0; color: var(--color-fg); }
.cf-table td { padding: 8px; text-align: right; white-space: nowrap; }
.cf-table tbody tr + tr td { border-top: 1px solid var(--color-border-line); }
.cf-table .gd { font-weight: 500; }
.cf-cover td, .cf-cover th, .cf-cover td:first-child, .cf-cover th:first-child { text-align: left; white-space: normal; }
.cf-cover td:nth-child(2) { white-space: nowrap; }
.cf-cover a, .cf-foot a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.cf-ok, .cf-gap { display: inline-flex; align-items: center; gap: 6px; }
.cf-ok::before, .cf-gap::before { content: ""; width: 8px; height: 8px; border-radius: 50%; }
.cf-ok::before { background: var(--color-ok); }
.cf-gap::before { background: var(--color-warn); }

.cf-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; padding-top: var(--cds-gap-sm); }
.cf-foot p { margin: 0; flex: 1 1 26rem; min-width: 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); line-height: 1.5; max-width: 90ch; }
.cf-next {
  font: inherit; font-size: var(--cds-font-size-body); display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
  color: var(--color-bg); background: var(--color-fg); border: 0; border-radius: 999px; padding: 8px 16px;
}

@media (prefers-reduced-motion: no-preference) {
  .tx-out { animation: tx-out 240ms cubic-bezier(.55, 0, 1, .45) both; }
  .tx-in { animation: tx-in 420ms cubic-bezier(.16, 1, .3, 1) both; }
  @keyframes tx-out { to { opacity: 0; transform: translateX(-48px); } }
  @keyframes tx-in { from { opacity: 0; transform: translateX(64px); } to { opacity: 1; transform: none; } }
}

.cf-links { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; font-size: var(--cds-font-size-caption); }
.cf-links span { color: var(--color-fg-muted); margin-right: 4px; }
.cf-links a {
  color: var(--color-fg); text-decoration: none; border: 1px solid var(--color-border-line); border-radius: 999px; padding: 5px 12px; background: var(--color-panel);
}
.cf-links a::after { content: " \2197"; color: var(--color-fg-muted); }
.cf-links a:hover { border-color: var(--color-fg); }
.cf-note a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.cf-sub { margin: 4px 0 0; font-size: var(--cds-font-size-caption); font-weight: var(--cds-font-weight-medium); }
.cf-said td { vertical-align: top; line-height: 1.45; }
.cf-said td:nth-child(2), .cf-said td:nth-child(3) { white-space: normal; min-width: 15rem; width: 44%; }
.cf-said td:first-child { white-space: nowrap; font-weight: 500; }
.cf-said td b { font-weight: 600; }
.cf-said a { color: inherit; }
.cf-tl { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cf-tl li { position: relative; padding: 0 0 14px 22px; display: flex; flex-direction: column; gap: 2px; font-size: var(--cds-font-size-caption); line-height: 1.45; }
.cf-tl li::before { content: ""; position: absolute; left: 0; top: 4px; width: 10px; height: 10px; border-radius: 50%; border: 2px solid var(--cp); box-sizing: border-box; background: var(--color-panel); }
.cf-tl li.tl-done::before { background: var(--cp); }
.cf-tl li:not(:last-child)::after { content: ""; position: absolute; left: 4px; top: 16px; bottom: -2px; width: 2px; background: var(--color-border-line); }
.cf-tl time { color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.cf-tl b { font-size: var(--cds-font-size-body); font-weight: 500; }
.cf-tl span { color: var(--color-fg-muted); }

.cf-period {
  display: flex; gap: 10px; align-items: flex-start; padding: var(--cds-pad-sm) var(--cds-pad-md);
  border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); background: var(--color-panel);
}
.cf-period svg { flex: none; margin-top: 1px; color: var(--cp); }
.cf-period p { margin: 0; font-size: var(--cds-font-size-body); line-height: 1.45; }
.cf-period b { font-weight: 600; }
.sb-solid { background: var(--cp); color: var(--color-panel); }
.sb-pale { background: var(--cps); color: var(--color-fg); }
.sb-solid2 { background: var(--cnp); color: var(--color-panel); }
.sb-pale2 { background: var(--cnps); color: var(--color-fg); }
.vs-track { height: 34px; }
.vs-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: 10px 16px; margin-top: 12px; }
.vs-item { display: flex; flex-direction: column; gap: 1px; font-size: var(--cds-font-size-caption); min-width: 0; }
.vs-name { display: inline-flex; align-items: center; gap: 6px; color: var(--color-fg-muted); }
.vs-name i { width: 12px; height: 12px; border-radius: 3px; flex: none; }
.vs-item b { font-family: var(--font-anthropic-serif); font-size: var(--cds-font-size-title); font-weight: 400; font-variant-numeric: tabular-nums; line-height: 1.2; }
.vs-item small { color: var(--color-fg-muted); font-size: inherit; font-variant-numeric: tabular-nums; }
.cf-value caption { caption-side: bottom; text-align: left; padding-top: 8px; color: var(--color-fg-muted); }
.cf-value .vs-of { color: var(--color-fg-muted); }
.cf-value .vs-sub td { font-weight: 500; background: color-mix(in srgb, var(--color-fg) 4%, transparent); }
.cf-value .vs-total td { font-weight: 600; border-top: 2px solid var(--color-fg); }
