:root{--bg:#000;--bg-soft:#0a0a0a;--bg-panel:#0d0d0d;--line:#1f1f1f;--line-strong:#333;--fg:#fff;--fg-dim:#b0b0b0;--fg-mute:#666;--accent:#fff;--danger:#ff3b3b;--ok:#7dff7d;--warn:#ffd76b;--mono:"JetBrains Mono", "Courier New", monospace;--pixel:"Press Start 2P", monospace;--vt:"VT323", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--mono);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:15px;line-height:1.7}::selection{color:#000;background:#fff}a{color:var(--fg);text-decoration:none}a:hover{text-decoration:underline}.scanlines{pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,#0000001f,#0000001f 1px,#0000 1px 3px);width:100%;height:100%;position:fixed;top:0;left:0}.noise{pointer-events:none;z-index:9998;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='nf'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23nf)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}.pixel-font{font-family:var(--pixel);letter-spacing:1px}.vt-font{font-family:var(--vt);letter-spacing:.5px;font-size:1.15em}.glitch{display:inline-block;position:relative}.glitch:before,.glitch:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.glitch:before{text-shadow:-2px 0 #fff;clip:rect(44px, 450px, 56px, 0);animation:5s linear infinite alternate-reverse glitch-anim;left:2px}.glitch:after{text-shadow:-2px 0 #888,2px 2px #fff;clip:rect(44px, 450px, 56px, 0);animation:5s linear infinite alternate-reverse glitch-anim2;left:-2px}@keyframes glitch-anim{0%{clip:rect(31px, 9999px, 94px, 0);transform:skew(.85deg)}20%{clip:rect(40px, 9999px, 60px, 0);transform:skew(.3deg)}40%{clip:rect(70px, 9999px, 20px, 0);transform:skew(1deg)}60%{clip:rect(20px, 9999px, 90px, 0);transform:skew(.7deg)}80%{clip:rect(60px, 9999px, 30px, 0);transform:skew(.1deg)}to{clip:rect(31px, 9999px, 94px, 0);transform:skew(.85deg)}}@keyframes glitch-anim2{0%{clip:rect(65px, 9999px, 100px, 0);transform:skew(.5deg)}20%{clip:rect(55px, 9999px, 30px, 0);transform:skew(.3deg)}40%{clip:rect(5px, 9999px, 85px, 0);transform:skew(.6deg)}60%{clip:rect(75px, 9999px, 15px, 0);transform:skew(.9deg)}80%{clip:rect(45px, 9999px, 55px, 0);transform:skew(.2deg)}to{clip:rect(65px, 9999px, 100px, 0);transform:skew(.5deg)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.cursor-blink{animation:1s step-end infinite blink}.pixel-shadow{text-shadow:2px 2px #333,4px 4px #111}.corner-brackets{position:relative}.corner-brackets:before,.corner-brackets:after,.corner-brackets>.cb:before,.corner-brackets>.cb:after{content:"";border:1px solid var(--line-strong);z-index:1;width:18px;height:18px;position:absolute}.corner-brackets:before{border-bottom:none;border-right:none;top:-1px;left:-1px}.corner-brackets:after{border-bottom:none;border-left:none;top:-1px;right:-1px}.corner-brackets>.cb:before{border-top:none;border-right:none;bottom:-1px;left:-1px}.corner-brackets>.cb:after{border-top:none;border-left:none;bottom:-1px;right:-1px}.container{max-width:960px;margin:0 auto;padding:0 24px}.container-wide{max-width:1280px;margin:0 auto;padding:0 24px}.site-nav{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);background:#000000d9;position:sticky;top:0}.site-nav-inner{justify-content:space-between;align-items:center;max-width:1280px;height:60px;margin:0 auto;padding:0 24px;display:flex}.site-nav .brand{font-family:var(--pixel);letter-spacing:1px;font-size:13px}.site-nav .brand .dot{color:var(--fg)}.site-nav .links{align-items:center;gap:26px;display:flex}.site-nav .links a{color:var(--fg-dim);letter-spacing:.5px;font-size:13px;transition:color .15s}.site-nav .links a:hover{color:var(--fg);text-decoration:none}.site-nav .links a.active{color:var(--fg)}.page-hero{border-bottom:1px solid var(--line);margin-bottom:40px;padding:72px 0 40px}.page-hero h1{font-family:var(--pixel);letter-spacing:1px;margin-bottom:14px;font-size:22px}.page-hero p{color:var(--fg-mute);max-width:640px;font-size:13px}.panel{background:var(--bg-panel);border:1px solid var(--line);padding:24px;position:relative}.panel+.panel{margin-top:16px}.post-card{border-bottom:1px solid var(--line);padding:22px 0;transition:transform .15s;display:block}.post-card:hover{transform:translate(6px)}.post-card .meta{color:var(--fg-mute);letter-spacing:.5px;margin-bottom:8px;font-size:11px}.post-card h3{letter-spacing:.3px;margin-bottom:8px;font-size:18px;font-weight:700}.post-card p.excerpt{color:var(--fg-dim);font-size:13px;line-height:1.6}.post-card .tag{border:1px solid var(--line-strong);color:var(--fg-dim);margin-right:6px;padding:2px 8px;font-size:11px;display:inline-block}.markdown{line-height:1.85}.markdown h1,.markdown h2,.markdown h3,.markdown h4{font-family:var(--pixel);letter-spacing:.5px;margin:1.6em 0 .8em;line-height:1.4}.markdown h1{font-size:20px}.markdown h2{border-left:3px solid #fff;padding-left:12px;font-size:16px}.markdown h3{font-size:14px}.markdown p{margin:.8em 0}.markdown ul,.markdown ol{margin:.8em 0;padding-left:1.6em}.markdown li{margin:.3em 0}.markdown blockquote{border-left:3px solid var(--line-strong);color:var(--fg-dim);background:var(--bg-soft);margin:1em 0;padding:8px 16px}.markdown code{font-family:var(--mono);border:1px solid var(--line);background:#161616;padding:1px 6px;font-size:.88em}.markdown pre{border:1px solid var(--line);background:#0d0d0d;margin:1em 0;padding:16px;overflow-x:auto}.markdown pre code{background:0 0;border:none;padding:0}.markdown img{border:1px solid var(--line);max-width:100%}.markdown a{border-bottom:1px dashed var(--line-strong)}.markdown a:hover{border-bottom-style:solid}.markdown table{border-collapse:collapse;width:100%;margin:1em 0}.markdown th,.markdown td{border:1px solid var(--line-strong);padding:8px 12px;font-size:13px}.markdown th{background:var(--bg-soft)}.badge{border:1px solid var(--line-strong);letter-spacing:.5px;color:var(--fg-dim);padding:3px 10px;font-size:11px;display:inline-block}.badge.danger{border-color:var(--danger);color:var(--danger)}.badge.ok{border-color:var(--ok);color:var(--ok)}.badge.warn{border-color:var(--warn);color:var(--warn)}.btn{color:var(--fg);border:1px solid var(--line-strong);font-family:var(--mono);cursor:pointer;letter-spacing:.5px;background:0 0;align-items:center;gap:8px;padding:10px 18px;font-size:13px;transition:all .15s;display:inline-flex}.btn:hover{color:#000;background:#fff}.btn.primary{color:#000;background:#fff;border-color:#fff}.btn.primary:hover{background:#ddd;border-color:#ddd}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.danger:hover{background:var(--danger);color:#000}.btn.sm{padding:6px 12px;font-size:12px}.btn:disabled{opacity:.4;cursor:not-allowed}.input,.select,.textarea{border:1px solid var(--line-strong);width:100%;color:var(--fg);font-family:var(--mono);background:#000;outline:none;padding:10px 12px;font-size:13px}.input:focus,.select:focus,.textarea:focus{border-color:#fff}.textarea{resize:vertical;min-height:120px}.select option{background:#000}.field{margin-bottom:18px}.field label{color:var(--fg-mute);letter-spacing:.5px;text-transform:uppercase;margin-bottom:6px;font-size:11px;display:block}.table{border-collapse:collapse;width:100%;font-size:12px}.table th,.table td{border:1px solid var(--line);text-align:left;padding:10px 12px}.table th{background:var(--bg-soft);color:var(--fg-mute);letter-spacing:.5px;font-weight:400}.table tr:hover td{background:var(--bg-soft)}.table .mono{font-family:var(--mono)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.stat{background:var(--bg-panel);border:1px solid var(--line);padding:18px}.stat .num{font-family:var(--pixel);margin-bottom:6px;font-size:20px}.stat .label{color:var(--fg-mute);letter-spacing:.5px;font-size:11px}.severity-high{color:var(--danger)}.severity-critical{color:var(--danger);font-weight:700}.severity-medium{color:var(--warn)}.severity-low{color:var(--fg-dim)}.severity-info{color:var(--fg-mute)}.region-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.region-cell{border:1px solid var(--line-strong);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;padding:14px;font-size:13px;transition:all .15s}.region-cell:hover{border-color:#fff}.region-cell.blocked{border-color:var(--danger);color:var(--danger);background:#ff3b3b1f}.login-box{border:1px solid var(--line-strong);background:var(--bg-panel);max-width:400px;margin:12vh auto 0;padding:36px}.login-box h1{font-family:var(--pixel);letter-spacing:1px;margin-bottom:24px;font-size:16px}.admin-layout{min-height:100vh;display:flex}.admin-side{border-right:1px solid var(--line);flex-shrink:0;width:220px;height:100vh;padding:20px 0;position:sticky;top:0;overflow-y:auto}.admin-side .side-brand{font-family:var(--pixel);letter-spacing:1px;border-bottom:1px solid var(--line);margin-bottom:16px;padding:0 20px 20px;font-size:11px}.admin-side a{color:var(--fg-dim);border-left:2px solid #0000;padding:11px 20px;font-size:13px;display:block}.admin-side a:hover{color:var(--fg);background:var(--bg-soft);text-decoration:none}.admin-side a.active{color:var(--fg);background:var(--bg-soft);border-left-color:#fff}.admin-main{flex:1;min-width:0;padding:32px}.admin-main h1{font-family:var(--pixel);letter-spacing:1px;margin-bottom:8px;font-size:18px}.admin-main .sub{color:var(--fg-mute);margin-bottom:28px;font-size:13px}@media (max-width:768px){.site-nav .links{gap:16px}.admin-layout{flex-direction:column}.admin-side{border-right:none;border-bottom:1px solid var(--line);width:100%;height:auto;position:relative}.admin-main{padding:20px}.page-hero h1{font-size:17px}}
