  /* ============================================================
     OPERATIONS CONSOLE — design tokens
     The palette is deliberately near-monochrome. In a CRM every row
     carries a status badge, so if the furniture is also colourful the
     colour stops meaning anything. Here colour appears only as signal:
     a status, an alert, the one active nav item. Everything else is
     slate and hairline.
     ============================================================ */
  :root{
    /* semantic signal colours — distinct hues, never decorative */
    --blue:#1d4ed8;--blue-d:#1739a8;--blue-soft:#e6edfd;
    --green:#047857;--green-soft:#d8f3e9;
    --purple:#6d28d9;--purple-soft:#ece4fd;
    --orange:#b45309;--orange-soft:#fdefd6;
    --red:#be123c;--red-soft:#fde4ea;
    --teal:#0f766e;--teal-soft:#d6f2ef;
    --pink:#be185d;--pink-soft:#fce3ee;

    --nav:#141a24;--nav-2:#0d1118;   /* sidebar — graphite, not navy */
    --nav-txt:#9ba5b4;--nav-txt-dim:#646e7d;
    --bg:#f4f5f7;--card:#ffffff;
    /* --muted carries the 10px uppercase labels and column headers. Measured
       at 4.6:1 on white — the smallest type on screen must not sit below AA. */
    --ink:#12161d;--ink-2:#4a5361;--muted:#6b7280;
    --line:#e9ebef;--line-2:#dcdfe5;
    --radius:12px;--radius-sm:9px;
    /* flatter elevation: cards sit on the page, they don't float above it */
    --shadow-sm:0 1px 1px rgba(18,22,29,.04);
    --shadow:0 1px 2px rgba(18,22,29,.05);
    --shadow-hover:0 2px 4px rgba(18,22,29,.07),0 10px 22px -14px rgba(18,22,29,.28);
    --ring:0 0 0 3px rgba(29,78,216,.20);
    --font:'Archivo',-apple-system,system-ui,sans-serif;
    --mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;
  }
