Colour
Every semantic colour token, in light and in dark, read from @nizivo/tokens at build time.
Components read only semantic colours (--nz-bg-*, --nz-text-*, --nz-icon-*, --nz-border-*,
--nz-chart-*). Each one is a single light-dark() value declared once on :root, so it resolves in
whichever theme scope it is used. Each swatch below is painted by the token itself inside a
data-nz-theme="light" or "dark" scope; the values and primitive names come from
@nizivo/tokens/dist/tokens.css. Text and icon colours are shown on --nz-bg-surface, except the
on-* and inverse ones, which are shown on the background they are made for (--nz-text-on-brand
on --nz-bg-brand).
Some values differ from the Figma file on purpose, to meet WCAG 2.2 AA contrast. They are listed with their reasons and expiry dates on Deviations from Figma.
Semantic colours
Backgrounds
| Token | Light | Dark |
|---|---|---|
--nz-bg-accent | #c6e06alime/300 | #afd146lime/400 |
--nz-bg-accent-hover | #afd146lime/400 | #c6e06alime/300 |
--nz-bg-accent-pressed | #8db22blime/500 | #dcec9clime/200 |
--nz-bg-accent-subtle | #f6fae8lime/50 | #0a211agreen/950 |
--nz-bg-brand | #1a573agreen/700 | #4c9e71green/400 |
--nz-bg-brand-hover | #15452fgreen/800 | #79b993green/300 |
--nz-bg-brand-muted | #d3e8dagreen/100 | #103324green/900 |
--nz-bg-brand-pressed | #103324green/900 | #aad3b9green/200 |
--nz-bg-brand-subtle | #e9f3ecgreen/50 | #0a211agreen/950 |
--nz-bg-canvas | #f6f7f4neutral/50 | #101311neutral/950 |
--nz-bg-code | #181b19neutral/900 | #101311neutral/950 |
--nz-bg-code-elevated | #202421neutral/850 | #202421neutral/850 |
--nz-bg-critical | #b93a23red/600 | #b93a23red/600 |
--nz-bg-critical-hover | #8f2c1ared/700 | #8f2c1ared/700 |
--nz-bg-critical-subtle | #fdf1eered/50 | #202421neutral/850 |
--nz-bg-disabled | #eef0ecneutral/100 | #2b302cneutral/800 |
--nz-bg-hover | #f6f7f4neutral/50 | #2b302cneutral/800 |
--nz-bg-info-subtle | #eef3fcblue/50 | #202421neutral/850 |
--nz-bg-inverse | #181b19neutral/900 | #fffneutral/0 |
--nz-bg-inverse-elevated | #202421neutral/850 | #eef0ecneutral/100 |
--nz-bg-muted | #eef0ecneutral/100 | #2b302cneutral/800 |
--nz-bg-pressed | #eef0ecneutral/100 | #414741neutral/700 |
--nz-bg-scrim | rgb(24 27 25 / 0.32) | rgb(0 0 0 / 0.6) |
--nz-bg-subtle | #fbfbf9neutral/25 | #151816neutral/925 |
--nz-bg-success-subtle | #e9f3ecgreen/50 | #0a211agreen/950 |
--nz-bg-surface | #fffneutral/0 | #181b19neutral/900 |
--nz-bg-surface-raised | #fffneutral/0 | #202421neutral/850 |
--nz-bg-warning-subtle | #fdf6e6amber/50 | #202421neutral/850 |
Text
| Token | Light | Dark |
|---|---|---|
--nz-text-brand | #1a573agreen/700 | #79b993green/300 |
--nz-text-code | #f6f7f4neutral/50 | #f6f7f4neutral/50 |
--nz-text-code-muted | #9ea59cneutral/400 | #9ea59cneutral/400 |
--nz-text-critical | #b93a23red/600 | #e47962red/400 |
--nz-text-disabled | #9ea59cneutral/400 | #596058neutral/600 |
--nz-text-info | #2e58b0blue/600 | #7098e0blue/400 |
--nz-text-inverse | #fffneutral/0 | #181b19neutral/900 |
--nz-text-inverse-accent | #c6e06alime/300 | #1a573agreen/700 |
--nz-text-on-accent | #0a211agreen/950 | #0a211agreen/950 |
--nz-text-on-brand | #fffneutral/0 | #0a211agreen/950 |
--nz-text-on-critical | #fffneutral/0 | #fffneutral/0 |
--nz-text-on-dark | #fffneutral/0 | #fffneutral/0 |
--nz-text-primary | #181b19neutral/900 | #f6f7f4neutral/50 |
--nz-text-secondary | #414741neutral/700 | #cbd0c8neutral/300 |
--nz-text-success | #216c47green/600 | #79b993green/300 |
--nz-text-tertiary | #596058neutral/600 | #9ea59cneutral/400 |
--nz-text-warning | #7c560aamber/700 | #d99a1bamber/500 |
Icons
| Token | Light | Dark |
|---|---|---|
--nz-icon-brand | #216c47green/600 | #79b993green/300 |
--nz-icon-critical | #d6492fred/500 | #e47962red/400 |
--nz-icon-info | #2e58b0blue/600 | #7098e0blue/400 |
--nz-icon-inverse | #fffneutral/0 | #181b19neutral/900 |
--nz-icon-primary | #2b302cneutral/800 | #eef0ecneutral/100 |
--nz-icon-secondary | #747c73neutral/500 | #9ea59cneutral/400 |
--nz-icon-success | #2e8358green/500 | #79b993green/300 |
--nz-icon-warning | #b07b0eamber/600 | #d99a1bamber/500 |
Borders
| Token | Light | Dark |
|---|---|---|
--nz-border-brand | #216c47green/600 | #4c9e71green/400 |
--nz-border-control | #828a81neutral/450 | #747c73neutral/500 |
--nz-border-control-hover | #747c73neutral/500 | #9ea59cneutral/400 |
--nz-border-critical | #d6492fred/500 | #d6492fred/500 |
--nz-border-default | #e2e5dfneutral/200 | #414741neutral/700 |
--nz-border-focus | #2e8358green/500 | #79b993green/300 |
--nz-border-strong | #cbd0c8neutral/300 | #596058neutral/600 |
--nz-border-subtle | #eef0ecneutral/100 | #2b302cneutral/800 |
--nz-border-warning | #b07b0eamber/600 | #d99a1bamber/500 |
Charts
| Token | Light | Dark |
|---|---|---|
--nz-chart-cat-1 | #1a573agreen/700 | #1a7d4eviz-green/600 |
--nz-chart-cat-2 | #6b8a1elime/600 | #88a02aviz-lime/600 |
--nz-chart-cat-3 | #1689a8viz-teal/500 | #3e9fc4viz-teal/400 |
--nz-chart-critical | #d6492fred/500 | #d6492fred/500 |
--nz-chart-grid | #eef0ecneutral/100 | #202421neutral/850 |
--nz-chart-negative | #d6492fred/500 | #d6492fred/500 |
--nz-chart-neutral | #747c73neutral/500 | #9ea59cneutral/400 |
--nz-chart-primary | #216c47green/600 | #79b993green/300 |
--nz-chart-secondary | #4c9e71green/400 | #2e8358green/500 |
--nz-chart-success | #2e8358green/500 | #79b993green/300 |
--nz-chart-tertiary | #6b8a1elime/600 | #afd146lime/400 |
--nz-chart-track | #eef0ecneutral/100 | #2b302cneutral/800 |
--nz-chart-warning | #b07b0eamber/600 | #d99a1bamber/500 |
Elevation colours
| Token | Light | Dark |
|---|---|---|
--nz-elevation-highlight | transparent | transparent |
--nz-elevation-ring | transparent | rgb(255 255 255 / 0.08) |
Primitive palette
The semantic colours point at these primitives (--nz-p-*). Primitives are private: they can change in
any release, so never use them in your own CSS.