[data-omni-theme="parchment-light"] {
  /* Primitive palette */
  --omni-palette-canvas: #efe3cc;
  --omni-palette-paper: #f8f2e6;
  --omni-palette-ink: #302a23;
  --omni-palette-accent: #9a743d;
  --omni-bg-app: var(--omni-palette-canvas);
  --omni-bg-workspace: #f3ead7;
  --omni-bg-section: #f1e6d2;
  --omni-surface: var(--omni-palette-paper);
  --omni-surface-raised: #fcf8ef;
  --omni-surface-muted: #e9ddc5;
  --omni-surface-hover: #ede0c7;
  --omni-surface-selected: #e2d0ad;

  --omni-text-primary: var(--omni-palette-ink);
  --omni-text-secondary: #756a5b;
  --omni-text-muted: #9a8e7d;
  --omni-text-inverse: #ffffff;

  --omni-border: #d9c9ac;
  --omni-border-subtle: #e5d8c0;
  --omni-border-strong: #cbb99b;
  --omni-border-focus: #9a743d;

  --omni-primary: var(--omni-palette-accent);
  --omni-primary-hover: #7d5b2d;
  --omni-primary-active: #684923;
  --omni-primary-soft: #eadbc1;

  --omni-gold: #b78335;
  --omni-gold-hover: #9e702d;
  --omni-gold-active: #805923;
  --omni-gold-soft: #efe0c2;

  --omni-success: #657255;
  --omni-success-soft: #e1e6d8;
  --omni-warning: #a8752f;
  --omni-warning-soft: #f2e3c8;
  --omni-danger: #a44e3f;
  --omni-danger-soft: #f1ddd5;
  --omni-info: #5f7480;
  --omni-info-soft: #dfe6e5;

  --omni-shadow-soft: 0 1px 3px rgba(72, 55, 34, 0.06);
  --omni-shadow-medium: 0 6px 18px rgba(72, 55, 34, 0.1);
  --omni-shadow-strong: 0 14px 36px rgba(52, 39, 24, 0.16);
}

[data-omni-theme="noble-green"] {
  /* Primitive palette */
  --omni-palette-canvas: #ede5d3;
  --omni-palette-paper: #f8f2e6;
  --omni-palette-ink: #2e302a;
  --omni-palette-accent: #315f46;
  --omni-bg-app: var(--omni-palette-canvas);
  --omni-bg-workspace: #f2ead9;
  --omni-bg-section: #ece2ce;
  --omni-surface: var(--omni-palette-paper);
  --omni-surface-raised: #fcf8ef;
  --omni-surface-muted: #e6dbc5;
  --omni-surface-hover: #e3e9de;
  --omni-surface-selected: #dce5d7;

  --omni-text-primary: var(--omni-palette-ink);
  --omni-text-secondary: #6b6c60;
  --omni-text-muted: #8b8c80;
  --omni-text-inverse: #ffffff;

  --omni-border: #d2ccb9;
  --omni-border-subtle: #e2dac8;
  --omni-border-strong: #9daa98;
  --omni-border-focus: #315f46;

  --omni-primary: var(--omni-palette-accent);
  --omni-primary-hover: #294f3b;
  --omni-primary-active: #213f30;
  --omni-primary-soft: #dde7db;

  --omni-gold: #b78335;
  --omni-gold-hover: #9e702d;
  --omni-gold-active: #805923;
  --omni-gold-soft: #efe0c2;

  --omni-success: #3f7557;
  --omni-success-soft: #dde9e0;
  --omni-warning: #a8752f;
  --omni-warning-soft: #f2e3c8;
  --omni-danger: #a44e3f;
  --omni-danger-soft: #f1ddd5;
  --omni-info: #527286;
  --omni-info-soft: #dfe7ea;

  --omni-shadow-soft: 0 1px 3px rgba(72, 55, 34, 0.06);
  --omni-shadow-medium: 0 6px 18px rgba(72, 55, 34, 0.1);
  --omni-shadow-strong: 0 14px 36px rgba(52, 39, 24, 0.16);
}

[data-omni-theme="graphite-forest-dark"] {
  /* Primitive palette */
  --omni-palette-canvas: #171a18;
  --omni-palette-paper: #252a26;
  --omni-palette-ink: #eee7da;
  --omni-palette-accent: #527d60;
  --omni-bg-app: var(--omni-palette-canvas);
  --omni-bg-workspace: #1d211e;
  --omni-bg-section: #202620;
  --omni-surface: var(--omni-palette-paper);
  --omni-surface-raised: #2b312c;
  --omni-surface-muted: #212621;
  --omni-surface-hover: #2b342d;
  --omni-surface-selected: #29382e;

  --omni-text-primary: var(--omni-palette-ink);
  --omni-text-secondary: #b7b3a8;
  --omni-text-muted: #888e87;
  --omni-text-inverse: #171a18;

  --omni-border: #39423a;
  --omni-border-subtle: #303831;
  --omni-border-strong: #465249;
  --omni-border-focus: #6f9a79;

  --omni-primary: var(--omni-palette-accent);
  --omni-primary-hover: #648e70;
  --omni-primary-active: #426a50;
  --omni-primary-soft: #29382e;

  --omni-gold: #c99a4d;
  --omni-gold-hover: #d5aa63;
  --omni-gold-active: #b78335;
  --omni-gold-soft: #403522;

  --omni-success: #78916f;
  --omni-success-soft: #29372d;
  --omni-warning: #c08a45;
  --omni-warning-soft: #403422;
  --omni-danger: #c06b5f;
  --omni-danger-soft: #432b28;
  --omni-info: #7693a0;
  --omni-info-soft: #29363b;

  --omni-shadow-soft: 0 1px 3px rgba(0, 0, 0, 0.18);
  --omni-shadow-medium: 0 8px 22px rgba(0, 0, 0, 0.24);
  --omni-shadow-strong: 0 16px 40px rgba(0, 0, 0, 0.34);
}
/* Opt-in communications palette. Existing products retain their original themes. */
[data-omni-density="workspace"] {
  --omni-bg-app: rgb(239 232 216);
  --omni-bg-workspace: rgb(239 232 218);
  --omni-bg-section: rgb(233 225 207);
  --omni-surface: rgb(247 241 227);
  --omni-surface-raised: rgb(250 245 234);
  --omni-surface-muted: rgb(238 231 214);
  --omni-surface-hover: rgb(231 230 211);
  --omni-surface-selected: rgb(221 231 211);
  --omni-text-primary: rgb(28 39 34);
  --omni-text-secondary: rgb(93 109 101);
  --omni-text-muted: rgb(108 123 116);
  --omni-border: rgb(211 204 184);
  --omni-border-subtle: rgb(225 217 198);
  --omni-border-focus: rgb(35 123 91);
  --omni-primary: rgb(31 117 85);
  --omni-primary-hover: rgb(24 96 69);
  --omni-primary-soft: rgb(230 243 236);
}
[data-omni-theme="parchment-light"][data-omni-density="workspace"] {
  --omni-bg-app: rgb(244 237 220);
  --omni-bg-workspace: rgb(244 237 222);
  --omni-surface: rgb(250 245 232);
  --omni-surface-raised: rgb(252 247 235);
  --omni-surface-muted: rgb(242 234 216);
  --omni-surface-selected: rgb(236 221 190);
  --omni-primary: rgb(133 99 50);
  --omni-primary-hover: rgb(107 76 33);
  --omni-primary-soft: rgb(246 239 225);
}
[data-omni-theme="graphite-forest-dark"][data-omni-density="workspace"] {
  --omni-bg-app: rgb(19 24 22);
  --omni-bg-workspace: rgb(20 26 23);
  --omni-bg-section: rgb(27 34 30);
  --omni-surface: rgb(26 33 29);
  --omni-surface-raised: rgb(35 44 39);
  --omni-surface-muted: rgb(29 38 33);
  --omni-surface-hover: rgb(38 49 42);
  --omni-surface-selected: rgb(39 64 49);
  --omni-text-primary: rgb(237 243 239);
  --omni-text-secondary: rgb(171 189 179);
  --omni-text-muted: rgb(143 164 152);
  --omni-border: rgb(60 76 66);
  --omni-border-subtle: rgb(42 54 47);
  --omni-border-focus: rgb(111 185 144);
  --omni-primary: rgb(77 147 105);
  --omni-primary-hover: rgb(93 163 122);
  --omni-primary-soft: rgb(37 59 45);
}
/* Compatibility aliases for consumers of the earlier semantic vocabulary. */
[data-omni-theme] {
  --omni-bg-surface: var(--omni-surface);
  --omni-bg-surface-elevated: var(--omni-surface-raised);
  --omni-bg-surface-secondary: var(--omni-surface-muted);
  --omni-bg-interactive-hover: var(--omni-surface-hover);
  --omni-border-primary: var(--omni-border);
  --omni-border-secondary: var(--omni-border-subtle);
  --omni-primary-muted: var(--omni-primary-soft);
  --omni-primary-text: var(--omni-primary);
  --omni-text-disabled: color-mix(
    in srgb,
    var(--omni-text-muted) 65%,
    transparent
  );
  --omni-surface-disabled: color-mix(
    in srgb,
    var(--omni-surface-muted) 75%,
    transparent
  );
  --omni-focus-ring: var(--omni-border-focus);
  --omni-backdrop: rgb(10 16 13 / 52%);

  /* Compatibility vocabulary used by KRONA Business Platform. */
  --krona-bg-app: var(--omni-bg-app);
  --krona-bg-workspace: var(--omni-bg-workspace);
  --krona-bg-section: var(--omni-bg-section);
  --krona-surface: var(--omni-surface);
  --krona-surface-raised: var(--omni-surface-raised);
  --krona-surface-muted: var(--omni-surface-muted);
  --krona-surface-hover: var(--omni-surface-hover);
  --krona-surface-selected: var(--omni-surface-selected);
  --krona-text-primary: var(--omni-text-primary);
  --krona-text-secondary: var(--omni-text-secondary);
  --krona-text-muted: var(--omni-text-muted);
  --krona-text-inverse: var(--omni-text-inverse);
  --krona-border: var(--omni-border);
  --krona-border-subtle: var(--omni-border-subtle);
  --krona-border-strong: var(--omni-border-strong);
  --krona-border-focus: var(--omni-border-focus);
  --krona-primary: var(--omni-primary);
  --krona-primary-hover: var(--omni-primary-hover);
  --krona-primary-active: var(--omni-primary-active);
  --krona-primary-soft: var(--omni-primary-soft);
  --krona-gold: var(--omni-gold);
  --krona-gold-hover: var(--omni-gold-hover);
  --krona-gold-active: var(--omni-gold-active);
  --krona-gold-soft: var(--omni-gold-soft);
  --krona-success: var(--omni-success);
  --krona-success-soft: var(--omni-success-soft);
  --krona-warning: var(--omni-warning);
  --krona-warning-soft: var(--omni-warning-soft);
  --krona-danger: var(--omni-danger);
  --krona-danger-soft: var(--omni-danger-soft);
  --krona-info: var(--omni-info);
  --krona-info-soft: var(--omni-info-soft);
  --krona-shadow-soft: var(--omni-shadow-soft);
  --krona-shadow-medium: var(--omni-shadow-medium);
  --krona-shadow-strong: var(--omni-shadow-strong);
}
