:root {
    --app-bg: #f4f6fb;
    --app-surface: #ffffff;
    --app-surface-alt: #f7f8fc;
    --app-surface-muted: #eef2f8;
    --app-text: #152033;
    --app-text-muted: #5d6980;
    --app-text-soft: #7a8598;
    --app-border: #d6dceb;
    --app-border-strong: #b8c2d8;
    --app-link: #005faf;
    --app-link-hover: #00457f;
    --app-primary: #0b78d1;
    --app-primary-hover: #085f9f;
    --app-primary-contrast: #ffffff;
    --app-success: #2b9b58;
    --app-success-hover: #227b46;
    --app-danger: #d9534f;
    --app-danger-hover: #b63c39;
    --app-warning: #f3d977;
    --app-warning-hover: #e5ca5c;
    --app-focus-ring: rgba(37, 140, 251, 0.4);
    --app-shadow-soft: 0 2px 8px rgba(17, 24, 39, 0.12);
    --app-shadow-strong: 0 10px 30px rgba(17, 24, 39, 0.16);
    --app-sidebar-gradient: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
    --app-sidebar-top-row: rgba(0, 0, 0, 0.35);
    --app-sidebar-text: #f5f7fb;
    --app-sidebar-text-muted: #d7deea;
    --app-sidebar-hover: rgba(255, 255, 255, 0.12);
    --app-sidebar-active: rgba(255, 255, 255, 0.24);
    --app-sidebar-toggle-border: rgba(255, 255, 255, 0.12);
    --app-sidebar-toggle-surface: rgba(255, 255, 255, 0.1);
    --app-sidebar-toggle-surface-active: rgba(255, 255, 255, 0.5);
    --app-sidebar-toggle-icon: rgba(255, 255, 255, 0.55);
    --app-progress-track: #e4e9f3;
    --theme-toggle-surface: rgba(255, 255, 255, 0.88);
    --theme-toggle-border: rgba(166, 176, 194, 0.55);
    --theme-toggle-text: #58657b;
    --theme-toggle-text-strong: #1f2a3d;
    --theme-toggle-hover: rgba(11, 120, 209, 0.1);
    --theme-toggle-active-bg: #0b78d1;
    --theme-toggle-active-text: #ffffff;
    --theme-toggle-shadow: 0 8px 24px rgba(17, 24, 39, 0.08);
    --error-ui-bg: #fff7c2;
    --error-ui-text: #3d2f00;
    --error-ui-shadow: 0 -1px 2px rgba(17, 24, 39, 0.2);
    --error-boundary-bg: #b32121;
    --error-boundary-icon: #ffe500;
}

:root[data-theme="dark"] {
    --app-bg: #0f1725;
    --app-surface: #182132;
    --app-surface-alt: #111a2b;
    --app-surface-muted: #202b3e;
    --app-text: #e8eef9;
    --app-text-muted: #b2bfd5;
    --app-text-soft: #92a0b8;
    --app-border: #2b3952;
    --app-border-strong: #3a4b69;
    --app-link: #7db8ff;
    --app-link-hover: #a8d0ff;
    --app-primary: #5ca8ff;
    --app-primary-hover: #84bcff;
    --app-primary-contrast: #08111f;
    --app-success: #4cc476;
    --app-success-hover: #69d18a;
    --app-danger: #ff807c;
    --app-danger-hover: #ff9a96;
    --app-warning: #f2d36b;
    --app-warning-hover: #f6de8d;
    --app-focus-ring: rgba(125, 184, 255, 0.45);
    --app-shadow-soft: 0 4px 14px rgba(0, 0, 0, 0.28);
    --app-shadow-strong: 0 14px 34px rgba(0, 0, 0, 0.38);
    --app-sidebar-gradient: linear-gradient(180deg, #0c1321 0%, #1b1f3f 55%, #102f39 100%);
    --app-sidebar-top-row: rgba(255, 255, 255, 0.05);
    --app-sidebar-text: #ecf2ff;
    --app-sidebar-text-muted: #b8c5db;
    --app-sidebar-hover: rgba(255, 255, 255, 0.1);
    --app-sidebar-active: rgba(125, 184, 255, 0.24);
    --app-sidebar-toggle-border: rgba(125, 184, 255, 0.22);
    --app-sidebar-toggle-surface: rgba(125, 184, 255, 0.12);
    --app-sidebar-toggle-surface-active: rgba(125, 184, 255, 0.32);
    --app-sidebar-toggle-icon: rgba(236, 242, 255, 0.72);
    --app-progress-track: #223049;
    --theme-toggle-surface: rgba(24, 33, 50, 0.9);
    --theme-toggle-border: rgba(76, 95, 127, 0.75);
    --theme-toggle-text: #b5c3da;
    --theme-toggle-text-strong: #eef4ff;
    --theme-toggle-hover: rgba(125, 184, 255, 0.12);
    --theme-toggle-active-bg: #5ca8ff;
    --theme-toggle-active-text: #08111f;
    --theme-toggle-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
    --error-ui-bg: #5c261f;
    --error-ui-text: #fff0eb;
    --error-ui-shadow: 0 -1px 2px rgba(0, 0, 0, 0.32);
    --error-boundary-bg: #7a2b24;
    --error-boundary-icon: #ffd76a;
}
