/* 연결 지도 */
.title-spread .lead b{color:var(--ink);font-weight:500}
.cx-key{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;margin:28px 0 0;padding:0;font-size:13px;color:var(--ink-soft)}
.cx-key i{display:inline-block;width:22px;height:0;border-top:2px solid;vertical-align:middle;margin-right:8px}
.k-ok{border-color:#f4a47a!important}.k-tend{border-color:#e8c27a!important;border-top-style:dashed!important}.k-limit{border-color:#6fb5d6!important;border-top-style:dotted!important}.k-plan{border-color:#3b5a5f!important;border-top-style:dashed!important}
.cx{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.cx-chain{list-style:none;margin:0;padding:0}
.cx-node{background:var(--bg-2);border:1px solid var(--line);border-radius:4px;padding:16px 18px}
.cx-node h2{font-family:var(--font-sans);font-weight:500;font-size:18px;margin:4px 0 6px;color:var(--ink)}
.cx-node h2 a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}
.cx-node h2 a:hover{color:var(--accent);border-bottom-color:var(--accent)}
.cx-node p{font-size:14px;line-height:1.65;color:var(--ink-soft);margin:0}
.cx-no{font-size:12px;letter-spacing:.08em;color:var(--accent)}
.cx-node.hub{border-color:rgba(244,164,122,.55);box-shadow:inset 3px 0 0 #f4a47a}
.cx-node.plan{background:transparent;border-style:dashed;opacity:.75}
.cx-node.plan .cx-no{color:var(--muted)}
.cx-plan{margin-top:6px!important;font-size:12.5px!important;color:var(--muted)!important}
.cx-edge{position:relative;margin:0 0 0 22px;padding:14px 0 14px 22px;border-left:2px solid #f4a47a}
.cx-edge>span{display:block;font-size:14px;color:var(--ink);margin-bottom:4px}
.cx-edge>span::before{content:"↓ ";color:var(--accent)}
.cx-edge p{font-size:13px;line-height:1.65;color:var(--ink-soft);margin:0;max-width:56ch}
.cx-edge.tend{border-left:2px dashed #e8c27a}.cx-edge.tend>span::before{color:#e8c27a}
.cx-edge.limit{border-left:2px dotted #6fb5d6}.cx-edge.limit>span::before{color:#6fb5d6;content:"↺ "}
.cx-edge.plan{border-left:2px dashed #3b5a5f}.cx-edge.plan>span{color:var(--muted)}
.cx-side{display:flex;flex-direction:column;gap:28px;position:sticky;top:80px}
.cx-branch-l{font-size:12.5px;letter-spacing:.06em;color:var(--muted);margin:0 0 8px}
.cx-side .cx-edge{margin-left:22px}
.cx-side .cx-edge>span::before{content:""}
@media (max-width:860px){.cx{grid-template-columns:1fr}.cx-side{position:static}}
