/**
 * PimentCSS — reference palettes (Caribbean / Antilles)
 * Canonical OKLCH + hex fallback. Regenerate Sass: npm run generate:palettes
 */

:root {
  /* Primary — lagoon teal (mer des Antilles) */
  --primary-100: oklch(96.5% 0.03 195);
  --primary-200: oklch(91% 0.06 195);
  --primary-300: oklch(83% 0.1 195);
  --primary-400: oklch(72% 0.13 195);
  --primary-500: oklch(58% 0.14 195);
  --primary-600: oklch(48% 0.13 195);
  --primary-700: oklch(40% 0.11 195);
  --primary-800: oklch(32% 0.09 195);
  --primary-900: oklch(24% 0.07 195);
  --primary-default: var(--primary-600);

  /* Accent — sunset mango / corail doux */
  --accent-100: oklch(97.5% 0.04 55);
  --accent-200: oklch(93% 0.09 52);
  --accent-300: oklch(87% 0.14 50);
  --accent-400: oklch(80% 0.17 48);
  --accent-500: oklch(72% 0.19 46);
  --accent-600: oklch(62% 0.17 44);
  --accent-700: oklch(52% 0.14 42);
  --accent-800: oklch(40% 0.11 40);
  --accent-900: oklch(28% 0.08 38);
  --accent-default: var(--accent-500);

  /* Neutral — sable chaud (light) / nuit caraïbe (dark) */
  --neutral-100: oklch(98.2% 0.012 85);
  --neutral-200: oklch(93.5% 0.018 80);
  --neutral-300: oklch(86% 0.022 75);
  --neutral-400: oklch(74% 0.025 70);
  --neutral-450: oklch(62% 0.028 68);
  --neutral-500: oklch(50% 0.03 265);
  --neutral-600: oklch(42% 0.032 265);
  --neutral-700: oklch(34% 0.034 268);
  --neutral-800: oklch(26% 0.036 270);
  --neutral-900: oklch(18% 0.04 272);
  --neutral-white: oklch(100% 0 0);
  --neutral-black: oklch(0% 0 0);
  --neutral-default: var(--neutral-500);

  /* Information — cyan lagon */
  --information-100: oklch(96% 0.04 210);
  --information-200: oklch(88% 0.09 210);
  --information-300: oklch(78% 0.13 212);
  --information-400: oklch(68% 0.16 214);
  --information-500: oklch(58% 0.17 216);
  --information-600: oklch(50% 0.15 216);
  --information-700: oklch(42% 0.12 218);
  --information-800: oklch(32% 0.09 220);
  --information-900: oklch(22% 0.06 222);
  --information-default: var(--information-500);

  /* Success — vert tropical */
  --success-100: oklch(95% 0.05 150);
  --success-200: oklch(88% 0.1 150);
  --success-300: oklch(80% 0.14 148);
  --success-400: oklch(72% 0.17 146);
  --success-500: oklch(62% 0.18 144);
  --success-600: oklch(52% 0.16 142);
  --success-650: oklch(46% 0.13 142);
  --success-700: oklch(40% 0.11 140);
  --success-800: oklch(30% 0.08 140);
  --success-900: oklch(20% 0.05 142);
  --success-default: var(--success-500);

  /* Warning — papaye */
  --warning-100: oklch(97% 0.03 65);
  --warning-200: oklch(92% 0.08 62);
  --warning-300: oklch(85% 0.12 58);
  --warning-400: oklch(78% 0.15 55);
  --warning-500: oklch(70% 0.17 52);
  --warning-600: oklch(60% 0.16 48);
  --warning-700: oklch(50% 0.13 45);
  --warning-800: oklch(38% 0.1 42);
  --warning-900: oklch(26% 0.07 40);
  --warning-default: var(--warning-500);

  /* Error — hibiscus */
  --error-100: oklch(96% 0.03 22);
  --error-200: oklch(88% 0.1 22);
  --error-300: oklch(76% 0.16 24);
  --error-400: oklch(64% 0.19 26);
  --error-450: oklch(56% 0.18 26);
  --error-500: oklch(50% 0.18 28);
  --error-600: oklch(42% 0.16 28);
  --error-700: oklch(34% 0.13 28);
  --error-800: oklch(26% 0.1 28);
  --error-900: oklch(18% 0.07 28);
  --error-default: var(--error-500);

  /* Semantic color aliases */
  --color-blue-900: var(--primary-900);
  --color-yellow-100: var(--accent-100);
  --color-yellow-900: var(--accent-900);
  --color-grey-100: var(--neutral-100);
  --color-grey-900: var(--neutral-900);
  --color-azure-100: var(--information-100);
  --color-azure-900: var(--information-900);
}

/* Hex fallback — browsers without OKLCH */
@supports not (color: oklch(0% 0 0)) {
  :root {
    --primary-100: #dff6f4;
    --primary-200: #a8e8e2;
    --primary-300: #5ec9be;
    --primary-400: #2ba89c;
    --primary-500: #1a8f84;
    --primary-600: #0f766e;
    --primary-700: #0c5f59;
    --primary-800: #094a46;
    --primary-900: #063532;
    --accent-100: #fff4e8;
    --accent-200: #ffe0b8;
    --accent-300: #ffc77a;
    --accent-400: #ffad42;
    --accent-500: #f5921a;
    --accent-600: #d97a12;
    --accent-700: #b36210;
    --accent-800: #874a0c;
    --accent-900: #5c3208;
    --neutral-100: #faf8f4;
    --neutral-200: #efe9df;
    --neutral-300: #d9d0c4;
    --neutral-400: #b8aea0;
    --neutral-450: #968c80;
    --neutral-500: #5c6478;
    --neutral-600: #4a5162;
    --neutral-700: #3a404f;
    --neutral-800: #2a2f3c;
    --neutral-900: #161a26;
    --neutral-white: #ffffff;
    --neutral-black: #000000;
    --information-100: #e8f7fc;
    --information-200: #b8e8f8;
    --information-300: #6ecde8;
    --information-400: #2aafd4;
    --information-500: #0d8fb8;
    --information-600: #0a7699;
    --information-700: #085f7a;
    --information-800: #06455a;
    --information-900: #042d3c;
    --success-100: #e5f8e8;
    --success-200: #b8ebc4;
    --success-300: #7ad492;
    --success-400: #42b864;
    --success-500: #1f9a47;
    --success-650: #1a7a3a;
    --success-700: #156530;
    --success-800: #0e451f;
    --success-900: #082a13;
    --warning-100: #fff5e8;
    --warning-200: #ffe2bc;
    --warning-300: #ffc888;
    --warning-400: #ffad52;
    --warning-500: #f08f28;
    --warning-600: #d47820;
    --warning-700: #a85c18;
    --warning-800: #7a4210;
    --warning-900: #4d2a0a;
    --error-100: #ffeceb;
    --error-200: #ffc4be;
    --error-300: #ff8a7a;
    --error-400: #e85a4a;
    --error-450: #c94438;
    --error-500: #b32d24;
    --error-600: #94231c;
    --error-700: #751b16;
    --error-800: #561410;
    --error-900: #380d0a;
  }
}
