[data-category=os]{--node-color:var(--c-graph-os)}[data-category=web]{--node-color:var(--c-graph-web)}[data-category=db]{--node-color:var(--c-graph-db)}[data-category=network]{--node-color:var(--c-graph-network)}[data-category=hub]{--node-color:var(--c-graph-hub)}[data-category=etc]{--node-color:var(--c-graph-etc)}.graph-node-shape,.graph-legend-shape path{fill:var(--node-color);stroke:none}.graph-node-shape[data-shape=ring],.graph-legend-shape[data-shape=ring] path{fill:none;stroke:var(--node-color);stroke-width:2px}.graph-legend-shape{flex:none}.graph-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.graph-header h1{margin:0}.graph-tabs{inline-size:min(100%,14rem)}.graph-hint{margin-block:0 var(--space-3);color:var(--c-text-secondary);font-size:var(--text-footnote)}:root:not([data-appearance]) .graph-tabs,:root:not([data-appearance]) #graph-panel-graph{display:none}:root:not([data-appearance]) #graph-panel-list[hidden]{display:block}.graph-container{border:1px solid var(--c-separator);border-radius:var(--radius-lg);background:var(--c-bg);block-size:calc(100dvh - 18rem);min-block-size:420px;inline-size:100%;position:relative;overflow:hidden}.graph-svg{cursor:grab;block-size:100%;inline-size:100%;display:block}.graph-link{stroke:var(--c-separator);stroke-width:1px}.graph-node{cursor:pointer}.graph-node-hit{fill:#0000}.graph-label{fill:var(--c-text);font-family:var(--font-body);font-size:var(--text-caption);pointer-events:none;font-weight:500}.graph-state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--c-text-secondary);font-size:var(--text-subheadline);text-align:center;flex-direction:column;margin:0;display:flex;position:absolute;inset:0}.graph-state p{margin:0}.graph-spinner{border:2px solid var(--c-fill);border-block-start-color:var(--c-tint);border-radius:50%;block-size:24px;inline-size:24px;animation:.9s linear infinite graph-spin}@keyframes graph-spin{to{transform:rotate(360deg)}}.graph-ui{inset-block-start:var(--space-3);inset-inline:var(--space-3);z-index:2;align-items:center;gap:var(--space-2);pointer-events:none;flex-wrap:wrap;display:flex;position:absolute}.graph-ui>*{pointer-events:auto}.graph-search{inline-size:min(14rem,100%);min-block-size:var(--target);padding-inline:var(--space-4);border-radius:var(--radius-capsule);color:var(--c-text);font:inherit;font-size:var(--text-subheadline);border:0}.graph-search::placeholder{color:var(--c-text);opacity:1}.graph-match-count{min-block-size:var(--target);padding-inline:var(--space-3);border-radius:var(--radius-capsule);color:var(--c-text);font-size:var(--text-footnote);align-items:center;display:inline-flex}.graph-legend{gap:var(--space-1);flex-wrap:wrap;margin-inline-start:auto;display:flex}.graph-legend-chip{align-items:center;gap:var(--space-2);min-block-size:var(--target);padding-inline:var(--space-3);border-radius:var(--radius-capsule);color:var(--c-text);font:inherit;font-size:var(--text-footnote);cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard);border:0;font-weight:500;display:inline-flex}.graph-legend-chip:active{transform:scale(.96)}.graph-legend-chip[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--c-text);font-weight:700}.graph-ui :focus-visible{outline-color:var(--c-bar-focus-ring)}@media (width<768px){.graph-legend{margin-inline-start:0}}.graph-list-note{padding-block:var(--space-1)}.graph-list-head{align-items:center;gap:var(--space-2);padding-inline-end:var(--space-4);display:flex}.graph-list-title{min-inline-size:var(--target);min-block-size:var(--target);padding-inline:var(--space-4) var(--space-2);color:var(--c-text);font-size:var(--text-headline);word-break:keep-all;overflow-wrap:anywhere;flex:1;align-items:center;font-weight:600;text-decoration:none;display:flex}.graph-list-category{align-items:center;gap:var(--space-1);color:var(--c-text-secondary);font-size:var(--text-footnote);flex:none;display:inline-flex}.graph-list-links{margin:0 0 var(--space-1);padding:0 0 0 var(--space-8);list-style:none}.graph-list-links a{min-inline-size:var(--target);min-block-size:var(--target);padding-inline:var(--space-2);color:var(--c-tint);font-size:var(--text-subheadline);word-break:keep-all;overflow-wrap:anywhere;align-items:center;display:flex}.graph-list a:hover{background:var(--c-fill);text-decoration:none}.graph-list a:focus-visible{outline-offset:-2px}
