Ocean theme
Style sheet path:
node_modules/eunomia-elements/styles/themes/prebuilt-themes/ocean/eunomia-ocean.theme.scss
Class names:
eunomia-ocean-theme
eunomia-ocean-theme--dark
Sass import:
@include eunomia-ocean-theme();
@include eunomia-ocean-dark-theme();
On this site, select "Ocean" from the toolbar's theme
picker to preview it live: every swatch below is instead scoped to
this theme directly (via data-brand="ocean"), so it
always shows Ocean's real colors regardless of what's
active in the toolbar.
Primary & secondary
light
| 50 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 950 | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Primary | #80b4c3 | #65a4b7 | #4a94aa | #287f9a | #1a7793 | #0b6e8c | #0a6784 | #0a617b | #085168 | #074558 | #063949 |
| Secondary | #92e0d9 | #7bdad1 | #64d3c9 | #47cbbf | #3bc8ba | #2ec4b6 | #2bb8ab | #28aca0 | #229187 | #1d7b73 | #18665f |
dark
| 50 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 950 | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Primary | #416d7a | #4e8494 | #5c9bae | #6eb8ce | #75c4dc | #7dd1ea | #84d3ec | #8cd6ed | #9edcf0 | #ade2f2 | #bbe6f4 |
| Secondary | #256761 | #2c7d75 | #34938a | #3eaea4 | #42b9ae | #46c6ba | #52c9be | #5dcdc3 | #76d5cc | #8bdbd4 | #9fe1db |
Grey scale
Shared shape across every theme; only the primary/secondary hue above actually changes per brand.
light
| 0 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 |
|---|---|---|---|---|---|---|---|---|---|
grey-0 | grey-100 | grey-200 | grey-300 | grey-400 | grey-500 | grey-600 | grey-700 | grey-800 | grey-900 |
dark
| 0 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 |
|---|---|---|---|---|---|---|---|---|---|
grey-0 | grey-100 | grey-200 | grey-300 | grey-400 | grey-500 | grey-600 | grey-700 | grey-800 | grey-900 |
Semantic states
Success/warning/critical/info: identical across every theme (they're
brand-independent), but not across modes. -100 is the opaque
anchor (computed separately per mode so it clears WCAG AA against
that mode's surface), and -90/-50/-30 are alpha overlays of the
light-mode anchor, reading correctly on both surfaces from the same
declaration. See
light
| 100 | 90 | 50 | 30 | |
|---|---|---|---|---|
| Success | ||||
| Warning | ||||
| Critical | ||||
| Info |
dark
| 100 | 90 | 50 | 30 | |
|---|---|---|---|---|
| Success | ||||
| Warning | ||||
| Critical | ||||
| Info |
Neutral tokens
Surface, text, and border tokens, also shared across every theme.
light
--eun-surface-color | |
--eun-text-color | |
--eun-text-secondary | |
--eun-border-color | |
--eun-disabled-color |
dark
--eun-surface-color | |
--eun-text-color | |
--eun-text-secondary | |
--eun-border-color | |
--eun-disabled-color |
Surface tint
Unlike the neutral tokens above, these mix a small amount of this
theme's own primary-500 into the surface/border/hover tokens — opt-in
for when a component wants to read as "Ocean" rather than
neutral. See
light
--eun-surface-tint | |
--eun-border-tint | |
--eun-content-hover-tint | |
--eun-content-pressed-tint |
dark
--eun-surface-tint | |
--eun-border-tint | |
--eun-content-hover-tint | |
--eun-content-pressed-tint |
Decorative scales
Static accents (tags, charts, illustrations): 7 steps, brand-independent
but not mode-independent, each hue's dark variant inverts the light
scale's lightness curve so 100/700 stay usable as a
background/foreground pair on a dark surface. Full chart on
light
| 100 | 200 | 300 | 400 | 500 | 600 | 700 | |
|---|---|---|---|---|---|---|---|
| Red | |||||||
| Purple | |||||||
| Yellow | |||||||
| Blue | |||||||
| Green | |||||||
| Pink |
dark
| 100 | 200 | 300 | 400 | 500 | 600 | 700 | |
|---|---|---|---|---|---|---|---|
| Red | |||||||
| Purple | |||||||
| Yellow | |||||||
| Blue | |||||||
| Green | |||||||
| Pink |
All decorative/state/grey/neutral tables above render with this
theme's own compiled CSS (via data-brand="ocean"),
not the toolbar's current selection. See