.collaborators-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem}.collaborators-network{--portfolio-bg: var(--ink);--portfolio-surface: var(--raised);--portfolio-text: var(--paper);--portfolio-muted: var(--muted);--portfolio-accent: var(--gold);--portfolio-accent-strong: var(--teal);--portfolio-accent-rgb: 107, 138, 184}.network-controls{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.network-tabs{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:100%;background:var(--portfolio-surface);border:1px solid rgba(var(--portfolio-accent-rgb),.2);padding:4px;border-radius:99px}.cat-tab{padding:.35rem .9rem;border-radius:99px;font-size:.78rem;font-weight:600;color:var(--portfolio-muted);border:none;background:transparent;cursor:pointer;transition:all .2s ease}.cat-tab:hover{color:var(--portfolio-text)}.cat-tab.active{background:var(--portfolio-accent-strong);color:var(--portfolio-text)}.network-search{display:flex;align-items:center;gap:.5rem;background:var(--portfolio-surface);border:1px solid rgba(var(--portfolio-accent-rgb),.2);border-radius:99px;padding:.35rem .9rem;color:var(--portfolio-muted)}.network-search input{background:transparent;border:none;outline:none;color:var(--portfolio-text);font-size:.8rem;width:140px}.network-search input::placeholder{color:var(--portfolio-muted)}.network-viz-wrapper{position:relative;width:100%;border-radius:24px;background:var(--portfolio-bg);border:1px solid rgba(var(--portfolio-accent-rgb),.25);box-shadow:0 20px 60px #0009;overflow:hidden;padding:1rem}.collaborators-d3-container{width:100%;min-height:840px;display:flex;justify-content:center;align-items:center;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(var(--portfolio-accent-rgb),.4) transparent}.collaborators-d3-container>svg{flex:none}.network-pan-hint{display:none}@media(max-width:860px){.network-pan-hint{display:block;margin:.7rem 0 0;text-align:center;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--portfolio-muted)}}.csh-person,.csh-topic,.csh-inst,.csh-link{transition:opacity .25s ease}.network-detail-card{position:absolute;top:1.5rem;right:1.5rem;width:min(320px,calc(100% - 3rem));background:var(--portfolio-surface);border:1px solid rgba(var(--portfolio-accent-rgb),.35);border-radius:18px;padding:1.25rem;box-shadow:0 20px 50px #000000b3;z-index:10;transition:opacity .25s ease,transform .25s ease;pointer-events:none}.network-detail-card.hidden{opacity:0;transform:translateY(10px)}.network-detail-card__close,.network-chip,.card-papers a{pointer-events:auto}.network-detail-card__close{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;color:var(--portfolio-muted);font-size:1.2rem;cursor:pointer}.network-detail-card__close:hover{color:var(--portfolio-text)}.network-detail-card__header{display:flex;align-items:center;gap:.85rem;margin-bottom:.85rem}.network-detail-card__avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--portfolio-accent-strong);color:var(--portfolio-text);font-weight:700;font-size:.9rem;flex-shrink:0}.network-detail-card__header h3{margin:0;font-size:1.05rem;color:var(--portfolio-text)}.network-detail-card__role{margin:.15rem 0 0;font-size:.78rem;color:var(--portfolio-accent);font-weight:600}.network-detail-card__inst{margin:0 0 .75rem;font-size:.78rem;color:var(--portfolio-muted)}.network-detail-card__topics{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.network-chip{font-size:.72rem;padding:.15rem .55rem;border-radius:6px;background:rgba(var(--portfolio-accent-rgb),.1);border:1px solid rgba(var(--portfolio-accent-rgb),.25);color:var(--portfolio-accent);font-weight:500}.network-detail-card__papers h4{margin:0 0 .4rem;font-size:.78rem;color:var(--portfolio-text);font-weight:600}.network-detail-card__papers ul{margin:0;padding-left:1rem;font-size:.74rem;color:var(--portfolio-muted);line-height:1.45}.network-card-note{font-size:.74rem;color:#c084fc;font-style:italic;margin:0}
