.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{color:#192524;font-synthesis:none;text-rendering:optimizelegibility;--canvas:#f3f1eb;--ink:#192524;--muted:#697472;--line:#c8ccc6;--green:#2f6f65;--green-dark:#1f5149;--panel:#fbfaf6;--shadow:0 12px 34px #1a2a2724;background:#e8e6e0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:3px solid #4d9e91}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--canvas);grid-template-rows:68px minmax(0,1fr) 102px;height:100%;display:grid}.app-shell.is-fullscreen{grid-template-rows:58px minmax(0,1fr) 88px}.toolbar{z-index:50;background:#faf9f5f5;border-bottom:1px solid #bec5be;align-items:center;gap:18px;padding:9px 14px 9px 18px;display:flex;box-shadow:0 3px 12px #22322f14}.brand-lockup{flex:390px;min-width:310px;overflow:hidden}.brand-kicker,.eyebrow{color:#3f7068;letter-spacing:.16em;font-size:9px;font-weight:800;line-height:1.4;display:block}.brand-lockup h1{color:#1f3431;letter-spacing:-.025em;white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:clamp(14px,1.12vw,20px);line-height:1.1;overflow:hidden}.toolbar-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.button-cluster{background:#ecece7;border:1px solid #d4d7d1;border-radius:7px;align-items:center;display:flex;overflow:hidden}.button-cluster .icon-button{border:0;border-right:1px solid #d3d6d0;border-radius:0}.button-cluster .icon-button:last-child{border-right:0}.icon-button{color:#354642;background:#f8f7f2;border:1px solid #cbd0ca;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.icon-button:hover{color:#1f5149;background:#fff}.icon-button.primary{color:#fff;background:var(--green)}.select-control{background:#f8f7f2;border:1px solid #cbd0ca;border-radius:7px;align-items:center;height:36px;display:flex;overflow:hidden}.select-control select{color:#283936;background:0 0;border:0;min-width:0;height:100%;padding:0 26px 0 10px;font-size:11px;font-weight:700}.select-control small{color:#6a7471;border-left:1px solid #d2d6d0;padding:0 8px;font:700 9px/1 ui-monospace,monospace}.scenario-select{width:clamp(152px,14vw,230px)}.scenario-select select{width:100%}.funnel-select{background:#edf5f1;border-color:#9fb5ae;width:clamp(142px,12vw,190px)}.funnel-select select{color:#1f5149;width:100%}.speed-select select{width:64px}.toggle-button{color:#40504d;background:#f8f7f2;border:1px solid #cbd0ca;border-radius:7px;align-items:center;gap:5px;height:34px;padding:0 9px;font-size:10px;font-weight:800;display:inline-flex}.toggle-button.is-on{color:#fff;border-color:var(--green);background:var(--green)}.language-switch{background:#ecece7;border:1px solid #cbd0ca;border-radius:7px;padding:3px;display:flex}.language-switch button{color:#6b7472;background:0 0;border:0;border-radius:4px;height:26px;padding:0 7px;font-size:9px;font-weight:900}.language-switch button.active{color:#fff;background:var(--green)}.search-control{position:relative}.search-popover{z-index:90;width:min(390px,100vw - 24px);box-shadow:var(--shadow);background:#fbfaf7;border:1px solid #bdc5bd;border-radius:10px;padding:9px;position:absolute;top:42px;right:0}.search-input-wrap{background:#fff;border:1px solid #aeb8b0;border-radius:6px;align-items:center;gap:7px;padding:0 9px;display:flex}.search-input-wrap input{border:0;outline:0;width:100%;height:38px;font-size:12px}.search-results{max-height:360px;margin-top:6px;overflow:auto}.search-results button{text-align:left;background:0 0;border:0;border-bottom:1px solid #e2e4df;width:100%;padding:8px 9px;display:block}.search-results button:hover{background:#edf4f0}.search-results strong,.search-results small{display:block}.search-results strong{color:#233734;font-size:11px}.search-results small{color:#6b7572;margin-top:2px;font-size:9px;line-height:1.3}.search-results p{color:#6b7572;padding:8px;font-size:11px}.diagram-workspace{min-height:0;position:relative;overflow:hidden}.canvas-shell{background:var(--canvas);position:absolute;inset:0}.react-flow{background:radial-gradient(circle at 48% 40%, #ffffffd1, transparent 48%), var(--canvas)}.react-flow__node-stageLane{pointer-events:none!important}.stage-lane{border:1px solid color-mix(in srgb, var(--stage-tone) 34%, #cbd0ca);border-top:4px solid var(--stage-tone);background:color-mix(in srgb, var(--stage-tone) 4%, #ffffffb3);border-radius:7px;width:100%;height:100%;overflow:hidden;box-shadow:0 2px 8px #1c2a270f}.stage-lane__header{height:66px;color:var(--stage-tone);border-bottom:1px solid color-mix(in srgb, var(--stage-tone) 20%, transparent);background:color-mix(in srgb, var(--stage-tone) 7%, #fbfaf6);align-items:center;gap:10px;padding:10px 14px;display:flex}.stage-number{opacity:.23;font:800 28px/1 ui-monospace,monospace}.stage-code{letter-spacing:.16em;font:800 8px/1 ui-monospace,monospace;display:block}.stage-lane h2{letter-spacing:-.01em;max-width:290px;margin:4px 0 0;font-size:12px;line-height:1.05}.stage-lane__grid{opacity:.35;background-image:linear-gradient(#57635f14 1px,#0000 1px),linear-gradient(90deg,#57635f0f 1px,#0000 1px);background-size:34px 34px;height:calc(100% - 66px)}.system-node{color:#263633;border:1px solid #8fa09a;border-left:3px solid var(--green);background:#fdfdf9f2;border-radius:5px;align-items:center;gap:9px;width:100%;height:100%;padding:6px 11px 6px 8px;transition:opacity .18s,transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;box-shadow:0 2px 5px #1b2b2714}.system-node:hover,.system-node:focus-visible{z-index:30;border-color:#2f766a;box-shadow:0 6px 16px #1939322e}.system-node--instrument{background:#f5f8f4;border-radius:22px 5px 5px 22px}.system-node--instrument .node-icon{border:1px solid #8eaaa3;border-radius:50%}.system-node--hub{color:#fff;background:#654e7f;border:2px solid #4c3567;border-radius:32px 8px;padding:8px 15px;box-shadow:inset 0 0 0 3px #ffffff24,0 8px 16px #3a254f38}.system-node--hub .node-icon{color:#fff;background:#ffffff26;width:38px;height:38px}.system-node--hub .node-copy strong{font-size:12px}.system-node--hub .node-copy small{color:#e8dff0}.system-node--governance{background:#eef0ec;border-left-color:#65706f}.node-icon{width:25px;height:25px;color:var(--green-dark);background:#e5eee9;border-radius:5px;flex:none;justify-content:center;align-items:center;display:inline-flex}.node-copy{min-width:0;display:block}.node-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.08;display:block;overflow:hidden}.node-copy small{color:#75817e;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font:700 7px/1 ui-monospace,monospace;display:block;overflow:hidden}.funnel-badges{flex:none;gap:2px;margin-left:auto;display:inline-flex}.funnel-badge{color:#fff;letter-spacing:.02em;border-radius:3px;padding:2px 3px;font:900 5.5px/1 ui-monospace,monospace}.funnel-badge--tofu,.funnel-detail-badge--tofu{background:#168476}.funnel-badge--mofu,.funnel-detail-badge--mofu{background:#a36b18}.funnel-badge--bofu,.funnel-detail-badge--bofu{background:#9c3f70}.confidence-dot{border:2px solid #fff;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 1px #1e2d2a3b}.system-node .confidence-dot{margin-left:2px}.confidence-dot--publicly-referenced{background:#27775e}.confidence-dot--recommended{background:#b37b22}.confidence-dot--optional-example{background:#7b6b91}.system-node.is-active{border-color:#17877c;transform:scale(1.035);box-shadow:0 0 0 3px #17877c2e,0 7px 18px #17534b38;z-index:20!important}.system-node.is-selected{border-color:#152f2b;box-shadow:0 0 0 3px #2f6f653b,0 8px 18px #182f2a33;z-index:21!important}.system-node.is-connected{border-color:#4b7d75}.system-node.is-dimmed{opacity:.36;filter:saturate(.5)}.system-node.is-funnel-muted{opacity:.27;filter:grayscale(.7)}.system-node.is-funnel-muted.is-active,.system-node.is-funnel-muted.is-selected{opacity:1;filter:none}.system-node.role-lens-on{opacity:.45}.system-node.role-lens-on.role-own{opacity:1;border-width:2px;border-color:#146b59;box-shadow:0 0 0 2px #146b592e}.system-node.role-lens-on.role-co-own{opacity:.92;border-width:2px;border-color:#659447}.system-node.role-lens-on.role-influence{opacity:.72;border-color:#998445}.system-node.role-lens-on.is-active,.system-node.role-lens-on.is-selected{opacity:1}.node-tooltip{z-index:100;color:#eef6f2;width:220px;box-shadow:var(--shadow);pointer-events:none;background:#213632;border-radius:6px;padding:10px;font-size:9px;line-height:1.4;display:none;position:absolute;top:50%;left:calc(100% + 9px);transform:translateY(-50%)}.node-tooltip strong,.node-tooltip em{display:block}.node-tooltip strong{margin-bottom:3px;font-size:10px}.node-tooltip em{color:#a9c6bf;text-transform:uppercase;margin-top:5px;font-size:8px;font-style:normal}.system-node:hover .node-tooltip,.system-node:focus-visible .node-tooltip{display:block}.react-flow__handle{opacity:.85;background:#456660;border:1px solid #fff;width:5px;min-width:5px;height:5px;min-height:5px}.data-edge .react-flow__edge-path{stroke-width:1.45px;opacity:.68}.data-edge.flow-bidirectional .react-flow__edge-path{stroke-width:1.55px}.data-edge.flow-feedback .react-flow__edge-path{stroke-width:1.6px;stroke-dasharray:8 5}.data-edge.flow-control .react-flow__edge-path{stroke-width:1px;stroke-dasharray:3 4;opacity:.4}.data-edge.is-emphasized .react-flow__edge-path{stroke-width:2.4px;opacity:.96}.data-edge.is-dimmed .react-flow__edge-path{opacity:.16}.data-edge.is-funnel-muted .react-flow__edge-path{opacity:.14}.data-edge.is-funnel-match .react-flow__edge-path{opacity:.82}.data-edge.is-funnel-match.is-dimmed .react-flow__edge-path{opacity:.16}.data-edge.is-active .react-flow__edge-path{stroke-width:3.4px;opacity:1;stroke-dasharray:9 5;filter:drop-shadow(0 0 3px);animation:1.1s linear infinite dash-flow}.edge-label{z-index:3;color:#3f4d4a;text-align:center;pointer-events:none;opacity:.58;background:#faf9f5db;border:1px solid;border-radius:3px;max-width:132px;padding:2px 4px;font:650 6.5px/1.12 ui-monospace,monospace;display:block;position:absolute}.data-edge.is-active .edge-label,.data-edge.is-emphasized .edge-label{z-index:8;opacity:1;font-size:8px;box-shadow:0 2px 6px #1e2c291f}.data-edge.is-dimmed .edge-label{opacity:.12}.data-edge.is-funnel-muted .edge-label{opacity:.08}.data-edge.is-funnel-match .edge-label{opacity:.7}.data-edge.is-funnel-match.is-dimmed .edge-label{opacity:.12}.data-edge.is-active .edge-label,.data-edge.is-emphasized .edge-label{opacity:1}.data-particle{filter:drop-shadow(0 0 3px)}@keyframes dash-flow{to{stroke-dashoffset:-28px}}.pfd-minimap{border:1px solid #abb5ae;border-radius:6px;box-shadow:0 5px 14px #1b2a271f;background:#faf9f5!important;width:158px!important;height:84px!important;bottom:12px!important;right:14px!important}.react-flow__attribution{display:none}.details-panel{z-index:40;background:#fbfaf6fa;border-left:1px solid #aeb8b1;flex-direction:column;width:min(420px,34vw);animation:.2s ease-out panel-in;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 30px #1a2a2724}@keyframes panel-in{0%{opacity:0;transform:translate(20px)}}.details-handle{display:none}.details-header{border-bottom:1px solid #d6d9d4;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 10px;display:flex}.details-header h2{color:#20332f;letter-spacing:-.025em;margin:5px 0 0;font-size:22px;line-height:1.08}.details-badges,.details-actions{flex-wrap:wrap;gap:6px;padding:9px 18px 0;display:flex}.confidence-badge,.role-badge,.funnel-detail-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;align-items:center;min-height:24px;padding:3px 8px;font-size:9px;font-weight:800;display:inline-flex}.funnel-detail-badge{color:#fff}.confidence-badge--publicly-referenced{color:#1b644d;background:#dcece4}.confidence-badge--recommended{color:#79500f;background:#f4e8ca}.confidence-badge--optional-example{color:#5b4773;background:#e9e2f0}.role-badge{color:#3d5550;background:#e6ebe7}.details-actions{border-bottom:1px solid #d6d9d4;padding-bottom:9px}.details-actions button{color:#395049;background:#f7f7f2;border:1px solid #bdc7c0;border-radius:5px;align-items:center;gap:5px;padding:6px 8px;font-size:9px;font-weight:750;display:inline-flex}.details-actions button.active{color:#fff;border-color:var(--green);background:var(--green)}.details-scroll{flex:1;padding:4px 18px 28px;overflow:auto}.details-scroll section{border-bottom:1px solid #e0e2dd;padding:12px 0}.details-scroll h3{color:#477168;text-transform:uppercase;letter-spacing:.1em;margin:0 0 6px;font-size:9px;line-height:1.2}.details-scroll p,.details-scroll li{color:#43514e;font-size:11px;line-height:1.48}.details-scroll p{margin:0}.details-scroll ul{margin:0;padding-left:15px}.details-scroll li+li{margin-top:3px}.details-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.source-note a,.source-links a{color:#276d60;align-items:center;gap:5px;margin-top:8px;font-size:10px;font-weight:750;display:inline-flex}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#131f1d7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.sources-modal{border:1px solid #aeb9b1;border-top:5px solid var(--green);background:#fbfaf6;border-radius:10px;width:min(680px,100%);max-height:min(760px,100vh - 40px);padding:22px;overflow:auto;box-shadow:0 24px 70px #0d1b184d}.sources-modal>header{justify-content:space-between;align-items:flex-start;display:flex}.sources-modal h2{margin:4px 0 0;font-size:26px}.sources-modal>p{color:#53615e;font-size:12px;line-height:1.5}.sources-modal h3{text-transform:uppercase;letter-spacing:.08em;margin:18px 0 8px;font-size:11px}.confidence-explainer{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.confidence-explainer article{background:#f4f4ef;border:1px solid #d1d6d0;border-radius:7px;align-items:flex-start;gap:8px;padding:12px;display:flex}.confidence-explainer h3{margin:0 0 5px;font-size:9px}.confidence-explainer p{color:#57635f;margin:0;font-size:10px;line-height:1.4}.source-links{padding-left:20px}.source-links li{margin:7px 0}.source-links a{margin:0}.disclaimer-card{background:#eceeea;border-left:3px solid #65736f;padding:12px}.sources-modal>small{color:#727a78;font-size:9px;display:block}.status-strip{z-index:45;color:#dce8e4;background:#1f302d;border-top:1px solid #101b19;grid-template-columns:minmax(330px,1.2fr) minmax(420px,2fr) minmax(260px,1fr);align-items:center;gap:14px;min-width:0;padding:10px 16px;display:grid;box-shadow:0 -5px 16px #1b2a271f}.legend-title{color:#91aaa4;text-transform:uppercase;letter-spacing:.13em;margin-bottom:7px;font:800 8px/1 ui-monospace,monospace;display:block}.legend-items{flex-wrap:wrap;gap:6px 12px;display:flex}.legend-items span{color:#c3d1cd;align-items:center;gap:5px;font-size:8px;display:inline-flex}.legend-line{background:#888;border-radius:2px;width:18px;height:3px;display:inline-block}.legend-line--event{background:#23a899}.legend-line--identity{background:#9c76c8}.legend-line--commerce{background:#d18b32}.legend-line--product{background:#609b67}.legend-line--audience{background:#cf5a96}.legend-line--service{background:#5597ca}.legend-line--analytics{background:#6687b4 repeating-linear-gradient(90deg,#6687b4 0 5px,#0000 5px 8px)}.legend-line--governance{background:#909a98}.narrative-block{min-width:0}.narrative-title{align-items:baseline;gap:9px;display:flex}.narrative-title span{color:#86aaa1;text-transform:uppercase;white-space:nowrap;font:750 8px/1 ui-monospace,monospace}.narrative-title strong{color:#f4f7f5;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.narrative-block p{color:#c2cfcb;height:28px;margin:5px 0;font-size:9px;line-height:1.45;overflow:hidden}.progress-track{background:#3d4d49;border-radius:4px;height:3px;overflow:hidden}.progress-track span{background:#77b1a5;height:100%;transition:width .1s linear;display:block}.status-meta{text-align:right;min-width:0}.status-meta>span{color:#9ac1b8;text-transform:uppercase;margin-bottom:6px;font:800 9px/1 ui-monospace,monospace;display:block}.status-meta small{color:#8fa19d;max-height:29px;font-size:8px;line-height:1.4;display:block;overflow:hidden}@media (width<=1180px){.brand-lockup{min-width:220px}.brand-kicker,.toggle-button span,.view-cluster,.speed-select{display:none}.scenario-select{width:160px}.status-strip{grid-template-columns:1fr 1.7fr}.status-meta{display:none}}@media (width<=760px){.app-shell{grid-template-rows:168px minmax(0,1fr) 92px}.toolbar{flex-wrap:wrap;align-items:flex-start;gap:5px;padding:8px}.brand-lockup{flex:100%;min-width:0}.brand-lockup h1{font-size:13px}.toolbar-actions{flex-wrap:wrap;justify-content:flex-start;gap:4px;width:100%}.scenario-select,.funnel-select{flex:145px;width:auto}.toggle-button,.toolbar-actions>.icon-button,.language-switch{flex:none}.toggle-button{justify-content:center;width:34px;padding:0}.language-switch button{padding:0 5px}.details-panel{border-top:1px solid #9aa69e;border-left:0;border-radius:14px 14px 0 0;width:100%;height:min(62vh,560px);top:auto;box-shadow:0 -14px 30px #1a2a2733}.details-handle{background:#aab3ae;border-radius:4px;width:38px;height:4px;margin:7px auto 0;display:block}.details-header{padding-top:8px}.details-header h2{font-size:18px}.details-grid{grid-template-columns:1fr}.status-strip{grid-template-columns:1fr;padding:9px 10px}.legend-block,.narrative-title span{display:none}.pfd-minimap{width:112px!important;height:62px!important}.confidence-explainer{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.data-particle{display:none}}@media print{html,body,#root{overflow:visible}.app-shell{grid-template-rows:54px 1fr 72px;height:100vh}.toolbar-actions,.details-panel,.pfd-minimap{display:none}.brand-lockup h1{white-space:normal}}
