/* Ava Client design tokens */
/* ─────────────────────────────────────────────────────────────────────────────
   SOURCE DE VÉRITÉ — copie VERBATIM de la section 2 de AVA-CLIENT-DESIGN-SYSTEM.md
   Ne JAMAIS éditer ce fichier par projet. Toute page (apps/web, ava-inscriptions,
   pages futures) l'importe tel quel : un token qui change repeint tout.
   Pour modifier : on met à jour le DS, puis on recopie ici.
   ───────────────────────────────────────────────────────────────────────────── */
@import url("https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap");

:root {
  /* Brand */
  --ava-cyan: #00aeef;            /* logo mark only */
  --ava-cyan-dark: #0092c8;
  --ava-navy-900: #22275f;        /* app top bar */
  --ava-navy-800: #282d68;        /* sidebar search field */
  --ava-navy-700: #323874;        /* sidebar body */
  --ava-navy-600: #363c79;        /* dark primary button */
  --ava-navy-500: #454b8a;

  /* Action blue (GHL primary) */
  --blue-700: #0f4bc7;
  --blue-600: #155ef0;
  --blue-500: #2663eb;
  --blue-400: #1a8bf7;
  --blue-100: #dbe7ff;
  --blue-50: #eff4ff;

  /* Neutrals */
  --gray-900: #0f1828;
  --gray-700: #354055;
  --gray-600: #485468;
  --gray-500: #667085;
  --gray-400: #a4a6ae;
  --gray-300: #c4c8cf;
  --gray-250: #d0d5dd;
  --gray-200: #ebecf0;
  --gray-150: #f0f1f3;
  --gray-100: #f0f0f0;
  --gray-75: #f8f9fd;
  --gray-50: #f9fafb;
  --gray-25: #fcfcfc;
  --white: #ffffff;

  /* Status / accents (taken from GHL top-bar icons + table states) */
  --green-600: #009856;
  --teal-600: #46967f;
  --orange-500: #ff6602;
  --amber-500: #ffbc03;
  --purple-500: #a856f7;
  --red-600: #d92d21;
  --warm-50: #fdf3e6;            /* announcement banner background */

  /* Semantic aliases */
  --text-heading: var(--gray-900);
  --text-body: var(--gray-700);
  --text-secondary: var(--gray-600);
  --text-muted: var(--gray-500);
  --text-placeholder: var(--gray-400);
  --text-link: var(--blue-600);
  --text-on-dark: var(--white);
  --text-on-dark-muted: #b9bcd8;
  --text-danger: var(--red-600);

  --surface-page: var(--gray-50);
  --surface-card: var(--white);
  --surface-raised: var(--white);
  --surface-subtle: var(--gray-25);
  --surface-field-group: var(--gray-100);
  --surface-hover: var(--gray-50);
  --surface-selected: var(--blue-50);
  --surface-nav: var(--ava-navy-700);
  --surface-topbar: var(--ava-navy-900);
  --surface-notice: var(--warm-50);

  --border-subtle: var(--gray-200);
  --border-default: var(--gray-250);
  --border-strong: var(--gray-300);
  --border-focus: var(--blue-600);
  --border-nav: rgba(255, 255, 255, 0.12);

  --action-primary: var(--ava-navy-600);
  --action-primary-hover: var(--ava-navy-900);
  --action-accent: var(--blue-600);
  --action-accent-hover: var(--blue-700);
  --action-danger: var(--red-600);

  /* Avatar / tag palette — pastel fills with saturated text */
  --avatar-1-bg: #d1e9ff; --avatar-1-fg: #175cd3;
  --avatar-2-bg: #fee4e2; --avatar-2-fg: #b42318;
  --avatar-3-bg: #fef0c7; --avatar-3-fg: #b54708;
  --avatar-4-bg: #e9d7fe; --avatar-4-fg: #6941c6;
  --avatar-5-bg: #ccfbef; --avatar-5-fg: #107569;
  --avatar-6-bg: #fce7f6; --avatar-6-fg: #c11574;

  --font-sans: "Figtree", "Poppins", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;

  /* Sizes — measured off the app at 1x */
  --text-display: 24px;   /* page title: "Contacts", "Champs personnalisés" */
  --text-h1: 20px;
  --text-h2: 18px;
  --text-h3: 16px;
  --text-body-lg: 15px;
  --text-body-md: 14px;   /* default UI text, table cells, nav */
  --text-body-sm: 13px;
  --text-caption: 12px;   /* meta, counts, helper text */
  --text-micro: 11px;

  --leading-tight: 1.2;
  --leading-snug: 1.35;
  --leading-normal: 1.5;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  --tracking-tight: -0.01em;
  --tracking-normal: 0;
  --tracking-wide: 0.04em;   /* small caps-ish labels */

  --space-0: 0px;
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 12px;
  --space-6: 16px;
  --space-7: 20px;
  --space-8: 24px;
  --space-9: 32px;
  --space-10: 40px;
  --space-11: 48px;
  --space-12: 64px;

  /* Layout constants read off the app */
  --sidebar-width: 208px;
  --topbar-height: 44px;
  --tabbar-height: 48px;
  --rail-width: 48px;          /* right-hand icon rail */
  --row-height: 48px;          /* table rows */
  --control-height-sm: 28px;
  --control-height-md: 36px;   /* buttons, inputs, filter pills */
  --control-height-lg: 40px;
  --page-gutter: 20px;

  --radius-xs: 3px;
  --radius-sm: 4px;
  --radius-md: 6px;    /* buttons, inputs */
  --radius-lg: 8px;    /* cards, field groups, table container */
  --radius-xl: 12px;
  --radius-full: 9999px;  /* pills, chips, counts, avatars */

  --shadow-xs: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow-sm: 0 1px 3px rgba(16, 24, 40, 0.08);
  --shadow-card: 0 1px 2px rgba(16, 24, 40, 0.06), 0 0 0 1px var(--border-subtle) inset;
  --shadow-dropdown: 0 8px 20px rgba(16, 24, 40, 0.12);
  --shadow-modal: 0 20px 48px rgba(15, 24, 40, 0.20);
  --ring-focus: 0 0 0 3px rgba(21, 94, 240, 0.18);

  --ease-standard: cubic-bezier(0.2, 0, 0.2, 1);
  --duration-fast: 120ms;
  --duration-base: 180ms;
  --duration-slow: 260ms;
  --transition-control: background-color var(--duration-fast) var(--ease-standard),
    border-color var(--duration-fast) var(--ease-standard),
    color var(--duration-fast) var(--ease-standard),
    box-shadow var(--duration-fast) var(--ease-standard);
}
