/* GENERATED by tools/build_ui_assets.py from editor/static/palettes.json.
 * Do not edit: change the JSON and rerun the script.
 *
 * Two independent axes on <html>: data-theme (light | dark) and
 * data-palette. theme.js sets both before first paint.
 *
 * The first two blocks are the indigo palette, so a page whose
 * script never ran still gets a complete, readable token set rather than
 * an empty one. Every palette block below outranks them.
 *
 * A descendant carrying data-theme is a THEME ISLAND: it takes that mode
 * in the page's palette (see build_ui_assets.py). */

:root {
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, 'JetBrains Mono', Menlo, Consolas, monospace;
  --radius-xs: 5px;
  --radius-sm: 7px;
  --radius-md: 9px;
  --radius: 11px;
  --radius-lg: 14px;
}

:root, [data-theme='dark'] {
  color-scheme: dark;
  --stage: #0b1020;
  --bg: #0f172a;
  --panel: #172136;
  --raised: #212c43;
  --line: #33405a;
  --text: #eef1f7;
  --muted: #9aa5ba;
  --accent: #a5b4fc;
  --accentbg: #2b3163;
  --on-accent: #11142a;
  --accent2: #5fd4ea;
  --success: #7fd6a8;
  --successbg: #1d3b30;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #9098a9;
  --field: #0f172a;
  --link: #a5b4fc;
  --accent-hover: #b3c0fc;
  --accent2-hover: #79dbed;
  --danger-hover: #f3aaaa;
  --accent2bg: #233e53;
  --accentline: #5e6a99;
  --accent2line: #3b7a90;
  --successline: #4b7c6f;
  --dangerline: #845e68;
  --warningline: #847156;
  --scrollbar: #4f5b72;
  --selection: #4d5981;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
:root[data-theme='light'], [data-theme='light'] {
  color-scheme: light;
  --stage: #e9ebf2;
  --bg: #f3f4f8;
  --panel: #ffffff;
  --raised: #eceef5;
  --line: #d7dae4;
  --text: #1c2133;
  --muted: #555c74;
  --accent: #4f46e5;
  --accentbg: #eeedfd;
  --on-accent: #ffffff;
  --accent2: #0e7490;
  --success: #1f7a4a;
  --successbg: #e6f2ea;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7a7e8c;
  --field: #f3f4f8;
  --link: #4f46e5;
  --accent-hover: #443cc5;
  --accent2-hover: #0c647c;
  --danger-hover: #952d2d;
  --accent2bg: #e7f1f4;
  --accentline: #a7a2f2;
  --accent2line: #86bac8;
  --successline: #8fbca4;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #bbbec9;
  --selection: #cecbf8;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='light'][data-palette='indigo'],
html[data-palette='indigo'] [data-theme='light'] {
  color-scheme: light;
  --stage: #e9ebf2;
  --bg: #f3f4f8;
  --panel: #ffffff;
  --raised: #eceef5;
  --line: #d7dae4;
  --text: #1c2133;
  --muted: #555c74;
  --accent: #4f46e5;
  --accentbg: #eeedfd;
  --on-accent: #ffffff;
  --accent2: #0e7490;
  --success: #1f7a4a;
  --successbg: #e6f2ea;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7a7e8c;
  --field: #f3f4f8;
  --link: #4f46e5;
  --accent-hover: #443cc5;
  --accent2-hover: #0c647c;
  --danger-hover: #952d2d;
  --accent2bg: #e7f1f4;
  --accentline: #a7a2f2;
  --accent2line: #86bac8;
  --successline: #8fbca4;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #bbbec9;
  --selection: #cecbf8;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='indigo'],
html[data-palette='indigo'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #0b1020;
  --bg: #0f172a;
  --panel: #172136;
  --raised: #212c43;
  --line: #33405a;
  --text: #eef1f7;
  --muted: #9aa5ba;
  --accent: #a5b4fc;
  --accentbg: #2b3163;
  --on-accent: #11142a;
  --accent2: #5fd4ea;
  --success: #7fd6a8;
  --successbg: #1d3b30;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #9098a9;
  --field: #0f172a;
  --link: #a5b4fc;
  --accent-hover: #b3c0fc;
  --accent2-hover: #79dbed;
  --danger-hover: #f3aaaa;
  --accent2bg: #233e53;
  --accentline: #5e6a99;
  --accent2line: #3b7a90;
  --successline: #4b7c6f;
  --dangerline: #845e68;
  --warningline: #847156;
  --scrollbar: #4f5b72;
  --selection: #4d5981;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='forest'],
html[data-palette='forest'] [data-theme='light'] {
  color-scheme: light;
  --stage: #e7edea;
  --bg: #f4f6f5;
  --panel: #ffffff;
  --raised: #eaf0ec;
  --line: #d3dcd7;
  --text: #23342a;
  --muted: #566e60;
  --accent: #24764b;
  --accentbg: #eaf4ee;
  --on-accent: #ffffff;
  --accent2: #1d6a78;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7b8880;
  --field: #f4f6f5;
  --link: #24764b;
  --accent-hover: #1f6540;
  --accent2-hover: #195b67;
  --danger-hover: #952d2d;
  --accent2bg: #e8f0f2;
  --accentline: #92bba5;
  --accent2line: #8eb4bc;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #b9c3bd;
  --selection: #c2d9cd;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='forest'],
html[data-palette='forest'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #141a16;
  --bg: #171f1a;
  --panel: #1f2b24;
  --raised: #28382f;
  --line: #3e4f45;
  --text: #e8f0eb;
  --muted: #a5b8ad;
  --accent: #8bd2b2;
  --accentbg: #284b37;
  --on-accent: #111820;
  --accent2: #8ccfe0;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #93a098;
  --field: #171f1a;
  --link: #8bd2b2;
  --accent-hover: #9ed9be;
  --accent2-hover: #9ed7e5;
  --danger-hover: #f3aaaa;
  --accent2bg: #304542;
  --accentline: #557e6b;
  --accent2line: #567d82;
  --successline: #557e6b;
  --dangerline: #88625f;
  --warningline: #88764c;
  --scrollbar: #58675e;
  --selection: #486a5a;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='ocean'],
html[data-palette='ocean'] [data-theme='light'] {
  color-scheme: light;
  --stage: #e7eaed;
  --bg: #f4f5f6;
  --panel: #ffffff;
  --raised: #eaecf0;
  --line: #d3d7dc;
  --text: #232a34;
  --muted: #56606e;
  --accent: #245fa8;
  --accentbg: #eaeef4;
  --on-accent: #ffffff;
  --accent2: #0e7490;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7b8088;
  --field: #f4f5f6;
  --link: #245fa8;
  --accent-hover: #1f5290;
  --accent2-hover: #0c647c;
  --danger-hover: #952d2d;
  --accent2bg: #e7f1f4;
  --accentline: #92afd3;
  --accent2line: #86bac8;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #b9bdc3;
  --selection: #c2d2e7;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='ocean'],
html[data-palette='ocean'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #14161a;
  --bg: #171a1f;
  --panel: #1f242b;
  --raised: #282f38;
  --line: #3e454f;
  --text: #e8ebf0;
  --muted: #a5adb8;
  --accent: #9cc7ff;
  --accentbg: #28374b;
  --on-accent: #111820;
  --accent2: #7fd8e8;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #9398a0;
  --field: #171a1f;
  --link: #9cc7ff;
  --accent-hover: #acd0ff;
  --accent2-hover: #93deec;
  --danger-hover: #f3aaaa;
  --accent2bg: #2e4149;
  --accentline: #5e7695;
  --accent2line: #4f7e8a;
  --successline: #557b6e;
  --dangerline: #885f62;
  --warningline: #887250;
  --scrollbar: #585e67;
  --selection: #4e627c;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='teal'],
html[data-palette='teal'] [data-theme='light'] {
  color-scheme: light;
  --stage: #e7eded;
  --bg: #f4f6f6;
  --panel: #ffffff;
  --raised: #eaf0f0;
  --line: #d3dcdc;
  --text: #233434;
  --muted: #566e6e;
  --accent: #136e70;
  --accentbg: #eaf4f4;
  --on-accent: #ffffff;
  --accent2: #245fa8;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7b8888;
  --field: #f4f6f6;
  --link: #136e70;
  --accent-hover: #105f60;
  --accent2-hover: #1f5290;
  --danger-hover: #952d2d;
  --accent2bg: #e9eff6;
  --accentline: #89b6b8;
  --accent2line: #92afd3;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #b9c3c3;
  --selection: #bdd6d7;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='teal'],
html[data-palette='teal'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #141a1a;
  --bg: #171f1f;
  --panel: #1f2b2b;
  --raised: #283838;
  --line: #3e4f4f;
  --text: #e8f0f0;
  --muted: #a5b8b8;
  --accent: #81d6d3;
  --accentbg: #284b4b;
  --on-accent: #111820;
  --accent2: #9cc7ff;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #93a0a0;
  --field: #171f1f;
  --link: #81d6d3;
  --accent-hover: #95ddda;
  --accent2-hover: #acd0ff;
  --danger-hover: #f3aaaa;
  --accent2bg: #33444d;
  --accentline: #50807f;
  --accent2line: #5e7995;
  --successline: #557e6e;
  --dangerline: #886262;
  --warningline: #887650;
  --scrollbar: #586767;
  --selection: #446c6b;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='violet'],
html[data-palette='violet'] [data-theme='light'] {
  color-scheme: light;
  --stage: #eae7ed;
  --bg: #f5f4f6;
  --panel: #ffffff;
  --raised: #edeaf0;
  --line: #d7d3dc;
  --text: #2b2334;
  --muted: #61566e;
  --accent: #7149ad;
  --accentbg: #eeeaf4;
  --on-accent: #ffffff;
  --accent2: #a53f6c;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #817b88;
  --field: #f5f4f6;
  --link: #7149ad;
  --accent-hover: #613f95;
  --accent2-hover: #8e365d;
  --danger-hover: #952d2d;
  --accent2bg: #f6ecf0;
  --accentline: #b8a4d6;
  --accent2line: #d29fb5;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #bdb9c3;
  --selection: #d7cce8;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='violet'],
html[data-palette='violet'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #17141a;
  --bg: #1b171f;
  --panel: #251f2b;
  --raised: #2f2838;
  --line: #463e4f;
  --text: #ece8f0;
  --muted: #aea5b8;
  --accent: #c6adf4;
  --accentbg: #38284b;
  --on-accent: #111820;
  --accent2: #f0a7c6;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #9993a0;
  --field: #1b171f;
  --link: #c6adf4;
  --accent-hover: #cfbaf6;
  --accent2-hover: #f2b5cf;
  --danger-hover: #f3aaaa;
  --accent2bg: #453544;
  --accentline: #766690;
  --accent2line: #8b6378;
  --successline: #58786e;
  --dangerline: #8b5c62;
  --warningline: #8b7050;
  --scrollbar: #5f5867;
  --selection: #625577;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='rose'],
html[data-palette='rose'] [data-theme='light'] {
  color-scheme: light;
  --stage: #ede7ea;
  --bg: #f6f4f5;
  --panel: #ffffff;
  --raised: #f0eaec;
  --line: #dcd3d7;
  --text: #34232a;
  --muted: #6e5660;
  --accent: #a53f6c;
  --accentbg: #f4eaee;
  --on-accent: #ffffff;
  --accent2: #7149ad;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #887b80;
  --field: #f6f4f5;
  --link: #a53f6c;
  --accent-hover: #8e365d;
  --accent2-hover: #613f95;
  --danger-hover: #952d2d;
  --accent2bg: #f1edf7;
  --accentline: #d29fb5;
  --accent2line: #b8a4d6;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #c3b9bd;
  --selection: #e6c9d6;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='rose'],
html[data-palette='rose'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #1a1416;
  --bg: #1f171a;
  --panel: #2b1f24;
  --raised: #38282f;
  --line: #4f3e45;
  --text: #f0e8eb;
  --muted: #b8a5ad;
  --accent: #f0a7c6;
  --accentbg: #4b2837;
  --on-accent: #111820;
  --accent2: #c6adf4;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #a09398;
  --field: #1f171a;
  --link: #f0a7c6;
  --accent-hover: #f2b5cf;
  --accent2-hover: #cfbaf6;
  --danger-hover: #f3aaaa;
  --accent2bg: #443645;
  --accentline: #8e6375;
  --accent2line: #78668c;
  --successline: #5b786b;
  --dangerline: #8e5c5f;
  --warningline: #8e704c;
  --scrollbar: #67585e;
  --selection: #765362;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='amber'],
html[data-palette='amber'] [data-theme='light'] {
  color-scheme: light;
  --stage: #edebe7;
  --bg: #f6f5f4;
  --panel: #ffffff;
  --raised: #f0eeea;
  --line: #dcd9d3;
  --text: #342e23;
  --muted: #6e6556;
  --accent: #93600c;
  --accentbg: #f4f0ea;
  --on-accent: #ffffff;
  --accent2: #136e70;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #88847b;
  --field: #f6f5f4;
  --link: #93600c;
  --accent-hover: #7e530a;
  --accent2-hover: #105f60;
  --danger-hover: #952d2d;
  --accent2bg: #e7f0f1;
  --accentline: #c9b085;
  --accent2line: #89b6b8;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #c3bfb9;
  --selection: #e1d2bb;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='amber'],
html[data-palette='amber'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #1a1814;
  --bg: #1f1c17;
  --panel: #2b271f;
  --raised: #383228;
  --line: #4f483e;
  --text: #f0ede8;
  --muted: #b8b1a5;
  --accent: #edc17b;
  --accentbg: #4b3e28;
  --on-accent: #111820;
  --accent2: #81d6d3;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #a09b93;
  --field: #1f1c17;
  --link: #edc17b;
  --accent-hover: #f0cb90;
  --accent2-hover: #95ddda;
  --danger-hover: #f3aaaa;
  --accent2bg: #39433c;
  --accentline: #8c744d;
  --accent2line: #567e79;
  --successline: #5b7c68;
  --dangerline: #8e605c;
  --warningline: #8e744a;
  --scrollbar: #676158;
  --selection: #756242;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
html[data-theme='light'][data-palette='slate'],
html[data-palette='slate'] [data-theme='light'] {
  color-scheme: light;
  --stage: #e7eaed;
  --bg: #f4f5f6;
  --panel: #ffffff;
  --raised: #eaedf0;
  --line: #d3d7dc;
  --text: #232b34;
  --muted: #56616e;
  --accent: #526579;
  --accentbg: #eaeef4;
  --on-accent: #ffffff;
  --accent2: #245fa8;
  --success: #24764b;
  --successbg: #e7f1e8;
  --danger: #ad3434;
  --dangerbg: #fbeaea;
  --warning: #94600f;
  --warningbg: #fbf0da;
  --on-danger: #ffffff;
  --on-warning: #ffffff;
  --line-strong: #7b8188;
  --field: #f4f5f6;
  --link: #526579;
  --accent-hover: #475768;
  --accent2-hover: #1f5290;
  --danger-hover: #952d2d;
  --accent2bg: #e9eff6;
  --accentline: #a9b2bc;
  --accent2line: #92afd3;
  --successline: #92bba5;
  --dangerline: #d69a9a;
  --warningline: #cab087;
  --scrollbar: #b9bdc3;
  --selection: #cfd4d9;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 18px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 8px 28px rgba(16, 24, 40, 0.12);
  --shadow-lg: 0 24px 60px rgba(16, 24, 40, 0.22);
  --overlay: rgba(20, 24, 40, 0.38);
}
html[data-theme='dark'][data-palette='slate'],
html[data-palette='slate'] [data-theme='dark'] {
  color-scheme: dark;
  --stage: #14171a;
  --bg: #171b1f;
  --panel: #1f252b;
  --raised: #282f38;
  --line: #3e464f;
  --text: #e8ecf0;
  --muted: #a5aeb8;
  --accent: #b6c7d9;
  --accentbg: #28384b;
  --on-accent: #111820;
  --accent2: #9cc7ff;
  --success: #8bd2b2;
  --successbg: #2b493d;
  --danger: #f19a9a;
  --dangerbg: #4a2a2d;
  --warning: #f1c175;
  --warningbg: #4a3c24;
  --on-danger: #1a0f10;
  --on-warning: #1c1406;
  --line-strong: #9399a0;
  --field: #171b1f;
  --link: #b6c7d9;
  --accent-hover: #c2d0df;
  --accent2-hover: #acd0ff;
  --danger-hover: #f3aaaa;
  --accent2bg: #333f4d;
  --accentline: #6a7682;
  --accent2line: #5e7695;
  --successline: #557c6e;
  --dangerline: #886062;
  --warningline: #887350;
  --scrollbar: #585f67;
  --selection: #58636d;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 4px 18px rgba(0, 0, 0, 0.18);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 24px 64px rgba(0, 0, 0, 0.62);
  --overlay: rgba(0, 0, 0, 0.6);
}
