/* Inline SVG figures in Academy prose. The SVG carries only classes; every colour is a token here. */
.academy-figure { margin: var(--spacing-24) 0; }
.academy-figure--wide { overflow-x: auto; }
.academy-figure__svg { display: block; width: 100%; height: auto; font-family: var(--font-family-body); font-size: var(--font-size-12); }
.academy-figure--wide .academy-figure__svg { min-width: 40rem; }
.academy-figure figcaption { margin-top: var(--spacing-8); color: var(--text-secondary); font-size: var(--font-size-14); }

.academy-figure__strip { fill: var(--background-surface-2); stroke: var(--border-strong); stroke-width: 1; }
.academy-figure__gap { fill: var(--text-danger); }
.academy-figure__tick { stroke: var(--border-strong); stroke-width: 1; }
.academy-figure__axis { fill: var(--text-tertiary); }
.academy-figure__label { fill: var(--text-primary); }
.academy-figure__muted { fill: var(--text-secondary); }
.academy-figure__mono { font-family: var(--font-family-mono); }
.academy-figure__leader { stroke: var(--border-strong); stroke-width: 1; stroke-dasharray: 2 2; }
.academy-figure__node { fill: var(--background-base); stroke: var(--border-strong); stroke-width: 1; }
.academy-figure__node-title { fill: var(--text-primary); font-size: var(--font-size-14); font-weight: var(--font-weight-600); }
.academy-figure__arrow { stroke: var(--text-primary); stroke-width: 1.5; fill: none; }
.academy-figure__arrowhead { fill: var(--text-primary); }
.academy-figure__bar { fill: var(--text-secondary); }
.academy-figure__bar--accent { fill: var(--text-danger); }
.academy-figure__bar--faint { fill: var(--border-default); }
.academy-figure__range { fill: var(--border-strong); }
.academy-figure__point { fill: var(--text-danger); }
.academy-figure__read { fill: var(--text-secondary); }
.academy-figure__read-low { fill: var(--text-danger); }
.academy-figure__marker { stroke: var(--text-danger); stroke-width: 1.5; }
.academy-figure__grid { stroke: var(--border-subtle); stroke-width: 1; }
.academy-figure__line { stroke: var(--text-primary); stroke-width: 1.5; fill: none; }
.academy-figure__line--dashed { stroke-dasharray: 4 3; }
.academy-figure__line--accent { stroke: var(--text-danger); }
.academy-figure__band { fill: var(--border-default); opacity: 0.6; }
.academy-figure__pileup-mismatch { fill: var(--text-primary); font-size: 9px; font-weight: var(--font-weight-700); }
.academy-figure__pileup-low { fill: var(--text-danger); font-size: 9px; font-weight: var(--font-weight-700); }
.academy-figure__bar-label--inverse { fill: var(--background-base); }
/* Categorical series, one per population in module 6's PCA figure. The design system has no categorical chart
   colours and the clinical roles (benign, protective, risk factor, danger) must not stand in for them, so the series
   use neutral roles and the brand colour, and module_6_figures.rb gives them different marker shapes as well. */
.academy-figure__series--1 { stroke: var(--border-brand); }
.academy-figure__series--2 { stroke: var(--text-secondary); }
.academy-figure__series--3 { stroke: var(--text-tertiary); }
.academy-figure__series--4 { stroke: var(--text-primary); }
.academy-figure__series--5 { stroke: var(--text-tertiary); }
.academy-figure__dots { fill: none; stroke-width: 4; stroke-linecap: round; }
.academy-figure__glyphs { fill: none; stroke-width: 1.25; stroke-linecap: round; }
.academy-figure__ring { fill: none; stroke: var(--text-primary); stroke-width: 2; }
.academy-figure__halo { fill: none; stroke: var(--background-base); stroke-width: 6; }
.academy-figure__stems { fill: none; stroke: var(--text-secondary); stroke-width: 1.5; }
.academy-figure__box { fill: var(--text-secondary); fill-opacity: 0.35; stroke: var(--text-secondary); stroke-width: 1; }
.academy-figure__median { stroke: var(--text-primary); stroke-width: 2; }
.academy-figure__point--plain { fill: var(--text-primary); }
