/* Lato Bold: locally hosted under the SIL Open Font License; see fonts/lato/OFL.txt. */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/lato/Lato-Bold.ttf') format('truetype');
}

/* MRT design system — NAVACORD direction (design source
   `Marketing Requests - Navacord.dc.html`, imported 2026-08-21). Supersedes the WARM direction
   the way WARM superseded Enterprise; plan + palette map in docs/navacord-rebrand-plan.md.
   Values are literal from that file except where a literal would fail WCAG AA — the one
   deviation is marked `AA:` below.

   Two layers:
   (1) our own tokens (--ink ramp, brand + status palette, tints) that the custom components use;
   (2) Blueprint's tokens (--background, --card, --primary, --radius, …) mapped to the same
       palette so Blueprint components match.

   What changed from WARM: a cool-grey ground (#F5F7F8) instead of cream, a blue-grey ink ramp
   instead of warm-grey, Hanken Grotesk instead of IBM Plex, SQUARE corners again (circle avatars
   and 999px reaction pills are the kit's own exceptions), and the Navacord navy #003250 joins
   the teal/lime family as the shell colour. Shadows stay banned except popovers/modals/toast
   (var(--shadow-pop)) and the celebration card. */

:root {
  /* --- typefaces --- */
  --font-display: 'Lato', 'Arial', sans-serif;
  --font-sans: 'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  /* The kit has no mono face — IDs/dates set in the sans with tabular figures. Kept as a
     distinct token so .mono can retune without touching call sites. */
  --font-mono: 'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;

  /* --- cool-grey ground + ink ramp --- */
  --bg: #f5f7f8;             /* cool-grey page ground — the Navacord shell colour family */
  --surface: #ffffff;        /* main content, cards, rows, input wells */
  --surface-2: #eff2f4;      /* row hover, group headers */
  --surface-3: #eff3f5;      /* pressed/secondary fills */
  --ink: #1d2b36;
  --muted: #5b6770;          /* secondary text — 7.0:1 on white */
  /* AA: kit says #8A959D, which is 3.2:1 on white — under the 4.5:1 floor for the 11–12px
     meta text this token is used for. Darkened until it clears 4.5:1 on EVERY ground it sits
     on (white, --bg, --surface-2 — 5.2/4.8/4.6); the kit grey survives as --placeholder and
     for purely decorative marks. */
  --faint: #646e7a;          /* labels / meta */
  --hairline: #e5e9ec;       /* rules and section/row dividers */
  --hairline-strong: #c7ced4;/* control borders (the kit draws these 1.5px) */
  --list-hairline: #eff2f4;  /* hairline inside dense lists (activity/conversation/subtasks) */
  --placeholder: #8a959d;    /* textarea/input placeholder ink + decorative kit grey */

  /* --- Navacord brand + status palette --- */
  --navy-deep: #001f33;      /* approved inline landing comp sidebar */
  --navy: #003250;           /* header/footer, headings, dark buttons, active step */
  --brand: #006265;          /* dark teal — links, teal fills, selected borders */
  --brand-hover: #004a50;
  --brand-ink: #ffffff;
  --brand-soft: #e6efef;     /* teal tint (delivered chip, approve banner) */
  --brand-text: #006265;     /* teal ink — AA on white and on the grey ground */
  --teal-soft: #e6efef;      /* alias used by chips/banners */
  --lime: #a5ce4d;           /* CTA + BLOCKED-ON-USER accent — brand mark, buttons, badges */
  --lime-ink: #003250;       /* ink that sits ON lime (CTAs, count badges) */
  --lime-text: #4e7217;      /* success ink on tints */
  --lime-tint: #fafbf3;      /* needs-you soft ground (kit tint family default) */
  --lime-band: #f4f8e4;      /* needs-you active band / group-header ground */
  --lime-border: #d5dcc2;    /* border of the tint family */
  --lime-edge: #c6d39a;      /* rails/edges of the tint family */
  --ok-tint: #f7faee;        /* success strips (answered / submitted) */
  --slate: #5b6770;          /* submitted / neutral status ink */
  --steel: #3e617a;          /* in review / scheduled chip ink (on --steel-soft) */
  --steel-soft: #eaf0f3;     /* neutral stage-chip ground */
  --steel-decor: #6a91a3;    /* decorative steel (dots, bars, due-this-week rail) */
  --delivered: #4e7217;      /* delivered */
  --closed: #5b6770;         /* closed */
  --panel: #f5f7f8;          /* detail aside / side panels */
  --pulse-ring: rgba(0, 98, 101, 0.34);  /* live-update highlight ring */

  /* --- shell (top header + footer) --- */
  --header-bg: #003250;
  --header-ink: #ffffff;
  --header-muted: #9fb3c0;   /* inactive nav + footer tagline — 6.0:1 on the navy */

  /* --- avatars --- */
  --avatar-mkt-bg: #d7e2e0;  --avatar-mkt-ink: #006265;   /* marketing team */
  --avatar-req-bg: #e3e7ea;  --avatar-req-ink: #5b6770;   /* requester (you) */

  /* --- legacy status families (kept until the status-system slice retires them) --- */
  --amber: #a86a00;   --amber-text: #7a5200; --amber-soft: #fbf1dc; --amber-border: #e8cf94;
  --blue: #3e6fb0;    --blue-text: #33598c;  --blue-soft: #ebeef6;  --blue-border: #cbd8ec;
  --green: #2f8455;   --green-text: #256a44; --green-soft: #eaf2e6; --green-border: #cbe0bd;
  --grey: #8a959d;    --grey-text: #5b6770;  --grey-soft: #eff2f4;  --grey-border: #dde1e4;
  /* bad-delta family (admin dashboard, `Admin Dashboard - Navacord.dc.html` 2026-08-25):
     the design's regressions pill — amber is the wrong hue for "worse than last period". */
  --red: #a2402c;     --red-text: #a2402c;   --red-soft: #fbefec;   --red-border: #e8cfc7;

  /* --- structure: square + flat; shadows only on floating layers --- */
  --radius: 0;               /* Navacord is square — a card with border + radius is a mistake */
  --radius-sm: 0;
  --radius-pill: 999px;      /* mention + reaction chips (the kit's own exception) */
  --card-shadow: none;
  --shadow-pop: 0 10px 24px rgba(0, 50, 80, 0.12);  /* popovers, modals, toast ONLY */
  --backdrop: rgba(0, 50, 80, 0.45);                /* mobile drawer / modal scrim */

  /* the kit's literal disabled spec */
  --disabled-bg: #e3e7ea;
  --disabled-ink: #8a959d;

  /* --- Blueprint token overrides, mapped to the palette above --- */
  --background: var(--bg);
  --foreground: var(--ink);
  --card: var(--surface);
  --card-foreground: var(--ink);
  --popover: var(--surface);
  --popover-foreground: var(--ink);
  --muted-foreground: var(--muted);
  --border: var(--hairline);
  --input: var(--hairline);
  --primary: var(--brand);
  --primary-foreground: var(--brand-ink);
  --secondary: var(--surface-3);
  --secondary-foreground: var(--ink);
  --ring: var(--brand);
}

/* Dark palette. Applied ONLY on an explicit toggle (Blueprint's `.dark` or our
   `data-theme="dark"`) — no system-preference auto-switch until a toggle ships. Dormant today;
   values kept consistent so no token is undefined if the toggle lands. Cooled to match: the
   neutrals carry the navy cast of the Navacord family. */
:root[data-theme="dark"],
.dark {
  --bg: #0e1721;
  --surface: #14202b;
  --surface-2: #1b2934;
  --surface-3: #22313d;
  --ink: #e8edf1;
  --muted: #aebbc4;
  --faint: #93a1ab;
  --hairline: #263542;
  --hairline-strong: #3a4c5b;
  --list-hairline: #1e2c38;
  --placeholder: #8a959d;

  --navy: #9fc2dd;
  --brand: #3e9c92;
  --brand-hover: #4fb0a5;
  --brand-ink: #08211e;
  --brand-soft: #1c312e;
  --brand-text: #7bccc2;
  --teal-soft: #1c312e;
  --lime: #b6d95f;
  --lime-ink: #08211e;
  --lime-text: #c3de7f;
  --lime-tint: #1c2418;
  --lime-band: #232b18;
  --lime-border: #3d4a2a;
  --lime-edge: #55663a;
  --ok-tint: #1e2818;
  --slate: #93a1ab;
  --steel: #8fb4cc;
  --steel-soft: #1c2b37;
  --steel-decor: #6a91a3;
  --delivered: #8fbf5a;
  --closed: #93a1ab;
  --panel: #121c26;
  --pulse-ring: rgba(62, 156, 146, 0.45);

  --header-bg: #0a1520;
  --header-ink: #e8edf1;
  --header-muted: #8ba3b5;

  --avatar-mkt-bg: #1d3a37;  --avatar-mkt-ink: #7bccc2;
  --avatar-req-bg: #26333d;  --avatar-req-ink: #aebbc4;

  --amber: #dfae4f; --amber-text: #e8c77e; --amber-soft: #2c2517; --amber-border: #57451d;
  --blue: #6e9bd6;  --blue-text: #a3c1e8;  --blue-soft: #1e2836;  --blue-border: #32425a;
  --green: #57b181; --green-text: #8fd2ac; --green-soft: #1e2c1b; --green-border: #34462c;
  --grey: #8a959d;  --grey-text: #aebbc4;  --grey-soft: #1e2b35;  --grey-border: #34424e;
  --red: #d98a70;   --red-text: #e2a08b;   --red-soft: #2e1d18;   --red-border: #5a3527;

  --card-shadow: none;
  --shadow-pop: 0 12px 28px rgba(0, 0, 0, 0.5);
  --backdrop: rgba(0, 0, 0, 0.6);

  --disabled-bg: #24313c;
  --disabled-ink: #76838d;
}

body {
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}

/* Overlay surfaces (Blueprint dialogs ship no background) — opaque themed surface. */
[role="dialog"],
[role="alertdialog"],
[data-slot="popover-content"],
[data-slot="sheet-content"] {
  background-color: var(--surface);
  color: var(--ink);
}

/* Skip link (hidden until focused). */
.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 100;
  background: var(--brand); color: var(--brand-ink);
  padding: 0.5rem 1rem;
}
.skip-link:focus { left: 0; }
