body.is-bare main.container{max-width:100vw;padding:0}.graph-shell{--cat-vault:#2b7fff;--cat-strategy:#f59e0b;--cat-governance:#ef4444;--cat-infra:#94a3b8;--cat-dependency:#a78bfa;--cat-vault-text:#6ea7ff;--cat-strategy-text:#fbbf24;--cat-governance-text:#f87171;--cat-infra-text:#cbd5e1;--cat-dependency-text:#c4b5fd;--graph-surface:#14161cd9;--graph-border:#ffffff14;border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;flex-direction:column;width:100vw;height:calc(100vh - 60px);min-height:640px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);display:flex;position:relative;overflow:hidden}html.light .graph-shell{--graph-surface:#ffffffe6;--graph-border:#0000001a}.graph-canvas{background:#0a0b0e radial-gradient(#ffffff0b 1px,#0000 1px) 0 0/24px 24px;flex:1;min-height:0;position:relative}html.light .graph-canvas{background:#f4f5f8 radial-gradient(#0000000f 1px,#0000 1px)}#cy{width:100%;height:100%;position:absolute;inset:0}.graph-header{border-bottom:1px solid var(--graph-border);justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 1rem;display:flex}.graph-back{color:var(--text-secondary);background:var(--graph-surface);border:1px solid var(--graph-border);white-space:nowrap;border-radius:6px;align-items:center;padding:.4rem .7rem;font-size:.78rem;display:inline-flex}.graph-back:hover{color:var(--text-primary);text-decoration:none}.graph-title{text-align:center;flex:1;min-width:0}.graph-title h1{margin:0;font-size:.95rem;font-weight:600}.graph-controls{gap:.4rem;display:flex}.graph-controls button{background:var(--graph-surface);color:var(--text-secondary);border:1px solid var(--graph-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.4rem .75rem;font-size:.75rem;transition:color .15s,border-color .15s}.graph-controls button:hover{color:var(--text-primary);border-color:#6ea7ff80}.graph-metrics{border-bottom:1px solid var(--graph-border);scrollbar-width:thin;gap:.5rem;padding:.5rem 1rem;display:flex;overflow-x:auto}.metric{background:var(--graph-surface);border:1px solid var(--graph-border);border-radius:8px;flex:1 1 0;min-width:140px;padding:.5rem .7rem;transition:border-color .15s}.metric.is-lens{cursor:pointer}.metric.is-lens:hover,.metric.is-lens:focus-visible{border-color:#6ea7ff99;outline:none}.metric.is-lens[aria-pressed=true]{border-color:#facc15d9}.metric-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-size:.6rem}.metric-value{color:var(--text-primary);margin-top:.15rem;font-size:1.05rem;font-weight:650;line-height:1.2}.metric-chip{border-radius:4px;padding:1px 8px;font-size:.95rem;font-weight:700;display:inline-block}.metric-sub{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:.1rem;font-size:.68rem;overflow:hidden}.graph-toolbar{border-bottom:1px solid var(--graph-border);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.5rem 1rem;display:flex}.graph-search{min-width:0;color:var(--text-primary);background:var(--graph-surface);border:1px solid var(--graph-border);border-radius:6px;flex:0 280px;padding:.35rem .6rem;font-size:.76rem}.graph-search:focus{border-color:#6ea7ffb3;outline:none}.graph-filters{flex-wrap:wrap;gap:.3rem;display:flex}.filter-chip{color:var(--text-tertiary,var(--text-secondary));border:1px solid var(--graph-border);cursor:pointer;opacity:.55;background:0 0;border-radius:999px;padding:.25rem .6rem;font-size:.7rem;transition:opacity .15s,border-color .15s,color .15s}.filter-chip.is-on{opacity:1;color:var(--text-primary);border-color:#6ea7ff80}.filter-chip:hover{opacity:1}.graph-refs{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.3rem;max-width:46%;margin-left:auto;font-size:.72rem;display:flex}.graph-refs-label{text-transform:uppercase;letter-spacing:.1em;opacity:.8;font-size:.6rem}.graph-refs-sep{opacity:.5}.graph-zoom{z-index:6;border:1px solid var(--graph-border);background:var(--graph-surface);-webkit-backdrop-filter:blur(6px);border-radius:6px;flex-direction:column;display:flex;position:absolute;bottom:12px;left:12px;overflow:hidden}.graph-zoom button{width:30px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:14px}.graph-zoom button+button{border-top:1px solid var(--graph-border)}.graph-zoom button:hover{color:var(--text-primary)}.graph-legend{color:var(--text-secondary);border-top:1px solid var(--graph-border);flex-wrap:wrap;align-items:center;gap:1.1rem;padding:.5rem 1rem;font-size:.72rem;display:flex}.legend-group{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.legend-h{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);opacity:.75;font-size:.6rem}.legend-row{color:var(--text-primary);align-items:center;gap:.35rem;display:inline-flex}.legend-hint{color:var(--text-secondary);margin-left:auto}.legend-hint-narrow{display:none}.legend-swatch{border:1px solid #ffffff1f;border-radius:3px;flex-shrink:0;width:10px;height:10px}.swatch-vault{background:var(--cat-vault)}.swatch-strategy{background:var(--cat-strategy)}.swatch-governance{background:var(--cat-governance)}.swatch-infra{background:var(--cat-infra)}.swatch-dependency{background:var(--cat-dependency)}.legend-line{border-top:1.5px solid #fff6;flex-shrink:0;width:20px;height:0}.line-allocates-to,.line-deposits-into{border-top:2px solid #6ee7b7d9}.line-mints{border-top:2.25px dashed #ef4444f2}.line-holds-role,.line-controls,.line-manages{border-top:1.5px dashed #fbbf24d9}.line-proposes-on,.line-cancels-on{border-top:1.5px dotted #a78bfad9}.line-routes-through{border-top:1.5px solid #cab86ed9}.line-routes-fees-to,.line-deploys{border-top:1.5px solid #8c8c8cd9}.graph-card{cursor:pointer;background:#14161cf5;border:1px solid #ffffff17;border-radius:8px;width:188px;height:70px;font-family:system-ui,-apple-system,sans-serif;transition:border-color .15s,transform .15s,box-shadow .15s,opacity .15s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff08,0 4px 12px #0006}.graph-card:focus-visible{outline-offset:2px;outline:2px solid #6ea7ffe6}.graph-card.has-crosslink{border-color:color-mix(in srgb, var(--cl-color,#6ee7b7) 65%, transparent);background:linear-gradient(100deg, color-mix(in srgb, var(--cl-color,#6ee7b7) 22%, transparent), color-mix(in srgb, var(--cl-color,#6ee7b7) 6%, transparent) 60%, #14161cf5)}html.light .graph-card.has-crosslink{background:linear-gradient(100deg, color-mix(in srgb, var(--cl-color,#6ee7b7) 28%, #fff), color-mix(in srgb, var(--cl-color,#6ee7b7) 10%, #fff) 60%, #fff)}.graph-card.has-crosslink:hover{border-color:var(--cl-color,#6ee7b7);box-shadow:0 1px 0 #ffffff0f inset, 0 0 0 1px color-mix(in srgb, var(--cl-color,#6ee7b7) 75%, transparent) inset, 0 8px 22px color-mix(in srgb, var(--cl-color,#6ee7b7) 35%, transparent)}.graph-card.is-inlined{opacity:.78}.graph-card.is-inlined:hover{opacity:1}html.light .graph-card{background:#fff;border-color:#0000001a;box-shadow:inset 0 1px #00000005,0 2px 6px #00000014}.graph-card:hover{border-color:#6ea7ffe6;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 1px #6ea7ff59,0 6px 18px #0000008c}html.light .graph-card:hover{border-color:#0675f9d9;box-shadow:inset 0 1px #00000008,inset 0 0 0 1px #0675f94d,0 2px 8px #0675f926}.graph-card.is-focus{border-color:#6ea7fff2;box-shadow:inset 0 0 0 1px #6ea7ff80,0 8px 22px #0000008c}.graph-card.is-hl-up{border-color:#6ea7ff99;transform:translateY(-1px)}.graph-card.is-hl-down{border-color:#2dd4bf99;transform:translateY(-1px)}.graph-card.is-hl-strong{border-color:#fbbf248c;transform:translateY(-1px)}.graph-card.is-dim{opacity:.25}.graph-card.is-match{border-color:#facc15f2;box-shadow:inset 0 0 0 1px #facc1580,0 8px 22px #0000008c}.graph-card.is-inlined.is-dim{opacity:.18}.card-accent{background:#fff3;flex-shrink:0;width:3px}.cat-vault .card-accent{background:var(--cat-vault,#2b7fff)}.cat-strategy .card-accent{background:var(--cat-strategy,#f59e0b)}.cat-governance .card-accent{background:var(--cat-governance,#ef4444)}.cat-infra .card-accent{background:var(--cat-infra,#94a3b8)}.cat-dependency .card-accent{background:var(--cat-dependency,#a78bfa)}.card-body{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:8px 10px;display:flex}.card-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:9px;font-weight:600;line-height:1;overflow:hidden}.cat-vault .card-eyebrow{color:var(--cat-vault-text,#6ea7ff)}.cat-strategy .card-eyebrow{color:var(--cat-strategy-text,#fbbf24)}.cat-governance .card-eyebrow{color:var(--cat-governance-text,#f87171)}.cat-infra .card-eyebrow{color:var(--cat-infra-text,#cbd5e1)}.cat-dependency .card-eyebrow{color:var(--cat-dependency-text,#c4b5fd)}.card-title{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;overflow-wrap:anywhere;word-break:normal;hyphens:none;-webkit-box-orient:vertical;font-size:12.5px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.card-meta{justify-content:space-between;align-items:center;gap:6px;margin-top:3px;line-height:1;display:flex}.card-addr{color:var(--text-secondary);letter-spacing:.02em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;line-height:1}.card-risk{letter-spacing:.02em;white-space:nowrap;border-radius:3px;padding:2px 6px;font-size:9px;font-weight:700;line-height:1.1}.card-extlink{color:#ffffff59;z-index:1;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;line-height:1;text-decoration:none;transition:color .15s,background .15s;display:inline-flex;position:absolute;top:4px;right:5px}.card-extlink:hover{color:#fffffff2;background:#ffffff14;text-decoration:none}html.light .card-extlink{color:#0006}html.light .card-extlink:hover{color:#000000d9;background:#0000000f}.graph-panel{z-index:8;border-left:1px solid var(--graph-border);-webkit-backdrop-filter:blur(10px);background:#0e1015f7;flex-direction:column;width:330px;max-width:100%;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 28px -16px #0009}.graph-panel[hidden]{display:none}.graph-panel:focus-visible{outline-offset:-2px;outline:2px solid #6ea7ffe6}html.light .graph-panel{background:#fffffffa}.panel-close{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:5px;font-size:12px;position:absolute;top:8px;right:8px}.panel-close:hover{color:var(--text-primary);background:#7f7f7f26}.panel-scroll{padding:.9rem 1rem 1.5rem;overflow-y:auto}.panel-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);padding-right:1.5rem;font-size:.62rem}.panel-title{color:var(--text-primary);margin:.25rem 0 .9rem;font-size:1rem;font-weight:650;line-height:1.3}.panel-section{border-top:1px solid var(--graph-border);padding:.7rem 0}.panel-h{text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);margin-bottom:.4rem;font-size:.6rem}.panel-addr{justify-content:space-between;align-items:flex-start;gap:.4rem;display:flex}.panel-addr code{color:var(--text-primary);overflow-wrap:anywhere;background:0 0;padding:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.66rem}.panel-copy{color:var(--text-secondary);border:1px solid var(--graph-border);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:.62rem}.panel-copy:hover{color:var(--text-primary)}.panel-link{color:#6ea7ff;margin-top:.4rem;font-size:.75rem;display:block}html.light .panel-link{color:#0675f9}.panel-note{color:var(--text-primary);margin:0;font-size:.78rem;line-height:1.5}.panel-note-empty{color:var(--text-secondary);font-size:.75rem}.panel-cross{border-left:2px solid var(--cl-color,#6ee7b7);padding-left:.6rem}.panel-cross-row{margin-bottom:.35rem}.conn-list{flex-direction:column;gap:2px;display:flex}.conn-row{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;border-radius:5px;grid-template-columns:20px minmax(0,auto) 12px minmax(0,1fr);align-items:center;gap:.4rem;padding:.35rem .4rem;font-size:.72rem;display:grid}.conn-row:hover{background:#7f7f7f24}.conn-kind{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);white-space:nowrap;font-size:.62rem}.conn-arrow{color:var(--text-secondary)}.conn-node{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.conn-detail{color:var(--text-secondary);overflow-wrap:anywhere;grid-column:2/-1;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.64rem}@media (width<=720px){.graph-shell{height:calc(100vh - 56px);min-height:520px}.graph-header{flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem}.graph-title{text-align:left;flex-basis:100%;order:-1}.graph-title h1{font-size:.85rem}.graph-metrics{padding:.5rem .75rem}.graph-toolbar{gap:.45rem;padding:.45rem .75rem}.graph-search{flex:100%}.graph-refs{max-width:100%;margin-left:0}.metric{min-width:128px}.legend-hint-wide{display:none}.legend-hint-narrow{display:inline}.graph-legend{scrollbar-width:none;flex-wrap:nowrap;gap:.8rem;padding:.45rem .75rem;overflow-x:auto}.graph-legend::-webkit-scrollbar{display:none}.legend-group{flex-wrap:nowrap}.legend-row,.legend-h,.legend-hint{white-space:nowrap}.legend-hint{padding-left:.5rem}.graph-panel{border-left:none;border-top:1px solid var(--graph-border);width:auto;max-height:60%;top:auto;left:0;box-shadow:0 -12px 28px -16px #0009}}
