/* FastImplem — tokens de marque, repris de DemoFit (même échelle, même shell) ; seul l accent change :
   violet au lieu du bleu DemoFit. Chargé avant app.css et shell.css. */

/* Manrope (SIL Open Font License 1.1, fonts/OFL.txt), served from FastImplem itself: one variable
   file, weights 400 to 800, Latin subset. The app and the public site share it. */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/manrope-latin-400-800.101877a7a906.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
    U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  /* Brand */
  --fi-navy: #1A2836;
  --fi-accent: #4C3BCF;
  --fi-cyan: #7C6CF2;
  --fi-gradient: linear-gradient(135deg, #4C3BCF, #7C6CF2);
  --fi-bg: #F5F7FA;
  --fi-border: #E3E8EF;
  --fi-muted: #5B6675;

  /* Surfaces and lines */
  --fi-paper: #FFFFFF;
  --fi-subtle: #FAFBFD;         /* table heads, quiet wells */
  --fi-border-strong: #CBD4E0;  /* form controls, dashed empties */
  --fi-faint: #8A94A3;          /* placeholders, tertiary text */

  /* Accents */
  --fi-accent-dark: #3A2DA6;      /* hover / pressed */
  --fi-accent-soft: #EEEBFC;      /* selected rows, notes */
  --fi-cyan-soft: #F1EFFE;

  /* Status: text on soft fill, always paired */
  --fi-ok: #0E9F8E;             /* teal between blue and cyan, readable on white */
  --fi-ok-soft: #E0F8F8;
  --fi-ok-text: #08756A;
  --fi-warn: #C98A1B;
  --fi-warn-soft: #FDF3DC;
  --fi-warn-text: #7A5410;
  --fi-bad: #C0392B;
  --fi-bad-soft: #FBECEB;
  --fi-bad-text: #7A1F17;
  --fi-bad-line: #E7B3AD;
  --fi-neutral-soft: #EEF1F5;

  /* Type: one family, as on the public site */
  --fi-sans: Manrope, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fi-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --fi-text-xs: 0.78rem;    /* 12.5px: badges, table heads */
  --fi-text-sm: 0.875rem;   /* 14px: meta, hints, tables */
  --fi-text-md: 0.9375rem;  /* 15px: body in the app */
  --fi-text-lg: 1.0625rem;  /* 17px: card titles */
  --fi-text-xl: 1.25rem;    /* 20px: section titles */
  --fi-text-2xl: 1.75rem;   /* 28px: page titles */

  /* Space: 4px steps */
  --fi-space-1: 4px;
  --fi-space-2: 8px;
  --fi-space-3: 12px;
  --fi-space-4: 16px;
  --fi-space-5: 20px;
  --fi-space-6: 24px;
  --fi-space-8: 32px;
  --fi-space-10: 40px;

  /* Shape and depth */
  --fi-radius: 12px;            /* cards, panels, tables */
  --fi-radius-control: 8px;     /* inputs, buttons */
  --fi-radius-pill: 999px;
  --fi-shadow-sm: 0 1px 2px rgba(26, 40, 54, 0.05);
  --fi-shadow: 0 1px 2px rgba(26, 40, 54, 0.04), 0 4px 16px -6px rgba(26, 40, 54, 0.08);
  --fi-shadow-raised: 0 1px 2px rgba(26, 40, 54, 0.05), 0 18px 48px -12px rgba(76, 59, 207, 0.22);
  --fi-focus: 0 0 0 3px rgba(76, 59, 207, 0.25);

  /* Signed-in shell (shell.css): a dark navy side menu, the page at full width */
  --fi-night: #131D29;          /* side menu */
  --fi-night-2: #1C2938;        /* side menu hover and current item */
  --fi-night-3: #2A3949;        /* side menu lines, counts */
  --fi-on-night: #E6ECF3;
  --fi-on-night-muted: #93A1B2;
  --fi-sidebar: 240px;
  --fi-topbar: 64px;            /* sticky offsets in app.css count on it */
  --fi-content-max: 1680px;

  --fi-wrap: 1180px;            /* same width as the public site */
}
