Most light modes are apologies. A product is designed dark, a toggle is added, the palette flips, and the result feels like a photographic negative of the real thing — technically present, visibly secondary.
We decided the two themes were two rooms.
Dark is the observatory. OLED graphite, and the signal green as emission — light the interface gives off. The hero's particle iris uses additive blending there: particles accumulate brightness the way lamps do, and the atmosphere is a single glow breathing from the forty-five-degree axis. Depth comes from darkness having somewhere to go.
Light is the laboratory. Paper white falling into the pale-lime tint we measured from the 2005 light wallpaper — the heritage quoted directly in the gradient. Green behaves as pigment there: printed, exact, a step darker so the paper can carry it. The same particle scene switches to normal blending and fades toward the paper instead of toward black; what glowed in the observatory reads as engraving in the laboratory. Depth comes from clarity and hairlines, because shadow on white is just dirt.
The token layer is what makes two designed rooms affordable. Both themes
resolve from one source file into scheme-neutral names — a component asks for
surface or accent-text and never knows which room it is in. Exactly one
component is allowed to know: the hero scene, which receives the resolved
theme and selects its designed rendering rather than mutating colors. That
exception is written down, which is what makes it an exception instead of a
leak.
The machine keeps both rooms honest. Twenty-three contrast pairs are asserted in the test suite across both schemes; during hardening, the muted text color passed dark by six thousandths of a ratio point. We moved it a full step and added the margin to the tests. A theme that passes by rounding error has not passed.
The success criterion was never symmetry. It was that nobody should be able to tell which theme we designed first.