/*
 Theme Name: TechSAAi Cyberpunk Child
 Theme URI: https://techsaai.com
 Author: TechSAAi
 Description: Cyberpunk/CRT green child theme for Astra with neon glow, scanlines, flicker, and terminal UI.
 Version: 1.2.0
 Template: astra
*/
/* ... CSS omitted here for brevity ... */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;700&family=Orbitron:wght@600;800&display=swap');

/* ---------- Variables ---------- */

:root{
  --bg:#000000; --panel:#0d0d0d; --fg:#c8ffd9;
  --green:#00ff66; --green-d:#00cc44;
  --cyan:#00ffff; --magenta:#ff00cc;
  --border: rgba(0,255,102,.25);
  --glow: 0 0 6px var(--green), 0 0 18px rgba(0,255,102,.5);
}

/* ---------- Base ---------- */
html, body{ background:var(--bg); color:var(--fg);
  font-family:'IBM Plex Mono', ui-monospace, Menlo, Consolas, monospace; }
a{ color:var(--cyan); text-decoration:none; text-shadow:0 0 6px rgba(0,255,255,.6); }
a:hover,.menu-item a:hover{ color:var(--green); text-shadow:0 0 8px rgba(0,255,102,.9); }
.site-header,.ast-above-header,.main-header-bar{
  background:var(--panel)!important; border-bottom:1px solid var(--border);
  box-shadow:0 0 18px rgba(0,255,102,.1);
}
.ast-site-identity .site-title a{ color:var(--green)!important; text-shadow:var(--glow); letter-spacing:.5px; }
.ast-site-identity .site-description{ color:#99ffcc; opacity:.8; }

/* ---------- Terminal Cards ---------- */
.terminal,.card-terminal{
  background:linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.85));
  border:1px solid var(--border); border-radius:10px; padding:1.25rem 1.5rem;
  box-shadow:0 0 35px rgba(0,255,102,.08); position:relative;
}
.terminal::before{ content:'● ● ●'; position:absolute; top:.6rem; left:.8rem;
  letter-spacing:.35rem; color:var(--green-d); opacity:.65; font-weight:700; }

/* ---------- Buttons ---------- */
.btn-neon,.wp-block-button__link{
  background:transparent; border:1px solid var(--green); color:var(--green);
  padding:.65rem 1.1rem; border-radius:8px; text-transform:uppercase; letter-spacing:.08em; box-shadow:var(--glow);
}
.btn-neon:hover,.wp-block-button__link:hover{
  background:rgba(0,255,102,.08); border-color:var(--cyan); color:var(--cyan);
  box-shadow:0 0 8px var(--cyan),0 0 18px rgba(0,255,255,.6);
}

/* ---------- Hero ---------- */
.hero-crt{ position:relative; padding:12vh 4vw;
  background:radial-gradient(ellipse at center,rgba(0,255,102,.12) 0%,rgba(0,0,0,0) 60%),var(--bg);
  border-bottom:1px solid var(--border); }
.hero-title{ font-family:'Orbitron',sans-serif; font-weight:800; font-size:clamp(40px,7vw,90px);
  color:var(--green); text-shadow:var(--glow); margin:0 0 .25em 0; }
.hero-sub{ font-size:clamp(16px,2vw,22px); color:#a7ffda; opacity:.9; }

/* ---------- Scanlines + Flicker ---------- */
body.scanlines::after{ content:''; pointer-events:none; position:fixed; inset:0;
  background:repeating-linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,0) 2px,rgba(0,0,0,.15) 3px,rgba(0,0,0,.15) 4px);
  opacity:.25; mix-blend-mode:multiply; z-index:9999; }
.crt-flicker{ animation:crt 4s infinite; }
@keyframes crt{ 0%,100%{filter:none;} 50%{filter:brightness(1.08) contrast(1.03) saturate(1.1);} }

/* ---------- Type Cursor ---------- */
.cursor::after{ content:'▊'; margin-left:.2rem; animation:blink 1s steps(1) infinite;
  color:var(--cyan); text-shadow:0 0 6px rgba(0,255,255,.6); }
@keyframes blink{ 50%{ opacity:0; } }

/* ---------- Code Rain (optional) ---------- */
.code-rain{ position:relative; overflow:hidden; }
.code-rain::before{
  content:'0101011001010010010101000011001001101111';
  position:absolute; left:0; right:0; top:-100%; white-space:nowrap;
  color:rgba(0,255,102,.3); text-shadow:0 0 10px rgba(0,255,102,.4);
  animation:rain 6s linear infinite; font-weight:700;
}
@keyframes rain{ to{ transform:translateY(200%);} }

/* ---------- Accessibility ---------- */
@media (prefers-reduced-motion:reduce){ *{ animation:none!important; transition:none!important; } }
