/* theme.css — shared palette
 *
 * Loaded after style.css on every page. It only redefines variables that
 * style.css already uses, so twenty pages re-theme without any of them
 * being rewritten — and if this file is removed, the old look returns
 * exactly as it was.
 *
 * The point is continuity: clicking a write-up from the homepage should
 * not feel like landing on a different site.
 */

:root {
  /* Slightly deeper than before, so the glow below has room to read. */
  --bg:          #05080f;
  --bg-soft:     #080d18;
  --surface:     #0b1220;
  --surface-2:   #101a2c;

  /* Cream rather than pure white: on near-black, #fff glares. */
  --fg:          #f2ece0;
  --fg-soft:     #aebdd0;
  --muted:       #61738f;

  --line:        #1a2440;
  --line-soft:   #131c30;

  /* Spring green. Deliberately not the neon used by the site this drew
     ideas from — deeper, and it holds up beside the red of a CVSS
     severity badge instead of competing with it. */
  --accent:       #3ddc84;
  --accent-soft:  rgba(61, 220, 132, 0.12);
  --accent-hover: #7df0b0;
}

/* The name gradient was cyan → magenta; two accents pulling in opposite
   directions was most of what made the old palette feel unsettled. */
.hero-band h1 .grad,
.grad {
  background: linear-gradient(100deg, #3ddc84 5%, #7df0b0 95%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
}

/* Same texture as the homepage, so the pages feel like one site. */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 60% 45% at 20% 0%, rgba(61, 220, 132, .07), transparent 60%),
    radial-gradient(ellipse 45% 40% at 88% 10%, rgba(125, 240, 176, .04), transparent 62%);
}

/* Keep content above the wash. */
body > *:not(script):not(style) { position: relative; z-index: 1; }
