Midnight Slate
Dark Mode SurfacesDeep midnight surface tones providing subtle elevation layers (canvas-card, canvas-elevated) without chromatic pollution.
About the Midnight Slate palette
Deep midnight surface tones providing subtle elevation layers (canvas-card, canvas-elevated) without chromatic pollution. The scale is anchored at hue 250 in OKLCH, so every step keeps the same hue while lightness moves in perceptually even steps from 50 to 950. The 500 step (#687077) is your base color. Shades 500-950 pass WCAG 2.1 AA against white and shades 50, 100, 200, 300, 400 pass against black, so use the light end for backgrounds and the dark end for text on light surfaces (or vice versa). Each value is copy-ready as oklch(), HEX, RGB or HSL.
11 colors · click a card to copy
cart writes to --color-midnight-slate-*
Shade Step Breakdown (50 to 950)
| Swatch | Shade Step | OKLCH CSS Value | sRGB Fallback | RGB | HSL | WCAG on Black | WCAG on White | Gamut |
|---|---|---|---|---|---|---|---|---|
| 50 | oklch(97.0% 0.004 250.0) | #f3f5f8 | rgb(243, 245, 247) | hsl(211.17, 22.18%, 96.21%) | 19.23:1 | 1.09:1 | sRGB | |
| 100 | oklch(93.0% 0.007 250.0) | #e4e8ed | rgb(228, 232, 237) | hsl(211.15, 19.05%, 91.16%) | 17.06:1 | 1.23:1 | sRGB | |
| 200 | oklch(86.0% 0.011 250.0) | #ccd2d8 | rgb(204, 210, 216) | hsl(211.13, 13.94%, 82.32%) | 13.78:1 | 1.52:1 | sRGB | |
| 300 | oklch(76.0% 0.015 250.0) | #aab2ba | rgb(170, 178, 186) | hsl(211.09, 10.65%, 69.93%) | 9.79:1 | 2.15:1 | sRGB | |
| 400 | oklch(64.0% 0.015 250.0) | #868d95 | rgb(134, 141, 149) | hsl(211.08, 6.88%, 55.42%) | 6.26:1 | 3.36:1 | sRGB | |
| 500 | oklch(54.0% 0.015 250.0) | #687077 | rgb(104, 112, 119) | hsl(211.06, 6.71%, 43.84%) | 4.17:1 | 5.03:1 | sRGB | |
| 600 | oklch(45.0% 0.015 250.0) | #4f565e | rgb(79, 86, 94) | hsl(211.03, 8.3%, 33.86%) | 2.83:1 | 7.43:1 | sRGB | |
| 700 | oklch(37.0% 0.015 250.0) | #3a4148 | rgb(58, 65, 72) | hsl(211, 10.55%, 25.38%) | 2.03:1 | 10.35:1 | sRGB | |
| 800 | oklch(28.0% 0.013 250.0) | #24292f | rgb(36, 41, 47) | hsl(210.97, 12.96%, 16.33%) | 1.43:1 | 14.65:1 | sRGB | |
| 900 | oklch(20.0% 0.015 250.0) | #11171d | rgb(17, 23, 29) | hsl(210.83, 25.8%, 8.94%) | 1.16:1 | 18.04:1 | sRGB | |
| 950 | oklch(13.0% 0.007 250.0) | #06070a | rgb(6, 7, 10) | hsl(213.25, 25.91%, 3.02%) | 1.04:1 | 20.14:1 | sRGB |
Tailwind v4 @theme Snippet for Midnight Slate
Copy into global.css
@theme {
--color-midnight-slate-50: oklch(97.0% 0.004 250.0);
--color-midnight-slate-100: oklch(93.0% 0.007 250.0);
--color-midnight-slate-200: oklch(86.0% 0.011 250.0);
--color-midnight-slate-300: oklch(76.0% 0.015 250.0);
--color-midnight-slate-400: oklch(64.0% 0.015 250.0);
--color-midnight-slate-500: oklch(54.0% 0.015 250.0);
--color-midnight-slate-600: oklch(45.0% 0.015 250.0);
--color-midnight-slate-700: oklch(37.0% 0.015 250.0);
--color-midnight-slate-800: oklch(28.0% 0.013 250.0);
--color-midnight-slate-900: oklch(20.0% 0.015 250.0);
--color-midnight-slate-950: oklch(13.0% 0.007 250.0);
}Convert Midnight Slate shades
Working with these shades in another format? Use the matching converter — the same values you see above, converted instantly with live gamut detection.