| name | theme-customization |
| description | Customize or extend the theming system in kheMessage. Use when adding new themes, modifying colors, or enhancing theme switching. |
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:
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=light or ?theme=dark
- System preference:
prefers-color-scheme
- Toggle button:
#theme-toggle
Adding a New Theme
-
Define CSS variables:
html.new-theme {
--bg: #newcolor;
}
-
Update theme toggle logic in JavaScript
-
Add cursor files if needed
-
Test all UI elements
Custom Cursors
Cursors are loaded from:
windows_11_cursors_concept_by_jepricreations_densjkc/
├── light/
│ ├── arrow.cur
│ └── ...
└── dark/
├── arrow.cur
└── ...