/*
 * Operator Portal — Tier 1: Primitive design tokens
 * Story 20.1 — 3-tier design-token theming system (ADR-007 constraint 8)
 *
 * Raw palette values; theme-independent.
 * Hex values sampled from docs/b3g-logo.png per epic-20 artifact §"Design tokens".
 * Components NEVER reference primitives directly — they use semantic tokens.
 */

:root {
  /* ── B3G brand palette ─────────────────────────────────────────────────── */
  --b3g-blue-300: #3FA7DD;
  --b3g-blue-500: #1E84C5;
  --b3g-blue-700: #1B6FA8;
  --b3g-green-500: #6FB342;
  --b3g-orange-500: #F39A1E;
  --b3g-white: #FFFFFF;
  --b3g-ink-900: #16212B;
  --b3g-gray-100: #F6F7F9;

  /* ── Shared status primitives ──────────────────────────────────────────── */
  --primitive-danger: #C0392B;
  --primitive-success: var(--b3g-green-500);
  --primitive-warning: var(--b3g-orange-500);
  --primitive-info: var(--b3g-blue-500);

  /* ── EPIC-38 modernized palette (from _epic38-design-reference.html :root) ──
   * Raw values ONLY (theme-independent); the semantic layer aliases these and
   * adds the dark + per-tenant overrides. Components reference the semantic
   * tokens (--brand-*, --ink*, --surface*, …), never these primitives directly.
   */
  /* Brand accent ramp (B3G blue) — the per-tenant themes swap the semantic --brand-*. */
  --p-brand-050: #EAF4FB;
  --p-brand-300: #3FA7DD;
  --p-brand-500: #1E84C5;
  --p-brand-600: #1B6FA8;
  --p-brand-700: #175E8F;
  /* 38.1-fix: per-tenant accent ramps moved OUT to static/css/tenant/<slug>/theme.css
   * (self-hosted per-tenant stylesheet). The shared root stays B3G-default only. */
  /* Semantic status (separate from the brand accent). */
  --p-ok: #5C9E33; --p-ok-bg: #EAF4E1; --p-warn: #D9820A; --p-warn-bg: #FCF0DA; --p-crit: #C0392B; --p-crit-bg: #FBE7E4;
  /* Cool neutrals (blue-biased — chosen, not defaulted) — light theme. */
  --p-ink: #16212B; --p-ink-2: #48586A; --p-ink-3: #7C8B9A;
  --p-line: #E4E9F0; --p-line-2: #EEF2F7;
  --p-surface: #FFFFFF; --p-surface-2: #F5F8FC; --p-surface-3: #EDF2F8; --p-chrome: #101B27;
  /* Elevation. */
  --p-shadow-sm: 0 1px 2px rgba(16,27,39,.06),0 1px 3px rgba(16,27,39,.08);
  --p-shadow-md: 0 4px 12px rgba(16,27,39,.08),0 2px 4px rgba(16,27,39,.05);
  --p-shadow-lg: 0 12px 32px rgba(16,27,39,.14);
  /* Dark-theme neutral overrides (redefined in the semantic dark block). */
  --p-ink-d: #EAF1F8; --p-ink-2-d: #A9B8C6; --p-ink-3-d: #76899A;
  --p-line-d: #26333F; --p-line-2-d: #1E2A35;
  --p-surface-d: #16212B; --p-surface-2-d: #0E1620; --p-surface-3-d: #1E2B37; --p-chrome-d: #0A121B;
  --p-brand-050-d: #132B3B;
  --p-ok-bg-d: #16301C; --p-warn-bg-d: #33260F; --p-crit-bg-d: #341917;
  --p-shadow-sm-d: 0 1px 2px rgba(0,0,0,.4); --p-shadow-md-d: 0 4px 12px rgba(0,0,0,.45); --p-shadow-lg-d: 0 12px 32px rgba(0,0,0,.55);
}
