::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.dark ::-webkit-scrollbar-thumb{background:#475569}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.custom-scrollbar::-webkit-scrollbar{height:6px;width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:20px}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.dark .glass{background:#111827bf}.glass-card{background:#fffc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.3)}.dark .glass-card{background:#1e293b99;border:1px solid rgba(148,163,184,.1)}.gradient-border{position:relative}.gradient-border:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#10b981,#6366f1,#ec4899);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.glow-green{box-shadow:0 0 20px #10b98140,0 0 60px #10b9811a}.glow-blue{box-shadow:0 0 20px #3b82f640,0 0 60px #3b82f61a}.glow-purple{box-shadow:0 0 20px #8b5cf640,0 0 60px #8b5cf61a}.dark .card-elevated{box-shadow:0 0 0 1px #94a3b80f,0 8px 30px #0000004d}.card-elevated{box-shadow:0 0 0 1px #00000008,0 4px 20px #0000000f}.mesh-bg{background-image:radial-gradient(at 27% 37%,hsla(215,98%,61%,.08) 0px,transparent 50%),radial-gradient(at 97% 21%,hsla(125,98%,72%,.06) 0px,transparent 50%),radial-gradient(at 52% 99%,hsla(354,98%,61%,.04) 0px,transparent 50%),radial-gradient(at 10% 29%,hsla(256,96%,67%,.06) 0px,transparent 50%)}.dark .mesh-bg{background-image:radial-gradient(at 27% 37%,hsla(215,98%,61%,.15) 0px,transparent 50%),radial-gradient(at 97% 21%,hsla(125,98%,72%,.12) 0px,transparent 50%),radial-gradient(at 52% 99%,hsla(354,98%,61%,.06) 0px,transparent 50%),radial-gradient(at 10% 29%,hsla(256,96%,67%,.1) 0px,transparent 50%)}.dot-grid{background-image:radial-gradient(circle,rgba(100,116,139,.15) 1px,transparent 1px);background-size:24px 24px}.dark .dot-grid{background-image:radial-gradient(circle,rgba(148,163,184,.08) 1px,transparent 1px)}@keyframes slide-in-right{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in-right{animation:slide-in-right .3s ease-out forwards}.flip-card-container{perspective:1000px}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}.flip-card-container.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.flip-card-back{transform:rotateY(180deg)}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-up{animation:slide-up .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .3s ease-out forwards}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up .5s cubic-bezier(.16,1,.3,1) forwards}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:60ms}.stagger-children>*:nth-child(3){animation-delay:.12s}.stagger-children>*:nth-child(4){animation-delay:.18s}.stagger-children>*:nth-child(5){animation-delay:.24s}.stagger-children>*:nth-child(6){animation-delay:.3s}.gradient-text{background:linear-gradient(135deg,#10b981,#6366f1,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-green{background:linear-gradient(135deg,#34d399,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-gradient{background:linear-gradient(135deg,#10b981,#059669);transition:all .3s ease}.btn-gradient:hover{background:linear-gradient(135deg,#34d399,#10b981);box-shadow:0 8px 25px -5px #10b98166;transform:translateY(-1px)}.btn-gradient:active{transform:translateY(0)}@keyframes run-btn-pulse{0%,to{box-shadow:0 4px 15px -3px #10b98166}50%{box-shadow:0 4px 25px -3px #10b981a6,0 0 40px -5px #10b98133}}.run-btn-ready{animation:run-btn-pulse 2.5s cubic-bezier(.4,0,.6,1) infinite;background:linear-gradient(135deg,#10b981,#059669)!important}.run-btn-ready:hover{animation:none;box-shadow:0 8px 30px -5px #10b98180;transform:translateY(-1px)}.terminal-block{background:#0a0f1e;color:#cbd5e1;padding:1.25rem 1.5rem;border-radius:.75rem;font-family:JetBrains Mono,SF Mono,Cascadia Code,monospace;font-size:.8rem;line-height:1.7;max-height:420px;overflow:auto;white-space:pre-wrap;word-break:break-word;border:1px solid rgba(148,163,184,.1)}.terminal-block::-webkit-scrollbar{width:6px}.terminal-block::-webkit-scrollbar-track{background:#1e293b}.terminal-block::-webkit-scrollbar-thumb{background:#475569;border-radius:3px}.kpi-accent-throughput{border-top-color:#10b981!important}.kpi-accent-latency{border-top-color:#3b82f6!important}.kpi-accent-count{border-top-color:#8b5cf6!important}.kpi-accent-error{border-top-color:#ef4444!important}.kpi-left-throughput{border-left-color:#10b981!important}.kpi-left-latency{border-left-color:#3b82f6!important}.kpi-left-count{border-left-color:#8b5cf6!important}.kpi-left-error{border-left-color:#ef4444!important}.severity-critical{color:#dc2626}.severity-warning{color:#d97706}.severity-info{color:#2563eb}.severity-ok{color:#059669}.severity-bg-critical{background:#fef2f2;border-left:3px solid #dc2626}.severity-bg-warning{background:#fffbeb;border-left:3px solid #d97706}.severity-bg-info{background:#eff6ff;border-left:3px solid #2563eb}.severity-bg-ok{background:#ecfdf5;border-left:3px solid #059669}.dark .severity-bg-critical{background:#dc26261a}.dark .severity-bg-warning{background:#d977061a}.dark .severity-bg-info{background:#2563eb1a}.dark .severity-bg-ok{background:#0596691a}.tabular-nums{font-variant-numeric:tabular-nums}.logs-container::-webkit-scrollbar{width:8px}.logs-container::-webkit-scrollbar-track{background:#0f172a80;border-radius:4px}.logs-container::-webkit-scrollbar-thumb{background:#64748b80;border-radius:4px}.logs-container::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 12px 40px -8px #00000026}.dark .hover-lift:hover{box-shadow:0 12px 40px -8px #00000080}.sidebar-gradient{background:linear-gradient(180deg,#0f172a,#0a0f1e)}.nav-active-glow{box-shadow:inset 3px 0 #10b981,0 0 20px #10b98114;background:linear-gradient(90deg,rgba(16,185,129,.1) 0%,transparent 100%)}.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%}
