.react-flow{direction:ltr}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.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 .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.react-flow__edge{pointer-events:visibleStroke;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:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__connectionline{z-index:1001}.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:-webkit-grab;cursor:grab;position:absolute}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:-webkit-grab;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background:#1a192b;border:1px solid #fff;border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-top{top:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{top:50%;right:-4px;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.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.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{background:#ffffff80;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}.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-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{color:#222;text-align:center;background-color:#fff;border:1px solid #1a192b;border-radius:3px;width:150px;padding:10px;font-size:12px}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.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:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.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{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.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:#3367d9;border:1px solid #fff;border-radius:1px;width:4px;height:4px;transform: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:0 solid #3367d9}.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%}:root{color:#12212f;--app-ocean-bg:#102847;--role-x-bg:#dceeff;--role-y-bg:#d8dee6;--role-context-bg:#d6f1de;--role-y-target-bg:#1f4f8d;--role-y-target-text:#fff;background:#102847;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}*{box-sizing:border-box}body{background:var(--app-ocean-bg);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #9db0c2;border-radius:8px;padding:.4rem .7rem}button:hover{background:#eaf1f8}button:disabled{opacity:.55;cursor:not-allowed}button.active{color:#fff;background:#1e6eb8;border-color:#1e6eb8}button.danger{color:#c53a3a;border-color:#c53a3a}input,select,textarea{background:#fff;border:1px solid #b5c4d2;border-radius:8px;padding:.4rem .6rem}input:disabled,select:disabled,textarea:disabled{color:#3f566b;cursor:default;background:#eef3f8;border-color:#c7d4e0}.app-shell{background:var(--app-ocean-bg);flex-direction:column;height:100vh;padding:1rem;display:flex;overflow:hidden}.app-root{background:var(--app-ocean-bg);min-height:100vh;position:relative}.app-shell-locked{filter:grayscale()blur(1px);pointer-events:none;-webkit-user-select:none;user-select:none}.startup-lock-backdrop{z-index:2000;background:#12212f85;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.startup-lock-modal{background:#fff;border:1px solid #d8e2eb;border-radius:12px;flex-direction:column;gap:.55rem;width:min(360px,92vw);padding:1rem;display:flex;box-shadow:0 16px 40px #12212f47}.startup-lock-modal h2{margin:0;font-size:1.1rem}.startup-lock-modal p{color:#486175;margin:0}.startup-lock-error{color:#b73232;font-weight:600}.startup-lock-modal button{align-self:flex-end}.app-header h1{color:#fff;margin:0}.app-header p{color:#fff;margin:.25rem 0 1rem}.app-header-main{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.app-header-main>div{min-width:0}.app-header-main .app-safety-note{color:#e6f0fa;margin:0;font-size:.92rem}.info-backdrop{z-index:1900;background:#12212f6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.info-modal{background:#fff;border:1px solid #d8e2eb;border-radius:12px;width:min(680px,95vw);max-height:min(84vh,760px);overflow:auto;box-shadow:0 18px 44px #12212f42}.info-modal-header{background:#fff;border-bottom:1px solid #e4ebf2;justify-content:space-between;align-items:center;gap:.6rem;padding:.8rem .9rem;display:flex;position:sticky;top:0}.info-modal-header h2{margin:0;font-size:1.15rem}.info-modal-body{flex-direction:column;gap:.6rem;padding:.9rem;line-height:1.5;display:flex}.info-modal-body p{margin:0}.info-copyright{color:#4d6478;margin-top:.2rem}.page{flex-direction:column;gap:1rem;min-height:0;display:flex}.page-context,.page-context .grid-context{flex:1;min-height:0;overflow:hidden}.page-context .context-col{min-height:0}.page-context .context-col .panel-card{height:100%}.page-context .context-col-elements .panel-card-body,.page-context .context-col-right .panel-card-body{flex:1;min-height:0;overflow:hidden}.context-element-list-scroll,.exploration-list-scroll{flex:1;min-height:0;padding-right:.15rem;overflow-y:auto}.context-element-list-scroll>.empty-state,.exploration-list-scroll>.empty-state{height:100%}.page-optimize,.page-optimize .grid-optimize{flex:1;min-height:0;overflow:hidden}.page-optimize .optimize-col,.page-optimize .stack-panels{min-height:0}.page-optimize .optimize-col .panel-card,.page-optimize .stack-panels .panel-card{height:100%}.page-optimize .optimize-col-variables .panel-card-body{flex:1;min-height:0;overflow:hidden}.page-optimize .optimize-col-variables .variable-list-scroll,.page-optimize .optimize-col-right .panel-card-body{flex:1;min-height:0;overflow-y:auto}.page-optimize .optimize-col-map .panel-card-body{flex:1;min-height:0;overflow:hidden}.page-optimize .optimize-col-map .map-wrapper{flex:1;height:100%;min-height:0}.toolbar{background:#fff;border:1px solid #d8e2eb;border-radius:12px;flex-wrap:wrap;gap:.75rem;padding:.75rem;display:flex}.toolbar-group,.toolbar-group label{align-items:center;gap:.5rem;display:flex}.toolbar-right{margin-left:auto}.toolbar-data-actions{flex-wrap:wrap;gap:.4rem;display:flex}.toolbar-selection-status{background:#f8fbfe;border:1px solid #d8e2eb;border-radius:8px;flex-wrap:wrap;gap:.75rem;padding:.35rem .55rem}.toolbar-selection-status span{color:#486175}.environment-menu,.context-create-menu{position:relative}.context-create-menu-panel{z-index:30;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.4rem;min-width:260px;padding:.45rem;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 25px #12212f26}.environment-menu-panel{z-index:30;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.3rem;min-width:220px;padding:.4rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 25px #12212f26}.environment-menu-panel button{text-align:left}.collector-actions-menu{position:relative}.collector-actions-menu-panel{z-index:25;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.25rem;min-width:180px;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 25px #12212f26}.collector-actions-menu-panel button{text-align:left}.exploration-actions-menu{position:relative}.exploration-actions-menu-panel{z-index:25;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.25rem;min-width:210px;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 25px #12212f26}.exploration-actions-menu-panel button{text-align:left}.variable-actions-menu{position:relative}.variable-actions-menu-panel{z-index:25;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.25rem;min-width:180px;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 25px #12212f26}.variable-actions-menu-panel button{text-align:left}.variable-collector-shell{flex-direction:column;height:100%;min-height:0;display:flex}.variable-list-scroll{flex-direction:column;flex:1;min-height:0;padding-right:.15rem;display:flex;overflow-y:auto}.variable-collector-shell>.panel-card{height:100%}.variable-list-scroll>.empty-state{flex:1}.grid-context,.grid-optimize{grid-template-columns:1fr;gap:1rem;display:grid}.grid-optimize>*{min-height:0}.optimize-col-variables .panel-card{height:100%}.optimize-col-variables .panel-card-body{flex:1;min-height:0}@media (width>=1150px){.grid-context{grid-template-columns:minmax(280px,1fr) minmax(540px,1.9fr) minmax(300px,1fr);align-items:stretch;min-height:calc(100vh - 260px)}.grid-optimize{grid-template-columns:minmax(300px,1fr) minmax(560px,2fr) minmax(320px,1fr);align-items:stretch;min-height:calc(100vh - 260px)}.grid-optimize>.optimize-col,.grid-optimize>.stack-panels{min-height:0}.optimize-col .panel-card,.grid-optimize>.stack-panels .panel-card,.optimize-col-variables .panel-card{height:100%}.optimize-col-variables .panel-card-body{flex:1;min-height:0}.optimize-col-variables .variable-list-scroll{flex:1;padding-right:.15rem;overflow-y:auto}.optimize-col-map .panel-card-body,.optimize-col-right .panel-card-body{flex:1;min-height:0;overflow:auto}.grid-optimize>.stack-panels.optimize-col-right{height:100%}}.panel-card{background:#fff;border:1px solid #d8e2eb;border-radius:12px;flex-direction:column;min-height:220px;display:flex}.panel-card-header{border-bottom:1px solid #e4ebf2;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem;display:flex}.panel-card-header h3{margin:0;font-size:1rem}.panel-card-context-map .panel-card-header{justify-content:flex-end;position:relative}.panel-card-context-map .panel-card-header h3{position:absolute;left:50%;transform:translate(-50%)}.panel-card-causal-map .panel-card-header{justify-content:flex-end;position:relative}.panel-card-causal-map .panel-card-header h3{position:absolute;left:50%;transform:translate(-50%)}.panel-card-body{flex-direction:column;gap:.75rem;min-height:180px;padding:.75rem;display:flex}.stack-panels{flex-direction:column;gap:1rem;display:flex}.editable-list ul,.optimization-list,.parameter-list,.edge-list,.overview-tree{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.overview-tree ul{flex-direction:column;gap:.2rem;margin:.25rem 0 .25rem 1.8rem;padding:0;list-style:outside;display:flex}.overview-tree ul ul{margin-left:1.8rem}.overview-layout{flex-direction:column;gap:.15rem;min-width:0;padding-right:.1rem;display:flex}.overview-empty{margin:.15rem 0}.overview-panels-layout{grid-template-columns:minmax(460px,1.7fr) minmax(300px,1fr);align-items:stretch;gap:1rem;min-height:calc(100vh - 260px);display:grid}.overview-panels-layout-graphic-only{grid-template-columns:1fr}.overview-panels-layout>.panel-card{height:100%}.overview-tree-panel .panel-card-body{flex:1;min-height:0;overflow:auto}.overview-graphic-panel .panel-card-body{flex:1;min-height:0;padding:.65rem}.overview-graphic-panel-compact .panel-card-body{min-height:0;max-height:clamp(420px,60vh,680px)}.overview-graphic-panel{background:var(--app-ocean-bg);border-color:var(--app-ocean-bg)}.overview-graphic-panel .panel-card-header{background:var(--app-ocean-bg);border-bottom-color:var(--app-ocean-bg)}.overview-graphic-panel .panel-card-header h3{color:#fff}.overview-graphic-card{border:1px solid var(--app-ocean-bg);background:var(--app-ocean-bg);border-radius:14px;flex-direction:column;min-height:100%;display:flex;overflow:hidden}.overview-graphic-card svg{width:100%;height:auto;display:block}.overview-graphic-label-button{cursor:pointer}.overview-graphic-label-button rect{fill:var(--app-ocean-bg)}.overview-graphic-label-button text{fill:#f2f6fb;font-size:16px}.overview-graphic-label-button:hover rect{fill:var(--app-ocean-bg)}.overview-graphic-label-button:focus-visible rect,.overview-graphic-label-button:focus rect{stroke:#f2f6fb;stroke-width:1.1px}.overview-graphic-label-button.disabled{cursor:default}.editable-list-add,.inline-form,.stack-row,.inline-actions{align-items:center;gap:.4rem;display:flex}.stack-row{flex-wrap:wrap}.variable-form{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.variable-form input,.variable-form select{min-width:100px}.variable-key-search{flex:260px;min-width:240px;position:relative}.variable-key-search input{width:100%}.variable-key-suggestion-panel{z-index:35;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.25rem;max-height:260px;padding:.4rem;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 10px 25px #12212f26}.variable-key-suggestion-title{color:#486175;margin:.15rem 0 .05rem;font-size:.8rem;font-weight:600}.variable-key-suggestion-item{text-align:left;flex-direction:column;gap:.1rem;width:100%;padding:.35rem .45rem;display:flex}.variable-description-input{resize:vertical;width:100%;min-height:76px}.variable-edit-wrap{flex-direction:column;gap:.5rem;width:100%;display:flex}.checkbox-label{color:#486175;align-items:center;gap:.35rem;display:inline-flex}.variable-meta{margin:.25rem 0 0;font-size:.9rem}.variable-list-item{cursor:pointer}.variable-list-item-role-x{background:var(--role-x-bg)!important}.variable-list-item-role-y{background:var(--role-y-bg)!important}.variable-list-item-role-y-target{color:var(--role-y-target-text);background:var(--role-y-target-bg)!important}.variable-list-item-role-y-target .variable-meta,.variable-list-item-role-y-target .muted{color:#eaf3ff!important}.variable-list-item-role-context{background:var(--role-context-bg)!important}.variable-description{background:#f7fbff;border:1px solid #dbe5ee;border-radius:8px;width:100%;margin:.35rem 0 0;padding:.45rem .55rem}.editable-list li,.optimization-list li,.parameter-list li,.edge-list li{background:#fbfdff;border:1px solid #e1e8ef;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem;display:flex}.editable-list li.selected,.optimization-list li.selected{background:#edf5fd;border-color:#1e6eb8}.editable-list-row{align-items:center;gap:.4rem;width:100%;display:flex}.editable-list-row span{flex:1}.editable-list-actions{gap:.3rem;display:flex}.map-wrapper{border:1px solid #d6e2ec;border-radius:8px;width:100%;height:clamp(460px,62vh,760px);position:relative;overflow:hidden}.map-wrapper-expanded{height:80vh}.map-wrapper-overlay{flex:1;height:auto;min-height:360px}.empty-state{background:#f6fafe;border:1px dashed #b4c5d7;border-radius:8px;padding:.8rem}.empty-state-title{margin:0;font-weight:600}.empty-state-message{color:#4d6478;margin:.35rem 0 0}.confirm-backdrop{z-index:10;background:#12212f66;place-items:center;display:grid;position:fixed;inset:0}.confirm-dialog{background:#fff;border-radius:10px;width:min(460px,90vw);padding:1rem}.confirm-dialog h3{margin-top:0}.confirm-actions{justify-content:flex-end;gap:.4rem;display:flex}.muted{color:#5a6f82}.section-label{margin:0;font-weight:600}.testing-intro-card{background:#f9fcff;border:1px solid #d9e5f0;border-radius:10px;flex-direction:column;gap:.55rem;padding:.8rem;display:flex}.testing-intro-steps{flex-direction:column;gap:.35rem;margin:0;padding-left:1.25rem;display:flex}.edge-list-wrap{margin-top:.6rem}.causal-inline-links-scroll{max-height:clamp(180px,24vh,320px);padding-right:.1rem;overflow-y:auto}.edge-row-main{justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:flex}.edge-description-preview{width:100%;margin:.2rem 0 0}.edge-description-editor{flex-direction:column;gap:.35rem;width:100%;margin-top:.35rem;display:flex}.edge-description-editor textarea{resize:vertical;width:100%;min-height:95px}.links-toggle-row{justify-content:flex-start;gap:.45rem;display:flex}.no-links-state{color:#4d6478;background:#f6fafe;border:1px dashed #b4c5d7;border-radius:8px;padding:.65rem}.description-block{border:1px solid #dbe5ee;border-radius:8px;padding:.6rem}.description-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.description-editor{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.description-editor textarea{resize:vertical;width:100%}.iteration-section{background:#fbfdff;border:1px solid #e1e8ef;border-radius:8px;padding:.6rem}.iteration-section label{flex-direction:column;gap:.3rem;min-width:180px;display:flex}.iteration-text-actions{align-items:center;gap:.45rem;margin-top:.2rem;display:flex}.iteration-text-editor{margin-top:.35rem}.iteration-text-editor label{flex-direction:column;gap:.3rem;display:flex}.iteration-text-editor textarea{resize:vertical;min-height:110px}.parameter-label-wrap{flex-direction:column;gap:.2rem;display:flex}.parameter-input-with-unit{align-items:center;gap:.45rem;display:inline-flex}.parameter-input-with-unit input{min-width:200px}.parameter-unit{white-space:nowrap;text-align:left;min-width:42px}.parameter-row-y-target{color:var(--role-y-target-text);background:var(--role-y-target-bg)!important;border-color:#173d6f!important}.parameter-row-y-target .muted{color:#eaf3ff!important}.parameter-row-x{background:var(--role-x-bg)!important;border-color:#b9d5ee!important}.parameter-row-y{background:var(--role-y-bg)!important;border-color:#c2cad4!important}.save-iteration-row{justify-content:flex-end;margin-top:.6rem;display:flex}.iteration-panel-actions{align-items:center;gap:.45rem;display:flex}.history-trigger-row{justify-content:flex-end;display:flex}.context-add-form{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.context-add-form input{min-width:180px}.context-element-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.context-element-list li{background:#fbfdff;border:1px solid #e1e8ef;border-radius:8px;padding:.5rem}.context-element-list li.selected{background:#edf5fd;border-color:#1e6eb8}.context-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.context-description-preview{color:#4f667a;white-space:pre-wrap;margin:.45rem 0 0}.context-edit-area{flex-direction:column;gap:.45rem;display:flex}.exploration-create-form{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.exploration-create-mode-switch{gap:.4rem;width:100%;display:flex}.exploration-create-mode-switch button.active{color:#fff;background:#1f6fbf;border-color:#1f6fbf}.exploration-csv-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.exploration-csv-actions .muted{margin:0}.exploration-create-form input{min-width:220px}.exploration-edit-wrap{flex-direction:column;gap:.45rem;width:100%;display:flex}.exploration-description-input{resize:vertical;width:100%;min-height:120px}.exploration-description{margin:.2rem 0 0;font-size:.9rem}.scope-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.hidden-file-input{display:none}.map-viewer-backdrop{z-index:1200;background:#12212f73;padding:12px;display:flex;position:fixed;inset:0}.map-viewer-overlay{background:#fff;border:1px solid #d8e2eb;border-radius:12px;flex-direction:column;width:100%;height:100%;display:flex;box-shadow:0 16px 40px #12212f40}.map-viewer-titlebar{border-bottom:1px solid #e4ebf2;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.map-viewer-titlebar h2{margin:0;font-size:1.1rem}.map-viewer-title-actions{align-items:center;gap:.45rem;display:inline-flex}.map-viewer-content{flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:.75rem;display:flex;overflow:auto}.iteration-evolution-table-wrap{flex:1;width:100%;min-height:0;position:relative;overflow:auto}.iteration-evolution-table-block{flex-direction:column;gap:.5rem;height:100%;min-height:0;display:flex;position:relative}.history-overlay-layout{flex-direction:column;height:100%;min-height:0;display:flex}.history-content-scroll{flex:1;min-height:0;overflow:auto}.iteration-column-slider-row{background:#fff;border-bottom:1px solid #e4ebf2;justify-content:flex-end;align-items:center;gap:.5rem;padding:0 0 .35rem;display:flex}.iteration-column-slider-row label{color:#486175}.iteration-column-controls-right{align-items:center;gap:.45rem;margin-left:auto;display:inline-flex}.iteration-column-stepper{align-items:center;gap:.25rem;display:inline-flex}.iteration-column-stepper button{min-width:38px;padding:.2rem .45rem;line-height:1}.iteration-evolution-table{border-collapse:collapse;width:100%;min-width:520px}.iteration-evolution-table th,.iteration-evolution-table td{text-align:left;vertical-align:top;border:1px solid #dbe5ee;padding:.45rem .5rem}.iteration-evolution-table td:first-child{font-weight:500}.iteration-evolution-table th{z-index:10;background:#f3f8fd;position:sticky;top:0}.iteration-header-cell{position:relative;overflow:visible}.iteration-header-cell.iteration-column-target{background:#d6dee8}.iteration-header-cell.iteration-column-baseline{background:#cbd5e1}.iteration-header-toggle{color:inherit;background:0 0;border:0;border-radius:0;padding:0;font-weight:600}.iteration-header-toggle:hover{background:0 0;text-decoration:underline}.iteration-row-header-button{text-align:left;color:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:.1rem .3rem}.iteration-row-header-button:hover{background:#eaf1f8}.iteration-row-header-button.active{color:#fff;background:#1e6eb8;border-color:#1e6eb8}.iteration-history-row-selected td{outline-offset:-2px;outline:2px solid #1e6eb8}.iteration-header-details-popover{z-index:120;background:#fff;border:1px solid #d8e2eb;border-radius:8px;width:min(460px,100vw - 48px);max-height:min(72vh,680px);padding:.45rem .55rem;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 10px 25px #12212f26}.iteration-header-details-popover-floating{z-index:2200;position:fixed;top:0;left:0;right:auto}.iteration-header-details-popover p{color:#2a3f52;white-space:pre-wrap;margin:.2rem 0}.iteration-details-edit-wrap{flex-direction:column;gap:.4rem;display:flex}.iteration-details-edit-wrap label{flex-direction:column;gap:.25rem;display:flex}.iteration-details-edit-wrap textarea{resize:vertical;width:100%}.iteration-details-values-list{background:#fbfdff;border:1px solid #dbe5ee;border-radius:8px;flex-direction:column;gap:.35rem;max-height:200px;padding:.4rem;display:flex;overflow:auto}.iteration-details-actions{justify-content:flex-end;gap:.35rem;margin-top:.2rem;display:flex}.iteration-details-actions-subtle button{opacity:.85}.iteration-details-actions-danger{border-top:1px solid #e4ebf2;justify-content:flex-start;padding-top:.15rem}.iteration-comparison-diagram{flex-direction:column;gap:.9rem;display:flex;position:relative}.iteration-comparison-section{z-index:1;background:#fbfdff;border:1px solid #dbe5ee;border-radius:8px;padding:.65rem;position:relative}.iteration-comparison-section h4{margin:0 0 .55rem}.iteration-comparison-section-body{position:relative}.iteration-comparison-section-columns{color:#4d6478;grid-template-columns:minmax(120px,180px) 1fr minmax(72px,96px) minmax(70px,90px);align-items:center;gap:.65rem;margin:0 0 .3rem;padding:0 .5rem;font-size:.78rem;font-weight:700;display:grid}.iteration-comparison-section-columns-spacer{min-height:1px}.iteration-comparison-section-columns-change,.iteration-comparison-section-columns-unit{text-align:right}.iteration-comparison-overlay{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.iteration-comparison-polyline{fill:none;stroke-width:2px;stroke-opacity:.72}.iteration-comparison-polyline-target{stroke-dasharray:6 4;stroke-opacity:.56}.iteration-comparison-polyline-baseline{stroke-width:2.8px;stroke-opacity:.9}.iteration-comparison-polyline-test{stroke-opacity:.78}.iteration-comparison-polyline-bridge{stroke-dasharray:6 4;stroke-opacity:.62}.iteration-comparison-polyline-a{stroke:#5f86ad}.iteration-comparison-polyline-b{stroke:#6a9b7e}.iteration-comparison-polyline-c{stroke:#a07bb8}.iteration-comparison-polyline-d{stroke:#b08b57}.iteration-comparison-polyline-e{stroke:#5f9aa0}.iteration-comparison-rows{z-index:1;flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex;position:relative}.iteration-comparison-row{background:#ffffffd1;border:1px solid #e3ebf3;border-radius:8px;grid-template-columns:minmax(120px,180px) 1fr minmax(72px,96px) minmax(70px,90px);align-items:center;gap:.65rem;padding:.5rem;display:grid}.iteration-comparison-variable{font-weight:600}.iteration-comparison-variable-wrap{flex-direction:column;gap:.25rem;display:flex}.iteration-comparison-variable-meta{color:#4d6478;font-size:.78rem}.iteration-comparison-track-wrap{min-height:36px}.iteration-comparison-track{background:#d5e2ee;border-radius:99px;height:6px;margin-top:16px;position:relative}.iteration-comparison-marker{z-index:3;align-items:center;gap:.3rem;display:inline-flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.iteration-comparison-marker-dot{border:2px solid #fff;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 1px #2d4f6a}.iteration-comparison-marker-dot-target{border-radius:2px;transform:rotate(45deg)}.iteration-comparison-marker-dot-baseline{border-radius:2px}.iteration-comparison-marker-dot-test{border-radius:50%}.iteration-comparison-marker-a .iteration-comparison-marker-dot{background:#1e6eb8}.iteration-comparison-marker-b .iteration-comparison-marker-dot{background:#2f9155}.iteration-comparison-marker-c .iteration-comparison-marker-dot{background:#7b5aa6}.iteration-comparison-marker-d .iteration-comparison-marker-dot{background:#9a6f33}.iteration-comparison-marker-e .iteration-comparison-marker-dot{background:#3f7f86}.iteration-comparison-marker-label{font-size:.78rem;font-weight:700}.iteration-comparison-marker-value{white-space:nowrap;color:#2d4f6a;font-size:.76rem;position:absolute;top:-.9rem;left:.6rem}.iteration-comparison-unit{text-align:right;color:#4d6478}.iteration-comparison-change{text-align:right;font-size:.82rem;font-weight:600}.iteration-comparison-change-positive,.iteration-comparison-change-negative,.iteration-comparison-change-neutral{color:#4d6478}.iteration-comparison-fallback{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.iteration-comparison-fallback p{width:100%;margin:.2rem 0 0}.iteration-comparison-fallback-chip{background:#f4f9fe;border:1px solid #d4e1ec;border-radius:999px;padding:.1rem .45rem}.history-view-switch{gap:.45rem;display:flex}.history-top-row{background:#fff;border-bottom:1px solid #e4ebf2;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:0 0 .2rem;display:grid}.history-export-actions{gap:.45rem;display:flex}.history-export-stack{flex-direction:column;justify-self:end;align-items:flex-end;gap:.35rem;display:flex}.history-top-row-side{min-height:1px}.history-table-tools{align-items:flex-start;gap:.45rem;display:flex}.history-view-switch-wrap{justify-self:center}.comparison-selectors{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:0;display:flex}.comparison-filter-menu{position:relative}.comparison-filter-panel{z-index:35;background:#fff;border:1px solid #d8e2eb;border-radius:10px;flex-direction:column;gap:.25rem;min-width:260px;max-height:280px;padding:.45rem;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:auto;box-shadow:0 10px 25px #12212f26}.comparison-filter-option{color:#2a3f52;align-items:center;gap:.4rem;display:flex}.sort-rows-panel{min-width:300px;max-height:340px}.sort-rows-panel-shifted{top:0;left:140px;right:auto}.visualize-panel{background:#f8fbff;border-color:#cfddeb;gap:.5rem;min-width:95vw;max-width:95vw;max-height:86vh;overflow:auto}.visualize-panel-centered{z-index:80;position:fixed;top:180px;left:50%;transform:translate(-50%)}.visualize-title{color:#1e3448;margin:0;font-weight:600}.visualize-svg{background:#fff;border:1px solid #d5e1ed;border-radius:10px;width:100%;height:auto}.visualize-axis-label{fill:#2f475f;font-size:22px;font-weight:600}.visualize-axis-tick{fill:#4f657b;font-size:20px}.visualize-axis-tick-category{font-size:16px}.visualize-point-value{fill:#2f475f;paint-order:stroke fill;stroke:#fff;stroke-width:4px;stroke-linejoin:round;font-size:18px;font-weight:600}.sort-rows-title{color:#2a3f52;margin:.2rem 0 .1rem;font-weight:600}.sort-rows-compact-layout{align-items:center;gap:.55rem;display:flex}.sort-row-item{background:#fbfdff;border:1px solid #e3ebf3;border-radius:8px;justify-content:space-between;align-items:center;gap:.4rem;padding:.3rem .4rem;display:flex}.sort-row-item-selected{flex:1;min-height:40px}.sort-rows-arrow-stack{flex-direction:column;gap:.25rem;display:flex}.sort-rows-arrow-stack button{min-width:38px;padding:.2rem .4rem;line-height:1}.comparison-line-legend{flex-direction:column;gap:.25rem;min-width:180px;margin-bottom:.45rem;padding-bottom:.2rem;display:flex}.comparison-line-legend-item{color:#486175;align-items:center;gap:.35rem;font-size:.9rem;display:inline-flex}.diagram-header-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.2rem;display:flex}.diagram-header-controls{flex:1;min-width:0}.diagram-controls-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.diagram-controls-left{flex:1;min-width:0}.diagram-legend-stack{flex-direction:column;align-items:flex-start;gap:.35rem;min-width:280px;margin-left:auto;display:flex}.diagram-legend-stack .comparison-line-legend{text-align:left;align-items:flex-start;margin-bottom:0}.diagram-legend-stack .iteration-type-legend{justify-content:flex-start}.diagram-legend-stack .iteration-type-legend-hint{text-align:left;margin-bottom:0}@media (width<=980px){.history-top-row{grid-template-columns:1fr}.history-view-switch-wrap{justify-self:start}.history-export-stack{justify-self:start;align-items:flex-start}.diagram-header-row,.diagram-controls-row{flex-direction:column;align-items:stretch}.diagram-legend-stack{align-items:flex-start;min-width:0;margin-left:0}.diagram-legend-stack .comparison-line-legend{text-align:left;align-items:flex-start}.diagram-legend-stack .iteration-type-legend{justify-content:flex-start}.diagram-legend-stack .iteration-type-legend-hint{text-align:left}.overview-panels-layout{grid-template-columns:1fr;min-height:0}.grid-optimize{min-height:0}.overview-tree-panel .panel-card-body{max-height:none;overflow:visible}}.comparison-line-swatch{border-radius:99px;width:22px;height:2px}.iteration-type-legend{color:#486175;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-bottom:.15rem;font-size:.86rem;display:flex}.iteration-type-legend-item{align-items:center;gap:.35rem;display:inline-flex}.iteration-type-marker{background:#5f86ad;border:1px solid #2d4f6a;width:10px;height:10px;display:inline-block}.iteration-type-marker-target{background:#7d8b98;transform:rotate(45deg)}.iteration-type-marker-baseline{background:#35506b}.iteration-type-marker-test{background:#1f6feb;border-radius:50%}.iteration-type-legend-hint{color:#4d6478;margin:0 0 .45rem;font-size:.84rem}.diagram-export-snapshot .comparison-selectors{display:none}.diagram-export-fixed{background:#f1f4f8;border-radius:8px;width:1600px;max-width:1600px;padding:14px}.diagram-export-offscreen{pointer-events:none;width:0;height:0;position:fixed;top:0;left:-20000px;overflow:hidden}.causal-map-legend{color:#486175;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.15rem .2rem 0;font-size:.85rem;display:flex}.causal-map-legend-item{align-items:center;gap:.35rem;display:inline-flex}.causal-map-legend-swatch{border:1px solid #6f8497;border-radius:4px;width:13px;height:13px}.causal-map-legend-swatch-x{background:var(--role-x-bg)}.causal-map-legend-swatch-y{background:var(--role-y-bg)}.causal-map-legend-swatch-context{background:var(--role-context-bg)}.causal-map-legend-swatch-target{background:var(--role-y-target-bg)}.causal-variable-node{min-width:132px;min-height:34px;padding:0 2px}.causal-node-handle{opacity:1;background:#7f8f9e;border:1px solid #7f8f9e;border-radius:999px;width:5px;height:5px}.map-wrapper .react-flow__edge-path{stroke:#4f6274;stroke-linecap:round}.causal-variable-node-row{justify-content:space-between;align-items:center;gap:.45rem;width:100%;min-height:30px;display:flex}.causal-variable-node-row>span{text-align:center;flex:1;justify-content:center;align-items:center;min-height:30px;line-height:1.1;display:flex}.causal-node-iteration-toggle{border:1px solid #6f8497;border-radius:999px;width:12px;min-width:12px;height:12px;min-height:12px;padding:0}.causal-node-iteration-toggle-active{background:#1f9a55;border-color:#1f9a55}.causal-node-iteration-toggle-inactive{background:#9ba9b6;border-color:#8c9aa7}.causal-map-legend-dot{border:1px solid #6f8497;border-radius:999px;width:12px;height:12px;display:inline-block}.causal-map-legend-dot-active{background:#1f9a55;border-color:#1f9a55}.causal-map-legend-dot-inactive{background:#9ba9b6;border-color:#8c9aa7}.causal-map-sample-guide{pointer-events:none;opacity:.9;z-index:3;width:168px;height:104px;position:absolute;bottom:12px;left:64px}.causal-map-sample-guide svg{width:100%;height:100%;display:block}.context-parent-row{background:var(--role-y-target-bg);color:var(--role-y-target-text);border:1px solid #173d6f}.context-map-legend{color:#486175;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.15rem .2rem 0;font-size:.85rem;display:flex}.context-map-legend-item{align-items:center;gap:.35rem;display:inline-flex}.context-map-legend-swatch{border:1px solid #6f8497;border-radius:4px;width:13px;height:13px}.context-map-legend-swatch-parent{background:var(--role-y-target-bg)}.context-map-legend-swatch-element{background:#dceeff}.dag-link-description-dot{cursor:pointer;z-index:6;background:#fff;border:1px solid #35526a;border-radius:999px;width:10px;min-width:10px;height:10px;min-height:10px;padding:0;line-height:0;position:absolute;box-shadow:0 1px 4px #12212f33}.dag-edge-description-popup{color:#2a3f52;z-index:1300;white-space:pre-wrap;background:#fff;border:1px solid #d8e2eb;border-radius:8px;max-width:360px;padding:.45rem 1.55rem .45rem .55rem;line-height:1.3;position:fixed;transform:translate(-50%,-100%);box-shadow:0 10px 22px #12212f33}.dag-edge-description-popup-close{color:#35526a;cursor:pointer;background:#fff;border:1px solid #c7d5e3;border-radius:999px;width:20px;height:20px;padding:0;line-height:1;position:absolute;top:4px;right:4px}.iteration-history-row-x td{background:var(--role-x-bg)}.iteration-history-row-context td{background:var(--role-context-bg)}.iteration-history-row-y td{background:var(--role-y-bg)}.iteration-history-row-y-target td{background:var(--role-y-target-bg);color:var(--role-y-target-text)}.iteration-comparison-row-x{background:#dceeffd9}.iteration-comparison-row-context{background:var(--role-context-bg)}.iteration-comparison-row-y{background:#d8dee6e6}.iteration-comparison-row-y-target{color:var(--role-y-target-text);background:#1f4f8deb}.iteration-comparison-row-y-target .iteration-comparison-variable-meta,.iteration-comparison-row-y-target .iteration-comparison-unit,.iteration-comparison-row-y-target .iteration-comparison-change,.iteration-comparison-row-y-target .iteration-comparison-marker-value{color:#eaf3ff}
