Semantic tokens
Role-named mappings onto the primitives. Components read only these, which is what lets a tone context (ADR 0013) re-point a whole subtree without any component knowing. The resolved value under each swatch updates live when you toggle the theme — that is the light/dark behaviour these tokens encode.
Contrast between these pairs is not eyeballed: pnpm check:contrastmeasures all 180 of them across both modes and all five tones on every build. AA fails, AAA warns (ADR 0007, ADR 0032).
- --surface-default
……light var(--c-juli-yellow-50)dark var(--c-juli-teal-950) - --surface-elevated
……light var(--c-white)dark var(--c-juli-teal-900) - --text-default
……light var(--c-juli-teal-800)dark var(--c-juli-green-50) - --text-strong
……light var(--c-juli-teal-700)dark var(--c-juli-green-100) - --text-muted
……light var(--c-juli-green-700)dark var(--c-juli-green-400) - --border-subtle
……light var(--c-juli-neutral-200)dark var(--c-juli-neutral-800) - --focus-ring
……light var(--c-juli-teal-700)dark var(--c-juli-green-300) - --surface-action
……light var(--c-juli-green-400)dark var(--c-juli-green-500) - --text-on-action
……light var(--c-juli-teal-800)dark var(--c-juli-neutral-950) - --status-available-surface
……light var(--c-juli-green-200)dark var(--c-juli-green-900) - --status-available-text
……light var(--c-juli-green-900)dark var(--c-juli-green-300) - --status-reserved-surface
……light var(--c-juli-neutral-100)dark var(--c-juli-neutral-800) - --status-reserved-text
……light var(--c-juli-yellow-900)dark var(--c-juli-yellow-200) - --status-coming-soon-surface
……light var(--c-juli-teal-100)dark var(--c-juli-teal-700) - --status-coming-soon-text
……light var(--c-juli-teal-700)dark var(--c-juli-teal-100) - --status-let-surface
……light var(--c-juli-neutral-200)dark var(--c-juli-neutral-800) - --status-let-text
……light var(--c-juli-neutral-700)dark var(--c-juli-neutral-300) - --flag-new-surface
……light var(--c-juli-yellow-300)dark var(--c-juli-yellow-300) - --flag-new-text
……light var(--c-juli-neutral-950)dark var(--c-juli-neutral-950) - --flag-open-house-surface
……light var(--c-juli-green-300)dark var(--c-juli-green-300) - --flag-open-house-text
……light var(--c-juli-neutral-950)dark var(--c-juli-neutral-950) - --status-pill-border
……light transparentdark var(--c-juli-teal-700)