/* Blueprint – bewusst immer dunkel wie ein Knoten-Editor */
.bp{position:relative;height:min(66vh,720px);min-height:440px;border-radius:12px;overflow:hidden;border:1px solid #2a2f3a;background-color:#1c1f26;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);
  background-size:16px 16px,16px 16px,128px 128px,128px 128px;cursor:grab;touch-action:none;user-select:none;outline:none;color-scheme:dark}
.bp.panning{cursor:grabbing}
.bp-world{position:absolute;left:0;top:0;transform-origin:0 0}
.bp-wires{position:absolute;left:0;top:0;width:1px;height:1px;overflow:visible;pointer-events:none}
.bp-wires .hit{pointer-events:stroke;cursor:pointer}
.bp-comments{position:absolute;left:0;top:0}
.bpcomment{position:absolute;border-radius:10px;border:1px solid color-mix(in srgb,var(--cc) 75%,transparent);background:color-mix(in srgb,var(--cc) 13%,transparent);pointer-events:none}
.bpcomment b{display:block;padding:6px 12px;font-size:16px;font-family:var(--f-display);font-weight:400;color:#fff;background:color-mix(in srgb,var(--cc) 50%,transparent);border-radius:10px 10px 0 0}
.bpn{position:absolute;border-radius:8px;background:rgba(36,40,49,.96);border:1px solid #0b0d11;box-shadow:0 8px 18px rgba(0,0,0,.5);color:#e6e9f0;font-size:13px;cursor:move}
.bpn.sel{outline:2px solid #F5C542;outline-offset:2px}
.bpn.bad{border-color:#F0776C;box-shadow:0 0 0 1px #F0776C,0 8px 18px rgba(0,0,0,.5)}
.bpn.chap{border-color:color-mix(in srgb,var(--hc) 60%,#0b0d11)}
.bpn.chap .bpn-t{font-family:var(--f-display);font-weight:400;font-size:15px}
.bpn-h{height:34px;display:flex;align-items:center;gap:8px;padding:0 10px;border-radius:8px 8px 0 0;background:linear-gradient(90deg,var(--hc),color-mix(in srgb,var(--hc) 25%,#242831));font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7)}
.bpn-t{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.exec{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid #fff;flex:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.6))}
.exec.in{margin-left:-6px;opacity:.85}
.exec.out{margin-right:-8px;cursor:crosshair}
.exec.out:hover{border-left-color:#F5C542}
.bpn-b{padding-top:6px}
.bpn-meta{height:22px;line-height:22px;padding:0 12px;font-family:var(--f-mono);font-size:11.5px;color:#aab2c5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bpn-place{display:flex;align-items:center;gap:7px;color:#d5dae6}
.bpn-pin{height:24px;display:flex;align-items:center;gap:8px;font-size:13px}
.bpn-pin .n{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pin-in,.pin-out{width:12px;height:12px;border-radius:50%;border:2.5px solid var(--c);background:color-mix(in srgb,var(--c) 45%,#242831);flex:none}
.pin-in{margin-left:-6px}.pin-out{margin-right:-6px}
.bp-hint{position:absolute;left:12px;bottom:8px;font-size:12px;color:#8b93a7;pointer-events:none}
