:root{--bg:#0f1420;--panel:#161d2e;--border:#262f45;--text:#e4e8f1;--muted:#8b95ab;--accent:#4f7cff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.top-bar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.brand{letter-spacing:.02em;font-weight:700}.who{color:var(--muted);align-items:center;gap:.75rem;font-size:.9rem;display:flex}.role{font-size:.8rem}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.4rem .9rem;font-size:.9rem}button:disabled{opacity:.6;cursor:default}.login-page{justify-content:center;align-items:center;min-height:calc(100vh - 3.5rem);display:flex}.login-form{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.9rem;width:320px;padding:2rem;display:flex}.login-form h1{text-align:center;margin:0 0 .5rem;font-size:1.3rem}label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.5rem .6rem;font-size:.95rem}.error{color:#ff6b6b;margin:0;font-size:.85rem}.status{color:var(--muted);text-align:center;padding:2rem}.alerts-page{padding:1.5rem}.alerts-toolbar{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.alerts-toolbar h1{flex:1;margin:0;font-size:1.2rem}.alerts-toolbar label{flex-direction:row;align-items:center;gap:.5rem}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .7rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.risk{border-radius:999px;padding:.1rem .5rem;font-weight:600;display:inline-block}.risk-low{color:#6fcf97;background:#1f3a2a}.risk-medium{color:#f2c14e;background:#3a331f}.risk-high{color:#ff9f68;background:#3a231f}.risk-critical{color:#ff6b6b;background:#3a1f24}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--panel)}a{color:var(--accent)}.alert-detail-page{max-width:900px;padding:1.5rem}.alert-detail-header h1{margin:.5rem 0 .3rem;font-size:1.3rem}.alert-detail-meta{color:var(--muted);align-items:center;gap:.6rem;font-size:.85rem;display:flex}.mitre-tag{border:1px solid var(--border);border-radius:999px;padding:.05rem .5rem}.detail-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0;display:grid}.detail-grid p{margin:.2rem 0;font-size:.9rem}section h2{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:1.5rem 0 .5rem;font-size:.95rem}.risk-factors{margin:.5rem 0;padding:0;font-size:.9rem;list-style:none}.risk-factors li{border-bottom:1px solid var(--border);padding:.25rem 0}.raw-line{color:var(--muted);font-family:ui-monospace,monospace;font-size:.78rem}.top-nav{flex:1;gap:1.2rem;margin-left:1.5rem;display:flex}.top-nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.top-nav a:hover{color:var(--text)}.mitre-page{max-width:900px;padding:1.5rem}.mitre-page select{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.3rem .5rem}.mitre-bars{margin:1rem 0;padding:0;list-style:none}.mitre-bars li{border-bottom:1px solid var(--border);grid-template-columns:90px 1fr 50px 160px;align-items:center;gap:.8rem;padding:.4rem 0;font-size:.85rem;display:grid}.mitre-technique{font-weight:600}.mitre-bar-track{background:var(--panel);border-radius:4px;height:10px;overflow:hidden}.mitre-bar-fill{background:var(--accent);height:100%}.mitre-count{text-align:right;color:var(--muted)}.mitre-latest{color:var(--muted);font-size:.78rem}.map-page{max-width:1000px;padding:1.5rem}.world-map{border:1px solid var(--border);background:var(--panel);border-radius:8px;width:100%;height:auto}.map-background{fill:var(--panel)}.map-graticule{stroke:var(--border);stroke-width:1px}.map-equator,.map-meridian{stroke:#34405c}.map-point{fill-opacity:.75;stroke:var(--bg);stroke-width:1px}.map-point-low{fill:#6fcf97}.map-point-medium{fill:#f2c14e}.map-point-high{fill:#ff9f68}.map-point-critical{fill:#ff6b6b}.map-point-unknown{fill:var(--muted)}.map-legend{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.4rem;margin:1rem 0;padding:0;font-size:.85rem;list-style:none;display:grid}.map-legend .risk{text-align:center;min-width:2rem;display:inline-block}.incidents-page{max-width:1100px;padding:1.5rem}.incidents-page select,.incidents-page textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:6px;padding:.5rem}.incident-form{border:1px solid var(--border);background:var(--panel);border-radius:8px;flex-direction:column;align-items:stretch;gap:.8rem;max-width:650px;margin:1rem 0;padding:1rem;display:flex}.incident-form h2,.incident-form p{margin:0}.incident-form button{align-self:flex-start}.incident-controls{border:0;min-width:0;padding:0}.incident-controls>label{max-width:220px}.incident-controls>button{margin-right:.5rem}.incident-alerts,.incident-notes{padding:0;list-style:none}.incident-alerts li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.8rem;padding:.7rem 0;display:flex}.incident-notes li{border-bottom:1px solid var(--border)}.note-body{white-space:pre-wrap;overflow-wrap:anywhere}.table-scroll{overflow-x:auto}@media (width<=700px){.top-bar,.top-nav,.alerts-toolbar{flex-wrap:wrap}.top-nav{margin-left:0}}.security-page{max-width:760px;padding:1.5rem}.security-form,.recovery-panel{border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:1rem}.security-form fieldset{border:0;flex-direction:column;gap:1rem;min-width:0;padding:0;display:flex}.security-form select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.6rem}.security-form button{align-self:flex-start}.form-help{color:var(--muted);margin:0;font-size:.85rem}.totp-qr{background:#fff;max-width:100%;height:auto}.setup-key,.recovery-codes code{overflow-wrap:anywhere}.recovery-codes{padding:0;line-height:1.8;list-style:none}
