CSS Variables
| Variable | Purpose |
|---|---|
--bg-primary | Main background color |
--bg-secondary | Secondary background |
--glass | Semi-transparent overlay background |
--text-primary | Main text color |
--text-secondary | Muted text color |
--accent | Highlight/selection color |
--border | Border color |
Brightness System
The brightness slider (0-100) adjusts the background:| Value | Result |
|---|---|
| 0 | Pure black (#000000) |
| 50 | Medium gray (#808080) |
| 100 | Pure white (#FFFFFF) |
Design Tokens
Located intheme/designTokens.js:
- Component-specific styling (card shadows, border radius)
- Spacing scales
- Typography scales
Theme Guidelines
Never hardcode colors
Use
var(--text-primary) not 'white'Test both extremes
Check appearance at brightness 0 and 100
Use glass for overlays
var(--glass) provides consistent transparencyAccent for highlights
var(--accent) for selection, focus statesTheme-Aware Components
ThemeProvider
TheThemeProvider component:
- Wraps the entire application
- Provides brightness state
- Updates CSS variables when brightness changes
- Located in
theme/ThemeProvider.jsx