/* ==== BurntAI CRT / Wasteland Terminal Theme ===========================
   Activates when <body> has .crt-theme (you can stack it with .dark-theme)
   ===================================================================== */

/* Global CRT look */
.crt-theme body {
  /* Deep black, terminal-green text */
  background: #000 !important;
  color: #b7ffcc !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, "Liberation Mono", "Courier New", monospace;
  text-shadow: 0 0 4px rgba(39, 255, 167, 0.35);
}

/* Subtle scanlines and bloom via ::after so it won't fight your dark.css ::before */
.crt-theme body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    /* scanlines */
    repeating-linear-gradient(
      0deg,
      rgba(0,255,170,0.06) 0px,
      rgba(0,255,170,0.06) 2px,
      transparent 3px,
      transparent 4px
    ),
    /* vignette */
    radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,0.35) 100%);
  mix-blend-mode: screen;
  z-index: 9998;
}

/* Slight jitter flicker (respects reduced motion) */
@keyframes crt-flicker {
  0%, 100% { opacity: 1 }
  50% { opacity: .98 }
}
@media (prefers-reduced-motion: no-preference) {
  .crt-theme body { animation: crt-flicker 3.5s infinite; }
}

/* Accents (reuse your palette but convert to phosphor glow) */
:root {
  --crt-green: #2bffb4;
  --crt-edge: rgba(43,255,180,0.35);
  --crt-dim: #0a0f0d;
}

/* Header / nav */
.crt-theme header {
  background: rgba(0, 20, 15, 0.8) !important;
  border-bottom: 1px solid var(--crt-edge) !important;
  box-shadow: 0 0 22px rgba(0,255,170,.12) inset;
}
.crt-theme .nav-links a,
.crt-theme .logo {
  color: #b7ffcc !important;
  text-shadow: 0 0 6px rgba(0,255,170,.35);
}

/* Containers & sections */
.crt-theme .main-container {
  background: #060a08 !important;
  border-top: 1px solid var(--crt-edge);
  box-shadow: 0 -10px 40px rgba(0,255,170,.08) inset;
}
.crt-theme .platform-section,
.crt-theme .hero {
  background: linear-gradient(180deg, rgba(0,10,8,.3), rgba(0,10,8,.9)) !important;
}

/* Cards (news, features, platform) */
.crt-theme .news-card,
.crt-theme .feature-card,
.crt-theme .platform-card,
.crt-theme .ai-quote-container,
.crt-theme .ais-panel {
  background: linear-gradient(180deg, rgba(0,12,10,.85), rgba(0,20,16,.92)) !important;
  color: #c6ffdb !important;
  border: 1px solid var(--crt-edge) !important;
  box-shadow:
    0 0 0 1px rgba(0,255,170,.08) inset,
    0 8px 28px rgba(0, 0, 0, .6);
}

/* Card content text */
.crt-theme .news-title a,
.crt-theme .feature-title,
.crt-theme .platform-name {
  color: #e7ffef !important;
  text-shadow: 0 0 6px rgba(0,255,170,.3);
}
.crt-theme .news-desc,
.crt-theme .feature-desc,
.crt-theme .platform-desc,
.crt-theme .news-provider,
.crt-theme .news-date,
.crt-theme .news-source {
  color: #b8ffcf !important;
  opacity: .95;
}

/* Hero subtitle readable */
.crt-theme .hero-subtitle {
  color: #dcffe9 !important;
  text-shadow: 0 1px 6px rgba(0,255,170,.35);
}

/* CTA and buttons */
.crt-theme .cta-button,
.crt-theme .ais-btn,
.crt-theme .ais-feature-btn {
  background: linear-gradient(135deg, #0b201a, #124238) !important;
  color: #d7ffea !important;
  border: 1px solid var(--crt-edge) !important;
  box-shadow: 0 0 18px rgba(0,255,170,.18), inset 0 0 20px rgba(0,255,170,.06);
}
.crt-theme .cta-button:hover,
.crt-theme .ais-btn:hover,
.crt-theme .ais-feature-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 22px rgba(0,255,170,.28), inset 0 0 24px rgba(0,255,170,.08);
  border-color: #5affc9 !important;
}

/* Inputs */
.crt-theme .ais-input input {
  background: #050c0a !important;
  color: #dbffef !important;
  border: 1px solid rgba(0,255,170,.25) !important;
  box-shadow: 0 0 16px rgba(0,255,170,.08) inset;
}
.crt-theme .ais-input input:focus {
  border-color: #5affc9 !important;
  box-shadow: 0 0 0 6px rgba(0,255,170,.12) !important;
}

/* AIS canvas & controls */
.crt-theme #ais-canvas {
  background: #020804 !important;
  outline: 1px solid rgba(0,255,170,.2);
}
.crt-theme .ais-control-btn {
  background: rgba(0, 15, 12, 0.7) !important;
  border: 1px solid rgba(0,255,170,.25) !important;
  color: #c9ffe1 !important;
}

/* Mood chips */
.crt-theme .ais-chip {
  background: #091510 !important;
  color: #c8ffe0 !important;
  border: 1px solid rgba(0,255,170,.25) !important;
}

/* Sentiment bar */
.crt-theme .sentiment-bar {
  background: #07110e !important;
  border: 1px solid rgba(0,255,170,.25) !important;
}
.crt-theme .sentiment-fill {
  background: linear-gradient(90deg, #00e887, #b5ff00) !important;
}

/* Footer */
.crt-theme footer {
  background: #030907 !important;
  color: #ceffe4 !important;
  border-top: 1px solid var(--crt-edge);
}

/* Hover language (keep lift, change accent to phosphor) */
.crt-theme .news-card,
.crt-theme .feature-card,
.crt-theme .platform-card,
.crt-theme .ais-panel,
.crt-theme .ais-visual {
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .35s ease, color .35s ease;
}
.crt-theme .news-card:hover,
.crt-theme .feature-card:hover,
.crt-theme .platform-card:hover,
.crt-theme .ais-panel:hover,
.crt-theme .ais-visual:hover {
  transform: translateY(-3px);
  border-color: #5affc9 !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .65), 0 0 24px rgba(0,255,170,.2);
}

/* Reduce motion respect */
@media (prefers-reduced-motion: reduce) {
  .crt-theme body { animation: none !important; }
}
