.flow-card[data-v-352bd3b8]{transition:all .2s ease}.flow-card[data-v-352bd3b8]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a!important}.h-100[data-v-352bd3b8]{height:100%}.event-type-badge[data-v-10cc7fde]{display:inline-block;border-radius:.25rem;padding:.25rem .5rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.type-alarm[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.type-warning[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.type-info[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.type-error[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.type-critical[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(252 165 165 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(69 10 10 / var(--tw-text-opacity, 1))}.type-normal[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.type-emergency[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(254 205 211 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(136 19 55 / var(--tw-text-opacity, 1))}.type-fault[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(124 45 18 / var(--tw-text-opacity, 1))}.type-notification[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.type-status[data-v-10cc7fde]{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(49 46 129 / var(--tw-text-opacity, 1))}.device-type-badge[data-v-10cc7fde],.action-badge[data-v-10cc7fde]{display:inline-block;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.025em;--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}@keyframes fadeIn-b4fb85d2{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn[data-v-b4fb85d2]{animation:fadeIn-b4fb85d2 .15s ease-out}.flow-editor[data-v-975c2aa0]{width:100%;height:100%;overflow:hidden;transition:background-color var(--transition-base)}.flow-container[data-v-975c2aa0]{width:100%;height:100%;position:relative;background-color:var(--color-bg-secondary);transition:background-color var(--transition-base)}.flow-container[data-v-975c2aa0] .vue-flow,.flow-container[data-v-975c2aa0] .vue-flow__container,.flow-container[data-v-975c2aa0] .vue-flow__viewport{width:100%;height:100%}[data-v-975c2aa0] .vue-flow__pane{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important}[data-v-975c2aa0] .vue-flow__renderer,[data-v-975c2aa0] .vue-flow__transformationpane{width:100%;height:100%}.light-theme .flow-container[data-v-975c2aa0]{background-color:var(--color-bg-secondary)}.dark-theme .flow-container[data-v-975c2aa0]{background-color:var(--color-bg-primary)}.deletion-hint[data-v-975c2aa0]{position:absolute;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);background:#3b82f6f2;color:var(--color-text-inverse);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-lg);z-index:var(--z-index-tooltip);animation:slideUp-975c2aa0 .3s ease-out}@keyframes slideUp-975c2aa0{0%{opacity:0;transform:translate(-50%) translateY(var(--spacing-lg))}to{opacity:1;transform:translate(-50%) translateY(0)}}.deletion-hint kbd[data-v-975c2aa0]{background:#fff3;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);margin:0 var(--spacing-xs)}[data-v-975c2aa0] .vue-flow__background{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;transition:background-color var(--transition-base)}.light-theme[data-v-975c2aa0] .vue-flow__background{background-color:var(--color-bg-secondary)}.dark-theme[data-v-975c2aa0] .vue-flow__background{background-color:var(--color-bg-primary)}[data-v-975c2aa0] .vue-flow__background-pattern{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}[data-v-975c2aa0] .vue-flow__background-pattern svg{display:block!important;width:100%!important;height:100%!important}[data-v-975c2aa0] .vue-flow__edge{cursor:pointer;transition:all var(--transition-fast)}[data-v-975c2aa0] .vue-flow__edge:hover{filter:brightness(1.2)}[data-v-975c2aa0] .vue-flow__edge.selected{filter:drop-shadow(0 0 4px rgba(59,130,246,.8))}[data-v-975c2aa0] .vue-flow__edge-path{transition:stroke var(--transition-base);stroke-width:2px}[data-v-975c2aa0] .vue-flow__edge{color:var(--color-text-secondary)}[data-v-975c2aa0] .vue-flow__edge[style*=stroke]{color:inherit}[data-v-975c2aa0] .vue-flow__edge path.vue-flow__edge-path{stroke:currentColor}[data-v-975c2aa0] .vue-flow__connection-path{stroke:var(--color-primary);stroke-width:2px}[data-v-975c2aa0] .vue-flow__handle{width:10px!important;height:10px!important;border-radius:50%;border:2px solid var(--color-surface);background:var(--color-primary);transition:all var(--transition-fast)}[data-v-975c2aa0] .vue-flow__handle:hover{box-shadow:0 0 0 3px #3b82f633;border-color:var(--color-primary)}[data-v-975c2aa0] .vue-flow__handle.connecting{box-shadow:0 0 0 4px #3b82f64d;border-color:var(--color-primary)}[data-v-975c2aa0] .vue-flow__handle.valid{background:#10b981}[data-v-975c2aa0] .vue-flow__handle.invalid{background:#ef4444}[data-v-975c2aa0] .vue-flow__handle-left{left:-5px!important}[data-v-975c2aa0] .vue-flow__handle-right{right:-5px!important}[data-v-975c2aa0] .vue-flow__handle-top{top:-5px!important}[data-v-975c2aa0] .vue-flow__handle-bottom{bottom:-5px!important}[data-v-975c2aa0] .vue-flow__minimap{background-color:#fffffff2;border:var(--border-width) solid var(--color-border-primary);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);transition:background-color var(--transition-base),border-color var(--transition-base);position:absolute!important;bottom:20px!important;right:20px!important;width:200px!important;height:150px!important}.dark-theme[data-v-975c2aa0] .vue-flow__minimap{background-color:var(--color-surface);border-color:var(--color-border-primary)}[data-v-975c2aa0] .vue-flow__minimap-mask{fill:#3b82f626;stroke:var(--color-primary);stroke-width:2;cursor:grab}[data-v-975c2aa0] .vue-flow__minimap-mask:active{cursor:grabbing}[data-v-975c2aa0] .vue-flow__minimap-node{stroke:none}[data-v-975c2aa0] .vue-flow__controls{transition:background-color var(--transition-base);position:absolute!important;bottom:20px!important;left:20px!important;box-shadow:var(--shadow-md);border-radius:var(--border-radius-md);background:var(--color-surface);border:var(--border-width) solid var(--color-border-primary);padding:2px!important;display:flex!important;flex-direction:column!important;gap:0!important}[data-v-975c2aa0] .vue-flow__controls-button{width:24px!important;height:24px!important;border:none!important;background-color:var(--color-surface);color:var(--color-text-primary);transition:all var(--transition-fast);display:flex!important;align-items:center!important;justify-content:center!important;border-radius:var(--border-radius-sm);cursor:pointer;padding:4px!important;margin:2px!important}[data-v-975c2aa0] .vue-flow__controls-button:hover{background-color:var(--color-surface-hover)}[data-v-975c2aa0] .vue-flow__controls-button svg{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}.dark-theme[data-v-975c2aa0] .vue-flow__controls{background-color:var(--color-surface);border-color:var(--color-border-primary)}.dark-theme[data-v-975c2aa0] .vue-flow__controls-button{background-color:var(--color-surface);color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .vue-flow__controls-button:hover{background-color:var(--color-surface-hover)}.dark-theme[data-v-975c2aa0] .base-node{background:var(--color-surface);box-shadow:var(--shadow-md)}[data-v-975c2aa0] .vue-flow__node.selected{box-shadow:0 0 0 3px #3b82f680!important}.dark-theme[data-v-975c2aa0] .vue-flow__node.selected{box-shadow:0 0 0 3px #3b82f6b3!important}.dark-theme[data-v-975c2aa0] .node-content,.dark-theme[data-v-975c2aa0] .node-content-expanded,.dark-theme[data-v-975c2aa0] .info-value,.dark-theme[data-v-975c2aa0] .count-value{color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .field input,.dark-theme[data-v-975c2aa0] .field select{background:var(--color-surface-hover);border-color:var(--color-border-primary);color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .info-label{color:var(--color-text-tertiary)}.dark-theme[data-v-975c2aa0] .info-value{color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .field-view label{color:var(--color-text-tertiary)}.dark-theme[data-v-975c2aa0] .field-view span{color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .count-display{background:var(--color-surface-hover)}.dark-theme[data-v-975c2aa0] .count-label{color:var(--color-text-tertiary)}.dark-theme[data-v-975c2aa0] .count-value{color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .logic-display{background:var(--color-surface-hover)}.dark-theme[data-v-975c2aa0] .logic-symbol{color:var(--color-text-primary)}.dark-theme[data-v-975c2aa0] .logic-description{color:var(--color-text-tertiary)}.dark-theme[data-v-975c2aa0] .output-status{background:var(--color-surface-hover);color:var(--color-text-secondary)}.dark-theme[data-v-975c2aa0] .output-status.active{background:#065f46;color:#6ee7b7}.dark-theme[data-v-975c2aa0] .inputs-info{color:var(--color-text-tertiary)}.dark-theme[data-v-975c2aa0] .mode-badge{background:#1e40af;color:#dbeafe}.dark-theme[data-v-975c2aa0] .action-badge,.dark-theme[data-v-975c2aa0] .device-type-badge{background:#5b21b6;color:#ddd6fe}.dark-theme[data-v-975c2aa0] .event-type-badge{color:#1f2937}.dark-theme[data-v-975c2aa0] .event-type-badge.type-alarm{background:#fca5a5;color:#7f1d1d}.dark-theme[data-v-975c2aa0] .event-type-badge.type-warning{background:#fcd34d;color:#78350f}.dark-theme[data-v-975c2aa0] .event-type-badge.type-info{background:#93c5fd;color:#1e3a8a}.dark-theme[data-v-975c2aa0] .event-type-badge.type-error{background:#f87171;color:#7f1d1d}.dark-theme[data-v-975c2aa0] .event-type-badge.type-critical{background:#ef4444;color:#450a0a}.dark-theme[data-v-975c2aa0] .event-type-badge.type-normal{background:#6ee7b7;color:#064e3b}.dark-theme[data-v-975c2aa0] .event-type-badge.type-emergency{background:#fb7185;color:#881337}.dark-theme[data-v-975c2aa0] .event-type-badge.type-fault{background:#fb923c;color:#7c2d12}.dark-theme[data-v-975c2aa0] .event-type-badge.type-notification{background:#60a5fa;color:#1e3a8a}.dark-theme[data-v-975c2aa0] .event-type-badge.type-status{background:#818cf8;color:#312e81}.dark-theme[data-v-975c2aa0] .expand-button{background:var(--color-surface-hover);border-color:var(--color-border-primary);color:var(--color-text-secondary)}.dark-theme[data-v-975c2aa0] .expand-button:hover{background:var(--color-surface-active)}.vue-flow{position:relative;width:100%;height:100%;overflow:hidden;z-index:0;direction:ltr}.vue-flow__container{position:absolute;height:100%;width:100%;left:0;top:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-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:default}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.vue-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%)}.vue-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{position:absolute;z-index:5;margin:15px}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10}}:root{--vf-node-bg: #fff;--vf-node-text: #222;--vf-connection-path: #b1b1b7;--vf-handle: #555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{padding:10px;border-radius:3px;width:150px;font-size:12px;text-align:center;border-width:1px;border-style:solid;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-color:var(--vf-node-color)}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid #555}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color: var(--vf-node-color, #0041d0);--vf-handle: var(--vf-node-color, #0041d0);--vf-box-shadow: var(--vf-node-color, #0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color, #0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{outline:none;border:1px solid var(--vf-node-color, #0041d0)}.vue-flow__node-default{--vf-handle: var(--vf-node-color, #1a192b);--vf-box-shadow: var(--vf-node-color, #1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color, #1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{outline:none;border:1px solid var(--vf-node-color, #1a192b)}.vue-flow__node-output{--vf-handle: var(--vf-node-color, #ff0072);--vf-box-shadow: var(--vf-node-color, #ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color, #ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid var(--vf-node-color, #ff0072)}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{width:6px;height:6px;background:var(--vf-handle);border:1px solid #fff;border-radius:100%}body.flow-page-active .vue-flow svg{width:auto!important;height:auto!important}body.flow-page-active svg.system-icon,body.flow-page-active .system-icon,body.flow-page-active .header .system-icon,body.flow-page-active header .system-icon,body.flow-page-active .system-branding .system-icon{width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important}body.flow-page-active .header button svg,body.flow-page-active header button svg{width:20px!important;height:20px!important}body.flow-page-active .right-sidebar .close-btn svg,body.flow-page-active .right-sidebar .group-header svg,body.flow-page-active .right-sidebar .toggle-btn svg{width:14px!important;height:14px!important}body.flow-page-active .right-sidebar .notification-icon svg{width:16px!important;height:16px!important}body.flow-page-active .right-sidebar .notifications-empty svg{width:48px!important;height:48px!important}body.flow-page-active .notification-badge .notification-badge-icon svg{width:20px!important;height:20px!important}body.flow-page-active .notification-badge .notification-badge-close svg{width:16px!important;height:16px!important}body.flow-page-active .language-switcher svg,body.flow-page-active .user-dropdown-menu svg{width:16px!important;height:16px!important}
