/* Evidence-led workflow diagram; inherits each authorized portal's theme. */
.connections-panel{margin:24px 0;padding:22px;border:1px solid var(--line);border-radius:var(--r,14px);background:var(--panel);scroll-margin-top:88px}
.connections-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.connections-head h2{font-size:18px;margin-bottom:5px}
.connections-note{font-size:12px;color:var(--muted);line-height:1.7}
.connections-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px}
.connections-tools input{font:inherit;color:var(--fg);background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:8px;min-height:40px;color-scheme:light dark}
.connections-graph{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:start}
.connections-node{min-width:0;position:relative;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}
.connections-node:not(:first-child)::before{content:"";position:absolute;right:100%;top:46px;width:29px;border-top:2px dashed var(--gold);pointer-events:none}
.connections-node.verified::before{border-top-style:solid;border-top-color:var(--teal)}
.connections-node summary{cursor:pointer;min-height:134px;padding:15px;list-style:revert}
.connections-node summary:focus-visible,.connections-tools button:focus-visible,.connections-tools input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.connections-step{display:block;font-size:10px;letter-spacing:.06em;color:var(--muted);margin:7px 0}
.connections-value{display:block;font-size:17px;font-weight:700;overflow-wrap:anywhere;margin:5px 0 9px;font-variant-numeric:tabular-nums}
.connections-state{display:inline-block;font-size:11px;border:1px solid currentColor;border-radius:5px;padding:2px 6px;color:var(--gold)}
.connections-state.ok{color:var(--teal)}
.connections-state.error{color:var(--pink)}
.connections-detail{padding:14px;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}
.connections-detail p{margin-bottom:9px;line-height:1.7}
.connections-record{margin:10px 0;padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:6px}
.connections-record dl{display:grid;grid-template-columns:minmax(70px,1fr) minmax(0,2fr);gap:5px}
.connections-record dt{color:var(--muted)}
.connections-record dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.connections-legend{margin-top:16px;font-size:11px;color:var(--muted);line-height:1.8}
.connections-message{padding:20px;border:1px dashed var(--gold);border-radius:10px;color:var(--muted);font-size:13px}
.connections-skeleton{height:134px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}
@media(prefers-reduced-motion:no-preference){.connections-skeleton{animation:connectionsFade 1.2s ease-in-out infinite alternate}@keyframes connectionsFade{from{opacity:.45}to{opacity:1}}}
@media(max-width:767px){.connections-panel{padding:16px}.connections-graph{grid-template-columns:1fr;gap:24px}.connections-node:not(:first-child)::before{right:auto;left:26px;top:-25px;width:0;height:24px;border-top:none;border-left:2px dashed var(--gold)}.connections-node.verified::before{border-left-style:solid;border-left-color:var(--teal)}.connections-node summary{min-height:110px}}

/* Measure the diagram's available space, including split-view owner panels. */
.connections-panel{container-type:inline-size}
@container (max-width:760px){
 .connections-graph{grid-template-columns:minmax(0,1fr);gap:24px}
 .connections-node:not(:first-child)::before{right:auto;left:26px;top:-25px;width:0;height:24px;border-top:0;border-left:2px dashed var(--gold)}
 .connections-node.verified::before{border-left-style:solid;border-left-color:var(--teal)}
 .connections-node summary{min-height:110px}
}
