A run on an invented brief by SkillLift. Skill: color-expert (meodai/skill.color-expert, commit 5bf7c77, CC BY 4.0). Saltmere Tea House is a fictional shop in the fictional town of Saltmere.
Brief: "a warm and calm brand, one strong accent". Medium assumed: screen and printed menu.
| Name | OKLCH | Hex | Role |
|---|---|---|---|
| Oat milk | oklch(96% 0.018 85) | #F7F1E5 | surface (60%) |
| Sand | oklch(88% 0.04 75) | #E7D4BB | secondary surface (30%) |
| Kettle ink | oklch(27% 0.03 55) | #322318 | text |
| Persimmon | oklch(54% 0.16 40) | #B84412 | the one accent (10%) |
| Pair | Ratio |
|---|---|
| Kettle ink on Oat milk | 13.44 |
| Kettle ink on Sand | 10.46 |
| Persimmon on Oat milk | 4.82 (passes 4.5 body text) |
| Persimmon on Sand | 3.75 (large text only) |
| Oat milk on Persimmon | 4.82 |
| Kettle ink on Persimmon | 2.79 (do not use) |
Organize by character (pale/muted/deep/vivid/dark), not hue. Finding: hue is usually a weaker predictor of emotional response than chroma and lightness — a muted palette often reads as calm across many hues.
60% dominant color, 30% secondary, 10% accent. One color dominates to prevent "three equally-sized gorillas fighting."
A single saturated outlier on a balanced scheme is a focal device
Same character + varied lightness is often more readable. Same lightness regardless of hue is usually illegible.
accent := mostVivid(palette, { against: surface, minContrast: 4.5, not: [error, success] })
How the run applied these: three muted, low-chroma, warm colours (hue 55 to 85, chroma 0.018 to 0.04) carry the calm; Persimmon (chroma 0.16) is the single saturated outlier. Lightness is spread widely (96, 88, 27 and 54 percent) so text stays legible. Persimmon's lightness was lowered from 56 to 54 percent after the first hex failed the 4.5 minimum (4.46). The skill says to compute from the actual colour rather than from names, and to build in OKLCH; values were converted to sRGB hex by script and were all in gamut.
--ref-oat: #F7F1E5; --ref-sand: #E7D4BB; --ref-ink: #322318; --ref-persimmon: #B84412; --surface: var(--ref-oat); --surface-2: var(--ref-sand); --text: var(--ref-ink); --accent: var(--ref-persimmon);
Palette-colour credit: color-expert skill by meodai, CC BY 4.0.