:root {
    color-scheme: dark;
    --bg: #0d1015;
    --surface: #171b22;
    --surface-2: #1c222b;
    --surface-3: #222a34;
    --surface-inset: #101419;
    --surface-subtle: #13171d;
    --border: #2d3540;
    --border-strong: #394452;
    --row-border: #252c35;
    --text: #edf2f7;
    --text-strong: #ffffff;
    --text-soft: #cbd5e1;
    --muted: #9ba8b7;
    --muted-2: #6f7d8c;
    --link: #c8dbf2;
    --link-hover: #ffffff;
    --primary: #dce7f4;
    --primary-hover: #edf4fb;
    --primary-contrast: #111418;
    --nav-bg: #14181e;
    --nav-text: #b8c4d2;
    --nav-hover-bg: #202730;
    --nav-active-bg: #222a34;
    --nav-active-fg: #eef5ff;
    --input-bg: #101419;
    --input-border: #394452;
    --focus: #70839a;
    --focus-ring: rgba(112, 131, 154, .18);
    --table-head-bg: #151a20;
    --table-head-fg: #95a4b5;
    --chip-bg: #202731;
    --chip-border: #3a4653;
    --chip-fg: #cdd9e6;
    --chip-muted: #8291a2;
    --shadow: rgba(0, 0, 0, .24);
    --shadow-strong: rgba(0, 0, 0, .5);
    --overlay: rgba(3, 6, 10, .72);
    --success-fg: #bfe8ce;
    --success-bg: #13251b;
    --success-border: #365a46;
    --danger: #ff8a8a;
    --danger-fg: #ffc0c0;
    --danger-bg: #2b1719;
    --danger-border: #77474b;
    --warning-fg: #f5d990;
    --warning-bg: #3a2d13;
    --warning-border: #735b25;
    --info-fg: #a8d4ff;
    --info-bg: #13283b;
    --info-border: #345c7e;
    --priority-low-fg: #aab7c5;
    --priority-low-bg: #1b2027;
    --priority-low-border: #46515e;
    --priority-medium-fg: #9ecbff;
    --priority-medium-bg: #15263a;
    --priority-medium-border: #335f8a;
    --priority-high-fg: #f5cf7b;
    --priority-high-bg: #332910;
    --priority-high-border: #66542b;
    --priority-urgent-fg: #ff9f9f;
    --priority-urgent-bg: #35191b;
    --priority-urgent-border: #713c3c;
    --status-neutral: #6b7280;
    --board-column-bg: #13171d;
    --calendar-outside-bg: #12161b;
    --calendar-today-ring: #647992;
    --drag-outline: #60758d;
    --code-bg: #0b0f13;
    --captcha-bg: #f4f6f8;
}

body[data-theme="graphite"] { color-scheme: dark; }

body[data-theme="midnight"] {
    color-scheme: dark;
    --bg: #080d16;
    --surface: #101827;
    --surface-2: #152033;
    --surface-3: #1b2a41;
    --surface-inset: #0b1220;
    --surface-subtle: #0e1624;
    --border: #26364d;
    --border-strong: #344a68;
    --row-border: #1e2c40;
    --text: #e8f0fb;
    --text-strong: #ffffff;
    --text-soft: #c3d1e3;
    --muted: #91a4bc;
    --muted-2: #657994;
    --link: #9dccff;
    --link-hover: #d9ecff;
    --primary: #9dccff;
    --primary-hover: #c4e0ff;
    --primary-contrast: #07111e;
    --nav-bg: #0c1421;
    --nav-text: #adc0d7;
    --nav-hover-bg: #162338;
    --nav-active-bg: #1a2c46;
    --nav-active-fg: #eaf5ff;
    --input-bg: #0b1321;
    --input-border: #344a68;
    --focus: #5d91c5;
    --focus-ring: rgba(93, 145, 197, .2);
    --table-head-bg: #0e1725;
    --table-head-fg: #8ea5c0;
    --chip-bg: #17263a;
    --chip-border: #34506e;
    --chip-fg: #c7d8eb;
    --chip-muted: #7f95af;
    --board-column-bg: #0d1522;
    --calendar-outside-bg: #090f19;
    --calendar-today-ring: #5f8fbe;
    --drag-outline: #628fb9;
    --code-bg: #070c14;
    --success-fg: #9de3c1;
    --success-bg: #0d2a22;
    --success-border: #2b6a53;
    --danger: #ff8f8c;
    --danger-fg: #ffaaa8;
    --danger-bg: #32171d;
    --danger-border: #75404a;
    --warning-fg: #f3d58c;
    --warning-bg: #302817;
    --warning-border: #69562b;
    --priority-low-fg: #9eafc2;
    --priority-low-bg: #111c2a;
    --priority-low-border: #40536a;
    --priority-medium-fg: #91caff;
    --priority-medium-bg: #102942;
    --priority-medium-border: #2e6697;
    --priority-high-fg: #f3cd78;
    --priority-high-bg: #302711;
    --priority-high-border: #6b5526;
    --priority-urgent-fg: #ff9d9d;
    --priority-urgent-bg: #33161d;
    --priority-urgent-border: #75404a;
}

body[data-theme="warm-dark"] {
    color-scheme: dark;
    --bg: #12100f;
    --surface: #1c1917;
    --surface-2: #24201d;
    --surface-3: #2d2824;
    --surface-inset: #151210;
    --surface-subtle: #191513;
    --border: #3b342f;
    --border-strong: #504740;
    --row-border: #332d29;
    --text: #f1ece6;
    --text-strong: #fffaf4;
    --text-soft: #d8cec4;
    --muted: #a99b8f;
    --muted-2: #7d7066;
    --link: #e3c6a7;
    --link-hover: #fff0de;
    --primary: #e4c9aa;
    --primary-hover: #f2dbc0;
    --primary-contrast: #211a15;
    --nav-bg: #171310;
    --nav-text: #c6b7a8;
    --nav-hover-bg: #29221d;
    --nav-active-bg: #332a23;
    --nav-active-fg: #fff2e4;
    --input-bg: #151210;
    --input-border: #504740;
    --focus: #9b7a5d;
    --focus-ring: rgba(155, 122, 93, .2);
    --table-head-bg: #191512;
    --table-head-fg: #a99787;
    --chip-bg: #2a231f;
    --chip-border: #4e4238;
    --chip-fg: #ddcfc1;
    --chip-muted: #948477;
    --board-column-bg: #181412;
    --calendar-outside-bg: #100d0c;
    --calendar-today-ring: #9b7a5d;
    --drag-outline: #9b7a5d;
    --code-bg: #0e0c0b;
    --success-fg: #b8dfb7;
    --success-bg: #1a271a;
    --success-border: #466347;
    --danger: #e88e86;
    --danger-fg: #f3a09b;
    --danger-bg: #321c1a;
    --danger-border: #754841;
    --warning-fg: #f0ce87;
    --warning-bg: #332817;
    --warning-border: #745827;
    --priority-low-fg: #b5aaa1;
    --priority-low-bg: #221e1b;
    --priority-low-border: #544a43;
    --priority-medium-fg: #9fc7e8;
    --priority-medium-bg: #172530;
    --priority-medium-border: #3f6078;
    --priority-high-fg: #efc875;
    --priority-high-bg: #332815;
    --priority-high-border: #755b2a;
    --priority-urgent-fg: #f1a09a;
    --priority-urgent-bg: #321c1a;
    --priority-urgent-border: #754841;
}

body[data-theme="paper"] {
    color-scheme: light;
    --bg: #f2f3f5;
    --surface: #ffffff;
    --surface-2: #f8fafc;
    --surface-3: #edf1f5;
    --surface-inset: #ffffff;
    --surface-subtle: #f7f8fa;
    --border: #ced6df;
    --border-strong: #aebac7;
    --row-border: #dce3ea;
    --text: #17212b;
    --text-strong: #101820;
    --text-soft: #394858;
    --muted: #64748b;
    --muted-2: #8896a6;
    --link: #1f5f91;
    --link-hover: #14486f;
    --primary: #263f58;
    --primary-hover: #1f3449;
    --primary-contrast: #ffffff;
    --nav-bg: #f7f8fa;
    --nav-text: #526171;
    --nav-hover-bg: #e5eaf0;
    --nav-active-bg: #dce6ef;
    --nav-active-fg: #17212b;
    --input-bg: #ffffff;
    --input-border: #b9c4d0;
    --focus: #5d7894;
    --focus-ring: rgba(93, 120, 148, .18);
    --table-head-bg: #eef2f6;
    --table-head-fg: #526171;
    --chip-bg: #eef2f6;
    --chip-border: #c1ccd7;
    --chip-fg: #344454;
    --chip-muted: #718196;
    --shadow: rgba(31, 41, 55, .08);
    --shadow-strong: rgba(31, 41, 55, .22);
    --overlay: rgba(19, 28, 38, .42);
    --success-fg: #17613d;
    --success-bg: #e9f6ee;
    --success-border: #96c9aa;
    --danger: #b42318;
    --danger-fg: #9f1c14;
    --danger-bg: #fff0ee;
    --danger-border: #e3a39e;
    --warning-fg: #805500;
    --warning-bg: #fff6dc;
    --warning-border: #dfbf69;
    --info-fg: #155c8a;
    --info-bg: #eaf5fc;
    --info-border: #91bfdc;
    --priority-low-fg: #586574;
    --priority-low-bg: #eef1f4;
    --priority-low-border: #c5cdd6;
    --priority-medium-fg: #155b93;
    --priority-medium-bg: #e7f2fb;
    --priority-medium-border: #8bb8da;
    --priority-high-fg: #855b00;
    --priority-high-bg: #fff4d5;
    --priority-high-border: #dfbc5f;
    --priority-urgent-fg: #a92720;
    --priority-urgent-bg: #feeceb;
    --priority-urgent-border: #e5a39f;
    --status-neutral: #687789;
    --board-column-bg: #f7f9fb;
    --calendar-outside-bg: #eef1f4;
    --calendar-today-ring: #557897;
    --drag-outline: #557897;
    --code-bg: #eef1f4;
}

body[data-theme="frost"] {
    color-scheme: light;
    --bg: #edf3f7;
    --surface: #ffffff;
    --surface-2: #f5f9fc;
    --surface-3: #e7f0f6;
    --surface-inset: #fbfdff;
    --surface-subtle: #f2f7fa;
    --border: #c7d6e1;
    --border-strong: #9fb4c3;
    --row-border: #d6e2ea;
    --text: #16232d;
    --text-strong: #0d1821;
    --text-soft: #364b5a;
    --muted: #61798a;
    --muted-2: #8195a3;
    --link: #1f678e;
    --link-hover: #144a68;
    --primary: #286282;
    --primary-hover: #1f516d;
    --primary-contrast: #ffffff;
    --nav-bg: #f4f8fb;
    --nav-text: #4f6879;
    --nav-hover-bg: #dfebf2;
    --nav-active-bg: #d4e5ef;
    --nav-active-fg: #132631;
    --input-bg: #fbfdff;
    --input-border: #aac0cf;
    --focus: #4d83a2;
    --focus-ring: rgba(77, 131, 162, .18);
    --table-head-bg: #e8f0f5;
    --table-head-fg: #4d687a;
    --chip-bg: #e8f1f6;
    --chip-border: #b8cbd7;
    --chip-fg: #324c5d;
    --chip-muted: #6f8797;
    --shadow: rgba(31, 61, 80, .08);
    --shadow-strong: rgba(31, 61, 80, .22);
    --overlay: rgba(22, 43, 56, .4);
    --success-fg: #176343;
    --success-bg: #e6f6ee;
    --success-border: #8fc8a8;
    --danger: #b22a24;
    --danger-fg: #9f241f;
    --danger-bg: #fff0ef;
    --danger-border: #e3aaa6;
    --warning-fg: #805a09;
    --warning-bg: #fff6dc;
    --warning-border: #dec374;
    --info-fg: #155f86;
    --info-bg: #e6f4fb;
    --info-border: #8fc1d8;
    --priority-low-fg: #5c6e79;
    --priority-low-bg: #eaf0f3;
    --priority-low-border: #bfccd4;
    --priority-medium-fg: #17628f;
    --priority-medium-bg: #e2f1fa;
    --priority-medium-border: #87bbd8;
    --priority-high-fg: #845d08;
    --priority-high-bg: #fff5d8;
    --priority-high-border: #dec16e;
    --priority-urgent-fg: #a82e29;
    --priority-urgent-bg: #fdeceb;
    --priority-urgent-border: #e3a7a3;
    --status-neutral: #687c88;
    --board-column-bg: #f3f8fb;
    --calendar-outside-bg: #e7eef3;
    --calendar-today-ring: #4d83a2;
    --drag-outline: #4d83a2;
    --code-bg: #e7eef3;
}

body[data-theme="system"] { color-scheme: dark; }

@media (prefers-color-scheme: light) {
    body[data-theme="system"] {
        color-scheme: light;
        --bg: #f2f3f5;
        --surface: #ffffff;
        --surface-2: #f8fafc;
        --surface-3: #edf1f5;
        --surface-inset: #ffffff;
        --surface-subtle: #f7f8fa;
        --border: #ced6df;
        --border-strong: #aebac7;
        --row-border: #dce3ea;
        --text: #17212b;
        --text-strong: #101820;
        --text-soft: #394858;
        --muted: #64748b;
        --muted-2: #8896a6;
        --link: #1f5f91;
        --link-hover: #14486f;
        --primary: #263f58;
        --primary-hover: #1f3449;
        --primary-contrast: #ffffff;
        --nav-bg: #f7f8fa;
        --nav-text: #526171;
        --nav-hover-bg: #e5eaf0;
        --nav-active-bg: #dce6ef;
        --nav-active-fg: #17212b;
        --input-bg: #ffffff;
        --input-border: #b9c4d0;
        --focus: #5d7894;
        --focus-ring: rgba(93, 120, 148, .18);
        --table-head-bg: #eef2f6;
        --table-head-fg: #526171;
        --chip-bg: #eef2f6;
        --chip-border: #c1ccd7;
        --chip-fg: #344454;
        --chip-muted: #718196;
        --shadow: rgba(31, 41, 55, .08);
        --shadow-strong: rgba(31, 41, 55, .22);
        --overlay: rgba(19, 28, 38, .42);
        --success-fg: #17613d;
        --success-bg: #e9f6ee;
        --success-border: #96c9aa;
        --danger: #b42318;
        --danger-fg: #9f1c14;
        --danger-bg: #fff0ee;
        --danger-border: #e3a39e;
        --warning-fg: #805500;
        --warning-bg: #fff6dc;
        --warning-border: #dfbf69;
        --info-fg: #155c8a;
        --info-bg: #eaf5fc;
        --info-border: #91bfdc;
        --priority-low-fg: #586574;
        --priority-low-bg: #eef1f4;
        --priority-low-border: #c5cdd6;
        --priority-medium-fg: #155b93;
        --priority-medium-bg: #e7f2fb;
        --priority-medium-border: #8bb8da;
        --priority-high-fg: #855b00;
        --priority-high-bg: #fff4d5;
        --priority-high-border: #dfbc5f;
        --priority-urgent-fg: #a92720;
        --priority-urgent-bg: #feeceb;
        --priority-urgent-border: #e5a39f;
        --status-neutral: #687789;
        --board-column-bg: #f7f9fb;
        --calendar-outside-bg: #eef1f4;
        --calendar-today-ring: #557897;
        --drag-outline: #557897;
        --code-bg: #eef1f4;
    }
}
