.metadata-bar[data-astro-cid-56xpmwjl]{display:flex;align-items:center;justify-content:center;gap:var(--space-2xl);flex-wrap:wrap;padding:var(--space-lg) var(--space-xl);background:linear-gradient(135deg,rgba(var(--color-bg-card-rgb),.4),rgba(var(--color-bg-elevated-rgb),.2));backdrop-filter:blur(10px);border:1px solid rgba(var(--color-border-rgb),.3);border-radius:var(--radius-lg);margin-bottom:var(--space-xl)}.metadata-item[data-astro-cid-56xpmwjl]{display:flex;align-items:center;gap:var(--space-xs)}.metadata-icon[data-astro-cid-56xpmwjl]{display:flex;align-items:center;justify-content:center;color:var(--color-accent);opacity:.8}.metadata-label[data-astro-cid-56xpmwjl]{font-size:var(--text-label);color:var(--color-text-muted);font-weight:500}.metadata-value[data-astro-cid-56xpmwjl]{font-size:var(--text-body-sm);color:var(--color-text);font-weight:600;font-family:var(--font-mono)}.fade-in[data-astro-cid-56xpmwjl]{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards;opacity:0}@media(max-width:768px){.metadata-bar[data-astro-cid-56xpmwjl]{gap:var(--space-lg)}.metadata-item[data-astro-cid-56xpmwjl]{flex:1 1 calc(50% - var(--space-lg));min-width:0}.metadata-value[data-astro-cid-56xpmwjl]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.risk-section[data-astro-cid-6xkvpbih]{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg)}.risk-gauge-container[data-astro-cid-6xkvpbih]{position:relative;width:180px;height:180px}.risk-gauge[data-astro-cid-6xkvpbih]{width:100%;height:100%;transform:rotate(-90deg)}.gauge-bg[data-astro-cid-6xkvpbih]{fill:none;stroke:rgba(var(--color-border-rgb),.3);stroke-width:8}.gauge-fill[data-astro-cid-6xkvpbih]{fill:none;stroke:var(--color-accent);stroke-width:8;stroke-linecap:round;stroke-dasharray:314;stroke-dashoffset:314;transition:stroke-dashoffset 1.5s cubic-bezier(.16,1,.3,1),stroke 1s cubic-bezier(.4,0,.2,1)}.gauge-fill[data-astro-cid-6xkvpbih][data-risk=low]{stroke:var(--severity-low)}.gauge-fill[data-astro-cid-6xkvpbih][data-risk=medium]{stroke:var(--severity-medium)}.gauge-fill[data-astro-cid-6xkvpbih][data-risk=high]{stroke:var(--severity-high)}.gauge-fill[data-astro-cid-6xkvpbih][data-risk=critical]{stroke:var(--severity-critical)}.gauge-content[data-astro-cid-6xkvpbih]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.gauge-value[data-astro-cid-6xkvpbih]{font-size:2.5rem;font-weight:700;line-height:1;background:var(--gradient-accent);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:var(--space-xs)}.gauge-label[data-astro-cid-6xkvpbih]{font-size:var(--text-caption);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xxs)}.gauge-status[data-astro-cid-6xkvpbih]{font-size:var(--text-micro);color:var(--color-text-secondary);font-weight:500}.severity-inline[data-astro-cid-6xkvpbih]{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:center}.severity-item[data-astro-cid-6xkvpbih]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:rgba(var(--color-bg-tertiary-rgb),.6);border-radius:var(--radius-md);border:1px solid rgba(var(--color-border-rgb),.3);transition:all var(--transition-fast)}.severity-item[data-astro-cid-6xkvpbih]:hover{background:rgba(var(--color-bg-tertiary-rgb),.8);border-color:rgba(var(--color-border-rgb),.5);transform:translateY(-2px)}.severity-dot[data-astro-cid-6xkvpbih]{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.severity-item[data-astro-cid-6xkvpbih].critical .severity-dot[data-astro-cid-6xkvpbih]{background:var(--severity-critical);box-shadow:0 0 8px #ef444480}.severity-item[data-astro-cid-6xkvpbih].high .severity-dot[data-astro-cid-6xkvpbih]{background:var(--severity-high);box-shadow:0 0 8px #f9731680}.severity-item[data-astro-cid-6xkvpbih].medium .severity-dot[data-astro-cid-6xkvpbih]{background:var(--severity-medium);box-shadow:0 0 8px #eab30880}.severity-item[data-astro-cid-6xkvpbih].low .severity-dot[data-astro-cid-6xkvpbih]{background:var(--severity-low);box-shadow:0 0 8px #eab30880}.severity-count[data-astro-cid-6xkvpbih]{font-size:var(--text-body-sm);font-weight:700;color:var(--color-text);min-width:1.5ch;text-align:center}.severity-label[data-astro-cid-6xkvpbih]{font-size:var(--text-micro);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}@media(max-width:768px){.risk-gauge-container[data-astro-cid-6xkvpbih]{width:150px;height:150px}.gauge-value[data-astro-cid-6xkvpbih]{font-size:2rem}.severity-inline[data-astro-cid-6xkvpbih]{gap:var(--space-sm)}.severity-item[data-astro-cid-6xkvpbih]{padding:var(--space-xxs) var(--space-xs)}}.dashboard-page{padding:var(--space-3xl) 0 var(--space-4xl);min-height:calc(100vh - 160px);position:relative;overflow:hidden}.dashboard-page:before{content:"";position:absolute;inset:0;background:var(--gradient-mesh);opacity:.2;pointer-events:none;z-index:0}.dashboard-page .container{position:relative;z-index:1}.dashboard-centered-container{max-width:1400px;margin:0 auto;position:relative}.dashboard-charts-section{margin-top:var(--space-xl);min-height:600px;content-visibility:auto;contain-intrinsic-size:auto 600px}.charts-skeleton{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.charts-skeleton[hidden]{display:none}.charts-skeleton .skeleton-bar{background:linear-gradient(90deg,var(--color-bg-tertiary) 25%,var(--color-bg-secondary) 50%,var(--color-bg-tertiary) 75%);background-size:200% 100%;border-radius:var(--radius-lg);animation:skeleton-shimmer 1.5s cubic-bezier(.4,0,.2,1) infinite}.charts-skeleton .skeleton-bar-tall{height:334px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-xl);flex-wrap:wrap;gap:var(--space-lg)}.header-content h1{margin-bottom:var(--space-xs);font-size:var(--text-h1);font-weight:700}.subtitle{font-size:var(--text-body);color:var(--color-text-secondary);margin:0}.animate-in{opacity:0;transform:translateY(20px);animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) forwards;animation-delay:var(--delay)}.fade-in{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.portfolio-hero-summary{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-2xl);margin-bottom:var(--space-2xl);padding:var(--space-2xl);background:linear-gradient(135deg,rgba(var(--color-bg-card-rgb),.6),rgba(var(--color-bg-card-rgb),.3));backdrop-filter:blur(var(--blur-sm));border:1px solid rgba(var(--color-accent-rgb),.15);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.portfolio-gauge-section{display:flex;align-items:center;justify-content:center}.portfolio-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.runtime-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-xl);margin-bottom:var(--space-2xl)}.runtime-card{position:relative;padding:var(--space-xl);background:linear-gradient(135deg,rgba(var(--color-bg-card-rgb),.85),rgba(var(--color-bg-card-rgb),.75));border:1px solid rgba(var(--color-border-rgb),.3);border-radius:var(--radius-xl);transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base);overflow:hidden}.runtime-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--runtime-color);opacity:.8}.runtime-card.evm{--runtime-color: var(--color-evm)}.runtime-card.svm{--runtime-color: var(--color-svm)}.runtime-card:hover{border-color:var(--runtime-color);transform:translateY(-4px);box-shadow:var(--shadow-xl),0 0 30px color-mix(in srgb,var(--runtime-color) 15%,transparent)}.runtime-card-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.runtime-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--runtime-color) 15%,transparent);color:var(--runtime-color)}.runtime-badge-label{font-size:var(--text-h3);font-weight:700;color:var(--runtime-color);letter-spacing:.02em}.runtime-stats{display:flex;flex-direction:column;gap:var(--space-md)}.runtime-stat-main{display:flex;align-items:baseline;gap:var(--space-sm)}.runtime-count{font-size:var(--text-display);font-weight:800;color:var(--color-text-primary);line-height:1}.runtime-stat-label{font-size:var(--text-body-lg);color:var(--color-text-secondary);font-weight:500}.runtime-stat-secondary{display:flex;gap:var(--space-xl)}.runtime-mini-stat{display:flex;flex-direction:column;gap:var(--space-xxs)}.mini-stat-value{font-size:var(--text-h4);font-weight:700;color:var(--color-text-primary)}.mini-stat-label{font-size:var(--text-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.runtime-card-link{display:inline-flex;align-items:center;margin-top:var(--space-lg);padding:var(--space-sm) var(--space-md);background:color-mix(in srgb,var(--runtime-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--runtime-color) 20%,transparent);border-radius:var(--radius-md);color:var(--runtime-color);font-size:var(--text-body-sm);font-weight:600;text-decoration:none;transition:all var(--transition-fast)}.runtime-card-link:hover{background:color-mix(in srgb,var(--runtime-color) 20%,transparent);border-color:var(--runtime-color);transform:translate(4px)}.section-header{margin-bottom:var(--space-xl)}.section-header h2{position:relative;padding-left:calc(4px + var(--space-sm));font-size:var(--text-h3);font-weight:600;margin-bottom:var(--space-xs);color:var(--color-text-primary)}.section-header h2:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gradient-accent);border-radius:2px}.section-subtitle{font-size:var(--text-body-sm);color:var(--color-text-muted);margin:0}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-4xl);text-align:center}.loading-state[hidden]{display:none}.loading-spinner{width:48px;height:48px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--space-lg)}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-content[hidden]{display:none}.dashboard-content{animation:dashboard-fade-in .3s cubic-bezier(.4,0,.2,1)}@keyframes dashboard-fade-in{0%{opacity:0}to{opacity:1}}.portfolio-metrics-grid .card{display:flex;align-items:center;gap:var(--space-md)}.card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.card-icon.contracts{background:var(--severity-info-bg);color:var(--severity-info)}.card-icon.findings{background:var(--severity-high-bg);color:var(--severity-high)}.card-icon.risk{background:var(--color-secondary-subtle);color:var(--color-secondary)}.card-icon.critical{background:var(--severity-critical-bg);color:var(--severity-critical)}.card-value{font-size:var(--text-h2);font-weight:700;color:var(--color-text-primary);line-height:1}.card-label{font-size:var(--text-body-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.full-width{margin-bottom:var(--space-lg)}.contract-grid-panel{background:linear-gradient(135deg,rgba(var(--color-bg-card-rgb),.85),rgba(var(--color-bg-card-rgb),.7));border:1px solid rgba(var(--color-accent-rgb),.15);padding:var(--space-2xl)!important}.filter-select{height:var(--component-height-sm);padding:var(--space-xs) var(--space-lg) var(--space-xs) var(--space-sm);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body-sm);color:var(--color-text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:.875rem;transition:all var(--transition-fast)}.filter-select:focus{outline:none;border-color:var(--color-accent)}.filter-group{display:flex;align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap}.contract-risk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:var(--space-sm);min-height:100px;max-height:200px;overflow-y:auto;padding:var(--space-sm);background:linear-gradient(135deg,rgba(var(--color-bg-tertiary-rgb),.8),rgba(var(--color-bg-secondary-rgb),.7));border:1px solid rgba(var(--color-border-rgb),.5);border-radius:var(--radius-md)}.grid-loading{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-xl);color:var(--color-text-muted);font-size:var(--text-body-sm)}.contract-cell{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);position:relative;display:flex;align-items:center;justify-content:center;font-size:var(--text-micro);font-weight:700;color:#fff;text-shadow:var(--shadow-xs);min-width:40px;min-height:40px}.contract-cell:after{content:"";position:absolute;top:3px;right:3px;width:8px;height:8px;border-radius:var(--radius-full);background:var(--cell-runtime-color, var(--color-evm));box-shadow:0 0 4px var(--cell-runtime-color, var(--color-evm))}.contract-cell[data-runtime=evm]:after{--cell-runtime-color: var(--color-evm)}.contract-cell[data-runtime=svm]:after{--cell-runtime-color: var(--color-svm)}.contract-cell:hover{transform:scale(1.15);z-index:10;box-shadow:var(--shadow-lg)}.contract-cell.critical-risk{background:linear-gradient(135deg,var(--severity-critical) 0%,var(--severity-critical-dark) 100%)}.contract-cell.high-risk{background:linear-gradient(135deg,var(--severity-high) 0%,var(--severity-high-dark) 100%)}.contract-cell.medium-risk{background:linear-gradient(135deg,var(--severity-medium) 0%,var(--severity-medium-dark) 100%)}.contract-cell.low-risk{background:linear-gradient(135deg,var(--severity-low) 0%,var(--severity-low-dark) 100%)}.contract-cell-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-caption);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:100;box-shadow:var(--shadow-lg);color:var(--color-text);text-shadow:none}.contract-cell:hover .contract-cell-tooltip{opacity:1}.contract-cell-tooltip .tooltip-address{font-family:var(--font-mono);color:var(--color-accent);font-weight:600}.contract-cell-tooltip .tooltip-details{margin-top:var(--space-xs);color:var(--color-text-secondary)}.panel-controls{align-items:center}.grid-legend{display:flex;justify-content:center;gap:var(--space-2xl);margin-top:var(--space-md);font-size:var(--text-caption);color:var(--color-text-secondary);flex-wrap:wrap;padding:var(--space-md);background:rgba(var(--color-bg-tertiary-rgb),.3);border-radius:var(--radius-md)}.legend-group{display:flex;align-items:center;gap:var(--space-md)}.legend-title{font-weight:600;color:var(--color-text-muted);margin-right:var(--space-xs)}.legend-item{display:flex;align-items:center;gap:var(--space-xs)}.legend-dot{width:12px;height:12px;border-radius:var(--radius-xs)}.legend-dot.critical{background:linear-gradient(135deg,var(--severity-critical) 0%,var(--severity-critical-dark) 100%)}.legend-dot.high{background:linear-gradient(135deg,var(--severity-high) 0%,var(--severity-high-dark) 100%)}.legend-dot.medium{background:linear-gradient(135deg,var(--severity-medium) 0%,var(--severity-medium-dark) 100%)}.legend-dot.low{background:linear-gradient(135deg,var(--severity-low) 0%,var(--severity-low-dark) 100%)}.runtime-indicator{width:12px;height:12px;border-radius:var(--radius-full);box-shadow:0 0 4px currentColor}.runtime-indicator.evm{background:var(--color-evm);box-shadow:0 0 4px color-mix(in srgb,var(--color-evm) 50%,transparent)}.runtime-indicator.svm{background:var(--color-svm);box-shadow:0 0 4px color-mix(in srgb,var(--color-svm) 50%,transparent)}.vulnerability-treemap{display:flex;flex-wrap:wrap;gap:var(--space-xs);min-height:180px;padding:var(--space-sm);background:var(--color-bg-tertiary);border-radius:var(--radius-md)}.treemap-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius-md);padding:var(--space-sm);cursor:pointer;transition:all var(--transition-base);min-height:60px}.treemap-cell:hover{transform:scale(1.02);box-shadow:var(--shadow-md)}.treemap-cell.critical{background:linear-gradient(135deg,color-mix(in srgb,var(--severity-critical) 90%,transparent),color-mix(in srgb,var(--severity-critical-dark) 90%,transparent));color:#fff}.treemap-cell.high{background:linear-gradient(135deg,color-mix(in srgb,var(--severity-high) 90%,transparent),color-mix(in srgb,var(--severity-high-dark) 90%,transparent));color:#fff}.treemap-cell.medium{background:linear-gradient(135deg,color-mix(in srgb,var(--severity-medium) 90%,transparent),color-mix(in srgb,var(--severity-medium-dark) 90%,transparent));color:#fff}.treemap-cell.low{background:linear-gradient(135deg,color-mix(in srgb,var(--severity-low) 90%,transparent),color-mix(in srgb,var(--severity-low-dark) 90%,transparent));color:#fff}.treemap-cell.info{background:linear-gradient(135deg,color-mix(in srgb,var(--severity-info) 90%,transparent),color-mix(in srgb,var(--severity-info-dark) 90%,transparent));color:#fff}.treemap-label{font-size:var(--text-micro);font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.treemap-count{font-size:var(--text-h3);font-weight:700;line-height:1;margin-top:var(--space-xs)}.treemap-contracts{font-size:var(--text-micro);opacity:.8;margin-top:var(--space-xxs)}.risk-histogram{display:flex;align-items:flex-end;gap:var(--space-xs);height:140px;padding:var(--space-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md)}.histogram-bar{flex:1;min-width:20px;border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:all var(--transition-base);cursor:pointer;position:relative}.histogram-bar:hover{opacity:.8}.histogram-bar:after{content:attr(data-count);position:absolute;bottom:calc(100% + var(--space-xxs));left:50%;transform:translate(-50%);font-size:var(--text-micro);font-weight:600;color:var(--color-text-secondary);opacity:0;transition:opacity var(--transition-fast)}.histogram-bar:hover:after{opacity:1}.histogram-bar.bucket-0-10{background:linear-gradient(180deg,var(--severity-low) 0%,var(--severity-low-dark) 100%)}.histogram-bar.bucket-10-20{background:linear-gradient(180deg,color-mix(in srgb,var(--severity-low) 80%,white) 0%,var(--severity-low) 100%)}.histogram-bar.bucket-20-30{background:linear-gradient(180deg,color-mix(in srgb,var(--severity-low) 60%,white),color-mix(in srgb,var(--severity-low) 80%,white))}.histogram-bar.bucket-30-40{background:linear-gradient(180deg,color-mix(in srgb,var(--severity-medium) 80%,white) 0%,var(--severity-medium) 100%)}.histogram-bar.bucket-40-50{background:linear-gradient(180deg,var(--severity-medium) 0%,var(--severity-medium-dark) 100%)}.histogram-bar.bucket-50-60{background:linear-gradient(180deg,color-mix(in srgb,var(--severity-high) 80%,white) 0%,var(--severity-high) 100%)}.histogram-bar.bucket-60-70{background:linear-gradient(180deg,var(--severity-high) 0%,var(--severity-high-dark) 100%)}.histogram-bar.bucket-70-80{background:linear-gradient(180deg,color-mix(in srgb,var(--severity-critical) 80%,white) 0%,var(--severity-critical) 100%)}.histogram-bar.bucket-80-90{background:linear-gradient(180deg,var(--severity-critical) 0%,var(--severity-critical-dark) 100%)}.histogram-bar.bucket-90-100{background:linear-gradient(180deg,var(--severity-critical-dark) 0%,color-mix(in srgb,var(--severity-critical-dark) 90%,black) 100%)}.histogram-labels{display:flex;justify-content:space-between;padding:0 var(--space-md);font-size:var(--text-micro);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.safe-label{color:var(--severity-low)}.critical-label{color:var(--severity-critical)}.high-risk-list{display:flex;flex-direction:column;gap:var(--space-sm)}.high-risk-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(135deg,var(--color-bg-tertiary) 0%,color-mix(in srgb,var(--color-bg-primary) 80%,transparent) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer;text-decoration:none;color:inherit}.high-risk-item:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);transform:translate(4px)}.high-risk-indicator{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.high-risk-indicator.critical{background:var(--severity-critical);box-shadow:0 0 8px color-mix(in srgb,var(--severity-critical) 50%,transparent)}.high-risk-indicator.high{background:var(--severity-high);box-shadow:0 0 8px color-mix(in srgb,var(--severity-high) 50%,transparent)}.high-risk-info{flex:1;min-width:0}.high-risk-address{font-family:var(--font-mono);font-size:var(--text-body-sm);font-weight:500;color:var(--color-accent)}.high-risk-meta{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-xxs);font-size:var(--text-caption);color:var(--color-text-secondary)}.high-risk-network{padding:var(--space-xxs) var(--space-sm);background:var(--color-bg-secondary);border-radius:var(--radius-sm);font-weight:500}.high-risk-score{font-weight:700;padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-label)}.high-risk-score.critical{background:var(--severity-critical-bg);color:var(--severity-critical)}.high-risk-score.high{background:var(--severity-high-bg);color:var(--severity-high)}.high-risk-findings{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-caption);color:var(--color-text-secondary);white-space:nowrap}.high-risk-findings .critical-count{color:var(--severity-critical);font-weight:600}.high-risk-arrow{color:var(--color-text-muted);opacity:0;transition:opacity var(--transition-fast)}.high-risk-item:hover .high-risk-arrow{opacity:1}.high-risk-runtime{padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-micro);font-weight:700;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.high-risk-runtime.evm{background:color-mix(in srgb,var(--color-evm) 15%,transparent);color:var(--color-evm);border:1px solid color-mix(in srgb,var(--color-evm) 30%,transparent)}.high-risk-runtime.svm{background:color-mix(in srgb,var(--color-svm) 15%,transparent);color:var(--color-svm);border:1px solid color-mix(in srgb,var(--color-svm) 30%,transparent)}.tooltip-runtime{font-size:var(--text-micro);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-xs);margin-bottom:var(--space-xxs);display:inline-block}.tooltip-runtime.evm{background:color-mix(in srgb,var(--color-evm) 20%,transparent);color:var(--color-evm)}.tooltip-runtime.svm{background:color-mix(in srgb,var(--color-svm) 20%,transparent);color:var(--color-svm)}.contract-runtime-badge{padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-micro);font-weight:700;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.contract-runtime-badge.evm{background:color-mix(in srgb,var(--color-evm) 15%,transparent);color:var(--color-evm)}.contract-runtime-badge.svm{background:color-mix(in srgb,var(--color-svm) 15%,transparent);color:var(--color-svm)}.grid-empty-message{grid-column:1 / -1;text-align:center;padding:var(--space-xl);color:var(--color-text-muted);font-size:var(--text-body-sm)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}@media(max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-panel{content-visibility:auto;contain-intrinsic-size:auto 400px;background:linear-gradient(135deg,rgba(var(--color-bg-card-rgb),.85),rgba(var(--color-bg-card-rgb),.7));border:1px solid rgba(var(--color-accent-rgb),.15);border-radius:var(--radius-xl);padding:var(--space-xl);transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.dashboard-panel:hover{border-color:rgba(var(--color-accent-rgb),.3);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.severity-bars{display:flex;flex-direction:column;gap:var(--space-md)}.severity-bar-row{display:grid;grid-template-columns:70px 1fr 50px;gap:var(--space-md);align-items:center}.severity-label{font-size:var(--text-label);font-weight:500}.severity-label.critical{color:var(--severity-critical)}.severity-label.high{color:var(--severity-high)}.severity-label.medium{color:var(--severity-medium)}.severity-label.low{color:var(--severity-low)}.severity-label.info{color:var(--severity-info)}.severity-bar-track{height:24px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.severity-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--transition-base)}.severity-bar-fill.critical{background:linear-gradient(90deg,var(--severity-critical) 0%,var(--severity-critical-dark) 100%)}.severity-bar-fill.high{background:linear-gradient(90deg,var(--severity-high) 0%,var(--severity-high-dark) 100%)}.severity-bar-fill.medium{background:linear-gradient(90deg,var(--severity-medium) 0%,var(--severity-medium-dark) 100%)}.severity-bar-fill.low{background:linear-gradient(90deg,var(--severity-low) 0%,var(--severity-low-dark) 100%)}.severity-bar-fill.info{background:linear-gradient(90deg,var(--severity-info) 0%,var(--severity-info-dark) 100%)}.severity-count{font-size:var(--text-body-sm);font-weight:600;color:var(--color-text-primary);text-align:right}.network-chart{display:flex;flex-direction:column;gap:var(--space-sm)}.network-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer}.network-item:hover{background:var(--color-bg-secondary);transform:translate(4px)}.network-dot{width:12px;height:12px;border-radius:var(--radius-full);flex-shrink:0}.network-name{flex:1;font-size:var(--text-body-sm);font-weight:500}.network-stats{display:flex;gap:var(--space-md);font-size:var(--text-caption);color:var(--color-text-secondary)}.network-stat{display:flex;align-items:center;gap:var(--space-xs)}.vulnerabilities-list{display:flex;flex-direction:column;gap:var(--space-sm)}.vulnerability-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(135deg,var(--color-bg-tertiary) 0%,color-mix(in srgb,var(--color-bg-primary) 80%,transparent) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer}.vulnerability-item:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);transform:translate(4px);box-shadow:var(--shadow-md)}.vulnerability-rank{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-accent-subtle) 0%,rgba(var(--color-accent-rgb),.2) 100%);border:1px solid rgba(var(--color-accent-rgb),.3);border-radius:var(--radius-md);font-size:var(--text-body-sm);font-weight:700;color:var(--color-accent);flex-shrink:0}.vulnerability-rank.top-3{background:linear-gradient(135deg,rgba(var(--color-accent-rgb),.2),rgba(var(--color-accent-rgb),.35));border-color:var(--color-accent);box-shadow:var(--shadow-glow)}.vulnerability-info{flex:1;min-width:0}.vulnerability-name{font-size:var(--text-body);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vulnerability-meta{display:flex;align-items:center;gap:var(--space-md);font-size:var(--text-caption);color:var(--color-text-secondary)}.vulnerability-severity{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.5px}.vulnerability-severity:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}.vulnerability-severity.critical{background:var(--severity-critical-bg);color:var(--severity-critical)}.vulnerability-severity.high{background:var(--severity-high-bg);color:var(--severity-high)}.vulnerability-severity.medium{background:var(--severity-medium-bg);color:var(--severity-medium)}.vulnerability-severity.low{background:var(--severity-low-bg);color:var(--severity-low)}.vulnerability-severity.info{background:var(--severity-info-bg);color:var(--severity-info)}.vulnerability-stats{display:flex;align-items:center;gap:var(--space-xs)}.vulnerability-stats svg{width:12px;height:12px;opacity:.7}.heatmap-container{display:flex;flex-direction:column;gap:var(--space-md)}.heatmap-legend{display:flex;justify-content:center;gap:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-sm)}.heatmap-legend-item{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-micro);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.heatmap-legend-dot{width:10px;height:10px;border-radius:var(--radius-xs)}.heatmap-legend-dot.critical{background:var(--severity-critical)}.heatmap-legend-dot.high{background:var(--severity-high)}.heatmap-legend-dot.medium{background:var(--severity-medium)}.heatmap-legend-dot.low{background:var(--severity-low)}.heatmap-legend-dot.info{background:var(--severity-info)}.heatmap-grid{display:flex;flex-direction:column;gap:var(--space-sm)}.heatmap-row{display:grid;grid-template-columns:90px repeat(5,1fr);gap:var(--space-xs);align-items:center}.heatmap-row.header{margin-bottom:var(--space-xs)}.heatmap-label{font-size:var(--text-label);font-weight:500;color:var(--color-text-secondary);text-align:right;padding-right:var(--space-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heatmap-header-cell{font-size:var(--text-micro);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;text-align:center;padding:var(--space-xs) 0}.heatmap-cell{height:44px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);position:relative;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border)}.heatmap-cell:hover{z-index:1;border-color:var(--color-border-hover)}.heatmap-cell:hover .heatmap-bubble{transform:scale(1.1);box-shadow:var(--shadow-md)}.heatmap-bubble{border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--text-micro);font-weight:700;color:#fff;transition:all var(--transition-base);min-width:20px;min-height:20px}.heatmap-bubble.critical{background:linear-gradient(135deg,var(--severity-critical) 0%,var(--severity-critical-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--severity-critical) 40%,transparent)}.heatmap-bubble.high{background:linear-gradient(135deg,var(--severity-high) 0%,var(--severity-high-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--severity-high) 40%,transparent)}.heatmap-bubble.medium{background:linear-gradient(135deg,var(--severity-medium) 0%,var(--severity-medium-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--severity-medium) 30%,transparent)}.heatmap-bubble.low{background:linear-gradient(135deg,var(--severity-low) 0%,var(--severity-low-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--severity-low) 30%,transparent)}.heatmap-bubble.info{background:linear-gradient(135deg,var(--severity-info) 0%,var(--severity-info) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--severity-info) 30%,transparent)}.heatmap-cell.empty{background:var(--color-bg-tertiary)}.heatmap-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-micro);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:100;box-shadow:var(--shadow-lg);color:var(--color-text-primary)}.heatmap-cell:hover .heatmap-tooltip{opacity:1}.heatmap-empty-message{text-align:center;padding:var(--space-xl);color:var(--color-text-muted);font-size:var(--text-body-sm)}.detectors-list{display:flex;flex-direction:column;gap:var(--space-sm)}.detector-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(135deg,var(--color-bg-tertiary) 0%,color-mix(in srgb,var(--color-bg-primary) 80%,transparent) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer}.detector-item:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);transform:translate(4px);box-shadow:var(--shadow-md)}.detector-rank{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-caption);font-weight:700;color:var(--color-text-muted);flex-shrink:0}.detector-rank.top-3{background:linear-gradient(135deg,rgba(var(--color-secondary-rgb),.15),rgba(var(--color-secondary-rgb),.25));border-color:var(--color-secondary);color:var(--color-secondary)}.detector-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-xs)}.detector-name{font-size:var(--text-body-sm);font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detector-progress-container{display:flex;align-items:center;gap:var(--space-sm)}.detector-progress{flex:1;height:6px;background:var(--color-bg-secondary);border-radius:var(--radius-full);overflow:hidden}.detector-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-secondary) 0%,var(--color-secondary-light) 100%);border-radius:var(--radius-full);transition:width var(--transition-base)}.detector-meta{display:flex;align-items:center;gap:var(--space-md);font-size:var(--text-micro);color:var(--color-text-secondary)}.detector-stat{display:flex;align-items:center;gap:var(--space-xxs)}.detector-stat svg{width:10px;height:10px;opacity:.7}.detector-count{min-width:50px;text-align:right;font-size:var(--text-body);font-weight:700;color:var(--color-accent);flex-shrink:0}.detector-contracts{font-size:var(--text-micro);color:var(--color-text-muted);white-space:nowrap}.tools-section{margin-top:var(--space-xl)}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md);margin-top:var(--space-md)}.tool-card{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-lg);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),transform var(--transition-fast)}.tool-card:hover{border-color:var(--color-border-accent);transform:translateY(-2px)}.tool-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:color-mix(in srgb,currentColor 10%,transparent)}.tool-info{flex:1;min-width:0}.tool-name{font-size:var(--text-body);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-xs)}.tool-desc{font-size:var(--text-caption);color:var(--color-text-secondary);margin:0;line-height:1.4}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-4xl) var(--space-xl);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.empty-state[hidden]{display:none}.empty-icon{width:120px;height:120px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-radius:var(--radius-full);margin-bottom:var(--space-xl);color:var(--color-text-muted)}.empty-state h2{margin-bottom:var(--space-md);font-size:var(--text-h3)}.empty-state p{color:var(--color-text-secondary);margin-bottom:var(--space-xl);max-width:500px}.empty-features{display:flex;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap;justify-content:center}.empty-feature{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md);font-size:var(--text-label);color:var(--color-text-secondary)}.empty-feature svg{color:var(--color-accent);opacity:.7}.modal-overlay{position:fixed;inset:0;background:var(--color-overlay-heavy);backdrop-filter:blur(var(--blur-xxs));display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-lg)}.modal-overlay[hidden]{display:none}.modal-container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);animation:modalSlideIn .2s cubic-bezier(.4,0,.2,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border)}.modal-header h3{font-size:var(--text-h4);font-weight:600;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-subtitle{padding:var(--space-md) var(--space-xl) 0;font-size:var(--text-body-sm);color:var(--color-text-secondary)}.modal-content{flex:1;overflow-y:auto;padding:var(--space-md) var(--space-xl) var(--space-xl)}.modal-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-xl);color:var(--color-text-secondary)}.modal-loading[hidden]{display:none}.loading-spinner.small{width:20px;height:20px;border-width:2px}.contract-list{display:flex;flex-direction:column;gap:var(--space-sm)}.contract-list-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-decoration:none;color:inherit}.contract-list-item:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);transform:translate(4px)}.contract-address{font-family:var(--font-mono);font-size:var(--text-body-sm);font-weight:500;color:var(--color-accent)}.contract-meta{display:flex;align-items:center;gap:var(--space-md);margin-left:auto;font-size:var(--text-caption);color:var(--color-text-secondary)}.contract-network{padding:var(--space-xxs) var(--space-sm);background:var(--color-bg-secondary);border-radius:var(--radius-sm);font-weight:500}.contract-findings{display:flex;align-items:center;gap:var(--space-xs)}.contract-name{font-size:var(--text-label);color:var(--color-text-secondary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-empty{text-align:center;padding:var(--space-xl);color:var(--color-text-muted)}@media(max-width:1024px){.portfolio-hero-summary{grid-template-columns:1fr;gap:var(--space-xl)}.portfolio-metrics-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.runtime-breakdown,.portfolio-metrics-grid{grid-template-columns:1fr}.grid-legend{flex-direction:column;gap:var(--space-md)}.legend-group{flex-wrap:wrap;justify-content:center}.panel-controls{flex-direction:column;width:100%}.panel-controls .filter-select{width:100%}.severity-bar-row{grid-template-columns:60px 1fr 40px}.section-header-row{flex-direction:column;align-items:flex-start}}.toast-container{position:fixed;bottom:var(--space-lg);right:var(--space-lg);z-index:10000;display:flex;flex-direction:column;gap:var(--space-sm);max-width:400px}.toast{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);display:flex;align-items:flex-start;gap:var(--space-sm);box-shadow:var(--shadow-md);animation:toastSlideIn .3s cubic-bezier(.4,0,.2,1);min-width:300px}.toast.removing{animation:toastSlideOut .3s cubic-bezier(.4,0,.2,1) forwards}.toast-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px}.toast-error .toast-icon{color:var(--color-error)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-success .toast-icon{color:var(--color-success)}.toast-info .toast-icon{color:var(--color-accent)}.toast-content{flex:1}.toast-title{font-weight:600;font-size:var(--text-body-sm);color:var(--color-text-primary);margin-bottom:.25rem}.toast-message{font-size:var(--text-label);color:var(--color-text-muted);line-height:1.4}.toast-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:color var(--transition-fast)}.toast-close:hover{color:var(--color-text-primary)}@keyframes toastSlideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(120%);opacity:0}}
