.dependency-network-page{background:var(--paper)}
.dependency-network-page [hidden]{display:none!important}
.dependency-hero{background:linear-gradient(118deg,#071119 0%,#0d1d26 58%,#153946 100%);color:#fff;border-bottom:1px solid #1d414e}
.dependency-local-nav{display:flex;gap:24px;padding-top:18px;border-bottom:1px solid rgba(145,184,199,.22)}
.dependency-local-nav a{position:relative;padding:0 0 14px;color:#9fb2bb;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.dependency-local-nav a.active{color:#fff}.dependency-local-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#5be0fb}
.dependency-hero-grid{min-height:330px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:70px;align-items:center;padding:52px 0 42px}
.dependency-hero h1{margin:0 0 20px;font:500 clamp(43px,5.4vw,68px)/1.02 var(--serif);letter-spacing:-.03em}
.dependency-hero p{margin:0;max-width:790px;color:#c6d5db;font-size:17px;line-height:1.65}
.dependency-hero aside{border-left:1px solid #31505d;padding:22px 0 22px 28px}.dependency-hero aside strong{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#60e2ff}.dependency-hero aside p{font-size:13px;margin-top:10px}
.dependency-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(145,184,199,.22)}.dependency-metrics>div{padding:20px 22px 21px 0}.dependency-metrics>div+div{border-left:1px solid rgba(145,184,199,.18);padding-left:22px}.dependency-metrics strong{display:block;font:500 23px/1.1 var(--serif)}.dependency-metrics span{display:block;margin-top:5px;color:#91aab5;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.dependency-network-section{background:#edf1f3}.dependency-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:60px;align-items:end;margin-bottom:26px}.dependency-section-head h2,.dependency-method h2{margin:7px 0 0;font:500 clamp(31px,3.3vw,44px)/1.06 var(--serif);letter-spacing:-.02em}.dependency-section-head>p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.dependency-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.dependency-filters button{border:1px solid #b9c5ca;background:#fff;padding:10px 12px;cursor:pointer;font-size:10px;font-weight:600;line-height:1.25}.dependency-filters button span{margin-left:8px;color:var(--muted)}.dependency-filters button.active{background:var(--navy);border-color:var(--navy);color:#fff}.dependency-filters button.active span{color:#a8bbc4}
.dependency-stage{display:grid;grid-template-columns:minmax(0,1fr);background:#08151c;border:1px solid #203741;box-shadow:0 18px 48px rgba(8,18,25,.1);min-width:0}.dependency-graph-scroll{overflow:auto;min-width:0;padding:12px;background:radial-gradient(circle at 48% 34%,#102934 0,#091820 55%,#071218 100%)}.dependency-svg{display:block;max-width:none;width:1240px;height:auto}
.dependency-band rect{fill:#0d222c;stroke:#1f3b47;stroke-width:1}.dependency-band text{fill:#718e99;font:600 10px "IBM Plex Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase}
.dependency-edge{cursor:pointer;outline:none}.edge-line{fill:none;stroke:#5b7a86;stroke-width:1.25;opacity:.62;marker-end:url(#dependency-arrow);transition:opacity .16s ease,stroke-width .16s ease,stroke .16s ease}.criticality-high .edge-line{stroke:#62dff9;stroke-width:2.4;opacity:.88}.criticality-medium .edge-line{stroke:#6c8d99;stroke-width:1.5}.criticality-low .edge-line{stroke:#53666e;stroke-width:1}.edge-hit{fill:none;stroke:transparent;stroke-width:14}
.dependency-node{cursor:pointer;outline:none;transition:opacity .15s ease}.dependency-node rect{fill:#122832;stroke:#47636e;stroke-width:1.1}.dependency-node .node-label{fill:#eef7f9;font:600 10.3px "IBM Plex Sans",sans-serif;text-anchor:middle}.dependency-node .node-type{fill:#7f9aa5;font:500 7.7px "IBM Plex Sans",sans-serif;text-anchor:middle;letter-spacing:.04em}
.node-type-chokepoint rect{fill:#15323c;stroke:#76e5ff}.node-type-finance rect{fill:#242d3d;stroke:#7d8bb6}.node-type-institution rect{fill:#263029;stroke:#789681}.node-type-technology rect{fill:#1d2937;stroke:#7899ba}.node-type-resource rect{fill:#342c21;stroke:#a68d64}.node-type-labor rect{fill:#322637;stroke:#9a7ba2}
.dependency-node:hover rect,.dependency-node:focus rect,.dependency-node.is-active rect{stroke:#c8f7ff;stroke-width:2;filter:drop-shadow(0 0 8px rgba(91,224,251,.25))}.dependency-node.is-neighbor rect{stroke:#75d8ec;stroke-width:1.5}.dependency-node.is-muted,.dependency-edge.is-muted{opacity:.12}.dependency-edge.is-active .edge-line{stroke:#fff;stroke-width:3.4;opacity:1}
.dependency-detail-panel{background:#0d1d25;color:#fff;border-left:1px solid #28404b;padding:28px 24px;min-width:0}.dependency-detail h3{margin:8px 0 12px;font:500 25px/1.1 var(--serif)}.dependency-detail p{margin:0;color:#aec0c8;font-size:12px;line-height:1.65}.detail-kicker{font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#64e0fb}
.dependency-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#2a404a;margin:20px 0}.dependency-detail dl div{background:#10242d;padding:10px}.dependency-detail dt{color:#718f9b;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.dependency-detail dd{margin:5px 0 0;font-size:10px;color:#e7eff2}
.detail-research{margin-top:18px;padding-top:16px;border-top:1px solid #2b424d}.detail-research strong{display:block;margin-bottom:8px;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#7894a0}.detail-research a{display:block;padding:7px 0;color:#d7e7ec;font-size:10px;line-height:1.45;border-bottom:1px solid #233c46}.detail-history-link,.dependency-detail-default>a{display:inline-block;margin-top:18px;color:#7ce7ff;font-size:10px;border-bottom:1px solid #37606c}
.dependency-legend{display:flex;gap:12px 18px;flex-wrap:wrap;margin-top:14px;color:#60727c;font-size:9px}.dependency-legend-item{display:inline-flex;align-items:center;gap:6px}.dependency-legend-item i{width:8px;height:8px;border-radius:2px;background:#47636e}.dependency-legend-item.node-type-chokepoint i{background:#62dff9}.dependency-legend-item.node-type-finance i{background:#7d8bb6}.dependency-legend-item.node-type-institution i{background:#789681}.dependency-legend-item.node-type-technology i{background:#7899ba}.dependency-legend-item.node-type-resource i{background:#a68d64}.dependency-legend-item.node-type-labor i{background:#9a7ba2}
.dependency-index-section{background:#f8fafb}.dependency-relation-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dependency-relation-card{background:#fff;border:1px solid var(--line);padding:20px;min-width:0}.relation-card-top{display:flex;justify-content:space-between;gap:16px;font-size:8px;letter-spacing:.09em;text-transform:uppercase;color:#58727e}.relation-card-top em{font-style:normal;color:#315a6a}.dependency-relation-card h3{margin:9px 0 8px;font:500 21px/1.15 var(--serif)}.dependency-relation-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.relation-card-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid var(--line);color:#6e7f87;font-size:9px}.relation-card-meta strong{color:var(--ink)}
.dependency-method{background:var(--navy);color:#fff}.dependency-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.dependency-method p{margin:0 0 14px;color:#b7c7ce;line-height:1.7}.dependency-method a{color:#fff;border-bottom:1px solid #6be4ff}
.dependency-history-section{background:#f4f7f8}.dependency-history-list{border-top:1px solid #aebcc2}.dependency-history-event{display:grid;grid-template-columns:30px minmax(0,1fr);background:#fff;border-bottom:1px solid var(--line)}.dependency-history-event .history-event-rail{position:relative}.dependency-history-event .history-event-rail:before{content:"";position:absolute;top:0;bottom:0;left:14px;width:1px;background:#c6d3d8}.dependency-history-event .history-event-rail span{position:absolute;top:31px;left:10px;width:9px;height:9px;border-radius:50%;background:#1f7387;border:2px solid #d9f7fc;box-shadow:0 0 0 3px #d9e6ea}.dependency-history-body{padding:23px 25px 24px 10px}.dependency-history-meta{display:flex;justify-content:space-between;gap:18px;color:#5f747e;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.dependency-history-body h3{margin:8px 0 8px;font:500 24px/1.12 var(--serif)}.dependency-history-body p{margin:0;color:#4b5c64;font-size:12px;line-height:1.65}.dependency-history-state{display:flex;gap:18px;flex-wrap:wrap;margin-top:13px;font-size:9px;color:#71838b}
@media(max-width:980px){.dependency-hero-grid,.dependency-section-head,.dependency-method-grid{grid-template-columns:1fr;gap:28px}.dependency-hero-grid{min-height:0;padding:46px 0 38px}.dependency-hero aside{border-left:0;border-top:1px solid #31505d;padding:20px 0 0}.dependency-metrics{grid-template-columns:repeat(2,1fr)}.dependency-metrics>div:nth-child(3){border-left:0;padding-left:0}.dependency-metrics>div:nth-child(n+3){border-top:1px solid rgba(145,184,199,.18)}.dependency-stage{grid-template-columns:1fr}.dependency-detail-panel{border-left:0;border-top:1px solid #28404b}.dependency-relation-grid{grid-template-columns:1fr}}
@media(max-width:560px){.dependency-local-nav{gap:18px}.dependency-metrics>div{padding:15px 10px 15px 0}.dependency-metrics>div+div{padding-left:12px}.dependency-metrics strong{font-size:19px}.dependency-filters{display:grid;grid-template-columns:1fr 1fr}.dependency-filters button{text-align:left}.dependency-graph-scroll{padding:8px}.dependency-detail-panel{padding:22px 18px}.dependency-detail dl{grid-template-columns:1fr 1fr}.dependency-relation-card{padding:17px}.relation-card-top{display:block}.relation-card-top em{display:block;margin-top:5px}.dependency-history-event{grid-template-columns:22px minmax(0,1fr)}.dependency-history-event .history-event-rail:before{left:10px}.dependency-history-event .history-event-rail span{left:6px}.dependency-history-body{padding:20px 15px 22px 8px}}
html[data-theme="dark"] .dependency-network-section,html[data-theme="dark"] .dependency-history-section{background:#0c1419}html[data-theme="dark"] .dependency-index-section{background:#0a1116}html[data-theme="dark"] .dependency-filters button{background:#10191f;color:#d7e1e6;border-color:#304048}html[data-theme="dark"] .dependency-filters button.active{background:#e8eef2;color:#0a1015;border-color:#e8eef2}html[data-theme="dark"] .dependency-relation-card,html[data-theme="dark"] .dependency-history-event{background:#0f171d;border-color:#2d3b42}html[data-theme="dark"] .dependency-relation-card p,html[data-theme="dark"] .dependency-history-body p{color:#b6c4cb}

/* Node dossiers: progressive disclosure keeps the graph readable while exposing full structural context. */
.node-detail-header{padding-bottom:16px}.node-detail-header h3{margin:8px 0 10px;font:500 27px/1.08 var(--serif)}.node-detail-header>p{margin:0;color:#aec0c8;font-size:12px;line-height:1.65}.node-detail-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.node-detail-meta span{padding:5px 7px;border:1px solid #2c4752;color:#8ba5b0;font-size:8px;letter-spacing:.06em;text-transform:uppercase}
.node-tabs{display:flex;gap:0;overflow:auto;border-top:1px solid #28414c;border-bottom:1px solid #28414c;margin:0 -24px 20px;padding:0 24px;scrollbar-width:thin}.node-tabs button{flex:0 0 auto;border:0;border-bottom:2px solid transparent;background:transparent;color:#7f98a3;padding:12px 10px 10px;font-size:8px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.node-tabs button:first-child{padding-left:0}.node-tabs button.active{color:#ecf8fb;border-bottom-color:#63e1fc}.node-tab-panel[hidden]{display:none!important}
.node-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#29404a;border:1px solid #29404a}.node-profile-grid>div{background:#10232c;padding:11px}.node-profile-grid strong{display:block;font:500 20px/1 var(--serif);color:#f2f8fa}.node-profile-grid span{display:block;margin-top:5px;color:#76909b;font-size:7.5px;letter-spacing:.08em;text-transform:uppercase;line-height:1.3}
.node-network-role{margin-top:16px;padding-top:14px;border-top:1px solid #29414b}.node-network-role strong,.node-redundancy-block>h4,.node-two-col h4,.node-path-columns h4{display:block;margin:0 0 8px;color:#7b98a4;font-size:8px;letter-spacing:.11em;text-transform:uppercase}.node-network-role p{margin:0;color:#b5c5cb;font-size:11px;line-height:1.6}.node-alert{display:flex;justify-content:space-between;gap:16px;margin-top:14px;padding:10px 11px;background:#102a32;border:1px solid #285260}.node-alert strong{font-size:9px;color:#cceef5}.node-alert span{font-size:8px;color:#74cfe2}
.node-two-col,.node-path-columns{display:grid;grid-template-columns:1fr;gap:18px}.node-two-col>section+section,.node-path-columns>section+section{padding-top:16px;border-top:1px solid #29414b}.node-relation-item{padding:12px 0;border-bottom:1px solid #253c46}.node-relation-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.node-relation-head strong{color:#edf7f9;font:500 14px/1.25 var(--serif)}.node-relation-head span{flex:0 0 auto;color:#68dff9;font-size:7.5px;letter-spacing:.07em;text-transform:uppercase}.node-relation-item p{margin:7px 0 0;color:#9fb3bc;font-size:10.5px;line-height:1.55}.node-relation-meta{display:flex;gap:9px 12px;align-items:center;flex-wrap:wrap;margin-top:8px;color:#708b97;font-size:7.5px}.node-relation-meta b{color:#d5e6eb}.node-relation-meta button{margin-left:auto;border:0;background:transparent;padding:0;color:#72e4fb;font-size:8px;cursor:pointer}
.node-redundancy-block{margin-top:18px;padding-top:16px;border-top:1px solid #29414b}.node-empty{padding:12px 0!important;color:#718a95!important;font-size:10px!important;font-style:italic}.node-tab-note{margin:0 0 14px!important;padding:10px 11px;border-left:2px solid #345966;background:#10242d;color:#97adb6!important;font-size:10px!important;line-height:1.55!important}.node-path{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #253b45}.path-node{padding:5px 7px;background:#132b35;border:1px solid #34505b;color:#e4f1f4;font-size:8px;line-height:1.2}.path-relation{color:#65dff8;font-size:7px;text-transform:uppercase;letter-spacing:.05em}
.node-history-list{border-top:1px solid #29414b}.node-history-item{padding:11px 0;border-bottom:1px solid #253b45}.node-history-item>div{display:flex;justify-content:space-between;gap:12px;color:#6f8c97;font-size:7.5px;letter-spacing:.08em;text-transform:uppercase}.node-history-item>strong{display:block;margin-top:5px;color:#e8f2f5;font:500 13px/1.25 var(--serif)}.node-history-item>p{margin-top:5px;color:#95aab3;font-size:9.5px;line-height:1.5}.node-research-list a{display:block;padding:10px 0;border-bottom:1px solid #29414b;color:#e2f2f5;font-size:10px;line-height:1.45}
.dependency-history-filters{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 24px}.dependency-history-filters button{border:1px solid #b9c5ca;background:#fff;padding:9px 11px;cursor:pointer;font-size:9px;font-weight:600}.dependency-history-filters button span{margin-left:7px;color:var(--muted)}.dependency-history-filters button.active{background:var(--navy);border-color:var(--navy);color:#fff}.history-entity-row{margin-top:8px}.history-entity-row>span{display:block;color:#5d7884;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.history-entity-row h3{margin-top:5px}
html[data-theme="dark"] .dependency-history-filters button{background:#10191f;color:#d7e1e6;border-color:#304048}html[data-theme="dark"] .dependency-history-filters button.active{background:#e8eef2;color:#0a1015;border-color:#e8eef2}
@media(min-width:1180px){.node-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.node-tabs{margin-inline:-18px;padding-inline:18px}.dependency-detail-panel{scroll-margin-top:16px}}@media(max-width:560px){.node-detail-header h3{font-size:24px}.node-tabs{margin-inline:-18px;padding-inline:18px}.node-tabs button{padding-inline:8px}.node-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.node-relation-head{display:block}.node-relation-head span{display:block;margin-top:5px}.node-relation-meta button{width:100%;text-align:left;margin-left:0;padding-top:3px}.path-node{font-size:7.5px}.path-relation{font-size:6.5px}}

/* Keep the map inside the viewport; scale its camera, never the page. */
.dependency-network-section>.container{width:min(calc(100% - 40px),1760px)}
.dependency-workspace{min-width:0;max-width:100%}
.dependency-filters button{min-height:44px;font-size:.875rem;overflow-wrap:anywhere}
.dependency-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;background:#10232d;border:1px solid #28434e;border-bottom:0;color:#eaf4f7}
.dependency-toolbar button,.dependency-node-jump select,.dependency-detail-close{min-height:44px;border:1px solid #54727e;border-radius:4px;background:#183540;color:#eff8fa;font:500 .875rem/1.3 var(--sans);padding:9px 12px;cursor:pointer}
.dependency-toolbar button:hover,.dependency-detail-close:hover{background:#254b59;border-color:#87d8ed}
.dependency-toolbar button:disabled{opacity:.4;cursor:default}
.dependency-zoom-controls{display:flex;align-items:center;gap:2px}
.dependency-zoom-controls button{font-size:1.4rem;width:44px;padding:4px}
.dependency-zoom-level{min-width:4rem;text-align:center;font-size:.875rem;font-variant-numeric:tabular-nums}
.dependency-node-jump{display:flex;align-items:center;gap:8px;flex:1 1 250px;min-width:0;font-size:.875rem}
.dependency-node-jump span{flex-shrink:0}
.dependency-node-jump select{width:100%;min-width:0;flex:1;color-scheme:dark}
.dependency-toolbar button:focus-visible,.dependency-node-jump select:focus-visible,.dependency-filters button:focus-visible,.dependency-detail-panel button:focus-visible{outline:3px solid #4cd5fa;outline-offset:3px}
.dependency-stage.has-selection{grid-template-columns:minmax(0,1fr) minmax(320px,380px)}
.dependency-graph-scroll{position:relative;height:clamp(420px,72vh,800px);padding:0;min-width:0;max-width:100%;scrollbar-width:thin}
.dependency-graph-scroll:focus-visible{outline:3px solid #70e1ff;outline-offset:-3px}
.dependency-graph-scroll.is-interactive{overflow:hidden;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.dependency-graph-scroll.is-dragging,.dependency-graph-scroll.is-dragging *{cursor:grabbing}
.is-interactive .dependency-svg{width:100%;height:100%;min-width:0;max-width:100%;overflow:hidden}
.dependency-band text{font-size:13px;fill:#9eb5bf;letter-spacing:.035em}
.dependency-node .node-label{font-size:14px}
.dependency-node .node-type{font-size:11px;fill:#aac1cb;letter-spacing:0}
.dependency-edge:focus-visible .edge-line{stroke:#fff;stroke-width:4;opacity:1}
.dependency-help{margin:0;padding:12px 14px;background:#10232d;color:#b8cfd8;font-size:.875rem;line-height:1.5}
.dependency-detail-panel{padding:20px;max-height:clamp(420px,72vh,800px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;overflow-wrap:anywhere}
.dependency-detail-close{display:block;margin:0 0 18px auto}
.dependency-detail p,.node-detail-header>p{font-size:1rem}
.dependency-detail dt,.detail-kicker,.detail-research strong,.node-detail-meta span,.node-network-role strong,.node-redundancy-block>h4,.node-two-col h4,.node-path-columns h4{font-size:.75rem;letter-spacing:.04em}
.dependency-detail dd,.detail-research a,.detail-history-link,.dependency-detail-default>a,.node-network-role p,.node-research-list a,.node-relation-item p,.node-history-item>p{font-size:.875rem}
.node-tabs{margin-inline:-20px;padding-inline:20px;gap:6px}
.node-tabs button{min-height:44px;font-size:.875rem;letter-spacing:0;text-transform:none}
.node-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.node-profile-grid span,.node-relation-head span,.node-relation-meta,.node-history-item>div,.node-alert span,.node-alert strong{font-size:.75rem}
.node-relation-head{flex-wrap:wrap}
.node-relation-head strong,.node-history-item>strong{font-size:1rem}
.node-relation-meta button{font-size:.875rem;min-height:44px}
.path-node,.path-relation{font-size:.875rem;overflow-wrap:anywhere}
.node-tab-note,.node-empty{font-size:.875rem!important}
.dependency-legend{font-size:.75rem}
.dependency-relation-card p{font-size:1rem}
.relation-card-top,.relation-card-meta{font-size:.75rem}
.dependency-modal{position:fixed;inset:0;box-sizing:border-box;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px;border:0;background:#0a1921;color:#edf6f9;overflow:auto;overscroll-behavior:contain}
.dependency-modal::backdrop{background:#071218}
.dependency-modal-open{overflow:hidden}
.dependency-modal .dependency-workspace{max-width:2200px;margin:auto}
.dependency-modal .dependency-graph-scroll,.dependency-modal .dependency-detail-panel{height:calc(100dvh - 220px);min-height:300px;max-height:none}
.dependency-modal .dependency-filters{margin-bottom:10px}
.dependency-modal .dependency-filters button{background:#132d38;color:#d9eaf1;border-color:#486572}
.dependency-modal .dependency-filters button.active{background:#d6f5fc;color:#0a202b}
@media(max-width:980px){
  .dependency-stage.has-selection{grid-template-columns:minmax(0,1fr)}
  .dependency-detail-panel{max-height:65vh;max-height:65svh;border-left:0;border-top:1px solid #28404b}
  .dependency-modal .dependency-detail-panel{height:auto;min-height:0;max-height:55dvh}
  .dependency-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:3px 2px 10px;scrollbar-width:thin}
  .dependency-filters button{flex:0 0 auto;max-width:260px;text-align:left}
}
@media(max-width:560px){
  .dependency-network-section>.container{width:calc(100% - 24px)}
  .dependency-toolbar{padding:8px;gap:6px}
  .dependency-toolbar>button{flex:1 1 auto}
  .dependency-node-jump{flex-basis:100%;flex-wrap:wrap;gap:4px;order:2}
  .dependency-node-jump span{width:100%}
  .dependency-node-jump select{font-size:1rem}
  .dependency-graph-scroll{height:60vh;height:60svh;min-height:300px;max-height:560px}
  .dependency-detail-panel{padding:18px}
  .node-tabs{margin-inline:-18px;padding-inline:18px}
  .dependency-hero h1{font-size:clamp(2.25rem,9vw,3.5rem);overflow-wrap:anywhere}
  .dependency-modal{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .dependency-modal .dependency-graph-scroll{height:calc(100dvh - 290px);min-height:240px}
}
@media(prefers-reduced-motion:reduce){.dependency-node,.edge-line{transition:none}}
