.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;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:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation: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;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.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{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.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 rgba(0,89,220,.8)}.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{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.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{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.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:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,Helvetica Neue,sans-serif;background:#eef2f6;color:#334155;--workflow-gap: 12px;--workflow-inspector-width: 286px;--template-debug-width: 286px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#eef2f6;font-size:14px;line-height:1.4}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}#root{min-height:100vh}.app-shell{display:grid;grid-template-columns:248px 1fr 316px;gap:12px;min-height:calc(100vh - 94px);padding:0 12px 12px}.app-shell.template-mode{grid-template-columns:248px 1fr}.app-shell.sidebar-closed{grid-template-columns:1fr 360px}.app-shell.template-mode.sidebar-closed,.app-shell.rules-focus-mode{grid-template-columns:1fr}.app-shell.rules-focus-mode .left-panel,.app-shell.rules-focus-mode .right-panel{display:none}.app-shell.rules-focus-mode .main-panel{min-width:0}.app-frame{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;margin:8px 10px 12px;padding:8px 14px;border-radius:16px;border:1px solid #d7dde7;background:#fff;box-shadow:0 2px 10px #0f172a0d}.topbar-left,.topbar-right{display:grid;align-items:center;gap:12px}.topbar-left{grid-auto-flow:column;justify-content:start;gap:10px}.topbar-right{grid-auto-flow:column}.app-loading-shell,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background-color:#0f172a;background-size:cover;background-position:center;background-repeat:no-repeat}.app-loading-shell{color:#334155;font-size:1rem;font-weight:600}.login-card{display:grid;grid-template-columns:minmax(260px,330px) minmax(320px,380px);width:min(820px,100%);border:1px solid rgba(219,229,241,.86);border-radius:22px;background:#fffffff7;box-shadow:0 30px 90px #0f172a47;overflow:hidden;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-card-side{display:grid;align-content:center;justify-items:center;gap:12px;padding:38px 30px;text-align:center;background:linear-gradient(180deg,#eaf3ff,#f8fbff);border-right:1px solid #dbe5f1}.login-brand-frame{display:grid;place-items:center;width:108px;height:108px}.login-brand-logo{width:96px;height:auto;object-fit:contain}.login-eyebrow{margin:0;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.login-card-side h1{margin:0;font-size:2.1rem;line-height:1.1;color:#1e293b}.login-card-side p{margin:0;color:#475569;line-height:1.5;max-width:24ch}.login-product-pill{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:#2563eb1f;color:#1d4ed8;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.login-card-form{padding:40px 34px;display:grid;align-content:center}.login-form-header{display:grid;gap:6px;margin-bottom:18px}.login-form-header h2{margin:0;font-size:2rem;line-height:1.1;color:#1e293b}.login-form-header p{margin:0;color:#64748b;line-height:1.45}.login-form{display:grid;gap:12px}.field-label{font-size:.82rem;font-weight:700;color:#475569}.login-form input{min-height:46px;border-radius:12px;border:1px solid #cfd9e8;padding:0 14px;font-size:.95rem;color:#1e293b;background:#fff}.login-form input:focus{outline:2px solid rgba(59,130,246,.24);border-color:#93c5fd}.login-secondary-link{justify-self:end;margin-top:-4px;color:#4f6b95;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .12s ease,opacity .12s ease}.login-secondary-link:hover{color:#1d4ed8}.login-secondary-link:focus-visible{outline:2px solid rgba(59,130,246,.24);outline-offset:3px;border-radius:8px}.login-error{margin:6px 0 0;color:#b91c1c;font-size:.85rem;font-weight:600}@media(max-width:820px){.login-card{grid-template-columns:1fr}.login-card-side{border-right:0;border-bottom:1px solid #dbe5f1;padding:28px 24px}.login-card-form{padding:28px 24px}}.context-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em}.context-badge-primary,.context-badge-secondary{white-space:nowrap}.context-badge-divider{opacity:.45}.context-badge-user-combined{max-width:340px;background:#eff6ff;color:#1d4ed8}.context-badge-release-combined{align-items:flex-start;gap:10px;padding:9px 12px;border-radius:20px;background:#f4f8ff;color:#4a6185}.context-badge-release-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:#6f87ab;flex:0 0 auto}.context-badge-release-grid{display:grid;grid-template-columns:auto auto auto;column-gap:10px;row-gap:1px;align-items:baseline}.context-badge-release-label{font-size:.66rem;font-weight:700;letter-spacing:.08em;color:#6f87ab}.context-badge-release-value{font-size:.72rem;font-weight:700;color:#2f4667;white-space:nowrap}.context-badge-release-commit{font-weight:700;color:#2f4667}.context-badge-release-date{font-size:.72rem;font-weight:700;color:#3f587a;white-space:nowrap}.context-badge-label{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.72}.context-badge-label-light{opacity:.82}.topbar-title{display:grid;gap:0}.topbar-title strong{font-size:.9rem;color:#334155;letter-spacing:-.02em}.topbar-title span{font-size:.74rem;color:#64748b}.brand-logo-frame{display:flex;align-items:center;justify-content:center;width:38px;height:30px;overflow:hidden}.brand-logo{display:block;width:auto;max-width:38px;height:26px;object-fit:contain;object-position:left center}.icon-button{border:0;background:transparent;color:#475569;font-size:1.05rem;line-height:1;padding:4px 6px}.left-panel,.main-panel,.right-panel{display:flex;flex-direction:column;gap:12px}.left-panel,.content-card,.telemetry-card,.hero-card,.error-card{border:1px solid #d8dee8;border-radius:14px;background:#fff;box-shadow:0 3px 12px #0f172a0d}.left-panel{padding:10px 9px}.left-panel.is-collapsed{display:none}.hero-card h2,.section-header h3,.telemetry-card h3{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;letter-spacing:-.025em;font-weight:600;font-size:.9rem}.brand-block p,.telemetry-card p,.content-card p,.hero-card p{margin:0}.eyebrow{color:#64748b;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.muted,.lead-text,.record-card span,.empty-state{color:#64748b}.field-hint{display:block;margin-top:4px;font-size:.7rem;line-height:1.35;color:#64748b}.field-hint-error{color:#b91c1c}.execution-mode-hint{margin-bottom:0}.debug-list-editor{display:grid;gap:8px}.debug-list-items{display:grid;gap:6px}.debug-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.debug-list-remove{white-space:nowrap}.sidebar-section{display:grid;gap:5px}.sidebar-pane{display:grid;gap:8px;padding:8px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.sidebar-pane-context{padding:0;border:0;background:transparent}.sidebar-pane-nav .sidebar-title+.nav-link,.sidebar-pane-list .sidebar-title+.sidebar-filter-panel,.sidebar-pane-list .sidebar-title+.card-list{margin-top:2px}.context-card{display:grid;gap:4px;padding:9px 10px;border-radius:10px;background:#f8fafc;border:1px solid #d8dee8}.context-card-label{color:#64748b;font-size:.72rem}.context-card-id{color:#64748b;font-size:.68rem;word-break:break-all}.context-card-meta,.hero-meta{display:flex;gap:6px;flex-wrap:wrap}.sidebar-title{margin:0;font-size:.8rem;font-weight:700;color:#334155}.ghost-button,.primary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:9px;min-height:32px;padding:4px 9px;transition:transform .14s ease,background .14s ease,color .14s ease;font-weight:500;font-size:.84rem;line-height:1.2;white-space:nowrap}.nav-link{display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:9px;background:transparent;color:#475569;padding:7px 9px;text-align:left;font-weight:500;font-size:.88rem}.nav-link.active{color:#2563eb;background:#eff6ff;font-weight:700}.nav-link.current{cursor:default}.nav-link.disabled{color:#94a3b8;background:#f8fafc;cursor:not-allowed;border:1px dashed #d8dee8}.nav-link.disabled:hover,.nav-link.current:hover{transform:none}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:3px 7px;border-radius:999px;background:#e2e8f0;color:#64748b;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.record-meta{display:flex;gap:6px;flex-wrap:wrap}.ghost-button{background:#fff;color:#3b82f6;border:1px solid #bfdbfe}.ghost-button-subtle{color:#5f6f88;border-color:#d4deee}.primary-button{background:#3b82f6;color:#fff}.warning-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(217,119,6,.3);border-radius:9px;min-height:32px;padding:4px 9px;background:#f59e0b24;color:#b45309;font-weight:600;font-size:.84rem;line-height:1.2;white-space:nowrap;cursor:pointer;box-shadow:0 8px 24px #f59e0b1f}.warning-button:hover{background:#f59e0b33;border-color:#d9770661}.warning-button-compact{min-height:30px;padding:0 10px;border-radius:10px;font-size:.76rem;box-shadow:none}.ghost-button svg,.primary-button svg,.danger-button svg{flex:0 0 auto}.danger-button{background:#b91c1c;color:#fff}.ghost-button:hover,.primary-button:hover,.danger-button:hover,.nav-link:hover,.record-card:hover{transform:translateY(-1px)}.card-list,.mini-list,.version-list,.point-grid{display:grid;gap:8px}.record-card,.mini-card,.point-card,.version-card{display:grid;gap:3px;width:100%;padding:7px 9px;text-align:left;border-radius:10px;border:1px solid #e2e8f0;background:#fff}.record-card strong{font-size:.86rem;font-weight:600;line-height:1.3}.record-card span{font-size:.76rem;line-height:1.3}.record-card.selected{border-color:#93c5fd;background:#eff6ff}.sidebar-card{box-shadow:none}.sidebar-list{gap:6px}.sidebar-filter-panel{display:grid;gap:6px;margin-bottom:8px}.sidebar-filter-field{display:grid;gap:4px}.sidebar-filter-field span{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.sidebar-filter-panel input,.sidebar-filter-panel select{width:100%;min-width:0;padding:7px 9px;border:1px solid #d6deea;border-radius:9px;background:#fff;color:#334155;font-size:.78rem;line-height:1.2}.sidebar-filter-panel input::placeholder{color:#94a3b8}.sidebar-filter-panel-compact{gap:5px;margin-bottom:7px}.sidebar-list .record-card{padding:6px 8px;gap:2px;border-radius:14px}.sidebar-list .record-card strong{font-size:.8rem;line-height:1.25}.sidebar-list .record-card span{font-size:.71rem;line-height:1.2}.sidebar-list .record-card .record-meta{margin-top:2px}.hero-card,.content-card,.telemetry-card,.error-card{padding:12px}.content-card-nested{padding:12px;box-shadow:none;background:#f8fafc}.template-workflow-layout{display:flex;gap:var(--workflow-gap);align-items:stretch}.template-workflow-layout.is-stacked{display:grid;grid-template-columns:1fr}.template-workflow-main{flex:1 1 auto;min-width:0;display:flex}.template-debug-card{flex:0 1 var(--template-debug-width);min-width:248px;align-self:stretch}.workflow-context-panel{flex:0 1 var(--template-debug-width);min-width:248px;align-self:stretch;display:grid;gap:var(--workflow-gap)}.template-workflow-layout.is-stacked .workflow-context-panel{flex:none;min-width:0}.workflow-context-panel .content-card-nested,.right-panel .telemetry-card,.right-panel .error-card{padding:10px}.workflow-context-panel .section-header.compact,.right-panel .section-header{margin-bottom:8px}.workflow-context-panel .summary-grid.compact{gap:6px}.workflow-context-panel .stat-card{gap:3px;padding:8px}.workflow-context-panel .stat-card span{font-size:.68rem}.workflow-context-panel .stat-card strong{font-size:.84rem}.workflow-context-panel .state-list,.right-panel .mini-list{gap:6px}.workflow-context-panel .state-item{gap:2px;padding:8px 10px;border-radius:9px}.workflow-context-panel .state-item span{font-size:.72rem}.workflow-context-panel .state-item strong{font-size:.8rem}.workflow-context-panel .template-debug-panel{gap:10px}.workflow-context-panel .template-debug-group{gap:6px}.workflow-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--workflow-gap)}.right-panel{gap:10px}.rule-focus-mode-card{margin-bottom:0}.rule-config-grid-focus{grid-template-columns:1fr}.workflow-focus-side-panel{display:grid;flex:0 0 var(--template-debug-width);align-content:start;min-width:280px}.workflow-focus-side-panel-body{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid #dbe3ee;border-radius:14px;background:#fff}.workflow-inline-error-card{padding:10px}.workflow-inline-error-card pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem;line-height:1.35}.workflow-focus-tab-switch{justify-self:start}.workflow-focus-side-panel-content{min-width:0}.workflow-focus-side-panel .workflow-inspector{flex:none}.workflow-focus-side-panel-body .workflow-inspector,.workflow-focus-side-panel-body .template-debug-card{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.workflow-focus-side-panel-body .workflow-debug-header{gap:8px}.workflow-focus-side-panel-body .workflow-debug-header-copy .eyebrow{font-size:.62rem}.workflow-focus-side-panel-body .workflow-debug-header-copy h3{font-size:.82rem}.workflow-focus-side-panel-body .workflow-debug-actions{gap:7px}.workflow-focus-side-panel-body .workflow-debug-trace-actions{width:100%}.workflow-focus-side-panel-body .workflow-debug-trace-actions .ghost-button{min-height:28px;padding:0 8px}.workflow-focus-side-panel-body .workflow-debug-mode-switch button{font-size:.71rem;padding:5px 8px}.workflow-focus-side-panel-body .workflow-debug-step-actions,.workflow-focus-side-panel-body .workflow-debug-live-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.workflow-focus-side-panel-body .workflow-debug-step-actions .ghost-button,.workflow-focus-side-panel-body .workflow-debug-live-actions .ghost-button,.workflow-focus-side-panel-body .workflow-debug-live-actions .workflow-debug-speed{width:100%;justify-content:center}.workflow-focus-side-panel-body .workflow-debug-speed{min-height:28px;padding:0 8px;border:1px solid #dbe3ee;border-radius:9px;background:#f8fafc}.workflow-focus-side-panel-body .template-debug-panel{gap:8px}.workflow-focus-side-panel-body .template-debug-group{gap:6px;padding:0;border:0;border-radius:0;background:transparent}.workflow-focus-side-panel-body .editor-form{gap:8px}.workflow-focus-side-panel-body .editor-label{gap:4px;font-size:.76rem}.workflow-focus-side-panel-body .state-list{gap:6px}.workflow-focus-side-panel-body .state-item{gap:2px;padding:8px 9px;border-radius:9px}.workflow-focus-side-panel-body .state-item span{font-size:.7rem}.workflow-focus-side-panel-body .state-item strong{font-size:.78rem;line-height:1.3}.workflow-focus-side-panel-body .runner-trace-inline{margin-top:8px;padding-top:8px;padding-inline:0;padding-bottom:0;border-radius:0;background:transparent;border-inline:0;border-bottom:0}:root[data-theme=dark] .workflow-focus-side-panel-body .template-debug-group,:root[data-theme=dark] .workflow-focus-side-panel-body .runner-trace-inline{background:transparent;border:0;border-radius:0;padding-inline:0;padding-bottom:0}:root[data-theme=dark] .workflow-focus-side-panel-body .runner-trace-inline{margin-top:8px}.workflow-focus-side-panel-body .runner-trace-inline-actions{display:flex;flex-wrap:wrap}.workflow-focus-side-panel-body .runner-trace-inline-actions .ghost-button{min-height:28px;padding:0 8px}.right-panel .mini-card{gap:2px;padding:6px 8px}.right-panel .mini-card strong{font-size:.78rem;line-height:1.25}.right-panel .mini-card span{font-size:.7rem;line-height:1.25}.right-panel .mini-card .status-pill{font-size:.58rem;padding:3px 6px;border-radius:8px}.hero-card>div:first-child{display:grid;gap:4px}.hero-card{display:flex;align-items:start;justify-content:space-between;min-height:60px;background:#fff}.hero-status{display:flex;align-items:center;gap:10px;color:#64748b}.hero-status-inline{margin-top:4px;gap:8px;font-size:.78rem}@keyframes workflow-live-pulse{0%{box-shadow:0 0 #b91c1c59;opacity:1}70%{box-shadow:0 0 0 6px #b91c1c00;opacity:.9}to{box-shadow:0 0 #b91c1c00;opacity:1}}.hero-status-neutral{color:#64748b}.hero-status-loading{color:#2563eb}.hero-status-success{color:#166534}.hero-status-error{color:#b91c1c}.status-dot{width:10px;height:10px;border-radius:999px}.status-dot-neutral{background:#94a3b8;box-shadow:0 0 0 6px #94a3b824}.status-dot-loading{background:#3b82f6;box-shadow:0 0 0 6px #3b82f624}.status-dot-success{background:#22c55e;box-shadow:0 0 0 6px #22c55e1f}.status-dot-error{background:#ef4444;box-shadow:0 0 0 6px #ef444424}.hero-actions{display:flex;align-items:flex-start;gap:10px}.template-check-inline{display:inline-flex;align-items:center;padding:6px 9px;border-radius:10px;border:1px solid #d8dee8;background:#f8fafc}.template-check-inline-copy{display:grid;gap:1px}.template-check-inline-title{font-size:.68rem;font-weight:700;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.template-check-inline-status{font-size:.75rem;color:#334155;line-height:1.25}.section-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin-bottom:10px}.section-header.compact{margin-bottom:8px}.section-header-actions{display:grid;grid-auto-flow:column;align-items:start;gap:6px;margin-left:auto}.workflow-section-header{position:relative}.workflow-section-headline{display:inline-flex;align-items:center;gap:10px;min-width:0}.workflow-section-header-meta{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.workflow-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.workflow-header-tools-canvas-aligned{position:absolute;top:50%;right:calc(var(--template-debug-width) + var(--workflow-gap));transform:translateY(-50%);margin-right:0}.workflow-legend{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.workflow-legend-item{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;border:1px solid transparent;color:#475569;font-size:.72rem;line-height:1.2;white-space:nowrap}.workflow-legend-dot{width:9px;height:9px;border-radius:999px;border:1px solid rgba(15,23,42,.14)}.workflow-legend-item:has(.workflow-legend-dot-input){background:#eff6ff;border-color:#bfdbfe}.workflow-legend-dot-input{background:#60a5fa}.workflow-legend-item:has(.workflow-legend-dot-hvac){background:#f0fdf4;border-color:#bbf7d0}.workflow-legend-dot-hvac{background:#84cc16}.workflow-legend-item:has(.workflow-legend-dot-logic){background:#fffbeb;border-color:#fde68a}.workflow-legend-dot-logic{background:#d4a13a}.workflow-legend-item:has(.workflow-legend-dot-output){background:#ecfeff;border-color:#a5f3fc}.workflow-legend-dot-output{background:#06b6d4}.section-toggle-slot{display:flex;align-items:start;justify-content:flex-end;min-width:28px}.section-toggle-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #d6deea;border-radius:8px;background:#fff;color:#475569;font-size:.86rem;line-height:1;padding:0}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.summary-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-stack{display:grid;gap:10px}.rule-detail-stack-compact{gap:7px}.rule-detail-header-copy{min-width:0;display:grid;gap:2px}.rule-detail-title-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.rule-detail-title-row h3{margin:0}.rule-detail-meta-grid{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(4,minmax(0,.85fr));gap:6px}.rule-detail-meta-card{display:grid;align-content:start;gap:2px;padding:8px 10px;border:1px solid #dbe3ee;border-radius:10px;background:#fbfdff;min-width:0}.rule-detail-meta-card span{color:#64748b;font-size:.68rem;font-weight:600;line-height:1.2}.rule-detail-meta-card strong{color:#334155;font-size:.82rem;font-weight:600;line-height:1.25;word-break:break-word}.rule-detail-meta-card small{color:#94a3b8;font-size:.68rem;line-height:1.2;word-break:break-word}.rule-detail-meta-card-building{background:linear-gradient(180deg,#fbfdff,#f8fbff)}.rule-detail-action-row{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}.rule-detail-action-group{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.rule-detail-publication-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.publication-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.publication-version-list{display:grid;gap:10px}.publication-version-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dbe3ee;border-radius:12px;background:#fbfdff}.publication-version-card.is-current{background:#f0f7ff;border-color:#bfd6f6}.publication-version-card-copy{display:grid;gap:2px;min-width:0}.publication-version-card-copy span,.publication-version-card-copy small{color:#64748b}.publication-version-card-title-row{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.rule-detail-action-row .ghost-button,.rule-detail-action-row .primary-button{min-height:30px;padding:0 10px;border-radius:9px;font-size:.76rem}.rule-detail-edit-button{min-height:30px;padding-inline:10px}.rule-detail-top-actions{gap:8px}.rule-detail-top-actions-group{display:inline-flex;align-items:center;gap:6px}.rule-detail-top-actions-group-secondary{margin-left:4px;padding-left:8px;border-left:1px solid #dbe3ee}.template-meta-compact{display:grid;gap:8px}.template-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.template-title-row h3{margin:0}.template-meta-description{font-size:.8rem;color:#64748b;line-height:1.45}.template-meta-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.template-meta-item{display:inline-grid;gap:2px;min-width:0;padding:5px 8px;border-radius:9px;background:#f8fafc;border:1px solid #e2e8f0}.template-meta-item span{font-size:.66rem;color:#64748b;line-height:1.2}.template-meta-item strong{font-size:.8rem;font-weight:600;line-height:1.25}.template-meta-form{margin-top:10px}.stat-card{display:grid;gap:4px;padding:9px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.stat-card span{color:#64748b;font-size:.7rem}.stat-card strong{font-size:.9rem;font-weight:600;line-height:1.35}.meta-pill,.status-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:4px 8px;border-radius:9px;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.meta-pill{background:#eff6ff;color:#2563eb}.meta-pill-global{background:#ede9fe;color:#6d28d9}.meta-pill-tenant{background:#ecfeff;color:#0f766e}.meta-pill-muted{background:#f1f5f9;color:#475569}.meta-pill-warning{background:#fef3c7;color:#92400e}.meta-pill-live{background:#fee2e2;color:#b91c1c;position:relative}.meta-pill-live:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;margin-right:6px;box-shadow:0 0 #b91c1c59;animation:workflow-live-pulse 1.2s ease-out infinite}.status-pill{background:#f1f5f9;color:#475569}.status-active,.status-ok,.status-acknowledged,.status-global{background:#dcfce7;color:#166534}.status-draft,.status-warning,.status-pending{background:#dbeafe;color:#1d4ed8}.status-error,.status-failed,.status-cancelled{background:#fee2e2;color:#b91c1c}.split-grid{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(300px,.62fr);gap:14px}.rule-config-grid{align-items:start}.rule-config-grid>.content-card:last-child{justify-self:end;width:100%;max-width:440px}.rule-config-grid.rule-config-grid-focus>.content-card:last-child{justify-self:stretch;max-width:none}.rule-bindings-section{width:100%}.button-row{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.telemetry-pagination{justify-content:space-between;margin-top:6px}.telemetry-pagination-status{margin-top:0}.telemetry-filter-row{margin-bottom:6px}.telemetry-filter-switch{display:inline-flex;gap:3px;padding:2px;border:1px solid #dbe5f4;border-radius:999px;background:#f8fbff}.telemetry-filter-switch button{border:0;background:transparent;color:#64748b;font-size:.72rem;font-weight:600;line-height:1;padding:5px 8px;border-radius:999px}.telemetry-filter-switch button.is-active{background:#dbeafe;color:#1d4ed8}.section-actions{justify-content:flex-end;flex-wrap:nowrap;align-items:center}.section-actions .section-toggle-button{order:99;margin-left:2px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-grid-wide{grid-column:1 / -1}.form-grid label,.binding-row{display:grid;gap:6px}.inline-picker-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.inline-picker-field .ghost-button{white-space:nowrap}.rule-import-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:14px}.rule-import-template-column{display:grid;gap:10px;min-width:0}.rule-import-search-field{display:grid;gap:6px}.rule-import-template-list{max-height:332px;overflow:auto;padding-right:2px}.rule-import-template-card{min-width:0}.rule-import-form{display:grid;gap:12px;align-content:start}.rule-import-template-summary{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dbe3ee;border-radius:12px;background:#fbfdff}.rule-import-template-summary-copy{display:grid;gap:4px;min-width:0}.rule-import-form-grid{gap:12px}.rule-import-actions{justify-content:flex-start}.rule-import-preview{margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0;display:grid;gap:10px}.rule-import-preview-header{display:grid;gap:2px}.rule-import-preview .workflow-editor{grid-template-columns:1fr}.search-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}.device-search-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;margin-bottom:12px}.device-search-fields{display:grid;gap:10px}.device-tag-filter{display:grid;gap:8px;align-content:start;color:#475569;font-size:.74rem;font-weight:600}.device-tag-list{display:grid;gap:6px;min-height:132px;max-height:220px;overflow:auto;padding:8px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}.device-tag-option{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 9px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#475569;font-size:.82rem;font-weight:600;text-align:left}.device-tag-option strong{color:#64748b;font-size:.74rem}.device-tag-option.selected{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.device-tag-empty{color:#94a3b8;font-size:.8rem}.device-filter-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chip-button{display:inline-flex;align-items:center;gap:8px;padding:4px 9px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.72rem;font-weight:600}.chip-button span{font-size:.95rem;line-height:1}.device-results-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.device-results-header strong{font-size:.92rem;font-weight:600}.point-card-actions{display:flex;justify-content:flex-end;margin-top:4px}.device-empty-state{display:grid;gap:4px;padding:16px 18px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#64748b}input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;background:#fff;padding:7px 10px;color:#334155;font-size:.88rem}.binding-table{display:grid;gap:10px}.binding-card{display:block;width:100%;inline-size:100%;max-width:none;min-width:0;justify-self:stretch;align-self:stretch}.binding-card .section-header{width:100%}.binding-device-trigger{width:100%;min-height:36px;height:36px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#334155;font-size:.88rem;text-align:left}.binding-device-cell{display:flex;align-items:center;gap:8px;min-width:0}.binding-device-cell .binding-device-trigger{flex:1 1 auto;min-width:0}.binding-device-clear-button{flex:0 0 auto}.binding-device-trigger:hover{background:#f8fafc;border-color:#93c5fd}.binding-device-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.binding-table-extended{gap:8px}.binding-header,.binding-row{display:grid;grid-template-columns:1.1fr .8fr 1.6fr .7fr;gap:10px}.binding-header-extended,.binding-row-extended{grid-template-columns:minmax(170px,1.05fr) minmax(160px,.92fr) minmax(112px,.58fr) minmax(340px,2.05fr) minmax(112px,.62fr) 42px}.binding-row{cursor:pointer;padding:6px;border-radius:12px;border:1px solid transparent}.binding-row-active{border-color:#93c5fd;background:#eff6ff}.binding-row-extended{align-items:center}.binding-header-extended>*,.binding-row-extended>*{min-width:0}.binding-row-extended input,.binding-row-extended select,.binding-device-trigger{min-height:36px;height:36px}.binding-row-extended input,.binding-row-extended select{padding-top:6px;padding-bottom:6px}.rule-config-grid .parameter-editor{min-height:156px}.binding-header{color:#5b665f;font-size:.76rem;font-weight:700;padding:0 4px}.binding-port-label{display:grid;gap:2px;align-content:center;padding:4px 2px}.binding-port-label strong{font-size:.84rem;font-weight:600;line-height:1.25}.binding-port-label span{font-size:.74rem;color:#64748b}.inline-icon-button{display:inline-flex;align-items:center;justify-content:center;align-self:center;justify-self:center;width:34px;height:34px;padding:0;border-radius:10px;border:1px solid #d8dee8;background:#fff;color:#475569;line-height:1;transition:transform .14s ease,border-color .14s ease,color .14s ease,background .14s ease}.inline-icon-button:hover{transform:translateY(-1px);border-color:#cbd5e1;color:#334155;background:#f8fafc}.inline-icon-button-danger{border-color:#fecaca;color:#b91c1c;background:#fff5f5}.inline-icon-button-danger:hover{border-color:#fca5a5;color:#991b1b;background:#fee2e2}.rule-meta-edit-dialog{width:min(560px,calc(100vw - 28px))}.rule-meta-form-grid{margin-bottom:12px}.rule-meta-building-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.rule-meta-building-summary{display:grid;gap:2px;min-width:0;padding:9px 11px;border:1px solid #dbe3ee;border-radius:10px;background:#fbfdff}.rule-meta-building-summary strong{font-size:.82rem;line-height:1.25;color:#334155;word-break:break-word}.rule-meta-building-summary span{color:#94a3b8;font-size:.72rem;line-height:1.2;word-break:break-word}.workflow-ports-grid,.signal-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.workflow-ports-grid-editable{grid-template-columns:1fr}.workflow-rule-port-sections{display:grid;gap:18px}.workflow-rule-port-block{display:grid;gap:10px;align-content:start}.workflow-port-section-label{display:flex;align-items:center;justify-content:space-between}.workflow-port-column,.signal-column,.template-port-group{display:grid;gap:8px;align-content:start;align-items:start}.workflow-port-column-head,.template-port-group-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.section-header-trigger{display:grid;gap:2px;padding:0;margin:0;border:0;background:transparent;text-align:left;justify-items:start;cursor:pointer;color:inherit}.section-header-trigger:hover h3,.section-header-trigger:hover .eyebrow{color:#2563eb}.section-header-trigger:focus-visible{outline:2px solid rgba(59,130,246,.35);outline-offset:4px;border-radius:8px}.workflow-port-column-head strong,.signal-column-head strong{font-size:.82rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.08em}.workflow-port-list,.signal-list,.template-port-list{display:grid;gap:8px}.workflow-port-card,.signal-card{display:grid;gap:6px;padding:10px 11px;border:1px solid #dbe3ee;border-radius:12px;background:#f8fafc;text-align:left;color:#334155}.workflow-port-card-bound,.signal-card-bound{background:#f0fdf4;border-color:#bbf7d0}.workflow-port-card-head,.signal-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.workflow-port-card-head strong,.signal-card-head strong{font-size:.92rem;font-weight:600}.workflow-port-card-meta,.signal-card-meta{display:flex;flex-wrap:wrap;gap:8px;color:#64748b;font-size:.78rem}.parameter-editor,pre{min-height:180px;border-radius:12px;background:#f8fafc;color:#334155;border:1px solid #e2e8f0;padding:14px;overflow:auto}.parameter-editor.compact{min-height:140px}.rule-parameter-panel{display:grid;gap:14px}.rule-parameter-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.rule-parameter-list{display:grid;gap:12px}.rule-parameter-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px 13px;border:1px solid #dbe4f5;border-radius:18px;background:#ffffffc7}.rule-parameter-main{display:grid;gap:6px;min-width:0}.rule-parameter-head{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.rule-parameter-head>div:first-child{min-width:0}.rule-parameter-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:#64748b;font-size:.78rem;margin-top:3px}.rule-parameter-effective{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.rule-parameter-effective strong{font-size:.92rem;line-height:1.2;color:#334155}.rule-parameter-description{margin:0;color:#64748b;font-size:.84rem}.rule-parameter-levels,.rule-parameter-overrides{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rule-parameter-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.rule-parameter-editor-field{min-width:0}.rule-parameter-editor input,.rule-parameter-editor select{height:36px}.parameter-override-table{display:grid;gap:10px}.parameter-override-head,.parameter-override-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(160px,1fr) 110px minmax(120px,.9fr) minmax(170px,1fr) 140px;gap:10px;align-items:center}.parameter-override-head{color:#60708f;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.parameter-override-row{border:1px solid #d8e4f7;border-radius:16px;padding:12px 14px;background:#fbfdff}.parameter-override-cell{min-width:0}.parameter-override-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;color:#66758f;font-size:12px}.parameter-override-key{color:#5a6a86;word-break:break-word}.parameter-override-row input,.parameter-override-row select{height:36px}.building-type-summary{display:flex;flex-wrap:wrap;gap:8px}.building-type-meta-layout{display:grid;gap:14px}.building-type-meta-field{display:grid;gap:6px;color:#475569;font-weight:500;font-size:.78rem}.building-type-meta-field textarea{min-height:88px;resize:vertical}.building-type-meta-field-key{max-width:360px}.building-type-meta-field-label{width:100%}.building-type-meta-row{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(260px,.55fr);gap:14px;align-items:stretch}.building-type-meta-row-secondary{grid-template-columns:minmax(320px,1.1fr) minmax(280px,.9fr)}.building-type-meta-field-color{max-width:none}.building-type-color-field{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center}.building-type-color-input{padding:0;min-height:36px;width:48px;border-radius:10px}.building-type-status-card{display:grid;gap:8px;min-height:0;padding:12px 14px;border:1px solid #dbe3ee;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f8fbff);align-content:start}.building-type-status-title{color:#475569;font-size:.78rem;font-weight:600}.building-type-status-toggle{display:inline-flex;align-items:center;gap:10px;width:fit-content;cursor:pointer;-webkit-user-select:none;user-select:none}.building-type-status-toggle input{position:absolute;opacity:0;pointer-events:none}.building-type-status-switch{position:relative;width:44px;height:24px;border-radius:999px;background:#d9e3f0;transition:background .14s ease}.building-type-status-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a2e;transition:transform .14s ease}.building-type-status-toggle input:checked+.building-type-status-switch{background:#3b82f6}.building-type-status-toggle input:checked+.building-type-status-switch:after{transform:translate(20px)}.building-type-status-text{color:#334155;font-size:.9rem;font-weight:600}.building-type-status-hint{margin:0;color:#64748b;font-size:.78rem;line-height:1.4}@media(max-width:960px){.building-type-meta-row{grid-template-columns:1fr}.building-type-meta-field-key,.building-type-meta-field-color{max-width:none}}.building-type-assignment-panel,.building-type-override-panel{display:grid;gap:14px}.building-type-assignment-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.building-type-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.property-assignment-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.property-tag-search-field{min-width:0}.property-tag-search-shell{position:relative}.property-tag-search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:5;display:grid;gap:4px;max-height:220px;overflow:auto;padding:8px;border:1px solid #d8e4f7;border-radius:12px;background:#fff;box-shadow:0 18px 36px #0f172a1f}.property-tag-search-dropdown-empty{color:#64748b;font-size:.8rem}.property-tag-search-option{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:7px 9px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;color:#475569;font-size:.82rem;font-weight:600;text-align:left}.property-tag-search-option strong{color:#64748b;font-size:.74rem}.building-type-assignment-list{display:grid;gap:8px;max-height:420px;overflow:auto}.building-type-property-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:10px;align-items:center;padding:10px 12px;border:1px solid #d8e4f7;border-radius:14px;background:#fbfdff}.building-type-property-row.selected{border-color:#8ab4ff;background:#f5f9ff}.building-type-property-row.orphaned{border-style:dashed;background:#fffdf7}.building-type-property-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;color:#66758f;font-size:12px}.building-type-template-select{display:grid;gap:6px;max-width:360px}.property-assignment-dialog{max-width:min(1120px,calc(100vw - 56px))}.property-filter-bar,.property-filter-meta{align-items:center}.property-results-compact{max-height:500px;overflow:auto}.property-results-compact-header,.property-result-row{grid-template-columns:minmax(220px,1.3fr) minmax(88px,.5fr) minmax(190px,1fr) minmax(150px,.75fr) 52px}.property-result-status{display:flex;align-items:center;gap:8px;min-width:0}.property-result-status .meta-pill{font-size:.58rem;letter-spacing:.03em}.property-assignment-conflict-overlay{background:#f1f5f9b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media(max-width:1200px){.rule-parameter-row{grid-template-columns:1fr}.rule-parameter-effective{justify-items:start;text-align:left}.parameter-override-head,.parameter-override-row,.building-type-filter-grid,.property-assignment-filter-grid,.property-results-compact-header,.property-result-row{grid-template-columns:1fr}}.editor-label{display:grid;gap:6px;min-width:0;color:#475569;font-weight:500;font-size:.78rem}.editor-form{display:grid;gap:8px;min-width:0}.workflow-inspector .editor-form>*,.workflow-inspector .inspector-grid>*,.workflow-inspector .workflow-port-section>*,.workflow-inspector .inspector-json-section>*{min-width:0}.weekly-schedule-editor{display:grid;gap:10px}.weekly-schedule-header{display:grid;gap:4px}.weekly-schedule-day-list{display:grid;gap:10px}.weekly-schedule-day{display:grid;gap:8px;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid #dbe4f0}.weekly-schedule-day-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.weekly-schedule-interval-list{display:grid;gap:8px}.weekly-schedule-interval-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:8px}.weekly-schedule-remove-button{white-space:nowrap}pre{white-space:pre-wrap;word-break:break-word}.point-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.point-meta{display:flex;gap:8px;flex-wrap:wrap;color:#5b665f;font-size:.86rem}.telemetry-card{display:grid;gap:10px}.state-list{display:grid;gap:8px}.state-item{display:grid;gap:3px;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.state-item span{color:#64748b;font-size:.75rem}.state-item strong{font-size:.82rem;font-weight:500;line-height:1.35;word-break:break-word}.validation-summary{display:grid;gap:10px}.validation-status-card.is-error{background:#fff1f2;border-color:#fecdd3}.validation-status-card.is-error span,.validation-status-card.is-error strong{color:#b42318}.validation-status-card.is-valid{background:#f8fafc}.template-debug-panel{display:grid;gap:12px}.workflow-debug-header{grid-template-columns:minmax(0,1fr);gap:6px}.workflow-debug-header-copy{min-width:0;display:grid;gap:2px}.workflow-debug-header-copy h3{line-height:1.25;word-break:break-word}.workflow-debug-actions{display:grid;gap:5px;justify-items:start;min-width:0}.workflow-debug-trace-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.workflow-debug-trace-toggle{gap:8px}.workflow-debug-trace-toggle .building-type-status-text{font-size:.78rem}.workflow-debug-mode-switch{display:inline-flex;align-items:center;justify-self:start;max-width:100%;padding:1px;border:1px solid #d4deea;border-radius:999px;background:#f3f7fb;overflow:auto hidden;box-shadow:inset 0 1px #ffffffe6}.workflow-debug-mode-switch button{flex:0 0 auto;border:0;background:transparent;color:#64748b;font:inherit;font-weight:600;font-size:.72rem;line-height:1;padding:6px 9px;border-radius:999px;cursor:pointer}.workflow-debug-mode-switch button.is-active{background:#dbeafe;color:#1d4ed8;box-shadow:0 1px 2px #3b82f61f}.workflow-debug-live-actions,.workflow-debug-step-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.workflow-debug-speed{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;color:#64748b;font-size:.72rem;font-weight:600;padding:0 2px}.workflow-debug-speed select{min-width:52px;height:28px;padding-inline:7px 20px;font-size:.75rem}.workflow-debug-actions .ghost-button{min-height:28px;padding:0 9px;border-radius:9px;font-size:.74rem;line-height:1}.runner-trace-inline{margin-top:10px;padding-top:10px;border-top:1px solid #e2e8f0;display:grid;gap:6px}.runner-trace-inline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.runner-trace-inline-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.runner-trace-inline-status{margin:0}.workflow-debug-live-actions .ghost-button{flex:0 0 auto}.workflow-context-panel .workflow-debug-header-copy h3,.template-debug-card .workflow-debug-header-copy h3{font-size:.86rem}.workflow-context-panel .template-debug-card,.template-debug-card{padding:10px}.template-debug-group,.workflow-port-row,.template-port-row{display:grid;gap:8px;padding:10px 11px;border:1px solid #dbe3ee;border-radius:12px;background:#fbfdff}.workflow-port-row-fields{display:grid;grid-template-columns:minmax(140px,1.2fr) minmax(140px,1.2fr) 110px 110px minmax(90px,.8fr);gap:8px;align-items:center}.workflow-port-row-head{display:grid;grid-template-columns:minmax(140px,1.2fr) minmax(140px,1.2fr) 110px 110px minmax(90px,.8fr);gap:8px;padding:0 2px;color:#64748b;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.workflow-port-row-fields input,.workflow-port-row-fields select{min-height:36px;height:36px;padding-top:0;padding-bottom:0}.workflow-port-row-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.workflow-port-row-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:34px}.workflow-port-row .inline-icon-button{flex:0 0 auto}.template-parameter-list{display:grid;gap:8px}.template-parameter-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center}.template-parameter-row-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(110px,.7fr) minmax(110px,.65fr) 92px minmax(90px,.55fr) minmax(90px,.55fr);gap:8px;align-items:center}.template-parameter-row-head{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(110px,.7fr) minmax(110px,.65fr) 92px minmax(90px,.55fr) minmax(90px,.55fr) 42px;gap:8px;padding:0 2px;color:#64748b;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.template-parameter-row-fields input,.template-parameter-row-fields select{min-height:36px;height:36px;padding-top:0;padding-bottom:0}.template-parameter-checkbox{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 10px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#334155;font-size:.84rem;font-weight:500}.template-parameter-checkbox input{width:auto;min-height:0;height:auto;margin:0}.danger-icon-button{color:#b91c1c;border:1px solid #efc3c3;border-radius:10px;background:#fff;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.workflow-editor{display:flex;align-items:stretch;gap:var(--workflow-gap);min-width:100%;min-height:100%}.workflow-canvas-shell{display:flex;flex:1 1 auto;min-width:640px}.workflow-canvas{position:relative;flex:1 1 auto;min-width:640px;min-height:420px;overflow:hidden;border:1px solid #dbe3ee;border-radius:14px;background:#f8fafc}.workflow-canvas-toolbar-overlay{position:absolute;top:12px;right:12px;z-index:6}.workflow-canvas-toolbar-actions{align-items:center;justify-content:flex-end}.workflow-canvas-toolbar-button{background:#fffffff0;box-shadow:0 4px 12px #0f172a14}.workflow-canvas-toolbar-hint{display:inline-flex;align-items:center;min-height:28px;padding:0 8px;border-radius:999px;background:#f8fafceb;border:1px solid rgba(216,222,232,.9);color:#64748b;font-size:.68rem;font-weight:500;line-height:1;white-space:nowrap}.workflow-canvas-bottom-hint{position:absolute;left:12px;bottom:8px;z-index:4;color:#0f172ac7;font-size:.58rem;font-weight:500;line-height:1;pointer-events:none}.workflow-canvas .react-flow__controls{margin-bottom:24px}.workflow-canvas-resize-handle{position:absolute;right:10px;bottom:10px;width:18px;height:18px;padding:0;border:0;background:transparent;border-right:2px solid #94a3b8;border-bottom:2px solid #94a3b8;opacity:.8;z-index:5;cursor:nwse-resize}.workflow-canvas-resize-handle:hover{opacity:1}.workflow-palette{display:grid;gap:8px;padding:10px;border-radius:14px;background:#f8fafc;border:1px solid #dbe3ee}.workflow-palette-header{display:grid;gap:2px}.workflow-palette-header h4{margin:0;font-size:.92rem;font-weight:600;line-height:1.25}.workflow-palette-header .muted{font-size:.78rem}.workflow-palette-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.workflow-palette-sections{display:grid;gap:8px;max-height:min(68vh,760px);overflow:auto;padding-right:4px}.workflow-palette-section{display:grid;gap:5px;padding-top:6px;border-top:1px solid #e2e8f0}.workflow-palette-section:first-child{padding-top:0;border-top:0}.workflow-palette-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.workflow-palette-section-header .eyebrow{margin:0}.workflow-palette-section-header span{color:#64748b;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.workflow-palette-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a2e;z-index:40}.workflow-palette-dialog{width:min(920px,calc(100vw - 48px));max-height:min(78vh,920px);display:grid;gap:8px;padding:10px;border-radius:16px;border:1px solid #d8dee8;background:#fff;box-shadow:0 18px 42px #0f172a29}.workflow-palette-dialog .workflow-palette-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.workflow-palette-search-row{display:flex;align-items:center}.workflow-palette-search{width:100%;min-width:0;height:34px;padding:6px 10px;font-size:.78rem}.workflow-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a38;z-index:41}.workflow-confirm-dialog{width:min(460px,calc(100vw - 48px));display:grid;gap:14px;padding:16px;border-radius:16px;border:1px solid #d8dee8;background:#fff;box-shadow:0 18px 42px #0f172a29}.workflow-doc-dialog{width:min(840px,calc(100vw - 48px));max-height:min(80vh,920px);overflow:auto;display:grid;gap:14px;padding:16px;border-radius:16px;border:1px solid #d8dee8;background:#fff;box-shadow:0 18px 42px #0f172a29}.device-binding-dialog{width:min(1080px,calc(100vw - 48px));max-height:min(82vh,900px);overflow:auto;display:grid;gap:14px;padding:16px;border-radius:16px;border:1px solid #d8dee8;background:#fff;box-shadow:0 18px 42px #0f172a29}.device-dialog-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px}.device-dialog-main{display:grid;gap:10px}.device-tag-list-compact{min-height:0;max-height:420px}.device-results-compact{display:grid;gap:6px}.device-results-compact-header,.device-result-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) 92px 92px 54px;gap:8px;align-items:center}.device-results-compact-header{padding:0 8px;color:#64748b;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.device-result-row{padding:8px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.device-result-row strong,.device-result-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-result-row strong{font-size:.84rem;font-weight:600;color:#334155}.device-result-row span{font-size:.78rem;color:#64748b}.property-results-compact .property-results-compact-header,.property-results-compact .property-result-row{grid-template-columns:minmax(240px,1.45fr) minmax(72px,.38fr) minmax(220px,1.15fr) minmax(150px,.75fr) 52px}.property-results-compact .property-result-status .meta-pill{font-size:.56rem;letter-spacing:.02em}.workflow-doc-header{display:flex;align-items:start;justify-content:space-between;gap:12px}.workflow-doc-close-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d8dee8;border-radius:10px;background:#fff;color:#475569;flex:0 0 auto}.workflow-doc-close-button:hover{background:#f8fafc}.workflow-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workflow-doc-section{display:grid;gap:8px;align-content:start}.workflow-doc-list{margin:0;padding-left:18px;display:grid;gap:6px;color:#475569;font-size:.82rem;line-height:1.45}.workflow-confirm-copy{display:grid;gap:4px}.workflow-confirm-copy h4{margin:0;font-size:.95rem;font-weight:600;line-height:1.3}.palette-item{display:grid;gap:1px;min-height:46px;padding:6px 7px;text-align:left;border-radius:9px;border:1px solid #d6deea;background:#fff;color:#334155}.palette-item-head{display:inline-flex;align-items:center;gap:6px;min-width:0}.palette-item-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#3b82f617;color:#3b82f6;flex:0 0 auto}.palette-item strong{font-size:.66rem;font-weight:500;line-height:1.15}.palette-item span{font-size:.54rem;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.workflow-node{--workflow-node-pad-x: 10px;position:relative;display:grid;gap:6px;min-height:68px;padding:8px 10px;border-radius:12px;border:1px solid rgba(19,33,27,.18);background:linear-gradient(180deg,#fffffff7,#f6eee0f2);box-shadow:0 8px 18px #13211b0f}.workflow-node-compact{--workflow-node-pad-x: 8px;min-height:56px;gap:4px;padding:7px 8px}.workflow-node-input{border-color:#3b82f638;background:linear-gradient(180deg,#fffffffa,#deeffffa)}.workflow-node-hvac{background:linear-gradient(180deg,#fffffffa,#e6f6ddfa)}.workflow-node-logic{background:linear-gradient(180deg,#fffffffa,#f9f3e8fa)}.workflow-node-output{border-color:#06b6d447;background:linear-gradient(180deg,#fffffffa,#d6f7f8fa)}.workflow-node.selected{border-color:#c56a308c;box-shadow:0 0 0 2px #c56a301f,0 8px 18px #13211b0f}.workflow-node-simulated{box-shadow:0 0 0 2px #2563eb1f,0 8px 18px #13211b0f}.workflow-node-simulation-changed{border-color:#eab3089e;box-shadow:0 0 0 3px #facc1547,0 8px 18px #13211b0f}.workflow-node.selected.workflow-node-simulation-changed{border-color:#c56a30b8;box-shadow:0 0 0 2px #c56a302e,0 0 0 5px #facc153d,0 8px 18px #13211b0f}.workflow-node-info-button{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border-radius:999px;border:1px solid rgba(148,163,184,.6);background:#fffffff0;color:#64748b;z-index:3}.workflow-node-info-button:hover{color:#334155;border-color:#64748bb3}.workflow-node-origin-badge{position:absolute;top:6px;right:30px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;font-size:.58rem;font-weight:700;line-height:1;z-index:3}.workflow-node-origin-badge-instance{background:#2563eb1a;color:#2563eb}.workflow-node-header{display:grid;gap:2px;padding-right:18px;min-height:32px;align-content:start}.workflow-node-title-row{display:inline-flex;align-items:center;gap:6px;min-width:0}.workflow-node-type-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#0f172a0f;color:#475569;flex:0 0 auto}.workflow-node-header strong{font-size:.74rem;font-weight:500;line-height:1.2;color:#334155}.workflow-node-header span{font-size:.58rem;color:#7b8798;text-transform:uppercase;letter-spacing:.05em}.workflow-node-compact .workflow-node-header{min-height:26px}.workflow-node-compact .workflow-node-header strong{font-size:.74rem}.workflow-node-compact .workflow-node-header span{font-size:.58rem}.workflow-node-compact .workflow-node-type-icon{width:16px;height:16px}.workflow-node-compact .workflow-node-origin-badge{width:16px;height:16px;right:32px;font-size:.52rem}.workflow-node-display-fields{display:grid;gap:3px}.workflow-node-compact .workflow-node-display-fields{gap:2px}.workflow-node-display-field{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;min-height:16px;font-size:.56rem;line-height:1.15;color:#64748b}.workflow-node-compact .workflow-node-display-field{min-height:13px;font-size:.56rem}.workflow-node-display-field strong{font-weight:600;color:#475569}.workflow-node-display-field span{color:#7b8798}.workflow-node-output-preview{display:inline-flex;align-items:center;gap:5px;min-height:16px;margin-top:2px;font-size:.56rem;line-height:1.1;color:#64748b}.workflow-node-output-preview strong{display:inline-flex;align-items:center;min-height:16px;padding:0 5px;border-radius:999px;background:#2563eb1a;color:#2563eb;font-size:.58rem;font-weight:700}.workflow-node-output-preview strong em{margin-left:4px;font-style:normal;font-size:.55rem;font-weight:600;opacity:.85}.workflow-node-time-status{display:inline-flex;align-items:center;gap:6px;min-height:16px;margin-top:2px;color:#64748b;font-size:.56rem}.workflow-node-time-state{display:inline-flex;align-items:center;min-height:16px;padding:0 5px;border-radius:999px;background:#94a3b81f;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.workflow-node-time-state.is-active{background:#f59e0b29;color:#b45309}.workflow-node-time-status strong{font-size:.56rem;font-weight:700;color:#475569}.workflow-node-output .workflow-node-output-preview{align-self:end;justify-self:end;margin-top:auto;margin-left:auto;justify-content:flex-end;text-align:right}.workflow-node-output .workflow-node-output-preview strong{min-height:18px;padding:0 7px;font-size:.62rem}.workflow-node-ports{display:grid;grid-template-columns:1fr 1fr;gap:6px}.workflow-node-port-column{display:grid;gap:4px}.workflow-node-compact .workflow-node-port-column{gap:4px}.workflow-node-port-column-right{justify-items:stretch}.workflow-node-port-output-group{display:inline-flex;align-items:center;gap:2px;margin-left:auto;min-width:0}.workflow-node-port{position:relative;display:inline-flex;align-items:center;width:100%;min-width:0;min-height:18px;gap:2px;font-size:.58rem;line-height:1.15;color:#7b8798;box-sizing:border-box}.workflow-node-compact .workflow-node-port{min-height:16px;gap:2px;font-size:.58rem}.workflow-node-compact .workflow-node-output-preview{min-height:16px;font-size:.56rem}.workflow-node-compact .workflow-node-output-preview strong{min-height:16px;padding:0 5px;font-size:.58rem}.workflow-node-output.workflow-node-compact .workflow-node-output-preview strong{min-height:18px;padding:0 6px;font-size:.62rem}.workflow-node-inline-input{display:grid;gap:4px;margin-top:4px;padding-top:5px;border-top:1px solid rgba(148,163,184,.28)}.workflow-node-inline-input-label{color:#64748b;font-size:.56rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.workflow-node-inline-input-field{display:flex;align-items:center;gap:6px}.workflow-inline-input,.workflow-inline-select,.workflow-inline-textarea{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:10px;background:#fffffff5;color:#334155;font:inherit;font-size:.72rem;line-height:1.2;padding:6px 8px}.workflow-inline-input,.workflow-inline-select{height:32px}.workflow-inline-textarea{min-height:58px;resize:vertical}.workflow-node-inline-input-unit{color:#64748b;font-size:.62rem;font-weight:600;white-space:nowrap}.monitoring-stack{display:grid;gap:14px}.monitoring-summary-grid{align-items:stretch;grid-template-columns:minmax(280px,1.4fr) repeat(3,minmax(180px,1fr))}.monitoring-filter-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(191,205,228,.5)}.monitoring-filter-copy{display:inline-flex;align-items:center;gap:12px;min-width:0}.monitoring-filter-label{color:#64748b;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.monitoring-filter-toggle{margin:0}.monitoring-toggle-card{gap:10px;min-width:0}.monitoring-toggle{display:inline-flex;align-items:center;gap:8px}.monitoring-status-toggle{max-width:100%}.monitoring-status-toggle .building-type-status-text{white-space:normal;line-height:1.2}.monitoring-entry-list{display:grid;gap:10px}.monitoring-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.monitoring-search-row{width:min(420px,100%)}.monitoring-search-row input{width:100%}.monitoring-entry-card{border:1px solid rgba(191,205,228,.9);border-radius:16px;background:#ffffffeb;overflow:hidden}.runner-monitor-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(191,205,228,.9);border-radius:16px;background:#ffffffeb}.runner-monitor-card.is-collapsed{gap:0}.monitoring-pagination{justify-content:flex-end;margin-top:4px}.monitoring-token-editor{display:grid;gap:8px;margin-top:10px}.monitoring-token-editor textarea{min-height:96px}.runner-rule-summary-grid{align-items:start}.runner-rule-list{display:grid;gap:8px;margin-top:6px}.runner-rule-item{display:grid;gap:2px;padding:8px 10px;border:1px solid #dbe3ee;border-radius:10px;background:#fbfdff}.runner-rule-item strong{font-size:.8rem;color:#334155}.runner-rule-item small{color:#64748b;font-size:.72rem;line-height:1.25}.monitoring-entry-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none}.monitoring-entry-summary::-webkit-details-marker{display:none}.monitoring-entry-headline{display:grid;gap:2px;min-width:0}.monitoring-entry-headline strong{font-size:.82rem;color:#334155}.monitoring-entry-headline span{font-size:.76rem;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitoring-entry-metrics{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.monitoring-entry-details{display:grid;gap:12px;padding:0 14px 14px}.monitoring-entry-error{margin:0;color:#b42318;font-weight:600;white-space:pre-wrap;word-break:break-word}.monitoring-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.monitoring-preview{min-height:180px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.74rem}.workflow-node-port-input{text-align:left;justify-content:flex-start;width:calc(100% + var(--workflow-node-pad-x));margin-left:calc(var(--workflow-node-pad-x) * -1);padding-left:var(--workflow-node-pad-x)}.workflow-node-port-output{text-align:right;justify-content:flex-end;width:calc(100% + var(--workflow-node-pad-x));margin-right:calc(var(--workflow-node-pad-x) * -1);padding-right:var(--workflow-node-pad-x)}.workflow-node-port-text{display:inline-flex;align-items:center;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:44px}.workflow-node-port-text-input{padding-left:0}.workflow-node-port-text-output{justify-content:flex-end;text-align:right;padding-right:0}.workflow-handle{width:10px;height:10px;border:2px solid #ffffff;top:50%;transform:translateY(-50%)}.workflow-handle-input{background:#3b82f6;left:-5px}.workflow-handle-disabled.workflow-handle-input{background:#cbd5e1;border-color:#f8fafc;cursor:not-allowed}.workflow-handle-output{background:#0f766e;left:auto;right:-5px}.workflow-node-input-constant{display:inline-flex;align-items:center;min-height:16px;padding:0 5px;border-radius:999px;background:#f59e0b29;color:#b45309;font-size:.56rem;font-weight:700;white-space:nowrap;flex:0 0 auto}.workflow-node-input-current-value{display:inline-flex;align-items:center;min-height:16px;padding:0 5px;border-radius:999px;background:#2563eb1f;color:#1d4ed8;font-size:.56rem;font-weight:700;white-space:nowrap;flex:0 0 auto}.workflow-inspector{display:grid;flex:0 0 var(--workflow-inspector-width);gap:10px;align-content:start;min-width:0;padding:14px;border-radius:14px;background:#f8fafc;border:1px solid #dbe3ee;overflow:hidden}.workflow-controls-button{color:#5d708b}.workflow-controls-button.is-active{color:#1d4ed8;background:#dbeafe}.workflow-inspector-header{display:flex;align-items:start;justify-content:space-between;gap:10px}.workflow-inspector-actions{display:inline-flex;align-items:center;gap:6px}.workflow-inspector-icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:10px;border:1px solid #d7e4fb;background:#fff;color:#5b6f8b;box-shadow:0 1px 2px #0f172a0a}.workflow-inspector-icon-button:hover{background:#f8fbff;color:#2563eb}.workflow-inspector-icon-button-danger{border-color:#f1c8c8;background:#fff4f4;color:#b91c1c}.workflow-inspector-icon-button-danger:hover{background:#feecec;color:#991b1b}.workflow-inspector h4{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-weight:500;font-size:.92rem}.workflow-port-section,.workflow-port-section-list{display:grid;gap:6px}.workflow-port-section-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;background:#fff;border:1px solid #e2e8f0}.workflow-port-section-item span{font-size:.8rem;color:#475569}.workflow-warning-card{display:grid;gap:4px;padding:10px 11px;border-radius:10px;border:1px solid #fecaca;background:#fff5f5}.workflow-warning-card strong{font-size:.8rem;font-weight:600;color:#b91c1c}.workflow-warning-card span{font-size:.76rem;color:#7f1d1d}.workflow-warning-detail{font-size:.7rem;color:#9f1239;opacity:.9}.port-type-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:2px 6px;border-radius:999px;border:1px solid transparent;font-size:.58rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.port-type-badge-number{color:#8a5600;background:#fff7e6;border-color:#f5d59b}.port-type-badge-boolean{color:#0f766e;background:#ecfdf5;border-color:#a7f3d0}.port-type-badge-string,.port-type-badge-enum{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.port-type-badge-datetime{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}.port-type-badge-json,.port-type-badge-any{color:#475569;background:#f8fafc;border-color:#cbd5e1}.port-type-badge-simulation{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.inspector-grid{display:grid;gap:8px;min-width:0}.inspector-item{display:grid;gap:3px;padding:9px 10px;border-radius:10px;background:#fff;border:1px solid #e2e8f0}.inspector-item span{color:#64748b;font-size:.72rem}.inspector-item strong{font-size:.84rem;font-weight:500;line-height:1.3}.inspector-binding-value{display:grid;gap:2px}.inspector-binding-value small{color:#64748b;font-size:.72rem;line-height:1.35;word-break:break-word}.workflow-inspector .parameter-editor.compact{min-height:116px;padding:10px 11px}.inspector-json-section,.inspector-json-block{display:grid;gap:8px}.inspector-json-block-title{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#64748b}.inspector-json-header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.8rem;font-weight:600;color:#334155}.error-card{background:#fff7f7}@media(max-width:1280px){.app-shell{grid-template-columns:260px 1fr}.app-shell.sidebar-closed{grid-template-columns:1fr}.right-panel{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.topbar{align-items:start;gap:12px;flex-direction:column}.app-shell,.app-shell.sidebar-closed,.split-grid,.signal-panel-grid,.summary-grid,.rule-detail-meta-grid,.form-grid,.rule-import-layout,.point-grid,.right-panel,.workflow-editor,.template-workflow-layout{grid-template-columns:1fr}.template-workflow-layout,.rule-import-template-summary{display:grid}.template-workflow-main{min-width:0}.workflow-ports-grid,.signal-panel-grid,.workflow-port-row,.template-port-row{grid-template-columns:1fr}.workflow-canvas{min-width:0;min-height:340px;resize:none}.template-debug-card{min-width:0}.workflow-header-tools-canvas-aligned{margin-right:0}.workflow-palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.binding-header,.binding-row{grid-template-columns:1fr}}:root[data-theme=dark]{color-scheme:dark;background:#0b1220;color:#d7e3f4}:root[data-theme=dark] html,:root[data-theme=dark] body,:root[data-theme=dark] #root{background:radial-gradient(circle at top left,rgba(83,118,170,.18),transparent 36%),radial-gradient(circle at top right,rgba(34,121,102,.14),transparent 30%),linear-gradient(180deg,#111b2d,#162134);color:#d7e3f4}:root[data-theme=dark] .app-loading-shell,:root[data-theme=dark] .app-frame,:root[data-theme=dark] .app-shell,:root[data-theme=dark] .left-panel,:root[data-theme=dark] .right-panel,:root[data-theme=dark] main{color:#d7e3f4}:root[data-theme=dark] .app-frame{background:radial-gradient(circle at top left,rgba(78,111,159,.14),transparent 30%),linear-gradient(180deg,#121d30,#172336);padding-bottom:12px}:root[data-theme=dark] .app-shell{background:transparent;border-radius:18px}:root[data-theme=dark] .main-panel{background:#131d2e66;border-radius:18px;padding:0}:root[data-theme=dark] .left-panel,:root[data-theme=dark] .right-panel{background:transparent}:root[data-theme=dark] .topbar,:root[data-theme=dark] .content-card,:root[data-theme=dark] .content-card-nested,:root[data-theme=dark] .context-card,:root[data-theme=dark] .sidebar-pane,:root[data-theme=dark] .record-card,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .state-item,:root[data-theme=dark] .summary-card,:root[data-theme=dark] .runner-trace-inline,:root[data-theme=dark] .error-card,:root[data-theme=dark] .workflow-focus-side-panel,:root[data-theme=dark] .workflow-focus-side-panel-body,:root[data-theme=dark] .dialog-card,:root[data-theme=dark] .rule-import-template-card,:root[data-theme=dark] .building-type-card,:root[data-theme=dark] .activity-log-card{background:#162134f0;border-color:#4e678a52;box-shadow:0 18px 48px #050a1847;color:#d7e3f4}:root[data-theme=dark] .workflow-focus-side-panel-body{background:transparent;border-color:#4e678a52;box-shadow:none}:root[data-theme=dark] .left-panel,:root[data-theme=dark] .left-panel .sidebar-pane,:root[data-theme=dark] .left-panel .context-card{background:#131d2ef5;border-color:#4e678a52}:root[data-theme=dark] .content-card,:root[data-theme=dark] .hero-card,:root[data-theme=dark] .telemetry-card,:root[data-theme=dark] .error-card,:root[data-theme=dark] .runner-trace-inline,:root[data-theme=dark] .record-card,:root[data-theme=dark] .version-card,:root[data-theme=dark] .dialog-card,:root[data-theme=dark] .building-type-card,:root[data-theme=dark] .activity-log-card{background:#1a283ef5;border-color:#4e678a52}:root[data-theme=dark] .monitoring-stack .content-card{border-color:#4c648652}:root[data-theme=dark] .template-debug-group{background:#22324c52;border-color:transparent;box-shadow:none}:root[data-theme=dark] .template-check-inline,:root[data-theme=dark] .rule-import-template-summary{background:#1e2d46f5;border-color:#425a7e}:root[data-theme=dark] .template-check-inline-title{color:#91a6c6}:root[data-theme=dark] .template-check-inline-status{color:#e5eefc}:root[data-theme=dark] .building-type-meta-field,:root[data-theme=dark] .building-type-status-title,:root[data-theme=dark] .building-type-status-hint,:root[data-theme=dark] .building-type-property-meta,:root[data-theme=dark] .property-tag-search-dropdown-empty{color:#91a6c6}:root[data-theme=dark] .building-type-status-card,:root[data-theme=dark] .building-type-property-row,:root[data-theme=dark] .property-tag-search-dropdown,:root[data-theme=dark] .property-tag-search-option{background:#1e2d46f5;border-color:#425a7e}:root[data-theme=dark] .building-type-status-text,:root[data-theme=dark] .property-tag-search-option{color:#e5eefc}:root[data-theme=dark] .property-tag-search-option strong{color:#91a6c6}:root[data-theme=dark] .building-type-property-row.selected{background:#263956fa;border-color:#6f92ca}:root[data-theme=dark] .building-type-property-row.orphaned{background:#4e3a1838;border-color:#c4994e57}:root[data-theme=dark] .building-type-status-switch{background:#324760;border:1px solid #4e6688}:root[data-theme=dark] .building-type-status-switch:after{background:#f8fbff}:root[data-theme=dark] .building-type-status-toggle input:checked+.building-type-status-switch{background:#4d82eb;border-color:#6e9df5}:root[data-theme=dark] .building-type-status-text,:root[data-theme=dark] .workflow-debug-trace-toggle .building-type-status-text,:root[data-theme=dark] .monitoring-status-toggle .building-type-status-text{color:#d9e6fb;opacity:1}:root[data-theme=dark] .property-assignment-conflict-overlay{background:#0b121f9e}:root[data-theme=dark] .workflow-port-row,:root[data-theme=dark] .template-port-row,:root[data-theme=dark] .rule-meta-building-summary,:root[data-theme=dark] .binding-device-trigger,:root[data-theme=dark] .device-empty-state,:root[data-theme=dark] .chip-button{background:#1e2d46f5;background-color:#1e2d46f5;background-image:none;border-color:#425a7e}:root[data-theme=dark] .workflow-port-list .workflow-port-row,:root[data-theme=dark] .workflow-port-list .template-port-row{background:#1e2d46f5;background-color:#1e2d46f5;background-image:none}:root[data-theme=dark] .workflow-port-row-head,:root[data-theme=dark] .rule-meta-building-summary span,:root[data-theme=dark] .device-tag-empty{color:#91a6c6}:root[data-theme=dark] .rule-meta-building-summary strong,:root[data-theme=dark] .binding-device-trigger,:root[data-theme=dark] .chip-button{color:#e5eefc}:root[data-theme=dark] .binding-device-trigger:hover{background:#263956fa;border-color:#5d79a4}:root[data-theme=dark] .chip-button{background:#263956eb;border-color:#5877a6}:root[data-theme=dark] .rule-detail-meta-card,:root[data-theme=dark] .template-meta-item,:root[data-theme=dark] .workflow-port-section-item,:root[data-theme=dark] .inspector-item,:root[data-theme=dark] .workflow-warning-card,:root[data-theme=dark] .workflow-debug-mode-switch,:root[data-theme=dark] .workflow-debug-mode-switch button,:root[data-theme=dark] .property-assignment-dialog,:root[data-theme=dark] .device-binding-dialog,:root[data-theme=dark] .workflow-confirm-card{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .workflow-doc-dialog{background:#182438f0;border-color:#566f9257;box-shadow:0 22px 44px #060c1857}:root[data-theme=dark] .workflow-confirm-overlay{background:#080e1a6b}:root[data-theme=dark] .rule-detail-meta-card{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .content-card-nested,:root[data-theme=dark] .workflow-context-panel .content-card-nested,:root[data-theme=dark] .right-panel .telemetry-card,:root[data-theme=dark] .right-panel .error-card{background:#1e2d46f2;border-color:#4e678a52}:root[data-theme=dark] .workflow-focus-side-panel-body .template-debug-card,:root[data-theme=dark] .workflow-focus-side-panel-body .workflow-inspector{background:transparent;border-color:transparent;box-shadow:none}:root[data-theme=dark] .workflow-inspector{background:#22324c6b;border-color:#4e678a52;box-shadow:none}:root[data-theme=dark] .workflow-context-panel .template-debug-card,:root[data-theme=dark] .workflow-context-panel .workflow-inspector{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .topbar{background:#131d2eeb;border-color:#334765}:root[data-theme=dark] .section-header,:root[data-theme=dark] .section-header.compact,:root[data-theme=dark] .workflow-debug-header,:root[data-theme=dark] .runner-trace-inline-toolbar{border-bottom-color:#24324a}:root[data-theme=dark] .topbar-title strong,:root[data-theme=dark] .section-header h3,:root[data-theme=dark] .workflow-node-header strong,:root[data-theme=dark] .context-card strong,:root[data-theme=dark] .record-card strong,:root[data-theme=dark] .stat-card strong,:root[data-theme=dark] .state-item strong,:root[data-theme=dark] .template-meta-item strong,:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3,:root[data-theme=dark] h4{color:#f8fbff}:root[data-theme=dark] .topbar-title span,:root[data-theme=dark] .eyebrow,:root[data-theme=dark] .field-hint,:root[data-theme=dark] .empty-state,:root[data-theme=dark] .context-card-label,:root[data-theme=dark] .context-card-id,:root[data-theme=dark] .record-card span,:root[data-theme=dark] .template-meta-item span,:root[data-theme=dark] .state-item span,:root[data-theme=dark] .workflow-node-header span,:root[data-theme=dark] .workflow-node-port-text,:root[data-theme=dark] .workflow-node-time-status strong,:root[data-theme=dark] .workflow-node-display-field span,:root[data-theme=dark] .workflow-node-inline-input-label,:root[data-theme=dark] .login-copy p,:root[data-theme=dark] .login-panel-copy p{color:#8ea4c4}:root[data-theme=dark] .rule-detail-meta-card strong,:root[data-theme=dark] .template-meta-item strong,:root[data-theme=dark] .inspector-item strong,:root[data-theme=dark] .workflow-port-section-item span,:root[data-theme=dark] .workflow-inspector h4,:root[data-theme=dark] .workflow-doc-header h3{color:#f8fbff}:root[data-theme=dark] .rule-detail-meta-card span,:root[data-theme=dark] .rule-detail-meta-card small,:root[data-theme=dark] .template-meta-item span,:root[data-theme=dark] .inspector-item span,:root[data-theme=dark] .inspector-binding-value small,:root[data-theme=dark] .workflow-doc-header .muted,:root[data-theme=dark] .workflow-warning-card span,:root[data-theme=dark] .workflow-warning-detail{color:#9fb2d0}:root[data-theme=dark] .workflow-inspector .editor-label,:root[data-theme=dark] .workflow-inspector .inspector-json-block-title,:root[data-theme=dark] .workflow-inspector .inspector-json-header{color:#9fb2d0}:root[data-theme=dark] .workflow-inspector input,:root[data-theme=dark] .workflow-inspector select,:root[data-theme=dark] .workflow-inspector textarea{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .workflow-inspector input:focus,:root[data-theme=dark] .workflow-inspector select:focus,:root[data-theme=dark] .workflow-inspector textarea:focus{border-color:#5e88d952;box-shadow:0 0 0 2px #5e88d91f}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#1a2740;color:#e6eefb;border-color:#3a5071;box-shadow:inset 0 1px #ffffff05}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#7288a7}:root[data-theme=dark] input:focus,:root[data-theme=dark] select:focus,:root[data-theme=dark] textarea:focus{border-color:#5e88d9;box-shadow:0 0 0 3px #5e88d92e}:root[data-theme=dark] .ghost-button,:root[data-theme=dark] .icon-button,:root[data-theme=dark] .inline-icon-button,:root[data-theme=dark] .section-toggle-button,:root[data-theme=dark] .section-header-trigger,:root[data-theme=dark] .workflow-inspector-icon-button,:root[data-theme=dark] .danger-icon-button{background:#1a2740;color:#d7e3f4;border-color:#3a5071}:root[data-theme=dark] .ghost-button:hover,:root[data-theme=dark] .icon-button:hover,:root[data-theme=dark] .inline-icon-button:hover,:root[data-theme=dark] .section-toggle-button:hover,:root[data-theme=dark] .section-header-trigger:hover,:root[data-theme=dark] .workflow-inspector-icon-button:hover{background:#21324f;border-color:#5b78a5;color:#f8fbff}:root[data-theme=dark] .ghost-button-subtle{color:#9fb0c8;border-color:#324662}:root[data-theme=dark] .theme-toggle-button.is-active{background:#243756;color:#ffe18a;border-color:#6988b6}:root[data-theme=dark] .workflow-debug-mode-switch{background:#22324f;border:1px solid #3b5275}:root[data-theme=dark] .workflow-debug-mode-switch button{background:transparent;color:#9fb2d0;border-color:transparent}:root[data-theme=dark] .workflow-debug-mode-switch button.is-active{background:#5682d43d;color:#dce9ff;box-shadow:inset 0 0 0 1px #6f9ae933}:root[data-theme=dark] .workflow-legend-item{color:#c8d7ee}:root[data-theme=dark] .workflow-legend-dot{border-color:#dfe8f533}:root[data-theme=dark] .workflow-legend-item:has(.workflow-legend-dot-input){background:#29498047;border-color:#6892e057}:root[data-theme=dark] .workflow-legend-item:has(.workflow-legend-dot-hvac){background:#1c543a47;border-color:#5db78352}:root[data-theme=dark] .workflow-legend-item:has(.workflow-legend-dot-logic){background:#6b4e1747;border-color:#d6ad5252}:root[data-theme=dark] .workflow-legend-item:has(.workflow-legend-dot-output){background:#165a6847;border-color:#54bfd252}:root[data-theme=dark] .primary-button{background:linear-gradient(135deg,#4e7fe6,#3267d6);border-color:#5d8df0;color:#f8fbff}:root[data-theme=dark] .primary-button:hover{background:linear-gradient(135deg,#5b89ea,#3b71dc)}:root[data-theme=dark] .nav-link{color:#c5d6ee}:root[data-theme=dark] .nav-link:hover,:root[data-theme=dark] .nav-link.active,:root[data-theme=dark] .nav-link.current{background:#5682d433;color:#f8fbff}:root[data-theme=dark] .context-badge,:root[data-theme=dark] .status-pill,:root[data-theme=dark] .meta-pill,:root[data-theme=dark] .workflow-node-output-preview strong,:root[data-theme=dark] .workflow-node-input-current-value,:root[data-theme=dark] .workflow-node-input-constant,:root[data-theme=dark] .workflow-node-time-state{box-shadow:none}:root[data-theme=dark] .context-badge{background:#1b2941;border-color:#3a5071}:root[data-theme=dark] .context-badge-release-combined{background:#1b2941}:root[data-theme=dark] .context-badge-release-icon,:root[data-theme=dark] .context-badge-release-label{color:#8ea4c4}:root[data-theme=dark] .context-badge-release-value,:root[data-theme=dark] .context-badge-release-commit,:root[data-theme=dark] .context-badge-release-date{color:#d9e5f5}:root[data-theme=dark] .record-card.selected,:root[data-theme=dark] .sidebar-list .record-card.selected{background:#2e4569eb;border-color:#6f92ca}:root[data-theme=dark] .sidebar-list .record-card{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .publication-version-card{background:#2334529e;border-color:#94a3b82e}:root[data-theme=dark] .publication-version-card.is-current{background:#1b3153c7;border-color:#7da7e03d}:root[data-theme=dark] .meta-pill-muted,:root[data-theme=dark] .status-pill,:root[data-theme=dark] .meta-pill{background:#253754;border-color:#486488;color:#d7e3f4}:root[data-theme=dark] .meta-pill-global{background:#3d75db33;border-color:#6190e573;color:#bbd4ff}:root[data-theme=dark] .meta-pill-tenant{background:#247a5f33;border-color:#43a48470;color:#c2f0e1}:root[data-theme=dark] .meta-pill-warning,:root[data-theme=dark] .status-inactive,:root[data-theme=dark] .status-error{background:#7c4d1242;border-color:#c98f3470;color:#ffd58f}:root[data-theme=dark] .port-type-badge-number{color:#ffd18a;background:#774e1057;border-color:#d6a24d6b}:root[data-theme=dark] .port-type-badge-boolean{color:#c8f7ea;background:#13625257;border-color:#4cc4a670}:root[data-theme=dark] .port-type-badge-string,:root[data-theme=dark] .port-type-badge-enum{color:#cfe0ff;background:#28498f57;border-color:#6a8fe970}:root[data-theme=dark] .port-type-badge-datetime{color:#e0d3ff;background:#57359257;border-color:#ab8eeb6b}:root[data-theme=dark] .port-type-badge-json,:root[data-theme=dark] .port-type-badge-any{color:#deebfb;background:#35466070;border-color:#6e84a66b}:root[data-theme=dark] .port-type-badge-simulation{color:#d7e5ff;background:#2b52a45c;border-color:#6b99f870}:root[data-theme=dark] .summary-grid .stat-card,:root[data-theme=dark] .mini-card,:root[data-theme=dark] .state-item{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .right-panel .mini-card{background:#22324c52;border-color:transparent}:root[data-theme=dark] .telemetry-filter-switch{background:#22324c52;border-color:transparent;box-shadow:none}:root[data-theme=dark] .telemetry-filter-switch button.is-active{background:#5b88d23d;color:#d7e6ff}:root[data-theme=dark] .monitoring-filter-row{border-top-color:#5f77a06b}:root[data-theme=dark] .monitoring-filter-label,:root[data-theme=dark] .monitoring-entry-headline span,:root[data-theme=dark] .runner-rule-item small{color:#91a6c6}:root[data-theme=dark] .monitoring-entry-card,:root[data-theme=dark] .runner-monitor-card{background:#1c2940f0;border-color:#4e678a2e;box-shadow:none}:root[data-theme=dark] .monitoring-entry-card{background:transparent;border-color:transparent}:root[data-theme=dark] .monitoring-entry-summary{background:transparent;padding:4px 0 10px}:root[data-theme=dark] .monitoring-entry-details{padding:0 0 8px}:root[data-theme=dark] .monitoring-entry-error{color:#fca5a5}:root[data-theme=dark] .monitoring-entry-headline strong,:root[data-theme=dark] .runner-rule-item strong{color:#e5eefc}:root[data-theme=dark] .runner-rule-item{background:#1d2c44d1;border-color:#4e678a24}:root[data-theme=dark] .runner-rule-summary-grid .stat-card,:root[data-theme=dark] .monitoring-entry-details .stat-card,:root[data-theme=dark] .monitoring-summary-grid .stat-card{background:#22324c6b;border-color:transparent;box-shadow:none}:root[data-theme=dark] .monitoring-preview{background:#121c2deb;border-color:#425879;color:#d5e4fa}:root[data-theme=dark] .brand-logo-frame{filter:brightness(1.08) saturate(1.08)}:root[data-theme=dark] .workflow-node{background:linear-gradient(180deg,#1e2a41fa,#141d2efa);border-color:#415779;box-shadow:0 14px 34px #0408143d}:root[data-theme=dark] .workflow-node-input{background:linear-gradient(180deg,#1f395dfa,#152842fa)}:root[data-theme=dark] .workflow-node-hvac{background:linear-gradient(180deg,#1a423cfa,#122b28fa)}:root[data-theme=dark] .workflow-node-logic{background:linear-gradient(180deg,#4f3b18fa,#342610fa)}:root[data-theme=dark] .workflow-node-output{background:linear-gradient(180deg,#18404cfa,#102931fa)}:root[data-theme=dark] .workflow-node.selected{border-color:#6ca0ff;box-shadow:0 0 0 2px #6ca0ff38,0 16px 38px #02061775}:root[data-theme=dark] .workflow-node-simulation-changed{border-color:#e2c044;box-shadow:0 0 0 2px #e2c04433,0 16px 38px #0206176b}:root[data-theme=dark] .workflow-node.selected.workflow-node-simulation-changed{border-color:#f0d25f;box-shadow:0 0 0 2px #6ca0ff38,0 0 0 4px #e2c04429,0 18px 42px #0206177a}:root[data-theme=dark] .workflow-node-info-button{background:#15223a;border-color:#354966;color:#bcd0ea}:root[data-theme=dark] .workflow-node-info-button:hover{background:#1a2b47;color:#f8fbff}:root[data-theme=dark] .workflow-node-port-handle,:root[data-theme=dark] .react-flow__handle{background:#79a7ff;border-color:#dbe7ff}:root[data-theme=dark] .workflow-node-port-handle.is-disabled{background:#51637d;border-color:#7a8ca6}:root[data-theme=dark] .workflow-node-output-preview strong{background:#15284d;border-color:#5d8df0;color:#aecdff}:root[data-theme=dark] .workflow-node-input-current-value{background:#1b2440;color:#8fb2ff}:root[data-theme=dark] .workflow-node-input-constant,:root[data-theme=dark] .workflow-node-time-state{background:#33240e;color:#ffd180}:root[data-theme=dark] .workflow-node-time-state.is-active{background:#3f2b0d;color:#ffd98d}:root[data-theme=dark] .workflow-canvas,:root[data-theme=dark] .react-flow,:root[data-theme=dark] .react-flow__pane{background-color:transparent}:root[data-theme=dark] .workflow-canvas{background:radial-gradient(circle at top left,rgba(74,108,152,.08),transparent 26%),linear-gradient(180deg,#18263d,#132033);border-color:#3a5071}:root[data-theme=dark] .workflow-canvas-toolbar-button,:root[data-theme=dark] .workflow-canvas-toolbar-hint{background:#1a283ef0;border-color:#3a5071;color:#b8cce8;box-shadow:0 10px 22px #04081433}:root[data-theme=dark] .workflow-canvas-bottom-hint{color:#b8cce8c7}:root[data-theme=dark] .workflow-inspector-icon-button{background:#22324f;border-color:#425a7e;color:#c0d2eb}:root[data-theme=dark] .workflow-inspector-icon-button:hover{background:#294063;border-color:#5b78a5;color:#f8fbff}:root[data-theme=dark] .workflow-inspector-icon-button-danger{background:#7a293542;border-color:#c561717a;color:#ffc6cf}:root[data-theme=dark] .workflow-inspector-icon-button-danger:hover{background:#8c303e57;color:#ffe0e5}:root[data-theme=dark] .react-flow__controls,:root[data-theme=dark] .react-flow__minimap,:root[data-theme=dark] .react-flow__panel{background:#152032f0;border:1px solid #334765;box-shadow:0 14px 32px #0408143d}:root[data-theme=dark] .react-flow__controls button{background:#1a2740;color:#d7e3f4;border-bottom-color:#334765}:root[data-theme=dark] .react-flow__controls button svg,:root[data-theme=dark] .react-flow__controls button svg *,:root[data-theme=dark] .react-flow__controls button path,:root[data-theme=dark] .react-flow__controls button line,:root[data-theme=dark] .react-flow__controls button rect,:root[data-theme=dark] .react-flow__controls button circle,:root[data-theme=dark] .react-flow__controls button polyline{stroke:#d7e3f4;fill:#d7e3f4}:root[data-theme=dark] .react-flow__controls button:hover{background:#21324f}:root[data-theme=dark] .weekly-schedule-day{background:#2a3a5861;border-color:#94a3b82e}:root[data-theme=dark] .workflow-port-value,:root[data-theme=dark] .template-port-value,:root[data-theme=dark] .state-list,:root[data-theme=dark] .activity-list,:root[data-theme=dark] .card-list{border-color:#24324a}:root[data-theme=dark] .login-shell:before{background:linear-gradient(180deg,#0a121f80,#0a121f9e)}:root[data-theme=dark] .login-card,:root[data-theme=dark] .login-brand-panel,:root[data-theme=dark] .login-form-panel{background:#152032f2;border-color:#334765;box-shadow:0 24px 60px #050a1857}:root[data-theme=dark] .sidebar-title,:root[data-theme=dark] .section-label,:root[data-theme=dark] .workflow-debug-speed span{color:#9fb2d0}:root[data-theme=dark] .login-panel-copy h1,:root[data-theme=dark] .login-brand-copy strong,:root[data-theme=dark] .login-form label{color:#f8fbff}:root[data-theme=dark] .login-brand-copy p,:root[data-theme=dark] .login-panel-copy p,:root[data-theme=dark] .login-footer-link{color:#9fb2d0}:root[data-theme=dark] .login-area-badge{background:#436cb833;color:#b9d2ff}:root[data-theme=dark] .validation-summary,:root[data-theme=dark] .table-shell,:root[data-theme=dark] table thead th,:root[data-theme=dark] .record-table thead th{border-color:#24324a}:root[data-theme=dark] .validation-status-card.is-error{background:#7a182a61;border-color:#f8717173}:root[data-theme=dark] .validation-status-card.is-error span,:root[data-theme=dark] .validation-status-card.is-error strong{color:#fecaca}:root[data-theme=dark] table thead th,:root[data-theme=dark] .record-table thead th{background:#162135;color:#9fb2d0}:root[data-theme=dark] table tbody td,:root[data-theme=dark] .record-table tbody td{border-color:#1d2a40}:root[data-theme=dark] table tbody tr:nth-child(2n) td,:root[data-theme=dark] .record-table tbody tr:nth-child(2n) td{background:#0f17276b}:root[data-theme=dark] pre{background:#0f1727;border-color:#24324a;color:#d7e3f4}
