/**
 * AFSNote - Theme Variables
 * All color schemes and theme-specific values
 */

:root {
    /* Shared Variables */
    --transition-fast: 150ms ease;
    --transition-normal: 250ms ease;
    --transition-slow: 350ms ease;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
}

/* ================================
   LIGHT THEMES
   ================================ */

/* Default Light - Clean and minimal */
.light-default {
    --bg: #ffffff;
    --surface: #f5f5f5;
    --surface-elevated: #ffffff;
    --text: #1a1a1a;
    --text-secondary: #666666;
    --accent: #2563eb;
    --accent-hover: #1d4ed8;
    --border: rgba(0, 0, 0, 0.1);
    --divider: rgba(0, 0, 0, 0.06);
    --header: rgba(255, 255, 255, 0.95);
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    --danger: #dc2626;
    --success: #16a34a;
}

/* Paper - Warm, easy on eyes like real paper */
.light-paper {
    --bg: #faf8f5;
    --surface: #f5f2ed;
    --surface-elevated: #fffefa;
    --text: #2d2a26;
    --text-secondary: #6b6560;
    --accent: #b45309;
    --accent-hover: #92400e;
    --border: rgba(45, 42, 38, 0.12);
    --divider: rgba(45, 42, 38, 0.06);
    --header: rgba(250, 248, 245, 0.95);
    --shadow: 0 2px 8px rgba(45, 42, 38, 0.1);
    --danger: #b91c1c;
    --success: #15803d;
}

/* Notion - Inspired by Notion app */
.light-notion {
    --bg: #ffffff;
    --surface: #f7f6f3;
    --surface-elevated: #ffffff;
    --text: #37352f;
    --text-secondary: #787774;
    --accent: #2eaadc;
    --accent-hover: #0b8ec0;
    --border: rgba(55, 53, 47, 0.09);
    --divider: rgba(55, 53, 47, 0.06);
    --header: rgba(255, 255, 255, 0.95);
    --shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    --danger: #e03e3e;
    --success: #0f7b6c;
}

/* GitHub Light */
.light-github {
    --bg: #ffffff;
    --surface: #f6f8fa;
    --surface-elevated: #ffffff;
    --text: #24292f;
    --text-secondary: #57606a;
    --accent: #0969da;
    --accent-hover: #0550ae;
    --border: rgba(31, 35, 40, 0.15);
    --divider: rgba(31, 35, 40, 0.08);
    --header: rgba(255, 255, 255, 0.97);
    --shadow: 0 1px 3px rgba(31, 35, 40, 0.12);
    --danger: #cf222e;
    --success: #1a7f37;
}

/* Solarized Light */
.light-solarized {
    --bg: #fdf6e3;
    --surface: #eee8d5;
    --surface-elevated: #fdf6e3;
    --text: #657b83;
    --text-secondary: #93a1a1;
    --accent: #268bd2;
    --accent-hover: #2176b8;
    --border: rgba(101, 123, 131, 0.2);
    --divider: rgba(101, 123, 131, 0.1);
    --header: rgba(253, 246, 227, 0.95);
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    --danger: #dc322f;
    --success: #859900;
}

/* Mint - Fresh green tones */
.light-mint {
    --bg: #f0fdf4;
    --surface: #dcfce7;
    --surface-elevated: #f0fdf4;
    --text: #14532d;
    --text-secondary: #166534;
    --accent: #059669;
    --accent-hover: #047857;
    --border: rgba(20, 83, 45, 0.15);
    --divider: rgba(20, 83, 45, 0.08);
    --header: rgba(240, 253, 244, 0.95);
    --shadow: 0 2px 8px rgba(20, 83, 45, 0.1);
    --danger: #dc2626;
    --success: #15803d;
}

/* Rose - Soft pink tones */
.light-rose {
    --bg: #fff1f2;
    --surface: #ffe4e6;
    --surface-elevated: #fff1f2;
    --text: #881337;
    --text-secondary: #9f1239;
    --accent: #e11d48;
    --accent-hover: #be123c;
    --border: rgba(136, 19, 55, 0.12);
    --divider: rgba(136, 19, 55, 0.06);
    --header: rgba(255, 241, 242, 0.95);
    --shadow: 0 2px 8px rgba(136, 19, 55, 0.1);
    --danger: #be123c;
    --success: #15803d;
}

/* ================================
   DARK THEMES
   ================================ */

/* Default Dark - Clean and modern */
.dark-default {
    --bg: #0a0a0a;
    --surface: #171717;
    --surface-elevated: #262626;
    --text: #fafafa;
    --text-secondary: #a1a1aa;
    --accent: #3b82f6;
    --accent-hover: #60a5fa;
    --border: rgba(255, 255, 255, 0.1);
    --divider: rgba(255, 255, 255, 0.06);
    --header: rgba(23, 23, 23, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
    --danger: #ef4444;
    --success: #22c55e;
}

/* Obsidian - Inspired by Obsidian app */
.dark-obsidian {
    --bg: #1e1e1e;
    --surface: #262626;
    --surface-elevated: #333333;
    --text: #dcddde;
    --text-secondary: #888888;
    --accent: #7c3aed;
    --accent-hover: #8b5cf6;
    --border: rgba(255, 255, 255, 0.08);
    --divider: rgba(255, 255, 255, 0.04);
    --header: rgba(38, 38, 38, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #fb7185;
    --success: #4ade80;
}

/* VS Code Dark */
.dark-vscode {
    --bg: #1e1e1e;
    --surface: #252526;
    --surface-elevated: #333333;
    --text: #d4d4d4;
    --text-secondary: #808080;
    --accent: #007acc;
    --accent-hover: #1e90ff;
    --border: rgba(255, 255, 255, 0.1);
    --divider: rgba(255, 255, 255, 0.05);
    --header: rgba(37, 37, 38, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #f14c4c;
    --success: #89d185;
}

/* GitHub Dark */
.dark-github {
    --bg: #0d1117;
    --surface: #161b22;
    --surface-elevated: #21262d;
    --text: #c9d1d9;
    --text-secondary: #8b949e;
    --accent: #58a6ff;
    --accent-hover: #79c0ff;
    --border: rgba(240, 246, 252, 0.1);
    --divider: rgba(240, 246, 252, 0.05);
    --header: rgba(22, 27, 34, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #f85149;
    --success: #3fb950;
}

/* Dracula */
.dark-dracula {
    --bg: #282a36;
    --surface: #343746;
    --surface-elevated: #44475a;
    --text: #f8f8f2;
    --text-secondary: #6272a4;
    --accent: #bd93f9;
    --accent-hover: #caa9fa;
    --border: rgba(248, 248, 242, 0.1);
    --divider: rgba(248, 248, 242, 0.05);
    --header: rgba(52, 55, 70, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #ff5555;
    --success: #50fa7b;
}

/* Nord */
.dark-nord {
    --bg: #2e3440;
    --surface: #3b4252;
    --surface-elevated: #434c5e;
    --text: #eceff4;
    --text-secondary: #d8dee9;
    --accent: #88c0d0;
    --accent-hover: #8fbcbb;
    --border: rgba(236, 239, 244, 0.1);
    --divider: rgba(236, 239, 244, 0.05);
    --header: rgba(59, 66, 82, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
    --danger: #bf616a;
    --success: #a3be8c;
}

/* Solarized Dark */
.dark-solarized {
    --bg: #002b36;
    --surface: #073642;
    --surface-elevated: #094552;
    --text: #839496;
    --text-secondary: #657b83;
    --accent: #268bd2;
    --accent-hover: #2aa198;
    --border: rgba(131, 148, 150, 0.2);
    --divider: rgba(131, 148, 150, 0.1);
    --header: rgba(7, 54, 66, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
    --danger: #dc322f;
    --success: #859900;
}

/* Monokai */
.dark-monokai {
    --bg: #272822;
    --surface: #3e3d32;
    --surface-elevated: #49483e;
    --text: #f8f8f2;
    --text-secondary: #75715e;
    --accent: #a6e22e;
    --accent-hover: #b6f23e;
    --border: rgba(248, 248, 242, 0.1);
    --divider: rgba(248, 248, 242, 0.05);
    --header: rgba(62, 61, 50, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #f92672;
    --success: #a6e22e;
}

/* One Dark - Atom inspired */
.dark-one {
    --bg: #21252b;
    --surface: #282c34;
    --surface-elevated: #2c323c;
    --text: #abb2bf;
    --text-secondary: #636d83;
    --accent: #61afef;
    --accent-hover: #74bfff;
    --border: rgba(171, 178, 191, 0.1);
    --divider: rgba(171, 178, 191, 0.05);
    --header: rgba(40, 44, 52, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #e06c75;
    --success: #98c379;
}

/* Tokyo Night */
.dark-tokyo {
    --bg: #1a1b26;
    --surface: #24283b;
    --surface-elevated: #292e42;
    --text: #c0caf5;
    --text-secondary: #565f89;
    --accent: #7aa2f7;
    --accent-hover: #89b4fa;
    --border: rgba(192, 202, 245, 0.1);
    --divider: rgba(192, 202, 245, 0.05);
    --header: rgba(36, 40, 59, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #f7768e;
    --success: #9ece6a;
}

/* Gruvbox Dark */
.dark-gruvbox {
    --bg: #282828;
    --surface: #3c3836;
    --surface-elevated: #504945;
    --text: #ebdbb2;
    --text-secondary: #a89984;
    --accent: #fe8019;
    --accent-hover: #fabd2f;
    --border: rgba(235, 219, 178, 0.1);
    --divider: rgba(235, 219, 178, 0.05);
    --header: rgba(60, 56, 54, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
    --danger: #fb4934;
    --success: #b8bb26;
}

/* Midnight - Deep blue */
.dark-midnight {
    --bg: #0f172a;
    --surface: #1e293b;
    --surface-elevated: #334155;
    --text: #f1f5f9;
    --text-secondary: #94a3b8;
    --accent: #38bdf8;
    --accent-hover: #7dd3fc;
    --border: rgba(241, 245, 249, 0.1);
    --divider: rgba(241, 245, 249, 0.05);
    --header: rgba(30, 41, 59, 0.95);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    --danger: #f87171;
    --success: #4ade80;
}

/* AMOLED - True black for OLED screens */
.dark-amoled {
    --bg: #000000;
    --surface: #0a0a0a;
    --surface-elevated: #141414;
    --text: #ffffff;
    --text-secondary: #888888;
    --accent: #00d4ff;
    --accent-hover: #00e5ff;
    --border: rgba(255, 255, 255, 0.08);
    --divider: rgba(255, 255, 255, 0.04);
    --header: rgba(10, 10, 10, 0.98);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.8);
    --danger: #ff4757;
    --success: #2ed573;
}

/* ================================
   SPECIAL THEMES
   ================================ */

/* Sepia - E-reader style */
.special-sepia {
    --bg: #f4ecd8;
    --surface: #e8dcc8;
    --surface-elevated: #f4ecd8;
    --text: #5c4b37;
    --text-secondary: #7d6b56;
    --accent: #8b5a2b;
    --accent-hover: #6b4423;
    --border: rgba(92, 75, 55, 0.15);
    --divider: rgba(92, 75, 55, 0.08);
    --header: rgba(244, 236, 216, 0.95);
    --shadow: 0 2px 8px rgba(92, 75, 55, 0.15);
    --danger: #a94442;
    --success: #5a7247;
}

/* High Contrast Light */
.special-contrast-light {
    --bg: #ffffff;
    --surface: #f0f0f0;
    --surface-elevated: #ffffff;
    --text: #000000;
    --text-secondary: #333333;
    --accent: #0000cc;
    --accent-hover: #0000ff;
    --border: rgba(0, 0, 0, 0.3);
    --divider: rgba(0, 0, 0, 0.15);
    --header: rgba(255, 255, 255, 0.98);
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    --danger: #cc0000;
    --success: #006600;
}

/* High Contrast Dark */
.special-contrast-dark {
    --bg: #000000;
    --surface: #1a1a1a;
    --surface-elevated: #2a2a2a;
    --text: #ffffff;
    --text-secondary: #cccccc;
    --accent: #00ffff;
    --accent-hover: #66ffff;
    --border: rgba(255, 255, 255, 0.3);
    --divider: rgba(255, 255, 255, 0.15);
    --header: rgba(26, 26, 26, 0.98);
    --shadow: 0 2px 12px rgba(0, 0, 0, 0.8);
    --danger: #ff4444;
    --success: #44ff44;
}
