Ballet as a scale
Eleven steps from #f7d5d4, built by moving lightness in OKLCh and keeping the hue where it is. Every step is gamut-mapped by giving up chroma, never by clipping channels — clipping is what turns a light blue purple.
| Stop | Hex | OKLCh L | Chroma | On white | On black | APCA on white | ΔE00 from the step above |
|---|---|---|---|---|---|---|---|
| 50 | #fff1f1 | 97.0% | 0.015 ·capped | 1.10:1 | 19.16:1 | 0 | — |
| 100 | #ffe3e2 | 93.8% | 0.031 ·capped | 1.21:1 | 17.32:1 | 10 | 5.9 |
| 200 | #eecccb | 87.4% | 0.038 | 1.48:1 | 14.15:1 | 23 | 5.1 |
| 300 | #d9b8b7 | 81.0% | 0.038 | 1.83:1 | 11.46:1 | 34 | 5.1 |
| 400 | #c4a4a3 | 74.6% | 0.038 | 2.29:1 | 9.16:1 | 45 | 5.5 |
| 500 | #af908f | 68.2% | 0.038 | 2.91:1 | 7.22:1 | 55 | 6.0 |
| 600 | #9b7d7c | 61.8% | 0.038 | 3.74:1 | 5.62:1 | 65 | 6.6 |
| 700 | #886a69 | 55.4% | 0.038 | 4.86:1 | 4.32:1 | 74 | 7.4 |
| 800 | #755857 | 49.0% | 0.038 | 6.38:1 | 3.29:1 | 82 | 6.9 |
| 900 | #4a3030 | 34.0% | 0.038 | 11.96:1 | 1.76:1 | 97 | 13.7 |
| 950 | #200a0a | 18.0% | 0.038 | 18.95:1 | 1.11:1 | 105 | 11.9 |
What is true of this ramp
- 10 of the 10 adjacent pairs differ by ΔE00 2 or more. Every step here is a step a reader can see.
- The tightest pair is 200 to300, at ΔE00 5.1.
- 2 steps had to give up chroma to stay inside sRGB — 50, 100. A wider display would show them more vividly.
- 4 steps clear 4.5:1 on white (700, 800, 900, 950), and 7 on black (50, 100, 200, 300, 400, 500, 600).
Harmonies from Ballet
complement
the hue directly opposite, at the same lightness. #c2e7e8 (+180°)
analogous
the two neighbours 30° either side. #f3d5e2 (+-30°), #f4d8c8 (+30°)
split complement
the two hues either side of the opposite, 30° apart from it. #c7e7da (+150°), #c6e4f3 (+210°)
triad
the circle divided in three. #d2e5cd (+120°), #d0dff8 (+240°)
tetrad
the circle divided in four. #dfe1c4 (+90°), #c2e7e8 (+180°), #dddbf7 (+270°)
The ramp as CSS
:root {
--ballet-50: #fff1f1;
--ballet-100: #ffe3e2;
--ballet-200: #eecccb;
--ballet-300: #d9b8b7;
--ballet-400: #c4a4a3;
--ballet-500: #af908f;
--ballet-600: #9b7d7c;
--ballet-700: #886a69;
--ballet-800: #755857;
--ballet-900: #4a3030;
--ballet-950: #200a0a;
}