Adds thin HTTP routes for profile CRUD and colour-scheme updates (GET/PATCH /api/settings, GET/POST /api/settings/profiles, DELETE /api/settings/profiles/:name, POST /api/settings/profiles/:name/activate) following the existing CSS-route pattern in api.rs, with activate hot-swapping the running engine's declared params/metrics so switching profiles needs no restart. Builds out the NavMenu frontend with Settings (colour scheme picker, CSS import/list/delete) and Presets (list/create/switch/delete profiles with declaration counts) panels, and a useSettingsPanel hook that applies the active colour scheme and imported CSS to the document live. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XFUNZwCvz3kcod3352ZR2o
32 lines
808 B
CSS
32 lines
808 B
CSS
@import "tailwindcss";
|
|
|
|
:root {
|
|
color-scheme: light dark;
|
|
}
|
|
|
|
html,
|
|
body,
|
|
#root {
|
|
height: 100%;
|
|
margin: 0;
|
|
}
|
|
|
|
body {
|
|
@apply bg-neutral-950 text-neutral-200;
|
|
font: 14px/1.5 ui-monospace, Consolas, monospace;
|
|
}
|
|
|
|
/*
|
|
* Ticket 011: colour-scheme picker support. Most of the app's Tailwind
|
|
* classes are hardcoded to a dark palette (e.g. `bg-neutral-950` above)
|
|
* rather than using `dark:`-variant classes, so there isn't a full light
|
|
* theme to switch to yet. This override (keyed off the `light` class
|
|
* `useSettingsPanel` toggles on `<html>`) gives "Light" a real, if minimal,
|
|
* visible effect on the base page colours; a proper light theme would need
|
|
* the rest of the app's components reworked to use theme-aware classes.
|
|
*/
|
|
html.light body {
|
|
background-color: #f5f5f4;
|
|
color: #1c1917;
|
|
}
|