/* Light projection of the existing Figma core palette. No new brand colours.
   Dark primitives, data colours and the original full intro remain unchanged. */
:root[data-eg-theme="light"] {
  color-scheme: light;
  --eco-semantic-background-base: var(--eco-primitive-neutral-white);
  --eco-semantic-background-navigation: var(--eco-primitive-neutral-white);
  --eco-semantic-background-header: var(--eco-primitive-neutral-white);
  --eco-semantic-background-surface: var(--eco-primitive-neutral-white);
  --eco-semantic-background-data: var(--eco-primitive-neutral-white);
  --eco-semantic-background-selected: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-background-control: var(--eco-primitive-neutral-white);
  --eco-semantic-background-control-hover: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-surface-primary: var(--eco-primitive-neutral-white);
  --eco-semantic-surface-secondary: var(--eco-primitive-neutral-white);
  --eco-semantic-surface-interactive: var(--eco-primitive-neutral-white);
  --eco-semantic-surface-interactive-hover: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-surface-selected: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-surface-disabled: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-text-primary: var(--eco-primitive-neutral-black);
  --eco-semantic-text-secondary: var(--eco-primitive-neutral-gray);
  --eco-semantic-text-muted: var(--eco-primitive-neutral-gray);
  --eco-semantic-text-brand: var(--eco-primitive-brand-moss);
  --eco-semantic-text-on-control: var(--eco-primitive-neutral-black);
  --eco-semantic-text-inverse: var(--eco-primitive-neutral-white);
  --eco-semantic-text-disabled: var(--eco-primitive-brand-sage);
  --eco-semantic-icon-primary: var(--eco-primitive-neutral-black);
  --eco-semantic-icon-secondary: var(--eco-primitive-neutral-gray);
  --eco-semantic-icon-muted: var(--eco-primitive-neutral-gray);
  --eco-semantic-icon-disabled: var(--eco-primitive-brand-sage);
  --eco-semantic-border-subtle: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-border-default: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-border-control: var(--eco-primitive-neutral-gray);
  --eco-semantic-border-disabled: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-divider-default: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-primary-default: var(--eco-primitive-brand-moss);
  --eco-semantic-action-primary-hover: var(--eco-primitive-brand-deep-green);
  --eco-semantic-action-primary-pressed: var(--eco-primitive-brand-leaf);
  --eco-semantic-action-primary-disabled: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-secondary-default: var(--eco-primitive-neutral-white);
  --eco-semantic-action-secondary-hover: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-secondary-pressed: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-secondary-border: var(--eco-primitive-brand-moss);
  --eco-semantic-action-secondary-foreground: var(--eco-primitive-neutral-black);
  --eco-semantic-action-tertiary-hover: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-tertiary-pressed: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-action-tertiary-foreground: var(--eco-primitive-neutral-gray);
  --eco-semantic-action-tertiary-foreground-active: var(--eco-primitive-neutral-black);
  --eco-semantic-selection-background: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-selection-text: var(--eco-primitive-neutral-black);
  --eco-semantic-selection-indicator: var(--eco-primitive-brand-moss);
  --eco-semantic-focus-ring: var(--eco-primitive-neutral-black);
  --eco-semantic-focus-gap: var(--eco-primitive-neutral-white);
  --eco-semantic-loading-surface: var(--eco-primitive-neutral-white);
  --eco-semantic-loading-skeleton: var(--eco-primitive-neutral-light-gray);
  --eco-semantic-loading-highlight: var(--eco-primitive-neutral-white);
  --eco-semantic-loading-indicator: var(--eco-primitive-neutral-gray);
  --eco-semantic-empty-surface: var(--eco-primitive-neutral-white);
  --eco-semantic-empty-icon: var(--eco-primitive-neutral-gray);
  --eco-semantic-empty-heading: var(--eco-primitive-neutral-black);
  --eco-semantic-empty-description: var(--eco-primitive-neutral-gray);
  --eco-component-button-primary-icon-default: var(--eco-primitive-neutral-white);
  --eco-component-button-primary-icon-hover: var(--eco-primitive-neutral-white);
  --eco-component-button-primary-icon-pressed: var(--eco-primitive-neutral-white);
}
:root[data-eg-theme="dark"] { color-scheme: dark; }
:root { background: var(--eco-semantic-background-base, #101010); }
[data-eg-theme="light"] .eg-route-progress img,
[data-eg-theme="light"] .brand img,
[data-eg-theme="light"] img[src$="ecogenesis-wordmark.svg"] { filter: brightness(.2); }
/* The full brand film retains its original canvas and white wordmark. */
.eg-intro img { filter: none; }
[data-eg-reduced-motion="true"] *, [data-eg-reduced-motion="true"] *::before,
[data-eg-reduced-motion="true"] *::after {
  animation-duration: .01ms !important; animation-iteration-count: 1 !important;
  transition-duration: .01ms !important; scroll-behavior: auto !important;
}
