/** * The design system, as data. * * Every visual constant this interface has ever agreed on already existed — it * was written once in the `:root` block of `index.html`, and then written again, * slightly differently, in each of the four modules that inject their own * stylesheet at runtime (`tools/godmode.ts`, `profile/webcamPanel.ts`, * `profile/editor.ts`, `media/officeScreenPanel.ts`). Those four cannot read * `index.html`'s custom properties at author time, so each of them carries a * fallback — `var(--s4, 16px)` — and the fallback is the copy that rots. A token * whose value moves in one file and not in five is a token that no longer means * anything. * * This module is the answer to that: the values live here, in TypeScript, where * a test can read them; `index.html`'s `:root` block is *generated from* this * file's text and asserted against it by `src/test/ui/tokens.test.ts`. The * injected stylesheets keep their `var(--x, fallback)` form — they must, because * a `