:root {
    color-scheme: dark;

    --tfc-page-bg: #111;
    --tfc-surface-bg: rgba(12,12,20,0.88);
    --tfc-surface-border: rgba(255,255,255,0.10);
    --tfc-surface-border-subtle: rgba(255,255,255,0.08);
    --tfc-surface-hover: rgba(255,255,255,0.04);

    --tfc-text-primary: #ddd;
    --tfc-text-secondary: #aaa;
    --tfc-text-muted: #555;
    --tfc-text-faint: #444;

    --tfc-accent: #4a9eff;
    --tfc-btn-active-bg: rgba(80,140,255,0.85);
    --tfc-btn-inactive-bg: rgba(255,255,255,0.06);
    --tfc-btn-border: rgba(255,255,255,0.15);

    --tfc-input-bg: rgba(255,255,255,0.05);
    --tfc-input-border: rgba(255,255,255,0.12);

    --tfc-danger-bg: rgba(255,80,80,0.15);
    --tfc-danger-text: #f88;
    --tfc-danger-border: rgba(255,80,80,0.3);

    --tfc-select-rect-border: rgba(80,200,255,0.8);
    --tfc-select-rect-fill: rgba(80,200,255,0.06);

    --tfc-status-bg: rgba(0,0,0,0.7);
    --tfc-loader-bg: rgba(8,8,16,0.75);
    --tfc-spinner-track: rgba(255,255,255,0.15);
    --tfc-spinner-tip: rgba(80,140,255,0.9);
    --tfc-accent-slider: rgba(80,140,255,0.85);

    --tfc-loader-bar: #4a9eff;
    --tfc-loader-bar-glow: #4a9eff88;
    --tfc-loader-title: #e8e8e8;
    --tfc-loader-sub: #555;
    --tfc-loader-track: #222;

    --tfc-history-row-active: rgba(80,140,255,0.08);
    --tfc-history-row-hover: rgba(100,160,255,0.14);
    --tfc-history-row-divider: rgba(255,255,255,0.04);
    --tfc-history-footer-border: rgba(255,255,255,0.07);
}

[data-theme="light"] {
    color-scheme: light;

    --tfc-page-bg: #f0f2f5;
    --tfc-surface-bg: rgba(240,242,248,0.92);
    --tfc-surface-border: rgba(0,0,0,0.12);
    --tfc-surface-border-subtle: rgba(0,0,0,0.08);
    --tfc-surface-hover: rgba(0,0,0,0.04);

    --tfc-text-primary: #1a1a2e;
    --tfc-text-secondary: #444;
    --tfc-text-muted: #999;
    --tfc-text-faint: #bbb;

    --tfc-accent: #1a6fcc;
    --tfc-btn-active-bg: rgba(26,111,204,0.90);
    --tfc-btn-inactive-bg: rgba(0,0,0,0.06);
    --tfc-btn-border: rgba(0,0,0,0.15);

    --tfc-input-bg: rgba(0,0,0,0.05);
    --tfc-input-border: rgba(0,0,0,0.15);

    --tfc-danger-bg: rgba(220,30,30,0.10);
    --tfc-danger-text: #c00;
    --tfc-danger-border: rgba(220,30,30,0.25);

    --tfc-select-rect-border: rgba(0,120,220,0.7);
    --tfc-select-rect-fill: rgba(0,120,220,0.06);

    --tfc-status-bg: rgba(255,255,255,0.85);
    --tfc-loader-bg: rgba(240,242,248,0.85);
    --tfc-spinner-track: rgba(0,0,0,0.12);
    --tfc-spinner-tip: rgba(26,111,204,0.9);
    --tfc-accent-slider: rgba(26,111,204,0.85);

    --tfc-loader-bar: #1a6fcc;
    --tfc-loader-bar-glow: #1a6fcc88;
    --tfc-loader-title: #1a1a2e;
    --tfc-loader-sub: #888;
    --tfc-loader-track: #ccc;

    --tfc-history-row-active: rgba(26,111,204,0.08);
    --tfc-history-row-hover: rgba(26,111,204,0.14);
    --tfc-history-row-divider: rgba(0,0,0,0.05);
    --tfc-history-footer-border: rgba(0,0,0,0.08);
}
