christin #10
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
FediSuite/FediSuite-Docker-Image!10
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "christin"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Christin: dark mode looks "flat" compared to light mode ("wow, sieht gut aus" for light; dark needs "mehr Kontraste, aber trotzdem pastelligere Farben"). Confirmed with real screenshots of the logged-in app (Dashboard, Übersicht, Composer, Konten, Einstellungen) — every card was nearly indistinguishable from the page background. Root causes, found by comparing the dark vs. light token pairs directly: 1. --color-surface (#0a0a14) and --color-surface-elevated (#12121e) were only ~8-10 RGB steps apart — imperceptible at normal monitor brightness. Light mode's pair (white card on off-white page) has a much bigger visible step. 2. --shadow-elevation-1 in dark mode is rgba(0,0,0,0.35) — a black shadow literally cannot out-contrast a background that's already near-black, so it contributed nothing. Light mode's shadow (a dark warm rgba on a bright page) is clearly visible by contrast, which is why light mode's cards read as "floating" and dark mode's didn't. 3. Light mode's body background already layers two soft radial-gradient glows over its base color (html[data-theme='light'] body); dark mode's body was one completely flat hex value with zero ambient variation — a real, if easy to miss, contributor to "richness". 4. status-good/chart-2/chart-4 were the most desaturated colors in the dark palette (WCAG contrast 5.0-5.9 against the old elevated surface) next to already-vivid chart-1/chart-3/status-warning/-critical. Fixes (all scoped to dark/default tokens only — every html[data-theme= 'light'] block is untouched, and light-mode resets were added anywhere a dark-only addition could otherwise leak through): - --color-surface-elevated: #12121e -> #171c30 (clearly separable step). - --color-surface-sunken / --color-border-subtle opacity bumped slightly (0.04->0.055, 0.08->0.1) so nested card-inset rows and the new card border read clearly too. - --shadow-elevation-1 (dark): deepened to rgba(0,0,0,0.45) at a larger spread — still mostly a depth cue now, not the primary edge. - .glass-card/.glass-card-hover: new 1px border(--color-border-subtle) in the @utility, since a shadow alone can't carry the edge on dark backgrounds the way it does on light ones. Explicitly reset to `border: none` under html[data-theme='light'] so light mode's already-good borderless look is byte-for-byte unchanged. - Dark body background gained the same two-radial-gradient ambient glow treatment light mode already had (dark-appropriate accent/blue tones at low opacity, still resolving to near-black overall). - --color-accent-wash / -wash-hover (dark only): 0.14/0.24 -> 0.17/0.28 for slightly more presence on wash-styled buttons, icon backgrounds, and selected states. - --color-status-good/#0ca30c->#22c55e, --color-chart-2/#199e70->#16c98a, --color-chart-4/#c98500->#e0a400: brighter, more saturated dark-mode values for the three most washed-out tokens. All three re-checked against the new --color-surface-elevated with a WCAG contrast script (7.4-8.9, comfortably past the old values' 5.0-5.9 and past AA/AAA) — chart-1/chart-3/accent/status-warning/status-critical were already vivid enough and left alone. Note: this only affects token-driven usages (stat-card icons, badges, borders) — the actual recharts line/ bar colors are separately hardcoded literal hex per the pre-existing "same hex in both themes" simplification (Phase 2) and are out of scope here. Verified against the real compiled CSS, not just on paper: ran the Vite dev server locally, used Playwright to render both the Auth screen and an injected mock stat-card/chart-card grid (mirroring Christin's actual Dashboard screenshots) in both themes. Dark now shows a clearly readable card edge and ambient depth; light mode screenshot is pixel-identical to its prior look (no border, same white cards). npx tsc --noEmit, npm run build, npm run test (130 tests / 25 files) all green. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>