html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.weekend-row td{background-color:#f0f0f0}.ant-table-tbody>tr:hover>td{background:#e6f7ff}.events{margin:0;padding:0;list-style:none}.events .ant-badge-status{width:100%;overflow:hidden;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.notes-month{font-size:28px;text-align:center}.notes-month section{font-size:28px}.check-in-out-table{width:100%;border-collapse:collapse}.check-in-out-table th,.check-in-out-table td{border:1px solid #ddd;padding:8px}.check-in-out-table th{background-color:#f4f4f4}.work-day-logs-table{width:100%;border-collapse:collapse}.work-day-logs-table th,.work-day-logs-table td{border:1px solid #ddd;padding:8px}.work-day-logs-table th{background-color:#f4f4f4}.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%}.flow-builder-container{display:flex;height:100%;min-height:600px;border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;background:#fafafa;position:relative;flex:1}.node-palette{width:240px;background:#fff;border-right:1px solid #e8e8e8;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex-shrink:0;height:100%;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#d9d9d9 #f5f5f5}.node-palette::-webkit-scrollbar{width:8px}.node-palette::-webkit-scrollbar-track{background:#f5f5f5}.node-palette::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:4px}.node-palette::-webkit-scrollbar-thumb:hover{background:#bfbfbf}.palette-card{border:none;border-radius:0;display:flex;flex-direction:column;height:auto;min-height:100%}.palette-card .ant-card-head{flex-shrink:0;padding:12px 16px}.palette-card .ant-card-body{padding:16px;flex:1;overflow-y:visible;display:flex;flex-direction:column}.palette-buttons{display:flex;flex-direction:column;margin-bottom:8px;flex-shrink:0}.palette-buttons .ant-btn{display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.palette-buttons .ant-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.palette-buttons .ant-btn:active{transform:translateY(0)}.palette-header{display:flex;align-items:center;font-weight:600;color:#262626;font-size:13px}.palette-group{display:flex;flex-direction:column;gap:6px;padding:8px 0;flex-shrink:0}.node-palette .ant-collapse{flex:1;display:flex;flex-direction:column;overflow:visible}.node-palette .ant-collapse-item{flex-shrink:0}.node-palette .ant-collapse-content{overflow:visible}.node-palette .ant-collapse-content-box{padding:12px 0 24px!important;overflow:visible}.node-palette .ant-collapse-item:last-child .ant-collapse-content-box{padding-bottom:32px!important}.palette-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f5f5f5;border:1px solid #d9d9d9;border-radius:6px;cursor:grab!important;transition:all .2s ease;-webkit-user-select:none;user-select:none}.palette-item:hover{background:#e6f7ff;border-color:#1890ff;transform:translate(4px);box-shadow:0 2px 4px #1890ff33}.palette-item:active{cursor:grabbing!important;transform:scale(.98);box-shadow:0 1px 2px #1890ff4d}.palette-item-icon{display:flex;align-items:center;justify-content:center;font-size:14px;color:#1890ff}.palette-item-label{font-size:12px;font-weight:500;color:#262626;flex:1}.flow-canvas-wrapper{flex:1;display:flex;flex-direction:column;background:#fafafa;min-width:0;overflow:visible;position:relative}.flow-canvas-wrapper>div:first-child{flex-shrink:0}.flow-canvas{flex:1;position:relative;background:#fafafa;min-height:0;overflow:visible}.reactflow-wrapper,.react-flow{width:100%;height:100%;position:relative}.react-flow__viewport{width:100%;height:100%}.react-flow__renderer{width:100%;height:100%;position:relative}.react-flow__pane{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__nodes{position:absolute;top:0;left:0;width:100%;height:100%}.react-flow__edges{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.react-flow>div{pointer-events:auto}.react-flow .flow-controls{pointer-events:auto!important}.react-flow__controls{top:20px!important;left:20px!important;bottom:auto!important;display:flex!important;flex-direction:column!important;gap:4px!important;background:#fff!important;border:1px solid #d9d9d9!important;border-radius:6px!important;box-shadow:0 2px 8px #00000026!important;padding:4px!important;z-index:10!important;min-width:40px!important}.react-flow__controls-button{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;border:1px solid #d9d9d9!important;border-radius:4px!important;cursor:pointer!important;transition:all .2s ease!important;padding:0!important;margin:0!important;opacity:1!important;visibility:visible!important}.react-flow__controls-button:hover{background:#f5f5f5!important;border-color:#1890ff!important;transform:scale(1.05)!important}.react-flow__controls-button:active{background:#e6f7ff!important;transform:scale(.95)!important}.react-flow__controls-button svg{width:16px!important;height:16px!important;fill:#262626!important;opacity:1!important;visibility:visible!important}.react-flow__controls-button:hover svg{fill:#1890ff!important}.react-flow__controls-button[title*=fit i],.react-flow__controls-button[aria-label*=fit i],.react-flow__controls-button[title*="Fit View" i],.react-flow__controls-button[aria-label*="Fit View" i]{background:#fff!important;border:2px solid #1890ff!important;opacity:1!important;visibility:visible!important}.react-flow__controls-button[title*=fit i]:hover,.react-flow__controls-button[aria-label*=fit i]:hover,.react-flow__controls-button[title*="Fit View" i]:hover,.react-flow__controls-button[aria-label*="Fit View" i]:hover{background:#e6f7ff!important;border-color:#096dd9!important}.react-flow__controls-button[title*=fit i] svg,.react-flow__controls-button[aria-label*=fit i] svg,.react-flow__controls-button[title*="Fit View" i] svg,.react-flow__controls-button[aria-label*="Fit View" i] svg{fill:#1890ff!important;opacity:1!important;visibility:visible!important}.react-flow__controls-button[title*="zoom in" i],.react-flow__controls-button[aria-label*="zoom in" i],.react-flow__controls-button[title*="zoom out" i],.react-flow__controls-button[aria-label*="zoom out" i]{background:#fff!important;opacity:1!important;visibility:visible!important}.react-flow__controls>button{opacity:1!important;visibility:visible!important;display:flex!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important}.react-flow__controls>button:nth-child(3){background:#fff!important;border:2px solid #1890ff!important;opacity:1!important;visibility:visible!important}.react-flow__controls>button:nth-child(3):hover{background:#e6f7ff!important;border-color:#096dd9!important}.react-flow__controls>button:nth-child(3) svg{fill:#1890ff!important;opacity:1!important;visibility:visible!important}.react-flow__minimap{top:140px!important;right:20px!important;bottom:auto!important;z-index:999!important}.custom-node{padding:12px 16px;border-radius:8px;background:#fff;border:2px solid #d9d9d9;min-width:220px;box-shadow:0 2px 8px #00000014;transition:all .2s ease;cursor:grab!important;pointer-events:auto!important;-webkit-user-select:none;user-select:none}.custom-node:active{cursor:grabbing!important}.custom-node:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.custom-node.selected{border-color:#1890ff;box-shadow:0 0 0 3px #1890ff33}.value-node{border-color:#722ed1;background:linear-gradient(135deg,#f9f0ff,#fff);min-width:180px}.value-node.selected{border-color:#722ed1;box-shadow:0 0 0 3px #722ed133}.operation-node{border-color:#52c41a;background:linear-gradient(135deg,#f6ffed,#fff)}.operation-node.selected{border-color:#52c41a;box-shadow:0 0 0 3px #52c41a33}.function-node{border-color:#1890ff;background:linear-gradient(135deg,#e6f7ff,#fff)}.function-node.selected{border-color:#1890ff;box-shadow:0 0 0 3px #1890ff33}.wagetype-node{border-color:#fa8c16;background:linear-gradient(135deg,#fff7e6,#fff)}.wagetype-node.selected{border-color:#fa8c16;box-shadow:0 0 0 3px #fa8c1633}.wagetype-node{border-color:#13c2c2;background:linear-gradient(135deg,#e6fffb,#fff)}.wagetype-node.selected{border-color:#13c2c2;box-shadow:0 0 0 3px #13c2c233}.entityfield-node{border-color:#1890ff;background:linear-gradient(135deg,#e6f7ff,#fff);min-width:220px}.entityfield-node.selected{border-color:#1890ff;box-shadow:0 0 0 3px #1890ff33}.conditional-node{border-color:#722ed1;background:linear-gradient(135deg,#f9f0ff,#fff);min-width:200px}.conditional-node.selected{border-color:#722ed1;box-shadow:0 0 0 3px #722ed133}.node-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #f0f0f0;cursor:grab!important;pointer-events:auto!important;-webkit-user-select:none;user-select:none}.node-header:active{cursor:grabbing!important}.node-label{font-weight:600;font-size:14px;color:#262626}.node-type-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:#f0f0f0;color:#595959;text-transform:uppercase;font-weight:600}.value-node .node-type-badge{background:#efdbff;color:#531dab}.operation-node .node-type-badge{background:#d9f7be;color:#237804}.function-node .node-type-badge{background:#bae7ff;color:#0050b3}.wagetype-node .node-type-badge{background:#ffd591;color:#ad4e00}.wagetype-node .node-type-badge{background:#b5f5ec;color:#08979c}.entityfield-node .node-type-badge{background:#bae7ff;color:#0050b3}.conditional-node .node-type-badge{background:#efdbff;color:#531dab}.node-content{font-size:13px;color:#595959}.node-value{margin-top:4px;font-family:Monaco,Menlo,monospace;color:#1890ff}.node-content .ant-select,.node-content .ant-input-number{pointer-events:auto!important}.custom-node .ant-select-selector,.custom-node .ant-input-number-input{cursor:text!important}.ant-select-dropdown{z-index:9999!important;pointer-events:auto!important}.custom-node .nodrag{pointer-events:all}.flow-canvas-wrapper .flow-controls-container{position:absolute;top:60px;right:20px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.flow-controls-toggle{transition:all .3s ease;border-radius:6px;box-shadow:0 2px 8px #00000026;background:#fff;border:1px solid #d9d9d9;flex-shrink:0}.flow-controls-toggle:hover{transform:scale(1.05);border-color:#1890ff}.flow-canvas-wrapper .flow-controls{display:flex;flex-wrap:wrap;gap:8px;max-width:calc(100% - 280px);background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 4px 16px #00000040;border:1px solid #d9d9d9;transition:all .3s cubic-bezier(.4,0,.2,1)}.flow-controls.flow-controls-visible{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.flow-controls.flow-controls-hidden{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-10px)}.flow-canvas .flow-controls .ant-btn{visibility:visible;opacity:1;display:inline-flex;position:relative;z-index:1001;flex-shrink:0}.flow-canvas .flow-controls .ant-select{visibility:visible;opacity:1;display:inline-block;position:relative;z-index:1001;flex-shrink:0}.flow-control-btn{padding:8px 16px;background:#fff;border:1px solid #d9d9d9;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease;box-shadow:0 2px 4px #00000014}.flow-control-btn:hover{background:#f5f5f5;border-color:#1890ff}.flow-output-panel{padding:16px;background:#fff;border-top:1px solid #e8e8e8;max-height:200px;overflow-y:auto}.flow-output-title{font-weight:600;font-size:14px;margin-bottom:8px;color:#262626}.flow-output-content{font-family:Monaco,Menlo,monospace;font-size:12px;background:#f5f5f5;padding:12px;border-radius:4px;white-space:pre-wrap;word-break:break-all}.react-flow__node{cursor:grab!important;pointer-events:auto!important}.react-flow__node.dragging{cursor:grabbing!important;pointer-events:auto!important}.react-flow__node.selected{cursor:grab!important;pointer-events:auto!important}.react-flow__node .nodrag{cursor:default!important}.react-flow__handle{pointer-events:auto!important}.reactflow-wrapper *{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none}.react-flow__edge-path{stroke:#b7b7b7;stroke-width:2}.react-flow__edge.selected .react-flow__edge-path{stroke:#1890ff;stroke-width:3}.react-flow__handle{width:16px;height:16px;border:3px solid white;box-shadow:0 2px 4px #0003;transition:all .2s ease}.react-flow__handle-target{background:#1890ff}.react-flow__handle-target:hover{background:#096dd9;transform:scale(1.2)}.react-flow__handle-source{background:#52c41a}.react-flow__handle-source:hover{background:#389e0d;transform:scale(1.2)}.react-flow__handle-connecting{background:#faad14;transform:scale(1.3)}.react-flow__handle-valid{background:#52c41a;transform:scale(1.3)}.landing-page{min-height:100vh;background:#f5f5f5}.landing-container{max-width:1200px;margin:0 auto;padding:0 24px}.landing-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a;padding:16px 0}.landing-header-content{display:flex;justify-content:space-between;align-items:center}.landing-logo,.landing-header-actions{display:flex;align-items:center}.landing-header-actions .ant-btn-text{color:#595959!important}.landing-header-actions .ant-btn-text:hover{color:#1890ff!important}.landing-hero{position:relative;padding:140px 0 100px;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden;margin-top:72px}.landing-hero-background{position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3}.landing-hero-content{position:relative;z-index:1;text-align:center;color:#fff;max-width:800px;margin:0 auto}.landing-hero-title{font-size:56px!important;font-weight:700!important;margin-bottom:24px!important;color:#fff!important;line-height:1.2!important;animation:fadeInUp .8s ease-out}.landing-hero-description{font-size:20px!important;color:#ffffffe6!important;margin-bottom:40px!important;line-height:1.6!important;animation:fadeInUp 1s ease-out}.landing-hero-actions{animation:fadeInUp 1.2s ease-out}.landing-cta-primary{height:48px;padding:0 32px;font-size:16px;box-shadow:0 4px 12px #00000026}.landing-cta-secondary{height:48px;padding:0 32px;font-size:16px;background:#fff3;border-color:#ffffff4d;color:#fff}.landing-cta-secondary:hover{background:#ffffff4d!important;border-color:#ffffff80!important;color:#fff!important}.landing-features{padding:80px 0;background:#fff}.landing-section-header{text-align:center;margin-bottom:64px}.landing-section-header h2{font-size:40px!important;font-weight:700!important;margin-bottom:16px!important}.landing-section-description{font-size:18px!important;color:#8c8c8c!important;max-width:600px;margin:0 auto!important}.landing-feature-card{text-align:center;height:100%;border:none;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.landing-feature-card:hover{transform:translateY(-8px);box-shadow:0 8px 24px #00000026}.landing-feature-icon{font-size:48px;color:#1890ff;margin-bottom:24px}.landing-feature-title{font-size:20px!important;font-weight:600!important;margin-bottom:12px!important}.landing-feature-description{color:#8c8c8c!important;margin:0!important}.landing-modules{padding:80px 0;background:#f5f5f5}.landing-module-card{height:100%;min-height:200px;border:none;transition:all .3s ease;position:relative;overflow:hidden}.landing-module-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0000001a;opacity:0;transition:opacity .3s ease}.landing-module-card:hover:before{opacity:1}.landing-module-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 32px #0003}.landing-module-icon{font-size:48px;margin-bottom:16px;color:#fff}.landing-module-title{font-size:18px!important;font-weight:600!important;margin-bottom:12px!important}.landing-module-description{font-size:14px!important;margin:0!important}.landing-cta{padding:100px 0;background:linear-gradient(135deg,#667eea,#764ba2);text-align:center}.landing-cta-content{max-width:700px;margin:0 auto}.landing-cta-button{height:56px;padding:0 48px;font-size:18px;font-weight:600;box-shadow:0 8px 24px #0003}.landing-footer{padding:40px 0;background:#001529;border-top:1px solid rgba(255,255,255,.1)}.landing-footer-content{display:flex;justify-content:space-between;align-items:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.landing-hero-title{font-size:36px!important}.landing-hero-description{font-size:16px!important}.landing-header-actions{flex-wrap:wrap;gap:8px}.landing-section-header h2{font-size:32px!important}.landing-footer-content{flex-direction:column;gap:16px;text-align:center}}.has-error-messages-row{background-color:#fff2f0;border:1px solid red}.has-error-messages-row:hover{background-color:#ffa39e!important}.has-error-messages-row .ant-table-row-expand-icon-cell{background-color:inherit}.ant-table-tbody>tr.has-error-messages-row:hover>td{background-color:#ffa39e!important}.has-warning-messages-row{background-color:#fffbe6;border:1px solid orange}.has-warning-messages-row:hover{background-color:#ffe58f!important}.has-warning-messages-row .ant-table-row-expand-icon-cell{background-color:inherit}.ant-table-tbody>tr.has-warning-messages-row:hover>td{background-color:#ffe58f!important}.no-header-collapse-panel .ant-collapse-header{display:none;margin-top:-20px}.no-header-collapse-panel .ant-collapse-content-box{padding:0;margin-top:-30px}.comparison-cell{font-size:12px;line-height:1.4}.comparison-expected{color:#595959;margin-bottom:2px}.comparison-obtained{font-weight:500}.comparison-obtained.mismatch{color:#cf1322}.comparison-mismatch-row{background-color:#fff7e6}.comparison-mismatch-row:hover>td{background-color:#ffe7ba!important}.comparison-missing-row{background-color:#fff2f0}.comparison-missing-row:hover>td{background-color:#ffa39e!important}.inout-comparison,.errors-comparison{margin-bottom:16px}.inout-comparison-table{border-collapse:collapse;font-size:12px}.inout-comparison-table th,.inout-comparison-table td{padding:4px 12px;border:1px solid #f0f0f0;text-align:left}.inout-comparison-table th{background:#fafafa;color:#595959;font-weight:500}.comparison-expected-row td{color:#595959;background:#fafafa}.comparison-obtained-row td{font-weight:500}.comparison-obtained-row td.mismatch{color:#cf1322;background:#fff2f0}.inout-index{vertical-align:middle!important}
