refactor(styles): extract token layer, kill the global neon leak
Phase 1 Step 4. Move the palette out of globals.css :root into a new
styles/tokens.css: a neutral/professional default on :root (landing +
content) and the ParVagues neon/dark palette scoped to
[data-theme="parvagues"], set on the app/parvagues/layout.tsx wrapper.
The ~90 var(--…) consumers resolve against that ancestor scope, so
theming is one attribute — no per-component edits.
- globals.css: drop the :root palette + hardcoded dark html/body bg;
body now reads var(--surface)/var(--text-primary).
- parvagues.module.css: remove the dead duplicate .colorRoot/.colorContainer.
- main.css: replace the body:not(:has(.parvagues-root)) element-style hack
with a positive .site-shell scope on the content Layout container; links
use the new --link token.
- delete dead styles/dunbar.module.css.
Verified: prod build green (14 routes, ParVagues ISR intact); fresh-dev
smoke all 200; data-theme scoping confirmed (landing neutral, parvagues neon).
Co-Authored-By:
Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Showing
styles/dunbar.module.css
deleted
100644 → 0
styles/tokens.css
0 → 100644
Please
register
or
sign in
to comment