[hidden]{display:none!important}.graph-direction-totals{margin:16px 0;padding:12px 16px;background:#14221d;border:1px solid #344b36;border-radius:9px}.graph-direction-totals h4{margin:0 0 12px;font-size:12px;color:#bddea6}.graph-direction-totals>div{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:12px;padding:7px 0}.graph-direction-totals strong{color:#d9ecc8;overflow-wrap:anywhere;max-width:100%}.graph-direction-totals small{color:#91a295;overflow-wrap:anywhere}.graph-dustbar{border:1px solid #3b493b;border-radius:10px;background:#14211c;padding:16px 18px;margin:14px 0;color:#d6e4d3;font-size:12px}.graph-dust-controls{display:flex;gap:16px 30px;flex-wrap:wrap;align-items:center}.graph-dust-controls label{display:flex;align-items:center;gap:8px;font-weight:550}.graph-dust-controls input{width:16px;height:16px;accent-color:#b6f171}.graph-dust-controls .graph-dust-unknown{font-weight:400;color:#c4cebe}.graph-dustbar p{color:#a9b9ac;margin:12px 0 8px;line-height:1.9}.graph-dustbar small{display:block;color:#94a699;line-height:1.9;font-size:11px;margin-top:10px}.graph-dust-summary{display:flex;gap:12px 25px;flex-wrap:wrap;font-size:12px;color:#c7ebac}.graph-usd-value{color:#c3ef9a;font-family:Consolas,monospace}.graph-usd-unknown{color:#e7c28c;font-size:11px}.graph-riskbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:14px 18px;background:#17212d;border:1px solid #374050;border-radius:10px;font-size:12px;margin-top:16px}.graph-riskbar>label:first-child{display:flex;align-items:center;gap:12px}.graph-riskbar select{font:inherit;max-width:300px;background:#0b1420;border:1px solid #4a5565;border-radius:7px;padding:9px;color:#eef1f7}.graph-context-toggle{display:flex;align-items:center;gap:8px;color:#bfcbdc}.graph-context-toggle input{width:15px;height:15px;accent-color:#ff9a85}.graph-risk-count{color:#ffc4ad;margin-right:auto;font-size:11px}.graph-reference-meta{margin:10px 2px 17px}.graph-candidate .graph-risk-badge{color:#ffb09e;font-size:10px}.graph-legend .risk-dot{background:#ff9a85}.graph-node-reference{border-right:3px solid #ff9a85;background:#ff9a8508;padding:12px 16px;margin:15px 0;color:#ffbba8}.graph-node-reference small{color:#a7b6c9}.graph-transfer-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;padding:12px 16px;margin:12px 0;background:#152a31;border:1px solid #2a4954;border-radius:9px;color:#b5dbe8;font-size:12px}.graph-transfer-status small{width:100%;color:#dcb299}.graph-records>div{flex-wrap:wrap}.graph-records small{color:#93a7bf;font-size:10px}.graph-records strong{overflow-wrap:anywhere;max-width:100%}@media(max-width:650px){.graph-riskbar>label:first-child{align-items:flex-start;flex-direction:column}.graph-riskbar select{max-width:100%}.graph-risk-count{width:100%;margin:0}.graph-transfer-status{font-size:11px}}.workspace-tabs{display:flex;gap:6px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.workspace-tabs button{background:none;color:var(--muted);font-size:14px;font-weight:500;padding:10px 20px}.workspace-tabs button[aria-pressed=true]{background:#1c2b21;color:var(--green)}.workspace-tabs button span{margin-right:8px;padding:1px 8px;border-radius:6px;background:#b6f17118}.workspace-tabs small{margin-right:auto;color:#8596aa;font-size:12px}.graph-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:36px 0 24px}.graph-heading h1{font-size:32px;line-height:1.8;margin:8px 0;font-weight:700}.graph-heading p{font-size:14px;color:var(--muted);margin:4px 0}.graph-local{display:flex;align-items:center;gap:8px;color:#b8c9a7;font-size:12px;white-space:nowrap}.graph-local span{width:6px;height:6px;background:var(--green);border-radius:50%}.graph-filebar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.graph-filebar strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.graph-filebar small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.graph-file-actions{flex-shrink:0}.graph-file-actions,.graph-upload{display:flex;align-items:center;gap:8px}.graph-upload{position:relative;cursor:pointer;border-radius:8px;padding:10px 16px;overflow:hidden}.graph-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;padding:0}.graph-upload:focus-within{outline:2px solid var(--green);outline-offset:2px}.graph-coverage{color:var(--muted);font-size:12px;margin:14px 0 20px;line-height:2}.graph-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel)}.graph-picker{margin:0;padding:18px 14px;background:#101a26;border:0;border-left:1px solid var(--line);border-radius:0;min-width:0;display:flex;flex-direction:column;max-height:728px}.graph-picker-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 4px 15px;font-size:14px}.graph-picker-title strong{font-weight:550}.graph-picker-title>span{color:var(--muted);font-size:12px}.graph-search{display:flex;align-items:center;border:1px solid #344355;background:#0b1420;border-radius:8px;padding:0 10px;color:var(--muted);gap:6px}.graph-search:focus-within{border-color:var(--green)}.graph-search input{border:0;background:none;font-size:12px;min-width:0;padding:11px 0;width:100%}.graph-selected{padding:14px 2px 12px;border-bottom:1px solid var(--line)}.graph-selected>div{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--muted);font-size:11px}.graph-selected .linkbutton{font-size:11px;font-weight:400}.graph-chip{display:inline-flex;align-items:center;gap:6px;background:#213126;color:#c5e5a6;border:1px solid #415c34;padding:4px 7px;margin:2px;font-size:10px;font-weight:400;border-radius:5px}.graph-chip bdi{font-family:Consolas,monospace}.graph-candidates{overflow:auto;min-height:100px;margin-top:12px;scrollbar-width:thin;flex:1}.graph-candidate{display:flex;align-items:center;gap:10px;padding:10px 8px;border:1px solid transparent;border-radius:7px;cursor:pointer}.graph-candidate:hover{background:#192636}.graph-candidate.chosen{background:#1c2b24;border-color:#354b31}.graph-candidate input{width:15px;height:15px;accent-color:var(--green);padding:0;flex-shrink:0}.graph-candidate>span{min-width:0;flex:1}.graph-candidate bdi{font:12px Consolas,monospace;color:#dfe8f3}.graph-candidate small{display:block;color:var(--muted);font-size:11px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.graph-candidate>svg{color:var(--green)}.graph-small{font-size:11px;color:var(--muted);line-height:2}.graph-picker-empty{font-size:13px;color:var(--muted);text-align:center;margin:20px 4px}.graph-main{min-width:0}.graph-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line);min-height:68px}.graph-mode{display:flex;background:#0b1420;border:1px solid #263447;border-radius:8px;padding:3px;gap:3px}.graph-mode button{display:flex;align-items:center;gap:6px;background:none;color:var(--muted);font-size:12px;padding:8px 10px;font-weight:500;border-radius:5px;white-space:nowrap}.graph-mode button[aria-pressed=true]{background:#263a34;color:#d0efb2}.graph-count{color:var(--muted);font-size:11px;white-space:nowrap}.graph-canvas{height:560px;position:relative;background:#0b1420;overflow:hidden;isolation:isolate}.graph-svg{width:100%;height:100%;display:block;touch-action:none;user-select:none;cursor:grab}.graph-svg:active{cursor:grabbing}.graph-node{cursor:grab;outline:none}.graph-node:focus>circle:first-of-type{stroke:#e7ffc9;stroke-width:2}.graph-edge{cursor:pointer;outline:none}.graph-edge:focus .graph-flow-line,.graph-edge:hover .graph-flow-line{stroke:#c1ee91;stroke-width:3}.graph-tools{position:absolute;top:18px;left:16px;display:flex;flex-direction:column;border:1px solid #324154;border-radius:9px;background:#111d2cee;overflow:hidden}.graph-tools button{background:none;color:#bacbdf;border-radius:0;padding:11px}.graph-tools button+button{border-top:1px solid #263447}.graph-tools button:hover{background:#273a31;color:var(--green)}.graph-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;color:var(--muted);background:linear-gradient(0deg,#0b1420b0,#0b142040)}.graph-empty>div{display:grid;place-items:center;width:68px;height:68px;background:#17251f;border:1px solid #354d34;border-radius:20px;color:#b6f171}.graph-empty h3{font-size:18px;font-weight:500;color:var(--text);margin:18px 0 5px}.graph-empty p{font-size:13px;line-height:2}.graph-canvas-caption{position:absolute;bottom:15px;right:18px;left:18px;display:flex;align-items:center;gap:16px;color:#8296b0;font-size:10px;pointer-events:none}.graph-canvas-caption span{display:flex;align-items:center;gap:5px}.graph-canvas-caption b{margin-right:auto;font-weight:400;direction:ltr}.graph-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-top:1px solid var(--line)}.graph-legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px}.graph-legend span{white-space:nowrap}.graph-legend i{width:6px;height:6px;margin-left:5px}.graph-legend .via-dot{background:#7295bf}.graph-exports{display:flex;gap:6px;flex-shrink:0}.graph-exports button{display:flex;align-items:center;gap:6px;font-size:11px;padding:8px 10px}.graph-status{border-top:1px solid var(--line);color:#c3cba9;font-size:12px}.graph-main>.error,.graph-status{margin:0;padding:12px 18px}.graph-inspector{border:1px solid var(--line);border-radius:12px;padding:18px 22px;background:var(--panel);margin-top:16px;font-size:13px}.graph-inspector-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.graph-inspector h3{font-size:15px;margin:0;font-weight:550}.graph-inspector p{color:var(--muted)}.graph-inspector .mono{white-space:normal;overflow-wrap:anywhere}.graph-inspector-hint{display:flex;align-items:center;gap:12px;margin:0}.graph-edge-addresses{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap;font:12px Consolas,monospace;color:#bbcbe0}.graph-edge-addresses bdi{overflow-wrap:anywhere}.graph-records{max-height:300px;overflow:auto;margin-top:16px}.graph-records>div{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:12px 0;font-size:12px}.graph-records strong{font-weight:500;min-width:60px}.graph-records>div>span{color:var(--muted)}.graph-records a{color:var(--green)}.graph-note{font-size:12px;color:var(--muted);line-height:2.1;margin:18px 2px}.graph-add-row{padding:6px 10px;font-size:12px;color:#9eb4d0;background:#162638;border:1px solid #34475f;font-weight:400}.graph-add-row[aria-pressed=true]{color:var(--green);border-color:#48623a;background:#213020}@media(min-width:1200px){main:has(.graph-panel){max-width:1400px}}@media(max-width:1000px){.graph-workspace{grid-template-columns:230px minmax(0,1fr)}.graph-bottom,.graph-controls{align-items:flex-start;flex-wrap:wrap}.graph-mode button{font-size:11px}.graph-canvas-caption span:last-of-type,.graph-local{display:none}.graph-heading h1{font-size:28px}.graph-picker{max-height:780px}}@media(max-width:760px){.workspace-tabs{padding:14px 0;gap:0;flex-wrap:wrap}.workspace-tabs button{font-size:12px;padding:9px 14px}.workspace-tabs small{font-size:10px}.graph-heading{margin:24px 0 18px}.graph-heading h1{font-size:25px}.graph-heading p{font-size:13px}.graph-workspace{grid-template-columns:1fr}.graph-picker{border-left:0;border-bottom:1px solid var(--line);max-height:310px}.graph-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.graph-candidate{gap:7px}.graph-candidate small{max-width:145px}.graph-candidate bdi{font-size:10px}.graph-selected{max-height:100px;overflow:auto}.graph-canvas{height:460px}.graph-filebar{align-items:flex-start;flex-wrap:wrap;padding:14px}.graph-file-actions{flex-wrap:wrap}.graph-filebar strong,.graph-heading .eyebrow{font-size:12px}.graph-inspector{padding:16px}.graph-records>div{flex-wrap:wrap;gap:8px}.graph-empty h3{font-size:16px}.graph-controls{padding:11px}.graph-legend{font-size:9px}.graph-edge-addresses{font-size:10px}}.graph-label-card{cursor:pointer;outline:none}.graph-label-card:focus .graph-label-background,.graph-label-card:hover .graph-label-background{stroke:#c9f4a8;stroke-width:1.5}.graph-direction-totals>p{margin:6px 0 12px}.graph-node-filter-info{margin:12px 0;padding:12px 14px;border:1px solid #665b3b;border-radius:8px;background:#25251d;color:#e5d1a3}.graph-node-filter-info p{color:#c4ba9e;font-size:12px}.graph-node-filter-info button{font-size:12px}.graph-address-pages{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.graph-address-pages .graph-candidates{min-height:48px}.graph-pagination{flex-shrink:0;border-top:1px solid var(--line);padding-top:12px;margin-top:10px;font-size:11px;color:var(--muted)}.graph-page-range{display:block;text-align:center;margin-bottom:9px;font-variant-numeric:tabular-nums}.graph-page-controls{display:flex;align-items:center;justify-content:space-between;gap:6px}.graph-page-controls button{padding:7px 9px;background:#203129;color:#c5e5a6;font-size:11px;font-weight:500}.graph-page-controls button:disabled{opacity:.4;cursor:default}.graph-page-controls label{display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}.graph-page-controls input{width:46px;padding:5px 2px;text-align:center;background:#0b1420;border:1px solid #344355;border-radius:5px;color:var(--text);font:inherit;direction:ltr;appearance:textfield}.graph-page-controls input::-webkit-inner-spin-button,.graph-page-controls input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.graph-page-controls input:focus{outline:1px solid var(--green)}.graph-picker>.graph-picker-title,.graph-picker>.graph-search{flex-shrink:0}.graph-selected{max-height:180px;overflow:auto;flex-shrink:0}@media(max-width:760px){.graph-picker{max-height:440px}.graph-selected{max-height:100px}.graph-pagination{padding-top:8px}.graph-page-controls{justify-content:center;gap:16px}}.graph-node-menu{position:absolute;z-index:20;width:212px;padding:10px;border:1px solid #54718e;border-radius:10px;background:#142232;box-shadow:0 8px 30px #0009;display:grid;gap:8px}.graph-node-menu bdi{font-size:12px;color:#b6e58b}.graph-node-menu button{padding:7px;font-size:12px}.graph-risk-tooltip{position:absolute;z-index:19;pointer-events:none;width:290px;max-width:90%;white-space:pre-line;line-height:1.9;padding:12px;background:#142232;border:1px solid #ff9a85;border-radius:10px;box-shadow:0 8px 30px #0008;color:#edf4ff;font-size:12px}.threat-details{margin:14px 0;line-height:1.9;font-size:12px;overflow-wrap:anywhere}.threat-details article{padding:14px;margin:10px 0;border:1px solid var(--line);border-radius:8px;background:#101c29}.threat-details a{color:#b6f171}.graph-risk-tooltip{max-height:250px;overflow:auto;overflow-wrap:anywhere}.graph-candidate bdi.custom-address-name,.graph-chip bdi.custom-address-name{font-family:var(--font-ui);font-size:12px}