/* =========================================================================
   Theme definitions — 10 VS Code-inspired palettes
   Each theme sets CSS custom properties on body.theme-<name>
   ========================================================================= */

/* 1. Dark+ (VS Code default dark) */
body.theme-dark-plus {
    --bg-primary: #1e1e1e;
    --bg-secondary: #252526;
    --bg-card: #2d2d2d;
    --text-primary: #d4d4d4;
    --text-secondary: #808080;
    --accent: #007acc;
    --accent-hover: #1a8ad4;
    --border-color: #3c3c3c;
    --shadow-color: #000000;
    --success: #4ec9b0;
    --error: #f44747;
    --warning: #cca700;
}

/* 2. Light+ (VS Code default light) */
body.theme-light-plus {
    --bg-primary: #ffffff;
    --bg-secondary: #f3f3f3;
    --bg-card: #ffffff;
    --text-primary: #1e1e1e;
    --text-secondary: #616161;
    --accent: #007acc;
    --accent-hover: #005999;
    --border-color: #1e1e1e;
    --shadow-color: #1e1e1e;
    --success: #008000;
    --error: #cd3131;
    --warning: #bf8803;
}

/* 3. Monokai */
body.theme-monokai {
    --bg-primary: #272822;
    --bg-secondary: #1e1f1c;
    --bg-card: #3e3d32;
    --text-primary: #f8f8f2;
    --text-secondary: #75715e;
    --accent: #a6e22e;
    --accent-hover: #b8f33a;
    --border-color: #49483e;
    --shadow-color: #000000;
    --success: #a6e22e;
    --error: #f92672;
    --warning: #e6db74;
}

/* 4. Dracula */
body.theme-dracula {
    --bg-primary: #282a36;
    --bg-secondary: #21222c;
    --bg-card: #44475a;
    --text-primary: #f8f8f2;
    --text-secondary: #6272a4;
    --accent: #bd93f9;
    --accent-hover: #caa4fa;
    --border-color: #6272a4;
    --shadow-color: #191a21;
    --success: #50fa7b;
    --error: #ff5555;
    --warning: #f1fa8c;
}

/* 5. Solarized Dark */
body.theme-solarized-dark {
    --bg-primary: #002b36;
    --bg-secondary: #073642;
    --bg-card: #073642;
    --text-primary: #839496;
    --text-secondary: #586e75;
    --accent: #268bd2;
    --accent-hover: #2aa0f0;
    --border-color: #586e75;
    --shadow-color: #001f27;
    --success: #859900;
    --error: #dc322f;
    --warning: #b58900;
}

/* 6. Solarized Light */
body.theme-solarized-light {
    --bg-primary: #fdf6e3;
    --bg-secondary: #eee8d5;
    --bg-card: #fdf6e3;
    --text-primary: #657b83;
    --text-secondary: #93a1a1;
    --accent: #268bd2;
    --accent-hover: #1a6da0;
    --border-color: #657b83;
    --shadow-color: #657b83;
    --success: #859900;
    --error: #dc322f;
    --warning: #b58900;
}

/* 7. Nord */
body.theme-nord {
    --bg-primary: #2e3440;
    --bg-secondary: #3b4252;
    --bg-card: #434c5e;
    --text-primary: #eceff4;
    --text-secondary: #d8dee9;
    --accent: #88c0d0;
    --accent-hover: #8fbcbb;
    --border-color: #4c566a;
    --shadow-color: #1d2028;
    --success: #a3be8c;
    --error: #bf616a;
    --warning: #ebcb8b;
}

/* 8. One Dark Pro */
body.theme-one-dark {
    --bg-primary: #282c34;
    --bg-secondary: #21252b;
    --bg-card: #2c313c;
    --text-primary: #abb2bf;
    --text-secondary: #5c6370;
    --accent: #61afef;
    --accent-hover: #74baf0;
    --border-color: #3e4452;
    --shadow-color: #1a1d23;
    --success: #98c379;
    --error: #e06c75;
    --warning: #e5c07b;
}

/* 9. Gruvbox Dark */
body.theme-gruvbox {
    --bg-primary: #282828;
    --bg-secondary: #1d2021;
    --bg-card: #3c3836;
    --text-primary: #ebdbb2;
    --text-secondary: #a89984;
    --accent: #fe8019;
    --accent-hover: #fabd2f;
    --border-color: #504945;
    --shadow-color: #0d0e0f;
    --success: #b8bb26;
    --error: #fb4934;
    --warning: #fabd2f;
}

/* 10. Tokyo Night */
body.theme-tokyo-night {
    --bg-primary: #1a1b26;
    --bg-secondary: #16161e;
    --bg-card: #24283b;
    --text-primary: #c0caf5;
    --text-secondary: #565f89;
    --accent: #7aa2f7;
    --accent-hover: #89b4fa;
    --border-color: #3b4261;
    --shadow-color: #0d0e16;
    --success: #9ece6a;
    --error: #f7768e;
    --warning: #e0af68;
}
