.path-list{list-style:none;margin:0;padding:0}.path-node{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);gap:18px;padding:0 0 22px}.path-node:before{content:"";position:absolute;left:11px;top:26px;bottom:-4px;width:2px;background:var(--line-strong)}.path-node.is-done:before{background:var(--accent)}.path-node.is-locked:before,.path-node.is-open:before,.path-node.is-started:before{background:repeating-linear-gradient(to bottom,var(--line-strong) 0 4px,transparent 4px 9px)}.path-node:last-child:before{display:none}.path-marker{position:relative;z-index:1;display:grid;place-items:center;width:24px;height:26px;color:var(--text-faint);background:var(--bg)}.path-node-body{min-width:0;padding-bottom:4px}.path-node-head{display:flex;align-items:center;gap:10px}.path-state{padding:1px 8px;border:1px solid var(--line);border-radius:999px;color:var(--text-dim);font-size:11px}.path-state-done{border-color:var(--chip-ok-line);background:var(--chip-ok-bg);color:var(--chip-ok-fg)}.path-state-started,.path-state-open{border-color:var(--accent);color:var(--accent)}.path-node h3{margin:6px 0 4px;font-size:17px;line-height:1.25}.path-node.is-locked h3,.path-node.is-locked .path-line{color:var(--text-faint)}.path-steps{margin:6px 0 0;color:var(--text-faint);font-size:12px}.path-node-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}@media(max-width:720px){.path-node{gap:12px}}.chapter-list{display:flex;flex-direction:column;gap:28px}.chapter-head{margin-bottom:14px}.chapter-head h2{margin:4px 0;font-size:21px}.path-boss{padding:1px 8px;border:1px solid var(--accent);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600}.path-node-xp{margin-left:auto}.path-node.is-boss .path-marker{width:28px}.path-node.is-boss h3{font-size:19px}.cq-entry{display:flex;flex-direction:column;gap:10px;max-width:760px;margin-top:12px}.cq-open{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.cq-open[hidden],.cq-slot:empty{display:none}.cq-open-note{color:var(--text-dim);font-size:13px}
