:root { color-scheme:dark; --bg:#07111f; --panel:#0d1b2f; --line:#24405e; --text:#e6f0fb; --muted:#91a8bf; --accent:#4cc9f0; --danger:#ff8c8c; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; padding:28px; background:#07111f; color:var(--text); font:15px/1.5 system-ui,sans-serif; }
main { display:flex; flex-direction:column; width:min(1180px,100%); min-height:calc(100vh - 56px); margin:0 auto; }
header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:22px; border-bottom:1px solid var(--line); }
.pilot-brand { display:flex; align-items:center; gap:18px; }
.brand-logo { width:240px; height:auto; flex-shrink:0; }
h1 { margin:0; font-size:1.65rem; }
header p { margin:4px 0 0; color:var(--muted); }
a { color:var(--accent); }
.actions { display:flex; gap:12px; }
.actions a { padding:9px 13px; border:1px solid var(--line); border-radius:7px; text-decoration:none; }
.panel { margin-top:24px; padding:22px; overflow:auto; background:var(--panel); border:1px solid var(--line); border-radius:12px; }
.panel > p { max-width:760px; color:var(--muted); }
.vl-modes { display:flex; flex-wrap:wrap; gap:8px 18px; margin:0 0 12px; padding:0; border:0; color:var(--text); }
.vl-modes legend { padding:0; margin-bottom:6px; color:var(--muted); font-size:.85rem; }
.vl-modes label { display:flex; align-items:center; gap:6px; cursor:pointer; }
.vl-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:10px; }
.panel [hidden] { display:none; }
.vl-row input { flex:1 1 280px; min-width:0; padding:11px 12px; border:1px solid var(--line); border-radius:7px; background:#07111f; color:var(--text); font:inherit; }
.vl-submit { padding:10px 16px; border:1px solid #e5383b; border-radius:7px; background:#e5383b; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.vl-submit:disabled { opacity:.6; cursor:wait; }
.vl-note { font-size:13px; color:var(--muted); }
.vl-note code { color:var(--text); }
.vl-guide { margin-top:18px; color:var(--muted); }
.vl-guide summary, .vl-refs summary { color:var(--accent); cursor:pointer; }
.vl-guide dl, .vl-fields { display:grid; grid-template-columns:minmax(100px,140px) minmax(0,1fr); gap:6px 14px; margin:12px 0 0; }
.vl-guide dt, .vl-fields dt { color:var(--text); font-weight:700; }
.vl-guide dd, .vl-fields dd { margin:0; color:var(--muted); overflow-wrap:anywhere; }
.vl-result { display:flex; flex-direction:column; gap:12px; margin-top:16px; padding:14px; border:1px solid var(--line); border-radius:8px; background:#07111f; }
.vl-card { padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--panel); }
.vl-card-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 14px; }
.vl-id { font-weight:700; font-size:1.05rem; }
.vl-date { color:var(--muted); font-size:.85rem; }
.vl-title { margin:6px 0 0; font-size:1rem; color:var(--text); }
.vl-desc { margin:8px 0 0; color:var(--muted); overflow-wrap:anywhere; }
.vl-badges { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.vl-badge { padding:3px 9px; border:1px solid var(--line); border-radius:999px; font-size:.8rem; color:var(--text); white-space:nowrap; }
.vl-badge.sev-critical, .vl-badge.vl-exploited { border-color:#e5383b; color:#ff8c8c; background:#3a1520; }
.vl-badge.sev-high { border-color:#ff8c00; color:#ffb35c; }
.vl-badge.sev-medium { border-color:#d29922; color:#ffd580; }
.vl-badge.sev-low { color:var(--muted); }
.vl-badge.vl-kev { border-color:#e5383b; color:#fff; background:#a4161a; }
.vl-badge.vl-epss { border-color:var(--accent); color:var(--accent); }
.vl-badge.vl-poc { border-color:#ffd580; color:#ffd580; }
.vl-refs { margin-top:10px; color:var(--muted); }
.vl-refs ul { margin:8px 0 0; padding-left:18px; }
.vl-refs a { overflow-wrap:anywhere; }
.vl-error { color:var(--danger); }
.vl-suggest { margin:0; color:var(--muted); }
.vl-credit { margin:16px 0 0; font-size:.8rem; color:var(--muted); }
.soc-footer { margin-top:auto; background:#060b14; border-top:1px solid #1e2d4a; min-height:36px; padding:10px 12px 16px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; font-size:11px; color:#8892a4; letter-spacing:.5px; text-align:center; }
.soc-footer a { color:var(--accent); text-decoration:none; }
.soc-footer-logo { display:block; width:auto; height:42px; margin-top:4px; opacity:.8; transition:opacity .2s; }
.soc-footer-logo:hover { opacity:1; }
@media (max-width:700px) { body { padding:16px; } header { flex-direction:column; align-items:flex-start; } .pilot-brand { flex-direction:column; align-items:flex-start; } .brand-logo { width:200px; } }
.vl-brand { display:flex; align-items:center; gap:12px; text-decoration:none; }
.vl-brand-logo { width:56px; height:56px; flex-shrink:0; }
.vl-brand-text { font-size:1.5rem; font-weight:800; letter-spacing:.02em; }
.vl-brand-text .brand-med { color:#3b82f6; }
.vl-brand-text .brand-fda { color:#e2e8f0; }
.vl-brand-text .brand-watch { color:#14b8a6; }
