/* =========================================================================
   Nova theme — cyberpunk neon terminal. Scanlines, glow, hard edges.
   ========================================================================= */
:root {
  --color-bg: #05060a;
  --color-surface: #0c0e16;
  --color-surface-2: #11141f;
  --color-text: #e8ffe8;
  --color-muted: #7f8aa3;
  --color-primary: #39ff14;
  --color-primary-contrast: #05060a;
  --color-accent: #ff2e97;
  --color-border: rgba(57, 255, 20, 0.18);
  --color-success: #39ff14;

  --font-display: 'Orbitron', ui-sans-serif, system-ui, sans-serif;
  --font-body: 'Rajdhani', ui-sans-serif, system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
  --fw-body: 500;
  --fw-display: 800;

  --radius-sm: 2px;
  --radius: 4px;
  --radius-lg: 6px;
  --radius-pill: 4px; /* nothing is round in Nova */
  --shadow: 0 0 0 1px rgba(57, 255, 20, 0.25), 0 24px 60px -28px rgba(57, 255, 20, 0.35);
}

body {
  background:
    repeating-linear-gradient(0deg, transparent 0 2px, rgba(57, 255, 20, 0.025) 2px 3px),
    radial-gradient(70% 50% at 50% -10%, rgba(57, 255, 20, 0.1), transparent 60%),
    var(--color-bg);
  letter-spacing: 0.01em;
}
h1, h2, h3, h4 { text-transform: uppercase; letter-spacing: 0.04em; }

.bx-nav__brandname,
.bx-hero__title,
.bx-section__title { text-shadow: 0 0 18px rgba(57, 255, 20, 0.45); }

.bx-hero__eyebrow {
  font-family: var(--font-mono); text-transform: uppercase;
  border-color: var(--color-primary); color: var(--color-primary);
  background: rgba(57, 255, 20, 0.06);
}
.bx-hero__emphasis {
  color: var(--color-accent); -webkit-text-fill-color: var(--color-accent);
  background: none; text-shadow: 0 0 24px rgba(255, 46, 151, 0.6);
}
.bx-hero__grid { opacity: 0.35; }
.bx-hero__glow--1 { background: #39ff14; opacity: 0.18; }
.bx-hero__glow--2 { background: #ff2e97; opacity: 0.18; }

/* Hard-edged neon cards with corner ticks. */
.bx-feature,
.bx-step,
.bx-plan,
.bx-faq__item,
.bx-hero__activation,
.bx-feed__item,
.bx-modal__dialog {
  border: 1px solid var(--color-border);
  background:
    linear-gradient(var(--color-surface), var(--color-surface)) padding-box,
    linear-gradient(135deg, rgba(57, 255, 20, 0.4), rgba(255, 46, 151, 0.25)) border-box;
}
.bx-feature:hover { border-color: var(--color-accent); box-shadow: 0 0 30px -6px rgba(255, 46, 151, 0.5); transform: translateY(-4px); }
.bx-feature__icon { border: 1px solid var(--color-primary); background: rgba(57, 255, 20, 0.08); border-radius: 2px; }
.bx-feature__title { color: var(--color-primary); }

.bx-btn { text-transform: uppercase; letter-spacing: 0.08em; font-family: var(--font-display); font-size: 13px; }
.bx-btn--primary { background: var(--color-primary); color: #05060a; box-shadow: 0 0 24px -4px rgba(57, 255, 20, 0.7); }
.bx-btn--primary:hover { background: #5bff45; box-shadow: 0 0 36px -2px rgba(57, 255, 20, 0.9); }
.bx-btn--ghost { border-color: var(--color-accent); color: var(--color-accent); }
.bx-btn--ghost:hover { color: #05060a; background: var(--color-accent); border-color: var(--color-accent); }

.bx-bookmarklet { background: var(--color-primary); color: #05060a; border-radius: 2px; box-shadow: 0 0 30px -4px rgba(57, 255, 20, 0.8); }
.bx-feed__item { font-family: var(--font-mono); color: var(--color-primary); text-shadow: 0 0 10px rgba(57, 255, 20, 0.4); }
.bx-step__num { background: var(--color-primary); color: #05060a; border-radius: 2px; box-shadow: 0 0 22px -4px rgba(57, 255, 20, 0.7); }
.bx-plan--featured { border-color: var(--color-accent); box-shadow: 0 0 50px -12px rgba(255, 46, 151, 0.6); }
.bx-plan__badge { background: var(--color-accent); color: #05060a; border-radius: 2px; }
.bx-plan__amount { color: var(--color-primary); text-shadow: 0 0 18px rgba(57, 255, 20, 0.5); }
.bx-faq__icon { color: var(--color-accent); }
.bx-cta__inner { border-color: var(--color-primary); background: linear-gradient(135deg, rgba(57, 255, 20, 0.08), rgba(255, 46, 151, 0.06)); }

/* ---- Terminal (tool.html) ----------------------------------------------- */
/* Hard edges, neon gradient borders and monospace chrome, like the site. */
.bx-tool__console,
.bx-tool__gatecard,
.bx-tool__card,
.bx-tool__metric {
  border: 1px solid var(--color-border);
  background:
    linear-gradient(var(--color-surface), var(--color-surface)) padding-box,
    linear-gradient(135deg, rgba(57, 255, 20, 0.4), rgba(255, 46, 151, 0.25)) border-box;
}
.bx-toolbar { background: rgba(5, 6, 10, 0.9); border-bottom: 1px solid var(--color-primary); }
.bx-toolbar__suffix,
.bx-tool__eyebrow,
.bx-tool__label,
.bx-tool__metrickey,
.bx-tool__rowkey { font-family: var(--font-mono); }
.bx-tool__title { text-shadow: 0 0 18px rgba(57, 255, 20, 0.45); }
.bx-tool__tab { font-family: var(--font-display); text-transform: uppercase; letter-spacing: 0.08em; font-size: 12px; }
.bx-tool__tab.is-active { background: rgba(57, 255, 20, 0.12); border-color: var(--color-primary); color: var(--color-primary); text-shadow: 0 0 12px rgba(57, 255, 20, 0.6); }
.bx-tool__gatebadge { border-color: var(--color-accent); color: var(--color-accent); background: rgba(255, 46, 151, 0.08); }
.bx-tool__gatenum { background: var(--color-primary); color: #05060a; border-radius: 2px; }
.bx-tool__metricval { color: var(--color-primary); text-shadow: 0 0 14px rgba(57, 255, 20, 0.4); }
.bx-tool__input { background: #05060a; font-family: var(--font-mono); }
.bx-tool__verdict--safe { text-shadow: 0 0 14px rgba(57, 255, 20, 0.5); }
.bx-tool__toggle.is-on { box-shadow: 0 0 26px -4px rgba(57, 255, 20, 0.8); }

/* Walkthrough video — hard edges, neon play button. */
.bx-video__frame { border-color: var(--color-primary); }
.bx-video__frame:hover { box-shadow: 0 0 36px -8px rgba(57, 255, 20, 0.55); }
.bx-video__play { border-radius: 2px; box-shadow: 0 0 30px -4px rgba(57, 255, 20, 0.85); }
.bx-video__eyebrow { font-family: var(--font-mono); }
