/*
  Googo Digital : tokens du theme "Cobalt Mist" (21st.dev, @serafimcloud).
  Valeurs exactes lues par le MCP 21st.dev (get_theme) le 27/09/2026, reproduites a l'identique.
  Seul ecart demande : --muted passe de oklch(0.9288 0.0126 255.51) a #feb44d.

  Regles de contraste mesurees (WCAG AA, 4.5:1) :
  - texte blanc sur --primary : 5.26, autorise ;
  - texte blanc sur --secondary ou --accent : 2.4, INTERDIT (usage decoratif seulement) ;
  - texte sur --muted : --foreground (8.27), jamais --muted-foreground (4.29).

  Branche design-legency (27/09/2026) : style de legencymedia.com sur la palette Cobalt Mist.
  - Police Geist (Vercel, licence OFL, assets/fonts/GEIST-OFL.txt) a la place de PP Frama, payante.
  - Texte courant en noir (--ink) au lieu du gris ardoise.
  - Sections alternees blanc (--card) et gris (--section-alt), separees par un filet --border.
*/
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/geist-var.woff2") format("woff2");
}

:root {
  /* Couleurs du theme */
  --background: oklch(0.9842 0.0034 247.86);
  --foreground: oklch(0.2795 0.0368 260.03);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.2795 0.0368 260.03);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);
  --primary: oklch(0.546 0.245 262.881);
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(0.696 0.17 162.48);
  --secondary-foreground: oklch(1 0 0);
  --muted: #feb44d;
  --muted-foreground: oklch(0.4455 0.0374 257.28);
  --accent: oklch(0.7148 0.1257 215.22);
  --accent-foreground: oklch(1 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(1 0 0);
  --border: oklch(0.869 0.0198 252.89);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.7107 0.0351 256.79);
  --chart-1: oklch(0.81 0.10 252);
  --chart-2: oklch(0.62 0.19 260);
  --chart-3: oklch(0.55 0.22 263);
  --chart-4: oklch(0.49 0.22 264);
  --chart-5: oklch(0.42 0.18 266);

  /* Typographie et geometrie du theme */
  --font-sans: "Geist", ui-sans-serif, sans-serif, system-ui;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --letter-spacing: 0em;
  --radius: 0.625rem;
  --spacing: 0.25rem;

  /* Ombre du theme : 0 1px 3px 0 oklch(0 0 0 / 0.1) */
  --shadow-color: oklch(0 0 0);
  --shadow-opacity: 0.1;
  --shadow-sm: 0 1px 3px 0 oklch(0 0 0 / 0.1);

  /* Derives (jamais de nouvelle teinte : melanges des tokens ci-dessus) */
  /* Echelle d'arrondis de shadcn/ui, derivee de --radius (10px) */
  --radius-sm: calc(var(--radius) - 4px);
  --radius-md: calc(var(--radius) - 2px);
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) + 4px);
  --radius-2xl: calc(var(--radius) + 8px);
  --surface-dark: var(--foreground);
  --on-dark: oklch(1 0 0);
  --on-dark-soft: color-mix(in oklab, var(--on-dark) 72%, transparent);
  --hairline: color-mix(in oklab, var(--border) 70%, transparent);
  --hairline-dark: color-mix(in oklab, var(--on-dark) 14%, transparent);
  --primary-soft: color-mix(in oklab, var(--primary) 10%, var(--card));
  --muted-soft: color-mix(in oklab, var(--muted) 18%, var(--card));
  --shadow-soft: 0 1px 2px oklch(0 0 0 / 0.04), 0 12px 32px -12px color-mix(in oklab, var(--foreground) 18%, transparent);
  --shadow-lift: 0 2px 4px oklch(0 0 0 / 0.04), 0 28px 60px -20px color-mix(in oklab, var(--primary) 30%, transparent);

  /* Style legencymedia (branche design-legency) */
  --ink: oklch(0 0 0);                                              /* texte courant noir */
  --ink-soft: color-mix(in oklab, var(--ink) 72%, var(--card));     /* texte secondaire */
  --section-alt: color-mix(in oklab, var(--ink) 5%, var(--card));   /* gris des sections alternees, ~#f2f2f2 */
  --edge: color-mix(in oklab, var(--ink) 10%, transparent);         /* contour interieur des cartes */
  --label-on-dark: var(--chart-1);                                  /* etiquette bleue sur fond sombre */
  --radius-card: 12px;
  --radius-btn: 8px;
  --ease-legency: cubic-bezier(0.625, 0.05, 0, 1);

  /* Mouvement */
  --ease-out: cubic-bezier(0.32, 0.72, 0, 1);
  --ease-soft: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast: 280ms;
  --dur: 600ms;
  --dur-slow: 900ms;

  /* Mise en page */
  --container: 1240px;
  --gutter: clamp(16px, 4vw, 40px);
  --section-y: clamp(64px, 7vw, 104px);
}
