/* Canonical Signal values. Approved prototype: signal20260917a. */
.signal-theme {
  --s-canvas: #f1f3f5;
  --s-paper: #ffffff;
  --s-ink: #202a36;
  --s-muted: #54606d;
  --s-ember: #c33f24;
  --s-ember-hover: #a9331d;
  --s-on-ember: #ffffff;
  --s-ember-indicator: #c33f24;
  --s-ice: #dee8f2;
  --s-ice-deep: #e6edf3;
  --s-line: #c4ccd5;
  --s-control-line: #7d8998;
  --s-danger: #9b2c3a;
  --s-danger-fill: #9b2c3a;
  --s-danger-hover: #812332;
  --s-danger-surface: #f7e6e9;
  --s-success: #2f6b4f;
  --s-success-surface: #e7f0eb;
  --s-nav: #202a36;
  --s-nav-text: #e6edf4;
  --s-nav-icon: #c0cad4;
  --s-nav-active: #394758;
  --s-nav-divider: #53606e;
  --s-nav-indicator: #ef7a5f;
  --s-overdue-dark: #ffbcaa;
  --s-hover: #f5f7fa;
  --s-scrim: #0f141ab3;
  --s-space-1: 4px;
  --s-space-2: 8px;
  --s-space-3: 12px;
  --s-space-4: 16px;
  --s-space-6: 24px;
  --s-space-8: 32px;
  --s-space-12: 48px;
  --s-font: 'Commissioner Variable', Commissioner, sans-serif;
  --s-display: 42px;
  --s-count: 42px;
  --s-section: 24px;
  --s-sub: 20px;
  --s-body-large: 16px;
  --s-body: 14px;
  --s-small: 12px;
  --s-label: 11px;
  --s-radius-control: 3px;
  --s-radius-avatar: 4px;
  --s-radius-panel: 0px;
  --s-duration: 160ms;
  --s-ease: ease-out;
  --s-z-overlay: 50;
  --s-z-dialog: 51;
  --s-z-popup: 60;
  --s-z-tooltip: 70;
  --s-z-toast: 80;
  --s-row-height: 93px;
  /* Standard shadcn roles map to Signal; Ember is reserved for explicit primary actions. */
  --background: var(--s-canvas);
  --foreground: var(--s-ink);
  --card: var(--s-paper);
  --card-foreground: var(--s-ink);
  --popover: var(--s-paper);
  --popover-foreground: var(--s-ink);
  --primary: var(--s-ember);
  --primary-foreground: var(--s-on-ember);
  --secondary: var(--s-ice);
  --secondary-foreground: var(--s-ink);
  --muted: var(--s-canvas);
  --muted-foreground: var(--s-muted);
  --accent: var(--s-ice);
  --accent-foreground: var(--s-ink);
  --destructive: var(--s-danger);
  --border: var(--s-line);
  --input: var(--s-control-line);
  --ring: var(--s-ink);
  --radius: var(--s-radius-control);
  color-scheme: light;
}
.signal-theme[data-theme='dark'] {
  --s-canvas: #161c24;
  --s-paper: #1e2630;
  --s-ink: #e6edf4;
  --s-muted: #9aa7b4;
  --s-ice: #263241;
  --s-ice-deep: #2c394a;
  --s-line: #3e4a58;
  --s-control-line: #8191a3;
  --s-danger: #f08a94;
  --s-danger-surface: #3a2630;
  --s-success: #6cc49b;
  --s-success-surface: #203a31;
  --s-nav: #0f141a;
  --s-nav-active: #2a3644;
  --s-hover: #232d39;
  --s-ember-indicator: #e8674c;
  color-scheme: dark;
}
.signal-theme[data-density='compact'] {
  --s-row-height: 56px;
}
@media (prefers-reduced-motion: reduce) {
  .signal-theme {
    --s-duration: 0ms;
  }
}
