/* ==========================================================================
   DataBridge palettes - GENERATED by tools/gen-db-palettes.py from
   docs/design/THEMES.md. DO NOT EDIT; change the spec and re-run the script.

   `data-palette` on <html> selects a palette; absent (or "meridian") is the default,
   whose tokens live in databridge-ui.css. Each palette overrides the --db-* tokens for
   light, for the OS-dark default, and for an explicit data-theme="dark" - the same three
   blocks databridge-ui.css keeps for its own tokens. Load AFTER databridge-ui.css.
   Product-neutral: nothing here names DataBridge features, so pERPetual can load it.
   ========================================================================== */

/* ---- Bordeaux (ExtensibilityCo company theme) */
:root[data-palette="bordeaux"] {
    --db-app: #e9dfcc;
    --db-surface: #f6efe1;
    --db-surface-2: #efe5d2;
    --db-surface-3: #e8dcc7;
    --db-band: #efe5d2;
    --db-band-2: #e8dcc7;
    --db-layer-2: #efe5d2;
    --db-line: #d3c3a6;
    --db-line-soft: #e1d5be;
    --db-line-strong: #a0907a;
    --db-ink: #2a1a14;
    --db-ink-2: #3a2920;
    --db-muted: #5f4b3b;
    --db-faint: #5f4b3b;
    --db-accent: #500000;
    --db-primary: #500000;
    --db-accent-deep: #480504;
    --db-accent-soft: #f0dcd2;
    --db-accent-line: #b48f87;
    --db-on-accent: #ffffff;
    --db-secondary: #9a7a3a;
    --db-selection: #f0dcd2;
    --db-shell: #2a1a14;
    --db-shell-ink: #f1e4cc;
    --db-shell-muted: #b9ab98;
    --db-shell-line: #56463c;
    --db-shell-hover: #42322a;
    --db-viz-1: #500000;
    --db-viz-2: #9a7a3a;
    --db-viz-3: #3f5f7a;
    --db-viz-4: #6b7a3a;
    --db-viz-5: #7a4a6a;
    --db-viz-6: #b8835a;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="bordeaux"]:not([data-theme="light"]) {
        --db-app: #16100e;
        --db-surface: #1e1714;
        --db-surface-2: #271e1a;
        --db-surface-3: #2c221d;
        --db-band: #271e1a;
        --db-band-2: #2c221d;
        --db-layer-2: #271e1a;
        --db-line: #3a2d26;
        --db-line-soft: #2f241f;
        --db-line-strong: #716458;
        --db-ink: #f1e4cc;
        --db-ink-2: #e0d0b9;
        --db-muted: #b9a28c;
        --db-faint: #b9a28c;
        --db-accent: #b38278;
        --db-primary: #6b1015;
        --db-accent-deep: #bf9689;
        --db-accent-soft: #3a1c1e;
        --db-accent-line: #5a423c;
        --db-on-accent: #000000;
        --db-secondary: #d9b98c;
        --db-selection: #3a1c1e;
        --db-shell: #0f0a08;
        --db-shell-ink: #f1e4cc;
        --db-shell-muted: #b2a795;
        --db-shell-line: #413a33;
        --db-shell-hover: #2a2420;
        --db-viz-1: #d9b98c;
        --db-viz-2: #8fb0cf;
        --db-viz-3: #a8b86a;
        --db-viz-4: #b8a0d8;
        --db-viz-5: #e0b08a;
        --db-viz-6: #9fb2a8;
    }
}

:root[data-palette="bordeaux"][data-theme="dark"] {
    --db-app: #16100e;
    --db-surface: #1e1714;
    --db-surface-2: #271e1a;
    --db-surface-3: #2c221d;
    --db-band: #271e1a;
    --db-band-2: #2c221d;
    --db-layer-2: #271e1a;
    --db-line: #3a2d26;
    --db-line-soft: #2f241f;
    --db-line-strong: #716458;
    --db-ink: #f1e4cc;
    --db-ink-2: #e0d0b9;
    --db-muted: #b9a28c;
    --db-faint: #b9a28c;
    --db-accent: #b38278;
    --db-primary: #6b1015;
    --db-accent-deep: #bf9689;
    --db-accent-soft: #3a1c1e;
    --db-accent-line: #5a423c;
    --db-on-accent: #000000;
    --db-secondary: #d9b98c;
    --db-selection: #3a1c1e;
    --db-shell: #0f0a08;
    --db-shell-ink: #f1e4cc;
    --db-shell-muted: #b2a795;
    --db-shell-line: #413a33;
    --db-shell-hover: #2a2420;
    --db-viz-1: #d9b98c;
    --db-viz-2: #8fb0cf;
    --db-viz-3: #a8b86a;
    --db-viz-4: #b8a0d8;
    --db-viz-5: #e0b08a;
    --db-viz-6: #9fb2a8;
}

/* Bordeaux: Space Grotesk for headings only; body type stays IBM Plex Sans. */
:root[data-palette="bordeaux"] :is(.db-page-title, .db-shell h1, .db-shell h2, .db-shell h3,
    .db-rh-title h1, .db-panel-head h2, .db-attn-head h2, .db-rail-head h2, .db-brand-name) {
    font-family: "Space Grotesk", var(--db-font-ui);
}

/* ---- Harbor (Executive) */
:root[data-palette="harbor"] {
    --db-app: #eeece7;
    --db-surface: #fffefb;
    --db-surface-2: #f5f3ee;
    --db-surface-3: #eeebe4;
    --db-band: #f5f3ee;
    --db-band-2: #eeebe4;
    --db-layer-2: #f5f3ee;
    --db-line: #d9d4c8;
    --db-line-soft: #e8e5dc;
    --db-line-strong: #9e9e9d;
    --db-ink: #13213a;
    --db-ink-2: #29354c;
    --db-muted: #5b6476;
    --db-faint: #5b6476;
    --db-accent: #14325c;
    --db-primary: #14325c;
    --db-accent-deep: #142f55;
    --db-accent-soft: #e6ebf3;
    --db-accent-line: #a1acbb;
    --db-on-accent: #ffffff;
    --db-secondary: #9a7228;
    --db-selection: #e6ebf3;
    --db-shell: #0e1d33;
    --db-shell-ink: #efe9dc;
    --db-shell-muted: #b0b0ad;
    --db-shell-line: #404a58;
    --db-shell-hover: #293547;
    --db-viz-1: #14325c;
    --db-viz-2: #9a7228;
    --db-viz-3: #3f7f86;
    --db-viz-4: #8a4a5a;
    --db-viz-5: #7d8798;
    --db-viz-6: #5a6e3a;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="harbor"]:not([data-theme="light"]) {
        --db-app: #0a1322;
        --db-surface: #101b2e;
        --db-surface-2: #16233a;
        --db-surface-3: #1a273f;
        --db-band: #16233a;
        --db-band-2: #1a273f;
        --db-layer-2: #16233a;
        --db-line: #24334d;
        --db-line-soft: #1c2941;
        --db-line-strong: #606977;
        --db-ink: #ebe6da;
        --db-ink-2: #d4d3d0;
        --db-muted: #a0a8b8;
        --db-faint: #a0a8b8;
        --db-accent: #8fb2e6;
        --db-primary: #8fb2e6;
        --db-accent-deep: #a1bce4;
        --db-accent-soft: #1b2f50;
        --db-accent-line: #435778;
        --db-on-accent: #000000;
        --db-secondary: #d6ac5c;
        --db-selection: #1b2f50;
        --db-shell: #060d18;
        --db-shell-ink: #ece5d6;
        --db-shell-muted: #aca9a1;
        --db-shell-line: #393d42;
        --db-shell-hover: #22272f;
        --db-viz-1: #8fb2e6;
        --db-viz-2: #d6ac5c;
        --db-viz-3: #76c0c6;
        --db-viz-4: #d58f9f;
        --db-viz-5: #aeb8c8;
        --db-viz-6: #a8bd7a;
    }
}

:root[data-palette="harbor"][data-theme="dark"] {
    --db-app: #0a1322;
    --db-surface: #101b2e;
    --db-surface-2: #16233a;
    --db-surface-3: #1a273f;
    --db-band: #16233a;
    --db-band-2: #1a273f;
    --db-layer-2: #16233a;
    --db-line: #24334d;
    --db-line-soft: #1c2941;
    --db-line-strong: #606977;
    --db-ink: #ebe6da;
    --db-ink-2: #d4d3d0;
    --db-muted: #a0a8b8;
    --db-faint: #a0a8b8;
    --db-accent: #8fb2e6;
    --db-primary: #8fb2e6;
    --db-accent-deep: #a1bce4;
    --db-accent-soft: #1b2f50;
    --db-accent-line: #435778;
    --db-on-accent: #000000;
    --db-secondary: #d6ac5c;
    --db-selection: #1b2f50;
    --db-shell: #060d18;
    --db-shell-ink: #ece5d6;
    --db-shell-muted: #aca9a1;
    --db-shell-line: #393d42;
    --db-shell-hover: #22272f;
    --db-viz-1: #8fb2e6;
    --db-viz-2: #d6ac5c;
    --db-viz-3: #76c0c6;
    --db-viz-4: #d58f9f;
    --db-viz-5: #aeb8c8;
    --db-viz-6: #a8bd7a;
}

/* ---- Fjord (Calm, cool) */
:root[data-palette="fjord"] {
    --db-app: #eaf1f1;
    --db-surface: #fbfdfd;
    --db-surface-2: #f2f7f7;
    --db-surface-3: #e9f1f1;
    --db-band: #f2f7f7;
    --db-band-2: #e9f1f1;
    --db-layer-2: #f2f7f7;
    --db-line: #cfdfdf;
    --db-line-soft: #e1ebeb;
    --db-line-strong: #96a8a9;
    --db-ink: #10292b;
    --db-ink-2: #233d3f;
    --db-muted: #506b6d;
    --db-faint: #506b6d;
    --db-accent: #0e6f73;
    --db-primary: #0e6f73;
    --db-accent-deep: #0e6165;
    --db-accent-soft: #ddf0ef;
    --db-accent-line: #9cc4c6;
    --db-on-accent: #ffffff;
    --db-secondary: #d0573e;
    --db-selection: #ddf0ef;
    --db-shell: #0d3b3e;
    --db-shell-ink: #e2f2f1;
    --db-shell-muted: #a6bfbf;
    --db-shell-line: #3c6365;
    --db-shell-hover: #275153;
    --db-viz-1: #0e6f73;
    --db-viz-2: #d0573e;
    --db-viz-3: #3b6fb6;
    --db-viz-4: #8f6bb3;
    --db-viz-5: #7f9c9d;
    --db-viz-6: #c4a23a;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="fjord"]:not([data-theme="light"]) {
        --db-app: #0a1718;
        --db-surface: #0f2022;
        --db-surface-2: #15292b;
        --db-surface-3: #182d2f;
        --db-band: #15292b;
        --db-band-2: #182d2f;
        --db-layer-2: #15292b;
        --db-line: #1f3a3c;
        --db-line-soft: #193032;
        --db-line-strong: #586f70;
        --db-ink: #dcecea;
        --db-ink-2: #c2d7d6;
        --db-muted: #86a5a6;
        --db-faint: #86a5a6;
        --db-accent: #4fc4c0;
        --db-primary: #4fc4c0;
        --db-accent-deep: #6bccc8;
        --db-accent-soft: #12393a;
        --db-accent-line: #296261;
        --db-on-accent: #000000;
        --db-secondary: #f08a73;
        --db-selection: #12393a;
        --db-shell: #051a1c;
        --db-shell-ink: #d8eeec;
        --db-shell-muted: #9db3b2;
        --db-shell-line: #33494a;
        --db-shell-hover: #1e3335;
        --db-viz-1: #4fc4c0;
        --db-viz-2: #f08a73;
        --db-viz-3: #7fa8ea;
        --db-viz-4: #bd9ce6;
        --db-viz-5: #9fbcbd;
        --db-viz-6: #e6c763;
    }
}

:root[data-palette="fjord"][data-theme="dark"] {
    --db-app: #0a1718;
    --db-surface: #0f2022;
    --db-surface-2: #15292b;
    --db-surface-3: #182d2f;
    --db-band: #15292b;
    --db-band-2: #182d2f;
    --db-layer-2: #15292b;
    --db-line: #1f3a3c;
    --db-line-soft: #193032;
    --db-line-strong: #586f70;
    --db-ink: #dcecea;
    --db-ink-2: #c2d7d6;
    --db-muted: #86a5a6;
    --db-faint: #86a5a6;
    --db-accent: #4fc4c0;
    --db-primary: #4fc4c0;
    --db-accent-deep: #6bccc8;
    --db-accent-soft: #12393a;
    --db-accent-line: #296261;
    --db-on-accent: #000000;
    --db-secondary: #f08a73;
    --db-selection: #12393a;
    --db-shell: #051a1c;
    --db-shell-ink: #d8eeec;
    --db-shell-muted: #9db3b2;
    --db-shell-line: #33494a;
    --db-shell-hover: #1e3335;
    --db-viz-1: #4fc4c0;
    --db-viz-2: #f08a73;
    --db-viz-3: #7fa8ea;
    --db-viz-4: #bd9ce6;
    --db-viz-5: #9fbcbd;
    --db-viz-6: #e6c763;
}

/* ---- Atlas (Warm, grounded) */
:root[data-palette="atlas"] {
    --db-app: #ece8e1;
    --db-surface: #faf8f4;
    --db-surface-2: #f3f0ea;
    --db-surface-3: #ece8e1;
    --db-band: #f3f0ea;
    --db-band-2: #ece8e1;
    --db-layer-2: #f3f0ea;
    --db-line: #d9d2c6;
    --db-line-soft: #e6e1d8;
    --db-line-strong: #a29d94;
    --db-ink: #23211e;
    --db-ink-2: #36322d;
    --db-muted: #615a50;
    --db-faint: #615a50;
    --db-accent: #a64e29;
    --db-primary: #b4532a;
    --db-accent-deep: #8c4527;
    --db-accent-soft: #f6e3d8;
    --db-accent-line: #d8b4a3;
    --db-on-accent: #ffffff;
    --db-secondary: #2f5a4a;
    --db-selection: #f6e3d8;
    --db-shell: #23211e;
    --db-shell-ink: #efebe4;
    --db-shell-muted: #b6b2ad;
    --db-shell-line: #504d4a;
    --db-shell-hover: #3b3936;
    --db-viz-1: #b4532a;
    --db-viz-2: #2f5a4a;
    --db-viz-3: #3d5c8a;
    --db-viz-4: #8a6a2a;
    --db-viz-5: #7a6a8a;
    --db-viz-6: #9a9184;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="atlas"]:not([data-theme="light"]) {
        --db-app: #141311;
        --db-surface: #1c1a17;
        --db-surface-2: #25221e;
        --db-surface-3: #292622;
        --db-band: #25221e;
        --db-band-2: #292622;
        --db-layer-2: #25221e;
        --db-line: #36322c;
        --db-line-soft: #2c2824;
        --db-line-strong: #6d6963;
        --db-ink: #eeeae3;
        --db-ink-2: #d8d3ca;
        --db-muted: #a59d91;
        --db-faint: #a59d91;
        --db-accent: #e48a5c;
        --db-primary: #e48a5c;
        --db-accent-deep: #e69d77;
        --db-accent-soft: #3a2318;
        --db-accent-line: #6c4733;
        --db-on-accent: #000000;
        --db-secondary: #6fb39a;
        --db-selection: #3a2318;
        --db-shell: #0d0c0b;
        --db-shell-ink: #efebe4;
        --db-shell-muted: #b0ada7;
        --db-shell-line: #3f3d3b;
        --db-shell-hover: #282725;
        --db-viz-1: #e48a5c;
        --db-viz-2: #6fb39a;
        --db-viz-3: #86a6d8;
        --db-viz-4: #d6b06a;
        --db-viz-5: #b4a4c8;
        --db-viz-6: #c2b9ab;
    }
}

:root[data-palette="atlas"][data-theme="dark"] {
    --db-app: #141311;
    --db-surface: #1c1a17;
    --db-surface-2: #25221e;
    --db-surface-3: #292622;
    --db-band: #25221e;
    --db-band-2: #292622;
    --db-layer-2: #25221e;
    --db-line: #36322c;
    --db-line-soft: #2c2824;
    --db-line-strong: #6d6963;
    --db-ink: #eeeae3;
    --db-ink-2: #d8d3ca;
    --db-muted: #a59d91;
    --db-faint: #a59d91;
    --db-accent: #e48a5c;
    --db-primary: #e48a5c;
    --db-accent-deep: #e69d77;
    --db-accent-soft: #3a2318;
    --db-accent-line: #6c4733;
    --db-on-accent: #000000;
    --db-secondary: #6fb39a;
    --db-selection: #3a2318;
    --db-shell: #0d0c0b;
    --db-shell-ink: #efebe4;
    --db-shell-muted: #b0ada7;
    --db-shell-line: #3f3d3b;
    --db-shell-hover: #282725;
    --db-viz-1: #e48a5c;
    --db-viz-2: #6fb39a;
    --db-viz-3: #86a6d8;
    --db-viz-4: #d6b06a;
    --db-viz-5: #b4a4c8;
    --db-viz-6: #c2b9ab;
}

/* ---- Obsidian (Dark-first) */
:root[data-palette="obsidian"] {
    --db-app: #f0eff5;
    --db-surface: #ffffff;
    --db-surface-2: #f6f5fa;
    --db-surface-3: #f0eef6;
    --db-band: #f6f5fa;
    --db-band-2: #f0eef6;
    --db-layer-2: #f6f5fa;
    --db-line: #dcd9e8;
    --db-line-soft: #eae8f1;
    --db-line-strong: #a19eaf;
    --db-ink: #17152a;
    --db-ink-2: #2c2a40;
    --db-muted: #5e5b75;
    --db-faint: #5e5b75;
    --db-accent: #5847c9;
    --db-primary: #5847c9;
    --db-accent-deep: #4b3da9;
    --db-accent-soft: #ebe8fb;
    --db-accent-line: #bcb5e9;
    --db-on-accent: #ffffff;
    --db-secondary: #0f8fb0;
    --db-selection: #ebe8fb;
    --db-shell: #17152a;
    --db-shell-ink: #e8e6f5;
    --db-shell-muted: #adabbc;
    --db-shell-line: #454357;
    --db-shell-hover: #302e42;
    --db-viz-1: #5847c9;
    --db-viz-2: #0f8fb0;
    --db-viz-3: #c2477a;
    --db-viz-4: #d08a2a;
    --db-viz-5: #7a86a0;
    --db-viz-6: #8a9a3a;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="obsidian"]:not([data-theme="light"]) {
        --db-app: #0c0b14;
        --db-surface: #13121e;
        --db-surface-2: #1b1a2a;
        --db-surface-3: #1f1e30;
        --db-band: #1b1a2a;
        --db-band-2: #1f1e30;
        --db-layer-2: #1b1a2a;
        --db-line: #2a2840;
        --db-line-soft: #211f32;
        --db-line-strong: #636177;
        --db-ink: #e9e7f6;
        --db-ink-2: #d0cee2;
        --db-muted: #9693b3;
        --db-faint: #9693b3;
        --db-accent: #9c8cff;
        --db-primary: #9c8cff;
        --db-accent-deep: #ab9efd;
        --db-accent-soft: #24204a;
        --db-accent-line: #4a4378;
        --db-on-accent: #000000;
        --db-secondary: #46c8e8;
        --db-selection: #24204a;
        --db-shell: #07060d;
        --db-shell-ink: #e6e4f5;
        --db-shell-muted: #a8a6b4;
        --db-shell-line: #383740;
        --db-shell-hover: #222129;
        --db-viz-1: #9c8cff;
        --db-viz-2: #46c8e8;
        --db-viz-3: #f07fae;
        --db-viz-4: #f0b45a;
        --db-viz-5: #a6b0c8;
        --db-viz-6: #c6d46a;
    }
}

:root[data-palette="obsidian"][data-theme="dark"] {
    --db-app: #0c0b14;
    --db-surface: #13121e;
    --db-surface-2: #1b1a2a;
    --db-surface-3: #1f1e30;
    --db-band: #1b1a2a;
    --db-band-2: #1f1e30;
    --db-layer-2: #1b1a2a;
    --db-line: #2a2840;
    --db-line-soft: #211f32;
    --db-line-strong: #636177;
    --db-ink: #e9e7f6;
    --db-ink-2: #d0cee2;
    --db-muted: #9693b3;
    --db-faint: #9693b3;
    --db-accent: #9c8cff;
    --db-primary: #9c8cff;
    --db-accent-deep: #ab9efd;
    --db-accent-soft: #24204a;
    --db-accent-line: #4a4378;
    --db-on-accent: #000000;
    --db-secondary: #46c8e8;
    --db-selection: #24204a;
    --db-shell: #07060d;
    --db-shell-ink: #e6e4f5;
    --db-shell-muted: #a8a6b4;
    --db-shell-line: #383740;
    --db-shell-hover: #222129;
    --db-viz-1: #9c8cff;
    --db-viz-2: #46c8e8;
    --db-viz-3: #f07fae;
    --db-viz-4: #f0b45a;
    --db-viz-5: #a6b0c8;
    --db-viz-6: #c6d46a;
}

/* ---- Signal (Neutral with one voice) */
:root[data-palette="signal"] {
    --db-app: #eef0f2;
    --db-surface: #ffffff;
    --db-surface-2: #f6f7f8;
    --db-surface-3: #eff0f2;
    --db-band: #f6f7f8;
    --db-band-2: #eff0f2;
    --db-layer-2: #f6f7f8;
    --db-line: #dadde1;
    --db-line-soft: #e9ebed;
    --db-line-strong: #9fa2a6;
    --db-ink: #15181c;
    --db-ink-2: #2b2f34;
    --db-muted: #5d646d;
    --db-faint: #5d646d;
    --db-accent: #b7471e;
    --db-primary: #e5541f;
    --db-accent-deep: #973e1e;
    --db-accent-soft: #e6ecfb;
    --db-accent-line: #e2b5a5;
    --db-on-accent: #ffffff;
    --db-secondary: #2f5bd3;
    --db-selection: #e6ecfb;
    --db-shell: #1b1f24;
    --db-shell-ink: #e8eaed;
    --db-shell-muted: #afb1b5;
    --db-shell-line: #484c50;
    --db-shell-hover: #34373c;
    --db-viz-1: #2f5bd3;
    --db-viz-2: #e5541f;
    --db-viz-3: #1f9aa0;
    --db-viz-4: #7d55c7;
    --db-viz-5: #8a929c;
    --db-viz-6: #c99a2e;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="signal"]:not([data-theme="light"]) {
        --db-app: #111316;
        --db-surface: #181b1f;
        --db-surface-2: #20242a;
        --db-surface-3: #23272e;
        --db-band: #20242a;
        --db-band-2: #23272e;
        --db-layer-2: #20242a;
        --db-line: #2c3138;
        --db-line-soft: #24282e;
        --db-line-strong: #666a6f;
        --db-ink: #eceef0;
        --db-ink-2: #d2d6da;
        --db-muted: #969da6;
        --db-faint: #969da6;
        --db-accent: #ff7a45;
        --db-primary: #ff7a45;
        --db-accent-deep: #fb9167;
        --db-accent-soft: #1e2a4a;
        --db-accent-line: #74412e;
        --db-on-accent: #000000;
        --db-secondary: #7c9cff;
        --db-selection: #1e2a4a;
        --db-shell: #0a0b0d;
        --db-shell-ink: #e8eaed;
        --db-shell-muted: #aaacae;
        --db-shell-line: #3b3c3e;
        --db-shell-hover: #252628;
        --db-viz-1: #7c9cff;
        --db-viz-2: #ff7a45;
        --db-viz-3: #4fd0d4;
        --db-viz-4: #b29af0;
        --db-viz-5: #aab2bc;
        --db-viz-6: #e8c35c;
    }
}

:root[data-palette="signal"][data-theme="dark"] {
    --db-app: #111316;
    --db-surface: #181b1f;
    --db-surface-2: #20242a;
    --db-surface-3: #23272e;
    --db-band: #20242a;
    --db-band-2: #23272e;
    --db-layer-2: #20242a;
    --db-line: #2c3138;
    --db-line-soft: #24282e;
    --db-line-strong: #666a6f;
    --db-ink: #eceef0;
    --db-ink-2: #d2d6da;
    --db-muted: #969da6;
    --db-faint: #969da6;
    --db-accent: #ff7a45;
    --db-primary: #ff7a45;
    --db-accent-deep: #fb9167;
    --db-accent-soft: #1e2a4a;
    --db-accent-line: #74412e;
    --db-on-accent: #000000;
    --db-secondary: #7c9cff;
    --db-selection: #1e2a4a;
    --db-shell: #0a0b0d;
    --db-shell-ink: #e8eaed;
    --db-shell-muted: #aaacae;
    --db-shell-line: #3b3c3e;
    --db-shell-hover: #252628;
    --db-viz-1: #7c9cff;
    --db-viz-2: #ff7a45;
    --db-viz-3: #4fd0d4;
    --db-viz-4: #b29af0;
    --db-viz-5: #aab2bc;
    --db-viz-6: #e8c35c;
}

/* ---- Sequoia (Natural) */
:root[data-palette="sequoia"] {
    --db-app: #ecefe9;
    --db-surface: #fbfcf9;
    --db-surface-2: #f3f6f1;
    --db-surface-3: #ebf0e8;
    --db-band: #f3f6f1;
    --db-band-2: #ebf0e8;
    --db-layer-2: #f3f6f1;
    --db-line: #d3dccf;
    --db-line-soft: #e3e9e0;
    --db-line-strong: #9ba59a;
    --db-ink: #18241d;
    --db-ink-2: #2b372f;
    --db-muted: #56645a;
    --db-faint: #56645a;
    --db-accent: #2f6a4a;
    --db-primary: #2f6a4a;
    --db-accent-deep: #2a5c41;
    --db-accent-soft: #e1eee5;
    --db-accent-line: #a9c2b3;
    --db-on-accent: #ffffff;
    --db-secondary: #a8572d;
    --db-selection: #e1eee5;
    --db-shell: #1a2b22;
    --db-shell-ink: #e6efe8;
    --db-shell-muted: #adb8b1;
    --db-shell-line: #47564e;
    --db-shell-hover: #32433a;
    --db-viz-1: #2f6a4a;
    --db-viz-2: #a8572d;
    --db-viz-3: #3d6a9a;
    --db-viz-4: #8a7a2a;
    --db-viz-5: #7a5a8a;
    --db-viz-6: #8c978c;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="sequoia"]:not([data-theme="light"]) {
        --db-app: #0d1510;
        --db-surface: #131d17;
        --db-surface-2: #1a261f;
        --db-surface-3: #1d2a22;
        --db-band: #1a261f;
        --db-band-2: #1d2a22;
        --db-layer-2: #1a261f;
        --db-line: #26362c;
        --db-line-soft: #1e2c24;
        --db-line-strong: #5e6d64;
        --db-ink: #e2ece5;
        --db-ink-2: #cad7ce;
        --db-muted: #93a69a;
        --db-faint: #93a69a;
        --db-accent: #7cc39d;
        --db-primary: #7cc39d;
        --db-accent-deep: #90cbab;
        --db-accent-soft: #183a28;
        --db-accent-line: #3d5f4d;
        --db-on-accent: #000000;
        --db-secondary: #e59466;
        --db-selection: #183a28;
        --db-shell: #08100c;
        --db-shell-ink: #e2ece5;
        --db-shell-muted: #a5aea8;
        --db-shell-line: #38403c;
        --db-shell-hover: #222a26;
        --db-viz-1: #7cc39d;
        --db-viz-2: #e59466;
        --db-viz-3: #86aee0;
        --db-viz-4: #d8c46a;
        --db-viz-5: #bc9ad8;
        --db-viz-6: #b2bdb2;
    }
}

:root[data-palette="sequoia"][data-theme="dark"] {
    --db-app: #0d1510;
    --db-surface: #131d17;
    --db-surface-2: #1a261f;
    --db-surface-3: #1d2a22;
    --db-band: #1a261f;
    --db-band-2: #1d2a22;
    --db-layer-2: #1a261f;
    --db-line: #26362c;
    --db-line-soft: #1e2c24;
    --db-line-strong: #5e6d64;
    --db-ink: #e2ece5;
    --db-ink-2: #cad7ce;
    --db-muted: #93a69a;
    --db-faint: #93a69a;
    --db-accent: #7cc39d;
    --db-primary: #7cc39d;
    --db-accent-deep: #90cbab;
    --db-accent-soft: #183a28;
    --db-accent-line: #3d5f4d;
    --db-on-accent: #000000;
    --db-secondary: #e59466;
    --db-selection: #183a28;
    --db-shell: #08100c;
    --db-shell-ink: #e2ece5;
    --db-shell-muted: #a5aea8;
    --db-shell-line: #38403c;
    --db-shell-hover: #222a26;
    --db-viz-1: #7cc39d;
    --db-viz-2: #e59466;
    --db-viz-3: #86aee0;
    --db-viz-4: #d8c46a;
    --db-viz-5: #bc9ad8;
    --db-viz-6: #b2bdb2;
}

/* ---- Monolith (High density) */
:root[data-palette="monolith"] {
    --db-app: #f4f4f4;
    --db-surface: #ffffff;
    --db-surface-2: #e8e8e8;
    --db-surface-3: #e6e6e6;
    --db-band: #e8e8e8;
    --db-band-2: #e6e6e6;
    --db-layer-2: #e8e8e8;
    --db-line: #e0e0e0;
    --db-line-soft: #ececec;
    --db-line-strong: #a3a3a3;
    --db-ink: #161616;
    --db-ink-2: #282828;
    --db-muted: #525252;
    --db-faint: #525252;
    --db-accent: #3d3bd8;
    --db-primary: #3d3bd8;
    --db-accent-deep: #3534b1;
    --db-accent-soft: #e5e5fb;
    --db-accent-line: #b1b1ef;
    --db-on-accent: #ffffff;
    --db-secondary: #0f7d6e;
    --db-selection: #e5e5fb;
    --db-shell: #161616;
    --db-shell-ink: #f4f4f4;
    --db-shell-muted: #b6b6b6;
    --db-shell-line: #474747;
    --db-shell-hover: #313131;
    --db-viz-1: #3d3bd8;
    --db-viz-2: #0f7d6e;
    --db-viz-3: #c2185b;
    --db-viz-4: #b26a00;
    --db-viz-5: #6f6f6f;
    --db-viz-6: #0072c3;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="monolith"]:not([data-theme="light"]) {
        --db-app: #0d0d0d;
        --db-surface: #161616;
        --db-surface-2: #262626;
        --db-surface-3: #2b2b2b;
        --db-band: #262626;
        --db-band-2: #2b2b2b;
        --db-layer-2: #262626;
        --db-line: #393939;
        --db-line-soft: #2b2b2b;
        --db-line-strong: #717171;
        --db-ink: #f4f4f4;
        --db-ink-2: #dddddd;
        --db-muted: #a8a8a8;
        --db-faint: #a8a8a8;
        --db-accent: #8a89ff;
        --db-primary: #8a89ff;
        --db-accent-deep: #9f9efd;
        --db-accent-soft: #262560;
        --db-accent-line: #444473;
        --db-on-accent: #000000;
        --db-secondary: #3ddbd9;
        --db-selection: #262560;
        --db-shell: #000000;
        --db-shell-ink: #f4f4f4;
        --db-shell-muted: #b0b0b0;
        --db-shell-line: #363636;
        --db-shell-hover: #1d1d1d;
        --db-viz-1: #8a89ff;
        --db-viz-2: #3ddbd9;
        --db-viz-3: #ff7eb6;
        --db-viz-4: #f1c21b;
        --db-viz-5: #a8a8a8;
        --db-viz-6: #33b1ff;
    }
}

:root[data-palette="monolith"][data-theme="dark"] {
    --db-app: #0d0d0d;
    --db-surface: #161616;
    --db-surface-2: #262626;
    --db-surface-3: #2b2b2b;
    --db-band: #262626;
    --db-band-2: #2b2b2b;
    --db-layer-2: #262626;
    --db-line: #393939;
    --db-line-soft: #2b2b2b;
    --db-line-strong: #717171;
    --db-ink: #f4f4f4;
    --db-ink-2: #dddddd;
    --db-muted: #a8a8a8;
    --db-faint: #a8a8a8;
    --db-accent: #8a89ff;
    --db-primary: #8a89ff;
    --db-accent-deep: #9f9efd;
    --db-accent-soft: #262560;
    --db-accent-line: #444473;
    --db-on-accent: #000000;
    --db-secondary: #3ddbd9;
    --db-selection: #262560;
    --db-shell: #000000;
    --db-shell-ink: #f4f4f4;
    --db-shell-muted: #b0b0b0;
    --db-shell-line: #363636;
    --db-shell-hover: #1d1d1d;
    --db-viz-1: #8a89ff;
    --db-viz-2: #3ddbd9;
    --db-viz-3: #ff7eb6;
    --db-viz-4: #f1c21b;
    --db-viz-5: #a8a8a8;
    --db-viz-6: #33b1ff;
}

/* ---- Clarity (Accessibility, WCAG AAA) */
:root[data-palette="clarity"] {
    --db-app: #ffffff;
    --db-surface: #ffffff;
    --db-surface-2: #f0f0f0;
    --db-surface-3: #f0f0f0;
    --db-band: #f0f0f0;
    --db-band-2: #f0f0f0;
    --db-layer-2: #f0f0f0;
    --db-line: #000000;
    --db-line-soft: #666666;
    --db-line-strong: #000000;
    --db-ink: #000000;
    --db-ink-2: #0b0b0b;
    --db-muted: #262626;
    --db-faint: #262626;
    --db-accent: #0038a8;
    --db-primary: #0038a8;
    --db-accent-deep: #002d86;
    --db-accent-soft: #dce6ff;
    --db-accent-line: #99afdc;
    --db-on-accent: #ffffff;
    --db-secondary: #6b0099;
    --db-selection: #dce6ff;
    --db-shell: #000000;
    --db-shell-ink: #ffffff;
    --db-shell-muted: #b8b8b8;
    --db-shell-line: #383838;
    --db-shell-hover: #1f1f1f;
    --db-viz-1: #0038a8;
    --db-viz-2: #b30059;
    --db-viz-3: #006b3c;
    --db-viz-4: #8a4b00;
    --db-viz-5: #4b0099;
    --db-viz-6: #000000;
    --db-ok: #00502a;
    --db-warn: #6b3c00;
    --db-crit: #8a0f06;
    --db-idle: #262626;
}

@media (prefers-color-scheme: dark) {
    :root[data-palette="clarity"]:not([data-theme="light"]) {
        --db-app: #000000;
        --db-surface: #000000;
        --db-surface-2: #1a1a1a;
        --db-surface-3: #1a1a1a;
        --db-band: #1a1a1a;
        --db-band-2: #1a1a1a;
        --db-layer-2: #1a1a1a;
        --db-line: #ffffff;
        --db-line-soft: #999999;
        --db-line-strong: #ffffff;
        --db-ink: #ffffff;
        --db-ink-2: #f8f8f8;
        --db-muted: #e6e6e6;
        --db-faint: #e6e6e6;
        --db-accent: #ffd23f;
        --db-primary: #ffd23f;
        --db-accent-deep: #ffdb65;
        --db-accent-soft: #333333;
        --db-accent-line: #665419;
        --db-on-accent: #000000;
        --db-secondary: #7fe0ff;
        --db-selection: #333333;
        --db-shell: #000000;
        --db-shell-ink: #ffffff;
        --db-shell-muted: #b8b8b8;
        --db-shell-line: #383838;
        --db-shell-hover: #1f1f1f;
        --db-viz-1: #ffd23f;
        --db-viz-2: #7fe0ff;
        --db-viz-3: #ff8fd0;
        --db-viz-4: #9dff8f;
        --db-viz-5: #ffffff;
        --db-viz-6: #ffa64d;
        --db-ok: #7dffb0;
        --db-warn: #ffd23f;
        --db-crit: #ff9d92;
        --db-idle: #e6e6e6;
    }
}

:root[data-palette="clarity"][data-theme="dark"] {
    --db-app: #000000;
    --db-surface: #000000;
    --db-surface-2: #1a1a1a;
    --db-surface-3: #1a1a1a;
    --db-band: #1a1a1a;
    --db-band-2: #1a1a1a;
    --db-layer-2: #1a1a1a;
    --db-line: #ffffff;
    --db-line-soft: #999999;
    --db-line-strong: #ffffff;
    --db-ink: #ffffff;
    --db-ink-2: #f8f8f8;
    --db-muted: #e6e6e6;
    --db-faint: #e6e6e6;
    --db-accent: #ffd23f;
    --db-primary: #ffd23f;
    --db-accent-deep: #ffdb65;
    --db-accent-soft: #333333;
    --db-accent-line: #665419;
    --db-on-accent: #000000;
    --db-secondary: #7fe0ff;
    --db-selection: #333333;
    --db-shell: #000000;
    --db-shell-ink: #ffffff;
    --db-shell-muted: #b8b8b8;
    --db-shell-line: #383838;
    --db-shell-hover: #1f1f1f;
    --db-viz-1: #ffd23f;
    --db-viz-2: #7fe0ff;
    --db-viz-3: #ff8fd0;
    --db-viz-4: #9dff8f;
    --db-viz-5: #ffffff;
    --db-viz-6: #ffa64d;
    --db-ok: #7dffb0;
    --db-warn: #ffd23f;
    --db-crit: #ff9d92;
    --db-idle: #e6e6e6;
}

/* Clarity: Atkinson Hyperlegible, 2px structure, underlined links, 3px focus ring. */
:root[data-palette="clarity"] {
    --db-font-ui: "Atkinson Hyperlegible", "Segoe UI", system-ui, Arial, sans-serif;
}

:root[data-palette="clarity"] .db-shell a:not(.db-nav-item):not(.db-nav-solo):not(.db-brand):not(.db-card):not(.db-btn),
:root[data-palette="clarity"] .db-linkbtn {
    text-decoration: underline;
    text-underline-offset: 2px;
}

:root[data-palette="clarity"] .db-shell :focus-visible {
    outline: 3px solid var(--db-accent);
    outline-offset: 2px;
}

:root[data-palette="clarity"] :is(.db-topbar, .db-nav, .db-statusbar, .db-panel, .db-card, .db-chip,
    .db-grid, .db-grid th, .db-grid td, .db-note, .db-rail, .db-btn, .db-pill, .db-tag) {
    border-width: 2px;
}
