Solved, Not Picked
I have picked colours for twenty years the way everyone does: by looking.
Last night I looked at everything I have shipped, side by side, thirteen screenshots on one sheet. Two blues: a violet on every product, and the company's own blue only in the favicons. Four type systems, one of them naming a serif that never loaded, so Georgia had been standing in for it for months. Three behaviours in the dark: one site followed the system, one forced black, one had no dark at all. The company page was grey where the marks were drawn on ivory. And em dashes in the titles, the tell of a machine writing, on pages that are supposed to be a person's.
None of it was wrong on its own. Together it said: nobody is home.
The system I already had. I had written a colour system for myself, nilam, the sapphire. It is not a palette. You give it one hue and it solves ninety-four colours from it, then proves them: every text against every surface, every status against every other status, under ordinary sight and under the three kinds of colour blindness, 582 assertions in one gamut and 582 in the wider one. It answers in 149 milliseconds. I had it, and I had not pointed it at my own company.
What the prover said. I gave it the company blue's hue, 266. Everything passed but one line. Under tritanopia, the rare blindness to blue and yellow, the brand colour and the "done" green landed 0.0773 apart in a space where 0.09 is the floor. The two colours a person most needs to tell apart, a button and its confirmation, would have looked the same to someone who cannot see blue well. I would never have found that by looking. It is not a colour my eye has.
The pin. The fix was old knowledge from two of the largest design systems on earth, and I had read it without doing it. Radix: the brand colour is the ninth step of a twelve-step scale, the solid you paint buttons with, and you pin it there. Material: the dark theme does not reuse the colour, it derives a lighter tone from it. So nilam learned to take a hex instead of a hue. The company blue, #1634C2, is pinned as step nine in the light: 9.11 to 1 against white, and the tritanopia gap opens from 0.0773 to 0.1997, twice the floor, with nine of the ten brand pairs wider than before. In the dark the same blue sits at 1.6 to 1 against the page, useless, so the dark takes a glow the solver derives, lighter, near the blue of the disc in the company's own mark. Nothing was chosen. Everything was checked.
A colour you picked can only be defended. A colour that passed can be shown.
Then the rest. One theme folder, forty lines of CSS and a rulebook, copied whole into every surface the way a favicon is. One typeface, Inter, loaded this time, 48 kilobytes for the Latin. One icon set. Both modes everywhere, the choice remembered. And a rule I had been breaking in public: a build now fails if an em dash turns up in the pages it produces. Seven pages, measured signed out in a throwaway browser on a phone profile: five at 100 on accessibility, best practices and search on the first pass, and the two that fell short, a drop zone with no name and links told apart by colour alone, were fixed the same day. Measured again tonight, after the fixes: all seven at 100.
What I left out. The research said skip, and I skipped: tokens per component, six levels of shadow, sixteen durations, spring physics, a pipeline to build tokens. A senior person at one of those companies would call this a small system. It is. It fits in one folder, and I can prove every colour in it.
I still look. I looked at every screen again this morning. But looking is the last check now, not the first, and the eye that finds the failure is not mine.
The blue is the one I already had. What changed is that it can fail now, and it did not.