/* MP SPY ACADEMY — design tokens (premium, clonado da área de membros Safirion). */
:root {
  --bg:        #0a130c;   /* fundo principal verde-preto */
  --bg-2:      #071009;
  --card:      #101d12;   /* cards */
  --card-2:    #152717;
  --panel-a:   #111f13;   /* sidebar top */
  --panel-b:   #0a130c;   /* sidebar bottom */

  --green:     #40e623;   /* verde vívido — status/acesso/CTA */
  --green-2:   #80ff69;   /* verde claro (brilho/gradiente) */
  --green-deep:#2fc714;
  --orange:    #F97316;   /* laranja destaque (CTA principal) */
  --orange-2:  #ff8a3d;

  --text:      #eafbe6;
  --text-2:    #dbf8d6;
  --muted:     #a6c3a1;
  --border:    rgba(64,230,35,0.12);
  --border-2:  rgba(64,230,35,0.22);
  --error:     #ff5a5a;

  --radius:    16px;
  --radius-sm: 11px;
  --maxw:      1240px;
  --font: 'Montserrat', 'Inter', system-ui, -apple-system, sans-serif;
  --font-display: 'Bebas Neue', 'Montserrat', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, Consolas, monospace;
  --font-script: 'Dancing Script', cursive;

  --shadow:    0 18px 50px -24px rgba(0,0,0,.85);
  --glow:      0 0 0 1px var(--border-2), 0 10px 34px -12px rgba(64,230,35,.28);
  --glow-hard: 0 28px 50px rgba(0,0,0,.55), 0 0 0 1px rgba(64,230,35,.35), 0 0 44px rgba(64,230,35,.2);
  --grad-green: linear-gradient(135deg, var(--green), var(--green-deep));
  --grad-green-soft: linear-gradient(90deg, var(--green), var(--green-2));
  --grad-orange: linear-gradient(135deg, var(--orange), var(--orange-2));
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}
h1, h2, h3, h4 { letter-spacing: -0.02em; }
a { color: var(--green); text-decoration: none; }
a:hover { color: var(--green-2); }
::selection { background: rgba(64,230,35,.28); color: #fff; }
[hidden] { display: none !important; }

/* fundo premium: brilhos verdes suaves + grão sutil */
.hacker-bg {
  position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(900px 520px at 88% -8%, rgba(64,230,35,.10), transparent 60%),
    radial-gradient(760px 460px at -8% 108%, rgba(128,255,105,.08), transparent 60%),
    radial-gradient(600px 500px at 50% 120%, rgba(249,115,22,.05), transparent 60%),
    linear-gradient(180deg, var(--bg-2), var(--bg));
}
.hacker-bg::before {
  content: ""; position: absolute; inset: 0; opacity: .5;
  background-image:
    linear-gradient(rgba(64,230,35,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(64,230,35,.035) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: radial-gradient(circle at 50% 25%, #000 55%, transparent 100%);
}

/* scrollbar */
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { background: rgba(64,230,35,.22); border-radius: 8px; border: 2px solid transparent; background-clip: content-box; }
*::-webkit-scrollbar-track { background: transparent; }

/* ===== animações (leves, honrando o PDF) ===== */
@keyframes mpPulse { 0%,100%{ box-shadow:0 0 8px var(--green); opacity:1 } 50%{ box-shadow:0 0 16px var(--green-2); opacity:.7 } }
@keyframes mpSheen { 0%{ transform:translateX(-130%) } 60%,100%{ transform:translateX(130%) } }
@keyframes mpFxIn { from{ opacity:0; transform:translateY(12px) } to{ opacity:1; transform:none } }
@keyframes mpSpin { to{ transform:rotate(360deg) } }
@keyframes mpRadar { 0%{ transform:scale(.6); opacity:.7 } 100%{ transform:scale(2.4); opacity:0 } }
