:root {
    /* Zinc */
    --color-zinc-50: oklch(0.985 0 0);
    --color-zinc-100: oklch(0.967 0.001 286.375);
    --color-zinc-200: oklch(0.92 0.004 286.32);
    --color-zinc-300: oklch(0.871 0.006 286.286);
    --color-zinc-400: oklch(0.705 0.015 286.067);
    --color-zinc-500: oklch(0.552 0.016 285.938);
    --color-zinc-600: oklch(0.442 0.017 285.786);
    --color-zinc-700: oklch(0.37 0.013 285.805);
    --color-zinc-800: oklch(0.274 0.006 286.033);
    --color-zinc-900: oklch(0.21 0.006 285.885);
    --color-zinc-950: oklch(0.141 0.005 285.823);

    /* Stiletto */
    --color-stiletto-50: oklch(0.98 0.008 27);
    --color-stiletto-100: oklch(0.95 0.017 27);
    --color-stiletto-200: oklch(0.91 0.033 23);
    --color-stiletto-300: oklch(0.83 0.06 24);
    --color-stiletto-400: oklch(0.73 0.101 23);
    --color-stiletto-500: oklch(0.63 0.141 23);
    --color-stiletto-600: oklch(0.55 0.157 22);
    --color-stiletto-700: oklch(0.48 0.143 21);
    --color-stiletto-800: oklch(0.43 0.119 18);
    --color-stiletto-900: oklch(0.39 0.103 16);
    --color-stiletto-950: oklch(0.26 0.07 18);

    /* Orange */
    --color-orange-50: oklch(0.98 0.016 73.684);
    --color-orange-100: oklch(0.954 0.038 75.164);
    --color-orange-200: oklch(0.901 0.076 70.697);
    --color-orange-300: oklch(0.837 0.128 66.29);
    --color-orange-400: oklch(0.75 0.183 55.934);
    --color-orange-500: oklch(0.705 0.213 47.604);
    --color-orange-600: oklch(0.646 0.222 41.116);
    --color-orange-700: oklch(0.553 0.195 38.402);
    --color-orange-800: oklch(0.47 0.157 37.304);
    --color-orange-900: oklch(0.408 0.123 38.172);
    --color-orange-950: oklch(0.266 0.079 36.259);

    /* Green */
    --color-green-50: oklch(0.982 0.018 155.826);
    --color-green-100: oklch(0.962 0.044 156.743);
    --color-green-200: oklch(0.925 0.084 155.995);
    --color-green-300: oklch(0.871 0.15 154.449);
    --color-green-400: oklch(0.792 0.209 151.711);
    --color-green-500: oklch(0.723 0.219 149.579);
    --color-green-600: oklch(0.627 0.194 149.214);
    --color-green-700: oklch(0.527 0.154 150.069);
    --color-green-800: oklch(0.448 0.119 151.328);
    --color-green-900: oklch(0.393 0.095 152.535);
    --color-green-950: oklch(0.266 0.065 152.934);

    /* Red */
    --color-red-50: oklch(0.971 0.013 17.38);
    --color-red-100: oklch(0.936 0.032 17.717);
    --color-red-200: oklch(0.885 0.062 18.334);
    --color-red-300: oklch(0.808 0.114 19.571);
    --color-red-400: oklch(0.704 0.191 22.216);
    --color-red-500: oklch(0.637 0.237 25.331);
    --color-red-600: oklch(0.577 0.245 27.325);
    --color-red-700: oklch(0.505 0.213 27.518);
    --color-red-800: oklch(0.444 0.177 26.899);
    --color-red-900: oklch(0.396 0.141 25.723);
    --color-red-950: oklch(0.258 0.092 26.042);

    /* Blue */
    --color-blue-50: oklch(0.97 0.014 254.604);
    --color-blue-100: oklch(0.932 0.032 255.585);
    --color-blue-200: oklch(0.882 0.059 254.128);
    --color-blue-300: oklch(0.809 0.105 251.813);
    --color-blue-400: oklch(0.707 0.165 254.624);
    --color-blue-500: oklch(0.623 0.214 259.815);
    --color-blue-600: oklch(0.546 0.245 262.881);
    --color-blue-700: oklch(0.488 0.243 264.376);
    --color-blue-800: oklch(0.424 0.199 265.638);
    --color-blue-900: oklch(0.379 0.146 265.522);
    --color-blue-950: oklch(0.282 0.091 267.935);

    /* Base */
    --color-white: oklch(1 0 0);
    --color-black: oklch(0 0 0);

    /* Yellow Green */
    --color-yellow-green-50: oklch(0.98 0.019 113);
    --color-yellow-green-100: oklch(0.95 0.042 114);
    --color-yellow-green-200: oklch(0.9 0.08 114);
    --color-yellow-green-300: oklch(0.84 0.125 115);
    --color-yellow-green-400: oklch(0.8 0.147 116);
    --color-yellow-green-500: oklch(0.73 0.144 115);
    --color-yellow-green-600: oklch(0.64 0.126 114);
    --color-yellow-green-700: oklch(0.54 0.101 111);
    --color-yellow-green-800: oklch(0.47 0.081 110);
    --color-yellow-green-900: oklch(0.43 0.067 109);
    --color-yellow-green-950: oklch(0.29 0.047 109);

    /* Font family */
    --font-family-default: 'Inter', sans-serif;
    --font-family-display: 'Mona Sans', sans-serif;

    /* Font size */
    --font-size-12: 0.75rem;
    --font-size-14: 0.875rem;
    --font-size-16: 1rem;
    --font-size-18: 1.125rem;
    --font-size-20: 1.25rem;
    --font-size-24: 1.5rem;
    --font-size-28: 1.75rem;
    --font-size-32: 2rem;
    --font-size-36: 2.25rem;
    --font-size-40: 2.5rem;
    --font-size-44: 2.75rem;
    --font-size-48: 3rem;
    --font-size-56: 3.5rem;
    --font-size-64: 4rem;

    /* Size */
    --size-2: 0.125rem;
    --size-4: 0.25rem;
    --size-6: 0.375rem;
    --size-8: 0.5rem;
    --size-12: 0.75rem;
    --size-16: 1rem;
    --size-20: 1.25rem;
    --size-24: 1.5rem;
    --size-28: 1.75rem;
    --size-32: 2rem;
    --size-36: 2.25rem;
    --size-40: 2.5rem;
    --size-44: 2.75rem;
    --size-48: 3rem;
    --size-56: 4rem;
    --size-80: 5rem;
    --size-96: 6rem;
    --size-112: 7rem;
    --size-128: 8rem;
    --size-144: 9rem;
    --size-160: 10rem;
    --size-192: 12rem;
    --size-256: 16rem;
    --size-320: 20rem;

    /* Shadow */
    --shadow-1: 0px 1px 2px 0px color-mix(in oklab, var(--color-zinc-950) 5%, transparent);
    --shadow-2: 0px 1px 3px 0px color-mix(in oklab, var(--color-zinc-950) 10%, transparent), 0px 1px 2px -1px color-mix(in oklab, var(--color-zinc-950) 10%, transparent);
    --shadow-3: 0px 4px 6px -1px color-mix(in oklab, var(--color-zinc-950) 10%, transparent), 0px 2px 4px -2px color-mix(in oklab, var(--color-zinc-950) 10%, transparent);
    --shadow-4: 0px 10px 15px -3px color-mix(in oklab, var(--color-zinc-950) 10%, transparent), 0px 4px 6px -4px color-mix(in oklab, var(--color-zinc-950) 10%, transparent);
    --shadow-5: 0px 20px 25px -5px color-mix(in oklab, var(--color-zinc-950) 10%, transparent), 0px 8px 10px -6px color-mix(in oklab, var(--color-zinc-950) 10%, transparent);
    --shadow-6: 0px 25px 50px -12px color-mix(in oklab, var(--color-zinc-950) 25%, transparent);

    /* Radius */
    --radius-2: 0.125rem;
    --radius-4: 0.25rem;
    --radius-6: 0.375rem;
    --radius-8: 0.5rem;
    --radius-12: 0.75rem;
    --radius-16: 1rem;
    --radius-24: 1.5rem;
    --radius-32: 2rem;

    /* Surface */
    --surface-canvas: var(--color-zinc-50);
    --surface-default: var(--color-white);
    --surface-subtle: var(--color-zinc-100);
    --surface-subtlest: var(--color-zinc-200);
    --surface-hovered: var(--color-zinc-100);
    --surface-pressed: var(--color-zinc-200);
    --surface-selected: var(--color-stiletto-50);
    --surface-disabled: var(--color-zinc-100);
    --surface-inverted: var(--color-zinc-900);

    /* Text */
    --text-default: var(--color-zinc-950);
    --text-subtle: var(--color-zinc-600);
    --text-subtlest: var(--color-zinc-500);
    --text-disabled: var(--color-zinc-400);
    --text-placeholder: var(--color-zinc-400);
    --text-inverted: var(--color-white);

    /* Border */
    --border-default: color-mix(in oklch, var(--color-zinc-950) 20%, transparent);
    --border-subtle: color-mix(in oklch, var(--color-zinc-950) 7%, transparent);
    --border-selected: var(--color-stiletto-600);
    --border-focus: var(--color-stiletto-700);

    /* Primary */
    --action-primary-background: var(--color-stiletto-700);
    --action-primary-hovered: var(--color-stiletto-800);
    --action-primary-pressed: var(--color-stiletto-900);
    --action-primary-text: var(--color-white);

    /* Secondary */
    --action-secondary-background: var(--color-zinc-50);
    --action-secondary-hovered: var(--color-zinc-100);
    --action-secondary-pressed: var(--color-zinc-200);
    --action-secondary-border: var(--color-zinc-200);
    --action-secondary-text: var(--color-zinc-950);

    /* Success */
    --success-background: var(--color-green-200);
    --success-border: var(--color-green-400);
    --success-text: var(--color-green-950);

    /* Warning */
    --warning-background: var(--color-orange-200);
    --warning-border: var(--color-orange-400);
    --warning-text: var(--color-orange-950);

    /* Danger */
    --danger-background: var(--color-red-200);
    --danger-border: var(--color-red-400);
    --danger-text: var(--color-red-950);

    /* Info */
    --info-background: var(--color-blue-200);
    --info-border: var(--color-blue-400);
    --info-text: var(--color-blue-950);

    /* Chart */
    --chart-1: var(--color-stiletto-400);
    --chart-2: var(--color-yellow-green-500);
    --chart-3: var(--color-stiletto-600);

    /* Brand 1 */
    --brand-1-background: var(--color-stiletto-700);
    --brand-1-border: var(--color-stiletto-600);
    --brand-1-text: var(--color-white);
    --brand-1-accent: var(--color-stiletto-600);

    /* Brand 2 */
    --brand-2-background: var(--color-yellow-green-300);
    --brand-2-border: var(--color-yellow-green-500);
    --brand-2-text: var(--color-yellow-green-950);
    --brand-2-accent: var(--color-yellow-green-500);

    /* Brand 3 */
    --brand-3-background: var(--color-stiletto-400);
    --brand-3-border: var(--color-stiletto-500);
    --brand-3-text: var(--color-white);
    --brand-3-accent: var(--color-stiletto-500);

    /* Display Large */
    --display-large-font-family: var(--font-family-display);
    --display-large-font-weight: 500;
    --display-large-font-style: normal;
    --display-large-font-size: var(--font-size-64);
    --display-large-line-height: 1;
    --display-large-letter-spacing: -0.05em;
    --display-large-text-transform: none;
    --display-large: var(--display-large-font-style) var(--display-large-font-weight) var(--display-large-font-size)/var(--display-large-line-height) var(--display-large-font-family);

    /* Display Medium */
    --display-medium-font-family: var(--font-family-display);
    --display-medium-font-weight: 500;
    --display-medium-font-style: normal;
    --display-medium-font-size: var(--font-size-48);
    --display-medium-line-height: 1;
    --display-medium-letter-spacing: -0.05em;
    --display-medium-text-transform: none;
    --display-medium: var(--display-medium-font-style) var(--display-medium-font-weight) var(--display-medium-font-size)/var(--display-medium-line-height) var(--display-medium-font-family);

    /* Display Small */
    --display-small-font-family: var(--font-family-display);
    --display-small-font-weight: 500;
    --display-small-font-style: normal;
    --display-small-font-size: var(--font-size-40);
    --display-small-line-height: 1;
    --display-small-letter-spacing: -0.05em;
    --display-small-text-transform: none;
    --display-small: var(--display-small-font-style) var(--display-small-font-weight) var(--display-small-font-size)/var(--display-small-line-height) var(--display-small-font-family);

    /* Heading Large */
    --heading-large-font-family: var(--font-family-default);
    --heading-large-font-weight: 600;
    --heading-large-font-style: normal;
    --heading-large-font-size: var(--font-size-24);
    --heading-large-line-height: 1.1;
    --heading-large-letter-spacing: -0.01em;
    --heading-large-text-transform: none;
    --heading-large: var(--heading-large-font-style) var(--heading-large-font-weight) var(--heading-large-font-size)/var(--heading-large-line-height) var(--heading-large-font-family);

    /* Heading Medium */
    --heading-medium-font-family: var(--font-family-default);
    --heading-medium-font-weight: 600;
    --heading-medium-font-style: normal;
    --heading-medium-font-size: var(--font-size-20);
    --heading-medium-line-height: 1.2;
    --heading-medium-letter-spacing: -0.005em;
    --heading-medium-text-transform: none;
    --heading-medium: var(--heading-medium-font-style) var(--heading-medium-font-weight) var(--heading-medium-font-size)/var(--heading-medium-line-height) var(--heading-medium-font-family);

    /* Heading Small */
    --heading-small-font-family: var(--font-family-default);
    --heading-small-font-weight: 500;
    --heading-small-font-style: normal;
    --heading-small-font-size: var(--font-size-16);
    --heading-small-line-height: 1.1;
    --heading-small-letter-spacing: 0em;
    --heading-small-text-transform: none;
    --heading-small: var(--heading-small-font-style) var(--heading-small-font-weight) var(--heading-small-font-size)/var(--heading-small-line-height) var(--heading-small-font-family);

    /* Text Large */
    --text-large-font-family: var(--font-family-default);
    --text-large-font-weight: 400;
    --text-large-font-style: normal;
    --text-large-font-size: var(--font-size-18);
    --text-large-line-height: 1.5;
    --text-large-letter-spacing: 0em;
    --text-large-text-transform: none;
    --text-large: var(--text-large-font-style) var(--text-large-font-weight) var(--text-large-font-size)/var(--text-large-line-height) var(--text-large-font-family);

    /* Text Medium */
    --text-medium-font-family: var(--font-family-default);
    --text-medium-font-weight: 400;
    --text-medium-font-style: normal;
    --text-medium-font-size: var(--font-size-14);
    --text-medium-line-height: 1.5;
    --text-medium-letter-spacing: 0em;
    --text-medium-text-transform: none;
    --text-medium: var(--text-medium-font-style) var(--text-medium-font-weight) var(--text-medium-font-size)/var(--text-medium-line-height) var(--text-medium-font-family);

    /* Text Small */
    --text-small-font-family: var(--font-family-default);
    --text-small-font-weight: 400;
    --text-small-font-style: normal;
    --text-small-font-size: var(--font-size-12);
    --text-small-line-height: 1.333;
    --text-small-letter-spacing: 0em;
    --text-small-text-transform: none;
    --text-small: var(--text-small-font-style) var(--text-small-font-weight) var(--text-small-font-size)/var(--text-small-line-height) var(--text-small-font-family);

    /* Label */
    --label-font-family: var(--font-family-default);
    --label-font-weight: 500;
    --label-font-style: normal;
    --label-font-size: var(--font-size-14);
    --label-line-height: 1.5;
    --label-letter-spacing: 0em;
    --label-text-transform: none;
    --label: var(--label-font-style) var(--label-font-weight) var(--label-font-size)/var(--label-line-height) var(--label-font-family);

    /* Button */
    --button-height: var(--size-36);
    --button-radius: var(--radius-12);
    --button-padding-horizontal: var(--size-16);

    /* Field */
    --field-group-gap: var(--size-28);
    --field-control-gap: var(--size-12);
    --field-content-gap: var(--size-4);

    /* Input */
    --input-border-width: 1px;
    --input-focus-border-width: 1px;
    --input-border-color: var(--border-default);
    --input-background: var(--surface-default);
    --input-shadow: 0 0 0 0 transparent;
    --input-height: var(--size-36);
    --input-radius: var(--radius-12);
    --input-padding-horizontal: var(--size-12);

    /* Card */
    --card-spacing: var(--size-24);
    --card-spacing-between: var(--size-16);
    --card-radius: var(--radius-16);
    --card-border: var(--border-subtle);
    --card-shadow: var(--shadow-2);
    --card-radius-inner: calc(var(--card-radius) - var(--card-spacing));
    --card-spacing-half: calc(var(--card-spacing) / 2);

    /* Popover */
    --popover-spacing: var(--size-8);
    --popover-radius: var(--radius-16);
    --popover-border: var(--border-subtle);
    --popover-shadow: var(--shadow-4);

    /* Badge */
    --badge-radius: var(--radius-6);
}

:root[data-color-mode="dark"] {
    /* Surface */
    --surface-canvas: var(--color-zinc-950);
    --surface-default: var(--color-zinc-900);
    --surface-subtle: var(--color-zinc-800);
    --surface-subtlest: var(--color-zinc-700);
    --surface-hovered: var(--color-zinc-800);
    --surface-pressed: var(--color-zinc-800);
    --surface-selected: var(--color-stiletto-950);
    --surface-disabled: var(--color-zinc-800);
    --surface-inverted: var(--color-white);

    /* Text */
    --text-default: var(--color-white);
    --text-subtle: var(--color-zinc-300);
    --text-subtlest: var(--color-zinc-400);
    --text-disabled: var(--color-zinc-400);
    --text-placeholder: var(--color-zinc-400);
    --text-inverted: var(--color-zinc-950);

    /* Border */
    --border-default: color-mix(in oklch, var(--color-zinc-50) 25%, transparent);
    --border-subtle: color-mix(in oklch, var(--color-zinc-50) 12%, transparent);
    --border-selected: var(--color-stiletto-300);
    --border-focus: var(--color-stiletto-300);

    /* Primary */
    --action-primary-background: var(--color-stiletto-700);
    --action-primary-hovered: var(--color-stiletto-800);
    --action-primary-pressed: var(--color-stiletto-900);
    --action-primary-text: var(--color-white);

    /* Secondary */
    --action-secondary-background: var(--color-zinc-900);
    --action-secondary-hovered: var(--color-zinc-800);
    --action-secondary-pressed: var(--color-zinc-950);
    --action-secondary-border: var(--color-zinc-700);
    --action-secondary-text: var(--color-white);

    /* Success */
    --success-background: var(--color-green-950);
    --success-border: var(--color-green-700);
    --success-text: var(--color-green-200);

    /* Warning */
    --warning-background: var(--color-orange-950);
    --warning-border: var(--color-orange-700);
    --warning-text: var(--color-orange-200);

    /* Danger */
    --danger-background: var(--color-red-950);
    --danger-border: var(--color-red-700);
    --danger-text: var(--color-red-200);

    /* Info */
    --info-background: var(--color-blue-950);
    --info-border: var(--color-blue-700);
    --info-text: var(--color-blue-200);

    /* Chart */
    --chart-1: var(--color-stiletto-300);
    --chart-2: var(--color-yellow-green-400);
    --chart-3: var(--color-stiletto-500);

    /* Brand 1 */
    --brand-1-background: var(--color-stiletto-700);
    --brand-1-border: var(--color-stiletto-600);
    --brand-1-text: var(--color-white);
    --brand-1-accent: var(--color-stiletto-600);

    /* Brand 2 */
    --brand-2-background: var(--color-yellow-green-300);
    --brand-2-border: var(--color-yellow-green-500);
    --brand-2-text: var(--color-yellow-green-950);
    --brand-2-accent: var(--color-yellow-green-500);

    /* Brand 3 */
    --brand-3-background: var(--color-stiletto-400);
    --brand-3-border: var(--color-stiletto-500);
    --brand-3-text: var(--color-white);
    --brand-3-accent: var(--color-stiletto-500);
}
/* Palette AGRIVITI fournie pour cette révision. */
:root {
  --color-stiletto-50:#fcf5f4;--color-stiletto-100:#faebe9;--color-stiletto-200:#f5d8d6;--color-stiletto-300:#ecb9b5;--color-stiletto-400:#e18f8b;--color-stiletto-500:#d26361;--color-stiletto-600:#bc4246;--color-stiletto-700:#9f3339;--color-stiletto-800:#842d35;--color-stiletto-900:#722932;--color-stiletto-950:#3f1216;
  --color-black-50:#fafafa;--color-black-100:#f5f5f5;--color-black-200:#e6e6e6;--color-black-300:#d6d6d6;--color-black-400:#a5a5a5;--color-black-500:#767676;--color-black-600:#575757;--color-black-700:#434343;--color-black-800:#292929;--color-black-900:#1a1a1a;--color-black-950:#000000;
  --color-yellow-green-50:#f8faec;--color-yellow-green-100:#edf2d2;--color-yellow-green-200:#dee6a9;--color-yellow-green-300:#c9d673;--color-yellow-green-400:#b9c84d;--color-yellow-green-500:#a5b238;--color-yellow-green-600:#8c942b;--color-yellow-green-700:#717425;--color-yellow-green-800:#5e5f24;--color-yellow-green-900:#525223;--color-yellow-green-950:#2e2e10;
  --background:oklch(1 0 0);--foreground:oklch(0.141 0.005 285.823);--card:oklch(1 0 0);--card-foreground:oklch(0.141 0.005 285.823);--popover:oklch(1 0 0);--popover-foreground:oklch(0.141 0.005 285.823);
  --primary:oklch(0.551 0.157 22.043);--primary-foreground:oklch(1 0 0);--secondary:oklch(0.967 0.001 286.375);--secondary-foreground:oklch(0.21 0.006 285.885);--muted:oklch(0.967 0.001 286.375);--muted-foreground:oklch(0.552 0.016 285.938);--accent:oklch(0.967 0.001 286.375);--accent-foreground:oklch(0.21 0.006 285.885);--border:oklch(0.92 0.004 286.32);--input:oklch(0.92 0.004 286.32);--ring:oklch(0.733 0.101 22.85);--radius:0.5rem;
  --action-primary-background:var(--primary);--action-primary-hovered:var(--color-stiletto-700);--action-primary-pressed:var(--color-stiletto-800);
  --brand-highlight:#f1c743;--footer-background:#f3f3ee;--footer-bottom-background:#e9e9e2;
}
.dark {--background:oklch(0.141 0.005 285.823);--foreground:oklch(0.985 0 0);--card:oklch(0.21 0.006 285.885);--card-foreground:oklch(0.985 0 0);--popover:oklch(0.21 0.006 285.885);--popover-foreground:oklch(0.985 0 0);--secondary:oklch(0.274 0.006 286.033);--secondary-foreground:oklch(0.985 0 0);--muted:oklch(0.274 0.006 286.033);--muted-foreground:oklch(0.705 0.015 286.067);--accent:oklch(0.274 0.006 286.033);--accent-foreground:oklch(0.985 0 0);--border:oklch(0.274 0.006 286.033);--input:oklch(0.37 0.013 285.805);--ring:oklch(0.428 0.119 18.391)}

/* Gris de surface validé pendant la revue de la home. */
:root { --home-gray: #f6f5f8; --surface-canvas: var(--home-gray); }
:root { --home-green: #c8d673; }

/* Échelle commune de la home : contrôles, cartes et grandes surfaces. */
:root {
  --home-ink: #1d1d1f;
  --home-muted: #66666e;
  --home-border: #e5e4e9;
  --home-link: #9f3339;
  --home-radius-card: 20px;
  --home-radius-surface: 28px;
  --home-gap: 12px;
  --home-ease: cubic-bezier(.22,1,.36,1);
  --button-height: 44px;
  --input-height: 44px;
  --button-radius: var(--radius-12);
  --input-radius: var(--radius-12);
}
@media(max-width:700px) {
  :root { --home-radius-card: 18px; --home-radius-surface: 22px; --home-gap: 10px; }
}
