/* ─── Shared Palette ────────────────────────────────────────────────────────
   The CLASSIC palette. Custom properties ONLY -- no rules, so nothing here can
   collide with a consumer's own markup. One definition, three consumers:

     • css/brochure.css                  (the guest landing page)
     • templates/partials/auth_head.php  (the auth cards)
     • app/src/index.css                 (the app, which imports this file)

   The shared vocabulary the two server pages BUILD from these -- wordmark, partner
   credit -- is in pages.css, which the app does not load: it styles the same classes
   from its own CSS, over a different DOM shape.

   ── Themes ──
   This file is classic ONLY, deliberately. Every other theme lives in the app's
   index.css as a [data-theme] block, bundled into the app's own asset, and only the
   app ever stamps data-theme on <html> (see ui/theme.ts). So the server pages have
   no way to be anything but classic, which is the intent: they are the front door,
   and the front door has one look.

   Two rules follow from that, and breaking either one breaks theming app-wide:

   1. ORDER IS LOAD-BEARING. `:root` and `[data-theme="carbon"]` have identical
      specificity — a theme block wins only by appearing later. index.css therefore
      imports this file on its FIRST line. Move that import below the theme blocks
      and every theme silently stops applying.
   2. NAMES MATTER. Theme blocks override --text-base / --accent-base, not --text /
      --accent, because the Soft shade re-derives the latter from the former. The
      classic values below have to be published under the -base names, with the
      derivation alongside them, or every theme's ink and accent break.

   Values are the app's classic theme verbatim. */

:root {
	--bg: #0d1117;
	--panel: #161b22;
	--panel-2: #1c232c;
	--border: #2a313c;
	--text-dim: #8b949e;
	--green: #1faa55;
	--red: #e23b3b;

	/* Text/icon color drawn on top of --accent fills (active buttons). */
	--accent-ink: #1a1300;
	/* Interactive-surface hover (buttons, menu items). */
	--hover: #232c37;

	/* ── Ink ──
	   The theme's raw ink and accent live in the -base pair, and these derive from
	   them, so the app's Soft shade can lower the ink-to-page contrast without a
	   self-reference — a custom property can't be defined in terms of itself.
	   Everything, here and in the app, reads --text and --accent. */
	--text-base: #e6edf3;
	--accent-base: #f2a900;
	--text: var(--text-base);
	--accent: var(--accent-base);

	/* ── Header band ──
	   Classic: a black bar with a white wordmark and the accent flag. The app's
	   [data-theme] blocks override all four; the server pages never do. */
	--header-bg: #000000;
	--header-title: #ffffff;
	--header-flag: var(--accent);
	--header-hover: var(--panel-2);

	/* The proportional stack. The app also defines --font-mono / --font-ui for its
	   Monospace font preference; the server pages only ever use this one. */
	--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial,
		sans-serif;

	/* Native controls and scrollbars. The app's two light themes flip this to `light`
	   in their own blocks, which land after this one. */
	color-scheme: dark;
}
