Theme Customization Skill
Customize the theming system in kheMessage.
When to Use
- •Adding new color themes
- •Modifying existing theme colors
- •Enhancing theme switching behavior
- •Adding theme persistence
- •Creating custom cursor themes
Current Theme System
Themes are defined using CSS custom properties:
css
html, html.light {
--bg: #fafaf9;
--text: #1c1917;
--border: rgba(28, 25, 23, 0.1);
/* ... */
}
html.dark {
--bg: #1c1917;
--text: #fafaf9;
/* ... */
}
Theme Variables
| Variable | Purpose |
|---|---|
--bg | Background color |
--bg-elevated | Elevated surface (cards, dropdowns) |
--text | Primary text color |
--text-muted | Secondary text color |
--border | Border color |
--link | Link color |
--link-hover | Link hover color |
--code-bg | Code block background |
--hover | Hover state background |
--cursor-* | Custom cursor URLs |
Theme Switching
Theme is controlled via:
- •URL parameter:
?theme=lightor?theme=dark - •System preference:
prefers-color-scheme - •Toggle button:
#theme-toggle
Adding a New Theme
- •
Define CSS variables:
csshtml.new-theme { --bg: #newcolor; /* ... all variables */ } - •
Update theme toggle logic in JavaScript
- •
Add cursor files if needed
- •
Test all UI elements
Custom Cursors
Cursors are loaded from:
code
windows_11_cursors_concept_by_jepricreations_densjkc/
├── light/
│ ├── arrow.cur
│ └── ...
└── dark/
├── arrow.cur
└── ...