.package-bar,.context-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:16px 18px;border:1px solid var(--border);border-radius:16px 16px 0 0;background:#ffffff0a;box-shadow:0 14px 28px #0003;margin:10px 0 16px}.package-bar--critical{border-color:#dc262666;border-left:4px solid #dc2626;background:#dc26260f}.package-icon,.context-icon{font-size:28px}.package-icon-img{display:block}.package-main,.context-main{flex:1;min-width:200px}.package-name,.context-title{font-size:22px;font-weight:800}.package-meta,.context-meta{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}.package-version{font-size:14px;color:var(--muted)}.package-owner-link{text-decoration:none}.package-owner-link:hover{text-decoration:underline}.package-owner-label{font-size:12px;color:var(--muted);margin-left:2px}.package-desc{margin-top:8px;max-width:72ch;font-size:14px;line-height:1.5;color:var(--text-secondary, var(--muted))}.package-desc p,.package-desc ul,.package-desc ol{margin:0}.package-desc p+p,.package-desc p+ul,.package-desc p+ol,.package-desc ul+p,.package-desc ul+ol,.package-desc ol+p,.package-desc ol+ul{margin-top:8px}.package-desc ul,.package-desc ol{padding-left:18px}.package-desc a{color:var(--accent, #60a5fa);text-decoration:underline;text-underline-offset:2px}.package-desc a:hover{color:#8ac7ff}.package-desc code{font-family:var(--mono);font-size:.92em;padding:1px 5px;border-radius:6px;background:#ffffff14}.context-stack{font-size:14px;color:var(--muted)}.context-note{font-size:14px;font-weight:700;color:var(--bad)}.package-badges,.context-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media(max-width:640px){.package-bar,.context-bar{padding:12px;gap:10px;border-radius:14px 14px 0 0;flex-direction:column;align-items:flex-start}.package-icon,.context-icon{display:none}.package-name,.context-title{font-size:17px}.package-meta,.context-meta{font-size:12px;flex-wrap:wrap}.package-main,.context-main{min-width:0;width:100%}.package-badges,.context-badges{width:100%;margin-top:4px}.package-badges .badge,.context-badges .badge{font-size:10px;padding:3px 7px}}.stack-selector{display:flex;flex-wrap:wrap;gap:12px 24px;padding:0 4px;margin:-8px 0 12px}.selector-group{display:flex;align-items:center;gap:10px}.selector-label{font-size:11px;font-weight:600;color:var(--muted2);text-transform:uppercase;letter-spacing:.5px}.selector-tabs{display:flex;gap:4px}.selector-tab{padding:6px 12px;font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;border-radius:6px;transition:all .15s ease;background:#ffffff08}.selector-tab:hover{color:var(--fg);background:#ffffff0f}.selector-tab.active{color:var(--fg);background:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff1a}@media(max-width:640px){.stack-selector{flex-direction:column;align-items:flex-start;gap:10px}.selector-group{flex-wrap:wrap;gap:6px}.selector-tabs{flex-wrap:wrap}.selector-tab{padding:5px 10px;font-size:12px}}.fw-switcher{position:relative}.fw-current{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#ffffff0f;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.fw-current:hover{background:#ffffff1a;border-color:#fff3}.fw-chevron{transition:transform .15s}.fw-current[aria-expanded=true] .fw-chevron{transform:rotate(180deg)}.fw-dropdown{position:absolute;top:100%;left:0;margin-top:8px;min-width:200px;max-height:320px;overflow-y:auto;padding:8px 0;background:var(--bg2, #1a1a2e);border:1px solid rgba(255,255,255,.1);border-radius:6px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .15s;z-index:200;list-style:none;backdrop-filter:blur(12px);box-shadow:0 8px 24px #0006}.fw-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.fw-option{display:flex;align-items:center;gap:8px;padding:8px 12px;color:var(--text);text-decoration:none;transition:background .1s;font-size:13px}.fw-option:hover{background:#ffffff0f}.fw-option.active{background:#64b5ff1a}.fw-name{flex:1}.fw-count{font-size:11px;color:var(--good);background:#39d98a1a;padding:2px 6px;border-radius:8px}.fw-check{color:var(--good);font-size:12px}.language-selector{display:flex;align-items:center;gap:16px;padding:0 4px;margin:-8px 0 8px}.language-label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.language-tabs{display:flex;gap:4px}.language-tab{padding:8px 16px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;border-radius:8px;transition:all .15s ease}.language-tab:hover{color:var(--fg);background:#ffffff0f}.language-tab.active{color:var(--fg);background:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff1a}@media(max-width:640px){.language-selector{flex-direction:column;align-items:flex-start;gap:8px;margin:-4px 0 12px}.language-tabs{flex-wrap:wrap}.language-tab{padding:6px 12px;font-size:13px}}.progress-bar{position:sticky;top:0;z-index:100;background:#0b0f19f2;backdrop-filter:blur(12px);border-bottom:1px solid var(--border2);margin:0 -16px 16px;padding:12px 16px}@media(min-width:768px){.progress-bar{margin:0 -22px 16px;padding-left:22px;padding-right:22px}}@media(min-width:1280px){.progress-bar{margin:0 -36px 16px;padding-left:36px;padding-right:36px}}.progress-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.progress-steps{display:flex;gap:6px;align-items:center;overflow-x:auto;scrollbar-width:none}.progress-steps::-webkit-scrollbar{display:none}.progress-logo{display:none;align-items:center;gap:8px;opacity:0;transition:opacity .2s ease;color:var(--muted2);font-size:12px;font-weight:600;opacity:.6}.progress-logo .mini-logo{width:20px;height:20px;border-radius:6px;background:url(/images/icon-192.png) center/cover no-repeat}@media(min-width:1100px){.progress-logo.visible{display:flex;opacity:1}}.progress-step{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;font-size:12px;font-weight:600;color:var(--muted2);cursor:pointer;transition:all .15s;white-space:nowrap;border:1px solid transparent}.progress-step:hover{color:var(--muted);background:#ffffff0a}.progress-step.active{color:var(--text);background:#ffffff0f;border-color:var(--border)}.progress-step.completed{color:var(--good)}.progress-step .step-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;background:#ffffff14;border:1px solid var(--border2)}.progress-step.active .step-icon{background:var(--info);border-color:var(--info);color:#0b0f19}.progress-step.completed .step-icon{background:var(--good);border-color:var(--good);color:#0b0f19}.progress-connector{width:20px;height:1px;background:var(--border2);flex-shrink:0}@media(max-width:768px){.progress-bar{margin:0 -16px 16px;padding-left:16px;padding-right:16px}.progress-steps{width:100%;justify-content:space-between;gap:0}.progress-connector{display:none}.progress-step{padding:8px;font-size:11px;flex:1;justify-content:center}.progress-step .step-icon{width:24px;height:24px;font-size:11px}.progress-step span:not(.step-icon){display:none}}.layout{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}.layout>*{min-width:0}@media(min-width:980px){.layout{grid-template-columns:1fr 320px}}.card{background:linear-gradient(180deg,#ffffff0f,#ffffff08);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 14px 34px #0000005c;overflow:hidden;max-width:100%}.card-body{padding:18px;max-width:100%;overflow-x:hidden}@media(max-width:480px){.card-body{padding:14px}}.summary{border:1px solid var(--border);border-radius:18px;background:#00000029;overflow:hidden;margin-bottom:20px}.summary-header{padding:14px 16px;border-bottom:1px solid var(--border2);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent)}.summary-header h2{margin:0 0 6px;font-size:18px}.summary-header p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}@media(max-width:480px){.summary-header{padding:12px}.summary-header h2{font-size:16px}.summary-header p{font-size:12px}}.warning-card{padding:14px 16px;border-radius:14px;margin-bottom:16px}.warning-card.typosquat,.warning-card.install,.warning-card.ghost-versions{background:linear-gradient(135deg,#ff6b6b1f,#ff6b6b0a);border:1px solid rgba(255,107,107,.25);border-left:4px solid var(--bad)}.warning-card.scan-failed-notice{background:linear-gradient(135deg,#6495ed1f,#6495ed0a);border:1px solid rgba(100,149,237,.25);border-left:4px solid var(--info, #6495ed)}.warning-card.scan-failed-notice h4{color:var(--info, #6495ed)}.warning-card h4{margin:0 0 6px;font-size:14px;color:var(--bad)}.warning-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.rightcol .card{position:sticky;top:80px}@media(max-width:980px){.rightcol .card{position:static}}.diff,.code-block{border:1px solid var(--border2);border-radius:14px;overflow:hidden;background:#0000002e;max-width:100%;margin-bottom:12px}.diffbar{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border2);background:linear-gradient(180deg,rgba(255,255,255,.05),transparent);flex-wrap:wrap}.diffbar .left{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.file{font-family:var(--mono);font-size:12.5px;color:var(--text);padding:5px 9px;border-radius:10px;border:1px solid var(--border2);background:#ffffff0a}.diff pre,.code-block pre{margin:0;padding:12px 14px;font-family:var(--mono);font-size:12.8px;line-height:1.5;overflow-x:auto;background:#0000003d;max-width:100%}.code-block--copyable{position:relative}.code-block--copyable .copy-btn{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:6px;border:1px solid transparent;background:transparent;color:#ffffff8c;cursor:pointer;opacity:0;transform:translateY(1px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,color .18s ease,background .18s ease,border-color .18s ease}.code-block--copyable .copy-btn svg{width:14px;height:14px;fill:currentColor}.code-block--copyable:hover .copy-btn,.code-block--copyable:focus-within .copy-btn,.code-block--copyable .copy-btn:focus-visible{opacity:1;transform:translateY(0);pointer-events:auto;color:var(--text-secondary, #a0a0a0);background:#ffffff14;border-color:#ffffff1f}.code-block--copyable .copy-btn:hover,.code-block--copyable .copy-btn:focus-visible{color:var(--text-primary);background:#ffffff24;border-color:#ffffff2e}@media(hover:none),(pointer:coarse){.code-block--copyable .copy-btn{opacity:1;transform:none;pointer-events:auto;color:var(--text-secondary, #a0a0a0);background:#ffffff0f;border-color:#ffffff1a}}@media(max-width:640px){.diff pre,.code-block pre{font-size:11px;padding:10px 12px}}.copy-sm,.copy-btn{font-size:10px;padding:3px 8px;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--muted);cursor:pointer;opacity:.7;transition:opacity .15s}.copy-sm:hover,.copy-btn:hover{opacity:1;background:#ffffff1a;color:var(--text)}.search-container{max-width:700px;margin:0 auto 32px}.search-container.large{max-width:800px;margin-bottom:40px}.search-form{display:flex;gap:12px;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:14px 18px;border-radius:14px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);font-size:15px;font-family:var(--sans)}.search-input::placeholder{color:var(--muted2)}.search-input:focus{outline:none;border-color:#64b5ff66;background:#ffffff14}.search-input.large{padding:18px 22px;font-size:16px}.hint{margin-top:10px;font-size:12px;color:var(--muted2);text-align:center}.examples{text-align:center;margin-bottom:32px}.examples h3{font-size:13px;color:var(--muted);margin:0 0 12px;font-weight:600}.example-links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.example-link{padding:8px 14px;border-radius:10px;background:#ffffff0a;border:1px solid var(--border2);font-size:13px;text-decoration:none;transition:all .15s}.example-link:hover{background:#ffffff14;border-color:var(--border)}.cta-section{text-align:center;margin-bottom:32px}.cta-section h3{font-size:14px;color:var(--muted);margin:0 0 12px}.threats-cta{text-align:center;margin-top:24px}.sections-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}@media(max-width:900px){.sections-grid{grid-template-columns:1fr}}.section-card{padding:20px;border-radius:16px;background:#ffffff0a;border:1px solid var(--border)}.section-card h2{font-size:16px;margin:0 0 14px;color:var(--text)}.threat-list{list-style:none;margin:0;padding:0}.threat-list li{padding:8px 0;border-bottom:1px solid var(--border2)}.threat-list li:last-child{border-bottom:none}.threat-list a{font-size:14px;text-decoration:none;color:var(--text);transition:color .15s}.threat-list a:hover{color:var(--info)}.threats-header{text-align:center;margin-bottom:32px}.threats-header h1{font-size:28px;margin:0 0 8px}.threats-header p{color:var(--muted);font-size:15px;margin:0}.scanning-state{text-align:center;padding:60px 20px}.spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--info);border-radius:50%;margin:0 auto 24px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scanning-state h2{font-size:20px;margin:0 0 16px}.progress-container{max-width:400px;margin:0 auto 16px;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--info),var(--good));transition:width .3s ease;text-align:center;font-size:10px;line-height:8px;color:transparent}.advisory-item{padding:14px;border-radius:12px;background:#00000029;border:1px solid var(--border2);margin-bottom:10px}.advisory-item:last-child{margin-bottom:0}.advisory-item.critical,.advisory-item.high{border-left:3px solid var(--bad)}.advisory-item.medium{border-left:3px solid var(--warn)}.advisory-item.low{border-left:3px solid var(--info)}.advisory-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.advisory-id{font-family:var(--mono);font-size:12px;padding:3px 8px;border-radius:6px;background:#ffffff0f}.advisory-severity{font-size:10px;padding:3px 8px;border-radius:6px;font-weight:700;text-transform:uppercase}.advisory-title{font-size:14px;font-weight:600;margin-bottom:4px}.advisory-fix{margin-top:8px;font-size:12px;color:var(--good)}.recommendations-section{margin-top:24px}.recommendation-item{display:flex;gap:12px;padding:14px;border-radius:12px;background:#0000001f;border:1px solid var(--border2);margin-bottom:10px}.recommendation-item:last-child{margin-bottom:0}.recommendation-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.recommendation-icon.action{background:#39d98a26}.recommendation-icon.info{background:#64b5ff26}.recommendation-icon.warn{background:#f7c94826}.recommendation-content h4{margin:0 0 4px;font-size:14px}.recommendation-content p{margin:0;font-size:13px;color:var(--muted)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr)}@media(max-width:800px){.summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.summary-grid{grid-template-columns:1fr}}.summary-cell{padding:10px 14px;border-right:1px solid rgba(57,217,138,.08)}.summary-cell:nth-child(4n){border-right:none}@media(max-width:800px){.summary-cell:nth-child(2n){border-right:none}}@media(max-width:480px){.summary-cell{border-right:none}}.summary-cell .label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted2);margin-bottom:2px}.summary-cell .value{font-size:14px;font-weight:700}.summary-cell .value.good{color:var(--good)}.summary-cell .value.warn{color:var(--warn)}.summary-cell .value.bad{color:var(--bad)}.summary-cell .value.muted{color:var(--muted)}.summary-cell .sub{font-size:11px;color:var(--muted);margin-top:2px}.summary-cell .value{display:flex;align-items:center;gap:8px}.expected-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;color:var(--good);background:#39d98a1f;border:1px solid rgba(57,217,138,.25);border-radius:10px;letter-spacing:.02em;white-space:nowrap;line-height:1.4}.typical-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;color:#a6d4ff;background:#64b5ff1f;border:1px solid rgba(100,181,255,.25);border-radius:10px;letter-spacing:.02em;white-space:nowrap;line-height:1.4}.summary-cell .value:has(.expected-badge),.summary-cell .value:has(.typical-badge){color:var(--fg)}.action-card{border-radius:20px;padding:20px;margin-bottom:20px}.action-card .step-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.action-card .step-num{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.action-card h3{margin:0 0 6px;font-size:18px;font-weight:700;border:none;padding:0}.action-card .desc{color:var(--muted);font-size:13px;margin-bottom:14px;line-height:1.5}.action-card.capabilities{background:linear-gradient(135deg,#64b5ff14,#64b5ff05);border:1px solid rgba(100,181,255,.18)}.action-card.capabilities .step-badge{color:var(--info)}.action-card.capabilities .step-num{background:var(--info);color:#0b0f19}.action-card.capabilities h3{color:#a6d4ff}.action-card.analysis{background:linear-gradient(135deg,#39d98a14,#39d98a05);border:1px solid rgba(57,217,138,.18)}.action-card.analysis .step-badge{color:var(--good)}.action-card.analysis .step-num{background:var(--good);color:#0b0f19}.action-card.analysis h3{color:#6ee7a8}.cap-tag-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:16px;padding:10px 14px;background:#ffffff05;border:1px solid var(--border2);border-radius:10px}.cap-tag-legend-item{display:flex;align-items:center;gap:6px}.cap-tag-legend-text{font-size:11px;color:var(--muted)}.cap-list{display:flex;flex-direction:column;gap:14px}.cap-group-label{display:flex;align-items:center;gap:6px;margin-bottom:6px}.cap-group-icon{font-size:14px}.cap-group-name{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.cap-group-items{display:flex;flex-direction:column;gap:4px}.cap-row{padding:8px 12px;border-radius:8px;background:#0000001f;border:1px solid var(--border2);border-left:3px solid var(--border2)}.cap-row.expected{border-left-color:var(--good)}.cap-row.common{border-left-color:var(--info)}.cap-row.warn{border-left-color:var(--warn)}.cap-row.bad{border-left-color:var(--bad)}.cap-row-main{display:flex;align-items:center;justify-content:space-between;gap:8px}.cap-row-name{font-size:13px;font-weight:600}.cap-row-detail{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}.cap-row-source{margin-top:4px;font-size:11px}.capability-tag{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:700;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.capability-tag.expected{background:#39d98a26;color:#aef5d2}.capability-tag.common{background:#64b5ff26;color:#a6d4ff}.capability-tag.warn,.capability-tag.unusual{background:#f7c94826;color:#ffe08a}.capability-tag.bad,.capability-tag.suspicious{background:#ff6b6b26;color:#ffc2c2}.source-link{font-family:var(--mono);font-size:11px;color:var(--muted);text-decoration:none;opacity:.8;transition:opacity .15s,color .15s}.source-link:hover{color:var(--info);opacity:1;text-decoration:underline}.capability-snippet{margin:6px 0;padding:8px 10px;background:#0000004d;border-radius:6px;overflow-x:auto}.capability-snippet code{font-family:var(--mono);font-size:11px;color:var(--text);white-space:pre}.analysis-item{display:flex;gap:12px;align-items:flex-start;padding:12px;background:#00000029;border:1px solid var(--border2);border-radius:12px;margin-bottom:10px;border-left:3px solid var(--good)}.analysis-item:last-child{margin-bottom:0}.analysis-item.warn{border-left-color:var(--warn)}.analysis-item.bad{border-left-color:var(--bad)}.analysis-item .icon{font-size:20px}.analysis-item .content h4{margin:0 0 4px;font-size:14px}.analysis-item .content p{margin:0;font-size:12px;color:var(--muted);line-height:1.5}.ref-header{padding:14px 16px;border-bottom:1px solid var(--border2);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.ref-header h2{margin:0;font-size:14px}.ref-section{padding:14px 16px;border-bottom:1px solid var(--border2)}.ref-section:last-child{border-bottom:none}.ref-section h3{margin:0 0 10px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;border:none;padding:0}.ref-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px}.ref-row .label{color:var(--muted)}.ref-row .value{font-weight:600}.ref-row .value.good{color:var(--good)}.ref-row .value.warn{color:var(--warn)}.ref-row .value.bad{color:var(--bad)}.ver-switcher{position:relative;padding:10px 16px;border-bottom:1px solid var(--border2);background:#0000001f}.ver-switcher-btn{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-family:var(--mono);color:var(--text);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;white-space:nowrap;transition:border-color .15s}.ver-switcher-btn:hover{border-color:var(--muted2)}.ver-switcher-caret{opacity:.6}.ver-latest-badge{font-size:10px;padding:1px 6px;border-radius:4px;background:#39d98a26;color:var(--good);font-weight:600;font-family:var(--sans)}.ver-switcher-dropdown{display:none;position:absolute;top:calc(100% + 2px);left:16px;z-index:100;width:260px;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 30px #0006;overflow:hidden}.ver-switcher.open .ver-switcher-dropdown{display:block}.ver-switcher-header{padding:10px 14px;font-size:12px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.ver-switcher-search{display:block;width:calc(100% - 20px);margin:10px;padding:6px 10px;font-size:12px;font-family:var(--sans);color:var(--text);background:transparent;border:1px solid var(--border);border-radius:6px;outline:none}.ver-switcher-search:focus{border-color:var(--info)}.ver-switcher-search::placeholder{color:var(--muted2)}.ver-switcher-list{list-style:none;margin:0;padding:0;padding-inline-start:0;max-height:260px;overflow-y:auto}.ver-switcher-list li{list-style:none;margin:0;padding:0}.ver-switcher-list li a{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:13px;color:var(--text);text-decoration:none;transition:background .1s}.ver-switcher-list li a:hover{background:#ffffff0f}.ver-check{flex-shrink:0;color:var(--text)}.ver-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:12px}.ver-latest-tag{margin-left:auto;padding:1px 6px;font-size:10px;font-family:var(--sans);color:var(--muted);border:1px solid var(--border);border-radius:10px;flex-shrink:0}.license-good{padding:10px 12px;border-radius:10px;margin-top:8px;font-size:12px;display:flex;gap:8px;align-items:flex-start;background:#39d98a14;border:1px solid rgba(57,217,138,.15);color:#aef5d2}.license-good .icon{font-size:14px}.license-good p{margin:0;line-height:1.4}.no-issues{padding:14px;border-radius:12px;background:#39d98a0f;border:1px solid rgba(57,217,138,.12);text-align:center}.no-issues .icon{font-size:24px;margin-bottom:6px}.no-issues p{margin:0;font-size:13px;color:var(--muted)}.no-issues .highlight{color:var(--good);font-weight:600}.maintainer-item{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border2);font-size:12px}.maintainer-item:last-child{border-bottom:none}.maintainer-item .icon{font-size:16px;width:20px;text-align:center}.maintainer-item .repo-host-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.maintainer-item .repo-host-icon svg{width:14px;height:14px}.maintainer-item .label{color:var(--muted);flex:1}.maintainer-item .value{font-weight:600;min-width:0}.maintainer-item .value.good{color:var(--good)}.maintainer-item .value.bad{color:var(--bad)}.maintainer-item .value.warn{color:var(--warn)}.sidebar-external-link{color:var(--muted);text-decoration:none;font-size:12px;margin-left:4px;opacity:.6;transition:opacity .15s}.sidebar-external-link:hover{opacity:1;color:var(--accent)}.dep-list{margin-top:8px}a.dep-item{display:flex;gap:10px;align-items:center;padding:8px 10px;background:#0000001f;border:1px solid var(--border2);border-radius:8px;margin-bottom:6px;font-size:12px;text-decoration:none;transition:background .15s,border-color .15s}a.dep-item:hover{background:#0003;border-color:var(--info)}a.dep-item:last-of-type{margin-bottom:0}.dep-item .dep-name{font-family:var(--mono);color:var(--text);font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dep-item .dep-version{color:var(--muted);font-family:var(--mono);flex-shrink:0}.dep-item .dep-risk{margin-left:auto;flex-shrink:0;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.dep-item .dep-risk.ok{background:#39d98a33;color:#aef5d2}.dep-item .dep-risk.warn{background:#f7c94833;color:#ffe08a}.dep-item .dep-risk.bad{background:#ff6b6b33;color:#ffc2c2}a.dep-item.dep-hidden{display:none}.dep-list[data-expanded=true] a.dep-item.dep-hidden{display:flex}.dep-expand{width:100%;padding:10px;margin-top:6px;background:#64b5ff14;border:1px solid rgba(100,181,255,.2);border-radius:8px;color:var(--info);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.dep-expand:hover{background:#64b5ff26}.dep-expand .collapse-text,.dep-list[data-expanded=true] .dep-expand .expand-text{display:none}.dep-list[data-expanded=true] .dep-expand .collapse-text{display:inline}.vuln-list{margin-top:8px}.vuln-item{display:block;text-decoration:none;padding:10px;background:#0000001f;border:1px solid var(--border2);border-radius:8px;margin-bottom:6px;border-left:3px solid var(--warn)}.vuln-item:last-child{margin-bottom:0}.vuln-item.critical,.vuln-item.high{border-left-color:var(--bad)}.vuln-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.vuln-id{font-family:var(--mono);font-size:12px;font-weight:600}.vuln-severity{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:600;text-transform:uppercase}.vuln-severity.critical,.vuln-severity.high{background:#ff6b6b26;color:#ffc2c2}.vuln-severity.medium{background:#f7c94826;color:#ffe08a}.vuln-severity.low{background:#64b5ff26;color:#a6d4ff}.vuln-title{font-size:12px;color:var(--muted)}.vuln-fix{font-size:11px;color:var(--good);margin-top:4px}.vuln-source{font-size:11px;color:var(--muted);margin-top:3px}.cta-card{border:1px solid rgba(57,217,138,.2);border-radius:0 0 16px 16px;background:linear-gradient(135deg,#39d98a14,#64b5ff0a);padding:16px;margin-bottom:20px;display:flex;gap:14px;align-items:flex-start}.cta-card .cta-icon{font-size:24px;flex-shrink:0}.cta-card h4{margin:0 0 4px;font-size:14px}.cta-card p{margin:0;font-size:12.5px;color:var(--muted)}.cta-card .cta-actions{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.section-mobile{display:none}@media(max-width:768px){.section-mobile{display:block}.section-desktop{display:none}.action-card{border-radius:14px;padding:0;margin-bottom:12px;overflow:hidden}.action-card .card-header{padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer}.action-card .card-header .step-badge{margin-bottom:0}.action-card .card-body{display:none;padding:0 16px 16px}.action-card.open .card-body{display:block}.action-card .toggle{margin-left:auto;font-size:18px;color:var(--muted);transition:transform .2s}.action-card.open .toggle{transform:rotate(180deg)}}@media(min-width:769px){.section-desktop{display:block}.action-card .card-header{display:none}}.summary-grid-3{grid-template-columns:repeat(3,1fr)}@media(max-width:800px){.summary-grid-3{grid-template-columns:1fr}}.settings-panel{display:none;margin-bottom:16px;border:1px solid var(--border);border-radius:14px;padding:14px;background:#0000001f}.settings-panel.open{display:block}.settings-section{margin-bottom:10px}.settings-section:last-child{margin-bottom:0}.settings-label{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:8px}.settings-tabs{display:flex;gap:8px;flex-wrap:wrap}.settings-tab{border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--text);padding:8px 12px;border-radius:10px;cursor:pointer;font-size:13px}.settings-tab.active{background:#64b5ff1a;border-color:#64b5ff47}.action-card.prevent{background:linear-gradient(135deg,#39d98a1f,#39d98a0a);border:1px solid rgba(57,217,138,.25)}.action-card.prevent .step-badge{color:var(--good)}.action-card.prevent .step-num{background:var(--good);color:#0b0f19}.action-card.prevent h3{color:#6ee7a8}.action-card.detect{background:linear-gradient(135deg,#64b5ff1a,#64b5ff08);border:1px solid rgba(100,181,255,.2)}.action-card.detect .step-badge{color:var(--info)}.action-card.detect .step-num{background:var(--info);color:#0b0f19}.action-card.detect h3{color:#a6d4ff}.action-card.audit{background:linear-gradient(135deg,#f7c94814,#f7c94805);border:1px solid rgba(247,201,72,.18)}.action-card.audit .step-badge{color:var(--warn)}.action-card.audit .step-num{background:var(--warn);color:#0b0f19}.action-card.audit h3{color:#ffe08a}.action-card.attack{background:linear-gradient(135deg,#ff6b6b14,#ff6b6b05);border:1px solid rgba(255,107,107,.18)}.action-card.attack .step-badge{color:var(--bad)}.action-card.attack .step-num{background:var(--bad);color:#0b0f19}.action-card.attack h3{color:#ffc2c2}.action-card.logs{background:linear-gradient(135deg,#8a2be214,#8a2be205);border:1px solid rgba(138,43,226,.18)}.action-card.logs .step-badge{color:#d8b4fe}.action-card.logs .step-num{background:#a855f7;color:#0b0f19}.action-card.logs h3{color:#d8b4fe}.action-card.expert{background:linear-gradient(135deg,#22c55e0f,#3b82f60f);border:1px solid rgba(255,255,255,.12)}.action-card.expert .step-badge{color:var(--text)}.action-card.expert .step-num{background:var(--text);color:#0b0f19}.action-card.patch{background:linear-gradient(135deg,#39d98a1f,#39d98a0a);border:1px solid rgba(57,217,138,.25)}.action-card.patch .step-badge{color:var(--good)}.action-card.patch .step-num{background:var(--good);color:#0b0f19}.action-card.patch h3{color:#6ee7a8}.action-card.verify{background:linear-gradient(135deg,#64b5ff1a,#64b5ff08);border:1px solid rgba(100,181,255,.2)}.action-card.verify .step-badge{color:var(--info)}.action-card.verify .step-num{background:var(--info);color:#0b0f19}.action-card.verify h3{color:#a6d4ff}.action-card.hunt{background:linear-gradient(135deg,#f7c94814,#f7c94805);border:1px solid rgba(247,201,72,.18)}.action-card.hunt .step-badge{color:var(--warn)}.action-card.hunt .step-num{background:var(--warn);color:#0b0f19}.action-card.hunt h3{color:#ffe08a}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tab{border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--text);padding:8px 12px;border-radius:12px;cursor:pointer;font-size:13px;user-select:none}.tab.active{background:#64b5ff1a;border-color:#64b5ff47}.tab-content{display:none}.tab-content.active{display:block}.note-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}@media(max-width:800px){.note-grid{grid-template-columns:1fr}}.note{border:1px solid rgba(255,255,255,.1);background:#00000029;border-radius:14px;padding:12px}.note b{font-weight:850;font-size:14px}.note .sub{margin-top:6px;color:var(--muted);font-size:12.8px;line-height:1.5}.note code{font-family:var(--mono);font-size:11px;background:#0000004d;padding:2px 5px;border-radius:4px;color:#e6e9f2e6}.attack-pattern{border:1px solid var(--border2);background:#00000029;border-radius:14px;padding:14px;border-left:3px solid var(--bad);margin-bottom:12px}.attack-pattern:last-child{margin-bottom:0}.attack-pattern b{display:block;margin-bottom:8px;font-size:14px}.attack-pattern code{display:block;font-family:var(--mono);font-size:12px;color:var(--bad);margin-bottom:8px;line-height:1.6;white-space:pre-wrap;word-break:break-all}.attack-pattern .goal{font-size:12px;color:var(--muted)}.attack-pattern.warn{border-left-color:var(--warn)}.attack-pattern.warn code{color:var(--warn)}.attack-pattern.info{border-left-color:var(--info)}.attack-pattern.info code{color:var(--info)}.attack-pattern.muted{border-left-color:var(--muted)}.attack-pattern.muted code{color:var(--muted)}.log-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}@media(max-width:800px){.log-grid{grid-template-columns:1fr}}.log-box{background:#00000029;border:1px solid var(--border2);border-radius:14px;padding:14px}.log-box h4{font-size:13px;margin:0 0 10px}.log-box h4.bad{color:var(--bad)}.log-box h4.warn{color:var(--warn)}.log-box ul{margin:0;padding-left:18px;font-size:12px;color:var(--muted);line-height:1.7}.expert-grid{display:grid;gap:14px}.expert-step{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:14px;background:#00000029;border:1px solid var(--border2)}.expert-step .num{font-size:24px}.expert-step h4{margin:0 0 4px;font-size:14px;font-weight:700}.expert-step p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.blind-spots{margin-top:16px;padding:14px;border-radius:14px;background:linear-gradient(135deg,rgba(247,201,72,.08),transparent);border:1px solid rgba(247,201,72,.15)}.blind-spots h4{font-size:13px;font-weight:700;color:var(--warn);margin:0 0 8px}.blind-spots-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;color:var(--muted)}@media(max-width:800px){.blind-spots-grid{grid-template-columns:1fr}}.shoulder-detect-card{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#39d98a1a,#64b5ff0f);border:1px solid rgba(57,217,138,.2);margin-bottom:20px;flex-wrap:wrap;gap:10px}.shoulder-badge{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--good)}.shoulder-stats{display:flex;gap:16px;font-size:13px;color:var(--muted)}.related{margin-top:16px;border:1px solid var(--border2);border-radius:14px;background:#0000001f;overflow:hidden}.related-header{padding:10px 14px;border-bottom:1px solid var(--border2);font-size:12px;font-weight:700;color:var(--muted);background:#ffffff05}.related-item{padding:10px 14px;border-bottom:1px solid var(--border2);display:flex;gap:10px;align-items:center;font-size:13px;cursor:pointer;transition:background .15s;text-decoration:none}.related-item:last-child{border-bottom:none}.related-item:hover{background:#ffffff08}.related-item .rel-name{font-weight:700;color:var(--text);flex:1}.related-item .rel-reason{font-size:11px;color:var(--muted)}.breaches-list{font-size:12px;color:var(--muted);line-height:1.7}.breaches-list div{padding:4px 0;border-bottom:1px solid var(--border2)}.breaches-list div:last-child{border-bottom:none}.ref-badges{display:flex;flex-wrap:wrap;gap:6px}.exploit-card{border:1px solid rgba(255,107,107,.2);border-radius:16px;background:linear-gradient(135deg,rgba(255,107,107,.06),transparent);padding:16px;margin-bottom:20px}.exploit-card h3{margin:0 0 12px;font-size:14px;color:var(--text)}.exploit-factors{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media(max-width:900px){.exploit-factors{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.exploit-factors{grid-template-columns:1fr 1fr;gap:8px}}.factor{text-align:center;padding:12px 8px;border-radius:12px;background:#0003;border:1px solid var(--border2)}.factor .icon{font-size:20px;margin-bottom:6px}.factor .name{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.factor .val{font-size:13px;font-weight:700;margin-top:4px}.factor .val.bad{color:var(--bad)}.factor .val.good{color:var(--good)}.factor .val.warn{color:var(--warn)}.exploit-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:#0003;font-size:12.5px;color:var(--muted);border-left:3px solid var(--bad)}.exploit-note b{color:var(--text)}.signals-card{border:1px solid rgba(255,107,107,.2);border-radius:16px;background:linear-gradient(135deg,rgba(255,107,107,.06),transparent);padding:16px;margin-bottom:20px}.signals-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.signals-header h3{margin:0;font-size:14px;display:flex;align-items:center;gap:8px}.live-dot{width:8px;height:8px;background:var(--bad);border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.signals-header .source{font-size:11px;color:var(--muted)}.signals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media(max-width:900px){.signals-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.signals-grid{grid-template-columns:1fr 1fr;gap:8px}}.signal{text-align:center;padding:12px 8px;border-radius:12px;background:#0003;border:1px solid var(--border2)}.signal .num{font-size:18px;font-weight:800;color:var(--bad)}.signal .lbl{font-size:11px;color:var(--muted);margin-top:2px}.patch-cmd{background:#0000004d;border:1px solid var(--border2);border-radius:12px;padding:14px;font-family:var(--mono);font-size:14px;margin-bottom:12px;overflow-x:auto;word-break:break-word}@media(max-width:480px){.patch-cmd{font-size:12px;padding:12px}}.patch-btn{width:100%;padding:14px;border:none;border-radius:12px;background:var(--good);color:#0b0f19;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.patch-btn:active{transform:scale(.98)}.patch-meta{margin-top:10px;font-size:12px;color:var(--muted);text-align:center}.waf-warning{margin-top:14px;background:#f7c9481a;border-left:3px solid var(--warn);padding:10px 12px;border-radius:0 10px 10px 0;font-size:12px;color:var(--muted)}.hunt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}@media(max-width:800px){.hunt-grid{grid-template-columns:repeat(2,1fr)}}.hunt-item{background:#0003;border:1px solid var(--border2);border-radius:12px;padding:12px;text-align:center}.hunt-item b{font-size:13px;display:block;margin-bottom:4px}.hunt-item span{font-size:11px;color:var(--muted)}.cvss-breakdown{margin-top:16px;padding:14px;border-radius:14px;background:linear-gradient(135deg,rgba(255,107,107,.08),transparent);border:1px solid rgba(255,107,107,.15)}.cvss-breakdown h4{font-size:13px;font-weight:700;color:var(--bad);margin:0 0 8px}.cvss-breakdown p{font-size:12px;color:var(--muted);margin:0;line-height:1.6}.feed-header{padding:14px 16px;border-bottom:1px solid var(--border2);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.feed-header h2{margin:0;font-size:14px;display:flex;align-items:center;gap:8px}.feed-header .time{font-size:11px;color:var(--muted2)}.feed-list{max-height:500px;overflow-y:auto}.feed-item{padding:14px 16px;border-bottom:1px solid var(--border2)}.feed-item:last-child{border-bottom:none}.feed-item-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px}.feed-item-type{font-size:9px;padding:3px 8px;border-radius:4px;font-weight:700;text-transform:uppercase}.feed-item-type.intel{background:#ff6b6b26;color:#ffa3a3}.feed-item-type.patch{background:#39d98a26;color:#6ee7a8}.feed-item-type.vendor{background:#f7c94826;color:#ffe08a}.feed-item-time{font-size:11px;color:var(--muted2)}.feed-item-new{width:6px;height:6px;background:var(--bad);border-radius:50%;margin-left:auto}.feed-item-title{font-size:14px;font-weight:600}.feed-item-body{font-size:13px;color:var(--muted);margin-top:2px}.context-pkg{font-size:14px;font-weight:700;color:var(--info);font-family:var(--mono, monospace)}.context-range{font-size:12px;padding:2px 8px;border-radius:4px;font-family:var(--mono, monospace)}.context-range.bad{background:#ff6b6b1f;color:var(--bad)}.context-fix{font-size:12px;padding:2px 8px;border-radius:4px;font-family:var(--mono, monospace)}.context-fix.good{background:#39d98a1f;color:var(--good)}.context-change{font-size:12px;color:var(--info);cursor:pointer;text-decoration:underline}.modal{display:none;position:fixed;inset:0;background:#000000b3;z-index:1000;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{background:#1a1f2e;border-radius:12px;max-width:400px;width:90%;border:1px solid var(--border)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:16px;font-weight:600}.modal-close{background:none;border:none;color:var(--muted);font-size:24px;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text)}.modal-body{padding:20px}.modal-desc{font-size:13px;color:var(--muted);margin:0 0 16px}.stack-options{display:flex;flex-direction:column;gap:8px}.stack-option{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff08;border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;transition:all .15s ease}.stack-option:hover{background:#ffffff0f;border-color:var(--info)}.stack-name{font-weight:600}.stack-detail{font-size:12px;color:var(--muted)}.stats-banner{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:32px 0;padding:24px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius)}.stat-item{text-align:center}.stat-value{font-size:32px;font-weight:700;background:linear-gradient(135deg,var(--info),var(--good));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.stat-label{font-size:12px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}@media(max-width:640px){.stats-banner{grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}.stat-value{font-size:24px}}.threat-list .rule-count{font-size:11px;color:var(--muted2);margin-left:8px;opacity:.8}.threat-list li a{display:flex;align-items:center;justify-content:space-between}.frameworks-section{margin:40px 0}.frameworks-section h2{margin:0 0 8px;font-size:18px}.section-desc{color:var(--muted);font-size:13px;margin:0 0 20px}.frameworks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.framework-card{padding:16px;background:#ffffff08;border:1px solid var(--border);border-radius:12px;transition:all .15s ease}.framework-card:hover{background:#ffffff0d;border-color:#64b5ff4d}.framework-name{font-weight:600;font-size:14px;margin-bottom:4px}.framework-runtime{font-size:11px;color:var(--muted2);text-transform:uppercase;letter-spacing:.3px}.framework-rules{font-size:12px;color:var(--good);margin-top:8px}.languages-section{margin:40px 0}.languages-section h2{margin:0 0 16px;font-size:18px}.languages-grid{display:flex;flex-wrap:wrap;gap:10px}.language-tag{padding:8px 14px;background:#64b5ff14;border:1px solid rgba(100,181,255,.2);border-radius:8px;font-size:13px;font-weight:500;color:var(--info)}.detection-rules-section{margin:24px 0}.detection-rules-section h3{margin:0 0 16px;font-size:16px;display:flex;align-items:center;gap:8px}.detection-rules-section h3 .count{font-size:12px;color:var(--muted);font-weight:400}.rules-by-language{display:flex;flex-direction:column;gap:16px}.language-rules-group{background:#ffffff05;border:1px solid var(--border);border-radius:12px;overflow:hidden}.language-rules-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#ffffff08;border-bottom:1px solid var(--border);cursor:pointer}.language-rules-header:hover{background:#ffffff0d}.language-rules-header .lang-name{font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px}.language-rules-header .lang-name .icon{font-size:16px}.language-rules-body{padding:0}.rule-item{padding:14px 16px;border-bottom:1px solid var(--border2);transition:background .15s}.rule-item:hover{background:#ffffff05}.rule-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.rule-name{font-weight:600;font-size:13px;color:var(--text)}.rule-severity{font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.rule-severity.CRITICAL{background:#ff6b6b26;color:var(--bad)}.rule-severity.HIGH{background:#f7c94826;color:var(--warn)}.rule-severity.MEDIUM{background:#64b5ff26;color:var(--info)}.rule-severity.LOW{background:#ffffff14;color:var(--muted)}.rule-description{font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:10px}.rule-remediation{margin-top:12px}.rule-remediation-toggle{font-size:12px;color:var(--info);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.rule-remediation-toggle:hover{text-decoration:underline}.rule-remediation-code{margin-top:10px;padding:12px;background:#0000004d;border-radius:8px;font-family:var(--mono);font-size:11px;line-height:1.6;overflow-x:auto;white-space:pre-wrap;color:var(--muted)}.rule-remediation-code.hidden{display:none}.rule-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.rule-meta-item{font-size:11px;color:var(--muted2);display:flex;align-items:center;gap:4px}.rule-meta-item a{color:var(--info);text-decoration:none}.rule-meta-item a:hover{text-decoration:underline}.shoulder-detect-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px;margin-top:16px;background:linear-gradient(135deg,#39d98a14,#64b5ff0d);border:1px solid rgba(57,217,138,.2);border-radius:12px}.shoulder-badge{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--good)}.shoulder-badge .icon{font-size:20px}.shoulder-stats{display:flex;gap:16px}.shoulder-stats .stat{font-size:13px;color:var(--muted)}.shoulder-stats .stat strong{color:var(--text)}.cwe-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;margin:10px 0 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:linear-gradient(145deg,#ffffff0d,#ffffff05);box-shadow:0 4px 20px #0003;flex-wrap:wrap}.cwe-header-main{display:flex;align-items:center;gap:12px;min-width:0}.cwe-header-icon{font-size:28px;flex-shrink:0}.cwe-header-title h1{font-size:20px;font-weight:800;margin:0;letter-spacing:-.3px;white-space:nowrap}.cwe-header-note{font-size:12px;color:var(--muted);display:block;margin-top:2px}.cwe-header-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cwe-header-controls .fw-current{padding:6px 10px;font-size:13px}.cwe-header-controls .fw-dropdown{min-width:180px}.cwe-header-detect{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;color:var(--good);background:#39d98a1a;border:1px solid rgba(57,217,138,.2);border-radius:8px;white-space:nowrap}.cwe-header-detect strong{color:#fff}.cwe-header-detect-icon{font-size:15px}@media(max-width:768px){.cwe-header{flex-direction:column;align-items:flex-start;padding:12px 16px;gap:12px}.cwe-header-title h1{font-size:17px}.cwe-header-controls{width:100%}}.context-bar{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding:20px 24px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:linear-gradient(145deg,#ffffff0f,#ffffff05);box-shadow:0 10px 40px #00000040,inset 0 1px #ffffff14;margin:10px 0 12px}.context-icon{font-size:36px;background:linear-gradient(145deg,#1a2332,#0d1117);padding:12px;border-radius:14px;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 12px #0003}.context-main{flex:1;min-width:200px}.context-title{font-size:24px;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,#fff,#c4cad9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.context-meta{display:flex;align-items:center;gap:12px;margin-top:6px;flex-wrap:wrap}.context-stack{font-size:14px;font-weight:600;padding:6px 12px;background:linear-gradient(135deg,#64b5ff26,#39d98a1a);border:1px solid rgba(100,181,255,.2);border-radius:8px;color:#64b5ff}.context-note{font-size:13px;color:var(--muted)}.context-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media(max-width:640px){.context-bar{padding:16px;gap:12px;border-radius:14px}.context-icon{font-size:28px;padding:10px;border-radius:12px}.context-title{font-size:20px}.context-meta{gap:8px}.context-stack{font-size:12px;padding:5px 10px}.context-main{min-width:0;flex:1}.context-badges{margin-top:8px;width:100%}.context-badges .badge{font-size:10px;padding:4px 8px}}.stack-selector{display:flex;gap:28px;flex-wrap:wrap;padding:18px 22px;margin-bottom:16px;background:linear-gradient(145deg,#1a2332,#151c28);border:1px solid rgba(100,181,255,.15);border-radius:14px;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff0d}.selector-group{display:flex;flex-direction:column;gap:10px}.selector-label{font-size:12px;font-weight:700;color:#e6e9f2;text-transform:uppercase;letter-spacing:1px;padding-left:2px;display:flex;align-items:center;gap:6px}.selector-label:before{content:"";width:3px;height:12px;background:linear-gradient(180deg,#64b5ff,#39d98a);border-radius:2px}.selector-tabs{display:flex;gap:10px;flex-wrap:wrap}.selector-tab{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;font-size:14px;font-weight:600;color:#c4cad9;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:10px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.selector-tab:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#64b5ff1a,#39d98a1a);opacity:0;transition:opacity .2s}.selector-tab:hover{color:#fff;background:#ffffff1a;border-color:#64b5ff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.selector-tab:hover:before{opacity:1}.selector-tab:focus-visible{outline:2px solid #64b5ff;outline-offset:2px}.selector-tab.active{color:#0f1419;background:linear-gradient(135deg,#64b5ff,#39d98a);border-color:transparent;box-shadow:0 4px 16px #64b5ff66,0 2px 8px #39d98a4d;transform:translateY(-1px)}.selector-tab.active:before{display:none}.selector-tab.active .selector-icon{filter:brightness(0) saturate(100%)}.selector-count{font-size:11px;font-weight:500;color:var(--good);background:#39d98a1a;padding:1px 6px;border-radius:8px;margin-left:2px}.selector-tab.active .selector-count{color:inherit;background:#00000026}.selector-icon{font-size:18px;line-height:1;flex-shrink:0}@media(max-width:768px){.stack-selector{padding:14px 16px;gap:18px;border-radius:12px}.selector-group{width:100%}.selector-label{font-size:11px}.selector-tabs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.selector-tab{padding:10px 14px;font-size:13px;justify-content:center;border-radius:8px}.selector-icon{font-size:16px}}.tab-icon{font-size:14px;margin-right:2px}.ref-links{display:flex;flex-direction:column;gap:8px}.ref-link{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:13px;color:var(--text);background:#ffffff0a;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:all .15s}.ref-link:hover{background:#ffffff14}.ref-link .external{color:var(--muted);font-size:12px}.detection-rules-section{margin-top:20px}.detection-rules-section h4{font-size:14px;font-weight:700;margin:0 0 12px;color:var(--text)}.detection-rules-section h4 .count{font-weight:400;color:var(--muted)}.rules-by-language{display:grid;gap:12px}.language-rules-group{border:1px solid var(--border);border-radius:10px;background:#0003;overflow:hidden}.language-rules-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;cursor:pointer;background:#ffffff05;border-bottom:1px solid var(--border2);transition:background .15s}.language-rules-header:hover{background:#ffffff0a}.language-rules-header .lang-name{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text)}.language-rules-header .icon{font-size:16px}.language-rules-header .rule-count{font-size:12px;color:var(--muted)}.language-rules-header.collapsed+.language-rules-body{display:none}.language-rules-body{max-height:400px;overflow-y:auto}.rule-item{display:block;padding:12px 14px;border-bottom:1px solid var(--border2);text-decoration:none;transition:background .15s}.rule-item:last-child{border-bottom:none}.rule-item:hover{background:#ffffff08}.rule-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.rule-item .rule-name{font-size:13px;font-weight:600;color:var(--text)}.rule-item .rule-severity{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase}.rule-item .rule-severity.CRITICAL{background:#ff6b6b33;color:var(--bad)}.rule-item .rule-severity.HIGH{background:#f7c94833;color:var(--warn)}.rule-item .rule-severity.MEDIUM{background:#64b5ff33;color:var(--info)}.rule-item .rule-severity.LOW{background:#ffffff1a;color:var(--muted)}.rule-item .rule-description{font-size:12px;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cwe-hero{background:linear-gradient(180deg,rgba(100,181,255,.06) 0%,transparent 100%);border-radius:20px;margin:-16px -16px 32px;padding:48px 16px 40px}.cwe-search-section{margin-bottom:40px}.cwe-search-wrapper{max-width:600px;margin:0 auto}.cwe-search-input{width:100%;padding:14px 20px;font-size:15px;color:var(--text);background:#ffffff0f;border:1px solid var(--border);border-radius:12px;outline:none;transition:all .2s}.cwe-search-input:focus{border-color:var(--info);box-shadow:0 0 0 3px #64b5ff26}.cwe-search-input::placeholder{color:var(--muted2)}.top-cwes-section{margin-bottom:48px}.top-cwes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.top-cwe-card{display:flex;align-items:center;gap:14px;padding:16px;background:#ffffff0a;border:1px solid var(--border);border-radius:12px;text-decoration:none;transition:all .15s}.top-cwe-card:hover{background:#ffffff14;border-color:var(--info);transform:translate(4px)}.top-cwe-rank{font-size:14px;font-weight:800;color:var(--muted2);min-width:24px}.top-cwe-icon{font-size:24px}.top-cwe-content{flex:1;min-width:0}.top-cwe-id{font-size:11px;font-weight:700;color:var(--info)}.top-cwe-name{margin:2px 0 0;font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-cwe-stats{text-align:right}.top-cwe-rules{font-size:12px;color:var(--good);font-weight:600}.top-cwe-bar{width:60px;height:4px;background:#ffffff1a;border-radius:2px;margin-top:6px;overflow:hidden}.top-cwe-fill{height:100%;background:var(--good);border-radius:2px}.cwe-categories-section{margin-bottom:48px}.cwe-categories{display:flex;flex-direction:column;gap:24px}.cwe-category{padding:20px;background:#ffffff08;border:1px solid var(--border);border-radius:14px}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border2)}.category-name{margin:0;font-size:16px;font-weight:700;color:var(--text)}.category-count{font-size:12px;color:var(--muted)}.category-cwes{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.cwe-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffff08;border:1px solid transparent;border-radius:8px;text-decoration:none;transition:all .15s}.cwe-item:hover{background:#ffffff0f;border-color:var(--border)}.cwe-item-icon{font-size:16px}.cwe-item-id{font-size:11px;font-weight:700;color:var(--info);min-width:60px}.cwe-item-name{flex:1;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwe-item-rules{font-size:11px;color:var(--good);font-weight:600}.cwe-lang-badges{display:flex;gap:2px;margin-top:4px}.cwe-lang-badge{font-size:12px;line-height:1}.cwe-item-langs{display:flex;gap:2px;font-size:11px;line-height:1;flex-shrink:0}.cwe-lang-dot{font-size:11px;line-height:1;cursor:default}.related-section{margin-bottom:32px}.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.related-card{position:relative;padding:20px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px;text-decoration:none;transition:all .15s}.related-card:hover{background:#ffffff14;transform:translateY(-2px)}.related-card.external{border-style:dashed}.related-icon{font-size:28px;display:block;margin-bottom:12px}.related-card h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--text)}.related-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.5}.external-badge{position:absolute;top:12px;right:12px;font-size:10px;font-weight:600;color:var(--muted2);padding:2px 6px;background:#ffffff0f;border-radius:4px}.owasp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;flex-wrap:wrap}.owasp-header h1{margin:0 0 12px;font-size:28px;font-weight:800}.version-badge{font-size:16px;padding:4px 10px;background:linear-gradient(135deg,#64b5ff,#39d98a);color:#0b0f19;border-radius:6px;font-weight:700;vertical-align:middle}.owasp-intro{color:var(--muted);font-size:15px;line-height:1.6;max-width:600px;margin:0}.version-selector{display:flex;align-items:center;gap:8px;margin-top:16px}.version-label{font-size:12px;color:var(--muted)}.version-tab{padding:6px 12px;font-size:13px;font-weight:600;color:var(--muted);background:#ffffff0d;border:1px solid var(--border);border-radius:6px;text-decoration:none;transition:all .15s}.version-tab:hover{color:var(--text);background:#ffffff1a}.version-tab.active{color:#0b0f19;background:linear-gradient(135deg,#64b5ff,#39d98a);border-color:transparent}.owasp-stats{display:flex;gap:16px}.stat-card{text-align:center;padding:16px 24px;background:#ffffff0a;border:1px solid var(--border);border-radius:12px}.stat-value{display:block;font-size:28px;font-weight:800;color:var(--text)}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.owasp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;margin-bottom:32px}.owasp-card{display:flex;flex-direction:column;padding:20px;background:linear-gradient(145deg,#ffffff0f,#ffffff05);border:1px solid var(--border);border-left:4px solid var(--cat-color);border-radius:14px;text-decoration:none;transition:all .2s}.owasp-card:hover{background:linear-gradient(145deg,#ffffff14,#ffffff0a);transform:translateY(-2px);box-shadow:0 8px 24px #0003}.owasp-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.owasp-rank{font-size:14px;font-weight:800;color:var(--cat-color)}.owasp-icon{font-size:24px}.owasp-card-body{flex:1}.owasp-card h2{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--text)}.owasp-desc{margin:0;font-size:13px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.owasp-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--border2)}.owasp-meta{display:flex;gap:16px}.meta-item{text-align:center}.meta-value{display:block;font-size:16px;font-weight:700;color:var(--muted)}.meta-item.has-rules .meta-value{color:var(--good)}.meta-item.critical .meta-value{color:var(--bad)}.meta-label{font-size:10px;color:var(--muted2);text-transform:uppercase}.owasp-arrow{font-size:18px;color:var(--muted);transition:transform .15s}.owasp-card:hover .owasp-arrow{transform:translate(4px);color:var(--text)}.owasp-cta{padding:24px;background:linear-gradient(135deg,#64b5ff1a,#39d98a0d);border:1px solid rgba(100,181,255,.2);border-radius:16px}.owasp-cta h3{margin:0 0 8px;font-size:18px}.owasp-cta p{margin:0 0 16px;color:var(--muted);font-size:14px}.cta-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cta-command{padding:10px 16px;background:#0000004d;border:1px solid var(--border);border-radius:8px;font-family:var(--mono);font-size:14px;color:var(--good)}@media(max-width:768px){.owasp-header{flex-direction:column}.owasp-stats{width:100%;justify-content:center}.owasp-grid{grid-template-columns:1fr}.owasp-card h2{font-size:15px}}.category-header{display:flex;gap:20px;padding:24px;background:linear-gradient(145deg,#ffffff0f,#ffffff05);border:1px solid var(--border);border-left:5px solid var(--cat-color);border-radius:16px;margin-bottom:24px}.category-icon{font-size:48px;padding:16px;background:#0003;border-radius:16px;height:fit-content}.category-info{flex:1}.category-badges{display:flex;gap:8px;margin-bottom:8px}.rank-badge{font-size:14px;font-weight:800;color:var(--cat-color)}.id-badge{font-size:12px;padding:3px 8px;background:#ffffff1a;border-radius:4px;color:var(--muted)}.category-header h1{margin:0 0 12px;font-size:26px;font-weight:800}.category-desc{margin:0;color:var(--muted);font-size:15px;line-height:1.6}.content-section{background:linear-gradient(145deg,#ffffff0d,#ffffff05);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:20px}.content-section h2{margin:0 0 12px;font-size:18px;font-weight:700}.content-section h2 .count{font-weight:400;color:var(--muted);font-size:14px}.section-intro{color:var(--muted);font-size:14px;margin:0 0 16px}.attack-section{border-left:3px solid var(--warn)}.attack-scenarios{display:grid;gap:12px}.attack-card{padding:14px;background:#0003;border:1px solid var(--border2);border-radius:10px}.attack-card h3{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text)}.attack-desc{margin:0 0 12px;font-size:13px;color:var(--muted);line-height:1.5}.attack-indicator{padding:10px 12px;background:#64b5ff1a;border:1px solid rgba(100,181,255,.2);border-radius:8px}.indicator-label{display:block;font-size:10px;font-weight:700;color:var(--info);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.indicator-text{font-size:12px;color:var(--text);font-family:var(--mono)}.prevent-section{border-left:3px solid var(--good)}.prevent-list{margin:0;padding-left:20px;color:var(--text);font-size:14px;line-height:1.7}.prevent-list li{margin-bottom:8px}.cwe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.cwe-card{display:block;padding:14px;background:#0003;border:1px solid var(--border2);border-radius:10px;text-decoration:none;transition:all .15s}.cwe-card:hover{background:#0000004d;border-color:var(--border)}.cwe-card.has-rules{border-left:3px solid var(--good)}.cwe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.cwe-id{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--info)}.cwe-stats{display:flex;gap:8px}.cwe-stat{font-size:10px;padding:2px 6px;border-radius:4px;background:#ffffff1a;color:var(--muted)}.cwe-stat.rules{background:#39d98a26;color:var(--good)}.cwe-stat.critical{background:#ff6b6b26;color:var(--bad)}.cwe-name{font-size:13px;font-weight:600;color:var(--text);line-height:1.4;margin-bottom:4px}.cwe-langs{font-size:11px;color:var(--muted)}.cwe-list{display:flex;flex-direction:column;gap:6px}.cwe-list .cwe-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#ffffff08;border:1px solid var(--border2);border-radius:8px;text-decoration:none;transition:all .15s}.cwe-list .cwe-item:hover{background:#ffffff0f;border-color:var(--border)}.cwe-list .cwe-header{display:flex;flex-direction:column;gap:2px;min-width:80px;margin-bottom:0}.cwe-list .cwe-id{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--info)}.cwe-count{font-size:11px;color:var(--good);font-weight:600}.cwe-list .cwe-name{flex:1;font-size:13px;font-weight:500;color:var(--text);margin-bottom:0}.cwe-list .cwe-severity{flex-shrink:0}.cwe-list-compact{display:flex;flex-wrap:wrap;gap:8px}.cwe-item-compact{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#ffffff0a;border:1px solid var(--border2);border-radius:6px;font-size:12px;color:var(--muted);text-decoration:none;transition:all .15s}.cwe-item-compact:hover{background:#ffffff14;color:var(--text)}.cwe-item-compact .cwe-id{color:var(--info)}.cwe-item-compact .cwe-name{color:var(--muted);font-size:11px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-card{position:sticky;top:80px}.scan-command{display:flex;gap:8px;align-items:center}.scan-command code{flex:1;padding:10px 12px;background:#0000004d;border:1px solid var(--border2);border-radius:6px;font-family:var(--mono);font-size:12px;color:var(--good)}.copy-btn{padding:10px 12px;background:#ffffff0f;border:1px solid var(--border);border-radius:6px;color:var(--muted);font-size:11px;cursor:pointer;transition:all .15s}.copy-btn:hover{background:#ffffff1a;color:var(--text)}@media(max-width:768px){.category-header{flex-direction:column;align-items:flex-start}.category-icon{font-size:36px;padding:12px}.category-header h1{font-size:20px}.cwe-grid{grid-template-columns:1fr}.sticky-card{position:static}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.lang-cards-nav{margin:16px 0;padding:0}.lang-cards{display:flex;gap:10px;flex-wrap:wrap}.lang-card{display:flex;align-items:center;gap:10px;padding:12px 18px;font-size:14px;font-weight:600;color:#c4cad9;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:10px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.lang-card:hover{color:#fff;background:#ffffff1a;border-color:#64b5ff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.lang-card-icon{font-size:18px;line-height:1;flex-shrink:0}.lang-card-name{white-space:nowrap}.lang-card-count{font-size:11px;font-weight:500;color:var(--good);background:#39d98a1a;padding:2px 8px;border-radius:10px;white-space:nowrap}.lang-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border2);scroll-margin-top:80px}.lang-section:first-child{margin-top:16px;padding-top:0;border-top:none}.lang-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}.lang-section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--text)}.lang-section-icon{font-size:20px}.lang-section-link{font-size:13px;font-weight:600;color:var(--accent);text-decoration:none;transition:color .15s}.lang-section-link:hover{color:var(--good)}.lang-section-highlight{animation:lang-section-flash 1.5s ease-out}@keyframes lang-section-flash{0%{background:#64b5ff1a;border-radius:8px}to{background:transparent}}.selector-tab.overview-link{font-size:12px;padding:8px 14px;opacity:.7}.selector-tab.overview-link:hover{opacity:1}@media(max-width:768px){.lang-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.lang-card{padding:10px 14px;font-size:13px;justify-content:center}.lang-section-header{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.lang-card{transition:none;transform:none!important}.lang-section-highlight{animation:none}}@media print{.lang-cards-nav{display:none}}@media(prefers-contrast:high){.lang-card{border:2px solid #ffffff;color:#fff}.lang-card:hover{background:#fff;color:#000}}.no-detection{border-left:3px solid var(--muted2)}.no-detection-content{text-align:center;padding:20px 0}.no-detection-icon{font-size:32px;display:block;margin-bottom:12px}.no-detection-content h3{margin-bottom:8px}.no-detection-mitigations{text-align:left;margin-top:20px;padding:16px;background:var(--card2);border-radius:8px}.no-detection-mitigations h4{font-size:13px;margin-bottom:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.no-detection-mitigations ul{list-style:disc;padding-left:20px}.no-detection-mitigations li{margin-bottom:6px;font-size:14px;color:var(--text)}.no-detection-links{margin-top:20px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.cve-not-found-page{text-align:center;padding:40px 0}.not-found-hero{margin-bottom:40px}.not-found-icon{color:var(--muted2);margin-bottom:16px}.not-found-hero h1{font-size:32px;font-weight:800;margin:0 0 12px;font-family:var(--mono)}.not-found-message{font-size:16px;color:var(--muted);max-width:480px;margin:0 auto}.not-found-search{max-width:600px;margin:0 auto 40px}.not-found-search h3{font-size:15px;color:var(--muted);margin:0 0 16px;font-weight:600}.not-found-related{margin-bottom:40px}.not-found-related h3{font-size:15px;color:var(--muted);margin:0 0 20px;font-weight:600}.not-found-actions{display:flex;justify-content:center;gap:12px}.cve-page{max-width:960px;margin:0 auto;padding:0 24px}.cve-hero{padding:48px 0 32px;border-bottom:1px solid var(--border);margin-bottom:40px}.cve-hero-inner{max-width:720px}.cve-hero-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.cve-id-badge{background:var(--surface2);color:var(--muted);font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px 8px;border-radius:4px;text-transform:uppercase}.cve-hero-top h1{font-size:28px;font-weight:800;margin:0;font-family:var(--mono);color:var(--text)}.cve-known-name{font-size:15px;font-weight:700;color:var(--accent, #60a5fa);padding:4px 12px;border-radius:4px;background:#60a5fa1a;letter-spacing:.02em}.cve-severity-badge{font-family:var(--mono);font-size:12px;font-weight:700;padding:4px 12px;border-radius:4px;letter-spacing:.03em}.cve-severity-badge.bad{background:#ef444426;color:var(--bad)}.cve-severity-badge.warn{background:#f59e0b26;color:var(--warn)}.cve-severity-badge.info{background:#3b82f626;color:var(--info, #60a5fa)}.cve-description{font-size:16px;line-height:1.7;color:var(--text);margin:0}.cve-description.muted{color:var(--muted);font-style:italic}.cve-meta-row{display:flex;align-items:center;gap:16px;margin-top:16px;flex-wrap:wrap}.cve-meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.cve-meta-item.alias{background:var(--surface2);padding:2px 8px;border-radius:4px;font-family:var(--mono);font-size:12px}.cve-pkg-link{color:var(--accent, #60a5fa);text-decoration:none;font-weight:600}.cve-pkg-link:hover{text-decoration:underline}.cve-pkg-range{font-family:var(--mono);font-size:12px;background:#ef44441a;color:var(--bad);padding:1px 6px;border-radius:3px;margin-left:4px}.cve-section{margin-bottom:40px}.cve-section h2{font-size:18px;font-weight:700;margin:0 0 20px;display:flex;align-items:center;gap:10px;color:var(--text)}.cve-section h2 svg{color:var(--muted);flex-shrink:0}.section-count{font-size:13px;font-weight:500;color:var(--muted);margin-left:auto}.cvss-breakdown-grid{display:flex;flex-direction:column;gap:16px}.cvss-metric{display:flex;align-items:center;gap:12px}.cvss-metric-label{font-size:13px;font-weight:600;color:var(--muted);min-width:110px}.cvss-metric-bar{flex:1;height:8px;background:var(--surface2, rgba(255, 255, 255, .06));border-radius:4px;overflow:hidden}.cvss-metric-fill{height:100%;border-radius:4px;transition:width .5s ease}.cvss-metric-fill.bad{background:var(--bad)}.cvss-metric-fill.warn{background:var(--warn)}.cvss-metric-fill.info{background:var(--accent, #60a5fa)}.cvss-metric-value{font-size:13px;font-weight:600;color:var(--text);min-width:70px;text-align:right;font-family:var(--mono)}.risk-intel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.risk-intel-card{padding:20px;border-radius:8px;background:var(--surface2, rgba(255, 255, 255, .03));border:1px solid var(--border)}.risk-intel-card.kev.active{border-color:#ef44444d;background:#ef44440d}.risk-intel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.risk-intel-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.risk-intel-source{font-size:10px;padding:2px 6px;border-radius:3px;background:#ffffff0f;color:var(--muted);font-weight:600}.risk-intel-value{font-size:32px;font-weight:800;font-family:var(--mono);margin-bottom:4px}.risk-intel-value.bad{color:var(--bad)}.risk-intel-value.warn{color:var(--warn)}.risk-intel-value.info{color:var(--accent, #60a5fa)}.risk-intel-sub{font-size:13px;color:var(--muted);margin-bottom:8px}.risk-intel-meta{font-size:12px;color:var(--muted2, var(--muted))}.risk-intel-card.exploitdb.active{border-color:#ef44444d;background:#ef44440d}.risk-intel-exploits{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.exploitdb-link{font-size:11px;font-family:var(--mono);font-weight:600;padding:3px 8px;border-radius:4px;background:#ffffff0f;color:var(--accent, #60a5fa);text-decoration:none;transition:background .15s}.exploitdb-link:hover{background:#ffffff1f}.affected-packages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.affected-package-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px}.pkg-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.pkg-ecosystem{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface2);padding:2px 6px;border-radius:3px}.pkg-name-link{font-size:15px;font-weight:700;color:var(--accent, #60a5fa);text-decoration:none;font-family:var(--mono)}.pkg-name-link:hover{text-decoration:underline}.pkg-name{font-size:15px;font-weight:700;color:var(--text);font-family:var(--mono)}.pkg-versions{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.pkg-version-row{display:flex;align-items:center;gap:8px}.version-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 6px;border-radius:3px;min-width:72px;text-align:center}.version-label.bad{background:#ef44441f;color:var(--bad)}.version-label.good{background:#22c55e1f;color:var(--good)}.pkg-version-row code{font-size:13px;color:var(--text);font-family:var(--mono)}.pkg-action{font-size:13px;color:var(--accent, #60a5fa);text-decoration:none;font-weight:500}.pkg-action:hover{text-decoration:underline}.cwe-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:20px}.cwe-card-link{text-decoration:none;color:inherit}.cwe-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;transition:border-color .15s}.cwe-card-link:hover .cwe-card{border-color:var(--accent, #60a5fa)}.cwe-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cwe-badge-sm{font-size:12px;font-weight:700;font-family:var(--mono);color:var(--muted);background:var(--surface2);padding:2px 8px;border-radius:4px}.cwe-rule-count{font-size:12px;color:var(--muted);font-weight:500}.cwe-card-name{font-size:15px;font-weight:600;margin:0 0 10px;color:var(--text)}.cwe-top-rules{display:flex;flex-direction:column;gap:4px}.mini-rule{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.mini-rule-sev{width:6px;height:6px;border-radius:50%;flex-shrink:0}.mini-rule-sev.CRITICAL{background:var(--bad)}.mini-rule-sev.HIGH{background:var(--warn)}.mini-rule-sev.MEDIUM{background:#f59e0b}.mini-rule-sev.LOW{background:var(--muted)}.mini-rule-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scan-cta-inline{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px 20px;gap:16px;flex-wrap:wrap}.scan-cta-text{font-size:14px;color:var(--text)}.scan-cta-cmd{display:flex;align-items:center;gap:8px}.scan-cta-cmd code{font-family:var(--mono);font-size:13px;background:var(--surface2);padding:6px 12px;border-radius:6px;color:var(--text)}.external-refs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.external-ref-card{display:flex;align-items:center;gap:14px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;text-decoration:none;color:inherit;transition:border-color .15s}.external-ref-card:hover{border-color:var(--accent, #60a5fa)}.ref-icon{color:var(--muted);flex-shrink:0}.ref-info{display:flex;flex-direction:column;gap:2px}.ref-name{font-size:14px;font-weight:600;color:var(--text)}.ref-url{font-size:12px;color:var(--accent, #60a5fa)}.cve-search-box{max-width:600px;margin:0 auto}.cve-search-box h3{font-size:15px;font-weight:600;color:var(--muted);margin:0 0 16px;text-align:center}.cve-nav-actions{display:flex;justify-content:center;gap:12px;padding:20px 0 40px;flex-wrap:wrap}@media(max-width:640px){.cve-hero-top{flex-direction:column;align-items:flex-start}.cve-hero-top h1{font-size:22px}.affected-packages-grid,.cwe-cards-grid,.external-refs-grid{grid-template-columns:1fr}.scan-cta-inline{flex-direction:column;align-items:flex-start}.cve-nav-actions{flex-direction:column}.cve-nav-actions .btn{width:100%;text-align:center}}.cve-action-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;background:#60a5fa0f;border:1px solid rgba(96,165,250,.2);border-left:4px solid var(--accent, #60a5fa);border-radius:10px}.cve-action-cta-text h2{font-size:18px;font-weight:700;margin:0 0 4px;color:var(--text)}.cve-action-cta-text p{font-size:14px;color:var(--muted);margin:0}.cve-action-cta-cmd{display:flex;align-items:center;gap:8px;flex-shrink:0}.cve-action-cta-cmd code{font-family:var(--mono);font-size:13px;background:var(--surface2);padding:8px 14px;border-radius:6px;color:var(--text);white-space:nowrap}@media(max-width:640px){.cve-action-cta{flex-direction:column;align-items:flex-start;padding:18px 16px}.cve-action-cta-cmd{width:100%}.cve-action-cta-cmd code{flex:1;font-size:12px}}.risk-intel-interpretation{margin-top:10px;padding:8px 0 0;border-top:1px solid var(--border);font-size:13px;font-weight:600;line-height:1.4}.risk-intel-interpretation.bad{color:var(--bad)}.risk-intel-interpretation.warn{color:var(--warn)}.risk-intel-interpretation.info{color:var(--muted)}.risk-tiers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.risk-tier-card{padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;border-left:3px solid var(--border)}.risk-tier-card.bad{border-left-color:var(--bad)}.risk-tier-card.warn{border-left-color:var(--warn)}.risk-tier-card.info{border-left-color:var(--accent, #60a5fa)}.risk-tier-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.risk-tier-env{font-size:13px;font-weight:700;color:var(--text)}.risk-tier-level{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:4px}.risk-tier-level.bad{background:#ef444426;color:var(--bad)}.risk-tier-level.warn{background:#f59e0b26;color:var(--warn)}.risk-tier-level.info{background:#3b82f626;color:var(--accent, #60a5fa)}.risk-tier-guidance{font-size:13px;line-height:1.5;color:var(--muted)}@media(max-width:640px){.risk-tiers-grid{grid-template-columns:1fr}}.ai-risk-callout{padding:20px 24px;background:#a855f70a;border:1px solid rgba(168,85,247,.15);border-radius:10px}.ai-risk-intro{font-size:14px;color:var(--text);margin:0 0 16px;font-weight:500}.ai-risk-item{display:flex;gap:12px;padding:12px 0;border-top:1px solid rgba(255,255,255,.06)}.ai-risk-item:first-of-type{border-top:none;padding-top:0}.ai-risk-cwe-badge{font-size:11px;font-weight:700;font-family:var(--mono);color:var(--muted);background:var(--surface2);padding:3px 8px;border-radius:4px;white-space:nowrap;height:fit-content;flex-shrink:0}.ai-risk-content{flex:1;min-width:0}.ai-risk-pattern{font-size:14px;font-weight:600;color:var(--text);margin-bottom:4px}.ai-risk-detail{font-size:13px;line-height:1.5;color:var(--muted)}.ai-risk-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.06);font-size:14px;color:var(--text);flex-wrap:wrap}@media(max-width:640px){.ai-risk-callout{padding:16px}.ai-risk-item{flex-direction:column;gap:6px}.ai-risk-cta{flex-direction:column;align-items:flex-start}}.pkg-blast-bar-wrapper{display:flex;align-items:center;gap:10px;margin-top:6px;margin-bottom:4px}.pkg-blast-bar{flex:1;height:4px;background:var(--surface2, rgba(255, 255, 255, .06));border-radius:2px;overflow:hidden}.pkg-blast-fill{height:100%;border-radius:2px;transition:width .5s ease}.pkg-blast-fill.bad{background:var(--bad)}.pkg-blast-fill.warn{background:var(--warn)}.pkg-blast-fill.info{background:var(--accent, #60a5fa)}.blast-radius-label{font-size:11px;font-weight:600;white-space:nowrap}.blast-radius-label.bad{color:var(--bad)}.blast-radius-label.warn{color:var(--warn)}.blast-radius-label.info{color:var(--muted)}.pkg-fix-cmd{display:flex;align-items:center;gap:8px;margin:10px 0;background:var(--surface2, rgba(255, 255, 255, .04));border-radius:6px;padding:6px 10px}.pkg-fix-cmd code{flex:1;font-family:var(--mono);font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-rule.enhanced{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);flex-wrap:wrap}.mini-rule-type{font-size:10px;font-weight:600;padding:1px 6px;border-radius:3px;background:#ffffff0f;color:var(--muted);white-space:nowrap;margin-left:auto}.mini-rule-confidence{font-size:10px;font-weight:700;padding:1px 6px;border-radius:3px;white-space:nowrap}.mini-rule-confidence.good{background:#22c55e1f;color:var(--good)}.mini-rule-confidence.warn{background:#f59e0b1f;color:var(--warn)}.mini-rule-confidence.info{background:#3b82f61f;color:var(--accent, #60a5fa)}.cve-hero.decision-hero{padding:48px 0 32px}.cve-decision-title{font-size:28px;font-weight:800;margin:0 0 12px;color:var(--text);line-height:1.3}.cve-decision-summary{font-size:16px;line-height:1.7;color:var(--text);margin:0 0 20px;max-width:640px}.cve-decision-summary.muted{color:var(--muted);font-style:italic}.cve-decision-badges{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.decision-badge{padding:10px 16px;border-radius:8px;border:1px solid var(--border);background:var(--surface);min-width:120px}.decision-badge.bad{border-color:#ef44444d;background:#ef44440f}.decision-badge.warn{border-color:#f59e0b4d;background:#f59e0b0f}.decision-badge.good{border-color:#22c55e4d;background:#22c55e0f}.decision-badge.info{border-color:#3b82f64d;background:#3b82f60f}.decision-badge-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.decision-badge-value{display:block;font-size:16px;font-weight:800;font-family:var(--mono)}.badge-source{font-size:9px;font-weight:700;letter-spacing:.06em;padding:1px 4px;border-radius:3px;background:#ffffff14;color:var(--muted);vertical-align:middle;margin-left:4px}.decision-badge.bad .decision-badge-value{color:var(--bad)}.decision-badge.warn .decision-badge-value{color:var(--warn)}.decision-badge.good .decision-badge-value{color:var(--good)}.decision-badge.info .decision-badge-value{color:var(--accent, #60a5fa)}.attack-story-card{padding:20px 24px;background:#ef44440a;border:1px solid rgba(239,68,68,.15);border-left:4px solid var(--bad);border-radius:10px}.attack-story-scenario{font-size:15px;font-weight:600;color:var(--text);margin:0 0 12px}.attack-story-example{margin-bottom:12px}.attack-story-example code{display:block;font-family:var(--mono);font-size:13px;background:#0003;padding:10px 14px;border-radius:6px;color:var(--text);word-break:break-all}.attack-story-impact{font-size:14px;line-height:1.6;color:var(--muted);margin:0;font-weight:500}.reality-check-card{padding:20px 24px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.reality-intro{font-size:14px;color:var(--muted);margin:0 0 12px;font-weight:500}.reality-checks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.reality-check{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500;color:var(--text)}.reality-check-icon{color:var(--good, #22c55e);font-weight:700;flex-shrink:0;width:20px;text-align:center}.code-pattern-card{display:flex;flex-direction:column;gap:16px}.code-pattern-block{border-radius:10px;overflow:hidden;border:1px solid var(--border)}.code-pattern-label{padding:8px 14px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.code-pattern-label.bad{background:#ef44441a;color:var(--bad)}.code-pattern-label.good{background:#22c55e1a;color:var(--good)}.code-pattern-pre{margin:0;padding:14px;background:var(--surface2, rgba(0, 0, 0, .2));overflow-x:auto}.code-pattern-pre code{font-family:var(--mono);font-size:13px;color:var(--text);line-height:1.6;white-space:pre}.code-pattern-signals{padding:12px 0 0}.code-pattern-signals-label{font-size:13px;color:var(--muted);font-weight:500;display:block;margin-bottom:8px}.code-pattern-tags{display:flex;flex-wrap:wrap;gap:6px}.code-pattern-tag{font-size:12px;font-weight:500;padding:4px 10px;border-radius:4px;background:var(--surface2, rgba(255, 255, 255, .06));color:var(--muted);font-family:var(--mono)}.fix-option{padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:12px}.fix-option h3{font-size:15px;font-weight:700;margin:0 0 10px;color:var(--text)}.fix-safe-version{font-size:13px;color:var(--muted);margin-top:8px}.fix-option.code-fix{border-left:3px solid var(--accent, #60a5fa)}.affected-packages-simple{display:flex;flex-direction:column;gap:8px}.affected-pkg-row{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap}.pkg-version-inline{font-size:12px;font-family:var(--mono);font-weight:600;padding:2px 8px;border-radius:4px}.pkg-version-inline.bad{background:#ef44441f;color:var(--bad)}.pkg-version-inline.good{background:#22c55e1f;color:var(--good)}.cve-tech-details{border:1px solid var(--border);border-radius:10px;background:var(--surface)}.tech-details-summary{display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer;user-select:none;list-style:none;font-size:16px;font-weight:700;color:var(--text)}.tech-details-summary::-webkit-details-marker{display:none}.tech-details-summary svg{color:var(--muted);flex-shrink:0}.tech-details-summary .chevron{margin-left:auto;transition:transform .2s}.cve-tech-details[open] .tech-details-summary .chevron{transform:rotate(180deg)}.tech-details-content{padding:0 20px 20px;border-top:1px solid var(--border)}.tech-sub-section{padding-top:20px}.tech-sub-section h3{font-size:15px;font-weight:700;margin:0 0 12px;color:var(--text);display:flex;align-items:center;gap:8px}@media(max-width:640px){.cve-decision-title{font-size:22px}.cve-decision-badges{flex-direction:column}.decision-badge{min-width:unset}.attack-story-card{padding:16px}.code-pattern-pre code{font-size:12px}.fix-option,.tech-details-summary{padding:14px 16px}.tech-details-content{padding:0 16px 16px}}.relevance-card{display:flex;flex-direction:column;gap:16px}.relevance-group{padding:16px 20px;border-radius:10px;border:1px solid var(--border)}.relevance-group.matters{background:#f59e0b0a;border-color:#f59e0b33}.relevance-group.safe{background:#22c55e0a;border-color:#22c55e33}.relevance-group-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.relevance-group.matters .relevance-group-label{color:var(--warn)}.relevance-group.safe .relevance-group-label{color:var(--good)}.relevance-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.relevance-item{font-size:14px;font-weight:500;color:var(--text);padding-left:22px;position:relative;line-height:1.5}.relevance-item:before{position:absolute;left:0;font-weight:700;font-size:13px}.relevance-item.warn:before{content:"\26a0";color:var(--warn)}.relevance-item.good:before{content:"\2713";color:var(--good)}.attack-flow-card{padding:20px 24px;background:#ef44440a;border:1px solid rgba(239,68,68,.15);border-left:4px solid var(--bad);border-radius:10px}.attack-flow-steps{display:flex;flex-direction:column;align-items:flex-start}.attack-flow-step{display:flex;align-items:center;gap:12px}.attack-flow-num{width:26px;height:26px;border-radius:50%;background:#ef44441f;color:var(--bad);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attack-flow-text{font-size:14px;font-weight:600;color:var(--text);line-height:1.4}.attack-flow-arrow{padding-left:5px;margin:2px 0;color:var(--muted);opacity:.4}.attack-flow-arrow svg{display:block}.affected-packages-clean{display:flex;flex-direction:column;gap:12px}.affected-pkg-card{padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.affected-pkg-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.pkg-blast-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;margin-left:auto}.pkg-blast-badge.bad{background:#ef44441f;color:var(--bad)}.pkg-blast-badge.warn{background:#f59e0b1f;color:var(--warn)}.pkg-blast-badge.info{background:#3b82f61f;color:var(--accent, #60a5fa)}.affected-pkg-versions{display:flex;flex-direction:column;gap:6px}.affected-pkg-versions .version-row{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 10px;background:#00000026;border-radius:6px;width:fit-content}.affected-pkg-versions .version-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.affected-pkg-versions .version-indicator.bad{background:var(--bad)}.affected-pkg-versions .version-indicator.good{background:var(--good)}.affected-pkg-versions .version-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.affected-pkg-versions .version-range{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--text);white-space:nowrap}.affected-pkg-versions .version-row.bad .version-range{color:var(--bad)}.affected-pkg-versions .version-row.good .version-range{color:var(--good)}.affected-pkg-versions .version-range-link{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--good);text-decoration:none}.affected-pkg-versions .version-range-link:hover{text-decoration:underline}.affected-pkg-stats{display:flex;gap:16px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}.exploit-details-collapse{border:1px solid var(--border);border-radius:10px;background:var(--surface)}.exploit-details-summary{display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer;user-select:none;list-style:none;font-size:16px;font-weight:700;color:var(--text)}.exploit-details-summary::-webkit-details-marker{display:none}.exploit-details-summary svg{color:var(--muted);flex-shrink:0}.exploit-details-summary .chevron{margin-left:auto;transition:transform .2s}.exploit-details-collapse[open] .exploit-details-summary .chevron{transform:rotate(180deg)}.exploit-count-badge{font-size:12px;font-weight:700;background:#ef44441f;color:var(--bad);padding:1px 7px;border-radius:10px;vertical-align:middle}.exploit-details-content{padding:0 20px 20px;border-top:1px solid var(--border)}@media(max-width:640px){.relevance-group{padding:14px 16px}.attack-flow-card{padding:16px}.affected-pkg-card{padding:14px 16px}.affected-pkg-header{margin-bottom:10px}.exploit-details-summary{padding:14px 16px}.exploit-details-content{padding:0 16px 16px}}.xref-cve-list{display:flex;flex-direction:column;gap:8px}.xref-cve-item{display:block;padding:10px 12px;background:var(--surface2);border-radius:6px;text-decoration:none;color:inherit;transition:background .15s}.xref-cve-item:hover{background:var(--border)}.xref-cve-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.xref-cve-id{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text)}.xref-cve-sev{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:3px}.xref-cve-sev.CRITICAL{background:#ef444426;color:var(--bad)}.xref-cve-sev.HIGH{background:#f59e0b26;color:var(--warn)}.xref-cve-sev.MEDIUM{background:#eab3081f;color:#eab308}.xref-cve-sev.LOW{background:#3b82f61f;color:var(--info, #60a5fa)}.xref-cve-name{font-size:13px;font-weight:600;color:var(--text)}.xref-cve-product{font-size:12px;color:var(--muted);margin-top:2px}.xref-cve-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.xref-cve-card{display:block;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:inherit;transition:border-color .15s}.xref-cve-card:hover{border-color:var(--accent, #60a5fa)}.xref-cve-card .xref-cve-header{margin-bottom:6px}.xref-cve-card .xref-cve-name{font-size:14px;margin-bottom:4px}.xref-cve-card .xref-cve-product{font-size:12px}.rule-section-desc{font-size:14px;color:var(--muted);margin:-8px 0 16px}.xref-cwe-list{display:flex;flex-direction:column;gap:6px}.xref-cwe-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface2);border-radius:6px;text-decoration:none;color:inherit;transition:background .15s}.xref-cwe-item:hover{background:var(--border)}.xref-cwe-id{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--muted);white-space:nowrap}.xref-cwe-name{font-size:13px;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xref-cwe-rules{font-size:11px;color:var(--muted);white-space:nowrap}.xref-framework-list{display:flex;flex-wrap:wrap;gap:6px}.xref-framework-item{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--surface2);border-radius:4px;font-size:12px}.xref-framework-name{color:var(--text);font-weight:500}.xref-framework-rules{color:var(--muted);font-size:11px}.xref-rules-preview{display:flex;flex-direction:column;gap:4px;margin-top:8px}.xref-rule-link{display:flex;align-items:center;gap:6px;text-decoration:none;color:inherit;padding:3px 0}.xref-rule-link:hover .xref-rule-name{color:var(--accent, #60a5fa)}.xref-rule-sev{width:6px;height:6px;border-radius:50%;flex-shrink:0}.xref-rule-sev.CRITICAL{background:var(--bad)}.xref-rule-sev.HIGH{background:var(--warn)}.xref-rule-sev.MEDIUM{background:#f59e0b}.xref-rule-sev.LOW{background:var(--muted)}.xref-rule-name{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s}.language-rules-body.collapsed{display:none}.language-rules-header.collapsed .rule-count:after{content:" \25b6"}.language-rules-header:not(.collapsed) .rule-count:after{content:" \25bc"}.rules-header{margin-bottom:24px}.rules-header h1{margin:0 0 8px;font-size:28px}.rules-header p{color:var(--muted);margin:0;font-size:14px}.rules-stats-strip{display:flex;gap:16px;padding:16px 20px;background:#ffffff08;border:1px solid var(--border);border-radius:12px;margin-bottom:24px;flex-wrap:wrap}.rules-stats-strip .stat{display:flex;flex-direction:column;align-items:center;padding:0 16px;border-right:1px solid var(--border2)}.rules-stats-strip .stat:last-child{border-right:none}.rules-stats-strip .stat .num{font-size:24px;font-weight:700;color:var(--text)}.rules-stats-strip .stat .label{font-size:11px;color:var(--muted2);text-transform:uppercase;letter-spacing:.5px}.rules-stats-strip .stat.critical .num{color:var(--bad)}.rules-stats-strip .stat.high .num{color:var(--warn)}.rules-stats-strip .stat.medium .num{color:var(--info)}.rules-stats-strip .stat.low .num{color:var(--muted)}.rules-filters{margin-bottom:20px}.filters-form .filter-row{display:flex;gap:10px;flex-wrap:wrap}.filter-search{flex:1;min-width:200px;padding:10px 14px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px}.filter-search:focus{outline:none;border-color:var(--info)}.filter-select{padding:10px 14px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;cursor:pointer}.filter-select:focus{outline:none;border-color:var(--info)}.rules-results-info{font-size:13px;color:var(--muted);margin-bottom:16px}.rules-list{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.rule-card{padding:16px 20px;background:#ffffff05;border:1px solid var(--border);border-radius:12px;transition:all .15s ease}.rule-card:hover{background:#ffffff0a;border-color:#64b5ff4d}.rule-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.rule-card .rule-title{font-weight:600;font-size:15px;color:var(--text);text-decoration:none}.rule-card .rule-title:hover{color:var(--info)}.rule-card .rule-desc{font-size:13px;color:var(--muted);margin:0 0 12px;line-height:1.5}.rule-card-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.rule-card-meta .rule-cwe{font-size:12px}.rule-card-meta .rule-cwe a{color:var(--info);text-decoration:none}.rule-card-meta .rule-cwe .cwe-name{color:var(--muted);margin-left:6px}.rule-langs{display:flex;gap:6px}.lang-badge{font-size:16px;text-decoration:none}.rule-frameworks{display:flex;gap:6px}.framework-badge{font-size:11px;padding:3px 8px;background:#ffffff0f;border-radius:4px;color:var(--muted);text-decoration:none}.framework-badge:hover{background:#64b5ff26;color:var(--info)}.has-fix{font-size:11px;color:var(--good)}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin:32px 0}.page-info{font-size:13px;color:var(--muted)}.rules-section{margin-top:40px}.rules-section h2{margin:0 0 16px;font-size:18px}.lang-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.lang-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;background:#ffffff08;border:1px solid var(--border);border-radius:12px;text-decoration:none;transition:all .15s ease}.lang-card:hover{background:#ffffff0f;border-color:var(--info)}.lang-card .lang-icon{font-size:28px}.lang-card .lang-name{font-size:13px;color:var(--text)}.framework-tags{display:flex;flex-wrap:wrap;gap:8px}.framework-tag{padding:8px 14px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text);text-decoration:none;transition:all .15s ease}.framework-tag:hover{background:#64b5ff1a;border-color:var(--info);color:var(--info)}.no-results{text-align:center;padding:40px;color:var(--muted)}.lang-header{display:flex;align-items:center;gap:16px}.lang-icon-large{font-size:48px}.severity-strip{display:flex;gap:12px;margin:20px 0}.sev-item{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#ffffff08;border:1px solid var(--border);border-radius:8px}.sev-item .num{font-size:20px;font-weight:700}.sev-item .label{font-size:12px;color:var(--muted)}.sev-item.critical .num{color:var(--bad)}.sev-item.high .num{color:var(--warn)}.sev-item.medium .num{color:var(--info)}.sev-item.low .num{color:var(--muted)}.cli-card{padding:16px;background:#0000004d;border:1px solid var(--border);border-radius:8px;margin:20px 0}.cli-card .cli-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;color:var(--muted)}.cli-card code{font-family:var(--mono);font-size:14px;color:var(--good)}.lang-frameworks{margin:24px 0}.lang-frameworks h3{margin:0 0 12px;font-size:14px;color:var(--muted)}.framework-pills{display:flex;flex-wrap:wrap;gap:8px}.framework-pill{padding:6px 12px;background:#ffffff0a;border:1px solid var(--border);border-radius:6px;font-size:12px;color:var(--text);text-decoration:none}.framework-pill:hover{background:#64b5ff1a;border-color:var(--info)}.cwe-groups{display:flex;flex-direction:column;gap:16px}.cwe-group{background:#ffffff05;border:1px solid var(--border);border-radius:12px;overflow:hidden}.cwe-group-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#ffffff08;border-bottom:1px solid var(--border)}.cwe-link{text-decoration:none}.cwe-link .cwe-id{font-weight:600;color:var(--info);margin-right:8px}.cwe-link .cwe-name{color:var(--text)}.cwe-group-header .rule-count{font-size:12px;color:var(--muted)}.cwe-rules{padding:8px 0}.rule-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border2)}.rule-row:last-child{border-bottom:none}.rule-row .rule-name{flex:1;font-size:13px;color:var(--text);text-decoration:none}.rule-row .rule-name:hover{color:var(--info)}.rule-row .rule-sev{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.rule-row .rule-sev.CRITICAL{background:#ff6b6b26;color:var(--bad)}.rule-row .rule-sev.HIGH{background:#f7c94826;color:var(--warn)}.rule-row .rule-sev.MEDIUM{background:#64b5ff26;color:var(--info)}.rule-row .rule-sev.LOW{background:#ffffff14;color:var(--muted)}.rule-row .rule-fw{display:flex;gap:4px}.rule-row .fw-tag{font-size:10px;padding:2px 6px;background:#ffffff0f;border-radius:3px;color:var(--muted2)}.back-link{margin-top:32px}.runtime-badge{display:inline-block;margin-top:12px;padding:4px 10px;background:#64b5ff1a;border-radius:4px;font-size:12px;color:var(--info)}.severity-section{margin:32px 0}.severity-section h2{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:18px}.severity-section .sev-dot{width:10px;height:10px;border-radius:50%}.severity-section.critical .sev-dot{background:var(--bad)}.severity-section.high .sev-dot{background:var(--warn)}.severity-section.medium .sev-dot{background:var(--info)}.severity-section.low .sev-dot{background:var(--muted)}.severity-section .sev-desc{color:var(--muted);font-size:13px;margin:0 0 16px}.rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.rule-card-mini{padding:14px 16px;background:#ffffff05;border:1px solid var(--border);border-radius:10px}.rule-card-mini .rule-name{display:block;font-weight:600;font-size:14px;color:var(--text);text-decoration:none;margin-bottom:6px}.rule-card-mini .rule-name:hover{color:var(--info)}.rule-card-mini .rule-desc{font-size:12px;color:var(--muted);margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rule-card-mini .rule-cwe{font-size:11px;color:var(--info);text-decoration:none}.rule-detail{max-width:800px}.rule-detail-header{margin-bottom:32px}.rule-breadcrumb{font-size:13px;color:var(--muted);margin-bottom:12px}.rule-breadcrumb a{color:var(--muted);text-decoration:none}.rule-breadcrumb a:hover{color:var(--info)}.rule-breadcrumb .sep{margin:0 8px}.rule-detail-header h1{margin:0 0 12px;font-size:26px}.rule-meta-row{display:flex;align-items:center;gap:16px}.rule-severity-large{font-size:12px;font-weight:700;padding:5px 12px;border-radius:6px;text-transform:uppercase}.rule-severity-large.CRITICAL{background:#ff6b6b26;color:var(--bad)}.rule-severity-large.HIGH{background:#f7c94826;color:var(--warn)}.rule-severity-large.MEDIUM{background:#64b5ff26;color:var(--info)}.rule-severity-large.LOW{background:#ffffff14;color:var(--muted)}.rule-cwe-link{font-size:14px;color:var(--muted);text-decoration:none}.rule-cwe-link:hover{color:var(--info)}.rule-section{margin-bottom:32px}.rule-section h2{margin:0 0 12px;font-size:16px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.rule-description-full{font-size:15px;line-height:1.7;color:var(--text);margin:0}.detection-message{padding:14px 16px;background:#f7c94814;border:1px solid rgba(247,201,72,.2);border-radius:8px}.detection-message code{font-family:var(--mono);font-size:13px;color:var(--warn)}.remediation-code{background:#0006;border-radius:10px;overflow:hidden}.remediation-code pre{margin:0;padding:16px;font-family:var(--mono);font-size:12px;line-height:1.6;color:var(--text);overflow-x:auto;white-space:pre-wrap}.applies-to{display:flex;gap:32px}.applies-to h4{margin:0 0 10px;font-size:12px;color:var(--muted2);text-transform:uppercase}.lang-pills{display:flex;gap:8px}.lang-pill{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text);text-decoration:none}.lang-pill:hover{background:#64b5ff1a;border-color:var(--info)}.rule-docs{display:flex;gap:12px;flex-wrap:wrap}.doc-link{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:#ffffff0a;border:1px solid var(--border);border-radius:8px;font-size:13px;color:var(--text);text-decoration:none;transition:all .15s ease}.doc-link:hover{background:#64b5ff1a;border-color:var(--info)}.doc-link .external-icon{font-size:12px;opacity:.6}.doc-link.owasp{border-color:#f7c9484d}.doc-link.cwe{border-color:#64b5ff4d}.related-rules{display:flex;flex-direction:column;gap:8px}.related-rule{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff05;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:all .15s ease}.related-rule:hover{background:#ffffff0a;border-color:var(--info)}.related-rule .related-name{font-size:14px;color:var(--text)}.related-rule .related-sev{font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px}.related-rule .related-sev.CRITICAL{background:#ff6b6b26;color:var(--bad)}.related-rule .related-sev.HIGH{background:#f7c94826;color:var(--warn)}.related-rule .related-sev.MEDIUM{background:#64b5ff26;color:var(--info)}.related-rule .related-sev.LOW{background:#ffffff14;color:var(--muted)}.rule-footer{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:20px;border-top:1px solid var(--border)}.source-file{font-size:11px;color:var(--muted2);font-family:var(--mono)}.cwe-rules-list{display:flex;flex-direction:column;gap:16px;margin:20px 0}.cwe-rules-card{padding:16px;background:#ffffff05;border:1px solid var(--border);border-radius:12px}.cwe-rules-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cwe-rules-header .cwe-link{display:flex;align-items:center;gap:10px;text-decoration:none}.cwe-rules-header .cwe-badge{padding:4px 10px;background:#64b5ff26;border-radius:6px;font-size:12px;font-weight:600;color:var(--info)}.cwe-rules-header .cwe-name{font-size:14px;color:var(--text)}.cwe-rules-header .rule-count{font-size:12px;color:var(--muted)}.cwe-rules-preview{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.rule-preview{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#0003;border-radius:8px;text-decoration:none;transition:all .15s ease}.rule-preview:hover{background:#64b5ff1a}.rule-preview .rule-name{font-size:13px;color:var(--text)}.rule-preview .rule-sev{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.rule-preview .rule-sev.CRITICAL{background:#ff6b6b33;color:var(--bad)}.rule-preview .rule-sev.HIGH{background:#f7c94833;color:var(--warn)}.rule-preview .rule-sev.MEDIUM{background:#64b5ff33;color:var(--info)}.rule-preview .rule-sev.LOW{background:#ffffff1a;color:var(--muted)}.view-all-link{font-size:13px;color:var(--info);text-decoration:none}.view-all-link:hover{text-decoration:underline}.cli-scan-cta{padding:14px 16px;background:#0000004d;border:1px solid var(--border);border-radius:8px;margin-top:16px}.cli-scan-cta .cli-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;color:var(--muted)}.cli-scan-cta code{font-family:var(--mono);font-size:14px;color:var(--good)}.prevention-example{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border2)}.prevention-example:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.db-variants{margin-top:16px;border:1px solid var(--border2);border-radius:8px;overflow:hidden}.db-variants-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:8px 12px;background:#ffffff05;border-bottom:1px solid var(--border2)}.db-variant{border-bottom:1px solid var(--border2)}.db-variant:last-child{border-bottom:none}.db-variant-summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;font-size:13px;color:var(--text);list-style:none}.db-variant-summary::-webkit-details-marker{display:none}.db-variant-summary:before{content:"\25b8";font-size:11px;color:var(--muted);transition:transform .15s}.db-variant[open]>.db-variant-summary:before{transform:rotate(90deg)}.db-variant-name{font-weight:700;color:var(--accent, #60a5fa);min-width:80px}.db-variant-desc{color:var(--muted);font-size:12px}.db-variant-body{padding:0 12px 12px}.diff-label{font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:3px}.diff-label.bad{background:#ef44441f;color:var(--bad)}.diff-label.good{background:#22c55e1f;color:var(--good)}.example-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.example-title{font-size:14px;font-weight:700;color:var(--text)}.example-severity{font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;text-transform:uppercase}.example-severity.CRITICAL{background:#ff6b6b33;color:var(--bad)}.example-severity.HIGH{background:#f7c94833;color:var(--warn)}.example-severity.MEDIUM{background:#64b5ff33;color:var(--info)}.example-severity.LOW{background:#ffffff1a;color:var(--muted)}.example-desc{font-size:13px;color:var(--muted);margin:0 0 12px;line-height:1.5}.diff-indicator{font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.diff-indicator.bad{background:#ff6b6b33;color:var(--bad)}.diff-indicator.good{background:#39d98a33;color:var(--good)}.diff-bad{background:#ff6b6b0f;border-left:3px solid var(--bad);margin:0;padding:10px 14px;font-family:var(--mono);font-size:12px;color:var(--bad);line-height:1.5;overflow-x:auto}.diff-good{background:#39d98a0f;border-left:3px solid var(--good);margin:0;padding:10px 14px;font-family:var(--mono);font-size:12px;color:var(--good);line-height:1.5;overflow-x:auto}.diff-bad code,.diff-good code{background:transparent;padding:0;white-space:pre-wrap;word-break:break-word}.diff-stat{color:var(--good);font-size:11px;font-weight:700}.diff-unified{margin:0;padding:0;font-family:var(--mono);font-size:12px;line-height:1;overflow-x:auto}.diff-line{display:block;padding:0 14px;line-height:0;white-space:pre-wrap;word-break:break-word}.diff-line.context{color:var(--muted2)}.diff-line.bad{background:#ff6b6b14;border-left:3px solid var(--bad);color:var(--bad)}.diff-line.good{background:#39d98a14;border-left:3px solid var(--good);color:var(--good)}.key-practices{margin-top:20px;padding:14px;background:#39d98a14;border:1px solid rgba(57,217,138,.2);border-radius:10px}.key-practices h4{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--good)}.key-practices ul{margin:0;padding-left:18px;font-size:13px;color:var(--text);line-height:1.7}.warning-signs-list{display:grid;gap:10px}.warning-sign{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;background:#0003;border:1px solid var(--border2);border-radius:10px}.warning-sign.CRITICAL{border-left:3px solid var(--bad)}.warning-sign.HIGH{border-left:3px solid var(--warn)}.warning-sign.MEDIUM{border-left:3px solid var(--info)}.warning-sign.LOW{border-left:3px solid var(--muted)}.warning-icon{font-size:16px;flex-shrink:0}.warning-content{flex:1;min-width:0}.warning-text{display:block;font-size:13px;color:var(--text);line-height:1.4;margin-bottom:4px}.warning-rule{font-size:11px;color:var(--muted2)}.warning-rule a{color:var(--info);text-decoration:none}.warning-rule a:hover{text-decoration:underline}.owasp-section{margin-bottom:16px}.owasp-category{display:flex;align-items:center;gap:12px;padding:12px;background:#0003;border-radius:10px;margin-top:8px}.owasp-category-link{display:flex;align-items:center;gap:12px;padding:12px;background:#0003;border-radius:10px;margin-top:8px;text-decoration:none;transition:all .15s}.owasp-category-link:hover{background:#0000004d;transform:translate(2px)}.owasp-category-link .owasp-arrow{font-size:14px;color:var(--muted);transition:transform .15s}.owasp-category-link:hover .owasp-arrow{transform:translate(3px);color:var(--text)}.owasp-rank{font-size:20px;font-weight:800;color:var(--text);min-width:32px}.owasp-info{flex:1}.owasp-name{font-size:13px;font-weight:600;color:var(--text);line-height:1.3}.owasp-id{font-size:11px;color:var(--muted);margin-top:2px}.related-cwe-group{margin-bottom:10px}.related-cwe-group:last-child{margin-bottom:0}.related-cwe-label{display:block;font-size:10px;font-weight:600;color:var(--muted2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.related-cwe-link{display:inline-block;padding:4px 8px;margin:2px 4px 2px 0;font-size:11px;font-weight:500;color:var(--text);background:#64b5ff1a;border:1px solid rgba(100,181,255,.2);border-radius:6px;text-decoration:none;transition:all .15s}.related-cwe-link:hover{background:#64b5ff33;border-color:#64b5ff4d}.related-cwe-link .cwe-id{font-family:var(--mono)}.mitigation-list{margin:8px 0 0;padding-left:16px;font-size:12px;color:var(--muted);line-height:1.6}.mitigation-list li{margin-bottom:6px}.mitigation-list li:last-child{margin-bottom:0}.extended-description{margin-top:12px;padding:12px;background:#00000026;border-radius:10px;border-left:3px solid var(--info)}.extended-description p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}.rules-hero{background:linear-gradient(180deg,rgba(57,217,138,.06) 0%,transparent 100%);border-radius:20px;margin:-16px -16px 32px;padding:48px 16px 40px}.languages-cards-section{margin-bottom:40px}.lang-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.lang-card-large{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#ffffff0a;border:1px solid var(--border);border-radius:12px;text-decoration:none;transition:all .15s}.lang-card-large:hover{background:#ffffff14;transform:translateY(-2px);border-color:var(--good)}.lang-icon-large{font-size:28px}.lang-card-content{flex:1}.lang-name-large{display:block;font-size:15px;font-weight:700;color:var(--text)}.lang-desc{font-size:12px;color:var(--muted)}.lang-arrow{font-size:16px;color:var(--muted);transition:transform .15s}.lang-card-large:hover .lang-arrow{transform:translate(4px);color:var(--text)}.filters-section{margin-bottom:24px}.filters-form-modern{padding:16px;background:#ffffff08;border:1px solid var(--border);border-radius:12px}.filter-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-search-wrapper{position:relative;flex:1;min-width:200px}.filter-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted2);pointer-events:none}.filter-search-modern{width:100%;padding:10px 14px 10px 40px;font-size:14px;color:var(--text);background:#0003;border:1px solid var(--border);border-radius:8px;outline:none;transition:all .15s}.filter-search-modern:focus{border-color:var(--info)}.filter-select-modern{padding:10px 14px;font-size:14px;color:var(--text);background:#0003;border:1px solid var(--border);border-radius:8px;cursor:pointer;min-width:140px}.filter-btn{padding:10px 20px;font-size:14px;font-weight:600;color:#0b0f19;background:linear-gradient(135deg,#64b5ff,#39d98a);border:none;border-radius:8px;cursor:pointer;transition:all .15s}.filter-btn:hover{transform:translateY(-1px)}.filter-clear{padding:10px 16px;font-size:14px;color:var(--muted);text-decoration:none;transition:color .15s}.filter-clear:hover{color:var(--text)}.results-info{display:flex;align-items:center;gap:12px;margin-bottom:20px;font-size:14px;color:var(--muted);flex-wrap:wrap}.results-filter{padding:4px 10px;background:#64b5ff1a;border-radius:6px;font-size:12px;color:var(--info)}.results-filter.severity-CRITICAL{background:#ff6b6b26;color:var(--bad)}.results-filter.severity-HIGH{background:#ff8f6b26;color:#ff8f6b}.rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:16px;margin-bottom:32px}.rule-card-modern{padding:20px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px;transition:all .15s}.rule-card-modern:hover{background:#ffffff0f;border-color:#ffffff26}.rule-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.rule-title-link{text-decoration:none}.rule-title{margin:0;font-size:15px;font-weight:700;color:var(--text);line-height:1.3;transition:color .15s}.rule-title-link:hover .rule-title{color:var(--info)}.rule-severity-badge{padding:4px 10px;font-size:10px;font-weight:700;text-transform:uppercase;border-radius:6px;flex-shrink:0}.rule-severity-badge.CRITICAL{background:#ff6b6b26;color:var(--bad)}.rule-severity-badge.HIGH{background:#ff8f6b26;color:#ff8f6b}.rule-severity-badge.MEDIUM{background:#f7c94826;color:var(--warn)}.rule-severity-badge.LOW{background:#64b5ff26;color:var(--info)}.rule-description{margin:0 0 14px;font-size:13px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rule-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--border2);flex-wrap:wrap}.rule-cwe-link{display:flex;align-items:center;gap:8px;text-decoration:none}.cwe-badge{font-size:11px;font-weight:700;color:var(--info);padding:3px 8px;background:#64b5ff1a;border-radius:4px}.cwe-name-small{font-size:12px;color:var(--muted)}.rule-meta{display:flex;align-items:center;gap:10px}.rule-langs-list{display:flex;gap:4px}.lang-mini-badge{font-size:14px;text-decoration:none}.rule-frameworks-list{display:flex;gap:4px}.framework-mini-badge{font-size:10px;font-weight:600;color:var(--muted);padding:2px 6px;background:#ffffff0f;border-radius:4px;text-decoration:none}.framework-mini-badge:hover{background:#ffffff1a;color:var(--text)}.has-fix-badge{font-size:10px;font-weight:700;color:var(--good);padding:3px 8px;background:#39d98a1a;border-radius:4px}.no-results-modern{grid-column:1 / -1;text-align:center;padding:48px 24px;background:#ffffff05;border:1px dashed var(--border);border-radius:14px}.no-results-icon{font-size:48px;display:block;margin-bottom:16px}.no-results-modern h3{margin:0 0 8px;font-size:18px}.no-results-modern p{margin:0 0 20px;color:var(--muted)}.btn-clear-filters{display:inline-block;padding:10px 20px;font-size:14px;font-weight:600;color:var(--text);background:#ffffff14;border-radius:8px;text-decoration:none;transition:all .15s}.btn-clear-filters:hover{background:#ffffff1f}.pagination-modern{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:40px}.pagination-btn{padding:10px 18px;font-size:14px;font-weight:600;color:var(--text);background:#ffffff0f;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:all .15s}.pagination-btn:hover{background:#ffffff1a}.pagination-info{font-size:14px;color:var(--muted)}.frameworks-section-modern{margin-bottom:40px}.framework-tags-grid{display:flex;flex-wrap:wrap;gap:10px}.framework-tag-modern{padding:8px 14px;font-size:13px;font-weight:600;color:var(--text);background:#ffffff0f;border:1px solid var(--border);border-radius:8px;text-decoration:none;transition:all .15s}.framework-tag-modern:hover{background:#ffffff1a;border-color:var(--good)}.cli-section-modern{margin-bottom:32px}.cli-card-modern{display:flex;align-items:center;gap:20px;padding:24px;background:linear-gradient(135deg,#39d98a14,#64b5ff0a);border:1px solid rgba(57,217,138,.2);border-radius:16px;flex-wrap:wrap}.cli-icon{font-size:32px}.cli-card-modern .cli-content{flex:1;min-width:200px}.cli-card-modern h3{margin:0 0 4px;font-size:16px;font-weight:700}.cli-card-modern p{margin:0;font-size:14px;color:var(--muted)}.cli-code-block{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0000004d;border:1px solid var(--border);border-radius:10px}.cli-code-block code{font-family:var(--mono);font-size:14px;color:var(--good)}.copy-btn-modern{padding:6px 12px;font-size:12px;font-weight:600;color:var(--muted);background:#ffffff1a;border:none;border-radius:6px;cursor:pointer;transition:all .15s}.copy-btn-modern:hover{background:#fff3;color:var(--text)}@media(max-width:768px){.landing-hero{padding:32px 0 24px}.landing-hero h1{font-size:28px}.hero-subtitle{font-size:15px}.hero-stats{gap:12px}.hero-stat{padding:12px 16px;min-width:80px}.hero-stat-value{font-size:22px}.search-wrapper{flex-wrap:wrap}.hero-btn{width:100%;justify-content:center}.nav-cards-grid,.rules-grid{grid-template-columns:1fr}.filter-group{flex-direction:column;align-items:stretch}.filter-search-wrapper{min-width:100%}.filter-select-modern{width:100%}.cli-card,.cli-card-modern{flex-direction:column;text-align:center}.cli-commands{justify-content:center}.footer-content{flex-direction:column;gap:32px}.footer-nav{gap:32px}}.advisories-panel{margin:16px 0 20px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#0000001f}.advisories-panel .advisories-header{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#ffffff08;border-bottom:1px solid var(--border2)}.advisories-panel .advisories-header h3{margin:0;font-size:15px;font-weight:700}.advisories-panel .advisories-count{font-size:11px}.advisories-panel .advisories-list{padding:0}.advisories-panel .advisory-item{display:flex;gap:0;margin:0;border-radius:0;border:none;border-bottom:1px solid var(--border2);background:transparent;padding:14px 18px}.advisories-panel .advisory-item:last-child{border-bottom:none}.advisories-panel .advisory-severity-bar{width:3px;flex-shrink:0;border-radius:2px;margin-right:14px}.advisories-panel .advisory-item.bad .advisory-severity-bar{background:var(--bad)}.advisories-panel .advisory-item.warn .advisory-severity-bar{background:var(--warn)}.advisories-panel .advisory-item.info .advisory-severity-bar{background:var(--info)}.advisories-panel .advisory-content{flex:1;min-width:0}.advisories-panel .advisory-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;flex-wrap:wrap}.advisories-panel .advisory-badges{display:flex;gap:6px;align-items:center}.advisories-panel .advisory-flag{margin-top:8px;font-size:12px;font-weight:600;color:var(--bad);padding:4px 10px;border-radius:6px;background:#ff6b6b14;display:inline-block}.signals-section .card-body h3{margin-bottom:4px}.inline-signals{margin-top:20px;padding-top:16px;border-top:1px solid var(--border2)}.inline-signals h4{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin:0 0 10px}.signals-group{margin-bottom:16px}.signals-group-header{margin-bottom:10px}.signals-group-label{font-size:13px;font-weight:700}.signals-group-label.bad{color:var(--bad)}.signals-group-label.warn{color:var(--warn)}.signals-group-label.good{color:var(--good)}.signal-item{display:flex;gap:12px;padding:12px 14px;border-radius:10px;background:#00000029;border:1px solid var(--border2);margin-bottom:8px}.signal-item:last-child{margin-bottom:0}.signal-indicator{width:4px;flex-shrink:0;border-radius:2px;margin:2px 0}.signal-item.bad .signal-indicator{background:var(--bad)}.signal-item.warn .signal-indicator{background:var(--warn)}.signal-item.info .signal-indicator{background:var(--info)}.signal-item.signal-primary{border-color:#ffffff1a}.signal-item.signal-secondary{opacity:.75}.signal-content{flex:1;min-width:0}.signal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.signal-title{font-size:14px;font-weight:600}.signal-meta{display:flex;gap:6px;align-items:center}.signal-scope{font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;background:#ffffff0f;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.signal-severity{font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase}.signal-severity.bad{background:#ff6b6b1f;color:var(--bad)}.signal-severity.warn{background:#f7c9481f;color:var(--warn)}.signal-severity.info{background:#64b5ff1f;color:var(--info)}.signal-evidence{margin-top:8px;font-size:12px;color:var(--muted);font-family:var(--mono);display:flex;flex-direction:column;gap:4px}.evidence-item{padding:4px 8px;border-radius:4px;background:#0003;display:inline-block}.signals-other{border-top:1px solid var(--border2);padding-top:12px}.signals-group-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:1px solid var(--border2);border-radius:10px;background:#ffffff08;color:var(--muted);cursor:pointer;font-size:13px;font-weight:600;transition:all .15s;font-family:inherit}.signals-group-toggle:hover{background:#ffffff0f;color:var(--fg)}.signals-toggle-count{font-size:11px;padding:2px 8px;border-radius:6px;background:#ffffff0f;color:var(--muted2)}.signals-toggle-icon{margin-left:auto;font-size:10px;transition:transform .2s}.signals-other[data-expanded=true] .signals-toggle-icon{transform:rotate(180deg)}.signals-collapsible{display:none;margin-top:10px}.signals-other[data-expanded=true] .signals-collapsible{display:block}.intel-section{margin-top:8px}.intel-section-title{font-size:18px;font-weight:800;margin-bottom:16px}.intel-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:768px){.intel-panels{grid-template-columns:1fr}}.intel-panel{border:1px solid var(--border);border-radius:14px;background:#0000001f;overflow:hidden}.intel-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#ffffff08;border-bottom:1px solid var(--border2)}.intel-header h3{margin:0;font-size:14px;font-weight:700}.intel-body{padding:14px 18px}.intel-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px}.intel-row:not(:last-child){border-bottom:1px solid var(--border2)}.intel-label{color:var(--muted);font-weight:500}.intel-value{font-weight:600}.intel-value.bad{color:var(--bad)}.intel-value.warn{color:var(--warn)}.intel-value.good{color:var(--good)}.intel-link{color:var(--accent, #6e8efb);text-decoration:none;font-weight:600}.intel-link:hover{text-decoration:underline}.intel-subheader{font-size:11px;font-weight:700;color:var(--muted2);text-transform:uppercase;letter-spacing:.5px;margin-top:14px;margin-bottom:8px}.intel-subheader--row{display:flex;justify-content:space-between;align-items:baseline}.intel-subheader--row [data-version-dl]{font-size:13px;font-weight:600;color:var(--text);text-transform:none;letter-spacing:0}.intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:480px){.intel-grid{grid-template-columns:1fr}}.intel-cell{padding:8px 10px;border-radius:8px;background:#00000029}.intel-cell-label{font-size:11px;color:var(--muted2);margin-bottom:2px}.intel-cell-value{font-size:13px;font-weight:600}.intel-cell-value.bad{color:var(--bad)}.intel-cell-value.warn{color:var(--warn)}.intel-flags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.intel-flag{font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px}.intel-flag.bad{background:#ff6b6b1f;color:var(--bad);border:1px solid rgba(255,107,107,.2)}.intel-flag.warn{background:#f7c9481f;color:var(--warn);border:1px solid rgba(247,201,72,.2)}.intel-flag.good{background:#51cf661f;color:var(--good);border:1px solid rgba(81,207,102,.2)}.intel-panels--single{grid-template-columns:1fr;margin-bottom:16px}.download-chart-wrap{margin-top:2px}.download-chart-header{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.download-chart-current{font-size:20px;font-weight:700;color:var(--text-primary, #e8eaf0);letter-spacing:-.5px}.download-chart-delta{font-size:12px;font-weight:600}.download-chart-delta.good{color:var(--good)}.download-chart-delta.warn{color:var(--warn)}.download-chart-delta.bad{color:var(--bad)}.download-chart-canvas{width:100%;line-height:0;margin-bottom:4px}.download-chart-svg{width:100%;height:auto;display:block;overflow:visible}.dl-chart-axis{font-size:10px;fill:var(--muted2, #666);font-family:inherit;text-anchor:middle}.dl-versions{margin-top:12px;border-top:1px solid rgba(255,255,255,.07);padding-top:10px}.dl-versions-label{font-size:11px;font-weight:700;color:var(--muted2, #666);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.dl-versions-note{font-weight:400;text-transform:none;letter-spacing:0;color:var(--muted)}.dl-ver-row{display:grid;grid-template-columns:52px 1fr 34px;align-items:center;gap:6px;margin-bottom:5px}.dl-ver-name{font-size:11px;font-family:monospace;color:var(--text-secondary, #9ca3af);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dl-ver-bar-wrap{height:5px;background:#ffffff0f;border-radius:3px;overflow:hidden}.dl-ver-bar{height:100%;background:#5b8dee;border-radius:3px;transition:width .4s ease}.dl-ver-pct{font-size:11px;color:var(--muted);text-align:right}.dl-ver-tip{display:none;position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);background:#1a1d23;border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:7px 10px;white-space:nowrap;pointer-events:none;z-index:100;min-width:140px;text-align:center;box-shadow:0 4px 16px #00000080}.dl-ver-tip strong{display:block;font-size:13px;font-weight:700;color:#e8eaf0;margin-bottom:2px}.dl-ver-tip span{font-size:11px;color:var(--muted)}.dl-ver-row:hover .dl-ver-tip{display:block}.rpin-dot{fill:#ef4444;opacity:.75;transition:r .1s}.rpin-line{stroke:#ef4444;stroke-width:1;stroke-dasharray:3 3;opacity:.45}.rpin-tip-bg{fill:#1a1d23;stroke:#ffffff1f;stroke-width:1}.rpin-tip-ver{fill:#e8eaf0;font-size:11px;font-weight:600;font-family:inherit}.rpin-tip-date{fill:#9ca3af;font-size:10px;font-family:inherit}.attestation-missing p{font-size:13px;line-height:1.5}.intel-tag{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px;vertical-align:middle}.intel-tag.good{background:#51cf661f;color:var(--good)}.ci-publisher{color:var(--muted)}.ci-publisher-note{padding:10px 0}.ci-publisher-note p{font-size:13px;line-height:1.5;margin:0}.commit-sha{font-size:12px;background:#ffffff0f;padding:2px 6px;border-radius:4px}.scan-footer{margin-top:20px;padding:12px 18px;border-radius:10px 10px 0 0;background:#ffffff08;border:1px solid var(--border2);font-size:12px;color:var(--muted);text-align:center}.scan-footer--empty{color:var(--muted2);font-style:italic}.risk-stats-bar{display:flex;gap:1px;margin:16px 0;border-radius:10px;overflow:hidden;background:var(--border2)}.risk-stat-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:var(--bg2)}.risk-stat-num{font-size:20px;font-weight:700;color:var(--text)}.risk-stat-level{font-size:14px;font-weight:700;text-transform:uppercase}.risk-stat-label{font-size:11px;color:var(--muted);margin-top:2px}.sidebar-source-link{color:var(--info);text-decoration:none;word-break:break-all;font-size:12px}.sidebar-source-link:hover{text-decoration:underline}.sidebar-copy-btn{width:100%;margin-top:8px}.sidebar-change-item{display:flex;gap:8px;align-items:baseline;padding:6px 0;font-size:12px;color:var(--muted)}.sidebar-change-item .icon{font-size:14px;width:18px;text-align:center;flex-shrink:0}.sidebar-change-item p{margin:0;line-height:1.4}.confidence-notice{display:flex;align-items:center;gap:10px;margin-top:12px;padding:8px 14px;border-radius:8px;background:#ffffff08;border:1px solid var(--border2);font-size:12px}.confidence-badge{font-weight:700;padding:2px 8px;border-radius:4px;font-size:11px;text-transform:uppercase}.confidence-badge.warn{background:#f7c9481f;color:var(--warn)}.confidence-badge.bad{background:#ff6b6b1f;color:var(--bad)}.confidence-detail{color:var(--muted)}.analysis-item.correlation-alert,.analysis-item.sast-alert{border:1px solid rgba(255,107,107,.15);border-radius:10px;padding:12px 14px;background:#ff6b6b0a}.analysis-item.correlation-alert .content p,.analysis-item.sast-alert .content p{font-family:var(--mono);font-size:12px;color:var(--muted)}.version-resolved-note{font-size:11px;color:var(--muted2);margin-top:4px;padding:0 2px}.version-resolved-note code{font-family:var(--mono);padding:1px 4px;border-radius:3px;background:#ffffff0f;font-size:11px}.dep-truncated{margin-top:8px;font-style:italic;font-size:11px}.decision-header{border:1px solid rgba(57,217,138,.2);border-radius:18px;background:linear-gradient(135deg,#39d98a0f,#64b5ff08);overflow:hidden;margin-bottom:20px}.decision-header.warn{border-color:#f7c94840;background:linear-gradient(135deg,#f7c9480f,#f7c94805)}.decision-header.bad{border-color:#ff6b6b4d;background:linear-gradient(135deg,#ff6b6b14,#ff464608)}.decision-top{padding:18px 20px;display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.decision-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;background:linear-gradient(135deg,#39d98a33,#39d98a1a);border:2px solid var(--good)}.decision-icon.good{border-color:var(--good)}.decision-icon.warn{border-color:var(--warn);background:linear-gradient(135deg,#f7c94833,#f7c9481a)}.decision-icon.bad{border-color:var(--bad);background:linear-gradient(135deg,#ff6b6b33,#ff6b6b1a)}.decision-text{flex:1;min-width:200px}.decision-text h2{margin:0;font-size:20px;font-weight:800}.decision-text h2.good{color:var(--good)}.decision-text h2.warn{color:var(--warn)}.decision-text h2.bad{color:var(--bad)}.decision-explanation{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.decision-metrics{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);background:#00000026}.decision-metric{flex:1;min-width:140px;padding:12px 18px;border-right:1px solid rgba(255,255,255,.06)}.decision-metric:last-child{border-right:none}.metric-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted2);margin-bottom:5px;font-weight:600}.metric-value{font-size:14px;font-weight:700}.metric-value.bad{color:var(--bad)}.metric-value.warn{color:var(--warn)}.metric-value.good{color:var(--good)}.blast-items{display:flex;flex-wrap:wrap;gap:4px}.blast-tag{display:inline-block;padding:2px 8px;background:#ff6b6b1f;border-radius:4px;font-size:11px;font-weight:600;color:#ffa3a3}.decision-action{flex:1.5;min-width:200px;padding:12px 18px}.action-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted2);margin-bottom:5px;font-weight:600}.action-text{font-size:13px;font-weight:600;color:var(--fg);line-height:1.4}.decision-stats{display:flex;gap:16px;padding:12px 20px;flex-wrap:wrap;align-items:center}.decision-stat{text-align:center}.decision-stat .num{font-size:24px;font-weight:800}.decision-stat .num.good{color:var(--good)}.decision-stat .num.warn{color:var(--warn)}.decision-stat .num.bad{color:var(--bad)}.decision-stat .lbl{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}@media(max-width:640px){.decision-top{padding:14px}.decision-text h2{font-size:17px}.decision-metrics{flex-direction:column}.decision-metric{border-right:none;border-bottom:1px solid rgba(255,255,255,.06);padding:10px 14px}.decision-metric:last-child{border-bottom:none}.decision-action{border-right:none}.decision-stats{padding:10px 14px;gap:12px}}.decision-signals{border-top:1px solid rgba(255,255,255,.06);padding:12px 20px}.decision-signals-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.decision-signals-title{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted2);font-weight:700}.decision-signals-list{display:flex;flex-direction:column;gap:4px}.decision-signal-item{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#ffffff08;border-radius:6px;font-size:13px}.decision-signal-severity{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--muted)}.decision-signal-severity.bad{background:var(--bad)}.decision-signal-severity.warn{background:var(--warn)}.decision-signal-severity.info{background:var(--info)}.decision-signal-title{color:var(--fg);font-weight:500;flex:1}.decision-signal-scope{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted2);font-weight:600}.decision-signals-more{margin-top:6px;padding-left:10px}.decision-signals-more a{font-size:12px;color:var(--muted);text-decoration:none}.decision-signals-more a:hover{color:var(--fg)}@media(max-width:640px){.decision-signals{padding:10px 14px}.decision-signal-item{flex-wrap:wrap}.decision-signal-scope{display:none}}.exploit-scenario-card{margin-top:16px;border:1px solid rgba(255,107,107,.18);border-radius:14px;background:linear-gradient(135deg,#ff6b6b0a,#ff464605);overflow:hidden}.exploit-scenario-header{padding:14px 18px;border-bottom:1px solid rgba(255,107,107,.1);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.exploit-scenario-header h4{margin:0;font-size:14px;font-weight:700;color:#ffa3a3}.exploit-scenario-meta{display:flex;gap:8px}.scenario-type{padding:3px 10px;background:#ff6b6b26;border-radius:4px;font-size:11px;font-weight:600;color:#ffa3a3}.scenario-env{padding:3px 10px;background:#ffffff0f;border-radius:4px;font-size:11px;font-weight:600;color:var(--muted)}.exploit-chain{padding:16px 18px}.exploit-step{display:flex;align-items:flex-start;gap:12px}.exploit-step-num{width:26px;height:26px;border-radius:50%;background:#ff6b6b26;border:1px solid rgba(255,107,107,.3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#ffa3a3;flex-shrink:0}.exploit-step-text{font-size:13px;color:var(--fg);line-height:1.5;padding-top:3px}.exploit-connector{width:1px;height:12px;background:#ff6b6b33;margin-left:13px}@media(max-width:640px){.exploit-scenario-header{flex-direction:column;align-items:flex-start}.exploit-chain{padding:12px 14px}}.trust-signals-card{margin-top:16px;border:1px solid rgba(57,217,138,.18);border-radius:14px;background:linear-gradient(135deg,#39d98a0a,#39d98a03);padding:16px 18px}.trust-signals-card h4{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--good)}.trust-signals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(max-width:640px){.trust-signals-grid{grid-template-columns:1fr}}.trust-signal{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#39d98a0f;border-radius:8px;font-size:13px;color:var(--fg)}.trust-icon{width:18px;height:18px;flex-shrink:0}.trust-icon:before{display:block;text-align:center;font-size:13px;line-height:18px}.trust-icon-shield:before{content:"\1f6e1\fe0f"}.trust-icon-download:before{content:"\1f4e6"}.trust-icon-check:before{content:"\2713";color:var(--good);font-weight:700}.trust-icon-code:before{content:"\1f517"}.trust-icon-star:before{content:"\2b50"}.trust-icon-package:before{content:"\1f4e6"}.trust-icon-activity:before{content:"\1f4ca"}.trust-text{font-weight:500}.production-context-card{margin-top:16px;border:1px solid rgba(247,201,72,.18);border-radius:14px;background:linear-gradient(135deg,#f7c9480a,#f7c94803);padding:16px 18px}.production-context-card h4{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--warn)}.context-environments{display:flex;flex-direction:column;gap:6px}.context-env{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#ffffff08;border-radius:8px;border-left:3px solid var(--warn)}.context-env.bad{border-left-color:var(--bad)}.context-env.warn{border-left-color:var(--warn)}.context-env-name{font-size:13px;font-weight:700;color:var(--fg)}.context-env-risk{font-size:12px;color:var(--muted)}@media(max-width:640px){.context-env{flex-direction:column;align-items:flex-start;gap:4px}}.capability-tag.tag-expected{background:#39d98a1f;color:#aef5d2}.capability-tag.tag-typical{background:#64b5ff1f;color:#a6d4ff}.capability-tag.tag-unusual{background:#f7c94826;color:#ffe08a}.capability-tag.tag-high-risk{background:#ff6b6b2e;color:#ffa3a3;font-weight:700}.capability-impact{margin-top:6px;padding:8px 12px;background:#ffffff08;border-left:2px solid rgba(247,201,72,.3);border-radius:0 6px 6px 0;font-size:12px;color:var(--muted);font-style:italic;line-height:1.5}.blast-radius-section{border-top:1px solid rgba(255,255,255,.06);background:#0000001f}.blast-radius-header{padding:10px 20px 4px;display:flex;align-items:baseline;gap:10px}.blast-radius-title{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted2);font-weight:700}.blast-radius-sub{font-size:11px;color:var(--muted)}.blast-radius-rows{padding:4px 20px 12px}.blast-radius-row{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px}.blast-capability{color:var(--fg);font-weight:600;min-width:130px}.blast-arrow{color:var(--muted2);font-size:12px}.blast-asset{color:#ffa3a3;font-weight:500}@media(max-width:640px){.blast-radius-header{padding:10px 14px 4px;flex-direction:column;gap:2px}.blast-radius-rows{padding:4px 14px 12px}.blast-radius-row{flex-wrap:wrap}.blast-capability{min-width:auto}}.trust-link{color:var(--fg);text-decoration:none;border-bottom:1px dotted rgba(255,255,255,.2);transition:border-color .15s}.trust-link:hover{border-bottom-color:var(--good);color:var(--good)}.maintainer-note{padding:4px 12px 4px 30px;font-size:11px;line-height:1.4;margin:-2px 0 6px}.maintainer-note.bad{color:#ffa3a3}.maintainer-note.warn{color:#ffe08a}.supply-chain-section .intel-panels{margin-top:20px}.maintainer-roster{margin-bottom:16px}.roster-header h4{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--fg)}.roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.roster-card{display:block;background:var(--card-bg, rgba(255,255,255,.03));border:1px solid var(--border2);border-radius:10px;padding:14px;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}.roster-card:hover{border-color:var(--accent, #6e8efb);background:#6e8efb0a}.roster-card--flagged{border-color:var(--warn)}.roster-card-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.roster-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--border2);display:flex;align-items:center;justify-content:center}.roster-avatar img{width:100%;height:100%;object-fit:cover}.roster-avatar-fallback{font-size:15px;font-weight:700;color:var(--muted)}.roster-avatar--sm{width:28px;height:28px}.roster-avatar--sm .roster-avatar-fallback{font-size:12px}.roster-identity{flex:1;min-width:0}.roster-name{display:block;font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-role{display:block;font-size:11px;color:var(--muted);text-transform:lowercase}.roster-risk{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:2px 6px;border-radius:4px;flex-shrink:0}.roster-risk--low{background:#50c87826;color:var(--good)}.roster-risk--medium{background:#ffe08a26;color:var(--warn)}.roster-risk--high{background:#ff6b6b26;color:var(--bad)}.roster-risk--critical{background:#ff323233;color:#ff5050}.roster-card-stats{display:flex;gap:12px;flex-wrap:wrap}.roster-stat{display:flex;flex-direction:column}.roster-stat-value{font-size:13px;font-weight:600}.roster-stat-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.roster-card-flags{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.roster-flag{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:2px 6px;border-radius:3px}.roster-flag--high,.roster-flag--critical{background:#ff6b6b26;color:var(--bad)}.roster-flag--medium{background:#ffe08a26;color:var(--warn)}.roster-flag--low,.roster-flag--info{background:#50c87826;color:var(--good)}.roster-more{font-size:12px;color:var(--muted);padding:10px;text-align:center}.roster-card--compact{padding:10px}.roster-card--compact .roster-card-top{margin-bottom:0}.maintainer-profile{max-width:1100px;margin:0 auto;padding:24px 16px}.maintainer-profile-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.maintainer-profile-identity{display:flex;align-items:center;gap:16px}.maintainer-profile-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;flex-shrink:0}.maintainer-profile-avatar img{width:100%;height:100%;object-fit:cover}.maintainer-profile-avatar--fallback{background:var(--border2);display:flex;align-items:center;justify-content:center}.maintainer-profile-avatar--fallback span{font-size:26px;font-weight:700;color:var(--muted)}.maintainer-profile-identity h1{font-size:24px;margin:0 0 4px}.maintainer-profile-link{font-size:13px;color:var(--accent, #6e8efb);text-decoration:none;margin-right:12px}.maintainer-profile-link:hover{text-decoration:underline}.maintainer-profile-risk{display:flex;flex-direction:column;align-items:center;padding:10px 16px;border-radius:10px;border:1px solid var(--border2)}.maintainer-profile-risk .risk-label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.maintainer-profile-risk .risk-value{font-size:18px;font-weight:700}.maintainer-profile-risk--low .risk-value{color:var(--good)}.maintainer-profile-risk--medium .risk-value{color:var(--warn)}.maintainer-profile-risk--high .risk-value{color:var(--bad)}.maintainer-profile-risk--critical .risk-value{color:#ff5050}.maintainer-profile-grid{display:grid;grid-template-columns:1fr 340px;gap:16px;align-items:start}@media(max-width:768px){.maintainer-profile-grid{grid-template-columns:1fr}}.maintainer-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.maintainer-stat{background:#ffffff08;border:1px solid var(--border2);border-radius:8px;padding:12px;text-align:center}.maintainer-stat-value{display:block;font-size:18px;font-weight:700}.maintainer-stat-label{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.maintainer-section{margin-top:16px}.maintainer-section h4{font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin:0 0 8px}.maintainer-lang-bar{display:flex;gap:8px;flex-wrap:wrap}.lang-segment{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--fg)}.lang-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.lang-dot--javascript{background:#f1e05a}.lang-dot--typescript{background:#3178c6}.lang-dot--python{background:#3572a5}.lang-dot--go{background:#00add8}.lang-dot--rust{background:#dea584}.lang-dot--java{background:#b07219}.lang-dot--ruby{background:#701516}.lang-dot--shell,.lang-dot--bash{background:#89e051}.lang-pct{color:var(--muted);font-size:11px}.maintainer-flags{display:flex;flex-direction:column;gap:8px}.maintainer-flag-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:6px;border:1px solid var(--border2);font-size:13px}.maintainer-flag-item--critical,.maintainer-flag-item--high{border-color:#ff6b6b4d;background:#ff6b6b0d}.maintainer-flag-item--medium{border-color:#ffe08a4d;background:#ffe08a0d}.flag-icon{flex-shrink:0}.flag-content{flex:1}.flag-label{font-weight:600;display:block}.flag-desc{font-size:12px;color:var(--muted);display:block;margin-top:2px}.maintainer-trust-list{display:flex;flex-direction:column;gap:6px}.maintainer-trust-item{display:flex;align-items:center;gap:6px;font-size:13px}.trust-check{font-size:14px;font-weight:700;width:18px;text-align:center;color:var(--good);flex-shrink:0}.trust-narrative{font-size:14px;line-height:1.5;color:var(--fg-muted, #b0b0b0);margin:0 0 14px}.trust-safety-list{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.trust-safety-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fg);padding:5px 10px;background:#39d98a0f;border-radius:8px}.trust-compare{border-top:1px solid rgba(255,255,255,.06);padding-top:12px}.trust-compare-header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted, #888);margin-bottom:8px}.trust-compare-row{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:baseline;padding:4px 0;font-size:13px}.trust-compare-metric{color:var(--fg-muted, #b0b0b0)}.trust-compare-value{font-weight:600;color:var(--good);text-align:center}.trust-compare-context{color:var(--fg-muted, #888);font-size:12px;text-align:right}@media(max-width:640px){.trust-compare-row{grid-template-columns:1fr;gap:2px;padding:6px 0}.trust-compare-context{text-align:left}}.maintainer-package-list{display:flex;flex-direction:column;gap:6px}.maintainer-package-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid var(--border2);border-radius:6px;text-decoration:none;color:inherit;font-size:13px;transition:border-color .15s}.maintainer-package-item:hover{border-color:var(--accent, #6e8efb)}.maintainer-package-top{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.maintainer-package-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.maintainer-package-risk{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:1px 5px;border-radius:3px;flex-shrink:0;white-space:nowrap}.maintainer-package-risk--low{background:#50c87826;color:var(--good)}.maintainer-package-risk--medium{background:#ffe08a26;color:var(--warn)}.maintainer-package-risk--high{background:#ff6b6b26;color:var(--bad)}.maintainer-package-dl{font-size:12px;color:var(--muted);flex-shrink:0}.maintainer-co-list{display:flex;flex-direction:column;gap:6px}.maintainer-header-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.maintainer-header-name-row h1{font-size:24px;margin:0}.maintainer-header-links{display:flex;gap:12px;margin-top:4px}.maintainer-ecosystem-badge{font-size:10px;font-weight:700;text-transform:none;letter-spacing:.5px;padding:2px 8px;border-radius:4px;background:#6e8efb26;color:var(--accent, #6e8efb)}.maintainer-account-tag{font-size:11px;font-weight:600;padding:2px 10px;border-radius:10px;border:1px solid var(--border2)}.maintainer-account-tag--good{background:#50c8781a;color:var(--good);border-color:#50c87840}.maintainer-account-tag--warn{background:#ffe08a1a;color:var(--warn);border-color:#ffe08a40}.maintainer-account-tag--bad{background:#ff6b6b1a;color:var(--bad);border-color:#ff6b6b40}.maintainer-impact-bar{display:flex;justify-content:space-around;align-items:center;gap:12px;padding:16px 20px;border-radius:10px;border:1px solid var(--border2);background:#ffffff05;margin-bottom:16px;flex-wrap:wrap}.maintainer-impact-stat{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:80px}.maintainer-impact-value{font-size:20px;font-weight:700;line-height:1.2}.maintainer-impact-label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-top:2px}.maintainer-dormancy-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-radius:10px;margin-bottom:16px;border:1px solid rgba(255,107,107,.3);background:#ff6b6b0f}.maintainer-dormancy-alert--medium{border-color:#ffe08a4d;background:#ffe08a0f}.dormancy-alert-icon{font-size:18px;font-weight:800;color:var(--bad);flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ff6b6b26}.maintainer-dormancy-alert--medium .dormancy-alert-icon{color:var(--warn);background:#ffe08a26}.dormancy-alert-content{flex:1}.dormancy-alert-title{display:block;font-weight:700;font-size:14px;color:var(--bad);margin-bottom:2px}.maintainer-dormancy-alert--medium .dormancy-alert-title{color:var(--warn)}.dormancy-alert-text{display:block;font-size:13px;color:var(--fg);line-height:1.4}.maintainer-trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.maintainer-trust-grid{grid-template-columns:1fr}}.maintainer-trust-block{padding:14px;border-radius:8px;border:1px solid var(--border2);background:#ffffff05}.maintainer-trust-block-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.maintainer-trust-block-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--muted)}.maintainer-trust-badge{font-size:11px;font-weight:700;padding:2px 10px;border-radius:10px}.maintainer-trust-badge.good{background:#50c87826;color:var(--good)}.maintainer-trust-badge.bad{background:#ff6b6b26;color:var(--bad)}.maintainer-trust-warning{font-size:12px;color:var(--bad);line-height:1.5;margin:0;opacity:.85}.maintainer-2fa-timeline{margin-top:12px;border-top:1px solid var(--border2);padding-top:10px}.maintainer-2fa-timeline-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:6px}.maintainer-2fa-timeline-items{display:flex;flex-direction:column;gap:4px}.maintainer-2fa-timeline-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--fg)}.maintainer-2fa-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.maintainer-2fa-dot.good{background:var(--good)}.maintainer-2fa-dot.bad{background:var(--bad)}.maintainer-2fa-timeline-date{color:var(--muted);min-width:70px}.maintainer-2fa-timeline-state{font-weight:600}.maintainer-2fa-timeline-pkgs{color:var(--muted);font-size:10px}.maintainer-identity-signals{display:flex;flex-direction:column;gap:6px}.maintainer-identity-signal{display:flex;align-items:center;gap:6px;font-size:13px}.maintainer-identity-signal .trust-check.good{color:var(--good)}.maintainer-identity-signal .trust-check.warn{color:var(--warn)}.maintainer-identity-signal .trust-check.bad{color:var(--bad)}.maintainer-sole-warning{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;border-radius:8px;border:1px solid rgba(255,224,138,.3);background:#ffe08a0f}.maintainer-sole-warning-icon{font-size:14px;font-weight:800;color:var(--warn);flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffe08a26}.maintainer-sole-warning-title{display:block;font-weight:700;font-size:13px;color:var(--warn)}.maintainer-sole-warning-text{display:block;font-size:12px;color:var(--fg);line-height:1.4;margin-top:2px}.maintainer-capability-matrix{display:flex;flex-direction:column;gap:10px}.maintainer-capability-row{border:1px solid var(--border2);border-radius:8px;padding:12px;background:#ffffff05}.maintainer-capability-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.maintainer-capability-icon{font-size:9px;font-weight:800;letter-spacing:.3px;padding:2px 6px;border-radius:3px;flex-shrink:0}.maintainer-capability-icon--bad{background:#ff6b6b26;color:var(--bad)}.maintainer-capability-icon--warn{background:#ffe08a26;color:var(--warn)}.maintainer-capability-icon--info{background:#6e8efb26;color:var(--accent, #6e8efb)}.maintainer-capability-name{font-size:13px;font-weight:600;flex:1}.maintainer-capability-count{font-size:11px;color:var(--muted);flex-shrink:0}.maintainer-capability-packages{display:flex;flex-wrap:wrap;gap:4px}.maintainer-capability-pkg-chip{font-size:11px;padding:1px 8px;border-radius:4px;background:#ffffff0d;border:1px solid var(--border2);color:var(--accent, #6e8efb);text-decoration:none;transition:border-color .15s}.maintainer-capability-pkg-chip:hover{border-color:var(--accent, #6e8efb)}.maintainer-package-item{flex-direction:column;align-items:stretch;gap:4px}.maintainer-package-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.maintainer-pkg-caps{display:flex;gap:3px}.maintainer-pkg-cap-icon{font-size:8px;font-weight:800;letter-spacing:.2px;padding:1px 4px;border-radius:2px}.maintainer-pkg-cap-icon--bad{background:#ff6b6b26;color:var(--bad)}.maintainer-pkg-cap-icon--warn{background:#ffe08a26;color:var(--warn)}.maintainer-pkg-cap-icon--info{background:#6e8efb1a;color:var(--accent, #6e8efb)}.maintainer-package-published{font-size:11px;color:var(--muted)}.maintainer-risk-breakdown{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-bottom:6px}.maintainer-risk-segment{display:flex;align-items:center;justify-content:center;font-size:0;min-width:4px}.maintainer-risk-segment--critical{background:#ff5050}.maintainer-risk-segment--high{background:var(--bad)}.maintainer-risk-segment--medium{background:var(--warn)}.maintainer-risk-segment--low{background:var(--good)}.maintainer-risk-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.maintainer-risk-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted)}.maintainer-risk-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.maintainer-risk-dot--critical{background:#ff5050}.maintainer-risk-dot--high{background:var(--bad)}.maintainer-risk-dot--medium{background:var(--warn)}.maintainer-risk-dot--low{background:var(--good)}.maintainer-trust-verdict{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:8px;margin-bottom:16px;border:1px solid var(--border2)}.maintainer-trust-verdict--good{background:#50c8780f;border-color:#50c87840}.maintainer-trust-verdict--ok{background:#50b4dc0f;border-color:#50b4dc40}.maintainer-trust-verdict--warn{background:#ffe08a0f;border-color:#ffe08a40}.maintainer-trust-verdict--bad{background:#ff6b6b0f;border-color:#ff6b6b40}.trust-verdict-grade{font-size:36px;font-weight:800;line-height:1;min-width:48px;text-align:center}.maintainer-trust-verdict--good .trust-verdict-grade{color:var(--good)}.maintainer-trust-verdict--ok .trust-verdict-grade{color:#5bb8d4}.maintainer-trust-verdict--warn .trust-verdict-grade{color:var(--warn)}.maintainer-trust-verdict--bad .trust-verdict-grade{color:var(--bad)}.trust-verdict-body{flex:1;min-width:0}.trust-verdict-headline{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.trust-verdict-label{font-size:16px;font-weight:700;color:var(--fg)}.trust-verdict-score{font-size:12px;color:var(--muted)}.trust-verdict-factors{display:flex;flex-wrap:wrap;gap:6px}.trust-factor{font-size:11px;padding:2px 8px;border-radius:4px}.trust-factor--positive{background:#50c8781a;color:var(--good)}.trust-factor--negative{background:#ff6b6b1a;color:var(--bad)}details.maintainer-capability-row{border:1px solid var(--border2);border-radius:6px;margin-bottom:6px}details.maintainer-capability-row[open]{border-color:var(--border)}details.maintainer-capability-row>summary.maintainer-capability-header{cursor:pointer;padding:8px 12px;list-style:none;display:flex;align-items:center;gap:8px;user-select:none}details.maintainer-capability-row>summary.maintainer-capability-header::-webkit-details-marker{display:none}.maintainer-capability-chevron{margin-left:auto;width:16px;height:16px;position:relative;flex-shrink:0}.maintainer-capability-chevron:after{content:"";position:absolute;top:4px;left:4px;width:6px;height:6px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .15s}details.maintainer-capability-row[open] .maintainer-capability-chevron:after{transform:rotate(45deg);top:2px}details.maintainer-capability-row .maintainer-capability-packages{padding:4px 12px 12px}.maintainer-package-item--hidden,.maintainer-sole-pkg-link--hidden{display:none}.maintainer-show-all-btn{display:block;width:100%;padding:10px;margin-top:8px;border:1px dashed var(--border2);border-radius:6px;background:transparent;color:var(--accent, #6e8efb);font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:border-color .15s,background .15s}.maintainer-show-all-btn:hover{border-color:var(--accent, #6e8efb);background:#6e8efb0a}.maintainer-show-all-btn--sm{display:inline-block;width:auto;padding:2px 10px;margin-top:4px;font-size:11px}.maintainer-member-since{font-size:11px;color:var(--muted)}.maintainer-trend-indicator{font-size:11px;font-weight:600;padding:1px 6px;border-radius:8px;margin-top:2px}.maintainer-trend-indicator.good{background:#50c8781f;color:var(--good)}.maintainer-trend-indicator.warn{background:#ffe08a1f;color:var(--warn)}.maintainer-trend-indicator.bad{background:#ff6b6b1f;color:var(--bad)}.maintainer-timeline-chart{display:flex;align-items:flex-end;gap:2px;height:48px;margin-top:8px}.maintainer-timeline-bar-wrap{flex:1;display:flex;align-items:flex-end;height:100%;cursor:default}.maintainer-timeline-bar{width:100%;min-height:2px;border-radius:2px 2px 0 0;background:var(--accent, #6e8efb);opacity:.7;transition:opacity .15s}.maintainer-timeline-bar-wrap:hover .maintainer-timeline-bar{opacity:1}.maintainer-timeline-bar--empty{background:var(--border2);min-height:2px;height:2px!important;opacity:.4}.maintainer-timeline-labels{display:flex;justify-content:space-between;margin-top:4px}.maintainer-timeline-label{font-size:9px;color:var(--muted);white-space:nowrap}.maintainer-sole-packages{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.maintainer-sole-pkg-link{font-size:11px;padding:1px 8px;border-radius:4px;background:#ffe08a14;border:1px solid rgba(255,224,138,.2);color:var(--warn);text-decoration:none;transition:border-color .15s}.maintainer-sole-pkg-link:hover{border-color:var(--warn)}.maintainer-package-sole{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:1px 5px;border-radius:3px;background:#ffe08a1f;color:var(--warn);flex-shrink:0;white-space:nowrap}.composite-score{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-left:3px solid var(--info);border-radius:12px;padding:16px 20px;margin-bottom:16px}.composite-score.bad{border-left-color:var(--bad);background:#ff6b6b0a}.composite-score.warn{border-left-color:var(--warn);background:#f7c9480a}.composite-score.good{border-left-color:var(--good);background:#39d98a0a}.composite-score-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.composite-score-total{display:flex;align-items:baseline;gap:8px}.score-value{font-size:28px;font-weight:700;line-height:1;color:var(--text)}.composite-score.bad .score-value{color:var(--bad)}.composite-score.warn .score-value{color:var(--warn)}.composite-score.good .score-value{color:var(--good)}.score-label{font-size:12px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.composite-alert-level{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:4px}.composite-alert-level.bad{background:#ff6b6b26;color:var(--bad)}.composite-alert-level.warn{background:#f7c94826;color:var(--warn)}.composite-alert-level.good{background:#39d98a26;color:var(--good)}.composite-components{display:flex;flex-direction:column;gap:6px}.composite-component{display:flex;align-items:center;gap:10px;font-size:13px;padding:6px 0;border-top:1px solid rgba(255,255,255,.04)}.component-phase{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#ffffff80;min-width:80px}.component-points{font-family:SF Mono,Fira Code,monospace;font-size:13px;font-weight:600;color:var(--bad);min-width:32px}.composite-score.warn .component-points{color:var(--warn)}.composite-score.good .component-points{color:var(--good)}.component-reason{color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composite-component.has-evidence{flex-direction:column;align-items:stretch;gap:0}.composite-component.has-evidence .component-row{display:flex;align-items:center;gap:10px}.component-evidence{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding:10px 12px;background:#00000040;border-radius:8px;border-left:2px solid rgba(255,107,107,.3)}.component-evidence-signal{display:flex;flex-direction:column;gap:6px}.component-evidence-signal+.component-evidence-signal{padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}.component-evidence-header{display:flex;align-items:center;gap:8px}.component-evidence-title{font-size:12px;font-weight:600;color:#fffc}.component-evidence-severity{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:1px 6px;border-radius:3px}.component-evidence-severity.bad{background:#ff6b6b26;color:var(--bad)}.component-evidence-severity.warn{background:#f7c94826;color:var(--warn)}.component-evidence-snippet{display:flex;flex-direction:column;gap:2px}.component-evidence-snippet code{font-family:var(--mono);font-size:11px;color:var(--text);background:#0000004d;padding:6px 8px;border-radius:4px;white-space:pre;overflow-x:auto}.component-evidence-source{font-family:var(--mono);font-size:10px;color:#fff6}.component-evidence-detail{font-size:11px;color:#ffffff80}.sidebar-alerts{margin-bottom:16px}.sidebar-alerts .sidebar-title{display:flex;align-items:center;gap:8px}.sidebar-alerts-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.sidebar-alert{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;border-left:2px solid var(--info)}.sidebar-alert.critical{border-left-color:var(--bad)}.sidebar-alert.high{border-left-color:#ff8f6b}.sidebar-alert.medium{border-left-color:var(--warn)}.sidebar-alert.low{border-left-color:var(--good)}.sidebar-alert-level{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.sidebar-alert.critical .sidebar-alert-level{color:var(--bad)}.sidebar-alert.high .sidebar-alert-level{color:#ff8f6b}.sidebar-alert.medium .sidebar-alert-level{color:var(--warn)}.sidebar-alert.low .sidebar-alert-level{color:var(--good)}.sidebar-alert-header{display:flex;align-items:center;gap:8px}.sidebar-alert-score{font-family:var(--mono);font-size:10px;font-weight:600;color:var(--bad);background:#ff6b6b1a;padding:1px 5px;border-radius:3px}.sidebar-alert-version{font-family:var(--mono);font-size:11px;color:var(--accent)}.sidebar-alert-triggers{list-style:none;padding:0;margin:2px 0 0;display:flex;flex-direction:column;gap:1px}.sidebar-alert-triggers li{font-size:11px;color:#ffffffb3;line-height:1.4}.sidebar-alert-triggers li:before{content:"\203a  ";color:#ff8f6b;font-weight:600}.sidebar-alert-triggers.trust li:before{color:#ffe08a}.sidebar-alert-time{font-size:11px;color:#ffffff59;margin-left:auto}.sbom-explainer{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 16px}.sbom-explainer strong{color:var(--text)}.sbom-explainer code{font-family:var(--mono);font-size:12px;color:var(--muted);background:#ffffff0f;padding:1px 5px;border-radius:3px}.sbom-verified{font-size:12px;color:var(--good);font-style:italic}.sbom-section{margin-bottom:16px}.sbom-section:last-child{margin-bottom:0}.sbom-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 10px}.sbom-section-title--warn{color:var(--warn)}.sbom-components{display:flex;flex-direction:column;gap:8px}.sbom-components--compact{gap:4px;margin-top:10px}.sbom-components--compact .sbom-component{padding:8px 12px}.sbom-component{padding:12px 14px;background:#00000026;border:1px solid var(--border2);border-radius:8px;transition:border-color .15s}.sbom-component--vulnerable{border-left:3px solid var(--warn);background:#f7c94808}.sbom-component-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.sbom-component-name code{font-family:var(--mono);font-size:13px;color:var(--text)}.sbom-component-version{font-family:var(--mono);font-size:12px;color:var(--muted)}.sbom-component-eco{font-size:10px;color:var(--muted2);background:#ffffff0f;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.sbom-component-vulns{margin-top:10px;display:flex;flex-direction:column;gap:6px}.sbom-vuln{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.sbom-vuln-severity{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:2px 6px;border-radius:4px}.sbom-vuln-severity.critical{color:#ffc2c2;background:#ff6b6b33}.sbom-vuln-severity.high{color:#ffb8a0;background:#ff8f6b33}.sbom-vuln-severity.medium{color:#ffe08a;background:#f7c94833}.sbom-vuln-severity.low{color:#a6d4ff;background:#64b5ff33}.sbom-vuln-id{font-family:var(--mono);font-size:12px;color:var(--info)}.sbom-vuln-summary{color:var(--muted);flex:1;min-width:0}.sbom-vuln-fix{font-family:var(--mono);font-size:11px;color:var(--good);background:#39d98a1a;padding:2px 6px;border-radius:4px;white-space:nowrap}.sbom-safe-details{border:1px solid var(--border2);border-radius:8px}.sbom-safe-summary{padding:12px 14px;font-size:13px;color:var(--muted);cursor:pointer;user-select:none;list-style:none}.sbom-safe-summary::-webkit-details-marker{display:none}.sbom-safe-summary:before{content:"\25b8  ";color:var(--muted2)}.sbom-safe-details[open] .sbom-safe-summary:before{content:"\25be  "}.sbom-safe-details[open] .sbom-safe-summary{border-bottom:1px solid var(--border2)}.sbom-safe-details .sbom-components--compact{padding:8px;max-height:400px;overflow-y:auto}.sidebar-link{display:inline-block;font-size:13px;color:var(--info);text-decoration:none;margin-top:6px}.sidebar-link:hover{text-decoration:underline}.text-warn{color:var(--warn);font-weight:600}@media(max-width:640px){.sbom-vuln{flex-direction:column;align-items:flex-start;gap:4px}}.dependents-list{display:flex;flex-direction:column;gap:8px;margin-top:24px}.dependent-card{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border:1px solid var(--border);border-radius:10px;background:#0000001f;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}.dependent-card:hover{border-color:var(--accent);background:#ffffff08}.dependent-header{display:flex;align-items:center;gap:10px}.dependent-name{font-weight:600;font-size:14px}.dependent-meta{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--muted)}.dependent-version{font-family:var(--mono);font-size:12px}.dependent-type{font-size:11px;text-transform:uppercase;letter-spacing:.3px;opacity:.7}.dependents-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px;padding:16px 0}.pagination-btn{padding:8px 16px;border:1px solid var(--border);border-radius:8px;color:var(--accent);text-decoration:none;font-size:13px;font-weight:600;transition:border-color .15s}.pagination-btn:hover{border-color:var(--accent)}.pagination-info{font-size:13px;color:var(--muted)}.no-dependents{padding:40px 0;text-align:center}.no-dependents p{font-size:14px;margin:8px 0}.pkg-link{color:var(--accent);text-decoration:none}.pkg-link:hover{text-decoration:underline}.why-flagged-list{display:flex;flex-direction:column;gap:2px;margin-top:12px}.why-flagged-item{border-radius:8px;background:#ffffff08;border-left:3px solid var(--bad)}.why-flagged-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px}.why-flagged-proof{padding:4px 14px 12px;border-top:1px solid rgba(255,255,255,.06)}.why-flagged-proof .proof-item{padding:6px 0}.why-flagged-proof .proof-item+.proof-item{border-top:1px solid rgba(255,255,255,.04)}.why-flagged-proof .proof-snippet{display:block;font-size:12px;padding:6px 10px;border-radius:6px;background:#0000004d;overflow-x:auto;margin-top:4px}.why-flagged-proof .proof-location{display:block;font-size:12px;color:var(--muted)}.why-flagged-proof .proof-location code{color:var(--text)}.why-flagged-proof .proof-detail{display:block;font-size:13px;color:var(--muted);margin-top:4px}.why-flagged-proof .proof-command{margin-top:4px}.why-flagged-title{font-size:14px;font-weight:600}.why-flagged-count{color:var(--muted);font-weight:400}.why-flagged-versions{display:flex;gap:6px;flex-shrink:0}.why-flagged-version{font-size:12px;font-weight:600;font-family:var(--font-mono, monospace);color:#a6d4ff;background:#64b5ff1a;border:1px solid rgba(100,181,255,.2);padding:2px 8px;border-radius:4px;text-decoration:none;transition:background .15s}.why-flagged-version:hover{background:#64b5ff33}@media(max-width:640px){.why-flagged-header{flex-direction:column;align-items:flex-start;gap:6px}.why-flagged-title{font-size:13px}.why-flagged-versions{flex-wrap:wrap}.why-flagged-proof .proof-snippet{font-size:11px}}.version-history-table{display:flex;flex-direction:column;gap:2px;margin-top:12px}.version-row{display:grid;grid-template-columns:minmax(100px,1.2fr) minmax(60px,.8fr) minmax(60px,.7fr) minmax(80px,.8fr) minmax(80px,1fr);align-items:center;gap:8px;padding:10px 14px;border-radius:8px;background:#ffffff08;border:1px solid transparent;text-decoration:none;color:inherit;transition:background .15s,border-color .15s}.version-row:hover{background:#ffffff0f;border-color:var(--border)}.version-row--critical{border-left:3px solid #dc2626;background:#dc26260d}.version-row--high{border-left:3px solid var(--bad);background:#ff6b6b08}.version-row--warn{border-left:3px solid var(--warn);background:#ffaa0008}.version-row--cooldown{border-left:3px solid rgba(168,148,255,.7);background:#a894ff0a}.version-row--deprecated{opacity:.5}.version-name{font-weight:700;font-size:14px;font-family:var(--font-mono, monospace)}.version-deprecated{font-size:10px;font-weight:600;color:var(--muted2);background:#ffffff0f;padding:1px 6px;border-radius:4px;margin-left:6px;text-transform:uppercase;letter-spacing:.3px}.version-tags{display:flex;gap:4px;flex-wrap:wrap}.version-tag{font-size:11px;font-weight:600;color:#a6d4ff;background:#64b5ff1a;border:1px solid rgba(100,181,255,.2);padding:1px 7px;border-radius:4px}.version-downloads{font-size:13px;color:var(--muted);text-align:right;font-family:var(--font-mono, monospace)}.version-date{font-size:13px;color:var(--muted2)}.version-verdict{display:flex;align-items:center;gap:6px;justify-content:flex-end}@keyframes badge-pulse{0%,to{opacity:.25}50%{opacity:.8}}.badge--loading{animation:badge-pulse 1.2s ease-in-out infinite;letter-spacing:2px;color:var(--muted)}.version-scripts-flag{font-size:10px;font-weight:600;color:#ffe08a;background:#f7c9481a;border:1px solid rgba(247,201,72,.2);padding:1px 6px;border-radius:4px}.version-history-more{margin-top:4px}.version-more-toggle{cursor:pointer;font-size:13px;color:var(--muted);padding:8px 14px;border-radius:8px;transition:color .15s}.version-more-toggle:hover{color:var(--text)}.version-history-table--more .version-row{padding:7px 14px}.version-row--compact .version-name{font-weight:600;font-size:13px}.version-children-group{margin:-2px 0 2px 16px;border-left:1px dashed var(--border);padding-left:0}.version-children-summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:6px 14px;font-size:12px;color:var(--muted);border-radius:0 8px 8px 0;user-select:none}.version-children-summary::-webkit-details-marker{display:none}.version-children-summary:hover{background:#ffffff08;color:var(--text)}.version-children-connector{font-family:var(--font-mono, monospace);color:var(--muted2);font-size:13px}.version-children-label{font-weight:500}.version-children-group[open] .version-children-summary{color:var(--text)}.version-children-rollup{margin-left:auto}.version-children-list{display:flex;flex-direction:column;gap:2px;padding:2px 0 6px}.version-row--child{margin-left:12px;background:#ffffff04}.version-row--child .version-name{font-size:12px;font-weight:500;color:var(--muted)}.install-companions-header{display:flex;align-items:center;justify-content:space-between;margin:12px 0 10px}.install-companions-summary{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.install-companions-meta{color:var(--muted2)}.install-companions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.install-companion{border-radius:8px;background:#ffffff08;border:1px solid transparent;transition:background .15s,border-color .15s}.install-companion:hover{background:#ffffff0f;border-color:var(--border)}.install-companion--critical{border-left:3px solid #dc2626;background:#dc26260d}.install-companion--high{border-left:3px solid var(--bad);background:#ff6b6b08}.install-companion--warn{border-left:3px solid var(--warn);background:#ffaa0008}.install-companion--cooldown{border-left:3px solid rgba(168,148,255,.7);background:#a894ff0a}.install-companion-link{display:grid;grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) auto;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;color:inherit}.install-companion-id{display:flex;align-items:center;gap:10px;min-width:0}.install-companion-name{font-family:var(--font-mono, monospace);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.install-companion-platform{font-size:11px;font-weight:600;color:#a6d4ff;background:#64b5ff1a;border:1px solid rgba(100,181,255,.2);padding:1px 7px;border-radius:4px;font-family:var(--font-mono, monospace)}.install-companion-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted2)}.install-companion-section{font-family:var(--font-mono, monospace)}.install-companion-alias{font-size:10px;font-weight:600;color:var(--muted2);background:#ffffff0a;border:1px solid rgba(255,255,255,.06);padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.install-companion-verdict{display:flex;justify-content:flex-end}.install-companion-reason{margin:0 14px 8px;font-size:12px;color:var(--muted)}.badge--neutral{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--muted)}@media(max-width:640px){.install-companion-link{grid-template-columns:1fr auto;gap:6px}.install-companion-meta{display:none}}@media(max-width:640px){.version-row{grid-template-columns:1fr auto;gap:4px;padding:8px 10px}.version-tags,.version-downloads{display:none}.version-date{font-size:12px}}.install-decision{padding:24px;border-radius:12px;border:1px solid var(--border);margin-bottom:16px;background:#ffffff08}@media(max-width:640px){.install-decision{padding:14px}.install-decision-badge{font-size:13px;padding:5px 12px}.install-decision-explanation{font-size:14px}.install-decision-actions{flex-wrap:wrap}.install-decision-actions .btn{font-size:13px;flex:1;min-width:0;text-align:center}.shoulder-explainer{font-size:13px}.shoulder-explainer p{margin:0}}.install-decision--good{border-left:4px solid #22c55e}.install-decision--warn{border-left:4px solid #f59e0b}.install-decision--bad{border-left:4px solid #ef4444}.install-decision--critical{border-left:4px solid #dc2626;background:#dc26260d}.install-decision--good.install-decision--has-review{border-left:4px solid #f59e0b;background:#f59e0b0a}.install-decision-badges{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}.review-chip{display:inline-flex;align-items:center;font-size:11px;font-weight:600;letter-spacing:.03em;padding:3px 10px;border-radius:10px;cursor:help;align-self:center}.review-chip--warn{background:#f59e0b1f;color:#f59e0b}.review-chip--bad{background:#ef44441f;color:#ef4444}.review-chip--critical{background:#dc262624;color:#dc2626}.install-decision-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:6px;font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.5px}.install-decision-badge.good{background:#22c55e26;color:#22c55e}.install-decision-badge.warn{background:#f59e0b26;color:#f59e0b}.install-decision-badge.bad{background:#ef444426;color:#ef4444}.install-decision-badge.critical{background:#dc262633;color:#dc2626}.install-decision-icon{font-size:16px}.install-decision-explanation{margin:12px 0 0;color:var(--text-secondary, #a0a0a0);font-size:15px;line-height:1.5}.install-decision-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.decision-chip{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;background:#ffffff0f;border:1px solid var(--border)}.decision-chip.HIGH,.decision-chip.CRITICAL{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.decision-chip.MEDIUM{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.decision-chip.LOW{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.install-decision-actions{display:flex;gap:10px;margin-top:16px}.shoulder-explainer{padding:12px 16px;border-radius:8px;background:#ffffff08;border:1px solid var(--border);margin-bottom:20px}.shoulder-explainer p{margin:0;color:var(--text-secondary, #a0a0a0);font-size:13px;line-height:1.5}.narrative-section{margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.section-anchor{font-size:18px;font-weight:700;margin:0 0 6px}.section-desc{color:var(--text-secondary, #a0a0a0);font-size:14px;margin:0 0 16px}.why-flagged-item.correlation-alert,.why-flagged-item.sast-alert,.why-flagged-item.warn{display:flex;gap:12px;padding:12px;border-radius:8px;background:#ffffff08;border:1px solid var(--border)}.why-flagged-item.correlation-alert{border-left:3px solid #ef4444}.why-flagged-item.sast-alert,.why-flagged-item.warn{border-left:3px solid #f59e0b}.why-flagged-icon{font-size:18px;flex-shrink:0;padding-top:1px}.why-flagged-content h4{margin:0 0 4px;font-size:14px;font-weight:600}.why-flagged-content p{margin:0;font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.4}.risk-combinations{margin-top:20px;padding:16px;border-radius:8px;background:#ef44440a;border:1px solid rgba(239,68,68,.15)}.risk-combinations h3{font-size:14px;font-weight:600;margin:0 0 12px;color:#ef4444}.risk-combo-rows{display:flex;flex-direction:column;gap:8px}.risk-combo-row{display:flex;align-items:center;gap:10px;font-size:13px}.risk-combo-row--chain{font-size:14px;padding:8px 10px;border-radius:6px;background:#ef444414;border-left:3px solid #ef4444;margin-bottom:4px}.risk-combo-row--chain .risk-combo-capability{font-weight:700}.risk-combo-row--chain .risk-combo-asset{font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:12px}.risk-combo-capability{font-weight:600;color:var(--text-primary, #fff)}.risk-combo-arrow{color:var(--text-secondary, #a0a0a0)}.risk-combo-asset{color:#ef4444}.env-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.env-card{padding:16px;border-radius:10px;border:1px solid var(--border);background:#ffffff08}.env-card--bad{border-left:3px solid #ef4444}.env-card--warn{border-left:3px solid #f59e0b}.env-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.env-card-name{font-weight:600;font-size:14px}.env-card-level{font-size:11px;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:4px}.env-card-level.bad{background:#ef444426;color:#ef4444}.env-card-level.warn{background:#f59e0b26;color:#f59e0b}.env-card-impact{font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.4;margin:0 0 10px}.env-card-issues{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:10px;border-top:1px solid var(--border)}.env-card-issues-label{font-size:11px;color:var(--text-secondary, #a0a0a0);font-weight:600}.env-card-issue{font-size:11px;padding:2px 8px;border-radius:4px;background:#ffffff0f;color:var(--text-primary, #fff)}.install-decision-reasoning{margin-top:16px;padding:12px 16px;border-radius:8px;background:#ffffff08;border:1px solid var(--border)}.reasoning-header{font-size:13px;font-weight:600;color:var(--text-secondary, #a0a0a0);margin-bottom:8px}.reasoning-claims{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.reasoning-claims li{display:flex;align-items:center;gap:8px;font-size:13px}.reasoning-claims li:before{content:"\2014";color:var(--text-secondary, #a0a0a0)}.reasoning-claim{font-weight:500}.reasoning-scope{font-size:11px;color:var(--text-secondary, #a0a0a0);padding:1px 6px;border-radius:3px;background:#ffffff0d}.reasoning-claims--drivers{gap:10px}.reasoning-driver{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;border-radius:6px;background:#ffffff0a;border-left:3px solid #6b7280}.reasoning-claims li.reasoning-driver:before{content:none}.reasoning-driver--critical{border-left-color:#dc2626}.reasoning-driver--bad{border-left-color:#ef4444}.reasoning-driver--warn{border-left-color:#f59e0b}.reasoning-driver--info{border-left-color:#3b82f6}.reasoning-driver-kind{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary, #a0a0a0)}.reasoning-driver .reasoning-claim{font-weight:500;font-size:13px}.reasoning-driver code{padding:0 4px;border-radius:3px;background:#ffffff12;font-size:12px}.driver-list{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.driver-block{padding:12px 14px;border-radius:8px;background:#ffffff08;border:1px solid var(--border);border-left:4px solid #6b7280}.driver-block--critical{border-left-color:#dc2626;background:#dc26260d}.driver-block--bad{border-left-color:#ef4444;background:#ef44440a}.driver-block--warn{border-left-color:#f59e0b;background:#f59e0b0a}.driver-block--info{border-left-color:#3b82f6}.driver-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.driver-severity{font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:3px;background:#ffffff14;color:var(--text-secondary, #a0a0a0)}.driver-severity.critical{background:#dc262633;color:#f87171}.driver-severity.bad{background:#ef44442e;color:#f87171}.driver-severity.warn{background:#f59e0b2e;color:#fbbf24}.driver-severity.info{background:#3b82f626;color:#60a5fa}.driver-kind{font-size:12px;font-weight:600;color:var(--text-secondary, #a0a0a0)}.driver-package{font-family:var(--mono, monospace);font-size:13px;padding:1px 6px;border-radius:3px;background:#60a5fa14;border:1px solid rgba(96,165,250,.2);text-decoration:none;color:var(--accent, #60a5fa)}.driver-package:hover{background:#60a5fa26;text-decoration:underline}.driver-summary{margin:0;font-size:14px;line-height:1.5;font-weight:500}.driver-context{margin:6px 0 0;font-size:13px;line-height:1.5;color:var(--text-secondary, #a0a0a0)}.driver-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:12px;color:var(--text-secondary, #a0a0a0)}.driver-meta-item code{padding:0 4px;border-radius:3px;background:#ffffff0f}.driver-proof-link{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:12px;font-weight:600;color:var(--accent, #60a5fa);text-decoration:none;padding:4px 8px;border:1px solid rgba(96,165,250,.25);border-radius:4px;background:#60a5fa0f}.driver-proof-link:hover{background:#60a5fa24;text-decoration:underline}.driver-proof{margin-top:12px;padding:10px 12px;border:1px solid var(--border, rgba(255,255,255,.08));border-radius:5px;background:#0000002e;display:flex;flex-direction:column;gap:6px}.driver-proof-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary, #a0a0a0)}.driver-proof-group{border:1px solid rgba(255,255,255,.05);border-radius:4px;background:#0000002e;overflow:hidden}.driver-proof-group[open]{background:#00000042}.driver-proof-summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;user-select:none}.driver-proof-summary::-webkit-details-marker{display:none}.driver-proof-summary:before{content:"\25b8";font-size:10px;color:var(--text-secondary, #a0a0a0);width:10px;display:inline-block;transition:transform .12s ease}.driver-proof-group[open]>.driver-proof-summary:before{transform:rotate(90deg)}.driver-proof-summary:hover{background:#ffffff08}.driver-proof-sev{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:3px;background:#ffffff0d;color:var(--text-secondary, #a0a0a0)}.driver-proof-sev.critical{background:#dc26262e;color:#f87171}.driver-proof-sev.bad{background:#ef444429;color:#f87171}.driver-proof-sev.warn{background:#f59e0b29;color:#fbbf24}.driver-proof-sev.info{background:#3b82f624;color:#60a5fa}.driver-proof-rule{flex:1;font-weight:500;color:var(--text, #e5e7eb);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-proof-count{font-size:11px;color:var(--text-secondary, #a0a0a0);white-space:nowrap}.driver-proof-body{padding:0 10px 10px;display:flex;flex-direction:column;gap:8px}.driver-proof-row{display:flex;flex-direction:column;gap:4px}.driver-proof-loc{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.driver-proof-path{font-family:var(--mono, monospace);font-size:12px;color:var(--text, #e5e7eb);background:#ffffff0a;padding:1px 5px;border-radius:3px}.driver-proof-code{margin:0;padding:6px 8px;background:#00000052;border:1px solid rgba(255,255,255,.05);border-radius:3px;font-family:var(--mono, monospace);font-size:12px;line-height:1.45;color:#d6deea;overflow-x:auto;white-space:pre}.driver-proof-code code{font-family:inherit}.driver-proof--lazy .driver-proof-label{color:var(--text-secondary, #a0a0a0);font-style:italic}.risk-pattern-target{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:6px 14px 8px;font-size:12px;color:var(--text-secondary, #a0a0a0)}.risk-pattern-target-pkg{font-family:var(--mono, monospace);color:var(--accent, #60a5fa);text-decoration:none;padding:1px 6px;border-radius:3px;background:#60a5fa14;border:1px solid rgba(96,165,250,.2)}.risk-pattern-target-pkg:hover{background:#60a5fa24;text-decoration:underline}.risk-pattern-target-range code{padding:0 4px;border-radius:3px;background:#ffffff0f;font-family:var(--mono, monospace)}.risk-pattern-version-link{color:var(--accent, #60a5fa);text-decoration:none}.risk-pattern-version-link:hover{text-decoration:underline}.risk-pattern-version-link code{background:#60a5fa14;border:1px solid rgba(96,165,250,.2)}.risk-pattern-lazy{margin:4px 14px 12px;padding:8px 10px;border-radius:4px;background:linear-gradient(90deg,#ffffff08,#ffffff12,#ffffff08);background-size:200% 100%;animation:driver-proof-shimmer 1.4s ease-in-out infinite;font-size:11px;color:var(--text-secondary, #a0a0a0)}.risk-pattern-lazy-label{font-style:italic}.risk-pattern-no-evidence{display:flex;align-items:flex-start;gap:8px;margin:4px 14px 12px;padding:8px 10px;border-radius:4px;background:#ffffff08;border:1px dashed rgba(255,255,255,.1);font-size:12px;line-height:1.5;color:var(--text-secondary, #a0a0a0)}.risk-pattern-no-evidence-icon{font-size:14px;line-height:1.4;color:var(--text-secondary, #a0a0a0);flex:0 0 auto}.risk-pattern-no-evidence-text{flex:1 1 auto}.pkg-issue-grid.has-empty-card .install-pane{display:none}.pkg-issue-grid.has-empty-card .pkg-code-pane-header{opacity:.4}.pkg-issue-grid.has-empty-card .pkg-issue-grid-code:after{content:"No code evidence to highlight for this issue.";display:block;margin:24px 16px;padding:24px 16px;text-align:center;font-size:12px;color:var(--text-secondary, #a0a0a0);border:1px dashed rgba(255,255,255,.1);border-radius:4px;background:#ffffff05}.version-diff h2 a{color:var(--accent, #60a5fa);text-decoration:none}.version-diff h2 a:hover{text-decoration:underline}.diff-scan-cta{display:flex;flex-direction:column;gap:12px;padding:16px 18px;margin:8px 0 4px;border:1px solid var(--border, rgba(255,255,255,.1));border-radius:6px;background:#ffffff05}.diff-scan-cta-body{display:flex;flex-direction:column;gap:6px}.diff-scan-cta-title{margin:0;font-size:14px;font-weight:600;color:var(--text, #e5e7eb)}.diff-scan-cta-title code{font-family:var(--mono, monospace);padding:1px 5px;border-radius:3px;background:#ffffff0f}.diff-scan-cta-text{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary, #a0a0a0)}.diff-scan-cta-meta{font-size:12px;opacity:.85}.diff-scan-cta-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.diff-scan-cta-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--text, #e5e7eb);background:#60a5fa1a;border:1px solid rgba(96,165,250,.3);border-radius:5px;cursor:pointer}.diff-scan-cta-btn:hover{background:#60a5fa2e}.diff-scan-cta-btn:disabled{opacity:.6;cursor:progress}.diff-scan-cta-btn code{font-family:var(--mono, monospace);padding:1px 5px;border-radius:3px;background:#ffffff14}.diff-scan-cta-status{margin:0;font-size:12px;color:var(--text-secondary, #a0a0a0)}.diff-scan-cta-status[data-state=scanning]:before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;vertical-align:-1px;border:2px solid rgba(96,165,250,.25);border-top-color:#60a5fa;border-radius:50%;animation:diff-scan-spin .8s linear infinite}.diff-scan-cta-status[data-state=error]{color:#f87171}@keyframes diff-scan-spin{to{transform:rotate(360deg)}}.diff-decision{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:5px;margin:8px 0 16px;font-size:13px;border:1px solid var(--border, rgba(255,255,255,.1))}.diff-decision--worse{background:#dc262614;border-color:#dc262640}.diff-decision--better{background:#22c55e14;border-color:#22c55e40}.diff-decision-label{font-weight:600;color:var(--text-secondary, #a0a0a0);text-transform:uppercase;font-size:11px;letter-spacing:.04em}.diff-decision-from,.diff-decision-to{font-family:var(--mono, monospace);font-size:12px;padding:2px 6px;border-radius:3px;background:#ffffff0f}.diff-decision--worse .diff-decision-to{background:#dc26262e;color:#f87171}.diff-decision--better .diff-decision-to{background:#22c55e2e;color:#4ade80}.diff-decision-arrow{color:var(--text-secondary, #a0a0a0)}.diff-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 14px;padding:8px 12px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:#0000002e;font-size:12px}.diff-meta-item{display:inline-flex;align-items:center;gap:6px}.diff-meta-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a0a0a0)}.diff-meta-item code{font-family:var(--mono, monospace);padding:1px 6px;border-radius:3px;background:#ffffff0f}.diff-meta-sub{color:var(--text-secondary, #a0a0a0);font-size:11px}.diff-meta-item--grew code,.diff-meta-item--shrank code,.diff-meta-item--warn code{background:#f59e0b29;color:#fbbf24}.diff-hunks{display:flex;flex-direction:column;gap:12px}.diff-hunk{border:1px solid var(--border, rgba(255,255,255,.08));border-radius:5px;overflow:hidden}.diff-hunk--add{border-left:3px solid #4ade80}.diff-hunk--remove{border-left:3px solid #f87171}.diff-hunk--neutral{border-left:3px solid rgba(255,255,255,.12)}.diff-hunk-label{padding:6px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#0000002e;color:var(--text-secondary, #a0a0a0)}.diff-hunk-row{display:flex;align-items:center;gap:8px;padding:6px 10px;font-family:var(--mono, monospace);font-size:12px;border-top:1px solid rgba(255,255,255,.04)}.diff-hunk-row--add{background:#22c55e0a}.diff-hunk-row--remove{background:#f871710a}.diff-hunk-row--change{background:#60a5fa0a}.diff-hunk-row--change .diff-hunk-marker{color:#60a5fa}.diff-hunk-marker{font-weight:700;width:14px;text-align:center}.diff-hunk-row--add .diff-hunk-marker{color:#4ade80}.diff-hunk-row--remove .diff-hunk-marker{color:#f87171}.diff-hunk-sev{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 5px;border-radius:3px;background:#ffffff0d;color:var(--text-secondary, #a0a0a0)}.diff-hunk-sev.critical{background:#dc26262e;color:#f87171}.diff-hunk-sev.bad{background:#ef444429;color:#f87171}.diff-hunk-sev.warn{background:#f59e0b29;color:#fbbf24}.diff-hunk-sev.info{background:#3b82f624;color:#60a5fa}.diff-hunk-text{flex:1;color:var(--text, #e5e7eb);font-family:var(--font-sans, system-ui, sans-serif)}.diff-hunk-scope{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a0a0a0);padding:1px 5px;border:1px solid rgba(255,255,255,.1);border-radius:3px}button.diff-hunk-row{width:100%;text-align:left;background:none;border:none;border-top:1px solid rgba(255,255,255,.04);cursor:pointer;font:inherit;color:inherit}.diff-hunk-row--linked:hover{background:#60a5fa14}.diff-hunk-row--linked:focus{outline:2px solid rgba(96,165,250,.4);outline-offset:-2px}.diff-hunk-count{margin-left:auto;font-size:11px;color:var(--accent, #60a5fa);white-space:nowrap}.diff-hunk-row--linked:hover .diff-hunk-count{text-decoration:underline}details.diff-hunk-row--expandable{display:block;padding:0;border-top:1px solid rgba(255,255,255,.04)}details.diff-hunk-row--expandable>summary{display:flex;align-items:center;gap:8px;padding:6px 10px;font-family:var(--mono, monospace);font-size:12px;cursor:pointer;list-style:none;user-select:none}details.diff-hunk-row--expandable>summary::-webkit-details-marker{display:none}details.diff-hunk-row--expandable>summary:before{content:"\25b8";font-size:10px;color:var(--text-secondary, #a0a0a0);width:10px;display:inline-block;transition:transform .12s ease}details.diff-hunk-row--expandable[open]>summary:before{transform:rotate(90deg)}details.diff-hunk-row--expandable>summary:hover{background:#f871710f}.diff-hunk-evidence{padding:8px 14px 12px 28px;background:#f871710a;display:flex;flex-direction:column;gap:8px}.diff-hunk-evidence-row{display:flex;flex-direction:column;gap:4px}.diff-hunk-evidence-loc{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.diff-hunk-evidence-path{font-family:var(--mono, monospace);font-size:12px;color:var(--text, #e5e7eb);background:#ffffff0a;padding:1px 5px;border-radius:3px}.diff-hunk-evidence-code{margin:0;padding:6px 8px;background:#00000052;border:1px solid rgba(248,113,113,.1);border-radius:3px;font-family:var(--mono, monospace);font-size:12px;line-height:1.45;color:#d6deea;overflow-x:auto;white-space:pre}.diff-hunk-evidence-code code{font-family:inherit}.diff-hunk-label a{color:var(--accent, #60a5fa);text-decoration:none}.diff-hunk-label a:hover{text-decoration:underline}.diff-hunk-label code{font-family:var(--mono, monospace);padding:1px 4px;border-radius:3px;background:#ffffff0d}.driver-proof-skeleton{height:36px;border-radius:3px;background:linear-gradient(90deg,#ffffff0a,#ffffff14,#ffffff0a);background-size:200% 100%;animation:driver-proof-shimmer 1.4s ease-in-out infinite}@keyframes driver-proof-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.driver-technical{margin-top:10px;font-size:12px;color:var(--text-secondary, #a0a0a0)}.driver-technical-toggle{cursor:pointer;color:var(--text-secondary, #a0a0a0);user-select:none}.driver-technical-toggle:hover{color:var(--text, #e5e7eb)}.driver-technical-value{display:block;margin-top:6px;padding:8px 10px;border-radius:4px;background:#00000040;border:1px solid var(--border);font-family:var(--mono, monospace);font-size:12px;color:var(--text-secondary, #a0a0a0);word-break:break-word}.install-decision-scope{margin:-2px 0 0;font-size:13px;line-height:1.5;color:var(--text-secondary, #a0a0a0)}.install-decision-scope a{color:var(--accent, #60a5fa);text-decoration:none}.install-decision-scope a:hover{text-decoration:underline}.narrative-section--notes .driver-block--critical,.narrative-section--notes .driver-block--bad{background:#ffffff08}.transitive-cap-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.transitive-cap-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:#ffffff08;border:1px solid var(--border)}.transitive-cap-icon{font-size:16px}.transitive-cap-name{font-weight:600;font-size:14px}.transitive-cap-count{font-size:12px;padding:2px 8px;border-radius:10px;background:#ffffff0f;color:var(--text-secondary, #a0a0a0)}.transitive-cap-pkgs{font-size:13px;color:var(--text-secondary, #a0a0a0);flex:1;min-width:0}.transitive-cap-pkg{text-decoration:none;color:var(--link, #7eb3f5)}.transitive-cap-pkg code{padding:2px 6px;border-radius:4px;background:#7eb3f514;border:1px solid rgba(126,179,245,.18);font-size:12px;color:inherit}.transitive-cap-pkg:hover code{background:#7eb3f529;text-decoration:underline}.transitive-coverage-caveat{margin:8px 0 0;padding:10px 12px;border-radius:8px;font-size:13px;background:#f59e0b12;border-left:3px solid #f59e0b}.transitive-coverage-note{margin:8px 0 0;font-size:12px;color:var(--text-secondary, #a0a0a0)}.claim-proof-list{display:flex;flex-direction:column;gap:10px}.claim-proof-block{border:1px solid var(--border);border-radius:8px;background:#ffffff08;overflow:hidden}.claim-header{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;font-size:14px}.claim-header::-webkit-details-marker{display:none}details.claim-proof-block>.claim-header:after{content:"\25b8";margin-left:auto;color:var(--text-secondary, #a0a0a0);transition:transform .15s}details[open].claim-proof-block>.claim-header:after{transform:rotate(90deg)}.claim-severity{width:8px;height:8px;border-radius:50%;flex-shrink:0}.claim-severity.HIGH,.claim-severity.CRITICAL{background:#ef4444}.claim-severity.MEDIUM{background:#f59e0b}.claim-severity.LOW{background:#22c55e}.claim-title{font-weight:600}.claim-scope{font-size:11px;color:var(--text-secondary, #a0a0a0);padding:1px 6px;border-radius:3px;background:#ffffff0d}.claim-evidence-count{margin-left:auto;font-size:11px;color:var(--text-secondary, #a0a0a0)}.claim-proof-body{padding:12px 14px 14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.proof-item{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:6px;background:#00000026}.proof-location{font-family:monospace;font-size:12px;color:var(--accent, #60a5fa)}.proof-snippet{display:block;font-size:12px;padding:6px 8px;border-radius:4px;background:#0003;overflow-x:auto;white-space:pre}.proof-detail{font-size:12px;color:var(--text-secondary, #a0a0a0)}.cap-proof{margin-top:6px}.cap-proof-toggle{font-size:12px;color:var(--accent, #60a5fa);cursor:pointer;list-style:none}.cap-proof-toggle::-webkit-details-marker{display:none}.cap-proof-toggle:before{content:"\25b8  ";display:inline}details[open]>.cap-proof-toggle:before{content:"\25be  "}.issue-block{padding:16px;border:1px solid var(--border);border-left:3px solid #ef4444;border-radius:8px;background:#ffffff08;margin-bottom:12px}.issue-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.issue-severity{width:10px;height:10px;border-radius:50%;flex-shrink:0}.issue-severity.HIGH,.issue-severity.CRITICAL,.issue-severity.ELEVATED{background:#ef4444}.issue-severity.MEDIUM,.issue-severity.MODERATE{background:#f59e0b}.issue-severity.LOW{background:#22c55e}.issue-title{font-size:15px;font-weight:600;margin:0}.issue-scope{font-size:11px;color:var(--text-secondary, #a0a0a0);padding:2px 8px;border-radius:4px;background:#ffffff0f;text-transform:uppercase}.issue-impact{margin:8px 0 0;font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.proof-cards{margin-top:14px;display:flex;flex-direction:column;gap:8px}.proof-card{border:1px solid var(--border);border-radius:8px;background:#0000001f;overflow:hidden}.proof-card-header{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border);background:#ffffff08;flex-wrap:wrap}.proof-type-badge{font-size:10px;font-weight:700;letter-spacing:.06em;padding:2px 7px;border-radius:3px;background:#ffffff14;color:var(--text-secondary, #a0a0a0);flex-shrink:0}.proof-card-title{font-family:var(--mono, monospace);font-size:13px;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proof-cap-tag{font-size:11px;padding:1px 7px;border-radius:10px;background:#ffffff0f;color:var(--text-secondary, #a0a0a0);flex-shrink:0}.proof-card-impact{margin:8px 12px 0;font-size:13px;line-height:1.5;color:var(--text-secondary, #a0a0a0)}.proof-location-ref{display:flex;align-items:center;gap:8px;padding:7px 12px;margin-top:8px}.proof-ref-label{font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--text-secondary, #a0a0a0);flex-shrink:0}.proof-ref-value{font-size:12px;padding:3px 8px;border-radius:4px;background:#ffffff0d;border:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proof-snippet-block{display:block;font-size:12px;padding:8px 12px;margin:4px 0 0;background:#0003;border-top:1px solid var(--border);overflow-x:auto;white-space:pre;line-height:1.5}.pkg-issue-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;position:relative}.card:has(.pkg-issue-grid){overflow:visible}.pkg-connector{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}.pkg-connector path{fill:none;stroke:#ef44446b;stroke-width:1.4;stroke-linecap:round}.pkg-connector path.pkg-connector--active{stroke:#fca5a5;stroke-width:2;filter:drop-shadow(0 0 6px rgba(239,68,68,.6))}.pkg-connector circle{fill:#ef444499}.pkg-issue-grid.has-active-rule .install-pane:not(.is-relevant){display:none}.pkg-issue-grid.has-active-rule .install-pane-line--flag:not(.is-active){background:transparent;border-left-color:transparent}.pkg-issue-grid.has-active-rule .install-pane--snippets .install-pane-line:not(.is-active),.pkg-issue-grid.has-active-rule .install-pane--manifest .install-pane-line:not(.is-active){display:none}.pkg-issue-grid.has-active-rule .install-pane.is-relevant{border-color:#ef444473;box-shadow:0 0 0 1px #ef44442e}.pkg-code-pane-meta{margin-left:auto}.pkg-issue-grid.has-active-rule .pkg-code-pane-meta{margin-left:0}@media(min-width:1100px){.pkg-issue-grid:not(.pkg-issue-grid--single){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pkg-issue-grid-cards{min-width:0}.pkg-issue-grid-code{min-width:0;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#0000002e}.pkg-code-pane-header{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:10}.pkg-code-pane-title{font-size:13px;font-weight:600;flex:1;min-width:0}.pkg-code-pane-meta{font-size:11px;color:var(--text-secondary, #a0a0a0)}@media(max-width:1099px){.pkg-issue-grid-code{position:static;max-height:none;transform:none!important;margin-top:16px}.pkg-connector{display:none}.pkg-code-pane-header{position:static}.risk-pattern-rule{padding:12px 14px;min-height:44px}.risk-pattern-card>summary{min-height:44px}}.cap-rollup{border:1px solid var(--border);border-radius:8px;background:#ffffff05;overflow:hidden}.cap-rollup-summary{display:flex;flex-wrap:wrap;gap:12px 18px;padding:12px 14px;cursor:pointer;list-style:none;align-items:center}.cap-rollup-summary::-webkit-details-marker{display:none}.cap-rollup-summary:before{content:"\25b8";font-size:11px;color:var(--text-secondary, #a0a0a0);margin-right:4px}details[open]>.cap-rollup-summary:before{content:"\25be"}.cap-rollup-cat{display:inline-flex;align-items:center;gap:6px;font-size:12px}.cap-rollup-cat-icon{font-size:14px}.cap-rollup-cat-name{color:var(--text-primary)}.cap-rollup-cat-count{font-weight:700;color:var(--text-primary);background:#ffffff0f;padding:1px 7px;border-radius:10px;font-size:11px}.cap-rollup-toggle{margin-left:auto;font-size:11px;color:var(--text-secondary, #a0a0a0);text-transform:uppercase;letter-spacing:.04em}details[open]>.cap-rollup-summary>.cap-rollup-toggle:after{content:" (open)"}.cap-rollup-body{padding:8px 14px 14px;border-top:1px solid var(--border)}.narrative-section--compact{margin-top:14px}.risk-pattern-list{display:flex;flex-direction:column;gap:14px}.risk-pattern-card{padding:0;border:1px solid var(--border);border-left:3px solid #ef4444;border-radius:8px;background:#ffffff08;overflow:hidden}.risk-pattern-card--critical,.risk-pattern-card--bad{border-left-color:#ef4444}.risk-pattern-card--warn{border-left-color:#f59e0b}.risk-pattern-card--info{border-left-color:#22c55e}.risk-pattern-card--neutral{border-left-color:#ffffff2e}.risk-pattern-section-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #a0a0a0);margin:18px 0 6px;padding-top:10px;border-top:1px solid var(--border)}.risk-pattern-section-label:first-child{margin-top:0;padding-top:0;border-top:none}.risk-pattern-card>.risk-pattern-explain,.risk-pattern-card>.risk-pattern-evidence{margin-left:16px;margin-right:16px}.risk-pattern-card>.risk-pattern-evidence:last-child{margin-bottom:16px}.risk-pattern-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;cursor:pointer;list-style:none;user-select:none}.risk-pattern-header::-webkit-details-marker{display:none}.risk-pattern-card:hover{background:#ffffff0b}details.risk-pattern-card[open]{background:#ffffff0d}.risk-pattern-severity{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:800;background:#ffffff14;color:var(--text-secondary, #a0a0a0)}.risk-pattern-severity.critical,.risk-pattern-severity.bad{background:#ef444433;color:#fca5a5}.risk-pattern-severity.warn{background:#f59e0b33;color:#fcd34d}.risk-pattern-severity.info{background:#22c55e33;color:#86efac}.risk-pattern-severity.neutral{background:#ffffff0f;color:var(--text-secondary, #a0a0a0)}.risk-pattern-name{font-size:15px;font-weight:600;margin:0;flex:1;min-width:0;user-select:text;-webkit-user-select:text}.risk-pattern-scope{font-size:11px;color:var(--text-secondary, #a0a0a0);padding:2px 8px;border-radius:4px;background:#ffffff0f;text-transform:uppercase}.risk-pattern-new{font-size:10px;font-weight:700;letter-spacing:.04em;color:#fca5a5;padding:2px 6px;border-radius:4px;background:#ef44441f;border:1px solid rgba(239,68,68,.35);text-transform:uppercase;white-space:nowrap}.risk-pattern-explain{margin:8px 0 0;font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.behaviour-cap{margin-top:10px}.behaviour-cap:first-child{margin-top:8px}.behaviour-cap-name{font-size:13px;font-weight:600;color:var(--text-primary, #e8e8e8);line-height:1.4}.behaviour-cap-explain{margin:4px 0 0;font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.deobf-result{margin-top:20px;padding:14px 16px;border:1px solid var(--border);border-radius:8px;background:#0000001f}.deobf-result--malicious{border-color:#f8717180;background:#f871710f}.deobf-result-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.deobf-result-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary, #a0a0a0)}.deobf-result-verdict{font-size:12px;font-weight:700;letter-spacing:.04em;padding:2px 8px;border-radius:4px;background:#ffffff0f;color:var(--text-primary, #e8e8e8)}.deobf-result--malicious .deobf-result-verdict{background:#f871712e;color:#fca5a5}.deobf-result-tool{font-size:12px;color:var(--text-secondary, #a0a0a0)}.deobf-result-desc{margin:8px 0 0;font-size:13px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.deobf-result-iocs{margin-top:12px}.deobf-result-iocs-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary, #a0a0a0)}.deobf-result-ioc-list{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.deobf-result-ioc{display:flex;align-items:center;gap:8px;font-size:13px}.deobf-result-ioc code{padding:2px 6px;border-radius:4px;background:#0000004d;color:#fca5a5}.deobf-result-ioc-prov{font-size:11px;color:var(--text-tertiary, #707070)}.risk-pattern-maintainer-list{margin:10px 0 0;display:flex;flex-direction:column;gap:4px}.risk-pattern-maintainer-row{display:flex;align-items:center;gap:8px;font-size:13px}.risk-pattern-maintainer-marker{width:14px;text-align:center;font-weight:600;color:var(--text-secondary, #a0a0a0)}.risk-pattern-maintainer-row--add .risk-pattern-maintainer-marker{color:#4ade80}.risk-pattern-maintainer-row--remove .risk-pattern-maintainer-marker{color:#f87171}.risk-pattern-maintainer-name{font-size:12px;padding:2px 6px;border-radius:3px;background:#ffffff0a}.risk-pattern-evidence{margin-top:12px;border:1px solid var(--border);border-radius:6px;background:#0000001f;overflow:hidden}.risk-pattern-evidence+.risk-pattern-evidence{margin-top:8px}.risk-pattern-rule{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:8px 0 0;padding:9px 12px;background:#ffffff0a;border:1px solid var(--border);border-radius:6px;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background .1s ease,border-color .1s ease}.risk-pattern-rule:hover{background:#ffffff12;border-color:#ef444466}.risk-pattern-rule.is-active{background:#ef44441a;border-color:#ef44448c;box-shadow:0 0 0 1px #ef444440}.risk-pattern-rule-label{font-size:13px;font-weight:600}.risk-pattern-rule-count{font-size:11px;color:var(--text-secondary, #a0a0a0);background:#ffffff0f;padding:1px 8px;border-radius:10px;flex-shrink:0}.risk-pattern-evidence-rule{font-size:12px;font-weight:600;padding:7px 12px;background:#ffffff08;border-bottom:1px solid var(--border);color:var(--text-primary)}.risk-pattern-evidence-count{font-weight:400;color:var(--text-secondary, #a0a0a0)}.risk-pattern-evidence-row{padding:8px 12px}.risk-pattern-evidence-row+.risk-pattern-evidence-row{border-top:1px solid rgba(255,255,255,.04)}.risk-pattern-evidence-loc{display:flex;align-items:center;gap:8px;font-size:12px}.risk-pattern-evidence-path{font-family:var(--mono, monospace);color:var(--text-secondary, #a0a0a0);text-decoration:none}a.risk-pattern-evidence-path{color:#93c5fd}a.risk-pattern-evidence-path:hover{text-decoration:underline;color:#bfdbfe}.risk-pattern-evidence-code{display:block;font-size:12px;padding:6px 10px;margin:6px 0 0;background:#00000040;border-radius:4px;overflow-x:auto;white-space:pre;line-height:1.5}.risk-pattern-evidence-note{margin:6px 0 0;font-size:12px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.outbound-urls{margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#f59e0b0f}.outbound-urls-title{font-size:13px;font-weight:600;margin:0 0 8px}.outbound-urls-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.outbound-urls-item{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.outbound-urls-domain{font-family:var(--mono, monospace);font-weight:600}.outbound-urls-loc code{color:var(--text-secondary, #a0a0a0);font-size:11px}.outbound-urls-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#f59e0b2e;color:#fcd34d}.binary-destination{margin-top:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#ef44440f}.binary-destination-title{font-size:13px;font-weight:600;margin:0 0 8px}.binary-destination-row{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.binary-destination-path{font-family:var(--mono, monospace)}.binary-destination-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#ffffff0f;color:var(--text-secondary, #a0a0a0)}.binary-destination-tag--warn{background:#ef44442e;color:#fca5a5}.install-pane{border:1px solid var(--border);border-radius:8px;background:#0000002e;overflow:hidden;margin-bottom:12px}.install-pane-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#ffffff08;border-bottom:1px solid var(--border);cursor:pointer;list-style:none;flex-wrap:wrap}.install-pane-header::-webkit-details-marker{display:none}.install-pane-filename{font-family:var(--mono, monospace);font-size:13px;font-weight:600;flex:1;min-width:0}.install-pane-stats{display:none;font-size:11px;color:var(--text-secondary, #a0a0a0)}.install-pane-body{font-family:var(--mono, monospace);font-size:12px;line-height:1.55;overflow-x:auto}.install-pane-line{display:flex;gap:0;white-space:pre;min-width:100%;width:max-content}.install-pane-line--flag{background:#ef44441a;border-left:2px solid #ef4444}.install-pane-line:target{animation:srcLineFlash 1.6s ease-out;background:#f59e0b2e;border-left-color:#f59e0b}@keyframes srcLineFlash{0%{background:#f59e0b73}to{background:#ef44441a}}html{scroll-behavior:smooth}.install-pane-lineno{flex-shrink:0;width:44px;text-align:right;padding:0 10px 0 8px;color:var(--text-secondary, #a0a0a0);user-select:none;border-right:1px solid rgba(255,255,255,.04);opacity:.6;position:sticky;left:0;background:#0f0f12f2;z-index:1}.install-pane-line--flag .install-pane-lineno{background:#281212f2}.install-pane-line.is-active .install-pane-lineno{background:#3c280cf2}.install-pane-text{padding:0 12px;flex:1;min-width:0}.install-pane-text.hljs{display:inline;background:transparent;padding:0 12px;color:inherit}.install-pane-line .hljs-comment,.install-pane-line .hljs-quote{font-style:italic}.install-pane-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#ffffff0f;color:var(--text-secondary, #a0a0a0)}.install-pane-tag--snippets{background:#f59e0b26;color:#fcd34d}.install-pane--snippets .install-pane-line{white-space:pre-wrap}.install-pane--snippets .install-pane-line+.install-pane-line{margin-top:4px}.install-pane-line--gap{border-top:1px dashed rgba(255,255,255,.06)}.install-pane-line--gap:first-child{border-top:none}.install-pane-line.is-active{background:#f59e0b38;border-left-color:#f59e0b;box-shadow:inset 0 0 0 1px #f59e0b66}.install-pane-lineno--manifest{font-style:italic;color:var(--text-secondary, #a0a0a0)}.install-pane-truncated{font-size:11px;font-style:italic;color:var(--text-secondary, #a0a0a0);padding:8px 14px;border-top:1px solid rgba(255,255,255,.04)}.cap-rollup-cat--warn .cap-rollup-cat-count{background:#f59e0b2e;color:#fcd34d}.cap-rollup-cat--bad .cap-rollup-cat-count{background:#ef44442e;color:#fca5a5}.cap-row-scope{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#ffffff0f;color:var(--text-secondary, #a0a0a0)}.cap-row-loc{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:12px}.cap-row-loc code{font-family:var(--mono, monospace);color:var(--text-secondary, #a0a0a0)}.cap-row-snippet{display:block;font-size:12px;padding:6px 10px;margin:6px 0 0;background:#00000040;border-radius:4px;overflow-x:auto;white-space:pre;line-height:1.5}.cap-row-explain{margin:6px 0 0;font-size:12px;color:var(--text-secondary, #a0a0a0);line-height:1.5}.trust-context-details>.section-anchor{cursor:pointer;list-style:none}.trust-context-details>.section-anchor::-webkit-details-marker{display:none}.trust-context-details>.section-anchor:after{content:" \25b8";color:var(--text-secondary, #a0a0a0);font-size:14px}.trust-context-details[open]>.section-anchor:after{content:" \25be"}.intel-page{max-width:820px;margin:0 auto;padding:0 16px 60px}.decision-banner{border-radius:10px;padding:20px 22px;margin-bottom:8px;margin-top:24px;border:1px solid}.decision-banner.bad{background:#ff6b6b0f;border-color:#ff6b6b4d}.decision-banner.warn{background:#f7c9480f;border-color:#f7c94840}.decision-banner.good{background:#39d98a0f;border-color:#39d98a40}.decision-banner-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.decision-banner-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.decision-banner-label.bad{color:var(--bad)}.decision-banner-label.warn{color:var(--warn)}.decision-banner-label.good{color:var(--good)}.decision-banner-effort{font-size:11px;color:var(--muted);padding:2px 8px;background:#ffffff0d;border-radius:4px}.decision-banner-headline{font-size:18px;font-weight:700;color:var(--text);line-height:1.3;margin-bottom:4px}.decision-banner-detail{font-size:13px;color:var(--muted);line-height:1.5}.decision-banner-cmd{display:flex;align-items:center;gap:8px;margin-top:12px;background:#00000040;border-radius:6px;padding:10px 14px}.decision-banner-cmd code{flex:1;font-size:14px;font-weight:600;font-family:var(--mono, monospace);word-break:break-all}.decision-banner.bad .decision-banner-cmd code{color:var(--bad)}.decision-banner.warn .decision-banner-cmd code{color:var(--warn)}.decision-banner.good .decision-banner-cmd code{color:var(--good)}.decision-banner-escape{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.escape-verify{font-size:12px;font-weight:600;color:var(--info);text-decoration:none;white-space:nowrap}.escape-verify:hover{text-decoration:underline}.exploit-detail-card{background:#ffffff05;border:1px solid var(--border);border-left:3px solid var(--bad);border-radius:0 8px 8px 0;padding:18px 20px;margin-bottom:12px}.exploit-detail-card:last-child{margin-bottom:0}.exploit-detail-header h3{font-size:16px;font-weight:700;margin:0 0 8px;border:none;padding:0}.exploit-detail-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.exploit-source-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:4px;background:#ff6b6b1f;color:var(--bad)}.exploit-date{font-size:11px;color:var(--muted)}.exploit-verified{font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;background:#39d98a1f;color:var(--good);text-transform:uppercase;letter-spacing:.3px}.exploit-detail-body{font-size:13px;color:var(--muted);line-height:1.65}.exploit-detail-body h3,.exploit-detail-body h4{font-size:14px;font-weight:700;color:var(--text);margin:16px 0 8px;border:none;padding:0}.exploit-detail-body h3:first-child,.exploit-detail-body h4:first-child{margin-top:0}.exploit-detail-body pre{background:#00000040;border-radius:6px;padding:12px 14px;margin:10px 0;overflow-x:auto;font-size:12px;line-height:1.5}.exploit-detail-body code{font-family:var(--mono, monospace);font-size:12px}.exploit-detail-body p code{background:#ffffff0f;padding:1px 5px;border-radius:3px}.exploit-detail-link{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:var(--info);text-decoration:none}.exploit-detail-link:hover{text-decoration:underline}.intel-hero{padding:32px 0 28px;margin-bottom:8px;border-bottom:1px solid rgba(255,107,107,.12)}.intel-status-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.intel-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.intel-status-badge.bad{background:#ff6b6b1f;color:var(--bad);border:1px solid rgba(255,107,107,.25)}.intel-status-badge.warn{background:#f7c9481f;color:var(--warn);border:1px solid rgba(247,201,72,.25)}.intel-severity-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.3px}.intel-severity-badge.bad{background:#ff6b6b14;color:var(--bad)}.intel-severity-badge.warn{background:#f7c94814;color:var(--warn)}.intel-title{font-size:28px;font-weight:800;margin:0 0 12px;letter-spacing:-.5px;line-height:1.2}@media(min-width:600px){.intel-title{font-size:32px}}.intel-desc{font-size:14px;color:var(--muted);margin:0 0 24px;line-height:1.65;max-width:680px}.intel-signals{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}@media(max-width:600px){.intel-signals{grid-template-columns:repeat(2,1fr)}}.intel-signal{background:#ffffff08;border:1px solid var(--border);border-radius:8px;padding:14px 12px;text-align:center}.intel-signal-num{font-size:22px;font-weight:800;color:var(--bad);letter-spacing:-.5px}.intel-signal-label{font-size:10px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.intel-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.intel-id{font-size:11px;font-weight:600;padding:3px 8px;background:#ffffff0d;border-radius:4px;color:var(--muted);font-family:var(--mono, monospace)}.intel-pkg{font-size:11px;padding:3px 8px;background:#a855f71a;color:#d8b4fe;border-radius:4px;text-decoration:none;font-family:var(--mono, monospace)}.intel-pkg:hover{background:#a855f733}.intel-section{padding:28px 0;border-top:1px solid var(--border)}.intel-section-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;margin:0 0 20px;color:var(--text)}.intel-section-title svg{flex-shrink:0;color:var(--muted)}.attack-chain{margin-bottom:24px}.attack-chain-step{display:flex;gap:14px}.attack-chain-marker{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:28px}.attack-chain-num{width:26px;height:26px;border-radius:50%;background:#ff6b6b26;color:var(--bad);border:1.5px solid rgba(255,107,107,.4);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.attack-chain-step:last-child .attack-chain-num{background:var(--bad);color:#0b0f19;border-color:var(--bad);box-shadow:0 0 12px #ff6b6b4d}.attack-chain-line{width:2px;flex:1;background:#ff6b6b33;min-height:12px}.attack-chain-step:last-child .attack-chain-line{display:none}.attack-chain-body{padding-bottom:16px;min-width:0}.attack-chain-step:last-child .attack-chain-body{padding-bottom:0}.attack-chain-location{font-weight:700;font-size:14px;color:var(--text)}.attack-chain-desc{font-size:13px;color:var(--muted);margin-top:2px;line-height:1.5}.attack-exploit{margin-bottom:24px}.attack-exploit h3{font-size:14px;font-weight:700;margin:0 0 10px}.attack-explain{font-size:12px;color:var(--muted);margin:10px 0 0;line-height:1.5}.attack-impact h3{font-size:14px;font-weight:700;margin:0 0 12px}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:500px){.impact-grid{grid-template-columns:1fr}}.impact-col{background:#ffffff05;border:1px solid var(--border);border-radius:8px;padding:16px}.impact-col h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.impact-col h4.bad{color:var(--bad)}.impact-col h4.warn{color:var(--warn)}.impact-col ul{margin:0;padding-left:16px;font-size:13px;color:var(--muted);line-height:1.8}.pattern-cards{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.pattern-card{background:#ffffff05;border:1px solid var(--border);border-radius:8px;padding:14px 16px}.pattern-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pattern-pkg{font-weight:700;font-size:14px;color:var(--info);text-decoration:none;font-family:var(--mono, monospace)}.pattern-pkg:hover{text-decoration:underline}.pattern-range{font-size:11px;padding:2px 8px;border-radius:4px;font-family:var(--mono, monospace)}.pattern-range.bad{background:#ff6b6b1f;color:var(--bad)}.pattern-fix{font-size:11px;padding:2px 8px;border-radius:4px;font-family:var(--mono, monospace)}.pattern-fix.good{background:#39d98a1f;color:var(--good)}.pattern-fns{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}.pattern-fns code{font-size:11px;padding:3px 8px;background:#ffffff0a;border:1px solid var(--border);border-radius:4px;color:var(--muted)}.attack-signature h3{font-size:14px;font-weight:700;margin:0 0 10px}.fix-commands{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.fix-cmd-row{background:#39d98a0a;border:1px solid rgba(57,217,138,.15);border-radius:8px;padding:14px 16px}.fix-cmd-info{display:flex;align-items:center;gap:8px;margin-bottom:8px}.fix-cmd-pkg{font-weight:700;font-size:13px;color:var(--text);font-family:var(--mono, monospace)}.fix-cmd-note{font-size:11px;color:var(--muted)}.fix-cmd-line{display:flex;align-items:center;gap:8px;background:#0003;border-radius:6px;padding:10px 12px}.fix-cmd-line code{flex:1;font-size:13px;color:var(--good);font-family:var(--mono, monospace);word-break:break-all}.fix-verify{margin-bottom:16px}.fix-verify h3{font-size:14px;font-weight:700;margin:0 0 12px}.fix-verify-row{margin-bottom:12px}.fix-verify-row:last-child{margin-bottom:0}.fix-verify-env{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:6px}.workaround-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.workaround-item{background:#ffffff05;border:1px solid var(--border);border-radius:8px;padding:14px 16px}.workaround-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.workaround-name{font-weight:700;font-size:14px}.workaround-tag{font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.workaround-tag.good{background:#39d98a1f;color:var(--good)}.workaround-tag.warn{background:#f7c9481f;color:var(--warn)}.workaround-desc{font-size:13px;color:var(--muted);line-height:1.5}.workaround-effect{font-size:12px;color:var(--muted2);margin-top:4px;font-style:italic}.intel-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;margin:8px 0;background:linear-gradient(135deg,#a855f714,#39d98a0f);border:1px solid rgba(168,85,247,.2);border-radius:12px;flex-wrap:wrap}.intel-cta-text h2{margin:0 0 4px;font-size:16px;font-weight:700}.intel-cta-text p{margin:0;font-size:13px;color:var(--muted)}.intel-cta-cmd{display:flex;align-items:center;gap:8px;background:#00000040;border-radius:8px;padding:10px 14px;flex-shrink:0}.intel-cta-cmd code{font-size:13px;color:var(--good);font-family:var(--mono, monospace);white-space:nowrap}.risk-amp-cards{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.risk-amp-card{background:#ff6b6b0a;border-left:3px solid var(--bad);border-radius:0 8px 8px 0;padding:14px 16px}.risk-amp-equation{font-size:14px;font-weight:700;color:var(--text);font-family:var(--mono, monospace);margin-bottom:4px}.risk-amp-escalation{font-size:13px;color:var(--muted);line-height:1.5}.care-heading{font-size:16px;font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:8px}.care-checklist{display:flex;flex-direction:column;gap:8px}.care-item{display:flex;gap:12px;padding:12px 16px;background:#39d98a0a;border:1px solid rgba(57,217,138,.12);border-radius:8px}.care-check{color:var(--good);font-size:16px;font-weight:700;flex-shrink:0;line-height:1.4}.care-condition{font-size:14px;font-weight:600;color:var(--text)}.care-versions{font-size:11px;color:var(--muted);font-family:var(--mono, monospace);margin-top:2px}.care-action{font-size:12px;color:var(--muted);margin-top:2px}.intel-collapse{border:1px solid var(--border);border-radius:8px;margin-bottom:10px;background:#ffffff03}.intel-collapse summary{display:flex;align-items:center;gap:8px;padding:14px 16px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text);list-style:none}.intel-collapse summary::-webkit-details-marker{display:none}.intel-collapse summary::marker{display:none;content:""}.intel-collapse summary svg{flex-shrink:0;color:var(--muted)}.intel-collapse summary .chevron{margin-left:auto;transition:transform .2s}.intel-collapse[open] summary .chevron{transform:rotate(180deg)}.intel-collapse-count{font-size:11px;font-weight:600;padding:2px 7px;background:#ffffff0f;border-radius:10px;color:var(--muted)}.intel-collapse-body{padding:0 16px 16px}.intel-feed{display:flex;flex-direction:column}.intel-nav{display:flex;gap:8px;flex-wrap:wrap;padding-top:28px;border-top:1px solid var(--border);margin-top:28px}.rubric-attribution{margin-top:20px;padding:12px 14px;border-radius:8px;background:#ffffff05;border:1px solid var(--border)}.rubric-attribution-toggle{cursor:pointer;list-style:none;font-size:13px;font-weight:500;color:var(--text-secondary, #a0a0a0);display:flex;align-items:center;gap:8px}.rubric-attribution-toggle::-webkit-details-marker{display:none}.rubric-attribution-toggle:before{content:"\25b8";font-size:11px;transition:transform .15s}.rubric-attribution[open] .rubric-attribution-toggle:before{transform:rotate(90deg)}.rubric-attribution-version{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:var(--text-tertiary, #666);padding:2px 6px;border-radius:4px;background:#ffffff0a}.rubric-attribution-body{margin-top:12px;display:flex;flex-direction:column;gap:14px}.rubric-attribution-group-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary, #888);margin:0 0 6px}.rubric-attribution-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.rubric-attribution-list--criteria .rubric-attribution-item{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:13px}.rubric-attribution-item--interaction{padding:8px 10px;border-radius:6px;background:#ef44440a;border:1px solid rgba(239,68,68,.15)}.rubric-attribution-item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rubric-attribution-id{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:var(--text-tertiary, #888);padding:1px 5px;border-radius:3px;background:#ffffff0a}.rubric-attribution-severity{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#ef4444;font-weight:600}.rubric-attribution-reason{margin:6px 0 0;font-size:13px;color:var(--text-primary, #d0d0d0);line-height:1.45}.rubric-attribution-list--criteria .rubric-attribution-reason{margin:0}.copy-btn.copy-btn-icon.copy-btn-reveal{background-color:#000}.phantom-page{max-width:760px;margin:0 auto;padding:32px 24px 48px}.phantom-hero{text-align:center;padding:32px 0 28px;border-bottom:1px solid var(--border);margin-bottom:28px}.phantom-badge{display:inline-block;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.06em;color:#fca5a5;background:#dc26261f;border:1px solid rgba(220,38,38,.35);padding:6px 12px;border-radius:999px;margin-bottom:18px}.phantom-title{font-family:var(--mono);font-size:28px;font-weight:800;margin:0 0 14px;display:flex;justify-content:center;align-items:baseline;gap:10px;flex-wrap:wrap}.phantom-eco{font-size:14px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.phantom-name{color:var(--text);word-break:break-all}.phantom-message{font-size:17px;color:var(--text);margin:0 0 10px;font-weight:600}.phantom-reason{font-size:14px;color:var(--muted);max-width:580px;margin:0 auto;line-height:1.55}.phantom-card{border:1px solid var(--border);border-radius:12px;background:#ffffff08;padding:22px 24px;margin-bottom:18px}.phantom-card h2{font-size:15px;font-weight:700;margin:0 0 12px;color:var(--text)}.phantom-card p{font-size:14px;color:var(--muted);margin:0 0 12px;line-height:1.6}.phantom-card code{font-family:var(--mono);background:#ffffff0f;padding:1px 6px;border-radius:4px;font-size:.92em;color:var(--text)}.phantom-card--danger{border-left:3px solid #dc2626;background:#dc26260d}.phantom-causes{list-style:none;padding:0;margin:12px 0 0}.phantom-causes li{font-size:14px;color:var(--muted);padding:6px 0;line-height:1.5}.phantom-causes strong{color:var(--text);font-weight:700;margin-right:6px}#phantom-alternatives[data-status=loading] .phantom-alt-status:after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border:2px solid var(--muted2);border-top-color:var(--text);border-radius:50%;animation:phantom-spin .8s linear infinite;vertical-align:middle}@keyframes phantom-spin{to{transform:rotate(360deg)}}.phantom-alt-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.phantom-alt-row{display:grid;grid-template-columns:110px 1fr auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#ffffff05;text-decoration:none;color:var(--text);transition:border-color .15s,background .15s}.phantom-alt-row:hover{border-color:var(--text);background:#ffffff0d}.phantom-alt-eco{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.phantom-alt-name code{background:transparent;padding:0;font-size:14px;word-break:break-all}.phantom-alt-meta{display:flex;gap:8px;font-family:var(--mono);font-size:12px}.phantom-alt-dl{color:var(--muted)}.phantom-alt-vulns{color:#fca5a5}.phantom-alt-arrow{color:var(--muted2);font-size:18px}.phantom-search{display:flex;gap:8px}.phantom-search input{flex:1;background:#00000040;border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-family:var(--mono);font-size:14px;color:var(--text)}.phantom-search input:focus{outline:none;border-color:var(--text)}.phantom-search button{background:var(--text);color:var(--bg);border:none;border-radius:8px;padding:0 18px;font-weight:700;cursor:pointer;font-size:14px}.phantom-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}@media(max-width:600px){.phantom-alt-row{grid-template-columns:1fr auto;grid-template-areas:"eco arrow" "name arrow" "meta arrow";gap:4px 12px}.phantom-alt-eco{grid-area:eco}.phantom-alt-name{grid-area:name}.phantom-alt-meta{grid-area:meta}.phantom-alt-arrow{grid-area:arrow;align-self:center}}
