/* Optional owner-association layer.  It does not participate in node sorting. */
.scroll{position:relative}
#nodes > tr > td{border-bottom:0}
.owner-thread-map{position:absolute;inset:0 auto auto 0;z-index:2;pointer-events:none;overflow:visible}
.owner-thread{fill:none;stroke:var(--owner-thread-colour,#a8c3d3);stroke-width:1.5;opacity:.62;transition:opacity .16s ease,stroke-width .16s ease}
.owner-thread-dot{fill:var(--owner-thread-colour,#b8d4e3);opacity:.82;transition:opacity .16s ease}
.owner-thread-map.is-focused .owner-thread:not(.is-active),.owner-thread-map.is-focused .owner-thread-dot:not(.is-active){opacity:.055}
.owner-thread.is-active{stroke:#9fd6f4;stroke-width:2;opacity:.92}
.owner-thread-dot.is-active{fill:#d8f0ff;opacity:1}
#nodes tr:has(details[data-key]) td:first-child{position:relative;padding-left:87px}
.owner-association-slot{position:absolute;top:50%;left:67px;transform:translateY(-50%);z-index:3}
.owner-association-button{display:block;width:9px;height:9px;padding:0;border:1.5px solid #7694a4;border-radius:50%;background:#13222c;color:transparent;cursor:pointer;opacity:.78}
#nodes tr:has(details[data-key]):hover .owner-association-button{opacity:1;border-color:#b9dbe9}
.owner-association-button[aria-pressed="true"]{border-color:#9fd6f4;background:#52778b;box-shadow:0 0 0 2px #9fd6f433;opacity:1}
.owner-association-dialog{width:min(430px,calc(100vw - 28px));border:1px solid #496171;border-radius:12px;background:#13202a;color:var(--text);box-shadow:0 20px 60px #000a;padding:0}
.owner-association-dialog::backdrop{background:#050a0db8}
.owner-association-dialog form{padding:18px}
.owner-association-dialog h2{margin:0 0 5px;font-size:1rem}
.owner-association-dialog p{margin:0 0 14px;color:var(--muted);font-size:.88rem}
.owner-association-dialog label{display:grid;gap:5px;margin:10px 0;font-size:.82rem;color:var(--muted)}
.owner-association-dialog input,.owner-association-dialog select{padding:8px}
.owner-association-dialog menu{display:flex;justify-content:flex-end;gap:8px;margin:16px 0 0;padding:0}
.owner-association-dialog button[value="cancel"]{background:transparent;border:1px solid var(--line);color:var(--text)}
.owner-association-dialog .owner-association-remove{margin-right:auto;background:transparent;border:1px solid var(--bad);color:var(--bad)}
.owner-association-note{font-size:.75rem;color:var(--muted)}

:root{--bad:#ffbd99} .scroll table{min-width:780px} .scroll th:first-child{min-width:320px}