Components · Feedback
Three shapes for “how far along.” A determinate progress bar pairs a track with an accent fill and a live percent — for a task with a known total (importing the NVDA roster). <ProgressSteps> is the numbered stepper for an ordered flow: completed · current · pending, with the colored trail stopping at “you are here.” And a compact circular ring puts a percent in a badge-sized footprint. All determinate; each labels itself for assistive tech and never leans on hue alone.
The bar is a --surface-3 track holding an accent fill set by width:%, with the number mirrored as aria-valuenow on role="progressbar". A stalled/degraded run swaps the fill to warn and says so in the sub-label — the state never rides color alone.
A real <ol>. Completed steps fill accent and swap the number for a check; the connector after a completed step turns accent so the trail stops at the current step. Current is a filled accent circle showing its number, ringed in accent-soft and carrying aria-current="step". Pending stay muted surface-3 with a hairline border.
Two concentric <circle>s on a 36×36 viewBox at r=15.9155 (circumference ≈ 100), so stroke-dasharray="N 100" reads straight as a percent. Rotated -90° to start at 12 o’clock; round cap. The whole badge is a role="progressbar" — full uses the good hue and a check, not just a filled ring.
--surface-3 track + accent fill (width:%). Mirror the number in aria-valuenow on role="progressbar" (min 0 / max 100).ProgressStep[] — each { label, status }, status ∈ completed | current | pending. Order defines the run and the numbering. Real <ol>.completed — the colored trail stops at the current step (“the trail behind you is done”).accent-soft; carries aria-current="step". Completed swaps the number for a check.<circle>s, r=15.9155 so circumference ≈ 100 → stroke-dasharray="N 100". Rotate -90°, round cap. Wrap in role="progressbar".Source · ProgressSteps.tsx (status union · connector-done-after-completed · aria-current="step"), the app’s determinate progress bar & circular ring · palette --accent / --good / --warn · design-system/feedback.