@import '../palettes/nature.css';

@theme {
  /* Background colors */
  --background-color-subtle: var(--color-taupe-50);
  --background-color-muted: var(--color-taupe-100);
  --background-color-default: var(--color-white);
  --background-color-highlight: var(--color-taupe-200);
  --background-color-emphasis: var(--color-taupe-300);

  /* Text colors */
  --text-color-subtle: var(--color-taupe-400);
  --text-color-muted: var(--color-taupe-600);
  --text-color-default: var(--color-taupe-800);
  --text-color-highlight: var(--color-taupe-900);
  --text-color-emphasis: var(--color-taupe-950);

  /* Neutral */
  --color-light: var(--color-taupe-100);
  --color-dark: var(--color-taupe-950);
  --color-contrast: var(--color-white);

  /* Primary */
  --color-primary-lighter: var(--color-green-50);
  --color-primary-light: var(--color-green-400);
  --color-primary: var(--color-green-500);
  --color-primary-dark: var(--color-green-600);
  --color-primary-darker: var(--color-green-900);

  /* Secondary */
  --color-secondary-lighter: var(--color-brown-50);
  --color-secondary-light: var(--color-brown-300);
  --color-secondary: var(--color-brown-500);
  --color-secondary-dark: var(--color-brown-700);
  --color-secondary-darker: var(--color-brown-900);

  /* Danger */
  --color-danger-lighter: var(--color-red-50);
  --color-danger-light: var(--color-red-300);
  --color-danger: var(--color-red-500);
  --color-danger-dark: var(--color-red-600);
  --color-danger-darker: var(--color-red-900);

  /* Warning */
  --color-warning-lighter: var(--color-orange-50);
  --color-warning-light: var(--color-orange-400);
  --color-warning: var(--color-orange-500);
  --color-warning-dark: var(--color-orange-700);
  --color-warning-darker: var(--color-orange-900);

  /* Success */
  --color-success-lighter: var(--color-olive-50);
  --color-success-light: var(--color-olive-400);
  --color-success: var(--color-olive-500);
  --color-success-dark: var(--color-olive-700);
  --color-success-darker: var(--color-olive-900);

  /* Info */
  --color-info-lighter: var(--color-sky-50);
  --color-info-light: var(--color-sky-300);
  --color-info: var(--color-sky-500);
  --color-info-dark: var(--color-sky-700);
  --color-info-darker: var(--color-sky-900);

  /* Actions */
  --color-active: var(--color-taupe-500);
  --color-hover: var(--color-taupe-100);
  --color-selected: var(--color-taupe-100);
  --color-disabled-color: var(--color-taupe-400);
  --color-disabled: var(--color-taupe-200);
  --color-focus: var(--color-taupe-300);

  /* Borders */
  --border-color-subtle: --alpha(var(--color-taupe-300) / 60%);
  --border-color-default: var(--color-taupe-300);
  --border-color-emphasis: var(--color-taupe-600);
}

@layer theme {
  :root,
  :host {
    @variant dark {
      /* Background colors */
      --background-color-subtle: var(--color-taupe-900);
      --background-color-muted: var(--color-taupe-800);
      --background-color-default: var(--color-taupe-950);
      --background-color-highlight: var(--color-taupe-700);
      --background-color-emphasis: var(--color-taupe-600);

      /* Text colors */
      --text-color-subtle: var(--color-taupe-500);
      --text-color-muted: var(--color-taupe-400);
      --text-color-default: var(--color-taupe-100);
      --text-color-highlight: var(--color-taupe-50);
      --text-color-emphasis: var(--color-white);

      /* neutral */
      --color-light: var(--color-taupe-800);
      --color-dark: var(--color-taupe-700);
      --color-contrast: var(--color-taupe-950);

      /* primary */
      --color-primary-lighter: var(--color-green-900);
      --color-primary-light: var(--color-green-700);
      --color-primary: var(--color-green-400);
      --color-primary-dark: var(--color-green-300);
      --color-primary-darker: var(--color-green-100);

      /* secondary */
      --color-secondary-lighter: var(--color-brown-900);
      --color-secondary-light: var(--color-brown-700);
      --color-secondary: var(--color-brown-400);
      --color-secondary-dark: var(--color-brown-300);
      --color-secondary-darker: var(--color-brown-100);

      /* danger */
      --color-danger-lighter: var(--color-red-900);
      --color-danger-light: var(--color-red-600);
      --color-danger: var(--color-red-400);
      --color-danger-dark: var(--color-red-300);
      --color-danger-darker: var(--color-red-200);

      /* warning */
      --color-warning-lighter: var(--color-orange-900);
      --color-warning-light: var(--color-orange-800);
      --color-warning: var(--color-orange-400);
      --color-warning-dark: var(--color-orange-300);
      --color-warning-darker: var(--color-orange-200);

      /* success */
      --color-success-lighter: var(--color-olive-900);
      --color-success-light: var(--color-olive-700);
      --color-success: var(--color-olive-400);
      --color-success-dark: var(--color-olive-300);
      --color-success-darker: var(--color-olive-200);

      /* info */
      --color-info-lighter: var(--color-sky-900);
      --color-info-light: var(--color-sky-700);
      --color-info: var(--color-sky-400);
      --color-info-dark: var(--color-sky-300);
      --color-info-darker: var(--color-sky-200);

      /* borders */
      --border-color-subtle: var(--color-taupe-800);
      --border-color-default: var(--color-taupe-700);
      --border-color-emphasis: var(--color-taupe-600);

      /* actions */
      --color-active: var(--color-taupe-500);
      --color-hover: var(--color-taupe-700);
      --color-selected: var(--color-taupe-900);
      --color-disabled-color: var(--color-taupe-500);
      --color-disabled: var(--color-taupe-700);
      --color-focus: var(--color-taupe-700);
    }
  }
}
