/* KineFractal terminal theme — shared web assets for the FearLab surfaces.
   Canonical tokens (mirror of kinefractal.com v6 index.css; keep fearlab/kf_theme.py in sync):
     bg        hsl(0 0% 3%)     void black
     card      hsl(0 0% 5%)     gunmetal
     border    hsl(0 0% 15%)    dark steel
     fg        hsl(0 0% 90%)
     muted     hsl(0 0% 50%)
     primary   #00ff88          emerald
     accent    hsl(35 100% 50%) electric amber (warnings/armed)
     destruct  hsl(0 100% 40%)  red (halt/live-loss)
     radius    0                brutalist
   Lab-tuned knobs (2026-07-04): glow .25 · grid-op .04 · grid 80px · pulse 1s · orbitron on · no scanlines.
   Fonts are variable woff2 (latin subset) served relative to THIS file. */

@font-face {
  font-family: "JetBrains Mono";
  src: url("fonts/jetbrainsmono.woff2") format("woff2");
  font-weight: 100 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Space Grotesk";
  src: url("fonts/spacegrotesk.woff2") format("woff2");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Orbitron";
  src: url("fonts/orbitron.woff2") format("woff2");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}

/* shared chrome pieces (consumers opt in by class) */
.kf-wordmark {
  font-family: Orbitron, "Space Grotesk", "Segoe UI", sans-serif;
  font-weight: 700;
  letter-spacing: .08em;
  color: #00ff88;
  text-shadow: 0 0 5px rgba(0, 255, 136, .25), 0 0 10px rgba(0, 255, 136, .15);
  animation: kf-glow 1s ease-in-out infinite;
}
@keyframes kf-glow {
  0%, 100% { opacity: .85; }
  50% { opacity: 1; }
}
@keyframes kf-throb-amber {
  0%, 100% { background: rgba(255, 149, 0, .10); box-shadow: 0 0 0 0 rgba(255, 149, 0, .4); }
  50% { background: rgba(255, 149, 0, .22); box-shadow: 0 0 5px 1px rgba(255, 149, 0, .4); }
}
