@import"https://fonts.googleapis.com/earlyaccess/notosanstc.css";.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color, var(--xy-background-color-props, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.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:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@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;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__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:var(--xy-resize-background-color, var(--xy-resize-background-color-default));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:var(--xy-resize-background-color, var(--xy-resize-background-color-default));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%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/materialsymbolsoutlined/v76/kJF4BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY40KH8nGzv3fz_VFU22ZZLsYEpzC_1ver5Y0.woff2) format("woff2")}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;background-color:#e0e0e0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{height:100%;width:100%;margin:0;padding:0;scroll-behavior:smooth}body{font-family:Noto sans TC,Noto sans,Microsoft JhengHei,微軟正黑體,sans-serif;font-weight:300}#root{width:100%;height:100%}h1{margin:0}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#7e7e7e;cursor:pointer;transition:border-color .25s}.mobile-block{display:none}@media screen and (max-width: 1023px){.mobile-block{content:"";display:flex;position:fixed;width:100vw;height:100vh;top:0;right:0;bottom:0;left:0;z-index:9999;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#eff6ff,#e0e7ff);text-align:center;padding:10%}.mobile-block h2{font-size:30px}}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/materialsymbolsoutlined/v76/kJF4BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY40KH8nGzv3fz_VFU22ZZLsYEpzC_1ver5Y0.woff2) format("woff2")}*{position:relative;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Noto sans TC,Noto sans,Microsoft JhengHei,微軟正黑體,sans-serif;font-weight:300;background-color:var(--bg-color)}body.white{background-color:#fff}a{text-decoration:none;color:var(--text-color)}ul{list-style:none;padding:0;margin:0}.container{max-width:1440px;padding:0 8px;margin:0 auto}.row{display:flex;flex-wrap:wrap}.row.gap4{margin:0 -4px}.row.gap4>*{padding:0 4px}.flex-dir-col{flex-direction:column}.flex-align-c{align-items:center}.flex-align-end{align-items:end}.flex-jus-c{justify-content:center}.flex-jus-end{justify-content:end}.flex-dir-row-rev{flex-direction:row-reverse}.flex-grow-0{flex-grow:0}.flex-grow-1{flex-grow:1}.col{flex:1 0 0%}.col-1{width:8.33333333%}.col-2{width:16.66666667%}.col-3{width:25%}.col-4{width:33.33333333%}.col-5{width:41.66666667%}.col-6{width:50%}.col-7{width:58.33333333%}.col-8{width:66.66666667%}.col-9{width:75%}.col-10{width:83.33333333%}.col-11{width:91.66666667%}.col-12{width:100%}@media only screen and (max-width: 1200px){.container{padding:0 16px;max-width:1024px}.col-lg-12{width:100%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}}@media (max-width: 1024px){.col-md-12{width:100%}.col-md-8{width:66.6666666%}.col-md-5{width:41.66666667%}.col-md-6{width:50%}.col-md-4{width:33.33333333%}.md-hidden{visibility:hidden;height:0}}@media (max-width: 768px){.col-sm-12{width:100%}.col-sm-9{width:75%}.col-sm-8{width:66.6666666%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.sm-hidden{visibility:hidden;height:0}}@media (max-width: 640px){.col-xsm-12{width:100%}.col-xsm-6{width:50%}.row-xsm{display:flex;flex-wrap:wrap;margin:0 -4px}.flex-xsm-align-c{align-items:center}.flex-xsm-align-end{align-items:end}.flex-xsm-jus-c{justify-content:center}.flex-xsm-jus-end{justify-content:end}.text-xsm-center{text-align:center}}@media (max-width: 480px){.col-xs-12{width:100%}.col-xs-6{width:50%}.xs-hidden{visibility:hidden;height:0}}.mouse-link{cursor:pointer}.hidden{display:none!important}.w-100{width:100%}.h-100{height:100%}.po-fixed{position:fixed}.po-ab{position:absolute}.translate-center{transform:translate(-50%,-50%)}.f-white{color:#fff!important}.f-radius-sm{border-radius:8px!important}.f-radius-md{border-radius:16px!important}.f-radius-shadow-sm{box-shadow:0 0 8px #00000008!important}.f-radius-shadow-md{box-shadow:0 0 16px #00000013!important}.dashed{border:.5px dashed #ddd}.u-cf:after{content:"";display:block;clear:both;height:0;visibility:hidden}.text-center{text-align:center}.text-bold{font-weight:700}.pointer{cursor:pointer}.hover-op80{transition:.3s}.hover-op80:hover{opacity:.8}.mtb-xxl{margin-top:256px!important;margin-bottom:256px!important}.mtb-xl{margin-top:128px!important;margin-bottom:128px!important}.mtb-lg{margin-top:64px!important;margin-bottom:64px!important}.mtb-md{margin-top:32px!important;margin-bottom:32px!important}.mtb-sm{margin-top:16px!important;margin-bottom:16px!important}.mtb-xs{margin-top:8px!important;margin-bottom:8px!important}.mtb-xxs{margin-top:4px!important;margin-bottom:4px!important}.mtb-0{margin-top:0!important;margin-bottom:0!important}.mlr-xxl{margin-left:256px!important;margin-right:256px!important}.mlr-xl{margin-left:128px!important;margin-right:128px!important}.mlr-lg{margin-left:64px!important;margin-right:64px!important}.mlr-md{margin-left:32px!important;margin-right:32px!important}.mlr-sm{margin-left:16px!important;margin-right:16px!important}.mlr-xs{margin-left:8px!important;margin-right:8px!important}.mlr-xxs{margin-left:4px!important;margin-right:4px!important}.mlr-0{margin-left:0!important;margin-right:0!important}.m-xxl{margin:256px!important}.m-xl{margin:128px!important}.m-lg{margin:64px!important}.m-md{margin:32px!important}.m-sm{margin:16px!important}.m-xs{margin:8px!important}.m-xxs{margin:4px!important}.m-0{margin:0!important}.mt-xxl{margin-top:256px!important}.mt-xl{margin-top:128px!important}.mt-lg{margin-top:64px!important}.mt-md{margin-top:32px!important}.mt-sm{margin-top:16px!important}.mt-xs{margin-top:8px!important}.mt-xxs{margin-top:4px!important}.mt-0{margin-top:0!important}.mb-xxl{margin-bottom:256px!important}.mb-xl{margin-bottom:128px!important}.mb-lg{margin-bottom:64px!important}.mb-md{margin-bottom:32px!important}.mb-sm{margin-bottom:16px!important}.mb-xs{margin-bottom:8px!important}.mb-xxs{margin-bottom:4px!important}.mb-0{margin-bottom:0!important}.mr-xxl{margin-right:256px!important}.mr-xl{margin-right:128px!important}.mr-lg{margin-right:64px!important}.mr-md{margin-right:32px!important}.mr-sm{margin-right:16px!important}.mr-xs{margin-right:8px!important}.mr-xxs{margin-right:4px!important}.mr-0{margin-right:0!important}.ml-xxl{margin-left:256px!important}.ml-xl{margin-left:128px!important}.ml-lg{margin-left:64px!important}.ml-md{margin-left:32px!important}.ml-sm{margin-left:16px!important}.ml-xs{margin-left:8px!important}.ml-xxs{margin-left:4px!important}.ml-0{margin-left:0!important}.ptb-xxl{padding-top:256px!important;padding-bottom:256px!important}.ptb-xl{padding-top:128px!important;padding-bottom:128px!important}.ptb-lg{padding-top:64px!important;padding-bottom:64px!important}.ptb-md{padding-top:32px!important;padding-bottom:32px!important}.ptb-sm{padding-top:16px!important;padding-bottom:16px!important}.ptb-xs{padding-top:8px!important;padding-bottom:8px!important}.ptb-xxs{padding-top:4px!important;padding-bottom:4px!important}.ptb-0{padding-top:0!important;padding-bottom:0!important}.plr-xxl{padding-left:256px!important;padding-right:256px!important}.plr-xl{padding-left:128px!important;padding-right:128px!important}.plr-lg{padding-left:64px!important;padding-right:64px!important}.plr-md{padding-left:32px!important;padding-right:32px!important}.plr-sm{padding-left:16px!important;padding-right:16px!important}.plr-xs{padding-left:8px!important;padding-right:8px!important}.plr-xxs{padding-left:4px!important;padding-right:4px!important}.plr-0{padding-left:0!important;padding-right:0!important}.p-xxl{padding:256px!important}.p-xl{padding:128px!important}.p-lg{padding:64px!important}.p-md{padding:32px!important}.p-sm{padding:16px!important}.p-xs{padding:8px!important}.p-xxs{padding:4px!important}.p-0{padding:0!important}.pt-xxl{padding-top:256px!important}.pt-xl{padding-top:128px!important}.pt-lg{padding-top:64px!important}.pt-md{padding-top:32px!important}.pt-sm{padding-top:16px!important}.pt-xs{padding-top:8px!important}.pt-xxs{padding-top:4px!important}.pt-0{padding-top:0!important}.pb-xxl{padding-bottom:256px!important}.pb-xl{padding-bottom:128px!important}.pb-lg{padding-bottom:64px!important}.pb-md{padding-bottom:32px!important}.pb-sm{padding-bottom:16px!important}.pb-xs{padding-bottom:8px!important}.pb-xxs{padding-bottom:4px!important}.pb-0{padding-bottom:0!important}.pl-xxl{padding-left:256px!important}.pl-xl{padding-left:128px!important}.pl-lg{padding-left:64px!important}.pl-md{padding-left:32px!important}.pl-sm{padding-left:16px!important}.pl-xs{padding-left:8px!important}.pl-xxs{padding-left:4px!important}.pl-0{padding-left:0!important}.pr-xxl{padding-right:256px!important}.pr-xl{padding-right:128px!important}.pr-lg{padding-right:64px!important}.pr-md{padding-right:32px!important}.pr-sm{padding-right:16px!important}.pr-xs{padding-right:8px!important}.pr-xxs{padding-right:4px!important}.pr-0{padding-right:0!important}@media (max-width: 768px){.mt-sm-4px{margin-top:4px!important}.mt-sm-xs{margin-top:8px!important}.mt-sm-sm{margin-top:16px!important}.mt-sm-md{margin-top:32px!important}.mb-sm-4px{margin-bottom:4px!important}.mb-sm-xs{margin-bottom:8px!important}.mb-sm-sm{margin-bottom:16px!important}.mb-sm-md{margin-bottom:32px!important}.ml-sm-4px{margin-left:4px!important}.ml-sm-xs{margin-left:8px!important}.ml-sm-sm{margin-left:16px!important}.ml-sm-md{margin-left:32px!important}.mr-sm-4px{margin-right:4px!important}.mr-sm-xs{margin-right:8px!important}.mr-sm-sm{margin-right:16px!important}.mr-sm-md{margin-right:32px!important}.mtb-sm-4px{margin-top:4px!important;margin-bottom:4px!important}.mtb-sm-xs{margin-top:8px!important;margin-bottom:8px!important}.mtb-sm-sm{margin-top:16px!important;margin-bottom:16px!important}.mtb-sm-md{margin-top:32px!important;margin-bottom:32px!important}.mlr-sm-4px{margin-left:4px!important;margin-right:4px!important}.mlr-sm-xs{margin-left:8px!important;margin-right:8px!important}.mlr-sm-sm{margin-left:16px!important;margin-right:16px!important}.mlr-sm-md{margin-left:32px!important;margin-right:32px!important}.pt-sm-4px{padding-top:4px!important}.pt-sm-xs{padding-top:8px!important}.pt-sm-sm{padding-top:16px!important}.pt-sm-md{padding-top:32px!important}.pb-sm-4px{padding-bottom:4px!important}.pb-sm-xs{padding-bottom:8px!important}.pb-sm-sm{padding-bottom:16px!important}.pb-sm-md{padding-bottom:32px!important}.pl-sm-4px{padding-left:4px!important}.pl-sm-xs{padding-left:8px!important}.pl-sm-sm{padding-left:16px!important}.pl-sm-md{padding-left:32px!important}.pr-sm-4px{padding-right:4px!important}.pr-sm-xs{padding-right:8px!important}.pr-sm-sm{padding-right:16px!important}.pr-sm-md{padding-right:32px!important}.ptb-sm-4px{padding-top:4px!important;padding-bottom:4px!important}.ptb-sm-xs{padding-top:8px!important;padding-bottom:8px!important}.ptb-sm-sm{padding-top:16px!important;padding-bottom:16px!important}.ptb-sm-md{padding-top:32px!important;padding-bottom:32px!important}.plr-sm-4px{padding-left:4px!important;padding-right:4px!important}.plr-sm-xs{padding-left:8px!important;padding-right:8px!important}.plr-sm-sm{padding-left:16px!important;padding-right:16px!important}.plr-sm-md{padding-left:32px!important;padding-right:32px!important}}@media (max-width: 480px){.mt-xs-4px{margin-top:4px!important}.mt-xs-xs{margin-top:8px!important}.mt-xs-sm{margin-top:16px!important}.mt-xs-md{margin-top:32px!important}.mb-xs-4px{margin-bottom:4px!important}.mb-xs-xs{margin-bottom:8px!important}.mb-xs-sm{margin-bottom:16px!important}.mb-xs-md{margin-bottom:32px!important}.ml-xs-4px{margin-left:4px!important}.ml-xs-xs{margin-left:8px!important}.ml-xs-sm{margin-left:16px!important}.ml-xs-md{margin-left:32px!important}.mr-xs-4px{margin-right:4px!important}.mr-xs-xs{margin-right:8px!important}.mr-xs-sm{margin-right:16px!important}.mr-xs-md{margin-right:32px!important}.mtb-xs-4px{margin-top:4px!important;margin-bottom:4px!important}.mtb-xs-xs{margin-top:8px!important;margin-bottom:8px!important}.mtb-xs-sm{margin-top:16px!important;margin-bottom:16px!important}.mtb-xs-md{margin-top:32px!important;margin-bottom:32px!important}.mlr-xs-4px{margin-left:4px!important;margin-right:4px!important}.mlr-xs-xs{margin-left:8px!important;margin-right:8px!important}.mlr-xs-sm{margin-left:16px!important;margin-right:16px!important}.mlr-xs-md{margin-left:32px!important;margin-right:32px!important}.pt-xs-4px{padding-top:4px!important}.pt-xs-xs{padding-top:8px!important}.pt-xs-sm{padding-top:16px!important}.pt-xs-md{padding-top:32px!important}.pb-xs-4px{padding-bottom:4px!important}.pb-xs-xs{padding-bottom:8px!important}.pb-xs-sm{padding-bottom:16px!important}.pb-xs-md{padding-bottom:32px!important}.pl-xs-4px{padding-left:4px!important}.pl-xs-xs{padding-left:8px!important}.pl-xs-sm{padding-left:16px!important}.pl-xs-md{padding-left:32px!important}.pr-xs-4px{padding-right:4px!important}.pr-xs-xs{padding-right:8px!important}.pr-xs-sm{padding-right:16px!important}.pr-xs-md{padding-right:32px!important}.ptb-xs-4px{padding-top:4px!important;padding-bottom:4px!important}.ptb-xs-xs{padding-top:8px!important;padding-bottom:8px!important}.ptb-xs-sm{padding-top:16px!important;padding-bottom:16px!important}.ptb-xs-md{padding-top:32px!important;padding-bottom:32px!important}.plr-xs-4px{padding-left:4px!important;padding-right:4px!important}.plr-xs-xs{padding-left:8px!important;padding-right:8px!important}.plr-xs-sm{padding-left:16px!important;padding-right:16px!important}.plr-xs-md{padding-left:32px!important;padding-right:32px!important}.text-xs-center{text-align:center!important}}:root{--primary-color: #0b4576;--sec-color: #9bdbe5;--ter-color: #f2f2ee;--no-color: #B1AFAF;--bg-color: #ffffff;--bg-color: #e8e8e8;--aug-color: #c6c6c6;--aug-light-color: #ececeb;--aug-black-color: #3e3e3e;--text-color: #222;--warn-color: #EA0F0F}#root{overflow:auto}.bgc-primary{background-color:var(--primary-color)}.bgc-main01{background-color:var(--bg-color)}h1{font-size:20px}h4{font-size:20px;margin:6px 0}h5{color:#3b3b3b;font-size:14px;font-weight:500;margin:4px 0}.icon-text{font-family:Material Symbols Outlined}button.ant-btn-color-primary{background-color:var(--primary-color)}button.ant-btn-secondary{background-color:var(--sec-color)}.ant-btn-displayNone{display:none}button.tool{padding:6px 8px;margin:0 2px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;cursor:pointer;font-size:12px;transition:.2s}button.tool:hover{opacity:1;border-color:#40a9ff;color:#40a9ff}button.tool.btn-group{margin:0;width:38px;border-radius:0}button.tool.btn-group:hover{border:solid 1px #40a9ff!important}.text-link{color:#1890ff;text-decoration:none;font-size:12px;display:block;margin-bottom:4px}.react-flow__node-toolbar{background-color:#9cb4c065;padding:4px;border-radius:10px;display:flex;align-items:center}.form-field-display{padding:4px 0;min-height:32px;display:flex;align-items:center;color:#000;cursor:text;background-color:#00000014;border-radius:3px}.header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 12px;background-color:#fff;box-shadow:0 2px #00000010;height:58px}.header h1{margin:0}.menu{background-color:#fff0}.menu ul{display:flex;justify-content:space-between;align-items:center;width:100%}.menu li{padding:16px;text-decoration:none;cursor:pointer}.menu li.active{background-color:#fff}.logo{position:relative;width:38px;height:38px;padding:4px;margin:4px 10px 4px 4px;border-radius:5px}.logo>img{height:100%}.haeder-back-button{border:none;background-color:transparent;margin-right:-12}.haeder-back-button>span{padding:0}.haeder-back-button svg{width:16px;height:16px}.haeder-back-button .icon-text{font-size:20px;font-weight:800}.addDeivcePanel{background-color:#dcdfe2;border:1px solid #d5dade}.addDeivcePanel .ant-collapse-expand-icon span{width:10px;height:10px}.addDeivcePanel .ant-collapse-header{border-bottom:1px solid #d6dbde}.addDeivcePanel>.ant-collapse-item>div>div>div>div>.ant-collapse-header{font-weight:500;padding:6px}.addDeivcePanel.ant-collapse-small .ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding:0}.categoryContainer .ant-collapse-header{margin:0;padding:2px!important}.categoryContainer .ant-collapse-content-box{margin:0;padding:0!important}.addDeivcePanel .ant-collapse-content-box{background-color:#e6e8e9}.categoryContainer.subCate .ant-collapse-header{background-color:#ecf1f5}.categoryContainer.subCate .ant-collapse-content-box{background-color:#fff}.categoryContainer.subCate .ant-collapse-expand-icon{opacity:.5}.categoryContainer.subCate .ant-collapse-expand-icon svg{width:8px;height:8px}.addDeivceNodeCardContainer{width:100%;display:flex;flex-wrap:wrap}.addDeivceNodeCard{width:33%;padding:2px}.addDeivceNodeCard.discontinued{width:33%;padding:2px;opacity:.6;transition:.5s}.addDeivceNodeCard.discontinued .cardContent{background-color:#f3e8e8;border:1px solid #a48181}.addDeivceNodeCard.discontinued:hover{opacity:1}.addDeivceNodeCard.discontinued:after{content:"Discontinued";position:absolute;left:50%;bottom:90%;font-size:11px;color:#f9f9f9;padding:1px 6px;background-color:#744646;box-shadow:0 0 12px #0000001e;border-radius:8px;transition:.2s;transform:translate(-50%);opacity:0}.addDeivceNodeCard.discontinued:hover:after{opacity:1}.addDeivceNodeCard .cardContent{background-color:#efefef7b;border:1px solid #ebebeb;padding:2px;border-radius:4px;position:relative}.addDeivceNodeCard .cardContent img{width:85%}.addDeivceNodeCard .cardContent p{font-size:11px;width:90%;line-break:anywhere;text-align:center;line-height:1em;margin:2px 0;padding:0}.addDeivceNodeCard .cardContent button{font-size:10px;padding:0;min-height:25px;min-width:90%;cursor:grab}.addDeivceNodeCard .cardContent button img{pointer-events:none}.addDeivceNodeCard .cardContent button.addPortDevice{height:auto;padding:0;margin-bottom:4px}.react-flow__resize-control.line.node-resizer-line{border-width:1px!important;z-index:1000}.react-flow__resize-control.handle.node-resizer-handle{width:12px;height:12px;z-index:1000;border-radius:50%}.react-flow__viewMode .react-flow__resize-control.line.node-resizer-line,.react-flow__viewMode .react-flow__resize-control.handle.node-resizer-handle{display:none}.react-flow__viewMode .device-handle:after,.react-flow__viewMode .selected .device-handle:after{display:none}.react-flow__viewMode .device-node{cursor:default}.device-node{padding:1%;background-color:#fff;border-radius:4px;border:1px solid #3333333e;position:relative;height:100%;width:100%;transition:.3s}.device-node.device-tag-core{border-radius:8px}.device-node.device-tag-primary{border:0;background-color:#fff0}.device-node.device-tag-secondary{outline:5px solid #519131;outline-offset:0px;box-shadow:0 0 8px #52c41a4d;background-color:#52c41a0d}.device-node.device-tag-tmb{outline:5px solid #ff4d4f;outline-offset:0px;box-shadow:0 0 8px #ff4d4f4d;background-color:#f7e3e4}.device-node.device-tag-icon{border:none;background-color:#fff0;box-shadow:none}.device-node.device-tag-tmb .device-image>img{mix-blend-mode:darken}.device-node.device-tag-secondary .device-image>img,.device-node.device-tag-highlight .device-image>img,.device-node.device-tag-success .device-image>img,.device-node.device-tag-info .device-image>img{mix-blend-mode:darken}.device-node.device-tag-highlight{outline:5px solid #d4a800;outline-offset:0px;background-color:#fffbe6;box-shadow:0 0 8px #fadb144d}.device-node.device-tag-highlight .device-name{color:#614700}.device-node.device-tag-success{outline:5px solid #52c41a;outline-offset:0px;box-shadow:0 0 8px #52c41a4d;background-color:#52c41a0d}.device-node.device-tag-success .device-name{color:#135200}.device-node.device-tag-info{outline:5px solid #1890ff;outline-offset:0px;box-shadow:0 0 8px #1890ff4d;background-color:#1890ff0d}.device-node.device-tag-info .device-name{color:#003a8c}.device-node-content{overflow:hidden;height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.device-node .device-image{width:100%;height:100%;max-height:340px;display:flex;justify-content:center;align-items:center;overflow:hidden}.device-node .device-image>img{width:100%;height:100%}.device-node .device-name{font-size:20px;font-weight:500;text-align:center;line-height:1.128em;padding:2.5% 0}.discontinued-divce-tag{font-size:12px;color:#e23535;font-weight:300}.discontinued-divce-tag:before{content:"warning";font-family:Material Symbols Outlined;position:absolute;left:-12px;top:1px}.threed-node{background-color:transparent;border:none;position:relative;height:100%;width:100%}.threed-node-content{overflow:hidden;height:100%;width:100%;display:flex;justify-content:center;align-items:center}.threed-node .threed-image{width:100%;height:100%;display:flex;justify-content:center;align-items:center;overflow:hidden}.threed-node .threed-image>img{width:100%;height:100%;object-fit:contain}.threed-node-view-controls{position:absolute;bottom:4px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;background:#ffffffd9;border-radius:12px;padding:2px 6px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:10}.threed-node:hover .threed-node-view-controls,.threed-node.selected .threed-node-view-controls{opacity:1;pointer-events:auto}.threed-view-btn{border:none;background:none;cursor:pointer;padding:2px;font-size:16px;color:#555;display:flex;align-items:center}.threed-view-btn:hover{color:#1890ff}.threed-view-indicator{font-size:11px;color:#666;min-width:28px;text-align:center}.device-handle{width:13px;height:13px;background-color:#0000;border:1px solid #5bb6e000;opacity:1;transition:.3s;cursor:pointer!important;z-index:1001}.device-handle:after{content:"";width:4px;height:4px;background-color:#3ac1ff00;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;transition:.3s}.device-node:hover .device-handle:after,.selected .device-handle:after{background-color:#4681cd8b}.device-handle:hover{width:15px;height:15px;background-color:#5bb6e08b;border:1px solid #5bb6e0;opacity:1}.device-handle:hover:after{opacity:0}.device-handle.handleByPort{background-color:#86868691;border:1px solid #7e7e7e}.device-handle.handleByPort.left.input:before,.device-handle.handleByPort.right.output:before,.device-handle.handleByPort.right.input:before,.device-handle.handleByPort.left.output:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:0;height:0;border-style:solid}.device-handle.handleByPort.left.input:before{left:auto;right:-6px;border-width:3px 0 3px 3px;border-color:transparent transparent transparent #768195c9}.device-handle.handleByPort.right.output:before{left:-6px;border-width:3px 0 3px 3px;border-color:transparent transparent transparent #768195c9}.device-handle.handleByPort.right.input:before{left:-6px;border-width:3px 3px 3px 0;border-color:transparent #768195c9 transparent transparent}.device-handle.handleByPort.left.output:before{left:auto;right:-6px;border-width:3px 3px 3px 0;border-color:transparent #768195c9 transparent transparent}.device-handle.handleByPort.video{background-color:#3a5ea0b4;border:1px solid #3A5DA0}.device-handle.handleByPort.audio{background-color:#d878a5bc;border:1px solid #D878A4}.device-handle.handleByPort.usb{background-color:#edb951ce;border:1px solid #E7AD35}.device-handle.handleByPort.control{background-color:#97c136c2;border:1px solid #97BB42}.device-handle.handleByPort.network{background-color:#84c1ebdd;border:1px solid #65a7d3}.device-handle.handleByPort.device-group{width:22px;height:22px;background-color:#270e7180;border:2px solid #2d37c7ce}.device-handle.handleByPort.wireless{background-color:#fff0;border-style:dashed}.device-handle.handleByPort>p{position:absolute;top:-20%;transform:translateY(-50%);color:#0b4576;background-color:#deecffe7;font-size:10px;white-space:nowrap;padding:0 4px;border-radius:2px;border:1px solid #0000001f;box-sizing:border-box;z-index:100;pointer-events:none}.device-handle.device-group.handleByPort>p{top:-20%;font-size:12px}.device-handle.handleByPort>p:hover{opacity:.5}.device-handle.handleByPort.bottom>p,.device-handle.handleByPort.top>p{max-width:120px;text-align:center}.device-handle.handleByPort.bottom>p.allow-wrap,.device-handle.handleByPort.top>p.allow-wrap{word-break:keep-all;white-space:pre-wrap}.device-handle.handleByPort.left>p{right:25px}.device-handle.handleByPort.right>p{left:25px}.device-handle.handleByPort.bottom>p{top:auto;left:50%;bottom:-150%;transform:translate(-50%,100%)}.device-handle.handleByPort.top>p{top:-150%;left:50%;transform:translate(-50%,-100%)}.device-handle.handleByPort.audio>p{color:#1a0710;background-color:#e3b7cb;border:1px solid #e3b6cb}.device-handle.handleByPort.usb>p{background-color:#edb951ce;border:1px solid #E7AD35}.device-handle.handleByPort.control>p{background-color:#b4dd56df;border:1px solid #97BB42}.device-handle.handleByPort.network>p{background-color:#aad7f5dd;border:1px solid #84C1EB}.device-handle.handleByPort.others>p{background-color:#cececece;border:1px solid #b8b8b8}.device-handle.handleByPort.device-group>p{height:22px;background-color:#b3a8d6f2;border:1px solid #737487ce}.device-handle.default>p{display:none}.device-handle.handleByPort>.portHoverData{position:absolute;top:-20%;transform:translateY(-50%);color:#353535;background-color:#c6edf1e7;font-size:10px;white-space:nowrap;padding:0 4px;border-radius:2px;border:1px solid #0000001f;box-sizing:border-box;z-index:100;margin-block-start:1em;margin-block-end:1em;transition:.5s;opacity:0}.device-handle.handleByPort>.portHoverData:hover{opacity:1}.device-handle.handleByPort.left>.portHoverData{right:25px}.device-node-device-detail{z-index:1050;position:absolute;top:1px;left:1px;width:16%;height:16%;min-width:10px;min-height:10px;max-width:40px;max-height:40px;border-radius:50%;opacity:.5;transition:.8s}.device-node-device-detail:hover{opacity:1}.device-node-device-detail:after{content:"info";position:absolute;font-family:Material Symbols Outlined;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;font-size:14px}.react-flow__viewMode .device-node-device-detail{top:0;left:0;width:100%;height:100%;max-width:100%;max-height:100%}.react-flow__viewMode .device-node-device-detail:after{opacity:0}.device-node-device-detail-tooltip{background-color:#fff;font-size:12px;padding:4px}.device-node-device-detail-tooltip img{max-width:100%;max-height:1000px;object-fit:contain;border:2px solid #f0f0f0;border-radius:4px}.component-node{padding:10px;background-color:#00000004;border:1px solid #ed4bff00;position:relative;height:100%;width:100%;border-radius:8px}.selected .component-node{padding:10px;background-color:#ed4bff10;border:1px solid #ed4bff45;position:relative;height:100%;width:100%;border-radius:8px}.component-node h5{text-align:center;position:absolute;color:#9b1773;bottom:100%;left:50%;opacity:0;transition:.3s;transform:translate(-50%,10%)}.selected .component-node h5{opacity:1;transform:translate(-50%,-20%);display:flex;justify-content:center}.unfound .component-node{background-color:#ff4b6310}.unfound .component-node:after{content:"Unfound Component.. 😥";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--warn-color)}button.tool.component-tool{background-color:#8a378db8;color:#fff;font-weight:400}.react-flow__node-toolbar:has(.component-tool){background-color:#a574a893}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.sync-indicator,.update-indicator{animation:pulse 2s infinite}.component-tool{margin:0 2px;padding:4px 8px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}.component-tool:hover{background:#f0f0f0}.group-node{padding:10px;background-color:#e9e9e945;border:3px dashed #9e9e9e;position:relative;height:100%;width:100%;border-radius:8px}.group-count{position:absolute;top:4px;left:calc(100% + 12px);display:flex;justify-content:center;align-items:center}.group-count .ant-input-number{border-width:0;background-color:transparent}.group-count>h4{margin:0;font-size:14px}.group-count .ant-input-number input{border:none;background-color:#fff0;padding:0 0 0 6px;font-size:20px;font-weight:500}.group-count input:focus{border:1px solid #ccc}.react-flow__node-group{padding:0}.group-node .group-input-container{display:flex;align-items:center;position:relative}.group-node .group-input-number{width:44px!important;background-color:transparent!important}.group-node .group-buttons{flex-direction:column;margin-left:2px;display:none}.group-input-container:focus-within .group-buttons,.group-input-container:hover .group-buttons{display:flex}.group-node .group-btn{border:1px solid #d9d9d9;background:#fff;cursor:pointer;padding:1px 4px;font-size:10px;line-height:1;width:18px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:2px}.group-node .group-btn-up{border-radius:2px 2px 0 0}.group-node .group-btn-down{border-radius:0 0 2px 2px}.group-node .group-btn:hover{background:#f5f5f5;border-color:#40a9ff}.group-node .group-btn:active{background:#e6f7ff;border-color:#1890ff}.line-node{padding:6px;background-color:#6464641c;border:1px solid #67728298;border-radius:50%;position:relative;height:100%;width:100%;transition:.3s;transform:translate(-50%,-50%)}.line-node-hidden .line-node{opacity:0}.line-node:hover{padding:30px;opacity:1}.line-node .handle{width:0px;height:0px;min-width:0;min-height:0;background-color:#e9cece61;border:#e1e4f200;opacity:0;z-index:1001}.line-node .handle.top{top:50%}.line-node .handle.bottom{bottom:50%}.line-node .handle.right{right:50%}.line-node .handle.left{left:50%}.line-node:hover .handle{width:10px;height:10px;background-color:#2984e6;transition:.4s}.line-node:hover .handle:hover{width:16px;height:16px;opacity:1}.line-node:hover .handle.top{top:0}.line-node:hover .handle.bottom{bottom:0}.line-node:hover .handle.right{right:0}.line-node:hover .handle.left{left:0}.line-node button{position:absolute;top:10%;left:10%;width:16px;height:16px;line-height:0;border-radius:50%;background-color:#f55;font-size:12px;color:#fff;transform:translate(-50%,-50%);padding:0;display:flex;align-items:center;justify-content:center;z-index:10;transition:.4s;pointer-events:none;opacity:0}.line-node:hover button{opacity:1;pointer-events:all;cursor:pointer}.line-node button:hover{font-size:16px;width:24px;height:24px}.custom-node-settings-list{display:flex;align-items:center;justify-content:center}.custom-node-settings-list h5{background-color:var(--primary-color);width:18px;height:18px;border-radius:50%;margin:2px;color:#fff;font-size:12px;display:flex;justify-content:center;align-items:center}.shape-node{cursor:default;transition:.3s}.shape-node:hover .shape-handle{opacity:1}.shape-handle{width:14px;height:14px;background:#0000003f;border:1px solid #333;border-radius:50%;transition:.3s;border:none;cursor:pointer;opacity:0;z-index:1001}.shape-handle:hover{width:24px;height:24px}.react-flow__node[data-type=shape]{border:none;background:transparent;padding:0}.react-flow__node[data-type=shape].selected{outline:2px solid #008CFF;outline-offset:2px}.shape-node .ant-input{box-shadow:none!important;outline:1px dashed #666!important}.shape-node .ant-input:focus{outline:2px solid #008CFF!important}.frame-node{cursor:default;transition:box-shadow .2s ease;overflow:visible}.frame-node-titlebar{font-family:inherit;z-index:1}.frame-node-titlebar:hover{background-color:#fffc!important}.frame-node:has(.frame-node-titlebar:hover){box-shadow:0 0 0 1px #008cff33}.frame-node-lock-btn{opacity:0;transition:opacity .2s}.frame-node-titlebar:hover .frame-node-lock-btn,.frame-node-lock-btn:focus{opacity:1}.frame-node .frame-node-lock-btn.locked{opacity:1}.frame-node-titlebar .ant-input{box-shadow:none!important;outline:1px solid #1890ff!important}.frame-node-content{pointer-events:none}.react-flow__node.react-flow__node-frame{overflow:visible;pointer-events:none!important}.react-flow__node-frame .frame-node-titlebar,.react-flow__node-frame .frame-node-minimal-label,.react-flow__node-frame .frame-node-float-handle,.react-flow__node-frame .react-flow__resize-control,.react-flow__node-frame .react-flow__node-toolbar,.react-flow__node-frame .react-flow__node{pointer-events:auto}.react-flow__viewMode .react-flow__node-frame .react-flow__resize-control,.react-flow__viewMode .frame-node-float-handle{display:none}.react-flow__node-frame.selected .frame-node{box-shadow:0 0 0 2px #008cff55}.frame-node-minimal-label{pointer-events:auto}.frame-node-minimal-label .frame-node-lock-btn{opacity:0;transition:opacity .2s}.frame-node-minimal-label:hover .frame-node-lock-btn,.frame-node-minimal-label .frame-node-lock-btn.locked{opacity:1}.frame-node-float-handle{pointer-events:auto;opacity:.35;transition:opacity .2s;background:#fff9;border-radius:4px;padding:1px 3px}.frame-node-float-handle:hover{opacity:1;background:#fffd}.frame-node-float-handle .frame-node-lock-btn{opacity:0;transition:opacity .2s}.frame-node-float-handle:hover .frame-node-lock-btn,.frame-node-float-handle .frame-node-lock-btn.locked{opacity:1}@media print{body.printing-diagram .frame-node-float-handle,body.printing-diagram .frame-node-lock-btn{display:none!important}}.annotation-node{width:100%;height:100%;padding:8px;border-radius:8px;border:1px solid;position:relative;cursor:pointer;box-sizing:border-box;transition:all .3s ease}.annotation-node:hover{box-shadow:0 4px 12px #00000026}.annotation-node:hover .annotation-icon{transform:scale(1.1)}.annotation-node.open{border:1px solid}.annotation-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;z-index:10;border:2px solid white}.annotation-title{font-weight:700;font-size:14px;color:#333;line-height:1.2}.annotation-content{font-size:14px;color:#666;line-height:1.4;margin:8px 0 8px 6px;white-space:pre-wrap;word-break:break-word;overflow-y:auto;max-width:280px;max-height:120px;display:none;transition:1s;opacity:0}.open .annotation-content{display:inline-block;opacity:1}.annotation-list-count{font-size:12px;color:#818181;font-style:italic;margin-left:6px;position:absolute;top:-20px;width:180px}.annotation-input{display:flex;align-items:center;gap:8px}.annotation-input .icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;border-radius:50%}.annotation-highlight{animation:blink-glow 2s cubic-bezier(.215,.61,.355,1) infinite}@keyframes blink-glow{0%,to{box-shadow:0 0 8px 8px #ffd50080,0 0 28px 8px #ffd50080;border:1px solid #ffb411}50%{box-shadow:0 0 28px #ffcc00bc}}.annotation-icon{transition:all .3s ease}.react-flow__edge{transition:.3s}.react-flow__edge:hover>path{opacity:.8}.react-flow__edge.selected.selectable path{filter:drop-shadow(0px 0px 2px #09c6ff) drop-shadow(0px 0px 1px #00c3ff)}.react-flow__edge:hover{filter:drop-shadow(0px 0px 2px #09c6ff) drop-shadow(0px 0px 1px #00c3ff)}.button-edge__label{display:flex;gap:4px;position:absolute;pointer-events:all;z-index:1000;transition:opacity .2s ease-in-out}.button-edge__button{padding:0;background:#f9f9f9;border:1px solid #00000022;cursor:pointer;border-radius:50%;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s;-webkit-user-select:none;user-select:none;color:#1890ff;opacity:.5}.button-edge__button:hover .button-edge__button{opacity:1}.button-edge__button:hover{background:#1890ff;color:#fff;transform:scale(1.5);box-shadow:0 2px 8px #1890ff66;opacity:1}.button-edge__button:active{transform:scale(1.1)}.react-flow__pane.selection{cursor:auto}.devicePage-tab-container{height:calc(100vh - 240px);overflow:auto}.devicePage-tab-container .css-dev-only-do-not-override-1d4w9r2.ant-empty.ant-empty-normal{padding:0;margin-block:12px}.devicePage-tab-container .ant-typography.css-dev-only-do-not-override-1d4w9r2{margin-bottom:2px}.devicePage-tab-container .ant-table-thead .ant-table-cell{color:#727272;font-weight:400;font-size:12px}.devicePage-tab-container table{border-top:#b1b6be9a solid 1px!important;border-bottom:#b1b6be9a solid 1px!important;border-radius:0}.devicePage-tab-container .ant-table-cell{color:#010101;font-weight:400;font-size:13px}.devicePage-form-field-display{padding:4px 8px;min-height:32px;display:flex;align-items:center;color:#000;cursor:text;background-color:#00000014;border-radius:6px}.devicePage-form-field-display-multiline{padding:4px 6px;min-height:74px;display:flex;align-items:flex-start;color:#000;cursor:text;white-space:pre-wrap;line-height:1.5;background-color:#00000014;border-radius:8px}.devicePage-tab-container .ant-tag.css-dev-only-do-not-override-1d4w9r2{padding:5px 12px}.devicePage-form-field-display a{color:#1890ff}.devicePage-form-field-similarProducts{display:flex;flex-wrap:wrap}.devicePage-form-field-similarProducts .deivce{background-color:#e2e2e2;padding:4px 8px;border-radius:6px;font-size:16px;font-weight:500;min-width:200px;margin:2px}.devicePage-form-field-similarProducts .deivce>p{display:inline-block;margin:0 8px 0 0;font-size:16px;font-weight:100;min-width:50px}.ant-table-thead>tr>th{border-left:1px solid #e1e1e1!important;border-bottom:1px solid #e0e0e0!important;font-size:12px;text-align:center!important}.ant-table-thead>tr:first-child>th{font-size:16px}.ant-table-thead>tr:first-child>th{border-bottom:1px solid #d9d9d9!important}.room-edit-upload .ant-upload-list-item,.room-edit-upload .ant-upload.ant-upload-select{width:240px!important;height:168px!important}.room-edit-upload .ant-upload-list-item img{object-fit:contain!important}.selectionContainerSidebar{width:380px;height:100%;background-color:#fff;border-right:1px solid #d9d9d9;border-top:1px solid #d9d9d9;z-index:1000;overflow-y:auto;padding:12px 4px}.selectionContainer{height:100%;overflow:auto;padding:16px}.selectionContainer::-webkit-scrollbar{width:4px}.selectionContainer::-webkit-scrollbar-track{background:#e9e9e975}.selectionContainer::-webkit-scrollbar-thumb{background:#27485243;border-radius:4px}.selectionContainer::-webkit-scrollbar-thumb:hover{background:#00000080}.actOnSetting{margin:6px 0;overflow:hidden}.addon-card{padding:5px 8px;border-radius:6px;background:#f7f8f9;border:1px solid #e8e8e8}.node-highlighted{box-shadow:0 2px 16px #260affa5!important;transition:all .3s ease!important}.page-loading{width:100%;height:100%;background-color:#000000b6;position:absolute;z-index:5000;top:0;left:0;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:500;color:#fff}.diagram-view-control-panel.react-flow__panel.react-flow__controls{margin:16px 0 15px 14px;border:none;box-shadow:none}.diagram-view-control-panel.react-flow__panel.react-flow__controls button.react-flow__controls-button{margin:3px 0;box-shadow:0 0 3px #0004}.react-flow__panel.react-flow__minimap{margin:8px 48px}.react-flow__viewMode .react-flow__node,.react-flow__viewMode .react-flow__edge{pointer-events:none!important}.react-flow__viewMode .line-node{opacity:0}.react-flow__viewMode .edge-control-point{display:none!important}.react-flow__viewMode .device-node-device-detail{pointer-events:all}.home-room-card-wrapper{width:calc(25% - 18px)}.home-room-card{height:320px}.home-room-card-create{border:2px dashed #d9d9d9;background-color:#fafafa;cursor:pointer}.home-room-card-create .ant-card-body{display:flex;justify-self:center;align-items:center;flex-direction:column;text-align:center}.room-detail-layout{height:100%}.room-detail-selector-inner{height:800px;max-width:430px}.room-detail-content{flex:1;min-width:0}.room-detail-info{padding:20px;height:320px;max-width:1500px}.room-detail-info-inner{display:flex;gap:20px}.room-detail-image{max-width:400px}.room-detail-description{max-height:200px;margin-bottom:32px;overflow:hidden;font-size:16px}.room-detail-actions{position:absolute;min-width:100px;right:0;bottom:0}.room-detail-diagram{width:100%;height:100%;position:relative;background-color:#f9f9f9;border:1px solid #e8e8e8;border-radius:4px;margin:0 20px 20px;transition:all .3s ease}.room-detail-diagram-fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;margin:0;border:none;border-radius:0;z-index:10000;background-color:#fff}.room-detail-diagram-fullscreen-btn{position:absolute;top:8px;right:8px;z-index:10001;font-size:18px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffffe6;border-radius:6px;box-shadow:0 2px 8px #00000026}.room-detail-diagram-fullscreen-btn:hover{background:#fff!important;box-shadow:0 2px 12px #00000040}.room-detail-diagram-fullscreen-hint{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:10001;padding:4px 12px;background:#00000080;color:#fff;border-radius:4px;font-size:12px;pointer-events:none;opacity:.7}.panel-disclaimer-text{padding:6px;border-radius:6px;font-size:12px;max-width:640px;color:#888;text-align:center}.room-detail-drawer-trigger{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:linear-gradient(180deg,#1677ff,#0958d9);border-top:1px solid #0958d9;color:#fff;font-size:14px;font-weight:500;cursor:pointer;flex-shrink:0}.room-detail-drawer-trigger:active{background:#0958d9}.room-detail-drawer-arrow{font-size:12px;animation:bounceUp 1.5s ease-in-out infinite}@keyframes bounceUp{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.notifications{line-height:1.6;color:#1d1d1d;white-space:pre-wrap}.notifications strong{font-weight:650}.notifications button{margin:8px 0;background-color:#fff;border:1px solid #97b3c8;transition:.3s}.notifications button:hover{background-color:#cad9eb;border:1px solid #6da2e8}.notifications .primary button{margin:12px 0;padding:8px 24px;background-color:#84c12f;color:#fff}.notifications .primary button:hover{background-color:#739f32;border:1px solid #6da2e8}[data-track]>*{pointer-events:none}@media (max-width: 768px){.header-register-btn{display:none!important}.home-room-card-wrapper{width:calc(50% - 12px)}.header{padding:0 8px}.header h1{font-size:16px}.header .ant-btn-text{font-size:12px;padding:4px 8px}.home-hero{margin-bottom:16px!important}.home-hero-title{font-size:22px!important}.room-detail-modal{top:0!important;max-width:100%!important;margin:0!important;padding:0!important;height:100vh!important}.room-detail-modal .ant-modal-content{padding:8px;border-radius:0;height:100vh;display:flex;flex-direction:column}.room-detail-modal .ant-modal-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.room-detail-layout{flex-direction:column!important;overflow-y:auto;flex:1}.room-detail-content{width:100%}.room-detail-info{padding:12px;height:auto}.room-detail-info-inner{flex-direction:column;gap:12px}.room-detail-image{max-width:100%}.room-detail-description{max-height:none;font-size:14px;margin-bottom:16px}.room-detail-actions{position:static;margin-top:12px}.room-detail-diagram{margin:0;min-height:200px;flex:1;flex-shrink:0}.panel-legend{display:none}.panel-disclaimer{left:0!important;right:0!important;transform:none!important;margin:4px!important}.panel-disclaimer-text{font-size:7px!important;max-width:100%!important;padding:2px 4px!important;line-height:1.3}}@media (max-width: 480px){.home-room-card-wrapper{width:100%}.home-room-card{height:auto}.header{padding:0 6px;height:50px}.header h1{font-size:14px}.logo{width:32px;height:32px;margin:4px 4px 4px 0}.home-nav-buttons .ant-btn-text{display:none}.home-hero{margin-bottom:12px!important}.home-hero-title{font-size:18px!important}.home-hero .ant-typography-secondary{font-size:13px!important}.room-detail-info{padding:8px}.room-detail-actions .ant-btn{font-size:12px;padding:4px 8px}}.alignment-guides-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;overflow:visible}.alignment-guide-line{stroke:#f5222d;stroke-width:1;stroke-dasharray:4 3}.recorder-panel{background:#fffe;border:1px solid #d9d9d9;border-radius:8px;min-width:260px;max-width:300px;box-shadow:0 2px 12px #0000001a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:12px;overflow:hidden}.recorder-header{display:flex;align-items:center;gap:6px;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #f0f0f0;background:#fafafa}.recorder-title{font-weight:600;font-size:13px;color:#333;flex:1}.recorder-collapse-icon{font-size:16px!important;color:#999}.recorder-body{padding:8px}.recorder-tabs{display:flex;gap:4px;margin-bottom:6px}.recorder-tab{position:relative;flex:1;padding:4px 0;border:1px solid #d9d9d9;border-radius:4px;background:#fff;cursor:pointer;font-size:12px;font-weight:500;color:#666;text-align:center;transition:all .15s}.recorder-tab:hover{border-color:#1677ff;color:#1677ff}.recorder-tab.active{background:#1677ff;border-color:#1677ff;color:#fff}.recorder-tab-dot{position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:#52c41a}.recorder-tab.active .recorder-tab-dot{background:#fff}.recorder-name-edit{margin-bottom:6px}.recorder-container-name{font-size:12px;color:#666;padding:2px 4px;margin-bottom:6px;cursor:default;border-radius:4px}.recorder-container-name:hover{background:#f5f5f5}.recorder-match-config{margin-bottom:8px;padding:6px;background:#f9f9f9;border-radius:6px;border:1px solid #f0f0f0}.recorder-config-label{font-size:11px;color:#888;margin-bottom:4px;display:block}.recorder-controls{display:flex;gap:4px;margin-bottom:8px}.recorder-steps-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;font-size:11px;color:#888;padding:0 2px}.recorder-steps-list{max-height:280px;overflow-y:auto;border:1px solid #f0f0f0;border-radius:6px;background:#fafafa}.recorder-steps-empty{padding:16px;text-align:center;color:#bbb;font-size:12px}.recorder-step-item{display:flex;flex-direction:column;padding:5px 8px;border-bottom:1px solid #f0f0f0;transition:background .1s}.recorder-step-item:last-child{border-bottom:none}.recorder-step-item:hover{background:#f0f5ff}.recorder-step-index{font-size:10px;color:#bbb;min-width:14px;text-align:center}.recorder-step-icon{font-size:15px!important}.recorder-step-label{flex:1;font-size:11px;color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recorder-step-play,.recorder-step-remove{border:none;background:none;cursor:pointer;color:#ccc;padding:0;line-height:1;transition:color .15s}.recorder-step-play:hover{color:#52c41a}.recorder-step-remove:hover{color:#ff4d4f}.recorder-play-log{margin-top:8px;background:#f9f9f9;border-radius:6px;border:1px solid #f0f0f0}.recorder-play-log-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 2px;border-bottom:1px solid #f0f0f0}.recorder-play-log-title{font-size:11px;font-weight:600;color:#666}.recorder-play-log-body{max-height:150px;overflow-y:auto;padding:4px 8px 6px}.recorder-play-log-entry{font-size:11px;padding:1px 0}.recorder-record-actions{display:flex;flex-direction:column;gap:4px;margin-bottom:6px;padding:6px;background:#fff7e6;border:1px solid #ffe7ba;border-radius:6px}.recorder-wizard{margin-bottom:8px}.recorder-wizard-step{padding:8px;background:#f0f5ff;border:1px solid #adc6ff;border-radius:6px}.recorder-wizard-title{font-size:12px;font-weight:600;color:#1d39c4;margin-bottom:6px;display:flex;align-items:center;gap:4px}.recorder-wizard-num{font-size:14px;color:#1677ff}.recorder-wizard-hint{font-size:11px;color:#8c8c8c;text-align:center;padding:8px 0;font-style:italic}.recorder-wizard-actions{display:flex;flex-direction:column;gap:4px;margin-top:6px}.recorder-selected-props{margin:6px 0;padding:6px;background:#fff;border:1px solid #d9d9d9;border-radius:4px}.recorder-selected-props-title{font-size:11px;font-weight:600;color:#389e0d;display:flex;align-items:center;gap:4px;margin-bottom:4px}.recorder-selected-node-card{padding:4px 6px;background:#fafafa;border:1px solid #f0f0f0;border-radius:3px;margin-bottom:3px}.recorder-selected-node-card:last-child{margin-bottom:0}.recorder-selected-node-title{font-size:11px;font-weight:600;color:#333;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recorder-selected-node-props{display:flex;flex-direction:column;gap:1px;font-size:10px;color:#888}.recorder-selected-node-props span{line-height:1.4}.recorder-auto-hints{display:flex;flex-direction:column;gap:2px;margin-top:4px}.recorder-auto-hint-row{display:flex;align-items:center;gap:6px;font-size:11px;color:#555;padding:2px 4px;background:#fff;border-radius:3px}.recorder-node-info{display:flex;align-items:center;gap:4px;padding:4px 6px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;margin-bottom:6px;font-size:11px}.recorder-node-name{font-weight:500;color:#333;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recorder-node-pos{color:#aaa;font-size:10px;white-space:nowrap}.recorder-step-item.open{background:#fafafa}.recorder-step-item-header{display:flex;align-items:center;gap:4px;cursor:pointer;-webkit-user-select:none;user-select:none}.recorder-step-details{padding:4px 0 2px 20px;border-top:1px solid #f0f0f0;margin-top:3px}.recorder-step-detail-row{display:flex;gap:6px;font-size:10px;line-height:1.6}.recorder-step-detail-key{color:#8c8c8c;white-space:nowrap;min-width:50px}.recorder-step-detail-val{color:#333;word-break:break-all}.solution-print-footer{margin:0 28px 8px;font-family:Arial,sans-serif}.print-info-table{width:100%;border-collapse:collapse;border:1px solid #999;font-size:9px}.print-info-table td{border:1px solid #999}.print-logo-cell{width:50px;text-align:center;vertical-align:middle;padding:6px 8px!important}.print-aten-logo{height:12px;vertical-align:middle}.print-cell{vertical-align:top;padding:0!important;height:40px;min-width:80px}.print-cell-company{min-width:160px}.print-cell-project{min-width:200px}.print-cell-version{min-width:60px}.print-cell .print-label{display:block;font-size:7px;font-weight:400;color:#666;text-decoration:none;padding:3px 6px 0;white-space:nowrap;line-height:1}.print-cell .print-value{display:block;font-size:11px;font-weight:700;color:#111;padding:2px 6px 4px;white-space:nowrap;line-height:1.4;text-align:center}.print-disclaimer{font-size:6px;color:#666;line-height:1.4;margin-top:4px;padding:0 2px}.solution-print-header{display:flex;justify-content:space-between;align-items:center;height:50px;background:#eeeff0;color:#3e3e3e;border:1px solid rgb(215,220,221);font-family:Arial,sans-serif;border-radius:4px;padding:16px;margin:28px}.solution-print-header h2{font-size:14px;font-weight:600;letter-spacing:.5px;width:70%;margin:0}.solution-print-header h3{flex-grow:1;margin:0;font-size:12px;opacity:.95;text-align:right;padding-right:12px}.solution-print-header h4{width:70px;font-size:12px;opacity:.7;margin:0}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body.printing-diagram{background-color:#fff}body.printing-diagram *{visibility:hidden}body.printing-diagram #print-header,body.printing-diagram #print-header *,body.printing-diagram .react-flow,body.printing-diagram .react-flow *{visibility:visible}body.printing-diagram #print-header{position:fixed;bottom:0;left:0;width:100%;z-index:10001;visibility:visible!important}body.printing-diagram .react-flow{position:fixed!important;left:0;bottom:28px;width:100%;height:calc(95% - 70px);z-index:10000;background:#737577;padding:10%}body.printing-diagram .react-flow__panel,body.printing-diagram .react-flow__controls,body.printing-diagram .react-flow__minimap{display:none}body.printing-diagram .react-flow__panel.panel-legend{display:flex!important;bottom:12px;right:12px;transform:scale(.8)}body.printing-diagram .react-flow__node,body.printing-diagram .react-flow__edge{pointer-events:none!important}body.printing-diagram .line-node{opacity:0}body.printing-diagram .device-node-device-detail{top:0;left:0;width:100%;height:100%;max-width:100%;max-height:100%}body.printing-diagram .device-node-device-detail:after{opacity:0}}@media screen{#print-header{display:none}}.userManagement{padding:12px 0 0;background:#c8cacc}.userManagement.ant-tabs>.ant-tabs-nav{margin:0}.userManagement .userTable.ant-table-wrapper table>thead>tr>th{font-size:12px;font-weight:400}.userManagement .ant-tabs-nav-list .ant-tabs-tab.ant-tabs-tab{background-color:#ffffff78;border:none;margin:0 4px}.userManagement .ant-tabs-nav-list .ant-tabs-tab.ant-tabs-tab-active{background-color:#f0f2f5}.userManagement .ant-tabs-nav-list .ant-tabs-tab.ant-tabs-tab-active span{color:#07111b}.containerStyle{margin:2em auto;max-width:960px;color:#37352f;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI Variable Display,Segoe UI,Helvetica,"Apple Color Emoji",Arial,sans-serif,"Segoe UI Emoji",Segoe UI Symbol;line-height:1.6}.containerStyle h1{font-size:1.5rem;font-weight:700;margin-top:1.8rem;margin-bottom:.5em;color:#2c2c2b}.containerStyle h2{font-size:1.2rem;font-weight:600;margin-top:1.4rem;margin-bottom:.3em;color:#37352f}.containerStyle h3{font-size:1.05rem;font-weight:600;margin-top:1.1rem;margin-bottom:.2em;color:#37352f}.containerStyle p{margin-top:.4em;margin-bottom:.4em}.imageStyle{border:none;margin:1.2em 0;padding:0;border-radius:0;text-align:left;max-width:100%}.columnListStyle{display:flex;gap:1.5em}.mainContentStyle{flex:1;min-width:0}.containerStyle>.page.sans>header>h1{font-size:1.6rem;font-weight:700;margin-top:0;margin-bottom:1em;padding-bottom:.5em;border-bottom:2px solid rgba(63,126,190,.3)}.manual-page-wrapper{position:relative}.print-btn-container{position:absolute;top:2em;right:max(8px,calc((100% - 960px)/2));z-index:10}.print-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;color:#37352fa6;border:none;border-radius:4px;font-size:20px;cursor:pointer;transition:color .15s ease,background .15s ease;line-height:1}.print-btn:hover{color:#37352f;background:#37352f14}@page{margin:0}@media print{body.printing-manual .ant-layout-header,body.printing-manual .header,body.printing-manual .print-btn-container{display:none!important}body.printing-manual .columnListStyle>div:first-child{display:none!important}body.printing-manual,body.printing-manual #root,body.printing-manual .ant-layout{height:auto!important;overflow:visible!important}body.printing-manual .ant-layout{min-height:0!important}body.printing-manual .columnListStyle{display:block!important}body.printing-manual .mainContentStyle{width:100%!important;max-width:100%!important}body.printing-manual .containerStyle{margin:0!important;max-width:100%!important;padding:20mm 15mm!important}body.printing-manual img{max-width:100%!important;page-break-inside:avoid}body.printing-manual h1,body.printing-manual h2,body.printing-manual h3{page-break-after:avoid}body.printing-manual figure{page-break-inside:avoid}}.preview-handles-visible .device-handle:after{background-color:#4681cdaa}.preview-handles-visible .device-handle.handleByPort{opacity:1}
