1 Commits

Author SHA1 Message Date
Elie Habib
6f6102e5a7 feat(brief): swap sienna rust for two-strength WM mint (Option B palette) (#3178)
* feat(brief): swap sienna rust for two-strength WM mint (Option B palette)

The only off-brand color in the product was the brief's sienna rust
(#8b3a1f) accent. Every other surface — /pro landing, dashboard,
dashboard panels — uses the WM mint green (#4ade80). Swapping the
brief's accent to the brand mint makes the magazine read as a sibling
of /pro rather than a separate editorial product, while keeping the
magazine-grade serif typography and even/odd page inversion intact.

Implementation (user picked Option B from brief-palette-playground.html):
  --sienna  : #8b3a1f -> #3ab567   muted mint for LIGHT pages (readable
                                   on #fafafa without the bright-mint
                                   glare of a pure-brand swap)
  --mint    :         + #4ade80   bright WM mint for DARK pages
                                   (matches /pro exactly)
  --cream   : #f1e9d8 -> #fafafa   unified with --paper; one crisp white
  --cream-ink: #1a1612 -> #0a0a0a  crisper contrast on the new paper

Accent placement (unchanged structurally — only colors swapped):
  - Digest running heads, labels, blockquote rule, stats dividers,
    end-marker rule, signal/thread tags: all muted mint on light
  - Story source line: newly mint (was unstyled bone/ink at 0.6 opacity);
    two-strength — muted on light stories, bright on dark
  - Logo ekg dot: mint on every page so the brand 'signal' pulse
    threads through the whole magazine

No layout changes. No HTML structure changes. Only color constants +
a ~20-line CSS addition for story-source + ekg-dot accents.

165/165 brief tests pass (renderer contract unchanged — envelope shape
identical, only computed styles differ). Both tsconfigs typecheck clean.

* fix(brief): darken light-page mint to pass WCAG AA + fix digest ekg-dot

Two P2 findings on PR #3178 review.

1. Digest ekg-dot used bright #4ade80 on a #fafafa background,
   contradicting the code comment that said 'light pages use the
   muted mint'. The rule was grouped with .cover and .story.dark
   (both ink backgrounds) when it should have been grouped with
   .story.light (paper background). Regrouped.

2. #3ab567 on #fafafa tests at ~2.31:1 — fails WCAG AA 4.5:1 for
   every text size and fails the 3:1 large-text floor. The PR called
   this a rollback trigger; contrast math says it would fail every
   meaningful text usage (mono running heads, source lines, labels,
   footer captions). Swapped --sienna from #3ab567 to #1f7a3f —
   tested at ~4.90:1 on #fafafa, passes AA for normal text.

   Kept the variable name '--sienna' for backwards compat (every
   .digest rule references it). The hue stays recognisably mint-
   family (green dominant) so the brand relationship with #4ade80
   on dark pages is still clear to a reader. Dark-page mint is
   unchanged — #4ade80 on #0a0a0a is ~11.4:1, passes AAA.

Playground (brief-palette-playground.html) updated to match so
future iterations work against the accessible value.

165/165 brief tests pass. Both tsconfigs typecheck clean.
2026-04-18 20:50:16 +04:00