/* CVE Radar 2 — a spacious intelligence desk. */
:root,body.light-mode{color-scheme:light;--bg:#f3f5fb;--panel:#fff;--line:#e4e8f2;--text:#192443;--muted:#69748d;--accent:#6354de;--soft:#eeecff;--danger:#c83055;--input:#f8f9fd}
body.dark-mode{color-scheme:dark;--bg:#0e1426;--panel:#171f35;--line:#2a3550;--text:#edf0ff;--muted:#a3aec9;--accent:#aa9fff;--soft:#2c2750;--danger:#ff89a4;--input:#111a2d}
body{font-size:14px;background:radial-gradient(ellipse at 95% 0,#eae6ff55,transparent 42%),var(--bg)}
aside{width:258px;background:#131d37;border:0;color:#f3f5ff;padding:30px 20px 20px}.brand{font-size:24px;gap:11px;padding:0 10px}.brand-icon{display:block;width:44px;height:48px}.brand-icon img{width:44px;height:48px}.brand .light{color:#b6afff;font-weight:600}.brand small{color:#8c9bbe;font-size:8px}.nav-label{color:#7485ac;margin:35px 12px 14px}nav{gap:3px}nav button{color:#aebbd8;font-weight:500;border-radius:11px;padding:11px 13px}nav button.active{background:#7161e8;color:white;box-shadow:0 6px 18px #0002}nav button:hover{background:#253255;color:white}.sidebar-bottom{padding:15px 12px 0;color:#91a3c8}.sidebar-bottom a,.sidebar-bottom button{color:#91a3c8}.shell{margin-left:258px}header{height:77px;background:var(--panel);border-bottom:1px solid var(--line);padding:0 38px;position:sticky;top:0;z-index:2}main{padding:36px 38px;max-width:1590px}h1{font-size:34px;letter-spacing:-1.3px;font-weight:800}h2{font-weight:800;letter-spacing:-.4px}.eyebrow{font-weight:800;letter-spacing:1.5px}.page-heading{margin-bottom:30px}.page-heading p{max-width:720px}.pill{color:var(--accent);background:var(--soft);border:0;font-weight:700}.primary,button.primary{background:#6354de;color:white;border-color:#6354de;box-shadow:0 5px 12px #6354de20}button{border-radius:10px;font-weight:600}input,select,textarea{border-radius:11px;padding:13px}.panel{border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 20px #16214c03;margin-bottom:22px;overflow:hidden}.panel-head{padding:20px 23px;background:var(--panel);border-bottom:1px solid var(--line)}.panel-head h2{font-size:16px}.panel-body{padding:23px}.stats{gap:18px;margin-bottom:26px}.stat{border-radius:17px;background:var(--panel);padding:24px;border:1px solid var(--line);position:relative;overflow:hidden}.stat:before{content:'';position:absolute;top:20px;right:0;width:4px;height:40px;border-radius:5px;background:#8575ee}.stat strong{font-size:35px;font-weight:800;letter-spacing:-1px;color:var(--text)}.stat small{font-size:12px;font-weight:600}.hero{background:linear-gradient(115deg,#192546,#3d3476);border:0;border-radius:20px;color:white;padding:32px;margin-bottom:26px}.hero p{color:#c6cde3}.hero h2{font-size:29px;font-weight:800}.hero .radar{opacity:.5}.cve-row{padding:22px;background:var(--panel);margin-bottom:10px;border:1px solid var(--line);border-radius:15px;transition:transform .15s,box-shadow .15s}.cve-row:hover{transform:translateY(-2px);box-shadow:0 8px 22px #1a244b0a;border-color:#b6acf7}.cve-code{font-family:Manrope,sans-serif;font-size:15px;font-weight:800}.cve-desc{font-size:13px;line-height:1.75;max-width:950px}.tag{font-size:10px;letter-spacing:.3px;border:0;background:var(--soft);color:var(--accent);border-radius:6px;padding:5px 8px}.tag.red{background:#fff0f3;color:#be2a4c}.score,.score.low,.score.medium{--risk:#d83c61;display:flex;flex-direction:column;align-items:center;justify-content:center;border:0;border-radius:50%;width:66px;height:66px;min-width:66px;font-size:23px;font-weight:800;position:relative;background:conic-gradient(var(--risk) var(--arc,0%),var(--line) 0);color:var(--risk);isolation:isolate;box-shadow:none}.score:before{content:'';position:absolute;inset:5px;border-radius:50%;background:var(--panel);z-index:-1}.score small{font-size:8px;letter-spacing:.8px;color:var(--muted);margin:0}.score.low{--risk:#119a8a}.score.medium{--risk:#bd830c}.score.large{width:112px;height:112px;font-size:35px}.score.large:before{inset:8px}.score.large small{font-size:10px}.risk-hero{padding:26px;display:flex;align-items:center;gap:26px;background:var(--panel);border:1px solid var(--line);border-radius:20px;margin-bottom:24px}.risk-hero h2{font-size:24px;margin:0 0 8px}.risk-hero p{margin:0}.risk-metrics{margin-left:auto;display:flex;gap:25px}.risk-metrics b{display:block;font-size:24px;margin-top:8px}.detail-text{font-size:15px;line-height:1.95;color:var(--text)}.section-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.section-tabs button.active{color:white;background:#6354de;border-color:#6354de}.notice{border-radius:12px;border:1px solid #dcd5ff;background:var(--soft);color:var(--text);line-height:1.8;padding:16px 20px}.bar{background:var(--line);border-radius:10px;height:7px}.bar>div{background:linear-gradient(90deg,#8273f0,#b0a2ff);border-radius:10px}.comment{padding:20px 0;border-bottom:1px solid var(--line)}.comment:last-child{border:0}.comment-top{display:flex;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:12px;background:var(--soft);color:var(--accent);display:grid;place-items:center;font-weight:800}.comment p{white-space:pre-wrap;color:var(--text);margin:13px 0}.comment small{font-size:11px}.comment.reply{padding-left:30px;border-left:3px solid var(--line)}.actions{flex-wrap:wrap}.actions button{font-size:12px}.solution-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:20px}.solution-card{border:1px solid var(--line);border-radius:17px;background:var(--panel);padding:24px;margin:0 0 20px}.solution-card h3{font-size:20px;margin:14px 0}.solution-card li{line-height:1.9;padding:5px}.solution-card p{white-space:pre-wrap}.solution-tags{display:flex;gap:7px;flex-wrap:wrap}.solution-meta{display:flex;gap:14px;flex-wrap:wrap;margin:15px 0}.solution-meta span{font-size:11px;color:var(--muted)}.solution-step{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}.solution-step input{width:18px;flex-shrink:0}.solution-step label{display:block;margin:0;font-size:14px;color:var(--text)}.admin-launch{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:25px}.admin-launch button{text-align:left;padding:22px;background:var(--panel);border:1px solid var(--line);font-size:17px;line-height:1.4}.admin-launch small{display:block;font-size:12px;font-weight:400;margin-top:8px}.phone-preview{background:#111b33;color:white;border-radius:26px;padding:30px 20px;max-width:350px;min-height:230px}.phone-preview .push-card{background:#ffffff18;padding:18px;border:1px solid #ffffff30;border-radius:16px;margin-top:20px}.phone-preview p{color:#dbe0f2;white-space:pre-wrap}.form-grid{gap:20px}footer{border-top:1px solid var(--line);color:var(--muted)}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:22px;width:min(700px,95vw);max-height:92vh;padding:30px}dialog::backdrop{background:#0e163c77;backdrop-filter:blur(6px)}.empty{padding:40px 25px;text-align:center;border:1px dashed var(--line);border-radius:16px;background:var(--panel)}.keyvalue{padding:12px 0;font-size:13px}.keyvalue b{font-size:14px}.compact .cve-row{padding:12px}.compact .cve-desc{-webkit-line-clamp:2}.high-contrast{--muted:var(--text)}.large-text{font-size:17px}.large-text .detail-text{font-size:19px}
@media(max-width:1050px){aside{width:220px;padding:24px 12px}.shell{margin-left:220px}main{padding:26px}.risk-metrics{gap:15px}.risk-metrics b{font-size:18px}}
@media(max-width:760px){aside{position:relative;width:100%;padding:18px;display:block}.brand{padding:0}aside .nav-label,aside .sidebar-bottom{display:none}nav{display:flex;gap:6px;overflow-x:auto;margin-top:15px;padding-bottom:4px}nav button{white-space:nowrap;flex-shrink:0;padding:10px}nav .glyph{display:none}.shell{margin:0}header{height:60px;padding:0 20px}main{padding:23px 17px}h1{font-size:29px}.hero{padding:24px}.stats{gap:10px}.stat{padding:18px}.stat strong{font-size:27px}.risk-hero{padding:20px;gap:18px;flex-wrap:wrap}.risk-metrics{margin:0;width:100%;justify-content:space-around}.cve-row{padding:17px;gap:13px}.score{width:58px;min-width:58px;height:58px;font-size:21px}.panel-body,.panel-head{padding:19px}.solution-grid{grid-template-columns:1fr}.breadcrumb{font-size:11px}.grid,.two-cols{grid-template-columns:1fr}.comment.reply{padding-left:15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

nav{scrollbar-width:thin;scrollbar-color:#465174 transparent}nav::-webkit-scrollbar{width:4px}nav::-webkit-scrollbar-thumb{background:#465174;border-radius:8px}nav::-webkit-scrollbar-track{background:transparent}

[hidden]{display:none!important}
