Unify
Every app is the same system in its own colour. Pick a hue — the whole page re-themes as you drag — and copy the CSS into the app's globals.css.
/* app/globals.css */
@import "@nashyvan/unify/styles.css";
:root {
--accent-h: 185;
--accent-c: 0.12;
--accent-l-light: 0.5;
--accent-l-dark: 0.74;
--tone: 0.004;
}
/* ≈ #00736a light · #4dc0b3 dark */All derived colours (tints, rings, selection, glows, the info status) follow from these. Nothing else is themeable, on purpose.
| Variable | Default | What it does |
|---|---|---|
--accent-h | 258 | Accent hue, 0–360. Coready blue by default. |
--accent-c | 0.214 | Accent chroma (vividness). The dark theme uses 88% of it. |
--accent-l-light / -dark | 0.54 / 0.658 | Accent lightness per theme. Light: the largest value that keeps accent text AA on its tint. |
--accent-ink-light / -dark | white / near-black | Text on a filled accent. White passes for every preset in light mode. |
--tone | 0 | Chroma mixed into every grey (0–0.012), toward --tone-h (the accent hue). |
data-accent | — | A preset on <html>: blue, sky, indigo, violet, pink, orange, amber, green, teal, graphite. |
data-theme | — | Force light or dark; absent = follow the OS. Set by <ThemeScript>. |