/*
 * CareConnect token contract. Theme-specific values live only in this file.
 * Component CSS consumes these tokens and never overrides a theme palette.
 */
:root,
html[data-theme="cc-default"] {
  color-scheme: light;
  --cc-primary: #0d6efd;
  --cc-primary-deep: #0a58ca;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #dbeafe;
  --header-accent: #0d6efd;
  --cc-sidebar-bg: #2c3e50;
  --cc-sidebar-text: #ffffff;
  --cc-sidebar-muted: #cbd6e2;
  --cc-success: #177c4d;
  --cc-danger: #c8303f;
  --cc-warning: #8b6a04;
  --cc-info: #08778e;
  --wm-canvas: #eef2f6;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #81868d;
  --wm-border-soft: #e2e7ed;
  --wm-text: #172033;
  --wm-text-muted: #526176;
  --wm-hover: #edf3fa;
  --wm-input: #ffffff;
  --wm-shadow: 0 10px 32px rgba(23, 32, 51, .18);
  --wm-success-soft: #dff3e8;
  --wm-danger-soft: #fde7ea;
  --wm-warning-soft: #fff2c2;
  --wm-info-soft: #d9f4f8;

  --wm-accent: #0b5ed7;
  --wm-danger-ink: #ffffff;
  --cc-unread: #0b5ed7;
}

html[data-theme="midnight"] {
  color-scheme: dark;
  --cc-primary: #5b9dff;
  --cc-primary-deep: #4a8ce9;
  --cc-primary-ink: #08111f;
  --cc-primary-soft: #172d4d;
  --header-accent: #5b9dff;
  --cc-sidebar-bg: #0b0f16;
  --cc-sidebar-text: #f7f9fd;
  --cc-sidebar-muted: #b8c4d6;
  --cc-success: #5dcc91;
  --cc-danger: #ff7c86;
  --cc-warning: #ffd166;
  --cc-info: #65d6e8;
  --wm-canvas: #080b11;
  --wm-surface: #111722;
  --wm-surface-raised: #18202d;
  --wm-border: #6d7682;
  --wm-border-soft: #293342;
  --wm-text: #f4f7fb;
  --wm-text-muted: #b3bfd0;
  --wm-hover: #202b3b;
  --wm-input: #1d2634;
  --wm-shadow: 0 14px 38px rgba(0, 0, 0, .48);
  --wm-success-soft: #173827;
  --wm-danger-soft: #472129;
  --wm-warning-soft: #493c1c;
  --wm-info-soft: #123844;

  --wm-accent: #6ea9ff;
  --wm-danger-ink: #08111f;
  --cc-unread: #6ea9ff;
}

html[data-theme="dusk"] {
  color-scheme: dark;
  --cc-primary: #0d9488;
  --cc-primary-deep: #12a69a;
  --cc-primary-ink: #041d1b;
  --cc-primary-soft: #123e3d;
  --header-accent: #14b8a6;
  --cc-sidebar-bg: #0a2a2c;
  --cc-sidebar-text: #f4ffff;
  --cc-sidebar-muted: #b9d8d8;
  --cc-success: #5dd39e;
  --cc-danger: #ff818c;
  --cc-warning: #ffd166;
  --cc-info: #62dbe8;
  --wm-canvas: #071719;
  --wm-surface: #0e2224;
  --wm-surface-raised: #153033;
  --wm-border: #718486;
  --wm-border-soft: #254044;
  --wm-text: #f1fbfb;
  --wm-text-muted: #b1caca;
  --wm-hover: #19373a;
  --wm-input: #173033;
  --wm-shadow: 0 14px 38px rgba(0, 0, 0, .46);
  --wm-success-soft: #173d2e;
  --wm-danger-soft: #48242a;
  --wm-warning-soft: #493c1d;
  --wm-info-soft: #123c43;

  --wm-accent: #38cabc;
  --wm-danger-ink: #041d1b;
  --cc-unread: #38cabc;
}

html[data-theme="editorial"] {
  color-scheme: light;
  --cc-primary: #2f6b3f;
  --cc-primary-deep: #245432;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #dfeade;
  --header-accent: #3f7d4f;
  --cc-sidebar-bg: #2a2016;
  --cc-sidebar-text: #fffaf1;
  --cc-sidebar-muted: #dacdbb;
  --cc-success: #267a48;
  --cc-danger: #b8323e;
  --cc-warning: #965c00;
  --cc-info: #087688;
  --wm-canvas: #eee9df;
  --wm-surface: #fffdf8;
  --wm-surface-raised: #fffaf1;
  --wm-border: #8b8378;
  --wm-border-soft: #e3ddd2;
  --wm-text: #28231d;
  --wm-text-muted: #62594e;
  --wm-hover: #f0eadf;
  --wm-input: #fffdf8;
  --wm-shadow: 0 12px 34px rgba(57, 43, 27, .2);
  --wm-success-soft: #e2f0e6;
  --wm-danger-soft: #f9e4e5;
  --wm-warning-soft: #f7e8c9;
  --wm-info-soft: #dff0f1;

  --wm-accent: #2f6b3f;
  --wm-danger-ink: #ffffff;
  --cc-unread: #2f6b3f;
}

html[data-theme="glass"] {
  color-scheme: light;
  --cc-primary: #3b82f6;
  --cc-primary-deep: #397ff0;
  --cc-primary-ink: #07162c;
  --cc-primary-soft: #dbeafe;
  --header-accent: #3b82f6;
  --cc-sidebar-bg: #eff6ff;
  --cc-sidebar-text: #152033;
  --cc-sidebar-muted: #41516a;
  --cc-success: #137a48;
  --cc-danger: #c42d3d;
  --cc-warning: #946000;
  --cc-info: #087688;
  --wm-canvas: #dcecff;
  --wm-surface: #f7fbff;
  --wm-surface-raised: #fcfdff;
  --wm-border: #78879a;
  --wm-border-soft: #cbd9e8;
  --wm-text: #152033;
  --wm-text-muted: #4b5e77;
  --wm-hover: #ddebfc;
  --wm-input: #f9fcff;
  --wm-shadow: 0 14px 40px rgba(34, 78, 130, .2);
  --wm-success-soft: #ddf2e7;
  --wm-danger-soft: #fae4e7;
  --wm-warning-soft: #f9ebc7;
  --wm-info-soft: #d9f1f5;

  --wm-accent: #205bb5;
  --wm-danger-ink: #ffffff;
  --cc-unread: #205bb5;
}

html[data-theme="outlook-light"] {
  color-scheme: light;
  --cc-primary: #0f6cbd;
  --cc-primary-deep: #0c5798;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #deecf9;
  --header-accent: #0f6cbd;
  --cc-sidebar-bg: #f3f6fa;
  --cc-sidebar-text: #1a1a1a;
  --cc-sidebar-muted: #545454;
  --cc-success: #107b41;
  --cc-danger: #c42b1c;
  --cc-warning: #89640a;
  --cc-info: #006bbe;
  --wm-canvas: #f3f3f3;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #868686;
  --wm-border-soft: #e4e4e4;
  --wm-text: #242424;
  --wm-text-muted: #616161;
  --wm-hover: #f0f6fc;
  --wm-input: #ffffff;
  --wm-shadow: 0 12px 36px rgba(0, 0, 0, .18);
  --wm-success-soft: #dff0e6;
  --wm-danger-soft: #f9e3e1;
  --wm-warning-soft: #f5eacb;
  --wm-info-soft: #deecf9;

  --wm-accent: #0f6aba;
  --wm-danger-ink: #ffffff;
  --cc-unread: #0f6aba;
}

html[data-theme="outlook-dark"] {
  color-scheme: dark;
  /* Outlook-classic dark: header, New mail button, and left-column selections are a very dark gray
     (not blue), with light ink, a neutral gray accent, and a contrasting unread indicator. */
  --cc-primary: #2b2b2b;
  --cc-primary-deep: #383838;
  --cc-primary-ink: #f5f5f5;
  --cc-primary-soft: #262626;
  --cc-unread: #bcbcbc;
  --header-accent: #7a7a7a;
  --cc-sidebar-bg: #181818;
  --cc-sidebar-text: #f5f5f5;
  --cc-sidebar-muted: #bcbcbc;
  --cc-success: #54b880;
  --cc-danger: #ff7770;
  --cc-warning: #e5c365;
  --cc-info: #62b7ef;
  --wm-canvas: #101010;
  --wm-surface: #1f1f1f;
  --wm-surface-raised: #292929;
  --wm-border: #797979;
  --wm-border-soft: #373737;
  --wm-text: #f2f2f2;
  --wm-text-muted: #bdbdbd;
  --wm-hover: #303030;
  --wm-input: #292929;
  --wm-shadow: 0 14px 40px rgba(0, 0, 0, .5);
  --wm-success-soft: #173725;
  --wm-danger-soft: #482322;
  --wm-warning-soft: #443a20;
  --wm-info-soft: #15364e;

  --wm-accent: #bcbcbc;
  --wm-danger-ink: #101010;
}

/* System starts with Outlook Light and becomes Outlook Dark with the OS setting. */
html[data-theme="system"] {
  color-scheme: light;
  --cc-primary: #0f6cbd;
  --cc-primary-deep: #0c5798;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #deecf9;
  --header-accent: #0f6cbd;
  --cc-sidebar-bg: #f3f6fa;
  --cc-sidebar-text: #1a1a1a;
  --cc-sidebar-muted: #545454;
  --cc-success: #107b41;
  --cc-danger: #c42b1c;
  --cc-warning: #89640a;
  --cc-info: #006bbe;
  --wm-canvas: #f3f3f3;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #868686;
  --wm-border-soft: #e4e4e4;
  --wm-text: #242424;
  --wm-text-muted: #616161;
  --wm-hover: #f0f6fc;
  --wm-input: #ffffff;
  --wm-shadow: 0 12px 36px rgba(0, 0, 0, .18);
  --wm-success-soft: #dff0e6;
  --wm-danger-soft: #f9e3e1;
  --wm-warning-soft: #f5eacb;
  --wm-info-soft: #deecf9;

  --wm-accent: #0f6aba;
  --wm-danger-ink: #ffffff;
  --cc-unread: #0f6aba;
}

@media (prefers-color-scheme: dark) {
  html[data-theme="system"] {
    color-scheme: dark;
    /* Mirror outlook-dark: dark-gray header/button/selections, light ink, neutral accent, visible unread. */
    --cc-primary: #2b2b2b;
    --cc-primary-deep: #383838;
    --cc-primary-ink: #f5f5f5;
    --cc-primary-soft: #262626;
    --cc-unread: #bcbcbc;
    --header-accent: #7a7a7a;
    --cc-sidebar-bg: #181818;
    --cc-sidebar-text: #f5f5f5;
    --cc-sidebar-muted: #bcbcbc;
    --cc-success: #54b880;
    --cc-danger: #ff7770;
    --cc-warning: #e5c365;
    --cc-info: #62b7ef;
    --wm-canvas: #101010;
    --wm-surface: #1f1f1f;
    --wm-surface-raised: #292929;
    --wm-border: #797979;
    --wm-border-soft: #373737;
    --wm-text: #f2f2f2;
    --wm-text-muted: #bdbdbd;
    --wm-hover: #303030;
    --wm-input: #292929;
    --wm-shadow: 0 14px 40px rgba(0, 0, 0, .5);
    --wm-success-soft: #173725;
    --wm-danger-soft: #482322;
    --wm-warning-soft: #443a20;
    --wm-info-soft: #15364e;

    --wm-accent: #bcbcbc;
    --wm-danger-ink: #101010;
  }
}

:root {
  --cc-sidebar-width: 260px;
  --cc-message-list-width: 370px;
  --cc-message-list-height: 43%;
  --calendar-swatch-1: #0f6cbd;
  --calendar-swatch-2: #8b5cf6;
  --calendar-swatch-3: #c45100;
  --calendar-swatch-4: #16825d;
  --calendar-swatch-5: #d05a00;
  --calendar-swatch-6: #6b5b95;
  --account-swatch-1: #0f6cbd;
  --account-swatch-2: #8b5cf6;
  --account-swatch-3: #c45100;
  --account-swatch-4: #16825d;
  --account-swatch-5: #d05a00;
  --account-swatch-6: #6b5b95;
  --account-swatch-7: #9a5b13;
  --account-swatch-8: #7c4d8e;
  --wm-radius: 4px;
  --wm-touch-target: 44px;
  --wm-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

/* SkyPanel color themes. Solid surfaces; stronger borders are reserved for controls. */
/* White: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-white"] {
  color-scheme: light;
  --cc-primary: #24645e;
  --cc-primary-deep: #1c504b;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #e7f0ee;
  --header-accent: #24645e;
  --cc-sidebar-bg: #ffffff;
  --cc-sidebar-text: #111827;
  --cc-sidebar-muted: #4c525d;
  --cc-success: #187f4f;
  --cc-danger: #ce3241;
  --cc-warning: #90690a;
  --cc-info: #08788a;
  --wm-canvas: #ffffff;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #898989;
  --wm-border-soft: #e6e6e6;
  --wm-text: #111827;
  --wm-text-muted: #4c525d;
  --wm-hover: #f7f7f7;
  --wm-input: #ffffff;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #edf5f1;
  --wm-danger-soft: #fceff0;
  --wm-warning-soft: #f7f3eb;
  --wm-info-soft: #ebf4f6;
  --wm-accent: #24645e;
  --wm-danger: #ce3241;
  --cc-unread: #24645e;

  --wm-danger-ink: #ffffff;
}

/* Soft Gray: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-gray"] {
  color-scheme: light;
  --cc-primary: #465569;
  --cc-primary-deep: #374354;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #e6e9ee;
  --header-accent: #465569;
  --cc-sidebar-bg: #f4f5f7;
  --cc-sidebar-text: #111827;
  --cc-sidebar-muted: #4c525d;
  --cc-success: #177e4f;
  --cc-danger: #cd3240;
  --cc-warning: #8f680a;
  --cc-info: #08788a;
  --wm-canvas: #f4f5f7;
  --wm-surface: #fefefe;
  --wm-surface-raised: #fefefe;
  --wm-border: #858585;
  --wm-border-soft: #e5e5e5;
  --wm-text: #111827;
  --wm-text-muted: #4c525d;
  --wm-hover: #f6f6f6;
  --wm-input: #fefefe;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #ecf4f0;
  --wm-danger-soft: #fbeeef;
  --wm-warning-soft: #f6f3eb;
  --wm-info-soft: #eaf3f5;
  --wm-accent: #465569;
  --wm-danger: #cd3240;
  --cc-unread: #465569;

  --wm-danger-ink: #ffffff;
}

/* Slate: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-slate"] {
  color-scheme: dark;
  --cc-primary: #38bdf8;
  --cc-primary-deep: #44c1f8;
  --cc-primary-ink: #0f172a;
  --cc-primary-soft: #1c2f44;
  --header-accent: #38bdf8;
  --cc-sidebar-bg: #0f172a;
  --cc-sidebar-text: #e5e7eb;
  --cc-sidebar-muted: #b2b6be;
  --cc-success: #50a47d;
  --cc-danger: #e6707b;
  --cc-warning: #b09144;
  --cc-info: #50a0ac;
  --wm-canvas: #0f172a;
  --wm-surface: #1a2436;
  --wm-surface-raised: #1a2436;
  --wm-border: #6e7784;
  --wm-border-soft: #3c485a;
  --wm-text: #e5e7eb;
  --wm-text-muted: #b2b6be;
  --wm-hover: #212b3c;
  --wm-input: #1a2436;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #1a2c38;
  --wm-danger-soft: #2a2537;
  --wm-warning-soft: #242a33;
  --wm-info-soft: #192b3d;
  --wm-accent: #38bdf8;
  --wm-danger: #e6707b;
  --cc-unread: #38bdf8;

  --wm-danger-ink: #0f172a;
}

/* Ocean Blue: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-ocean"] {
  color-scheme: light;
  --cc-primary: #2563eb;
  --cc-primary-deep: #235ddd;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #eef3fe;
  --header-accent: #2563eb;
  --cc-sidebar-bg: #eff6ff;
  --cc-sidebar-text: #0b1220;
  --cc-sidebar-muted: #484d58;
  --cc-success: #177e4f;
  --cc-danger: #cd3140;
  --cc-warning: #8f690a;
  --cc-info: #08788a;
  --wm-canvas: #eff6ff;
  --wm-surface: #fdfeff;
  --wm-surface-raised: #fdfeff;
  --wm-border: #8b8c8e;
  --wm-border-soft: #e5e7ea;
  --wm-text: #0b1220;
  --wm-text-muted: #484d58;
  --wm-hover: #f5f6f7;
  --wm-input: #fdfeff;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #ebf4f1;
  --wm-danger-soft: #faeef0;
  --wm-warning-soft: #f5f3eb;
  --wm-info-soft: #e9f3f6;
  --wm-accent: #2563eb;
  --wm-danger: #cd3140;
  --cc-unread: #2563eb;

  --wm-danger-ink: #ffffff;
}

/* Forest Green: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-forest"] {
  color-scheme: light;
  --cc-primary: #117f3a;
  --cc-primary-deep: #107737;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #eef9f1;
  --header-accent: #117f3a;
  --cc-sidebar-bg: #f0fdf4;
  --cc-sidebar-text: #052e16;
  --cc-sidebar-muted: #436250;
  --cc-success: #187f4f;
  --cc-danger: #cd3240;
  --cc-warning: #8f690a;
  --cc-info: #08788a;
  --wm-canvas: #f0fdf4;
  --wm-surface: #fefffe;
  --wm-surface-raised: #fefffe;
  --wm-border: #8c8f8d;
  --wm-border-soft: #e0e6e2;
  --wm-text: #052e16;
  --wm-text-muted: #436250;
  --wm-hover: #f5f8f6;
  --wm-input: #fefffe;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #ecf5f0;
  --wm-danger-soft: #fbefef;
  --wm-warning-soft: #f6f3eb;
  --wm-info-soft: #eaf4f5;
  --wm-accent: #117f3a;
  --wm-danger: #cd3240;
  --cc-unread: #117f3a;

  --wm-danger-ink: #ffffff;
}

/* Mint: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-mint"] {
  color-scheme: light;
  --cc-primary: #0b7e58;
  --cc-primary-deep: #0a7653;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #ecfaf5;
  --header-accent: #0b7e58;
  --cc-sidebar-bg: #ecfdf5;
  --cc-sidebar-text: #064e3b;
  --cc-sidebar-muted: #43786b;
  --cc-success: #187f4f;
  --cc-danger: #cd3240;
  --cc-warning: #8f690a;
  --cc-info: #08788a;
  --wm-canvas: #ecfdf5;
  --wm-surface: #fdfffe;
  --wm-surface-raised: #fdfffe;
  --wm-border: #8a908f;
  --wm-border-soft: #dfeae7;
  --wm-text: #064e3b;
  --wm-text-muted: #43786b;
  --wm-hover: #f4f9f7;
  --wm-input: #fdfffe;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #ebf5f0;
  --wm-danger-soft: #faefef;
  --wm-warning-soft: #f5f3eb;
  --wm-info-soft: #e9f4f5;
  --wm-accent: #0b7e58;
  --wm-danger: #cd3240;
  --cc-unread: #0b7e58;

  --wm-danger-ink: #ffffff;
}

/* Mocha Brown: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-brown"] {
  color-scheme: light;
  --cc-primary: #8b5e34;
  --cc-primary-deep: #835831;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #f5f1ec;
  --header-accent: #8b5e34;
  --cc-sidebar-bg: #f7f1e7;
  --cc-sidebar-text: #2b1d12;
  --cc-sidebar-muted: #60554c;
  --cc-success: #177d4e;
  --cc-danger: #cb3140;
  --cc-warning: #8e680a;
  --cc-info: #08788a;
  --wm-canvas: #f7f1e7;
  --wm-surface: #fdfcfa;
  --wm-surface-raised: #fdfcfa;
  --wm-border: #8d8b8a;
  --wm-border-soft: #e0ddda;
  --wm-text: #2b1d12;
  --wm-text-muted: #60554c;
  --wm-hover: #f6f4f2;
  --wm-input: #fdfcfa;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #ebf3ed;
  --wm-danger-soft: #faecec;
  --wm-warning-soft: #f5f1e7;
  --wm-info-soft: #e9f1f1;
  --wm-accent: #8b5e34;
  --wm-danger: #cb3140;
  --cc-unread: #8b5e34;

  --wm-danger-ink: #ffffff;
}

/* Newspaper: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-newspaper"] {
  color-scheme: light;
  --cc-primary: #39352f;
  --cc-primary-deep: #292620;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #e5e1d8;
  --header-accent: #39352f;
  --cc-sidebar-bg: #eee8d7;
  --cc-sidebar-text: #202020;
  --cc-sidebar-muted: #565553;
  --cc-success: #16774a;
  --cc-danger: #c32f3d;
  --cc-warning: #87620a;
  --cc-info: #087385;
  --wm-canvas: #eee8d7;
  --wm-surface: #f7f5ed;
  --wm-surface-raised: #f7f5ed;
  --wm-border: #81807d;
  --wm-border-soft: #d9d8d1;
  --wm-text: #202020;
  --wm-text-muted: #565553;
  --wm-hover: #efeee6;
  --wm-input: #f7f5ed;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #e5ece1;
  --wm-danger-soft: #f5e6e0;
  --wm-warning-soft: #efeadb;
  --wm-info-soft: #e4ebe5;
  --wm-accent: #39352f;
  --wm-danger: #c32f3d;
  --cc-unread: #39352f;

  --wm-danger-ink: #ffffff;
}

/* Parchment: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-parchment"] {
  color-scheme: light;
  --cc-primary: #75502a;
  --cc-primary-deep: #5f4021;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #eee2cd;
  --header-accent: #75502a;
  --cc-sidebar-bg: #f2e4c8;
  --cc-sidebar-text: #1f1b16;
  --cc-sidebar-muted: #56514a;
  --cc-success: #167549;
  --cc-danger: #c02e3c;
  --cc-warning: #85610a;
  --cc-info: #087183;
  --wm-canvas: #f2e4c8;
  --wm-surface: #faf4e8;
  --wm-surface-raised: #faf4e8;
  --wm-border: #84817c;
  --wm-border-soft: #dbd6cb;
  --wm-text: #1f1b16;
  --wm-text-muted: #56514a;
  --wm-hover: #f2ece1;
  --wm-input: #faf4e8;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #e8ebdc;
  --wm-danger-soft: #f8e5db;
  --wm-warning-soft: #f2e9d6;
  --wm-info-soft: #e7eae0;
  --wm-accent: #75502a;
  --wm-danger: #c02e3c;
  --cc-unread: #75502a;

  --wm-danger-ink: #ffffff;
}

/* Warm E‑Reader: SkyPanel base and ink; translucent card/border flattened over their surfaces. */
html[data-theme="skypanel-warm"] {
  color-scheme: light;
  --cc-primary: #87531d;
  --cc-primary-deep: #6d4217;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #f0e6d7;
  --header-accent: #87531d;
  --cc-sidebar-bg: #f3f0e7;
  --cc-sidebar-text: #1e1e1e;
  --cc-sidebar-muted: #555554;
  --cc-success: #177b4d;
  --cc-danger: #c8303f;
  --cc-warning: #8b650a;
  --cc-info: #087688;
  --wm-canvas: #f3f0e7;
  --wm-surface: #faf9f6;
  --wm-surface-raised: #faf9f6;
  --wm-border: #848483;
  --wm-border-soft: #e1e0dd;
  --wm-text: #1e1e1e;
  --wm-text-muted: #555554;
  --wm-hover: #f2f1ee;
  --wm-input: #faf9f6;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .24);
  --wm-success-soft: #e8f0e9;
  --wm-danger-soft: #f8e9e8;
  --wm-warning-soft: #f2eee3;
  --wm-info-soft: #e7efed;
  --wm-accent: #87531d;
  --wm-danger: #c8303f;
  --cc-unread: #87531d;

  --wm-danger-ink: #ffffff;
}

/* Breeze Twilight: the operator's KDE Plasma desktop (xi-workstation, captured 2026-10-19 —
   docs/linux-kubuntu-custom-configs/2026-10-19_Breeze-Twilight-Workstation/palette.json). Light Breeze windows,
   Breeze header gray bar, Plasma's soft blue selection, Breeze-style outlined buttons. */
html[data-theme="desktop-breeze-twilight"] {
  color-scheme: light;
  --cc-primary: #2980b9;
  --cc-primary-deep: #1d6fa5;
  --cc-primary-ink: #ffffff;
  --cc-primary-soft: #d6ecfa;
  --header-accent: #3daee9;
  --cc-sidebar-bg: #eff0f1;
  --cc-sidebar-text: #232629;
  --cc-sidebar-muted: #626e7a;
  --cc-success: #1e8449;
  --cc-danger: #c0392b;
  --cc-warning: #9a5800;
  --cc-info: #2980b9;
  --wm-canvas: #eff0f1;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #bdc3c7;
  --wm-border-soft: #dee0e2;
  --wm-text: #232629;
  --wm-text-muted: #626e7a;
  --wm-hover: #e3f2fc;
  --wm-input: #fcfcfc;
  --wm-shadow: 0 10px 32px rgba(0, 0, 0, .18);
  --wm-success-soft: #e5f5ec;
  --wm-danger-soft: #fbe8e9;
  --wm-warning-soft: #fdf0e0;
  --wm-info-soft: #e3f2fc;
  --wm-accent: #2980b9;
  --wm-danger: #c0392b;
  --cc-unread: #2980b9;

  --wm-danger-ink: #ffffff;
}

/* Shared semantic roles. Filled controls and text links need separate contrast roles. */
:root {
  --wm-accent: var(--cc-primary);
  --wm-danger: var(--cc-danger);
  --cc-unread: var(--wm-accent);
  --wm-solid-surface: var(--wm-surface);
  --wm-backdrop: rgba(0, 0, 0, .44);
  --wm-search-shadow: 0 1px 2px rgba(0, 0, 0, .12);
  --wm-danger-ink: var(--cc-primary-ink);
  --avatar-default-ink: var(--cc-primary-ink);
  --cc-sidebar-hover: var(--wm-hover);
  --cc-sidebar-hover-ink: var(--wm-text);
  /* Top bar and the selected folder/module; the soft paper themes override these. */
  --wm-bar-bg: var(--cc-primary);
  --wm-bar-ink: var(--cc-primary-ink);
  --wm-bar-hover: var(--cc-primary-deep);
  --wm-selected-bg: var(--cc-primary);
  --wm-selected-ink: var(--cc-primary-ink);
  --wm-selected-hover: var(--cc-primary-deep);
  --wm-selected-edge: var(--wm-accent);
  --wm-bar-button-bg: transparent;
  --wm-bar-button-edge: var(--wm-bar-ink);
  --wm-bar-button-hover: var(--wm-bar-hover);
  --wm-cta-bg: var(--cc-primary);
  --wm-cta-ink: var(--cc-primary-ink);
  --wm-cta-hover: var(--cc-primary-deep);
  --wm-cta-edge: var(--wm-accent);
  --wm-cta-hover-edge: var(--cc-primary-deep);
}

/* Newspaper, Parchment, Warm E-Reader: low-contrast bar and selection, a shade darker than the page. */
html[data-theme="skypanel-newspaper"] {
  --wm-bar-bg: #e0daca;
  --wm-bar-ink: #202020;
  --wm-bar-hover: #d6d1c2;
  --wm-selected-bg: #e0daca;
  --wm-selected-ink: #202020;
  --wm-selected-hover: #d6d1c2;
  --wm-selected-edge: #d6d1c2;
  --wm-bar-button-bg: #d4cebd;
  --wm-bar-button-edge: #a7a296;
  --wm-bar-button-hover: #cac5b7;
  --wm-cta-bg: #d4cebd;
  --wm-cta-ink: #202020;
  --wm-cta-hover: #cac5b7;
  --wm-cta-edge: #a7a296;
  --wm-cta-hover-edge: #a7a296;
}

html[data-theme="skypanel-parchment"] {
  --wm-bar-bg: #e3d6bc;
  --wm-bar-ink: #1f1b16;
  --wm-bar-hover: #dacdb4;
  --wm-selected-bg: #e3d6bc;
  --wm-selected-ink: #1f1b16;
  --wm-selected-hover: #dacdb4;
  --wm-selected-edge: #dacdb4;
  --wm-bar-button-bg: #d7cbb2;
  --wm-bar-button-edge: #a9a08c;
  --wm-bar-button-hover: #cec2aa;
  --wm-cta-bg: #d7cbb2;
  --wm-cta-ink: #1f1b16;
  --wm-cta-hover: #cec2aa;
  --wm-cta-edge: #a9a08c;
  --wm-cta-hover-edge: #a9a08c;
}

html[data-theme="skypanel-warm"] {
  --wm-bar-bg: #e4e2d9;
  --wm-bar-ink: #1e1e1e;
  --wm-bar-hover: #dbd8d0;
  --wm-selected-bg: #e4e2d9;
  --wm-selected-ink: #1e1e1e;
  --wm-selected-hover: #dbd8d0;
  --wm-selected-edge: #dbd8d0;
  --wm-bar-button-bg: #d8d6ce;
  --wm-bar-button-edge: #aaa8a2;
  --wm-bar-button-hover: #cfccc4;
  --wm-cta-bg: #d8d6ce;
  --wm-cta-ink: #1e1e1e;
  --wm-cta-hover: #cfccc4;
  --wm-cta-edge: #aaa8a2;
  --wm-cta-hover-edge: #aaa8a2;
}

html[data-theme="desktop-breeze-twilight"] {
  --wm-bar-bg: #dee0e2;
  --wm-bar-ink: #232629;
  --wm-bar-hover: #d1d5d9;
  --wm-selected-bg: #badcef;
  --wm-selected-ink: #232629;
  --wm-selected-hover: #a9d3ec;
  --wm-selected-edge: #3daee9;
  --wm-bar-button-bg: #fcfcfc;
  --wm-bar-button-edge: #a8adb3;
  --wm-bar-button-hover: #e3f2fc;
  --wm-cta-bg: #fcfcfc;
  --wm-cta-ink: #232629;
  --wm-cta-hover: #e3f2fc;
  --wm-cta-edge: #3daee9;
  --wm-cta-hover-edge: #2980b9;
}
