/* ======================================================================
   EXPLOIT NATION :: skin for Material for MkDocs
   Identity: toxic-green terminal on black + matrix rain + your logo.
   Typography kept at the STANDARD Material/hacktricks scale (restrained).
   ====================================================================== */

:root{
  --en-acid:#39ff5e; --en-acid-hot:#c8ffd6; --en-acid-deep:#0aa63a; --en-acid-dim:#1f7a3a;
  --en-bg:#050807; --en-panel:#0a0f0c; --en-line:#17231c;
  --en-ink:#d5ded7; --en-dim:#8b978f; --en-faint:#5a655e;
  --en-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --en-glow:0 0 6px rgba(57,255,94,.5),0 0 16px rgba(57,255,94,.18);
}

[data-md-color-scheme="slate"]{
  --md-default-bg-color: transparent;
  --md-default-fg-color: var(--en-ink);
  --md-default-fg-color--light: var(--en-dim);
  --md-default-fg-color--lighter: var(--en-faint);
  --md-default-fg-color--lightest: #101a14;
  --md-primary-fg-color: #050807;
  --md-primary-bg-color: var(--en-ink);
  --md-accent-fg-color: var(--en-acid);
  --md-typeset-a-color: var(--en-acid);
  --md-code-bg-color: #070b09;
  --md-code-fg-color: var(--en-ink);
}

/* ground + matrix */
html{ background:var(--en-bg); }
body{ background:transparent; }
#en-matrix{ position:fixed; inset:0; width:100%; height:100%; z-index:0; opacity:.28; pointer-events:none; }
.md-main, .md-container, .md-grid{ background:transparent; }
.md-content, .md-sidebar{ position:relative; z-index:1; }
.md-sidebar{ background:rgba(8,12,10,.66); }
.md-content{ background:rgba(5,8,7,.60); }
::selection{ background:rgba(57,255,94,.28); color:#fff; }

/* ---- top bar: sticky, single line, standard height ---- */
.md-header{ position:-webkit-sticky; position:sticky; top:0; z-index:10;
  background:rgba(5,8,7,.94); backdrop-filter:blur(4px); border-bottom:1px solid var(--en-line); box-shadow:none; }
.md-header__button.md-logo img{ height:2.75rem; width:auto; filter:drop-shadow(0 0 6px rgba(57,255,94,.45)); }
.md-header__title{ font-family:var(--en-mono); font-weight:700; font-size:.95rem; }
.md-header__title .md-ellipsis{ color:var(--en-acid); text-shadow:var(--en-glow); }
.md-header__source{ color:var(--en-dim); }
.md-source__facts{ display:none; }

/* ---- left nav (standard size) ---- */
.md-nav{ font-family:var(--en-mono); font-size:.68rem; }
.md-nav__title{ font-family:var(--en-mono); font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color:var(--en-faint); }
.md-sidebar--primary .md-nav--primary > .md-nav__title{ display:none; }   /* kill top dead-space */
.md-sidebar{ padding-top:.4rem; }
.md-nav__link{ color:var(--en-dim); }
.md-nav__link:hover{ color:var(--en-ink); }
.md-nav__link--active, .md-nav__item--active > .md-nav__link{ color:var(--en-acid-hot) !important; }
.md-nav--primary .md-nav__item--active > .md-nav__link{ text-shadow:0 0 6px rgba(57,255,94,.35); }

/* ---- search ---- */
.md-search__form{ background:#070b09; border:1px solid var(--en-line); border-radius:6px; max-width:11rem; }
.md-search__input{ font-family:var(--en-mono); }
.md-search__input::placeholder{ color:var(--en-faint); }
@media screen and (min-width:60em){ .md-search{ flex-grow:0; } }

/* ---- typography: STANDARD scale ---- */
.md-typeset{ font-size:.8rem; }
.md-typeset h1{ font-family:var(--en-mono); font-weight:700; font-size:1.55rem; line-height:1.2; letter-spacing:0; color:var(--en-ink); margin-bottom:.6rem; }
.md-typeset h2{ font-family:var(--en-mono); font-weight:700; font-size:1.05rem; letter-spacing:.02em; color:var(--en-acid); border-bottom:1px solid var(--en-line); padding-bottom:.35rem; margin-top:2rem; }
.md-typeset h3{ font-family:var(--en-mono); font-weight:700; font-size:.95rem; color:var(--en-ink); }
.md-typeset h3::before{ content:"\25B8  "; color:var(--en-acid); }
.md-typeset a{ color:var(--en-acid); }
.md-typeset a:hover{ color:var(--en-acid-hot); }
.md-typeset strong{ color:var(--en-acid-hot); font-weight:600; }
.md-typeset code{ background:#0c1310; border:1px solid var(--en-line); color:var(--en-acid-hot); border-radius:4px; padding:.05em .3em; font-size:.85em; }

/* ---- code blocks: terminal, standard size ---- */
.md-typeset pre > code{ border:1px solid var(--en-line); border-radius:8px; }
.highlight .c, .highlight .c1, .highlight .cm{ color:var(--en-faint) !important; }
.highlight .s, .highlight .s1, .highlight .s2{ color:var(--en-acid-hot) !important; }
.md-clipboard:hover{ color:var(--en-acid); }

/* ---- admonitions ---- */
.md-typeset .admonition, .md-typeset details{ border:1px solid var(--en-acid-deep); border-left-width:3px; background:linear-gradient(90deg,rgba(57,255,94,.06),transparent); border-radius:6px; }
.md-typeset .admonition-title{ background:transparent; color:var(--en-acid); }
.md-typeset .admonition-title::before{ background-color:var(--en-acid); }

/* ---- tables ---- */
.md-typeset table:not([class]){ border:1px solid var(--en-line); }
.md-typeset table:not([class]) th{ font-family:var(--en-mono); font-size:.7rem; letter-spacing:.04em; text-transform:uppercase; color:var(--en-acid); background:#0a0f0c; }
.md-typeset table:not([class]) td{ border-top:1px solid var(--en-line); }

/* ---- right TOC ---- */
.md-nav--secondary{ font-size:.66rem; }
.md-nav--secondary .md-nav__title{ color:var(--en-faint); }

/* ---- footer ---- */
.md-footer, .md-footer-meta{ background:#050807; }
.md-footer{ border-top:1px solid var(--en-line); }
