/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}}:root{--bg:#0a0b0d;--bg-elev:#0f1114;--panel:#121418;--panel-2:#16191e;--border:#1e2228;--border-strong:#2a2f37;--text:#e7e9ec;--text-dim:#9aa0a8;--text-muted:#5d6470;--text-faint:#3a3f47;--accent:#4ade80;--accent-soft:#4ade801f;--accent-glow:#4ade8052;--danger:#f87171;--danger-strong:#ef4444;--warning:#f0b35a;--info:#7aa2f7}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{background:var(--bg);min-height:100%;color:var(--text);font-family:var(--font-sans);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;letter-spacing:0;margin:0}body{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}a{color:inherit}a:hover{color:var(--accent)}code{border:1px solid var(--border);background:var(--bg-elev);color:var(--text-dim);font-family:var(--font-mono);border-radius:4px;padding:2px 6px;font-size:.9em}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text);font-weight:500;line-height:1.1}p{color:var(--text-dim);line-height:1.55}button,.button-link{appearance:none;border:1px solid var(--border-strong);background:var(--bg-elev);min-height:38px;color:var(--text);font:inherit;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,background .15s,color .15s;display:inline-flex}button:hover,.button-link:hover{border-color:var(--accent);color:var(--text)}button[type=submit],.button-link.primary{border-color:var(--accent);background:var(--accent);color:#0a0b0d;font-weight:600}button.secondary,.button-link.secondary,.button-link.ghost,button.ghost{color:var(--text-dim);background:0 0}button:disabled,.button-link:disabled{cursor:not-allowed;opacity:.45}input[type=text],input[type=file],input[type=search]{border:1px solid var(--border-strong);background:var(--bg-elev);width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:6px;outline:none;padding:0 12px;font-size:13px;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}label{color:var(--text-dim);font-size:12px;font-family:var(--font-mono);gap:8px;display:grid}table{border-collapse:separate;border-spacing:0;background:var(--panel);width:100%;min-width:760px;color:var(--text-dim);font-size:13px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:11px 16px}th{background:var(--panel-2);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:500}tr:last-child td{border-bottom:none}.grid-bg{pointer-events:none;z-index:0;background-image:radial-gradient(circle, var(--text-faint) 1px, transparent 1px);opacity:.34;background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 82%);mask-image:linear-gradient(#000 0%,#0000 82%)}.shell{z-index:1;flex:1;width:min(1320px,100% - 40px);margin:0 auto;padding:18px 0 64px;position:relative}.topbar{z-index:20;border:1px solid var(--border);background:var(--bg);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:52px;padding:10px 14px;display:flex;position:sticky;top:12px}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb, var(--bg) 86%, transparent)}}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{min-width:0;font-family:var(--font-mono);align-items:center;gap:10px;font-size:13px;font-weight:500;display:inline-flex}.brand-title{color:var(--text)}.brand-note{color:var(--text-muted)}.topnav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:inline-flex}.topnav a{color:var(--text-dim);border-radius:6px;padding:6px 10px;font-size:13px;text-decoration:none}.topnav a:hover,.topnav a.active{background:var(--panel);color:var(--text)}.status{z-index:1;border-top:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;gap:18px;padding:10px 32px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.status{background:color-mix(in srgb, var(--bg) 88%, transparent)}}.status{color:var(--text-muted);font-family:var(--font-mono);font-size:11px}.status-group,.stat{align-items:center;gap:18px;display:inline-flex}.stat{gap:6px}.stat .val{color:var(--text-dim)}.dot{background:var(--text-muted);border-radius:999px;width:6px;height:6px}.dot.ok{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.upload-page{place-items:center;gap:42px;min-height:calc(100vh - 160px);padding:48px 0 24px;display:grid}.upload-shell{justify-items:center;gap:26px;width:min(720px,100%);display:grid}.upload-kicker{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:10px;font-size:11px;display:inline-flex}.upload-kicker span{background:var(--border-strong);width:24px;height:1px}.upload-copy{text-align:center;justify-items:center;gap:16px;display:grid}.upload-copy h1{font-size:52px;line-height:1.04}.upload-copy h1 span{color:var(--accent)}.upload-copy p{max-width:560px;font-size:16px}.upload-form{gap:14px;width:100%;display:grid}.dropzone{border:1px dashed var(--border-strong);background:linear-gradient(180deg, var(--panel), var(--panel-2));min-height:280px;color:var(--text);cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px;transition:border-color .18s,background .18s,transform .18s;display:flex;position:relative;overflow:hidden}.dropzone:hover,.dropzone.is-active,.dropzone.has-file{border-color:var(--accent);background:linear-gradient(180deg, var(--accent-soft), var(--panel-2))}.dropzone.is-active{transform:scale(1.005)}.dropzone-icon{border:1px solid var(--border-strong);background:var(--bg-elev);width:44px;height:44px;color:var(--text-dim);border-radius:8px;place-items:center;display:grid}.dropzone-title{color:var(--text);font-size:15px;font-weight:500}.dropzone-text{color:var(--text-muted);font-family:var(--font-mono);font-size:13px}.dropzone-meta,.inline-metrics{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.file-pill,.inline-metric{border:1px solid var(--border);background:var(--bg-elev);max-width:100%;min-height:26px;color:var(--text-dim);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:4px 8px;font-size:11px;display:inline-flex;overflow:hidden}.dropzone.has-file .file-pill{border-color:var(--accent);color:var(--accent)}.upload-details{border:1px solid var(--border-strong);background:var(--panel);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:18px;display:grid}.actions{flex-wrap:wrap;gap:8px;display:flex}.trust-row{color:var(--text-muted);font-family:var(--font-mono);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;font-size:11px;display:flex}.trust-row span{align-items:center;gap:6px;display:inline-flex}.trust-row i{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent-glow);border-radius:999px}.analysis-progress,.loading-state{border:1px solid var(--border-strong);background:var(--panel);width:100%;color:var(--text-dim);font-family:var(--font-mono);border-radius:8px;padding:18px;font-size:12px}.progress-head{color:var(--text);justify-content:space-between;align-items:center;gap:12px;display:flex}.progress-bar{background:var(--border);border-radius:999px;height:2px;margin-top:12px;overflow:hidden}.progress-bar span{background:var(--accent);height:100%;box-shadow:0 0 12px var(--accent-glow);transition:width .3s;display:block}.progress-steps{gap:6px;margin-top:12px;display:grid}.progress-steps span{color:var(--text-muted)}.progress-steps span.active,.progress-steps span.done{color:var(--accent)}.result-analysis-progress{padding:24px}.progress-current{color:var(--text);margin-top:16px;font-size:13px}.result-analysis-progress .analyzing-sub{color:var(--text-muted);margin-top:16px}.result-page{gap:26px;padding:28px 0 0;display:grid}.result-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.result-head h1{font-family:var(--font-mono);word-break:break-word;margin-top:10px;font-size:34px;line-height:1.1}.result-crumb,.result-subline{color:var(--text-muted);font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.result-crumb{text-transform:uppercase;letter-spacing:.08em}.result-subline{letter-spacing:0;margin-top:8px;font-size:12px}.kpi-grid{border:1px solid var(--border);background:var(--border);border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.kpi-card{background:var(--panel);align-content:start;gap:8px;min-height:116px;padding:18px;display:grid}.kpi-card span,.kpi-card small{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.kpi-card strong{color:var(--text);font-family:var(--font-mono);font-size:28px;font-weight:500;line-height:1}.kpi-card strong.danger{color:var(--danger)}.kpi-card small{letter-spacing:0;text-transform:none;font-size:11px}.result-layout{grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:18px;display:grid}.result-card{border:1px solid var(--border);background:var(--panel);border-radius:8px;overflow:hidden}.result-card-head{border-bottom:1px solid var(--border);background:var(--panel-2);min-height:45px;color:var(--text-muted);font-family:var(--font-mono);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:11px;display:flex}.result-card-head strong{color:var(--text);font-size:12px;font-weight:500}.model-evidence-card{margin-bottom:18px}.model-evidence-grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:14px;padding:14px;display:grid}.selected-model{border:1px solid var(--accent);padding:5px 8px}@supports (color:color-mix(in lab, red, red)){.selected-model{border:1px solid color-mix(in srgb, var(--accent) 44%, var(--border))}}.selected-model{color:var(--accent);font-family:var(--font-mono);border-radius:4px;font-size:11px}.table-wrap.compact{border-radius:6px}.table-wrap.compact table{min-width:640px}.table-wrap.compact th,.table-wrap.compact td{padding:10px 12px}.table-wrap.compact tr.is-selected td{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.table-wrap.compact tr.is-selected td{background:color-mix(in srgb, var(--accent-soft) 60%, transparent)}}.mini-label{border:1px solid var(--accent);margin-left:8px;padding:2px 5px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.mini-label{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border))}}.mini-label{color:var(--accent);font-family:var(--font-mono);border-radius:4px;font-size:10px;font-weight:500}.importance-list{border:1px solid var(--border);background:var(--panel);border-radius:6px;align-content:start;gap:9px;padding:12px;display:grid}.importance-row{color:var(--text-muted);font-family:var(--font-mono);grid-template-columns:minmax(0,1fr) 82px 42px;align-items:center;gap:10px;font-size:11px;display:grid}.importance-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.importance-row i{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.importance-row b{border-radius:inherit;background:var(--accent);height:100%;display:block}.importance-row strong{color:var(--text);text-align:right;font-size:11px}.graph-controls{align-items:center;gap:4px;display:inline-flex}.graph-controls button{min-height:28px;font-family:var(--font-mono);border-radius:4px;padding:0 9px;font-size:11px}.graph-controls span{min-width:42px;color:var(--text-dim);text-align:center}.tabs-head{flex-wrap:wrap}.graph-wrap{background:radial-gradient(ellipse at center, var(--accent-soft) 0%, transparent 60%), var(--panel);height:560px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.graph-wrap{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--accent-soft) 70%, transparent) 0%, transparent 60%), var(--panel)}}.graph-wrap svg{width:100%;height:100%;display:block}.graph-wrap .graph-legend{border:1px solid var(--border);background:var(--bg-elev);border-radius:6px;margin:0;padding:8px 10px;position:absolute;bottom:12px;left:12px}@supports (color:color-mix(in lab, red, red)){.graph-wrap .graph-legend{background:color-mix(in srgb, var(--bg-elev) 88%, transparent)}}.graph-wrap .graph-legend{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vue-graph-node{cursor:pointer;transition:opacity .2s}.vue-graph-node.dimmed{opacity:.24}.vue-graph-node circle{transform-box:fill-box;transform-origin:50%;transition:stroke-width .12s,transform .12s}.vue-graph-node:hover circle,.vue-graph-node.selected circle{transform:scale(1.08)}.vue-graph-node text{fill:var(--text);font-family:var(--font-mono);pointer-events:none;font-size:13px;font-weight:600}.vue-graph-node .node-score{font-size:14px;font-weight:700}.vue-graph-node .node-label{paint-order:stroke;stroke:var(--panel);stroke-linejoin:round;stroke-width:4px}.package-detail{gap:18px;padding:18px;display:grid}.package-detail h2{font-family:var(--font-mono);overflow-wrap:anywhere;margin-bottom:10px;font-size:17px}.package-detail h3{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:500}.chip.accent{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chip.accent{border-color:color-mix(in srgb, var(--accent) 46%, var(--border))}}.chip.accent{color:var(--accent)}.risk-stack{display:grid}.risk-row{color:var(--text-muted);font-family:var(--font-mono);grid-template-columns:120px minmax(0,1fr) 44px;align-items:center;gap:10px;font-size:11px;display:grid}.risk-row i{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.risk-row b{border-radius:inherit;background:var(--text-muted);height:100%;display:block}.risk-row.accent{color:var(--accent)}.risk-row.accent b{background:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.risk-row strong{color:var(--text);text-align:right}.detail-metrics{border:1px solid var(--border);background:var(--border);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.detail-metrics div{background:var(--panel-2);gap:5px;padding:10px;display:grid}.detail-metrics span{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.detail-metrics strong{color:var(--text);font-family:var(--font-mono);font-size:16px}.vuln-stack{gap:8px;display:grid}.vuln-row,.empty-detail{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;gap:6px;padding:10px;display:grid}.vuln-row div{color:var(--text-dim);font-family:var(--font-mono);align-items:center;gap:8px;font-size:11px;display:flex}.vuln-row p,.empty-detail{color:var(--text-dim);font-size:12px}.severity-pill{border:1px solid var(--border);min-height:23px;color:var(--text-dim);font-family:var(--font-mono);text-transform:lowercase;border-radius:4px;align-items:center;padding:3px 7px;font-size:10px;display:inline-flex}.severity-pill.critical,.severity-pill.high{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.severity-pill.critical,.severity-pill.high{border-color:color-mix(in srgb, var(--danger) 50%, var(--border))}}.severity-pill.critical,.severity-pill.high{color:var(--danger)}.severity-pill.moderate,.severity-pill.medium{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.severity-pill.moderate,.severity-pill.medium{border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}}.severity-pill.moderate,.severity-pill.medium{color:var(--warning)}.severity-pill.low{border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.severity-pill.low{border-color:color-mix(in srgb, var(--info) 50%, var(--border))}}.severity-pill.low{color:var(--info)}.accent-text{color:var(--accent)}.recent-panel,.panel,.hero,.sticky-tabs{border:1px solid var(--border);background:var(--panel);border-radius:8px}.recent-panel{width:100%;padding:18px}.section-head,.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.section-kicker,.eyebrow,.metric-label{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:500}.eyebrow{width:fit-content}.recent-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:14px;display:grid}.recent-item{border:1px solid var(--border);background:var(--panel-2);border-radius:6px;gap:12px;padding:14px;text-decoration:none;transition:border-color .15s,background .15s;display:grid}.recent-item:hover{border-color:var(--accent);background:var(--bg-elev)}.hero{margin-top:22px;padding:22px}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;display:grid}.hero-copy,.hero-aside,.table-title,.stack,.grid,.meta-list,.key-value{display:grid}.hero-copy,.hero-aside{align-content:start;gap:14px}.hero-copy h1{font-family:var(--font-mono);word-break:break-word;font-size:34px;line-height:1.08}.stack{gap:20px;margin-top:20px}.grid{gap:14px}.grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid.four{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.mini-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.panel{padding:18px}.panel.flat{box-shadow:none}.panel.tinted{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.panel.tinted{border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.panel.tinted{background:linear-gradient(180deg, var(--accent-soft), var(--panel))}.mini-card,.metric-card,.key-value div,.graph-inspector-grid div,.dependency-graph-inspector{border:1px solid var(--border);background:var(--panel-2);border-radius:6px}.mini-card,.metric-card,.key-value div,.graph-inspector-grid div{padding:12px}.metric-card{min-height:126px}.metric-value{color:var(--text);font-family:var(--font-mono);margin-top:8px;font-size:28px;font-weight:500;line-height:1;display:block}.small{font-size:13px}.muted,.table-subtle,.help-text{color:var(--text-muted)}.badge,.chip,.score-pill{border:1px solid var(--border);background:var(--bg-elev);width:fit-content;color:var(--text-dim);font-family:var(--font-mono);text-transform:lowercase;border-radius:4px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.badge,.score-pill{min-height:25px;padding:4px 8px}.chip{min-height:28px;padding:5px 8px}.badge.success,.score-pill.low{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.badge.success,.score-pill.low{border-color:color-mix(in srgb, var(--accent) 46%, var(--border))}}.badge.success,.score-pill.low{color:var(--accent)}.badge.warning,.score-pill.medium,.badge.rust{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.badge.warning,.score-pill.medium,.badge.rust{border-color:color-mix(in srgb, var(--warning) 46%, var(--border))}}.badge.warning,.score-pill.medium,.badge.rust{color:var(--warning)}.badge.danger,.score-pill.high{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.badge.danger,.score-pill.high{border-color:color-mix(in srgb, var(--danger) 46%, var(--border))}}.badge.danger,.score-pill.high{color:var(--danger)}.badge.muted{color:var(--text-muted)}.alert{border:1px solid var(--border);background:var(--panel);border-radius:6px;width:100%;padding:12px 14px;font-size:13px}.alert.success{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.alert.success{border-color:color-mix(in srgb, var(--accent) 42%, var(--border))}}.alert.success{color:var(--accent)}.alert.error{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.alert.error{border-color:color-mix(in srgb, var(--danger) 42%, var(--border))}}.alert.error{color:var(--danger)}.alert.scoring-notice{color:var(--text-muted);align-items:baseline;gap:8px;margin-bottom:16px;display:flex}.alert.scoring-notice strong{color:var(--text)}.alert.scoring-notice.warning{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.alert.scoring-notice.warning{border-color:color-mix(in srgb, var(--warning) 50%, var(--border))}}.alert.scoring-notice.warning,.alert.scoring-notice.warning strong{color:var(--warning)}.table-wrap{border:1px solid var(--border);background:var(--panel);border-radius:8px;overflow-x:auto}.table-title{gap:4px}.table-title strong{color:var(--text);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:12px;font-weight:500}.table-subtle{font-size:12px}.meta-list{color:var(--text-dim);gap:8px;font-size:13px}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.chip-list{flex-wrap:wrap;gap:7px;display:flex}.tabs{flex-wrap:wrap;gap:6px;display:flex}.tab-button{border-color:var(--border);min-height:30px;color:var(--text-muted);font-family:var(--font-mono);background:0 0;padding:0 10px;font-size:11px}.tab-button.is-active{border-color:var(--border-strong);background:var(--bg-elev);color:var(--text)}.tab-panel{display:none}.tab-panel.is-active{gap:20px;display:grid}.sticky-tabs{z-index:12;background:var(--panel);padding:10px;position:sticky;top:78px}@supports (color:color-mix(in lab, red, red)){.sticky-tabs{background:color-mix(in srgb, var(--panel) 92%, transparent)}}.sticky-tabs{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-shell{gap:6px;min-width:min(100%,320px);display:grid}.dependency-graph-shell{grid-template-columns:minmax(0,1fr) minmax(240px,320px);align-items:stretch;gap:14px;display:grid}.dependency-graph-stage{border:1px solid var(--border);background:radial-gradient(ellipse at center, var(--accent-soft) 0%, transparent 60%), var(--panel);border-radius:8px;min-height:520px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.dependency-graph-stage{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--accent-soft) 70%, transparent) 0%, transparent 60%), var(--panel)}}.dependency-graph-stage:before{content:"";pointer-events:none;background-image:linear-gradient(90deg, var(--border) 1px, transparent 1px), linear-gradient(180deg, var(--border) 1px, transparent 1px);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.dependency-graph-stage:before{background-image:linear-gradient(90deg, color-mix(in srgb, var(--border) 50%, transparent) 1px, transparent 1px), linear-gradient(180deg, color-mix(in srgb, var(--border) 50%, transparent) 1px, transparent 1px)}}.dependency-graph-stage:before{opacity:.45;background-size:44px 44px}.dependency-graph-svg{width:100%;min-height:520px;display:block;position:relative}.dependency-graph-empty{text-align:center;color:var(--text-muted);background:var(--panel);place-items:center;padding:24px;display:none;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.dependency-graph-empty{background:color-mix(in srgb, var(--panel) 84%, transparent)}}.dependency-graph-stage.is-empty .dependency-graph-empty{display:grid}.dependency-graph-inspector{align-content:start;gap:14px;padding:16px;display:grid}.dependency-graph-inspector strong{color:var(--text);overflow-wrap:anywhere}.graph-inspector-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.graph-inspector-grid span,.key-value strong{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.graph-inspector-grid strong{font-family:var(--font-mono);font-size:16px}.graph-legend{color:var(--text-muted);font-family:var(--font-mono);flex-wrap:wrap;gap:8px 14px;margin-top:12px;font-size:11px;display:flex}.graph-legend span{align-items:center;gap:7px;display:inline-flex}.graph-dot,.graph-ring{border-radius:999px;width:9px;height:9px;display:inline-block}.graph-dot.direct{background:var(--accent)}.graph-dot.transitive{background:var(--text-muted)}.graph-dot.vulnerable{background:var(--danger)}.graph-ring{border:1px solid var(--text)}.graph-node{cursor:pointer}.graph-node circle{transform-box:fill-box;transform-origin:50%;transition:stroke-width .12s,transform .12s}.graph-node:hover circle,.graph-node.is-selected circle{stroke-width:4px;transform:scale(1.08)}.graph-node text{fill:var(--text);font-family:var(--font-mono);pointer-events:none;text-anchor:middle;font-size:11px}.graph-depth-label{fill:var(--text-muted);font-family:var(--font-mono);text-anchor:middle;text-transform:uppercase;font-size:10px}.empty{text-align:center;color:var(--text-muted);padding:24px}.empty-inline{color:var(--text-muted);font-size:13px;display:none}.key-value{gap:8px}.key-value div{gap:5px;display:grid}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=980px){.hero-grid,.dependency-graph-shell,.result-layout,.model-evidence-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.upload-details{grid-template-columns:1fr}}@media (width<=720px){.shell{width:min(100% - 20px,1320px);padding-top:10px}.topbar,.status{flex-direction:column;align-items:flex-start}.topbar{top:8px}.topnav{justify-content:flex-start}.status{padding:12px 18px}.status-group{flex-wrap:wrap;align-items:flex-start;gap:8px 14px}.upload-page{place-items:start center;padding-top:30px}.upload-copy h1{font-size:36px}.dropzone{min-height:230px;padding:22px}.hero-copy h1{font-size:28px}.result-head{flex-direction:column;align-items:flex-start}.kpi-grid{grid-template-columns:1fr}.sticky-tabs{top:76px}.dependency-graph-stage,.dependency-graph-svg,.graph-wrap{height:380px;min-height:380px}table{min-width:620px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
