/* Shared connections page: the original mind map followed by the original work archive. */
.connection-jumps{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:48px}
.connection-map{padding-bottom:45px;border-bottom:1px solid var(--line)}
.connection-map h2 .zh,.connection-works h2 .zh{font-size:19px}
.connection-works{padding-top:65px}
#mind-map,#works{scroll-margin-top:140px}
.connection-map .intro{font-size:17px}
.connection-map .mind-scroll{margin-top:25px}
.connection-map .after-heading{margin-top:25px}
@media(max-width:780px){.connection-jumps{gap:20px;margin-bottom:35px}.connection-jumps a{white-space:normal}.connection-works{padding-top:45px}.connection-works .section-heading{flex-wrap:wrap}.connection-map h2 .zh,.connection-works h2 .zh{font-size:17px}}
/* Interactive workshop map: responsive viewport over an editable SVG. */
.connection-map{--map-ink:#143c37}
.mind-explorer{margin-top:26px;border:1px solid #83aca2;background:#cce4db;color:var(--map-ink)}
.mind-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;border-bottom:1px solid #83aca2}
.mind-toolbar button,.mind-search button{border:1px solid #769e93;background:#e5f0eb;color:#143c37;min-height:44px;padding:8px 14px;font:inherit;font-size:13px;cursor:pointer}
.mind-toolbar button:hover,.mind-search button:hover{background:#245e55;color:#fff}
.mind-toolbar button:disabled{opacity:.45;cursor:default}
.mind-toolbar button:focus-visible,.mind-toolbar select:focus-visible,.mind-search input:focus-visible{outline:3px solid #143c37;outline-offset:2px}
.mind-zoom{font:12px monospace;min-width:42px;text-align:center}
.mind-picker{display:flex;gap:8px;align-items:center;margin-left:auto;font-size:12px}
.mind-picker select{max-width:100%;min-height:44px;padding:8px;background:#f1f7f3;border:1px solid #769e93;color:#143c37;font:inherit}
.mind-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 14px 14px;font-size:12px}
.mind-search input{min-height:44px;width:230px;max-width:100%;border:1px solid #769e93;padding:8px 12px;background:#f1f7f3;color:#143c37;font:inherit}
.mind-search-status{font-size:12px;min-height:1em}
.mind-stage{height:620px;max-height:75svh;min-height:380px;position:relative;overflow:auto;background:#b4dbd3}
.mind-stage svg{display:block;width:2040px;height:1200px;max-width:none}
.mind-stage.is-interactive{touch-action:none;overflow:hidden;cursor:grab}
.mind-stage.is-interactive svg{width:100%;height:100%;user-select:none;-webkit-user-select:none}
.mind-stage.is-dragging{cursor:grabbing}
.mind-stage:focus-visible{outline:3px solid #245e55;outline-offset:-3px}
.mind-stage a{cursor:pointer}
.mind-person:hover rect,.mind-person:focus-visible rect{stroke:#143c37;stroke-width:3}
.mind-word.is-found rect{stroke:#102b2c;stroke-width:4;fill:#245e55}
.mind-instructions{padding:12px 16px;margin:0;font-size:12px;line-height:1.7;background:#e0eee7}
.mind-explorer.is-expanded .mind-stage{height:85svh;max-height:85svh}
@media(max-width:780px){
 .mind-toolbar{gap:7px;padding:10px}.mind-toolbar button{padding:8px 10px}
 .mind-picker{width:100%;margin:0}.mind-picker select{flex:1}
 .mind-search{padding:0 10px 10px}.mind-search label{width:100%}.mind-search input{flex:1;width:120px;min-width:0}
 .mind-search-status{width:100%}
 .mind-stage{height:540px;max-height:68svh;min-height:360px}
 .mind-instructions{font-size:11px}
}

/* Rounded Connections controls, with keyword search in the main toolbar. */
.mind-explorer{border-radius:22px;overflow:hidden}
.mind-toolbar{gap:16px;align-items:flex-start}
.mind-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.mind-toolbar button,.mind-picker select,.mind-search input,.connection-works .filters input,.connection-works .filters select{border-radius:14px}
.mind-controls button[data-map="in"],.mind-controls button[data-map="out"]{width:44px;height:44px;min-width:44px;padding:0;border-radius:50%}
.mind-toolbar .mind-search{padding:0;margin:0;flex:1;min-width:320px;gap:8px;align-items:center}
.mind-toolbar .mind-search label{white-space:nowrap}
.mind-toolbar .mind-search input{flex:1;min-width:110px;width:155px}
.mind-search-status:empty{display:none}
.mind-toolbar .mind-search-status{flex-basis:100%}
.mind-picker{min-height:44px}
@media(max-width:1100px){.mind-toolbar .mind-search{order:3;flex-basis:100%}.mind-picker{margin-left:auto}}
@media(max-width:780px){
 .mind-explorer{border-radius:18px}
 .mind-toolbar{gap:12px}
 .mind-controls{width:100%;gap:6px}
 .mind-toolbar .mind-search{min-width:0;width:100%;order:2}
 .mind-toolbar .mind-search label{width:100%}
 .mind-picker{order:3;margin:0}
}
