:root {
    --bg-page: #f4f6f9;
    --color-white: #fff;
    --bg-card: #fff;
    --bg-subtle: #f0f0f0;
    --bg-subtle-2: #eee;
    --bg-hover: #f1f3f5;
    --bg-info-soft: #e3f2fd;
    --border-light: #e9ecef;
    --border-input: #ced4da;
    --border-subtle: #dee2e6;
    --border-chart: #e0e0e0;
    --brand-primary: #0d47a1;
    --brand-primary-hover: #0b3c8a;
    --brand-accent: #1565c0;
    --brand-navy-start: #0a2647;
    --brand-navy-end: #144272;
    --brand-navy-hover-start: #081d38;
    --brand-navy-hover-end: #0f3359;
    --brand-hero-text: #dce8fb;
    --color-danger: #c62828;
    --color-danger-alt: #dc3545;
    --color-danger-alt2: #ef4444;
    --bg-danger-soft: #fdecea;
    --bg-danger-soft-2: #ffebee;
    --bg-warning-soft: #fff3cd;
    --text-warning: #856404;
    --color-warning-alt: #f57c00;
    --color-gold: #facc15;
    --color-info: #00749c;
    --color-success: #1e7e34;
    --color-success-alt: #22c55e;
    --bg-success-soft: #e6f4ea;
    --text-primary: #212529;
    --text-secondary: #495057;
    --text-muted: #6c757d;
    --text-body-alt: #343a40;
    --text-faint: #868e96;
    --text-disabled: #adb5bd;
    --text-gray: #616161;
    --bg-card-rgb: 255, 255, 255;
    --bg-subtle-rgb: 240, 240, 240;
    --text-primary-rgb: 33, 37, 41;
}
:root[data-theme="dark"] {
    --bg-page: #121417;
    --color-white: #fff;
    --bg-card: #1b1e23;
    --bg-subtle: #22262c;
    --bg-subtle-2: #272b32;
    --bg-hover: #262a31;
    --bg-info-soft: #10263d;
    --border-light: #2a2f36;
    --border-input: #3a4049;
    --border-subtle: #30363d;
    --border-chart: #2f353c;
    --brand-primary: #4f8ff7;
    --brand-primary-hover: #3b7de6;
    --brand-accent: #6aa6ff;
    --brand-navy-start: #0a1526;
    --brand-navy-end: #10243f;
    --brand-navy-hover-start: #07101d;
    --brand-navy-hover-end: #0c1c33;
    --brand-hero-text: #c9d8f0;
    --color-danger: #ff6b6b;
    --color-danger-alt: #f06c6c;
    --color-danger-alt2: #f87171;
    --bg-danger-soft: #3a1c1c;
    --bg-danger-soft-2: #3d1f1f;
    --bg-warning-soft: #3a2f0e;
    --text-warning: #ffd166;
    --color-warning-alt: #ffa94d;
    --color-gold: #facc15;
    --color-info: #4fc3f7;
    --color-success: #4ade80;
    --color-success-alt: #34d399;
    --bg-success-soft: #16301f;
    --text-primary: #e6e8eb;
    --text-secondary: #c3c8cf;
    --text-muted: #9aa3ad;
    --text-body-alt: #d3d7dc;
    --text-faint: #8b949e;
    --text-disabled: #6b7480;
    --text-gray: #aeb4bc;
    --bg-card-rgb: 27, 30, 35;
    --bg-subtle-rgb: 34, 38, 44;
    --text-primary-rgb: 230, 232, 235;
    color-scheme: dark;
}
:root[data-theme="dark"] {
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-primary);
    --bs-secondary-color: var(--text-muted);
    --bs-tertiary-bg: var(--bg-subtle);
    --bs-border-color: var(--border-subtle);
    --bs-card-bg: var(--bg-card);
    --bs-light-rgb: var(--bg-subtle-rgb);
    --bs-white-rgb: var(--bg-card-rgb);
    --bs-dark-rgb: var(--text-primary-rgb);
}
:root[data-theme="dark"] .bg-white { background-color: var(--bg-card) !important; }
:root[data-theme="dark"] .bg-light { background-color: var(--bg-subtle) !important; }
:root[data-theme="dark"] .text-dark { color: var(--text-primary) !important; }
:root[data-theme="dark"] .text-body { color: var(--text-primary) !important; }
:root[data-theme="dark"] .border-light { border-color: var(--border-light) !important; }
:root[data-theme="dark"] .card { --bs-card-bg: var(--bg-card); --bs-card-border-color: var(--border-light); }
:root[data-theme="dark"] .table { --bs-table-bg: var(--bg-card); --bs-table-color: var(--text-primary); }
:root[data-theme="dark"] .form-control, :root[data-theme="dark"] .form-select {
    background-color: var(--bg-card); color: var(--text-primary); border-color: var(--border-input);
}
:root[data-theme="dark"] .dropdown-menu { --bs-dropdown-bg: var(--bg-card); --bs-dropdown-color: var(--text-primary); --bs-dropdown-link-color: var(--text-primary); }
:root[data-theme="navy"] {
    --bg-page: #0b1a2e;
    --color-white: #fff;
    --bg-card: #11263f;
    --bg-subtle: #16304d;
    --bg-subtle-2: #1a3657;
    --bg-hover: #183457;
    --bg-info-soft: #15365a;
    --border-light: #1d3553;
    --border-input: #2a4a6e;
    --border-subtle: #22405f;
    --border-chart: #22405f;
    --brand-primary: #5aa9ff;
    --brand-primary-hover: #3f94f0;
    --brand-accent: #7cc0ff;
    --brand-navy-start: #061225;
    --brand-navy-end: #0d2443;
    --brand-navy-hover-start: #040d1b;
    --brand-navy-hover-end: #0a1d38;
    --brand-hero-text: #d6e4fa;
    --color-danger: #ff7b7b;
    --color-danger-alt: #f47272;
    --color-danger-alt2: #fb7185;
    --bg-danger-soft: #3b1d2a;
    --bg-danger-soft-2: #40202c;
    --bg-warning-soft: #3a3110;
    --text-warning: #ffd36b;
    --color-warning-alt: #ffb454;
    --color-gold: #fcd34d;
    --color-info: #67d2ff;
    --color-success: #5ce39b;
    --color-success-alt: #34d399;
    --bg-success-soft: #10352a;
    --text-primary: #e3edf9;
    --text-secondary: #bfd0e6;
    --text-muted: #91a7c4;
    --text-body-alt: #d0dcef;
    --text-faint: #7f96b5;
    --text-disabled: #5f7693;
    --text-gray: #a9bbd4;
    --bg-card-rgb: 17, 38, 63;
    --bg-subtle-rgb: 22, 48, 77;
    --text-primary-rgb: 227, 237, 249;
    color-scheme: dark;
}
:root[data-theme="navy"] {
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-primary);
    --bs-secondary-color: var(--text-muted);
    --bs-tertiary-bg: var(--bg-subtle);
    --bs-border-color: var(--border-subtle);
    --bs-card-bg: var(--bg-card);
    --bs-light-rgb: var(--bg-subtle-rgb);
    --bs-white-rgb: var(--bg-card-rgb);
    --bs-dark-rgb: var(--text-primary-rgb);
}
:root[data-theme="navy"] .bg-white { background-color: var(--bg-card) !important; }
:root[data-theme="navy"] .bg-light { background-color: var(--bg-subtle) !important; }
:root[data-theme="navy"] .text-dark { color: var(--text-primary) !important; }
:root[data-theme="navy"] .text-body { color: var(--text-primary) !important; }
:root[data-theme="navy"] .border-light { border-color: var(--border-light) !important; }
:root[data-theme="navy"] .card { --bs-card-bg: var(--bg-card); --bs-card-border-color: var(--border-light); }
:root[data-theme="navy"] .table { --bs-table-bg: var(--bg-card); --bs-table-color: var(--text-primary); }
:root[data-theme="navy"] .form-control, :root[data-theme="navy"] .form-select {
    background-color: var(--bg-card); color: var(--text-primary); border-color: var(--border-input);
}
:root[data-theme="navy"] .dropdown-menu { --bs-dropdown-bg: var(--bg-card); --bs-dropdown-color: var(--text-primary); --bs-dropdown-link-color: var(--text-primary); }
:root[data-theme="forest"] {
    --bg-page: #f1f6f1;
    --color-white: #fff;
    --bg-card: #fff;
    --bg-subtle: #eef3ee;
    --bg-subtle-2: #e6ede6;
    --bg-hover: #e8f0e8;
    --bg-info-soft: #e3f3e5;
    --border-light: #e2eae3;
    --border-input: #c5d3c7;
    --border-subtle: #d6e1d8;
    --border-chart: #dbe4dc;
    --brand-primary: #1b5e20;
    --brand-primary-hover: #164c1a;
    --brand-accent: #2e7d32;
    --brand-navy-start: #0f3d1a;
    --brand-navy-end: #1f5e2c;
    --brand-navy-hover-start: #0a2d12;
    --brand-navy-hover-end: #174a22;
    --brand-hero-text: #d9f0dc;
    --color-danger: #c62828;
    --color-danger-alt: #dc3545;
    --color-danger-alt2: #ef4444;
    --bg-danger-soft: #fdecea;
    --bg-danger-soft-2: #ffebee;
    --bg-warning-soft: #fff3cd;
    --text-warning: #856404;
    --color-warning-alt: #f57c00;
    --color-gold: #facc15;
    --color-info: #00749c;
    --color-success: #1e7e34;
    --color-success-alt: #22c55e;
    --bg-success-soft: #e6f4ea;
    --text-primary: #1f2a21;
    --text-secondary: #3f4f42;
    --text-muted: #68776b;
    --text-body-alt: #2f3b31;
    --text-faint: #7f8e82;
    --text-disabled: #a6b3a8;
    --text-gray: #5f6b61;
    --bg-card-rgb: 255, 255, 255;
    --bg-subtle-rgb: 238, 243, 238;
    --text-primary-rgb: 31, 42, 33;
}
:root[data-theme="forest"] {
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-primary);
    --bs-secondary-color: var(--text-muted);
    --bs-tertiary-bg: var(--bg-subtle);
    --bs-border-color: var(--border-subtle);
    --bs-card-bg: var(--bg-card);
    --bs-light-rgb: var(--bg-subtle-rgb);
    --bs-white-rgb: var(--bg-card-rgb);
    --bs-dark-rgb: var(--text-primary-rgb);
}
:root[data-theme="forest"] .bg-white { background-color: var(--bg-card) !important; }
:root[data-theme="forest"] .bg-light { background-color: var(--bg-subtle) !important; }
:root[data-theme="forest"] .text-dark { color: var(--text-primary) !important; }
:root[data-theme="forest"] .text-body { color: var(--text-primary) !important; }
:root[data-theme="forest"] .border-light { border-color: var(--border-light) !important; }
:root[data-theme="forest"] .card { --bs-card-bg: var(--bg-card); --bs-card-border-color: var(--border-light); }
:root[data-theme="forest"] .table { --bs-table-bg: var(--bg-card); --bs-table-color: var(--text-primary); }
:root[data-theme="forest"] .form-control, :root[data-theme="forest"] .form-select {
    background-color: var(--bg-card); color: var(--text-primary); border-color: var(--border-input);
}
:root[data-theme="forest"] .dropdown-menu { --bs-dropdown-bg: var(--bg-card); --bs-dropdown-color: var(--text-primary); --bs-dropdown-link-color: var(--text-primary); }
:root[data-theme="sepia"] {
    --bg-page: #f5efe3;
    --color-white: #fff;
    --bg-card: #fffaf0;
    --bg-subtle: #f1e8d8;
    --bg-subtle-2: #ebe1cf;
    --bg-hover: #efe5d3;
    --bg-info-soft: #f3e9d5;
    --border-light: #e8dcc8;
    --border-input: #cdbfa8;
    --border-subtle: #dccfb9;
    --border-chart: #e0d4c0;
    --brand-primary: #8a5a2b;
    --brand-primary-hover: #74491f;
    --brand-accent: #a8743f;
    --brand-navy-start: #4a2e14;
    --brand-navy-end: #6e4a25;
    --brand-navy-hover-start: #38220e;
    --brand-navy-hover-end: #5a3b1d;
    --brand-hero-text: #f3e6d3;
    --color-danger: #b3261e;
    --color-danger-alt: #c62828;
    --color-danger-alt2: #dc4c3f;
    --bg-danger-soft: #f9e3dd;
    --bg-danger-soft-2: #f8ddd6;
    --bg-warning-soft: #f7ecc8;
    --text-warning: #7a5a00;
    --color-warning-alt: #d97706;
    --color-gold: #e0b422;
    --color-info: #1f6e8c;
    --color-success: #2e6b3a;
    --color-success-alt: #3f9d5a;
    --bg-success-soft: #e4efe0;
    --text-primary: #3b3024;
    --text-secondary: #5a4c3b;
    --text-muted: #7d6d5a;
    --text-body-alt: #4a3d2f;
    --text-faint: #8f806d;
    --text-disabled: #b3a594;
    --text-gray: #6b5d4c;
    --bg-card-rgb: 255, 250, 240;
    --bg-subtle-rgb: 241, 232, 216;
    --text-primary-rgb: 59, 48, 36;
}
:root[data-theme="sepia"] {
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-primary);
    --bs-secondary-color: var(--text-muted);
    --bs-tertiary-bg: var(--bg-subtle);
    --bs-border-color: var(--border-subtle);
    --bs-card-bg: var(--bg-card);
    --bs-light-rgb: var(--bg-subtle-rgb);
    --bs-white-rgb: var(--bg-card-rgb);
    --bs-dark-rgb: var(--text-primary-rgb);
}
:root[data-theme="sepia"] .bg-white { background-color: var(--bg-card) !important; }
:root[data-theme="sepia"] .bg-light { background-color: var(--bg-subtle) !important; }
:root[data-theme="sepia"] .text-dark { color: var(--text-primary) !important; }
:root[data-theme="sepia"] .text-body { color: var(--text-primary) !important; }
:root[data-theme="sepia"] .border-light { border-color: var(--border-light) !important; }
:root[data-theme="sepia"] .card { --bs-card-bg: var(--bg-card); --bs-card-border-color: var(--border-light); }
:root[data-theme="sepia"] .table { --bs-table-bg: var(--bg-card); --bs-table-color: var(--text-primary); }
:root[data-theme="sepia"] .form-control, :root[data-theme="sepia"] .form-select {
    background-color: var(--bg-card); color: var(--text-primary); border-color: var(--border-input);
}
:root[data-theme="sepia"] .dropdown-menu { --bs-dropdown-bg: var(--bg-card); --bs-dropdown-color: var(--text-primary); --bs-dropdown-link-color: var(--text-primary); }
