@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;700&display=swap";:root{--bg-dark:#000;--bg-surface:#0a0a0a;--red-accent:#ff3131;--red-dim:#ff31311f;--red-glow:#ff313166;--text-primary:#fff;--text-secondary:#999;--text-muted:#555;--border-red:#ff313159;--font-mono:"JetBrains Mono", "Fira Code", "Courier New", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#050505}::-webkit-scrollbar-thumb{background:var(--red-accent);border-radius:2px}.btn{font-family:var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border:none;outline:none;align-items:center;gap:8px;padding:12px 28px;font-size:.82rem;font-weight:700;transition:all .22s;display:inline-flex}.btn-primary{background:var(--red-accent);color:#000;border:2px solid var(--red-accent)}.btn-primary:hover{box-shadow:0 0 24px var(--red-glow);background:#ff5050;border-color:#ff5050}.btn-ghost{color:var(--text-primary);background:0 0;border:2px solid #ffffff40}.btn-ghost:hover{border-color:#fff9;box-shadow:0 0 12px #ffffff14}.btn-outline-red{color:var(--red-accent);border:2px solid var(--red-accent);background:0 0}.btn-outline-red:hover{background:var(--red-accent);color:#000;box-shadow:0 0 20px var(--red-glow)}.btn:disabled{opacity:.45;cursor:not-allowed}.card{background:var(--bg-surface);border:1px solid var(--border-red);padding:24px;transition:border-color .3s,box-shadow .3s}.card:hover{border-color:var(--red-accent);box-shadow:0 0 18px var(--red-dim)}table{border-collapse:collapse;width:100%}thead th{color:var(--red-accent);letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid var(--border-red);text-align:left;padding:12px 16px;font-size:.72rem}tbody td{color:var(--text-secondary);border-bottom:1px solid #ff31310f;padding:11px 16px;font-size:.82rem}tbody tr:hover{background:var(--red-dim)}tbody tr:hover td{color:var(--text-primary)}.tag{letter-spacing:1px;text-transform:uppercase;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-block}.tag-variant{background:var(--red-accent);color:#000}.tag-target{color:gold;border:1px solid gold}.tag-demand{color:#0f8;border:1px solid #0f8}.tag-impact{color:#ff8c00;border:1px solid #ff8c00}.tag-vector{color:#00bfff;border:1px solid #00bfff}.status-dot{background:var(--red-accent);width:8px;height:8px;box-shadow:0 0 6px var(--red-accent);border-radius:50%;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.console{border:1px solid var(--border-red);font-family:var(--font-mono);color:#0f8;background:#000;max-height:220px;padding:16px;font-size:.8rem;position:relative;overflow-y:auto}.console:before{content:"SYSTEM LOG >";color:var(--red-accent);letter-spacing:2px;font-size:.68rem;position:absolute;top:8px;right:12px}.section-label{letter-spacing:3px;text-transform:uppercase;color:var(--red-accent);font-size:.7rem}.glow-red{color:var(--red-accent);text-shadow:0 0 18px var(--red-accent), 0 0 36px #ff313159}.divider{border:none;border-top:1px solid var(--border-red)}
