/* ============================================================================
   RECONNA LIGHT — the same token NAMES trove.css defines, mapped to the palette
   of the page Mike approved (/actor/587212). Link AFTER trove.css:

       <link rel="stylesheet" href="/static/trove.css">
       <link rel="stylesheet" href="/static/reconna-tokens.css">

   WHY AN OVERRIDE AND NOT A REWRITE
   These pages are built on trove.css's CLASS names (.panel, .chip, .card...).
   Pointing them at reconna.css instead would flip the palette and remove every
   class they lay out with — a blank page, not a converted one. Redefining the
   tokens keeps the layout intact and changes only the colors.

   ⚠️ THIS ALONE DOES NOT FINISH A PAGE. Measured 2026-09-07: 1,201 HARDCODED
   hex colors across web/*.html that no variable controls. On a converted page
   they keep their DARK values against a light canvas — dark text boxes, invisible
   borders, white-on-white labels. A page is converted when its own hex count is
   0, not when it links this file. Count with:
       grep -o '#[0-9a-fA-F]\{3,8\}' <page> | wc -l

   Health colors are DARKENED, not reused: #37d39b on white is unreadable. Every
   value below is chosen for contrast on a light surface, because build-for-
   acquisition means a health signal that is legible, not merely present.
   ============================================================================ */
/* SELECTOR IS :root:root ON PURPOSE (2026-09-26). trove.css defines the SAME custom properties
   at :root with the DARK palette (--ink #eef3fb, --sub #c3cede, --muted #8a97a6). Four pages load
   BOTH stylesheets -- dig.html, graph.html, requests.html, today.html -- so at equal specificity
   the winner was whichever loaded last, and on graph.html (City Brief) trove.css won: near-white
   ink on the #f6f4f0 cream surface, i.e. body text, section lead-ins and half the entity links
   rendered invisible. --accent is blue in BOTH files, which is why some links stayed readable and
   made this look like a link-state bug rather than a palette collision.
   Repeating the selector doubles specificity legally and makes the light palette win regardless of
   load order. Pages that load ONLY trove.css are untouched and stay dark. Do not reduce this to a
   single :root -- see tests/test_palette_collision.py. */
:root:root{
  /* surfaces — warm paper, white cards (actor-ws: --paper #f6f4f0, --card #fff) */
  --bg:#f6f4f0; --bg2:#fbfaf8;
  --panel:#ffffff; --panel2:#fbfaf8;
  --sf:#ffffff; --sf2:#fbfaf8;
  --line:#e8e5df; --line2:#eef0f3;
  --soft:rgba(47,86,224,.07); --softline:rgba(47,86,224,.28);
  --chip:#f1efea;

  /* ink — deep navy-black on paper */
  --ink:#1a2230; --sub:#3b4353; --muted:#6b7280; --mut:#6b7280; --faint:#8b93a1;

  /* the one accent — actor-ws cobalt */
  --accent:#2f56e0; --accent2:#2547c2;

  /* health — DARKENED for a light ground. The dark theme's #37d39b / #e6b455
     fail contrast on white; these are the actor-ws values, which pass. */
  --good:#127a3a; --grn:#127a3a; --green:#127a3a;
  --warn:#9c6f1a; --amber:#9c6f1a;
  --bad:#b23b2e;  --red:#b23b2e;
  --teal:#0e8a6e;
  --gold:#9c6f1a;
  --goodbg:rgba(18,122,58,.10);
  --warnbg:rgba(156,111,26,.12);
  --badbg:rgba(178,59,46,.10);

  /* type — Fraunces display + Inter text, as on the approved page */
  --serif:Fraunces,Georgia,"Times New Roman",serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
/* trove.css paints the page dark on <body>; repaint it here or the canvas stays black. */
body{background:var(--bg);color:var(--ink)}
