/* Open Color Wheel v0.1.0 — GENERATED by scripts/build.mjs. Do not edit.
 * Regenerate with: node scripts/build.mjs
 * Contract and stability policy: docs/CONTRACT.md
 */

:root {
  color-scheme: light dark;

  /* slate */
  --color-slate-50: oklch(0.983 0.005 257.0);
  --color-slate-100: oklch(0.952 0.012 257.0);
  --color-slate-200: oklch(0.899 0.020 257.0);
  --color-slate-300: oklch(0.828 0.029 257.0);
  --color-slate-400: oklch(0.741 0.037 257.0);
  --color-slate-500: oklch(0.669 0.042 257.0);
  --color-slate-600: oklch(0.568 0.046 257.0);
  --color-slate-700: oklch(0.464 0.042 257.0);
  --color-slate-800: oklch(0.357 0.033 257.0);
  --color-slate-900: oklch(0.250 0.022 257.0);
  --color-slate-950: oklch(0.157 0.014 257.0);

  /* gray */
  --color-gray-50: oklch(0.983 0.003 264.0);
  --color-gray-100: oklch(0.952 0.007 264.0);
  --color-gray-200: oklch(0.899 0.012 264.0);
  --color-gray-300: oklch(0.828 0.017 264.0);
  --color-gray-400: oklch(0.741 0.022 264.0);
  --color-gray-500: oklch(0.669 0.025 264.0);
  --color-gray-600: oklch(0.568 0.027 264.0);
  --color-gray-700: oklch(0.464 0.025 264.0);
  --color-gray-800: oklch(0.357 0.019 264.0);
  --color-gray-900: oklch(0.250 0.013 264.0);
  --color-gray-950: oklch(0.157 0.008 264.0);

  /* zinc */
  --color-zinc-50: oklch(0.983 0.002 286.0);
  --color-zinc-100: oklch(0.952 0.004 286.0);
  --color-zinc-200: oklch(0.899 0.007 286.0);
  --color-zinc-300: oklch(0.828 0.010 286.0);
  --color-zinc-400: oklch(0.741 0.013 286.0);
  --color-zinc-500: oklch(0.669 0.015 286.0);
  --color-zinc-600: oklch(0.568 0.016 286.0);
  --color-zinc-700: oklch(0.464 0.015 286.0);
  --color-zinc-800: oklch(0.357 0.011 286.0);
  --color-zinc-900: oklch(0.250 0.008 286.0);
  --color-zinc-950: oklch(0.157 0.005 286.0);

  /* neutral */
  --color-neutral-50: oklch(0.983 0.000 0.0);
  --color-neutral-100: oklch(0.952 0.000 0.0);
  --color-neutral-200: oklch(0.899 0.000 0.0);
  --color-neutral-300: oklch(0.828 0.000 0.0);
  --color-neutral-400: oklch(0.741 0.000 0.0);
  --color-neutral-500: oklch(0.669 0.000 0.0);
  --color-neutral-600: oklch(0.568 0.000 0.0);
  --color-neutral-700: oklch(0.464 0.000 0.0);
  --color-neutral-800: oklch(0.357 0.000 0.0);
  --color-neutral-900: oklch(0.250 0.000 0.0);
  --color-neutral-950: oklch(0.157 0.000 0.0);

  /* stone */
  --color-stone-50: oklch(0.983 0.001 58.0);
  --color-stone-100: oklch(0.952 0.003 58.0);
  --color-stone-200: oklch(0.899 0.006 58.0);
  --color-stone-300: oklch(0.828 0.008 58.0);
  --color-stone-400: oklch(0.741 0.010 58.0);
  --color-stone-500: oklch(0.669 0.012 58.0);
  --color-stone-600: oklch(0.568 0.013 58.0);
  --color-stone-700: oklch(0.464 0.012 58.0);
  --color-stone-800: oklch(0.357 0.009 58.0);
  --color-stone-900: oklch(0.250 0.006 58.0);
  --color-stone-950: oklch(0.157 0.004 58.0);

  /* red */
  --color-red-50: oklch(0.979 0.010 28.7);
  --color-red-100: oklch(0.948 0.026 26.4);
  --color-red-200: oklch(0.889 0.058 26.2);
  --color-red-300: oklch(0.820 0.101 25.3);
  --color-red-400: oklch(0.741 0.140 25.0);
  --color-red-500: oklch(0.669 0.160 25.0);
  --color-red-600: oklch(0.568 0.175 25.0);
  --color-red-700: oklch(0.464 0.160 25.0);
  --color-red-800: oklch(0.357 0.125 25.0);
  --color-red-900: oklch(0.250 0.085 25.0);
  --color-red-950: oklch(0.157 0.055 25.0);

  /* orange */
  --color-orange-50: oklch(0.981 0.013 64.2);
  --color-orange-100: oklch(0.948 0.033 60.5);
  --color-orange-200: oklch(0.893 0.069 59.0);
  --color-orange-300: oklch(0.828 0.110 55.0);
  --color-orange-400: oklch(0.741 0.140 55.0);
  --color-orange-500: oklch(0.669 0.160 55.0);
  --color-orange-600: oklch(0.569 0.146 52.2);
  --color-orange-700: oklch(0.465 0.119 52.3);
  --color-orange-800: oklch(0.358 0.093 50.8);
  --color-orange-900: oklch(0.251 0.071 45.9);
  --color-orange-950: oklch(0.158 0.049 40.7);

  /* amber */
  --color-amber-50: oklch(0.981 0.019 82.7);
  --color-amber-100: oklch(0.950 0.044 78.1);
  --color-amber-200: oklch(0.899 0.075 75.0);
  --color-amber-300: oklch(0.828 0.110 75.0);
  --color-amber-400: oklch(0.741 0.140 75.0);
  --color-amber-500: oklch(0.670 0.142 73.4);
  --color-amber-600: oklch(0.569 0.122 72.5);
  --color-amber-700: oklch(0.465 0.099 72.5);
  --color-amber-800: oklch(0.358 0.077 71.9);
  --color-amber-900: oklch(0.251 0.056 66.1);
  --color-amber-950: oklch(0.158 0.040 54.0);

  /* yellow */
  --color-yellow-50: oklch(0.983 0.020 95.0);
  --color-yellow-100: oklch(0.952 0.045 95.0);
  --color-yellow-200: oklch(0.899 0.075 95.0);
  --color-yellow-300: oklch(0.828 0.110 95.0);
  --color-yellow-400: oklch(0.741 0.140 95.0);
  --color-yellow-500: oklch(0.670 0.137 93.7);
  --color-yellow-600: oklch(0.569 0.117 94.0);
  --color-yellow-700: oklch(0.465 0.095 93.1);
  --color-yellow-800: oklch(0.358 0.073 92.8);
  --color-yellow-900: oklch(0.251 0.051 89.5);
  --color-yellow-950: oklch(0.158 0.033 81.0);

  /* lime */
  --color-lime-50: oklch(0.983 0.020 130.0);
  --color-lime-100: oklch(0.952 0.045 130.0);
  --color-lime-200: oklch(0.899 0.075 130.0);
  --color-lime-300: oklch(0.828 0.110 130.0);
  --color-lime-400: oklch(0.741 0.140 130.0);
  --color-lime-500: oklch(0.669 0.160 130.0);
  --color-lime-600: oklch(0.569 0.156 131.2);
  --color-lime-700: oklch(0.465 0.128 131.3);
  --color-lime-800: oklch(0.358 0.098 131.3);
  --color-lime-900: oklch(0.251 0.071 133.2);
  --color-lime-950: oklch(0.158 0.045 133.7);

  /* green */
  --color-green-50: oklch(0.983 0.020 150.0);
  --color-green-100: oklch(0.952 0.045 150.0);
  --color-green-200: oklch(0.899 0.075 150.0);
  --color-green-300: oklch(0.828 0.110 150.0);
  --color-green-400: oklch(0.741 0.140 150.0);
  --color-green-500: oklch(0.669 0.160 150.0);
  --color-green-600: oklch(0.574 0.167 147.8);
  --color-green-700: oklch(0.470 0.139 147.2);
  --color-green-800: oklch(0.361 0.107 147.2);
  --color-green-900: oklch(0.254 0.076 146.5);
  --color-green-950: oklch(0.160 0.050 145.4);

  /* emerald */
  --color-emerald-50: oklch(0.983 0.020 162.0);
  --color-emerald-100: oklch(0.952 0.045 162.0);
  --color-emerald-200: oklch(0.899 0.075 162.0);
  --color-emerald-300: oklch(0.828 0.110 162.0);
  --color-emerald-400: oklch(0.741 0.140 162.0);
  --color-emerald-500: oklch(0.674 0.152 160.3);
  --color-emerald-600: oklch(0.576 0.132 159.1);
  --color-emerald-700: oklch(0.469 0.107 159.6);
  --color-emerald-800: oklch(0.361 0.083 159.3);
  --color-emerald-900: oklch(0.254 0.059 158.3);
  --color-emerald-950: oklch(0.164 0.042 153.0);

  /* teal */
  --color-teal-50: oklch(0.983 0.020 175.0);
  --color-teal-100: oklch(0.952 0.045 175.0);
  --color-teal-200: oklch(0.899 0.075 175.0);
  --color-teal-300: oklch(0.828 0.110 175.0);
  --color-teal-400: oklch(0.741 0.140 175.0);
  --color-teal-500: oklch(0.676 0.130 173.3);
  --color-teal-600: oklch(0.575 0.110 173.1);
  --color-teal-700: oklch(0.472 0.091 172.5);
  --color-teal-800: oklch(0.363 0.070 172.2);
  --color-teal-900: oklch(0.254 0.049 172.6);
  --color-teal-950: oklch(0.163 0.033 169.1);

  /* cyan */
  --color-cyan-50: oklch(0.983 0.020 201.6);
  --color-cyan-100: oklch(0.952 0.045 205.0);
  --color-cyan-200: oklch(0.899 0.075 205.0);
  --color-cyan-300: oklch(0.828 0.110 205.0);
  --color-cyan-400: oklch(0.747 0.128 206.2);
  --color-cyan-500: oklch(0.678 0.116 206.8);
  --color-cyan-600: oklch(0.575 0.099 206.7);
  --color-cyan-700: oklch(0.470 0.081 206.9);
  --color-cyan-800: oklch(0.363 0.062 207.4);
  --color-cyan-900: oklch(0.254 0.043 207.0);
  --color-cyan-950: oklch(0.164 0.029 212.6);

  /* sky */
  --color-sky-50: oklch(0.982 0.013 217.4);
  --color-sky-100: oklch(0.951 0.033 222.6);
  --color-sky-200: oklch(0.897 0.066 226.3);
  --color-sky-300: oklch(0.827 0.108 230.3);
  --color-sky-400: oklch(0.741 0.140 232.0);
  --color-sky-500: oklch(0.676 0.144 235.5);
  --color-sky-600: oklch(0.575 0.124 236.0);
  --color-sky-700: oklch(0.472 0.103 237.3);
  --color-sky-800: oklch(0.363 0.080 237.8);
  --color-sky-900: oklch(0.254 0.055 236.9);
  --color-sky-950: oklch(0.163 0.041 245.1);

  /* blue */
  --color-blue-50: oklch(0.982 0.010 242.2);
  --color-blue-100: oklch(0.950 0.024 252.3);
  --color-blue-200: oklch(0.897 0.051 254.8);
  --color-blue-300: oklch(0.821 0.091 254.8);
  --color-blue-400: oklch(0.739 0.135 259.2);
  --color-blue-500: oklch(0.669 0.160 260.0);
  --color-blue-600: oklch(0.568 0.175 260.0);
  --color-blue-700: oklch(0.464 0.160 260.0);
  --color-blue-800: oklch(0.357 0.125 260.0);
  --color-blue-900: oklch(0.250 0.085 260.0);
  --color-blue-950: oklch(0.157 0.055 260.0);

  /* indigo */
  --color-indigo-50: oklch(0.982 0.009 266.5);
  --color-indigo-100: oklch(0.950 0.023 271.6);
  --color-indigo-200: oklch(0.897 0.050 273.0);
  --color-indigo-300: oklch(0.822 0.089 273.6);
  --color-indigo-400: oklch(0.739 0.135 274.9);
  --color-indigo-500: oklch(0.669 0.160 275.0);
  --color-indigo-600: oklch(0.568 0.175 275.0);
  --color-indigo-700: oklch(0.464 0.160 275.0);
  --color-indigo-800: oklch(0.357 0.125 275.0);
  --color-indigo-900: oklch(0.250 0.085 275.0);
  --color-indigo-950: oklch(0.157 0.055 275.0);

  /* violet */
  --color-violet-50: oklch(0.982 0.010 299.7);
  --color-violet-100: oklch(0.950 0.027 298.3);
  --color-violet-200: oklch(0.896 0.058 297.5);
  --color-violet-300: oklch(0.825 0.099 296.5);
  --color-violet-400: oklch(0.741 0.140 295.0);
  --color-violet-500: oklch(0.669 0.160 295.0);
  --color-violet-600: oklch(0.568 0.175 295.0);
  --color-violet-700: oklch(0.464 0.160 295.0);
  --color-violet-800: oklch(0.357 0.125 295.0);
  --color-violet-900: oklch(0.250 0.085 295.0);
  --color-violet-950: oklch(0.157 0.055 295.0);

  /* grape */
  --color-grape-50: oklch(0.982 0.016 325.7);
  --color-grape-100: oklch(0.951 0.041 323.7);
  --color-grape-200: oklch(0.899 0.075 320.0);
  --color-grape-300: oklch(0.828 0.110 320.0);
  --color-grape-400: oklch(0.741 0.140 320.0);
  --color-grape-500: oklch(0.669 0.160 320.0);
  --color-grape-600: oklch(0.568 0.175 320.0);
  --color-grape-700: oklch(0.464 0.160 320.0);
  --color-grape-800: oklch(0.357 0.125 320.0);
  --color-grape-900: oklch(0.250 0.085 320.0);
  --color-grape-950: oklch(0.157 0.055 320.0);

  /* fuchsia */
  --color-fuchsia-50: oklch(0.980 0.017 326.0);
  --color-fuchsia-100: oklch(0.948 0.042 330.3);
  --color-fuchsia-200: oklch(0.899 0.075 335.0);
  --color-fuchsia-300: oklch(0.828 0.110 335.0);
  --color-fuchsia-400: oklch(0.741 0.140 335.0);
  --color-fuchsia-500: oklch(0.669 0.160 335.0);
  --color-fuchsia-600: oklch(0.568 0.175 335.0);
  --color-fuchsia-700: oklch(0.464 0.160 335.0);
  --color-fuchsia-800: oklch(0.357 0.125 335.0);
  --color-fuchsia-900: oklch(0.250 0.085 335.0);
  --color-fuchsia-950: oklch(0.157 0.055 335.0);

  /* pink */
  --color-pink-50: oklch(0.981 0.012 342.7);
  --color-pink-100: oklch(0.946 0.035 343.2);
  --color-pink-200: oklch(0.893 0.069 346.8);
  --color-pink-300: oklch(0.828 0.110 350.0);
  --color-pink-400: oklch(0.741 0.140 350.0);
  --color-pink-500: oklch(0.669 0.160 350.0);
  --color-pink-600: oklch(0.568 0.175 350.0);
  --color-pink-700: oklch(0.464 0.160 350.0);
  --color-pink-800: oklch(0.357 0.125 350.0);
  --color-pink-900: oklch(0.250 0.085 350.0);
  --color-pink-950: oklch(0.157 0.055 350.0);

  /* rose */
  --color-rose-50: oklch(0.980 0.010 3.7);
  --color-rose-100: oklch(0.946 0.028 4.9);
  --color-rose-200: oklch(0.891 0.060 5.8);
  --color-rose-300: oklch(0.822 0.104 7.1);
  --color-rose-400: oklch(0.741 0.140 8.0);
  --color-rose-500: oklch(0.669 0.160 8.0);
  --color-rose-600: oklch(0.568 0.175 8.0);
  --color-rose-700: oklch(0.464 0.160 8.0);
  --color-rose-800: oklch(0.357 0.125 8.0);
  --color-rose-900: oklch(0.250 0.085 8.0);
  --color-rose-950: oklch(0.157 0.055 8.0);

  /* ---- neutral roles (bound to "gray") ---- */
  --color-bg: light-dark(white, var(--color-gray-950));
  --color-bg-subtle: light-dark(var(--color-gray-50), var(--color-gray-900));
  --color-border: light-dark(var(--color-gray-300), var(--color-gray-700));
  --color-border-strong: light-dark(var(--color-gray-500), var(--color-gray-600));
  --color-text-muted: light-dark(var(--color-gray-600), var(--color-gray-500));
  --color-text: light-dark(var(--color-gray-900), var(--color-gray-200));
  --color-text-strong: light-dark(black, var(--color-gray-50));

  /* ---- accent roles ----
   * on-solid is computed per hue: whichever of white/black actually
   * clears 4.5:1 against that hue's solid step. Never assume white.
   */

  --color-red-solid: var(--color-red-600);
  --color-red-on-solid: white; /* 4.91:1 */
  --color-red-text: light-dark(var(--color-red-700), var(--color-red-400));
  --color-red-border: light-dark(var(--color-red-500), var(--color-red-600));

  --color-orange-solid: var(--color-orange-600);
  --color-orange-on-solid: white; /* 4.73:1 */
  --color-orange-text: light-dark(var(--color-orange-700), var(--color-orange-400));
  --color-orange-border: light-dark(var(--color-orange-500), var(--color-orange-600));

  --color-amber-solid: var(--color-amber-600);
  --color-amber-on-solid: white; /* 4.59:1 */
  --color-amber-text: light-dark(var(--color-amber-700), var(--color-amber-400));
  --color-amber-border: light-dark(var(--color-amber-500), var(--color-amber-600));

  --color-yellow-solid: var(--color-yellow-600);
  --color-yellow-on-solid: black; /* 4.68:1 */
  --color-yellow-text: light-dark(var(--color-yellow-700), var(--color-yellow-400));
  --color-yellow-border: light-dark(var(--color-yellow-500), var(--color-yellow-600));

  --color-lime-solid: var(--color-lime-600);
  --color-lime-on-solid: black; /* 4.93:1 */
  --color-lime-text: light-dark(var(--color-lime-700), var(--color-lime-400));
  --color-lime-border: light-dark(var(--color-lime-500), var(--color-lime-600));

  --color-green-solid: var(--color-green-600);
  --color-green-on-solid: black; /* 5.13:1 */
  --color-green-text: light-dark(var(--color-green-700), var(--color-green-400));
  --color-green-border: light-dark(var(--color-green-500), var(--color-green-600));

  --color-emerald-solid: var(--color-emerald-600);
  --color-emerald-on-solid: black; /* 5.13:1 */
  --color-emerald-text: light-dark(var(--color-emerald-700), var(--color-emerald-400));
  --color-emerald-border: light-dark(var(--color-emerald-500), var(--color-emerald-600));

  --color-teal-solid: var(--color-teal-600);
  --color-teal-on-solid: black; /* 5.08:1 */
  --color-teal-text: light-dark(var(--color-teal-700), var(--color-teal-400));
  --color-teal-border: light-dark(var(--color-teal-500), var(--color-teal-600));

  --color-cyan-solid: var(--color-cyan-600);
  --color-cyan-on-solid: black; /* 5.01:1 */
  --color-cyan-text: light-dark(var(--color-cyan-700), var(--color-cyan-400));
  --color-cyan-border: light-dark(var(--color-cyan-500), var(--color-cyan-600));

  --color-sky-solid: var(--color-sky-600);
  --color-sky-on-solid: black; /* 4.90:1 */
  --color-sky-text: light-dark(var(--color-sky-700), var(--color-sky-400));
  --color-sky-border: light-dark(var(--color-sky-500), var(--color-sky-600));

  --color-blue-solid: var(--color-blue-600);
  --color-blue-on-solid: white; /* 4.60:1 */
  --color-blue-text: light-dark(var(--color-blue-700), var(--color-blue-400));
  --color-blue-border: light-dark(var(--color-blue-500), var(--color-blue-600));

  --color-indigo-solid: var(--color-indigo-600);
  --color-indigo-on-solid: white; /* 4.72:1 */
  --color-indigo-text: light-dark(var(--color-indigo-700), var(--color-indigo-400));
  --color-indigo-border: light-dark(var(--color-indigo-500), var(--color-indigo-600));

  --color-violet-solid: var(--color-violet-600);
  --color-violet-on-solid: white; /* 4.84:1 */
  --color-violet-text: light-dark(var(--color-violet-700), var(--color-violet-400));
  --color-violet-border: light-dark(var(--color-violet-500), var(--color-violet-600));

  --color-grape-solid: var(--color-grape-600);
  --color-grape-on-solid: white; /* 4.93:1 */
  --color-grape-text: light-dark(var(--color-grape-700), var(--color-grape-400));
  --color-grape-border: light-dark(var(--color-grape-500), var(--color-grape-600));

  --color-fuchsia-solid: var(--color-fuchsia-600);
  --color-fuchsia-on-solid: white; /* 4.95:1 */
  --color-fuchsia-text: light-dark(var(--color-fuchsia-700), var(--color-fuchsia-400));
  --color-fuchsia-border: light-dark(var(--color-fuchsia-500), var(--color-fuchsia-600));

  --color-pink-solid: var(--color-pink-600);
  --color-pink-on-solid: white; /* 4.96:1 */
  --color-pink-text: light-dark(var(--color-pink-700), var(--color-pink-400));
  --color-pink-border: light-dark(var(--color-pink-500), var(--color-pink-600));

  --color-rose-solid: var(--color-rose-600);
  --color-rose-on-solid: white; /* 4.94:1 */
  --color-rose-text: light-dark(var(--color-rose-700), var(--color-rose-400));
  --color-rose-border: light-dark(var(--color-rose-500), var(--color-rose-600));
}

@theme {

  /* slate */
  --color-slate-50: oklch(0.983 0.005 257.0);
  --color-slate-100: oklch(0.952 0.012 257.0);
  --color-slate-200: oklch(0.899 0.020 257.0);
  --color-slate-300: oklch(0.828 0.029 257.0);
  --color-slate-400: oklch(0.741 0.037 257.0);
  --color-slate-500: oklch(0.669 0.042 257.0);
  --color-slate-600: oklch(0.568 0.046 257.0);
  --color-slate-700: oklch(0.464 0.042 257.0);
  --color-slate-800: oklch(0.357 0.033 257.0);
  --color-slate-900: oklch(0.250 0.022 257.0);
  --color-slate-950: oklch(0.157 0.014 257.0);

  /* gray */
  --color-gray-50: oklch(0.983 0.003 264.0);
  --color-gray-100: oklch(0.952 0.007 264.0);
  --color-gray-200: oklch(0.899 0.012 264.0);
  --color-gray-300: oklch(0.828 0.017 264.0);
  --color-gray-400: oklch(0.741 0.022 264.0);
  --color-gray-500: oklch(0.669 0.025 264.0);
  --color-gray-600: oklch(0.568 0.027 264.0);
  --color-gray-700: oklch(0.464 0.025 264.0);
  --color-gray-800: oklch(0.357 0.019 264.0);
  --color-gray-900: oklch(0.250 0.013 264.0);
  --color-gray-950: oklch(0.157 0.008 264.0);

  /* zinc */
  --color-zinc-50: oklch(0.983 0.002 286.0);
  --color-zinc-100: oklch(0.952 0.004 286.0);
  --color-zinc-200: oklch(0.899 0.007 286.0);
  --color-zinc-300: oklch(0.828 0.010 286.0);
  --color-zinc-400: oklch(0.741 0.013 286.0);
  --color-zinc-500: oklch(0.669 0.015 286.0);
  --color-zinc-600: oklch(0.568 0.016 286.0);
  --color-zinc-700: oklch(0.464 0.015 286.0);
  --color-zinc-800: oklch(0.357 0.011 286.0);
  --color-zinc-900: oklch(0.250 0.008 286.0);
  --color-zinc-950: oklch(0.157 0.005 286.0);

  /* neutral */
  --color-neutral-50: oklch(0.983 0.000 0.0);
  --color-neutral-100: oklch(0.952 0.000 0.0);
  --color-neutral-200: oklch(0.899 0.000 0.0);
  --color-neutral-300: oklch(0.828 0.000 0.0);
  --color-neutral-400: oklch(0.741 0.000 0.0);
  --color-neutral-500: oklch(0.669 0.000 0.0);
  --color-neutral-600: oklch(0.568 0.000 0.0);
  --color-neutral-700: oklch(0.464 0.000 0.0);
  --color-neutral-800: oklch(0.357 0.000 0.0);
  --color-neutral-900: oklch(0.250 0.000 0.0);
  --color-neutral-950: oklch(0.157 0.000 0.0);

  /* stone */
  --color-stone-50: oklch(0.983 0.001 58.0);
  --color-stone-100: oklch(0.952 0.003 58.0);
  --color-stone-200: oklch(0.899 0.006 58.0);
  --color-stone-300: oklch(0.828 0.008 58.0);
  --color-stone-400: oklch(0.741 0.010 58.0);
  --color-stone-500: oklch(0.669 0.012 58.0);
  --color-stone-600: oklch(0.568 0.013 58.0);
  --color-stone-700: oklch(0.464 0.012 58.0);
  --color-stone-800: oklch(0.357 0.009 58.0);
  --color-stone-900: oklch(0.250 0.006 58.0);
  --color-stone-950: oklch(0.157 0.004 58.0);

  /* red */
  --color-red-50: oklch(0.979 0.010 28.7);
  --color-red-100: oklch(0.948 0.026 26.4);
  --color-red-200: oklch(0.889 0.058 26.2);
  --color-red-300: oklch(0.820 0.101 25.3);
  --color-red-400: oklch(0.741 0.140 25.0);
  --color-red-500: oklch(0.669 0.160 25.0);
  --color-red-600: oklch(0.568 0.175 25.0);
  --color-red-700: oklch(0.464 0.160 25.0);
  --color-red-800: oklch(0.357 0.125 25.0);
  --color-red-900: oklch(0.250 0.085 25.0);
  --color-red-950: oklch(0.157 0.055 25.0);

  /* orange */
  --color-orange-50: oklch(0.981 0.013 64.2);
  --color-orange-100: oklch(0.948 0.033 60.5);
  --color-orange-200: oklch(0.893 0.069 59.0);
  --color-orange-300: oklch(0.828 0.110 55.0);
  --color-orange-400: oklch(0.741 0.140 55.0);
  --color-orange-500: oklch(0.669 0.160 55.0);
  --color-orange-600: oklch(0.569 0.146 52.2);
  --color-orange-700: oklch(0.465 0.119 52.3);
  --color-orange-800: oklch(0.358 0.093 50.8);
  --color-orange-900: oklch(0.251 0.071 45.9);
  --color-orange-950: oklch(0.158 0.049 40.7);

  /* amber */
  --color-amber-50: oklch(0.981 0.019 82.7);
  --color-amber-100: oklch(0.950 0.044 78.1);
  --color-amber-200: oklch(0.899 0.075 75.0);
  --color-amber-300: oklch(0.828 0.110 75.0);
  --color-amber-400: oklch(0.741 0.140 75.0);
  --color-amber-500: oklch(0.670 0.142 73.4);
  --color-amber-600: oklch(0.569 0.122 72.5);
  --color-amber-700: oklch(0.465 0.099 72.5);
  --color-amber-800: oklch(0.358 0.077 71.9);
  --color-amber-900: oklch(0.251 0.056 66.1);
  --color-amber-950: oklch(0.158 0.040 54.0);

  /* yellow */
  --color-yellow-50: oklch(0.983 0.020 95.0);
  --color-yellow-100: oklch(0.952 0.045 95.0);
  --color-yellow-200: oklch(0.899 0.075 95.0);
  --color-yellow-300: oklch(0.828 0.110 95.0);
  --color-yellow-400: oklch(0.741 0.140 95.0);
  --color-yellow-500: oklch(0.670 0.137 93.7);
  --color-yellow-600: oklch(0.569 0.117 94.0);
  --color-yellow-700: oklch(0.465 0.095 93.1);
  --color-yellow-800: oklch(0.358 0.073 92.8);
  --color-yellow-900: oklch(0.251 0.051 89.5);
  --color-yellow-950: oklch(0.158 0.033 81.0);

  /* lime */
  --color-lime-50: oklch(0.983 0.020 130.0);
  --color-lime-100: oklch(0.952 0.045 130.0);
  --color-lime-200: oklch(0.899 0.075 130.0);
  --color-lime-300: oklch(0.828 0.110 130.0);
  --color-lime-400: oklch(0.741 0.140 130.0);
  --color-lime-500: oklch(0.669 0.160 130.0);
  --color-lime-600: oklch(0.569 0.156 131.2);
  --color-lime-700: oklch(0.465 0.128 131.3);
  --color-lime-800: oklch(0.358 0.098 131.3);
  --color-lime-900: oklch(0.251 0.071 133.2);
  --color-lime-950: oklch(0.158 0.045 133.7);

  /* green */
  --color-green-50: oklch(0.983 0.020 150.0);
  --color-green-100: oklch(0.952 0.045 150.0);
  --color-green-200: oklch(0.899 0.075 150.0);
  --color-green-300: oklch(0.828 0.110 150.0);
  --color-green-400: oklch(0.741 0.140 150.0);
  --color-green-500: oklch(0.669 0.160 150.0);
  --color-green-600: oklch(0.574 0.167 147.8);
  --color-green-700: oklch(0.470 0.139 147.2);
  --color-green-800: oklch(0.361 0.107 147.2);
  --color-green-900: oklch(0.254 0.076 146.5);
  --color-green-950: oklch(0.160 0.050 145.4);

  /* emerald */
  --color-emerald-50: oklch(0.983 0.020 162.0);
  --color-emerald-100: oklch(0.952 0.045 162.0);
  --color-emerald-200: oklch(0.899 0.075 162.0);
  --color-emerald-300: oklch(0.828 0.110 162.0);
  --color-emerald-400: oklch(0.741 0.140 162.0);
  --color-emerald-500: oklch(0.674 0.152 160.3);
  --color-emerald-600: oklch(0.576 0.132 159.1);
  --color-emerald-700: oklch(0.469 0.107 159.6);
  --color-emerald-800: oklch(0.361 0.083 159.3);
  --color-emerald-900: oklch(0.254 0.059 158.3);
  --color-emerald-950: oklch(0.164 0.042 153.0);

  /* teal */
  --color-teal-50: oklch(0.983 0.020 175.0);
  --color-teal-100: oklch(0.952 0.045 175.0);
  --color-teal-200: oklch(0.899 0.075 175.0);
  --color-teal-300: oklch(0.828 0.110 175.0);
  --color-teal-400: oklch(0.741 0.140 175.0);
  --color-teal-500: oklch(0.676 0.130 173.3);
  --color-teal-600: oklch(0.575 0.110 173.1);
  --color-teal-700: oklch(0.472 0.091 172.5);
  --color-teal-800: oklch(0.363 0.070 172.2);
  --color-teal-900: oklch(0.254 0.049 172.6);
  --color-teal-950: oklch(0.163 0.033 169.1);

  /* cyan */
  --color-cyan-50: oklch(0.983 0.020 201.6);
  --color-cyan-100: oklch(0.952 0.045 205.0);
  --color-cyan-200: oklch(0.899 0.075 205.0);
  --color-cyan-300: oklch(0.828 0.110 205.0);
  --color-cyan-400: oklch(0.747 0.128 206.2);
  --color-cyan-500: oklch(0.678 0.116 206.8);
  --color-cyan-600: oklch(0.575 0.099 206.7);
  --color-cyan-700: oklch(0.470 0.081 206.9);
  --color-cyan-800: oklch(0.363 0.062 207.4);
  --color-cyan-900: oklch(0.254 0.043 207.0);
  --color-cyan-950: oklch(0.164 0.029 212.6);

  /* sky */
  --color-sky-50: oklch(0.982 0.013 217.4);
  --color-sky-100: oklch(0.951 0.033 222.6);
  --color-sky-200: oklch(0.897 0.066 226.3);
  --color-sky-300: oklch(0.827 0.108 230.3);
  --color-sky-400: oklch(0.741 0.140 232.0);
  --color-sky-500: oklch(0.676 0.144 235.5);
  --color-sky-600: oklch(0.575 0.124 236.0);
  --color-sky-700: oklch(0.472 0.103 237.3);
  --color-sky-800: oklch(0.363 0.080 237.8);
  --color-sky-900: oklch(0.254 0.055 236.9);
  --color-sky-950: oklch(0.163 0.041 245.1);

  /* blue */
  --color-blue-50: oklch(0.982 0.010 242.2);
  --color-blue-100: oklch(0.950 0.024 252.3);
  --color-blue-200: oklch(0.897 0.051 254.8);
  --color-blue-300: oklch(0.821 0.091 254.8);
  --color-blue-400: oklch(0.739 0.135 259.2);
  --color-blue-500: oklch(0.669 0.160 260.0);
  --color-blue-600: oklch(0.568 0.175 260.0);
  --color-blue-700: oklch(0.464 0.160 260.0);
  --color-blue-800: oklch(0.357 0.125 260.0);
  --color-blue-900: oklch(0.250 0.085 260.0);
  --color-blue-950: oklch(0.157 0.055 260.0);

  /* indigo */
  --color-indigo-50: oklch(0.982 0.009 266.5);
  --color-indigo-100: oklch(0.950 0.023 271.6);
  --color-indigo-200: oklch(0.897 0.050 273.0);
  --color-indigo-300: oklch(0.822 0.089 273.6);
  --color-indigo-400: oklch(0.739 0.135 274.9);
  --color-indigo-500: oklch(0.669 0.160 275.0);
  --color-indigo-600: oklch(0.568 0.175 275.0);
  --color-indigo-700: oklch(0.464 0.160 275.0);
  --color-indigo-800: oklch(0.357 0.125 275.0);
  --color-indigo-900: oklch(0.250 0.085 275.0);
  --color-indigo-950: oklch(0.157 0.055 275.0);

  /* violet */
  --color-violet-50: oklch(0.982 0.010 299.7);
  --color-violet-100: oklch(0.950 0.027 298.3);
  --color-violet-200: oklch(0.896 0.058 297.5);
  --color-violet-300: oklch(0.825 0.099 296.5);
  --color-violet-400: oklch(0.741 0.140 295.0);
  --color-violet-500: oklch(0.669 0.160 295.0);
  --color-violet-600: oklch(0.568 0.175 295.0);
  --color-violet-700: oklch(0.464 0.160 295.0);
  --color-violet-800: oklch(0.357 0.125 295.0);
  --color-violet-900: oklch(0.250 0.085 295.0);
  --color-violet-950: oklch(0.157 0.055 295.0);

  /* grape */
  --color-grape-50: oklch(0.982 0.016 325.7);
  --color-grape-100: oklch(0.951 0.041 323.7);
  --color-grape-200: oklch(0.899 0.075 320.0);
  --color-grape-300: oklch(0.828 0.110 320.0);
  --color-grape-400: oklch(0.741 0.140 320.0);
  --color-grape-500: oklch(0.669 0.160 320.0);
  --color-grape-600: oklch(0.568 0.175 320.0);
  --color-grape-700: oklch(0.464 0.160 320.0);
  --color-grape-800: oklch(0.357 0.125 320.0);
  --color-grape-900: oklch(0.250 0.085 320.0);
  --color-grape-950: oklch(0.157 0.055 320.0);

  /* fuchsia */
  --color-fuchsia-50: oklch(0.980 0.017 326.0);
  --color-fuchsia-100: oklch(0.948 0.042 330.3);
  --color-fuchsia-200: oklch(0.899 0.075 335.0);
  --color-fuchsia-300: oklch(0.828 0.110 335.0);
  --color-fuchsia-400: oklch(0.741 0.140 335.0);
  --color-fuchsia-500: oklch(0.669 0.160 335.0);
  --color-fuchsia-600: oklch(0.568 0.175 335.0);
  --color-fuchsia-700: oklch(0.464 0.160 335.0);
  --color-fuchsia-800: oklch(0.357 0.125 335.0);
  --color-fuchsia-900: oklch(0.250 0.085 335.0);
  --color-fuchsia-950: oklch(0.157 0.055 335.0);

  /* pink */
  --color-pink-50: oklch(0.981 0.012 342.7);
  --color-pink-100: oklch(0.946 0.035 343.2);
  --color-pink-200: oklch(0.893 0.069 346.8);
  --color-pink-300: oklch(0.828 0.110 350.0);
  --color-pink-400: oklch(0.741 0.140 350.0);
  --color-pink-500: oklch(0.669 0.160 350.0);
  --color-pink-600: oklch(0.568 0.175 350.0);
  --color-pink-700: oklch(0.464 0.160 350.0);
  --color-pink-800: oklch(0.357 0.125 350.0);
  --color-pink-900: oklch(0.250 0.085 350.0);
  --color-pink-950: oklch(0.157 0.055 350.0);

  /* rose */
  --color-rose-50: oklch(0.980 0.010 3.7);
  --color-rose-100: oklch(0.946 0.028 4.9);
  --color-rose-200: oklch(0.891 0.060 5.8);
  --color-rose-300: oklch(0.822 0.104 7.1);
  --color-rose-400: oklch(0.741 0.140 8.0);
  --color-rose-500: oklch(0.669 0.160 8.0);
  --color-rose-600: oklch(0.568 0.175 8.0);
  --color-rose-700: oklch(0.464 0.160 8.0);
  --color-rose-800: oklch(0.357 0.125 8.0);
  --color-rose-900: oklch(0.250 0.085 8.0);
  --color-rose-950: oklch(0.157 0.055 8.0);

  /* ---- neutral roles (bound to "gray") ---- */
  --color-bg: light-dark(white, var(--color-gray-950));
  --color-bg-subtle: light-dark(var(--color-gray-50), var(--color-gray-900));
  --color-border: light-dark(var(--color-gray-300), var(--color-gray-700));
  --color-border-strong: light-dark(var(--color-gray-500), var(--color-gray-600));
  --color-text-muted: light-dark(var(--color-gray-600), var(--color-gray-500));
  --color-text: light-dark(var(--color-gray-900), var(--color-gray-200));
  --color-text-strong: light-dark(black, var(--color-gray-50));

  /* ---- accent roles ----
   * on-solid is computed per hue: whichever of white/black actually
   * clears 4.5:1 against that hue's solid step. Never assume white.
   */

  --color-red-solid: var(--color-red-600);
  --color-red-on-solid: white; /* 4.91:1 */
  --color-red-text: light-dark(var(--color-red-700), var(--color-red-400));
  --color-red-border: light-dark(var(--color-red-500), var(--color-red-600));

  --color-orange-solid: var(--color-orange-600);
  --color-orange-on-solid: white; /* 4.73:1 */
  --color-orange-text: light-dark(var(--color-orange-700), var(--color-orange-400));
  --color-orange-border: light-dark(var(--color-orange-500), var(--color-orange-600));

  --color-amber-solid: var(--color-amber-600);
  --color-amber-on-solid: white; /* 4.59:1 */
  --color-amber-text: light-dark(var(--color-amber-700), var(--color-amber-400));
  --color-amber-border: light-dark(var(--color-amber-500), var(--color-amber-600));

  --color-yellow-solid: var(--color-yellow-600);
  --color-yellow-on-solid: black; /* 4.68:1 */
  --color-yellow-text: light-dark(var(--color-yellow-700), var(--color-yellow-400));
  --color-yellow-border: light-dark(var(--color-yellow-500), var(--color-yellow-600));

  --color-lime-solid: var(--color-lime-600);
  --color-lime-on-solid: black; /* 4.93:1 */
  --color-lime-text: light-dark(var(--color-lime-700), var(--color-lime-400));
  --color-lime-border: light-dark(var(--color-lime-500), var(--color-lime-600));

  --color-green-solid: var(--color-green-600);
  --color-green-on-solid: black; /* 5.13:1 */
  --color-green-text: light-dark(var(--color-green-700), var(--color-green-400));
  --color-green-border: light-dark(var(--color-green-500), var(--color-green-600));

  --color-emerald-solid: var(--color-emerald-600);
  --color-emerald-on-solid: black; /* 5.13:1 */
  --color-emerald-text: light-dark(var(--color-emerald-700), var(--color-emerald-400));
  --color-emerald-border: light-dark(var(--color-emerald-500), var(--color-emerald-600));

  --color-teal-solid: var(--color-teal-600);
  --color-teal-on-solid: black; /* 5.08:1 */
  --color-teal-text: light-dark(var(--color-teal-700), var(--color-teal-400));
  --color-teal-border: light-dark(var(--color-teal-500), var(--color-teal-600));

  --color-cyan-solid: var(--color-cyan-600);
  --color-cyan-on-solid: black; /* 5.01:1 */
  --color-cyan-text: light-dark(var(--color-cyan-700), var(--color-cyan-400));
  --color-cyan-border: light-dark(var(--color-cyan-500), var(--color-cyan-600));

  --color-sky-solid: var(--color-sky-600);
  --color-sky-on-solid: black; /* 4.90:1 */
  --color-sky-text: light-dark(var(--color-sky-700), var(--color-sky-400));
  --color-sky-border: light-dark(var(--color-sky-500), var(--color-sky-600));

  --color-blue-solid: var(--color-blue-600);
  --color-blue-on-solid: white; /* 4.60:1 */
  --color-blue-text: light-dark(var(--color-blue-700), var(--color-blue-400));
  --color-blue-border: light-dark(var(--color-blue-500), var(--color-blue-600));

  --color-indigo-solid: var(--color-indigo-600);
  --color-indigo-on-solid: white; /* 4.72:1 */
  --color-indigo-text: light-dark(var(--color-indigo-700), var(--color-indigo-400));
  --color-indigo-border: light-dark(var(--color-indigo-500), var(--color-indigo-600));

  --color-violet-solid: var(--color-violet-600);
  --color-violet-on-solid: white; /* 4.84:1 */
  --color-violet-text: light-dark(var(--color-violet-700), var(--color-violet-400));
  --color-violet-border: light-dark(var(--color-violet-500), var(--color-violet-600));

  --color-grape-solid: var(--color-grape-600);
  --color-grape-on-solid: white; /* 4.93:1 */
  --color-grape-text: light-dark(var(--color-grape-700), var(--color-grape-400));
  --color-grape-border: light-dark(var(--color-grape-500), var(--color-grape-600));

  --color-fuchsia-solid: var(--color-fuchsia-600);
  --color-fuchsia-on-solid: white; /* 4.95:1 */
  --color-fuchsia-text: light-dark(var(--color-fuchsia-700), var(--color-fuchsia-400));
  --color-fuchsia-border: light-dark(var(--color-fuchsia-500), var(--color-fuchsia-600));

  --color-pink-solid: var(--color-pink-600);
  --color-pink-on-solid: white; /* 4.96:1 */
  --color-pink-text: light-dark(var(--color-pink-700), var(--color-pink-400));
  --color-pink-border: light-dark(var(--color-pink-500), var(--color-pink-600));

  --color-rose-solid: var(--color-rose-600);
  --color-rose-on-solid: white; /* 4.94:1 */
  --color-rose-text: light-dark(var(--color-rose-700), var(--color-rose-400));
  --color-rose-border: light-dark(var(--color-rose-500), var(--color-rose-600));
}
