/* Turbo — Color tokens
   Derived from the brand wordmark: deep purple #31006f + red accent #e80505.
   Base palette → semantic aliases. */

:root {
  /* ---- Brand: Purple (primary) ---- */
  --purple-950: #1c003f;
  --purple-900: #25004f;
  --purple-800: #31006f; /* brand primary — the wordmark */
  --purple-700: #3d0089;
  --purple-600: #4b13a3;
  --purple-500: #5e2cbd;
  --purple-400: #8159d6;
  --purple-300: #a98ee6;
  --purple-200: #d0c1f2;
  --purple-100: #e9e1f9;
  --purple-50:  #f5f1fd;

  /* ---- Brand: Red (accent) ---- */
  --red-900: #7a0303;
  --red-800: #a30404;
  --red-700: #c40404;
  --red-600: #e80505; /* brand accent */
  --red-500: #f52929;
  --red-400: #f95b5b;
  --red-300: #fc9090;
  --red-200: #fdc3c3;
  --red-100: #fee2e2;
  --red-50:  #fff5f5;

  /* ---- Neutrals (cool grey, slightly purple-tinted) ---- */
  --grey-950: #14111c;
  --grey-900: #1f1b2b;
  --grey-800: #322c43;
  --grey-700: #4a4360;
  --grey-600: #645c7e;
  --grey-500: #847c9c;
  --grey-400: #a7a0bc;
  --grey-300: #c8c3d6;
  --grey-200: #e2dfeb;
  --grey-150: #ecebf2;
  --grey-100: #f2f1f7;
  --grey-50:  #f9f8fc;
  --white:    #ffffff;
  --black:    #000000;

  /* ---- Semantic: status ---- */
  --green-600: #0f9d58;
  --green-100: #e3f6ec;
  --amber-600: #e08600;
  --amber-100: #fdf0d8;
  --blue-600:  #2563eb;
  --blue-100:  #e2ebfe;

  /* ---- Semantic aliases ---- */
  /* brand */
  --brand: var(--purple-800);
  --brand-strong: var(--purple-900);
  --brand-soft: var(--purple-100);
  --brand-tint: var(--purple-50);
  --accent: var(--red-600);
  --accent-strong: var(--red-700);
  --accent-soft: var(--red-100);

  /* text */
  --text-strong: var(--grey-950);
  --text-body: var(--grey-800);
  --text-muted: var(--grey-600);
  --text-subtle: var(--grey-500);
  --text-inverse: var(--white);
  --text-on-brand: var(--white);
  --text-brand: var(--purple-800);
  --text-link: var(--purple-700);

  /* surfaces */
  --surface-page: var(--grey-50);
  --surface-card: var(--white);
  --surface-sunken: var(--grey-100);
  --surface-raised: var(--white);
  --surface-brand: var(--purple-800);
  --surface-brand-soft: var(--purple-50);
  --surface-inverse: var(--grey-950);

  /* borders */
  --border-subtle: var(--grey-200);
  --border-default: var(--grey-300);
  --border-strong: var(--grey-400);
  --border-brand: var(--purple-800);
  --border-focus: var(--purple-500);

  /* status */
  --success: var(--green-600);
  --success-soft: var(--green-100);
  --warning: var(--amber-600);
  --warning-soft: var(--amber-100);
  --danger: var(--red-600);
  --danger-soft: var(--red-100);
  --info: var(--blue-600);
  --info-soft: var(--blue-100);

  /* focus ring */
  --ring: color-mix(in srgb, var(--purple-500) 45%, transparent);
}
