Give Activity a genuine ninth colour: --tt-orange
All checks were successful
Deploy / deploy (push) Successful in 24s

Requested directly: "can we make activity orange". The locked eight
palette had already run out at six legible text colours (Watch's blue
was the last one, and it's already a contrast exception); a dithered
swatch alone read as unfinished, and dithering the word itself
rendered as illegible static — tried and reverted this session.

--tt-orange (#ff8000) is defined in base.css right after the locked
eight, clearly marked as a deliberate, acknowledged one-off exception
to "eight colours, no ninth" rather than a secretly-smuggled-in tint.
Same flat text+swatch treatment as every other fastext key. Updated
CLAUDE.md's discipline 1 and DESIGN.md's Locked Eight Rule to name the
exception explicitly, so it reads as a documented decision next time
someone audits the palette, not a bug.
This commit is contained in:
Barely Removable 2026-08-30 09:52:19 -07:00
parent 9fba4f210e
commit 517559a460
5 changed files with 55 additions and 39 deletions

View file

@ -66,7 +66,12 @@ the user's Unraid home server. Server-side project directory is still named
than a variation:
1. **No in-between tone.** There are eight colours (the teletext
primaries). A mid-grey is an ordered dither of two of them, never a
ninth colour.
ninth colour — except `--tt-orange`, the one deliberate, acknowledged
break in `base.css`, added when the fastext nav ran out of legible
colours for its eighth destination (Activity) and dithering the
word itself proved illegible. Treat a *second* ninth colour showing
up as the regression this discipline warns about; this one is a
one-time, explained exception, not a precedent.
2. **No enclosure.** Nothing is surrounded by a border or a box. There is
zero `border-radius` in the codebase. Grouping is a coloured field row
(`.tt-field`), indentation, and weight. This is the single thing the
@ -106,23 +111,27 @@ the user's Unraid home server. Server-side project directory is still named
other nav, so it needs no scroll to reach. The index overrides it
with `HOME_FASTEXT`, the original four-entry row, as its own closing
line, since its body already lists every destination once. Every
destination gets its own distinct mark. Six get a flat colour, text
and swatch both: Index/Library/Discover/System keep their `r`/`g`/
`y`/`c` shortcut; Requests gets magenta/`--pending` with no
shortcut (a deliberate fit — Requests already is "waiting on a
human" everywhere else magenta appears); Watch gets blue (`.k-blue`)
with no shortcut. Blue is a known exception to the app's own 4.5:1
destination gets its own distinct flat colour, text and swatch
both: Index/Library/Discover/System keep their `r`/`g`/`y`/`c`
shortcut; Requests gets magenta/`--pending` with no shortcut (a
deliberate fit — Requests already is "waiting on a human"
everywhere else magenta appears); Watch gets blue (`.k-blue`) with
no shortcut. Blue is a known exception to the app's own 4.5:1
text-contrast bar (it clears ~2.4:1 on black) — kept anyway, at the
visitor's request, over the alternative of a swatch-only accent
that read as unfinished next to six fully-coloured neighbours.
Activity gets an ordered-dither swatch (`.k-dither`, same mechanism
as `--dither-mid`) instead of a flat colour — the one other legal
way to get a distinct mark without a ninth hue. Settings alone
keeps plain ink with no swatch treatment — deliberately, as the one
page with no live status of its own. Whichever entry matches the
current page renders as a `.fastext-here` span instead of a link —
a page linking to itself did nothing, so it isn't offered as a
click.
that read as unfinished next to its fully-coloured neighbours.
Activity gets `--tt-orange` (`.k-orange`) — a genuine ninth colour,
the one destination that breaks "eight colours, no ninth"
outright, defined and explained in `base.css` right after the
locked eight. It's there because the palette ran out at six
(dithering a swatch alone read as unfinished, and dithering the
word itself renders illegible) and the visitor wanted every
destination to look different, not merely as different as eight
colours allow. Settings alone keeps plain ink — deliberately, as
the one page with no live status of its own. Whichever entry
matches the current page renders as a `.fastext-here` span instead
of a link — a page linking to itself did nothing, so it isn't
offered as a click.
- **Nothing is clipped, hidden, or sticky.** All seven page numbers and
every fastext entry stay visible at every width, reflowing to another
row rather than scrolling, truncating, or folding into a menu. No