:root,
html[data-theme="default"] {
    --bg-body: #f8f9fa;
    --bg-card: #ffffff;
    --bg-card-hover: #f8f9fa;
    --bg-input: #ffffff;
    --bg-navbar: #212529;
    --bg-table-header: #f8f9fa;
    --bg-notification: rgba(33, 37, 41, 0.9);
    --bg-news-rise: #fff5f5;
    --bg-news-fall: #f5fff5;
    --bg-modal: #ffffff;
    --bg-dropdown: #ffffff;
    --bg-code: #f8f9fa;

    --text-primary: #212529;
    --text-secondary: #495057;
    --text-muted: #6c757d;
    --text-inverse: #ffffff;
    --text-link: #0d6efd;

    --border-color: #dee2e6;
    --border-color-light: #e9ecef;

    --accent-primary: #0d6efd;
    --accent-warning: #ffc107;
    --accent-danger: #dc3545;
    --accent-success: #198754;
    --accent-info: #0dcaf0;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);

    --color-up: #dc3545;
    --color-down: #198754;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #f8f9fa;
    --bs-body-color: #212529;
    --bs-card-bg: #ffffff;
    --bs-border-color: #dee2e6;
}

html[data-theme="dark"] {
    --bg-body: #1a1a2e;
    --bg-card: #16213e;
    --bg-card-hover: #1a2744;
    --bg-input: #1a2744;
    --bg-navbar: #0f0f23;
    --bg-table-header: #1a2744;
    --bg-notification: rgba(10, 10, 30, 0.95);
    --bg-news-rise: #2a1a1a;
    --bg-news-fall: #1a2a1a;
    --bg-modal: #16213e;
    --bg-dropdown: #16213e;
    --bg-code: #1a2744;

    --text-primary: #e0e0e0;
    --text-secondary: #b0b0b0;
    --text-muted: #888888;
    --text-inverse: #1a1a2e;
    --text-link: #6ea8fe;

    --border-color: #2a3a5e;
    --border-color-light: #1e2d4a;

    --accent-primary: #4a9eff;
    --accent-warning: #ffd54f;
    --accent-danger: #ff6b6b;
    --accent-success: #66bb6a;
    --accent-info: #4dd0e1;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #ff6b6b;
    --color-down: #66bb6a;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #1a1a2e;
    --bs-body-color: #e0e0e0;
    --bs-card-bg: #16213e;
    --bs-border-color: #2a3a5e;
}

html[data-theme="forest"] {
    --bg-body: #1b2a1b;
    --bg-card: #243524;
    --bg-card-hover: #2a3f2a;
    --bg-input: #2a3f2a;
    --bg-navbar: #0f1a0f;
    --bg-table-header: #2a3f2a;
    --bg-notification: rgba(15, 26, 15, 0.95);
    --bg-news-rise: #2a1a1a;
    --bg-news-fall: #1a2a1a;
    --bg-modal: #243524;
    --bg-dropdown: #243524;
    --bg-code: #2a3f2a;

    --text-primary: #d4e8d4;
    --text-secondary: #a8c8a8;
    --text-muted: #7a9a7a;
    --text-inverse: #1b2a1b;
    --text-link: #7ec87e;

    --border-color: #3a5a3a;
    --border-color-light: #2e4a2e;

    --accent-primary: #4caf50;
    --accent-warning: #ffca28;
    --accent-danger: #ef5350;
    --accent-success: #66bb6a;
    --accent-info: #26c6da;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.4);

    --color-up: #ef5350;
    --color-down: #66bb6a;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #1b2a1b;
    --bs-body-color: #d4e8d4;
    --bs-card-bg: #243524;
    --bs-border-color: #3a5a3a;
}

html[data-theme="ocean"] {
    --bg-body: #0d1b2a;
    --bg-card: #1b2838;
    --bg-card-hover: #1f3044;
    --bg-input: #1f3044;
    --bg-navbar: #0a1628;
    --bg-table-header: #1f3044;
    --bg-notification: rgba(10, 22, 40, 0.95);
    --bg-news-rise: #2a1a1a;
    --bg-news-fall: #1a2a1a;
    --bg-modal: #1b2838;
    --bg-dropdown: #1b2838;
    --bg-code: #1f3044;

    --text-primary: #c8dce8;
    --text-secondary: #8aafc4;
    --text-muted: #5a8a9e;
    --text-inverse: #0d1b2a;
    --text-link: #5dade2;

    --border-color: #2a4a6a;
    --border-color-light: #1e3a54;

    --accent-primary: #3498db;
    --accent-warning: #f1c40f;
    --accent-danger: #e74c3c;
    --accent-success: #2ecc71;
    --accent-info: #1abc9c;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #e74c3c;
    --color-down: #2ecc71;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #0d1b2a;
    --bs-body-color: #c8dce8;
    --bs-card-bg: #1b2838;
    --bs-border-color: #2a4a6a;
}

html[data-theme="sunset"] {
    --bg-body: #2d1b2e;
    --bg-card: #3d2440;
    --bg-card-hover: #4a2d4e;
    --bg-input: #4a2d4e;
    --bg-navbar: #1a0f1c;
    --bg-table-header: #4a2d4e;
    --bg-notification: rgba(26, 15, 28, 0.95);
    --bg-news-rise: #3d1a1a;
    --bg-news-fall: #1a3d1a;
    --bg-modal: #3d2440;
    --bg-dropdown: #3d2440;
    --bg-code: #4a2d4e;

    --text-primary: #f0d0e8;
    --text-secondary: #c8a0be;
    --text-muted: #9a7090;
    --text-inverse: #2d1b2e;
    --text-link: #e880a0;

    --border-color: #5a3a5e;
    --border-color-light: #4a2a4e;

    --accent-primary: #e880a0;
    --accent-warning: #ffb74d;
    --accent-danger: #ff5252;
    --accent-success: #69f0ae;
    --accent-info: #80deea;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #ff5252;
    --color-down: #69f0ae;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #2d1b2e;
    --bs-body-color: #f0d0e8;
    --bs-card-bg: #3d2440;
    --bs-border-color: #5a3a5e;
}

html[data-theme="cyber"] {
    --bg-body: #0a0a0a;
    --bg-card: #141414;
    --bg-card-hover: #1a1a1a;
    --bg-input: #1a1a1a;
    --bg-navbar: #000000;
    --bg-table-header: #1a1a1a;
    --bg-notification: rgba(0, 0, 0, 0.95);
    --bg-news-rise: #1a0f0f;
    --bg-news-fall: #0f1a0f;
    --bg-modal: #141414;
    --bg-dropdown: #141414;
    --bg-code: #1a1a1a;

    --text-primary: #00ff88;
    --text-secondary: #00cc6a;
    --text-muted: #008844;
    --text-inverse: #0a0a0a;
    --text-link: #00ffcc;

    --border-color: #00ff8833;
    --border-color-light: #00ff881a;

    --accent-primary: #00ff88;
    --accent-warning: #ffee00;
    --accent-danger: #ff0055;
    --accent-success: #00ff88;
    --accent-info: #00ccff;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 255, 136, 0.1);
    --shadow: 0 0.5rem 1rem rgba(0, 255, 136, 0.15);

    --color-up: #ff0055;
    --color-down: #00ff88;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #0a0a0a;
    --bs-body-color: #00ff88;
    --bs-card-bg: #141414;
    --bs-border-color: #00ff8833;
}

html[data-theme="sakura"] {
    --bg-body: #2a1a24;
    --bg-card: #3d2233;
    --bg-card-hover: #4a2a3e;
    --bg-input: #4a2a3e;
    --bg-navbar: #1a0f16;
    --bg-table-header: #4a2a3e;
    --bg-notification: rgba(26, 15, 22, 0.95);
    --bg-news-rise: #3d1a22;
    --bg-news-fall: #1a3d22;
    --bg-modal: #3d2233;
    --bg-dropdown: #3d2233;
    --bg-code: #4a2a3e;

    --text-primary: #f5d0e0;
    --text-secondary: #d4a0be;
    --text-muted: #a07090;
    --text-inverse: #2a1a24;
    --text-link: #ff80ab;

    --border-color: #6a3a5a;
    --border-color-light: #5a2a4a;

    --accent-primary: #ff80ab;
    --accent-warning: #ffcc80;
    --accent-danger: #ff5252;
    --accent-success: #69f0ae;
    --accent-info: #80deea;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #ff5252;
    --color-down: #69f0ae;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #2a1a24;
    --bs-body-color: #f5d0e0;
    --bs-card-bg: #3d2233;
    --bs-border-color: #6a3a5a;
}

html[data-theme="coffee"] {
    --bg-body: #1f1710;
    --bg-card: #2e2218;
    --bg-card-hover: #3a2c20;
    --bg-input: #3a2c20;
    --bg-navbar: #140e08;
    --bg-table-header: #3a2c20;
    --bg-notification: rgba(20, 14, 8, 0.95);
    --bg-news-rise: #2e1a10;
    --bg-news-fall: #1a2e10;
    --bg-modal: #2e2218;
    --bg-dropdown: #2e2218;
    --bg-code: #3a2c20;

    --text-primary: #e8d5c0;
    --text-secondary: #c4a882;
    --text-muted: #8a7058;
    --text-inverse: #1f1710;
    --text-link: #d4a06a;

    --border-color: #5a4430;
    --border-color-light: #4a3820;

    --accent-primary: #d4a06a;
    --accent-warning: #ffc107;
    --accent-danger: #e06050;
    --accent-success: #7cb342;
    --accent-info: #80cbc4;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #e06050;
    --color-down: #7cb342;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #1f1710;
    --bs-body-color: #e8d5c0;
    --bs-card-bg: #2e2218;
    --bs-border-color: #5a4430;
}

html[data-theme="retro"] {
    --bg-body: #1a1a10;
    --bg-card: #28281c;
    --bg-card-hover: #323224;
    --bg-input: #323224;
    --bg-navbar: #10100a;
    --bg-table-header: #323224;
    --bg-notification: rgba(16, 16, 10, 0.95);
    --bg-news-rise: #281a10;
    --bg-news-fall: #1a2810;
    --bg-modal: #28281c;
    --bg-dropdown: #28281c;
    --bg-code: #323224;

    --text-primary: #e8e0c8;
    --text-secondary: #c8b890;
    --text-muted: #8a7a58;
    --text-inverse: #1a1a10;
    --text-link: #e8c840;

    --border-color: #5a5030;
    --border-color-light: #4a4020;

    --accent-primary: #e8c840;
    --accent-warning: #ff9800;
    --accent-danger: #e06040;
    --accent-success: #8bc34a;
    --accent-info: #4dd0e1;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);

    --color-up: #e06040;
    --color-down: #8bc34a;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #1a1a10;
    --bs-body-color: #e8e0c8;
    --bs-card-bg: #28281c;
    --bs-border-color: #5a5030;
}

html[data-theme="market"] {
    --bg-body: #0b0e11;
    --bg-card: #141821;
    --bg-card-hover: #1a2030;
    --bg-input: #1a2030;
    --bg-navbar: #060809;
    --bg-table-header: #1a2030;
    --bg-notification: rgba(6, 8, 9, 0.95);
    --bg-news-rise: #1a1010;
    --bg-news-fall: #101a10;
    --bg-modal: #141821;
    --bg-dropdown: #141821;
    --bg-code: #1a2030;

    --text-primary: #eaecef;
    --text-secondary: #b7bdc6;
    --text-muted: #5e6673;
    --text-inverse: #0b0e11;
    --text-link: #f0b90b;

    --border-color: #2b3139;
    --border-color-light: #1e2329;

    --accent-primary: #f0b90b;
    --accent-warning: #f0b90b;
    --accent-danger: #f6465d;
    --accent-success: #0ecb81;
    --accent-info: #1e80ff;

    --shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.4);
    --shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.6);

    --color-up: #f6465d;
    --color-down: #0ecb81;
    --color-limit-up: #ff0000;
    --color-limit-down: #00ff00;

    --bs-body-bg: #0b0e11;
    --bs-body-color: #eaecef;
    --bs-card-bg: #141821;
    --bs-border-color: #2b3139;
}
