/* tribeNews.org design tokens — hybrid build (AIStudio v3 × Newsblock × tribeCast canon)
   Canon: brand orange #FF7A29 (locked); "tribe" prefix always orange, product name always warm white.
   Status semantics: green = at-rest/safe, orange = brand/caution, red = BREAKING/fault only. */
:root {
  --bg: #000000;
  --panel: #0B0B0C;
  --panel-2: #101012;
  --panel-deep: #060607;

  --brand: #FF7A29;
  --brand-ink: #160a03;
  --warm-white: #F0EBE3;

  --hairline: rgba(255, 255, 255, .10);
  --hairline-soft: rgba(255, 255, 255, .06);

  --led-green: #10b981;
  --led-red: #ef4444;
  --led-rest: var(--led-green); /* at-rest status is ALWAYS green; red = fault/BREAKING only */

  --text: #f4f4f4;
  --text-dim: #b3b3b3;
  --text-faint: #7a7a7a;

  --font-display: "Plus Jakarta Sans", Geist, system-ui, sans-serif;
  --font-sans: Geist, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  --radius-card: 16px;
  --header-h: 56px;

  /* per-tribe override, set from TRIBES config at runtime */
  --accent: var(--brand);
  --accent-ink: var(--brand-ink);

  /* highlighter H1 v2 — deliberate evolution, new canon (supersedes production pixel-match) */
  --tn-hl-line-height: 1.55;   /* desktop: each line reads as a distinct bar; 1.4 under 768px */
  --tn-hl-padding: 2px 10px;

  /* per-tribe highlighter texture; flat accent when unset. Apple ships phosphor-scan-v1. */
  --tribe-texture: none;

  --beam: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, .06) 35%, color-mix(in srgb, var(--accent) 58%, transparent) 50%, rgba(255, 255, 255, .09) 65%, transparent 100%);
}
