/*
 * 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: #198754;
  --cc-danger: #dc3545;
  --cc-warning: #ffc107;
  --cc-info: #0dcaf0;
  --wm-canvas: #eef2f6;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #c8d0da;
  --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;
}

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: #3d4859;
  --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;
}

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: #3a5558;
  --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;
}

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: #a56600;
  --cc-info: #087d8f;
  --wm-canvas: #eee9df;
  --wm-surface: #fffdf8;
  --wm-surface-raised: #fffaf1;
  --wm-border: #bdb3a3;
  --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;
}

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: rgba(255, 255, 255, .55);
  --cc-sidebar-text: #152033;
  --cc-sidebar-muted: #41516a;
  --cc-success: #137a48;
  --cc-danger: #c42d3d;
  --cc-warning: #9a6400;
  --cc-info: #08788a;
  --wm-canvas: #dcecff;
  --wm-surface: rgba(255, 255, 255, .78);
  --wm-surface-raised: rgba(255, 255, 255, .92);
  --wm-border: #9eb3cc;
  --wm-border-soft: #cbd9e8;
  --wm-text: #152033;
  --wm-text-muted: #4b5e77;
  --wm-hover: rgba(221, 235, 252, .88);
  --wm-input: rgba(255, 255, 255, .84);
  --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;
}

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: #107c41;
  --cc-danger: #c42b1c;
  --cc-warning: #986f0b;
  --cc-info: #0078d4;
  --wm-canvas: #f3f3f3;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #c8c8c8;
  --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;
}

html[data-theme="outlook-dark"] {
  color-scheme: dark;
  --cc-primary: #69afe5;
  --cc-primary-deep: #4f96d1;
  --cc-primary-ink: #081018;
  --cc-primary-soft: #173451;
  --header-accent: #69afe5;
  --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: #4a4a4a;
  --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;
}

/* 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: #107c41;
  --cc-danger: #c42b1c;
  --cc-warning: #986f0b;
  --cc-info: #0078d4;
  --wm-canvas: #f3f3f3;
  --wm-surface: #ffffff;
  --wm-surface-raised: #ffffff;
  --wm-border: #c8c8c8;
  --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;
}

@media (prefers-color-scheme: dark) {
  html[data-theme="system"] {
    color-scheme: dark;
    --cc-primary: #69afe5;
    --cc-primary-deep: #4f96d1;
    --cc-primary-ink: #081018;
    --cc-primary-soft: #173451;
    --header-accent: #69afe5;
    --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: #4a4a4a;
    --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;
  }
}

: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;
  --glass-canvas-gradient: linear-gradient(135deg, #c7e0ff 0%, #f0e9ff 48%, #d7f2ed 100%);
  --avatar-default-ink: #ffffff;
  --wm-radius: 4px;
  --wm-touch-target: 44px;
  --wm-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
