/* Innorve colour system — Palette A (navy + violet).
   PROVENANCE IS MIXED. Read the per-group notes before shipping any of this.
     · Brand core and the shadcn HSL channels are lifted verbatim from
       nextjs_space/app/globals.css and the brand guidelines. Approved 5 Sep 2026.
     · Brand extensions are lifted from app/_landing/{hero,sections,nav-and-cta}.tsx,
       EXCEPT --violet-press (marked below) and two that are actually globals.css
       tokens: --violet-link is --color-link, --medallion-from is
       --color-lavender-mist. Both ratified; look in globals.css, not _landing.
     · The Ink group is mostly verbatim but contains two derived values, marked.
     · Application surfaces, lines, on-navy ink, status tints and the entire
       evidence palette were DERIVED for the Opportunity Hub mockups built in
       this project. No one at Innorve has ratified them. Marked below.
   Beige #F0ECE5 was retired in favour of the cool lavender white #F8F6FF. */
:root {
  /* ── Brand core ── */
  --navy: #061027;
  --violet: #7050D8;
  --lilac: #BCADF3;
  --warm-white: #F8F6FF;
  --lavender-mist: #EFEBFC;
  --sky: #7FB8F5;
  --white: #FFFFFF;

  /* ── Brand extensions (gradient stops used in marketing surfaces) ── */
  --violet-deep: #5A3FC0;
  --violet-mid: #9B7BFF;
  --violet-link: #6242BC;
  --violet-press: #4F349E;        /* DERIVED, NOT RATIFIED — no link-press colour
                                     exists in the source; grep found no match. */
  --sky-mid: #6FA8F5;
  --medallion-from: #EFEBFC;
  --medallion-to: #DDD5FA;
  --cta-from: #1C1650;
  --cta-mid: #3B2A8C;
  --cta-to: #5A3FC0;

  /* ── Ink ──
     Verbatim from globals.css EXCEPT two values:
       --text-tertiary       DERIVED, NOT RATIFIED. globals.css has primary and
                             secondary only; a dense table needed a third step.
       --text-on-dark-muted  DERIVED. nav-and-cta.tsx uses text-white/80; this is
                             0.82. Kept to match the artifacts in this project —
                             set it to 0.8 if you want strict source parity. ── */
  --text-primary: #061027;
  --text-secondary: #536073;
  --text-tertiary: #5E6A7C;
  --text-on-dark: #FFFFFF;
  --text-on-dark-muted: rgba(255, 255, 255, 0.82);
  --text-accent-on-dark: #BCADF3;

  /* ── Application surfaces (Opportunity Hub shell) ──
     DERIVED, NOT RATIFIED. Chosen while building the Hub mockups because
     globals.css defines no application-shell surfaces. --surface-navy is the
     real brand navy; the rest await sign-off. ── */
  --surface-canvas: #F7F8FA;
  --surface-card: #FFFFFF;
  --surface-sunken: #EDF0F4;
  --surface-accent: #FAF8FE;
  --surface-navy: #061027;
  --surface-navy-raised: #0D1830;

  /* ── Lines ──
     DERIVED, NOT RATIFIED, except --border-brand #E2DDF0 which is the real
     --border token from globals.css. ── */
  --border-subtle: #EDF0F4;
  --border-default: #E2E6EC;
  --border-strong: #D3DAE4;
  --border-stronger: #C8D1DE;
  --border-brand: #E2DDF0;
  --border-accent: #E3DAF8;
  --border-on-navy: #16223C;
  --border-on-navy-raised: #2A3A5C;

  /* ── On-navy ink (sidebar) ──
     DERIVED, NOT RATIFIED. Contrast-checked against #061027 (ratios on the
     "Ink on navy" specimen card) but not brand-approved. ── */
  --on-navy-primary: #FFFFFF;
  --on-navy-secondary: #A8B4C8;
  --on-navy-muted: #7A88A0;
  --on-navy-disabled: #6E7C94;
  --on-navy-scroll: #3D4F73;

  /* ── Status. Always pair with a label or glyph, never colour alone. ──
     --success #196C51, --warning #875B16 and --error #B33440 ARE from globals.css.
     Everything else in this group is DERIVED, NOT RATIFIED — every -bg and -border
     tint, --info, and both --success-deep and --error-deep. ── */
  --success: #196C51;
  --success-deep: #12563F;
  --success-bg: #E6F2ED;
  --success-border: #BFDFD2;
  --warning: #875B16;
  --warning-bg: #FDF3E3;
  --warning-border: #EFD9AE;
  --error: #B33440;
  --error-deep: #A02B36;
  --error-bg: #FBECEE;
  --error-border: #F2CCD1;
  --info: #3D4C63;
  --info-bg: #EDF0F5;
  --info-border: #CFD7E4;

  /* ── Evidence stage. The product's core semantic: every material figure
     declares how it was known. Tinted chip = machine-proposed or estimated;
     solid violet = an action a human can take.
     The five-stage VOCABULARY is from the user's specification. Every hex value
     here is DERIVED, NOT RATIFIED except two that are real globals.css tokens:
     --ev-reported-fg #536073 is --color-text-secondary, and --ev-measured-fg
     #196C51 is --color-success. The other nine are chosen for the Hub mockups,
     and are the most consequential unratified values in the system since they
     colour every figure in the product. ── */
  --ev-reported-bg: #EDF0F4;
  --ev-reported-fg: #536073;
  --ev-ai-bg: #EFEAFC;
  --ev-ai-fg: #5B36C7;
  --ev-ai-border: #C9BAF2;
  --ev-estimated-bg: #EDF0F5;
  --ev-estimated-fg: #3D4C63;
  --ev-measured-bg: #E6F2ED;
  --ev-measured-fg: #196C51;
  --ev-confirmed-bg: #E6F2ED;
  --ev-confirmed-fg: #12563F;

  /* ── shadcn/ui channel tokens (HSL triplets, consumed as hsl(var(--x))) ── */
  --background: 250 100% 98.5%; /* @kind color */
  --foreground: 218 68% 9%; /* @kind color */
  --card: 0 0% 100%; /* @kind color */
  --card-foreground: 218 68% 9%; /* @kind color */
  --popover: 0 0% 100%; /* @kind color */
  --popover-foreground: 218 68% 9%; /* @kind color */
  --primary: 255 60% 58%; /* @kind color */
  --primary-foreground: 0 0% 100%; /* @kind color */
  --secondary: 255 60% 82%; /* @kind color */
  --secondary-foreground: 218 68% 9%; /* @kind color */
  --muted: 250 60% 95%; /* @kind color */
  --muted-foreground: 214 22% 39%; /* @kind color */
  --accent: 255 60% 82%; /* @kind color */
  --accent-foreground: 218 68% 9%; /* @kind color */
  --destructive: 353 55% 45%; /* @kind color */
  --destructive-foreground: 0 0% 100%; /* @kind color */
  --border: 250 30% 89%; /* @kind color */
  --input: 250 30% 89%; /* @kind color */
  --ring: 255 60% 58%; /* @kind color */
}
