:root,
:root[data-theme="blue"],
.theme-preview[data-palette="blue"] {
  color-scheme: light;
  --bg: #f4f7fb;
  --surface: #ffffff;
  --warm: #f7faff;
  --sidebar-bg: #eaf0f8;
  --ink: #223047;
  --text-secondary: #46556a;
  --muted: #52647b;
  --line: #d9e2ed;
  --accent: #285caa;
  --accent-strong: #194782;
  --accent-soft: #e4eefc;
  --on-accent: #ffffff;
  --hover-bg: #e5edf7;
  --featured-bg: #edf4ff;
  --green: #286145;
  --green-soft: #e7f3eb;
  --orange: #b97026;
  --danger: #a13f38;
  --danger-soft: #fbece9;
  --focus: #507bb6;
  --toast-bg: #243449;
  --toast-ink: #ffffff;
  --undo-ink: #c8e0ff;
  --shadow: 0 14px 38px #1421350d;
  --accent-shadow: 0 5px 14px #285caa26;
  --dialog-shadow: 0 20px 60px #14213540;
  --backdrop: #14213580;
}

:root[data-theme="forest"],
.theme-preview[data-palette="forest"] {
  color-scheme: light;
  --bg: #f2f7f4;
  --surface: #ffffff;
  --warm: #f7faf8;
  --sidebar-bg: #e8f0eb;
  --ink: #21382d;
  --text-secondary: #42594c;
  --muted: #54685b;
  --line: #d5e2da;
  --accent: #24694d;
  --accent-strong: #184c37;
  --accent-soft: #deeee4;
  --on-accent: #ffffff;
  --hover-bg: #e3eee7;
  --featured-bg: #eaf4ed;
  --green: #286145;
  --green-soft: #e4f1e8;
  --orange: #a86b21;
  --danger: #a13f38;
  --danger-soft: #fbece9;
  --focus: #438366;
  --toast-bg: #233c2f;
  --toast-ink: #ffffff;
  --undo-ink: #bce8ce;
  --shadow: 0 14px 38px #173c2a0d;
  --accent-shadow: 0 5px 14px #24694d26;
  --dialog-shadow: 0 20px 60px #173c2a40;
  --backdrop: #16302580;
}

:root[data-theme="amber"],
.theme-preview[data-palette="amber"] {
  color-scheme: light;
  --bg: #fbf5ee;
  --surface: #fffdf9;
  --warm: #fff9f1;
  --sidebar-bg: #f3e9dc;
  --ink: #3e2d24;
  --text-secondary: #645044;
  --muted: #745e4f;
  --line: #e8d9c8;
  --accent: #a24c24;
  --accent-strong: #7f3517;
  --accent-soft: #f6e4d4;
  --on-accent: #ffffff;
  --hover-bg: #f2e6d8;
  --featured-bg: #fff0df;
  --green: #366441;
  --green-soft: #e8efdf;
  --orange: #a8641c;
  --danger: #a13f38;
  --danger-soft: #fbe9e3;
  --focus: #ac643c;
  --toast-bg: #483326;
  --toast-ink: #ffffff;
  --undo-ink: #f4d1ac;
  --shadow: 0 14px 38px #4b301a0d;
  --accent-shadow: 0 5px 14px #a24c2426;
  --dialog-shadow: 0 20px 60px #4b301a40;
  --backdrop: #38271980;
}

:root[data-theme="plum"],
.theme-preview[data-palette="plum"] {
  color-scheme: light;
  --bg: #f7f6f2;
  --surface: #ffffff;
  --warm: #fbfaf7;
  --sidebar-bg: #f3f2ee;
  --ink: #28262c;
  --text-secondary: #5f5b58;
  --muted: #6c6661;
  --line: #e7e3dd;
  --accent: #72556d;
  --accent-strong: #5b3e55;
  --accent-soft: #eee7f0;
  --on-accent: #ffffff;
  --hover-bg: #ebe9e4;
  --featured-bg: #fbf3ef;
  --green: #426d54;
  --green-soft: #e5f0e9;
  --orange: #ac6c39;
  --danger: #9e4740;
  --danger-soft: #f8e9e6;
  --focus: #91708d;
  --toast-bg: #493347;
  --toast-ink: #ffffff;
  --undo-ink: #e9cbe6;
  --shadow: 0 14px 38px #3c2d390d;
  --accent-shadow: 0 5px 14px #72556d26;
  --dialog-shadow: 0 20px 60px #3d283340;
  --backdrop: #30283080;
}

:root[data-theme="night"],
.theme-preview[data-palette="night"] {
  color-scheme: dark;
  --bg: #101722;
  --surface: #192332;
  --warm: #202d3e;
  --sidebar-bg: #141e2c;
  --ink: #e5edf6;
  --text-secondary: #c0cddd;
  --muted: #a3b3c7;
  --line: #344357;
  --accent: #8ebdff;
  --accent-strong: #b2d1ff;
  --accent-soft: #233c5c;
  --on-accent: #11233d;
  --hover-bg: #27364a;
  --featured-bg: #1c3047;
  --green: #8fd5b2;
  --green-soft: #1b3b32;
  --orange: #ecb76e;
  --danger: #ffaaa5;
  --danger-soft: #432d34;
  --focus: #8ebdff;
  --toast-bg: #d9e7fa;
  --toast-ink: #11233d;
  --undo-ink: #164d93;
  --shadow: 0 14px 38px #00000033;
  --accent-shadow: 0 5px 14px #00000026;
  --dialog-shadow: 0 20px 60px #00000066;
  --backdrop: #020711b3;
}
