
:root {
  --bg:#0a0d12; --panel:#111722; --panel2:#151d2a; --text:#e8edf5; --muted:#9aa8ba;
  --line:#243044; --accent:#75a7ff; --accent2:#b8d1ff; --low:#58c58b; --medium:#e4b95f;
  --high:#ef7b72; --third:#b799ff; --code:#0c121b; --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#0a0d12 0%,#0c1119 100%);color:var(--text);font:16px/1.62 Inter,Segoe UI,system-ui,-apple-system,sans-serif}
a{color:var(--accent2);text-decoration:none} a:hover{text-decoration:underline}
header{position:sticky;top:0;z-index:10;background:rgba(10,13,18,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{max-width:var(--max);margin:auto;display:flex;gap:18px;align-items:center;padding:14px 22px;overflow-x:auto}
.brand{font-weight:800;color:white;white-space:nowrap;margin-right:auto}.brand span{color:var(--accent)}
.nav a{color:var(--muted);white-space:nowrap;font-size:14px}.nav a:hover,.nav a.active{color:white;text-decoration:none}
main{max-width:var(--max);margin:auto;padding:54px 22px 80px}
.hero{padding:26px 0 20px}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-weight:800;font-size:12px}
h1{font-size:clamp(34px,5vw,62px);line-height:1.05;margin:10px 0 18px;max-width:900px}
h2{font-size:28px;margin:46px 0 18px}h3{font-size:20px;margin:30px 0 10px}h4{font-size:17px}
p{max-width:900px;color:#d7deea}.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin:24px 0}
.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:20px}
.card h3{margin:0 0 8px}.card p{margin:0}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:24px 0}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px}.stat strong{display:block;font-size:26px}.stat span{color:var(--muted);font-size:13px}
.notice{border-left:4px solid var(--medium);background:#191813;border-radius:8px;padding:15px 18px;margin:22px 0;max-width:980px}
.notice.danger{border-color:var(--high);background:#1d1415}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
input[type=search],select{background:var(--panel);border:1px solid var(--line);border-radius:9px;color:var(--text);padding:11px 13px;min-width:220px}
.tool{border:1px solid var(--line);border-radius:13px;background:var(--panel);padding:18px;margin:12px 0}
.tool-top{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.tool h3{margin:0;font-size:19px}.path{font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);word-break:break-all}
.badge{font-size:12px;font-weight:800;padding:4px 9px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}
.badge.Low{color:var(--low)} .badge.Medium{color:var(--medium)} .badge.High{color:var(--high)} .badge.Third-party{color:var(--third)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.button{display:inline-block;border:1px solid #37527b;background:#172740;color:white;padding:8px 11px;border-radius:8px;font-size:13px}.button:hover{text-decoration:none;background:#1d3150}
details{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}summary{cursor:pointer;color:var(--accent2);font-weight:700}
table{width:100%;border-collapse:collapse;margin:18px 0;display:block;overflow-x:auto}th,td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}th{color:white;background:#121a27}td{color:#d6deea}
code{background:var(--code);padding:2px 5px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}
pre{background:var(--code);border:1px solid var(--line);padding:15px;border-radius:10px;overflow:auto}pre code{padding:0}
hr{border:0;border-top:1px solid var(--line);margin:40px 0}
footer{border-top:1px solid var(--line);color:var(--muted);padding:28px 22px;margin-top:60px}.footer-inner{max-width:var(--max);margin:auto}
.markdown h1{font-size:42px}.markdown blockquote{border-left:3px solid var(--accent);margin-left:0;padding-left:16px;color:var(--muted)}
.file-row{display:grid;grid-template-columns:minmax(220px,2fr) 100px 150px minmax(240px,2fr);gap:12px;border-bottom:1px solid var(--line);padding:10px 4px;align-items:start}
.file-row.header{font-weight:800;color:white;background:#121a27;padding:10px}
@media(max-width:760px){.file-row{grid-template-columns:1fr}.file-row.header{display:none} main{padding-top:34px}}
