:root{
  /* Paleta base (después por empresa) */
  --p:#00f3ff;      /* primary neon cyan */
  --s:#ff2bd6;      /* secondary neon magenta */
  --a:#7c5cff;      /* accent violet */
  --g:#00ff85;      /* glow green */

  --bg0:#03020a;
  --bg1:#07051a;

  --text:#eef0ff;
  --muted:#b6b9d6;

  /* Glass */
  --glass: rgba(255,255,255,.08);
  --glass2: rgba(255,255,255,.04);
  --stroke: rgba(255,255,255,.18);
  --stroke2: rgba(255,255,255,.10);

  --shadow: 0 24px 80px rgba(0,0,0,.55);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Rajdhani",system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--text);
  background:
    radial-gradient(1200px 800px at 10% 0%, color-mix(in srgb, var(--s) 22%, transparent), transparent 58%),
    radial-gradient(1100px 750px at 90% 10%, color-mix(in srgb, var(--p) 22%, transparent), transparent 55%),
    radial-gradient(900px 700px at 50% 110%, color-mix(in srgb, var(--a) 20%, transparent), transparent 55%),
    linear-gradient(180deg, var(--bg1), var(--bg0));
  overflow-x:hidden;
}

/* Fondo HUD / grid con brillo */
.bg{
  position:fixed; inset:0; pointer-events:none; z-index:-1;
}
.bg::before{
  content:"";
  position:absolute; inset:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 44px 44px;
  opacity:.35;
  mask-image: radial-gradient(circle at 50% 18%, rgba(0,0,0,1), rgba(0,0,0,.25) 55%, transparent 75%);
}
.bg::after{
  content:"";
  position:absolute; inset:-25%;
  background:
    radial-gradient(circle at 25% 15%, color-mix(in srgb, var(--p) 14%, transparent), transparent 45%),
    radial-gradient(circle at 75% 25%, color-mix(in srgb, var(--s) 14%, transparent), transparent 50%),
    radial-gradient(circle at 50% 85%, color-mix(in srgb, var(--a) 12%, transparent), transparent 55%);
  filter: blur(30px);
  opacity: .9;
}

/* Scanline suave */
.scan{
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  background: repeating-linear-gradient(
    to bottom,
    rgba(255,255,255,.02) 0px,
    rgba(255,255,255,.02) 1px,
    transparent 2px,
    transparent 6px
  );
  opacity:.12;
}
