:root, :root[data-theme="light"] {
  color-scheme: light;
  --bg: #fcfcfc;
  --sidebar: #f5f5f5;
  --surface: #fff;
  --composer-border: #e3e3e3;
  --soft: #f1f1f1;
  --hover: #e5e5e5;
  --text: #292925;
  --secondary: #62615b;
  --muted: #7d7b73;
  --border: #e3e3e3;
  --strong-border: #ccc;
  --accent: #ad6046;
  --accent-soft: #f2e6de;
  --inverse: #fff;
  --button: #30312c;
  --code: #f2f2f2;
  --danger: #b44439;
  --shadow: 0 4px 24px #24221506, 0 1px 3px #24221504;
  --floating-shadow: 0 10px 40px #24221514, 0 2px 8px #24221508;
  --user-bubble: #f5f5f5;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #141414;
  --sidebar: #141414;
  --surface: #1c1c1c;
  --composer-border: #333;
  --soft: #242424;
  --hover: #2b2b2b;
  --text: #ededed;
  --secondary: #b8b8b8;
  --muted: #999;
  --border: #333;
  --strong-border: #555;
  --accent: #d19577;
  --accent-soft: #42352d;
  --inverse: #141414;
  --button: #ededed;
  --code: #101010;
  --danger: #ed9b90;
  --shadow: 0 4px 24px #0000000a;
  --floating-shadow: 0 12px 40px #0004;
  --user-bubble: #242424;
}
:root[data-theme="warm"] {
  color-scheme: light;
  --bg: #faf9f6;
  --sidebar: #f0efeb;
  --surface: #fff;
  --composer-border: #fff;
  --soft: #f1f0ec;
  --hover: #e7e6e0;
  --text: #292925;
  --secondary: #62615b;
  --muted: #7d7b73;
  --border: #e3e1d9;
  --strong-border: #cbc8be;
  --accent: #ad6046;
  --accent-soft: #f2e6de;
  --inverse: #fff;
  --button: #30312c;
  --code: #f2f1ed;
  --danger: #b44439;
  --shadow: 0 4px 24px #24221506, 0 1px 3px #24221504;
  --floating-shadow: 0 10px 40px #24221514, 0 2px 8px #24221508;
  --user-bubble: #f1f0ec;
}
:root[data-theme="warm-dark"] {
  color-scheme: dark;
  --bg: #222320;
  --sidebar: #1b1c19;
  --surface: #2a2b27;
  --composer-border: #393a33;
  --soft: #2d2e29;
  --hover: #34352f;
  --text: #e9e8e1;
  --secondary: #b9b8af;
  --muted: #99998e;
  --border: #393a33;
  --strong-border: #55564b;
  --accent: #d19577;
  --accent-soft: #42352d;
  --inverse: #24251f;
  --button: #e5e5da;
  --code: #1d1e1b;
  --danger: #ed9b90;
  --shadow: 0 4px 24px #0000000a;
  --floating-shadow: 0 12px 40px #0004;
  --user-bubble: #2d2e29;
}
:root[data-theme="black"] {
  color-scheme: dark;
  --bg: #000;
  --sidebar: #000;
  --surface: #000;
  --composer-border: #292929;
  --soft: #141414;
  --hover: #222;
  --text: #ededed;
  --secondary: #b8b8b8;
  --muted: #999;
  --border: #292929;
  --strong-border: #555;
  --accent: #d19577;
  --accent-soft: #42352d;
  --inverse: #000;
  --button: #ededed;
  --code: #000;
  --danger: #ed9b90;
  --shadow: 0 4px 24px #0000000a;
  --floating-shadow: 0 12px 40px #0004;
  --user-bubble: #141414;
}
:root[data-theme="midnight"] {
  color-scheme: dark;
  --bg: #0f172a;
  --sidebar: #0c1322;
  --surface: #172033;
  --composer-border: #334155;
  --soft: #1e293b;
  --hover: #29364c;
  --text: #e2e8f0;
  --secondary: #b0bfd0;
  --muted: #94a3b8;
  --border: #334155;
  --strong-border: #526580;
  --accent: #7cb4ff;
  --accent-soft: #203859;
  --inverse: #0f172a;
  --button: #e2e8f0;
  --code: #0c1322;
  --danger: #f5a1a1;
  --shadow: 0 4px 24px #0000000a;
  --floating-shadow: 0 12px 40px #0004;
  --user-bubble: #1e293b;
}
:root[data-theme="nord"] {
  color-scheme: dark;
  --bg: #2e3440;
  --sidebar: #292e39;
  --surface: #343b49;
  --composer-border: #4c566a;
  --soft: #3b4252;
  --hover: #434c5e;
  --text: #eceff4;
  --secondary: #c5cdda;
  --muted: #a7b2c4;
  --border: #4c566a;
  --strong-border: #67768c;
  --accent: #88c0d0;
  --accent-soft: #3b5364;
  --inverse: #2e3440;
  --button: #eceff4;
  --code: #272d38;
  --danger: #e6a0a6;
  --shadow: 0 4px 24px #0000000a;
  --floating-shadow: 0 12px 40px #0004;
  --user-bubble: #3b4252;
}
:root[data-theme="sepia"] {
  color-scheme: light;
  --bg: #f4ecd8;
  --sidebar: #eae0c9;
  --surface: #fbf5e8;
  --composer-border: #d8cab0;
  --soft: #eae0c9;
  --hover: #e0d3b8;
  --text: #44392b;
  --secondary: #6e604d;
  --muted: #82715a;
  --border: #d8cab0;
  --strong-border: #b9a789;
  --accent: #97623a;
  --accent-soft: #e9d5b8;
  --inverse: #fbf5e8;
  --button: #4e4030;
  --code: #eae0c9;
  --danger: #a53f35;
  --shadow: 0 4px 24px #24221506, 0 1px 3px #24221504;
  --floating-shadow: 0 10px 40px #24221514, 0 2px 8px #24221508;
  --user-bubble: #eae0c9;
}
