/* Palette registry. Add a skin here, then Company::UI_SKINS and its DB constraint.
   Components consume roles, never skin-specific hex values. Status colors are separate.
   --ui-table-* may be overridden independently without changing forms or cards. */
.app-body {
  --tenant-accent: #c2410c; --tenant-soft: #fff7ed; --tenant-bright: #fdba74; --tenant-dark: #0f172a;
  --ui-canvas: #f8fafc; --ui-surface: #ffffff; --ui-raised: #f8fafc;
  --ui-border: #dce3ed; --ui-text: #172033; --ui-muted: #526178;
  --ui-input: #ffffff; --ui-heading: #edf2f7; --ui-stripe: #f8fafc;
  --ui-hover: color-mix(in srgb, var(--tenant-soft) 65%, var(--ui-surface));
  --ui-emphasis: var(--tenant-dark); --ui-on-emphasis: #ffffff; --ui-emphasis-muted: var(--tenant-bright);
  --ui-action: var(--tenant-accent); --ui-on-action: #ffffff;
  --ui-table-background: var(--ui-surface); --ui-table-header: var(--ui-heading);
  --ui-table-stripe: var(--ui-stripe); --ui-table-hover: var(--ui-hover);
  --ui-table-border: var(--ui-border); --ui-table-text: var(--ui-text);
}
/* Neutral surfaces avoid carrying the old slate-blue tint into other skins. */
.app-body[data-skin]:not([data-skin="classic"]) {
  --ui-canvas: #f7f7f8; --ui-raised: #f4f4f5;
  --ui-border: #d4d4d8; --ui-text: #27272a; --ui-muted: #606068;
  --ui-heading: #ededf0; --ui-stripe: #f7f7f8;
}
.app-body[data-skin="cyan"] { --tenant-accent: #087e95; --tenant-soft: #e0f7fa; --tenant-bright: #22d3ee; --tenant-dark: #07232d; }
.app-body[data-skin="emerald"] { --tenant-accent: #047857; --tenant-soft: #e4f7ed; --tenant-bright: #34d399; --tenant-dark: #092b25; }
.app-body[data-skin="violet"] { --tenant-accent: #6d28d9; --tenant-soft: #f1eafd; --tenant-bright: #c4b5fd; --tenant-dark: #211438; }
.app-body[data-skin="graphite"] { --tenant-accent: #087f72; --tenant-soft: #e2f4f1; --tenant-bright: #2dd4bf; --tenant-dark: #202127; }
html.theme-dark .app-body {
  --ui-canvas: #0b1220; --ui-surface: #111827; --ui-raised: #172033;
  --ui-border: #334155; --ui-text: #e2e8f0; --ui-muted: #a8b5c7;
  --ui-input: #172033; --ui-heading: #1e293b; --ui-stripe: #152033;
  --ui-hover: color-mix(in srgb, var(--tenant-bright) 12%, var(--ui-surface));
}
html.theme-dark .app-body[data-skin]:not([data-skin="classic"]) {
  --ui-canvas: #18191f; --ui-surface: #202127; --ui-raised: #25262f;
  --ui-border: #3e404b; --ui-text: #e4e4e7; --ui-muted: #b4b4bd;
  --ui-input: #292a34; --ui-heading: #292b34; --ui-stripe: #24252d;
}
html.theme-dark .app-body[data-skin="graphite"] {
  --ui-canvas: #18191f; --ui-surface: #202127; --ui-raised: #25262f;
  --ui-border: #3e404b; --ui-text: #e2e4eb; --ui-muted: #b0b3c2;
  --ui-input: #292a34; --ui-heading: #292b34; --ui-stripe: #24252d;
}
