/* Article figures. Base type, tokens and layout come from the site frame (data-ck-theme="site"). */
.equation { margin: 1.25rem 0; overflow-x: auto; font: 500 1.05rem/2 'CK Site', system-ui, sans-serif; color: hsl(var(--ck-site-foreground)); }
.equation i { font-style: italic; }
.equation .lim { display: inline-flex; flex-direction: column; vertical-align: middle; margin: 0 .1em; font-size: .72em; line-height: 1.05; text-align: center; }
.equation .op { font-size: 1.25em; vertical-align: -.08em; }
.equation-note { margin-top: -.5rem; font-size: .85rem; color: hsl(var(--ck-site-muted)); }
.status-label { font-weight: 600; color: hsl(var(--ck-site-foreground)); }
.repo-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: 1.5rem; margin: 2rem 0; }
.repo-grid figure { margin: 0; }
.repo-grid img { display: block; width: 100%; height: 9rem; object-fit: contain; padding: .75rem; background: hsl(var(--ck-site-surface)); border: 1px solid hsl(var(--ck-site-border)); }
.repo-grid figcaption { margin-top: .75rem; font-size: .88rem; line-height: 1.6; color: hsl(var(--ck-site-muted)); }
.repo-grid figcaption b { display: block; font: 600 .95rem/1.4 'CK Site', system-ui, sans-serif; color: hsl(var(--ck-site-foreground)); }
.repo-grid code { font-size: .75rem; }
.engine-svg { display: block; width: min(100%, 30rem); height: auto; margin: 1.5rem auto 0; }
.engine-svg circle.node { fill: hsl(var(--ck-site-surface)); stroke: hsl(var(--ck-site-border)); stroke-width: 1.5; }
.engine-svg .loop { fill: none; stroke: hsl(var(--ck-site-accent)); stroke-width: 2.5; }
.engine-svg .arrow { fill: hsl(var(--ck-site-accent)); }
.engine-svg rect { fill: hsl(var(--ck-site-background)); stroke: hsl(var(--ck-site-foreground)); stroke-width: 1.5; }
.engine-svg text { fill: hsl(var(--ck-site-foreground)); font: 600 21px 'CK Site', system-ui, sans-serif; }
.engine-svg text.sub { fill: hsl(var(--ck-site-muted)); font: 400 16px 'CK Body', system-ui, sans-serif; }
.debt-track { position: relative; height: .75rem; margin: 1.25rem 0 .35rem; background: hsl(var(--ck-site-surface-2)); }
.debt-fill { position: absolute; inset: 0 auto 0 0; background: hsl(var(--ck-site-foreground)); }
.debt-fill.is-over { background: hsl(var(--ck-site-accent)); }
.debt-mark { position: absolute; top: -.3rem; bottom: -.3rem; width: 2px; background: hsl(var(--ck-site-accent)); }
.debt-meta { display: flex; justify-content: space-between; gap: 1rem; font-size: .8rem; color: hsl(var(--ck-site-muted)); }
.world-log { margin: 1rem 0 0; padding: 0; list-style: none; font-size: .88rem; }
.world-log li { margin: 0; padding: .5rem 0; border-bottom: 1px solid hsl(var(--ck-site-border)); color: hsl(var(--ck-site-muted)); }
.world-log time { display: inline-block; min-width: 4.5rem; font: .78rem/1.5 'CK Mono', ui-monospace, monospace; color: hsl(var(--ck-site-foreground)); }
.study-choices button span { margin-right: .45rem; font: .78rem/1 'CK Mono', ui-monospace, monospace; color: hsl(var(--ck-site-muted)); }
.chart { display: block; width: 100%; height: auto; margin-top: 1.25rem; color: hsl(var(--ck-site-foreground)); }
.chart text { fill: hsl(var(--ck-site-muted)); font: 12px 'CK Body', system-ui, sans-serif; }
.chart .grid line { stroke: hsl(var(--ck-site-border)); }
.chart .area { fill: hsl(var(--ck-site-surface-2)); }
.chart .line { fill: none; stroke: currentColor; stroke-width: 2.5; }
.chart circle { fill: hsl(var(--ck-site-accent)); }
.bar-rows { margin: 1.25rem 0 0; padding: 0; list-style: none; }
.bar-rows li { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr) 4.5rem; align-items: center; gap: .75rem; margin: 0; padding: .35rem 0; font-size: .88rem; }
.bar-rows i { display: block; height: .6rem; background: hsl(var(--ck-site-foreground)); }
.bar-rows output { text-align: right; }
.table-scroll > .wide { min-width: 34rem; }
.candidate-table tr.is-blocked td { color: hsl(var(--ck-site-muted)); }
.candidate-table tr:not(.is-blocked) td:last-child { font-weight: 600; color: hsl(var(--ck-site-foreground)); }
.authority-table tr.is-selected th, .authority-table tr.is-selected td { box-shadow: inset 3px 0 hsl(var(--ck-site-accent)); }
.authority-table tr.is-selected td { box-shadow: none; color: hsl(var(--ck-site-foreground)); }
.draft-quote { margin: 1.25rem 0; }
.draft-quote figcaption { font: 600 .85rem/1.5 'CK Site', system-ui, sans-serif; color: hsl(var(--ck-site-foreground)); }
.draft-quote blockquote { margin: .4rem 0 0; }
.draft-quote mark { color: inherit; background: none; text-decoration: underline; text-decoration-color: hsl(var(--ck-site-accent)); text-decoration-thickness: 2px; text-underline-offset: .2em; }
.reading-article pre.brief-text { white-space: pre-wrap; }
@media (max-width: 640px) {
  .chart text { font-size: 20px; }
  .bar-rows li { grid-template-columns: 6rem minmax(0, 1fr) 3.5rem; }
}
