.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:not(.theme-transitioning),html.theme-transitioning,html.theme-transitioning body,html.theme-transitioning #root,html.theme-transitioning *,html.theme-transitioning :before,html.theme-transitioning :after{transition:none!important}html:not(.theme-transitioning) *{transition-property:none;transition-duration:0s}[data-state],.animate-apple-spring-in,.animate-apple-spring-out{will-change:transform, opacity}html:not(.theme-transitioning) button,html:not(.theme-transitioning) a,html:not(.theme-transitioning) input,html:not(.theme-transitioning) textarea,html:not(.theme-transitioning) select{transition:all .2s ease-in-out!important}.theme-transitioning{overflow:hidden}.dark body{color:#ebeff4;background-color:#131720}.dark .bg-white{background-color:#1a212d}.dark .bg-gray-50{background-color:#171c27}.dark .bg-gray-100{background-color:#1e2533}.dark .bg-gray-200{background-color:#262f40}.dark .text-gray-900{color:#ebeff4}.dark .text-gray-800{color:#e4eaf1}.dark .text-gray-700{color:#d7dfea}.dark .text-gray-600{color:#afbdcf}.dark .text-gray-500{color:#9fafc6}.dark .text-gray-400{color:#8fa2bc}.dark .text-gray-300{color:#8095b3}.dark .border-gray-200{border-color:#394356}.dark .border-gray-300{border-color:#414c62}.dark .border-gray-400{border-color:#49566e}.dark .border{border-color:#3d475c}.dark .border-r,.dark .border-t,.dark .border-b,.dark .border-l{border-color:#394356}.dark .bg-card{background-color:#1a212d;border-color:#3d475c}.dark .bg-blue-600{background-color:#63b5f8}.dark .bg-blue-700{background-color:#3ca2f6}.dark .text-blue-600{color:#6db9f8}.dark .hover\:bg-blue-700:hover{background-color:#3ca2f6}.dark input,.dark textarea,.dark select{color:#ebeff4;background-color:#1e2533;border-color:#3d475c}.dark input::-moz-placeholder{color:#8fa2bc}.dark textarea::-moz-placeholder{color:#8fa2bc}.dark input::placeholder,.dark textarea::placeholder{color:#8fa2bc}.dark input:focus,.dark textarea:focus,.dark select:focus{border-color:#63b5f8;outline:none;box-shadow:0 0 0 2px #63b5f833}.dark input:hover,.dark textarea:hover,.dark select:hover{border-color:#47536b}.dark .hover\:bg-gray-100:hover{background-color:#222a3a}.dark .hover\:bg-gray-50:hover{background-color:#1e2533}.dark .hover\:bg-white:hover{background-color:#222a3a}.dark .hover\:text-gray-900:hover{color:#f2f4f8}.dark .text-foreground{color:#ebeff4}.dark .text-muted-foreground{color:#afbdcf}.dark .bg-background{background-color:#131720}.dark .bg-card{background-color:#1a212d}.dark .bg-popover{background-color:#222a3a}.dark .bg-primary{background-color:#63b5f8}.dark .bg-secondary{background-color:#2a3347}.dark .bg-muted{background-color:#222a3a}.dark .bg-accent{background-color:#44d580}.dark .bg-destructive{background-color:#f37272}.dark .border-input{border-color:#3d475c}.dark .border-ring{border-color:#63b5f8}.dark .text-primary{color:#6db9f8}.dark .text-primary-foreground{color:#fff}.dark .text-secondary{color:#d7dfea}.dark .text-secondary-foreground{color:#ebeff4}.dark .text-muted{color:#9fafc6}.dark .text-accent{color:#59d98e}.dark .text-accent-foreground{color:#fff}.dark .text-destructive{color:#f47c7c}.dark .text-destructive-foreground{color:#fff}.dark a{color:#6db9f8}.dark a:hover{color:#9ed1fa}.dark .badge,.dark [class*=badge]{border-color:#3d475c}.dark table{border-color:#394356}.dark th{color:#ebeff4;background-color:#1e2533;border-color:#3d475c}.dark td{color:#dee5ed;border-color:#394356}.dark tr:hover{background-color:#1e2533}.dark [role=menu],.dark [role=listbox]{background-color:#222a3a;border-color:#3d475c;box-shadow:0 10px 40px #00000080}.dark [role=menuitem]:hover,.dark [role=option]:hover{background-color:#2a3347}.dark [role=dialog]{background-color:#1e2533;border-color:#3d475c;box-shadow:0 25px 60px #000000b3}.dark [role=tooltip]{color:#ebeff4;background-color:#2a3347;border-color:#47536b;box-shadow:0 4px 20px #0006}.dark code,.dark pre{color:#e4eaf1;background-color:#171c27;border-color:#394356}.dark ::-webkit-scrollbar{width:8px;height:8px}.dark ::-webkit-scrollbar-track{background:#171c27}.dark ::-webkit-scrollbar-thumb{background:#47536b;border-radius:4px}.dark ::-webkit-scrollbar-thumb:hover{background:#525f7a}
@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.animate-shimmer{animation:3s infinite shimmer}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(#9333ea,#3b82f6);border-radius:10px;transition:background .3s}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:linear-gradient(#7e22ce,#2563eb)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #ef4444b3}50%{box-shadow:0 0 0 10px #ef444400}}.animate-pulse-glow{animation:2s infinite pulseGlow}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.animate-gradient{background-size:200% 200%;animation:3s infinite gradientShift}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:3s ease-in-out infinite float}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.5;transform:scale(1.2)rotate(180deg)}}.animate-sparkle{animation:2s ease-in-out infinite sparkle}@keyframes bounceScale{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.05)}}.animate-bounce-scale{animation:1s ease-in-out infinite bounceScale}@keyframes fadeInBlur{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur()}}.animate-fade-in-blur{animation:.5s ease-out fadeInBlur}@keyframes checkmark{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{opacity:1;transform:scale(1.2)rotate(-45deg)}to{opacity:1;transform:scale(1)rotate(-45deg)}}.animate-checkmark{animation:.5s ease-out checkmark}@keyframes typingDot{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.typing-dot-1{animation:1.4s infinite typingDot}.typing-dot-2{animation:1.4s .2s infinite typingDot}.typing-dot-3{animation:1.4s .4s infinite typingDot}@keyframes ripple{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.animate-ripple{animation:1s ease-out ripple}.card-hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-lift:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes dragLift{0%{transform:scale(1)rotate(0);box-shadow:0 4px 6px -1px #0000001a}50%{transform:scale(1.1)rotate(3deg);box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a}to{transform:scale(1.05)rotate(2deg);box-shadow:0 15px 20px -5px #00000026,0 8px 8px -5px #00000014}}.animate-drag-lift{animation:.2s ease-out forwards dragLift}@keyframes dragFloat{0%,to{transform:translateY(0)rotate(2deg)}50%{transform:translateY(-3px)rotate(2deg)}}.animate-drag-float{animation:2s ease-in-out infinite dragFloat}@keyframes dropZoneHighlight{0%,to{transform:scale(1);box-shadow:0 0 #22c55e66}50%{transform:scale(1.01);box-shadow:0 0 0 3px #22c55e33}}.animate-drop-zone-pulse{animation:1.2s ease-in-out infinite dropZoneHighlight}@keyframes dropIndicatorFade{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.animate-drop-indicator{animation:.15s ease-out forwards dropIndicatorFade}@keyframes dropSuccess{0%{background-color:#22c55e00}50%{background-color:#22c55e33}to{background-color:#22c55e00}}.animate-drop-success{animation:.3s ease-out dropSuccess}@keyframes successCheckmark{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{opacity:1;transform:scale(1.3)rotate(-45deg)}to{opacity:1;transform:scale(1)rotate(-45deg)}}.animate-success-checkmark{animation:.5s ease-out forwards successCheckmark}@keyframes rubberBand{0%{transform:scale(1)}30%{transform:scale(1.25,.75)}40%{transform:scale(.75,1.25)}50%{transform:scale(1.15,.85)}65%{transform:scale(.95,1.05)}75%{transform:scale(1.05,.95)}to{transform:scale(1)}}.animate-rubber-band{animation:.6s ease-out rubberBand}@keyframes invalidDropShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.animate-invalid-drop{animation:.4s ease-out invalidDropShake}@keyframes placeholderPulse{0%,to{opacity:.3;border-color:hsl(var(--muted-foreground) / .3)}50%{opacity:.6;border-color:hsl(var(--muted-foreground) / .6)}}.animate-placeholder-pulse{animation:2s ease-in-out infinite placeholderPulse}@keyframes borderGradient{0%,to{background-position:0%}50%{background-position:100%}}.border-gradient-animated{background:linear-gradient(90deg,#9333ea,#3b82f6,#9333ea) 0 0/200% 200%;animation:3s infinite borderGradient}
.react-flow__handle{transition:all .2s;cursor:crosshair!important;border-width:3px!important;width:20px!important;height:20px!important}.react-flow__handle:hover{transform:scale(1.15);width:24px!important;height:24px!important;box-shadow:0 0 0 4px #3b82f633!important}.react-flow__handle-connecting{animation:1s ease-out infinite pulse-ring;background:#3b82f6!important}@keyframes pulse-ring{0%{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}.react-flow__connection-path{stroke-dasharray:8 4;filter:drop-shadow(0 0 12px #3b82f6cc)drop-shadow(0 0 4px #3b82f699);animation:1s linear infinite connection-flow;stroke:#3b82f6!important;stroke-width:4px!important}@keyframes connection-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:24px}}.react-flow__edge.selected .react-flow__edge-path{stroke:#3b82f6!important;stroke-width:4px!important}.react-flow__edge:hover .react-flow__edge-path{filter:drop-shadow(0 0 4px);stroke-width:4px!important}.react-flow__node.selected{box-shadow:0 0 0 4px #3b82f64d}.react-flow__edge-path{transition:stroke-width .2s,stroke .2s}.react-flow__handle.connectable:hover:after{content:"";border:2px dashed #3b82f6;border-radius:50%;animation:3s linear infinite rotate;position:absolute;inset:-4px}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.react-flow__controls{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a!important}.react-flow__controls-button{cursor:pointer!important;background:0 0!important;border:none!important;justify-content:center!important;align-items:center!important;width:32px!important;height:32px!important;transition:all .2s!important;display:flex!important}.react-flow__controls-button:hover{transform:scale(1.1);background:#eff6ff!important}.react-flow__controls-button svg{width:18px!important;height:18px!important}.react-flow__controls-button .lucide-sparkles{animation:2s ease-in-out infinite sparkle}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.react-flow__minimap{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a!important}.react-flow__background{opacity:.4}.react-flow__node.dragging{opacity:.5;cursor:grabbing!important}.react-flow__selection{background:#3b82f61a!important;border:2px solid #3b82f6!important}.react-flow__edge-text{font-size:11px!important;font-weight:600!important}.react-flow__handle-valid{animation:.5s ease-out pulse-valid;background:#10b981!important}@keyframes pulse-valid{0%,to{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 6px #10b98100}}.react-flow__handle-invalid{background:#ef4444!important}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}
