A good dark theme is a second design, not a filter. Depth, contrast and colour all behave differently on a dark ground, and the naive inversion gets each of them wrong.
Never pure black, never pure white
Pure black next to white text is harsh and causes halation - the text seems to bleed. We use a near-black ground and near-white text, which is calmer to read for long stretches.
Elevation is lightness, not shadow
Shadows barely read on a dark background. Surfaces closer to the viewer get lighter instead. Our card is a translucent white layer over the base, so it works on any background.
Saturated colours get louder
A brand colour that is comfortable on white can vibrate on black. Ours needed a lightened tint for text - the raw brand magenta failed contrast on our own cards.
Check both, every time
- Every colour pair measured for contrast in both themes
- Images and logos that assume a white background
- Disabled states, which usually vanish entirely