/* ============================================================
   Sputnik X — Platform Shell Design Tokens (--ps-*)
   ------------------------------------------------------------
   Canonical design-token layer for the SHARED OPERATOR SHELL
   (platform.html, memory-center, content-center, data-chat,
   connectome, analytics).

   Prefix --ps-* is intentionally distinct from existing token
   namespaces so it never collides:
     --cc-*        (content-center)
     --dc-*        (data-chat)
     --color-mc-*  (memory-center)
     --bg / --ta-* (legacy admin / platform)

   Palette is lifted from the memory-center consoles so the
   operator surface reads as one product:
     primary cyan        #8aebff  (--color-mc-primary)
     primary cyan (dim)  #22d3ee  (--color-mc-primary-container)
     bg / surface-lowest #0a0e1a  (--color-mc-surface-lowest)
     surface             #1a2025  (--color-mc-surface)
     on-surface text     #dde3ea  (--color-mc-on-surface)
     on-surface dim      #bbc9cd  (--color-mc-on-surface-variant)

   Served self-hosted under strict CSP (script-src 'self', no CDN).
   This file is tokens ONLY — components live in ps-components.css,
   shell layout in platform-shell.css.
   ============================================================ */

:root {
  /* ── Accent / brand ───────────────────────────────────────── */
  --ps-primary: #8aebff;          /* operator-surface accent (cyan) */
  --ps-primary-dim: #22d3ee;      /* hovered / container / deeper cyan */

  /* ── Surfaces ─────────────────────────────────────────────── */
  --ps-bg: #0a0e1a;               /* page background (surface-lowest) */
  --ps-surface: #141a26;          /* base panel surface */
  --ps-surface-2: #1a2025;        /* raised panel / nested surface */

  /* ── Text ─────────────────────────────────────────────────── */
  --ps-text: #dde3ea;             /* primary on-surface text */
  --ps-text-dim: #bbc9cd;         /* secondary / muted text */

  /* ── Borders ──────────────────────────────────────────────── */
  --ps-border: rgba(138, 235, 255, 0.14); /* hairline, cyan-tinted */

  /* ── Radius ───────────────────────────────────────────────── */
  --ps-radius: 10px;
  --ps-radius-sm: 6px;

  /* ── Spacing scale (4 / 8 / 12 / 16 / 24 / 40) ────────────── */
  --ps-s1: 4px;
  --ps-s2: 8px;
  --ps-s3: 12px;
  --ps-s4: 16px;
  --ps-s5: 24px;
  --ps-s6: 40px;

  /* ── Shadows (dark UI — deep, soft) ───────────────────────── */
  --ps-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.45);
  --ps-shadow-md: 0 6px 18px rgba(0, 0, 0, 0.5);
  --ps-shadow-lg: 0 18px 48px rgba(0, 0, 0, 0.6);

  /* ── Typography ───────────────────────────────────────────── */
  --ps-font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto,
    Helvetica, Arial, sans-serif;
  --ps-font-mono: 'JetBrains Mono', 'SFMono-Regular', ui-monospace,
    'Cascadia Code', Menlo, Consolas, 'Liberation Mono', monospace;
}

/* ============================================================
   Tenant brand overrides
   ------------------------------------------------------------
   Defined here so tenant-scoped surfaces can opt in by adding
   the class to <html>/:root. NOT applied by operator pages —
   the shared operator shell always uses the cyan accent.
   ============================================================ */
:root.ps-brand-siltums {
  --ps-primary: #2D6A4F;          /* siltums green */
}

/* A woodpoint variant was dropped here on 2026-08-07: the name was detached from
 * the tenant on 2026-07-08 (→ numerus²) and the class had zero consumers, so it
 * was a retired brand string re-entering the canonical token file. Add the tenant
 * back under its current name if and when an operator page actually needs it. */
