scheme: light — dark is a deliberate no-op until a dark ramp is approved (see README)

Account CSS v2 — component harness

v2 rules loaded above css/account.css, which sits in @layer legacy. Nothing below uses !important.

Buttons

Min tap target 44px by default — LAT-1627 found controls at 20–27px.

Tier tags — the layer proof

snapshot json deck brief

brief is the proof target: legacy styles .lib-tag.brief at 0-2-0 (blue #1d4ed8) and v2 does not define .brief at all — so it renders blue from legacy, which shows legacy really is loaded. e2e/css-v2-layer-proof.js then injects a v2 .lib-tag rule at 0-1-0 and asserts it wins anyway.

Status

Delivered Failed Queued not billed

Green means state, never brand. Danger is a chip or a link, never a filled button.

Tier 3 override hooks

Same component file, recoloured by an ancestor — no new CSS.

Toolbar — the LibPane chrome, on every list page

Clear all 18 results

Empty facets still render muted (manual §3). The toolbar is a container-query context — search takes a full row below 30rem of its own width, not the viewport's.

Facet panel

StatusClear
Delivered12
Failed3
Queued1
Tags land on new builds automatically.

Empty state

No analyses matchTry clearing a filter, or ask a new question.

Base elements

AnalysisRunsStatus
Did my variant win?1,284Delivered
Churn drivers by cohort96Failed

Numbers are tabular-nums by default; headers are the §2.2 mono micro-label.