
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#000 url('assets/img/stars_bg.png') repeat;color:#d0ffe2;font-family:'Share Tech Mono','OCR A Std','OCR A Extended','Courier New',monospace;text-rendering: optimizeLegibility;}
a{color:#00ff90;text-decoration:underline}a:hover{color:#aaffee}
marquee{background:#00120c;color:#aaffee;border-bottom:2px dotted #00ff90;padding:4px 8px; text-transform:uppercase; letter-spacing:.08em}
.page{max-width:1024px;margin:0 auto;padding:10px; position:relative; isolation:isolate}
.page::before{content:''; position:fixed; inset:0; pointer-events:none; z-index:-1;background:repeating-linear-gradient(to bottom, rgba(0,0,0,.28) 0 2px, rgba(0,0,0,0) 2px 4px),url('assets/img/grunge.png');mix-blend-mode: overlay; opacity:.22;}
header{border:3px ridge #0aff84; background: rgba(0,10,6,.92); box-shadow:0 0 22px #00ff90 inset; margin-bottom:10px}
.brand{display:flex; gap:12px; align-items:center; padding:10px}
.logo{width:72px;height:72px; image-rendering: pixelated; filter: drop-shadow(0 0 6px rgba(0,255,144,.4))}
.quote{font-style:italic; color:#90ffe0; font-size:.9rem; opacity:.9}
.nav{display:flex; flex-wrap:wrap; gap:8px; align-items:center; padding:8px 10px; background:#00160f; border-top:2px dotted #00ff90; border-bottom:2px dotted #00ff90}
.nav a{padding:6px 12px; border:2px outset #00ff90; background:#002819; color:#e6ffea; text-decoration:none; text-transform:uppercase; letter-spacing:.06em}
.nav a.active{background:#004d31; border-style: inset}
.nav .spacer{flex:1}
.authbar{font-size:.9rem; opacity:.9}
.slogan{background:#00140d; border:2px solid #00ff90; padding:6px 10px; text-transform:uppercase; letter-spacing:.12em; color:#baffdb; margin:6px 10px; text-align:center}
.panel{border:3px groove #00ff90; background:rgba(0,18,12,.88); padding:14px; margin:10px 0}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px}
.card{border:2px ridge #00ff90; background:#00140e; padding:12px}
.list{line-height:1.6}
.muted{opacity:.9; color:#aaffee}
.btn{display:inline-block; border:2px outset #00ff90; background:#013b27; color:#dfffe7; padding:8px 12px; cursor:pointer; text-decoration:none; text-transform:uppercase}
.btn:active{border-style:inset}
.btn-danger{border-color:#ff6a6a; background:#4d0000}
.badge{display:inline-block; padding:2px 6px; border:1px solid #00ff90; margin-left:8px; font-size:.8rem; opacity:.9; background:#00281a}
input, select, textarea{background:#00150f; border:2px inset #00ff90; color:#e6ffea; padding:8px}
footer{border:3px ridge #00ff90; background:#00150f; padding:10px; margin-top:12px; text-align:center; color:#9ff}
#vault-img{image-rendering: pixelated; cursor:pointer; display:block; margin:0 auto; }
#vault-hint{ text-align:center; color:#aaffee; opacity:.95 }
.blink{animation: blink 1s step-end infinite}
@keyframes blink{ 50%{opacity:0}}
