﻿/* ===================================================
   Theme System - CSS Custom Properties
   =================================================== */

.theme-classic-blue {
    --primary: #1a3a5c;
    --primary-dark: #14324f;
    --primary-light: #e8f0fe;
    --success: #0f9d58;
    --warning: #f4b400;
    --danger: #d93025;
    --bg: #f0f2f5;
    --card-bg: #ffffff;
    --surface-2: #f7f9fc;
    --surface-3: #eef3f8;
    --text: #202124;
    --text-secondary: #5f6368;
    --border: #dadce0;
    --sidebar-bg: #1a3a5c;
    --sidebar-text: rgba(255,255,255,0.85);
    --sidebar-hover: rgba(255,255,255,0.15);
    --sidebar-header-border: rgba(255,255,255,0.15);
    --header-bg: #1a3a5c;
    --header-text: #ffffff;
    --table-header-bg: #e8ecf0;
    --table-hover: #f0f4ff;
    --input-bg: #ffffff;
    --input-border: #dadce0;
    --input-readonly-bg: #eef2f7;
    --toolbar-bg: #e8eaed;
    --weekend-bg: #fce8e6;
    --selected-row: #dbeafe;
    --pinned-row-bg: #fff7d6;
    --timesheet-grid-border: #999;
    --secondary-btn-bg: #e8eaed;
    --secondary-btn-hover: #d8dde4;
    --neutral-bg: #e8eaed;
    --neutral-text: #5f6368;
    --success-bg: #e6f4ea;
    --warning-bg: #fef3d9;
    --danger-bg: #fce8e6;
    --info-bg: #e8f0fe;
    --dialog-overlay: rgba(15, 23, 42, 0.45);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.12);
    --font-size-base: 14px;
    --font-size-sm: 12px;
    --font-size-lg: 16px;
    --spacing: 8px;
    --radius: 6px;
    --menu-btn-bg: #1a3a5c;
}

.theme-light {
    --primary: #4a90d9;
    --primary-dark: #357abd;
    --primary-light: #e8f0fe;
    --success: #27ae60;
    --warning: #f39c12;
    --danger: #e74c3c;
    --bg: #ffffff;
    --card-bg: #f8f9fa;
    --surface-2: #f3f6f9;
    --surface-3: #edf2f7;
    --text: #2c3e50;
    --text-secondary: #7f8c8d;
    --border: #ecf0f1;
    --sidebar-bg: #2c3e50;
    --sidebar-text: rgba(255,255,255,0.9);
    --sidebar-hover: rgba(255,255,255,0.15);
    --sidebar-header-border: rgba(255,255,255,0.1);
    --header-bg: #4a90d9;
    --header-text: #ffffff;
    --table-header-bg: #f8f9fa;
    --table-hover: #f0f0f0;
    --input-bg: #ffffff;
    --input-border: #ddd;
    --input-readonly-bg: #eef2f4;
    --toolbar-bg: #f0f0f0;
    --weekend-bg: #fde8e8;
    --selected-row: #e8f0fe;
    --pinned-row-bg: #fff8de;
    --timesheet-grid-border: #ccc;
    --secondary-btn-bg: #edf1f4;
    --secondary-btn-hover: #dbe3ea;
    --neutral-bg: #ecf0f3;
    --neutral-text: #607080;
    --success-bg: #e6f6ed;
    --warning-bg: #fff3db;
    --danger-bg: #fdeceb;
    --info-bg: #eaf3ff;
    --dialog-overlay: rgba(15, 23, 42, 0.35);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.12);
    --font-size-base: 14px;
    --font-size-sm: 12px;
    --font-size-lg: 16px;
    --spacing: 8px;
    --radius: 6px;
    --menu-btn-bg: #4a90d9;
}

.theme-dark {
    --primary: #7ab8ff;
    --primary-dark: #4d8fe0;
    --primary-light: #1f314a;
    --success: #7acb8a;
    --warning: #f3bc67;
    --danger: #f07f7f;
    --bg: #181c22;
    --card-bg: #242a33;
    --surface-2: #2b333d;
    --surface-3: #323b46;
    --text: #e7edf5;
    --text-secondary: #a8b3c2;
    --border: #3b4755;
    --sidebar-bg: #1b2128;
    --sidebar-text: rgba(231,237,245,0.82);
    --sidebar-hover: rgba(122,184,255,0.14);
    --sidebar-header-border: rgba(231,237,245,0.08);
    --header-bg: #1f252d;
    --header-text: #f4f7fb;
    --table-header-bg: #2b333d;
    --table-hover: #2b343f;
    --input-bg: #20262e;
    --input-border: #465364;
    --input-readonly-bg: #262d36;
    --toolbar-bg: #2c3540;
    --weekend-bg: #33262b;
    --selected-row: #24364d;
    --pinned-row-bg: #3b3828;
    --timesheet-grid-border: #4c5b6c;
    --secondary-btn-bg: #313a46;
    --secondary-btn-hover: #394555;
    --neutral-bg: #313945;
    --neutral-text: #c2ccd8;
    --success-bg: #1d3a2a;
    --warning-bg: #43351f;
    --danger-bg: #44282a;
    --info-bg: #1e344a;
    --dialog-overlay: rgba(6, 10, 14, 0.68);
    --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.26);
    --shadow-md: 0 14px 40px rgba(0, 0, 0, 0.34);
    --header-chip-bg: rgba(244, 247, 251, 0.08);
    --header-chip-hover: rgba(244, 247, 251, 0.14);
    --header-icon-muted: rgba(244, 247, 251, 0.74);
    --sidebar-label: rgba(231, 237, 245, 0.42);
    --sidebar-border-soft: rgba(231, 237, 245, 0.08);
    --sidebar-control-bg: rgba(231, 237, 245, 0.06);
    --sidebar-control-border: rgba(231, 237, 245, 0.12);
    --sidebar-control-hover: rgba(122, 184, 255, 0.18);
    --sidebar-hover-bg: rgba(122, 184, 255, 0.1);
    --sidebar-active-bg: rgba(122, 184, 255, 0.16);
    --sidebar-strong-text: #f4f7fb;
    --input-icon-filter: invert(1) brightness(1.55) contrast(1.15);
    --font-size-base: 14px;
    --font-size-sm: 12px;
    --font-size-lg: 16px;
    --spacing: 8px;
    --radius: 6px;
    --menu-btn-bg: #313a46;
}

.theme-compact {
    --primary: #1a73e8;
    --primary-dark: #1557b0;
    --primary-light: #e8f0fe;
    --success: #0f9d58;
    --warning: #f4b400;
    --danger: #d93025;
    --bg: #f8f9fa;
    --card-bg: #ffffff;
    --surface-2: #f5f7fa;
    --surface-3: #eef2f6;
    --text: #202124;
    --text-secondary: #5f6368;
    --border: #dadce0;
    --sidebar-bg: #1a3a5c;
    --sidebar-text: rgba(255,255,255,0.85);
    --sidebar-hover: rgba(255,255,255,0.15);
    --sidebar-header-border: rgba(255,255,255,0.15);
    --header-bg: #1a73e8;
    --header-text: #ffffff;
    --table-header-bg: #f1f3f4;
    --table-hover: #f8f9fa;
    --input-bg: #ffffff;
    --input-border: #dadce0;
    --input-readonly-bg: #eef2f7;
    --toolbar-bg: #e8eaed;
    --weekend-bg: #fce8e6;
    --selected-row: #e8f0fe;
    --pinned-row-bg: #fff7d6;
    --timesheet-grid-border: #999;
    --secondary-btn-bg: #e8eaed;
    --secondary-btn-hover: #d8dde4;
    --neutral-bg: #e8eaed;
    --neutral-text: #5f6368;
    --success-bg: #e6f4ea;
    --warning-bg: #fef3d9;
    --danger-bg: #fce8e6;
    --info-bg: #e8f0fe;
    --dialog-overlay: rgba(15, 23, 42, 0.45);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.12);
    --font-size-base: 12px;
    --font-size-sm: 10px;
    --font-size-lg: 14px;
    --spacing: 4px;
    --radius: 4px;
    --menu-btn-bg: #1a73e8;
}

.theme-large-font {
    --primary: #1565c0;
    --primary-dark: #0d47a1;
    --primary-light: #e3f2fd;
    --success: #2e7d32;
    --warning: #f57f17;
    --danger: #c62828;
    --bg: #fafafa;
    --card-bg: #ffffff;
    --surface-2: #f4f7fb;
    --surface-3: #e8eef6;
    --text: #1a1a1a;
    --text-secondary: #555555;
    --border: #bbbbbb;
    --sidebar-bg: #1a237e;
    --sidebar-text: #ffffff;
    --sidebar-hover: rgba(255,255,255,0.2);
    --sidebar-header-border: rgba(255,255,255,0.15);
    --header-bg: #1565c0;
    --header-text: #ffffff;
    --table-header-bg: #e8eaf6;
    --table-hover: #f5f5f5;
    --input-bg: #ffffff;
    --input-border: #bbbbbb;
    --input-readonly-bg: #eef2f5;
    --toolbar-bg: #e8eaf6;
    --weekend-bg: #ffebee;
    --selected-row: #e3f2fd;
    --pinned-row-bg: #fff7d6;
    --timesheet-grid-border: #bbbbbb;
    --secondary-btn-bg: #e4e9ef;
    --secondary-btn-hover: #d4dbe4;
    --neutral-bg: #e8eaed;
    --neutral-text: #4f5b67;
    --success-bg: #e7f4e8;
    --warning-bg: #fff0da;
    --danger-bg: #fdeaea;
    --info-bg: #e5f1ff;
    --dialog-overlay: rgba(15, 23, 42, 0.4);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.12);
    --font-size-base: 18px;
    --font-size-sm: 15px;
    --font-size-lg: 21px;
    --spacing: 12px;
    --radius: 8px;
    --menu-btn-bg: #1565c0;
}
