:root{--flow-bg-deepest:#0D0D0D;--flow-bg-base:#1E1E1E;--flow-bg-elevated:#2D2D2D;--flow-bg-hover:#3D3D3D;--flow-bg-active:#4D4D4D;--flow-bg-glass:rgba(30,30,30,0.8);--flow-bg-glass-hover:rgba(45,45,45,0.9);--flow-bg-overlay:rgba(0,0,0,0.6);--flow-bg-modal:rgba(13,13,13,0.95);--flow-accent-purple:#7C3AED;--flow-accent-purple-hover:#8B5CF6;--flow-accent-purple-subtle:rgba(124,58,237,0.15);--flow-accent-purple-glow:rgba(124,58,237,0.4);--flow-accent-blue:#3B82F6;--flow-accent-blue-hover:#60A5FA;--flow-accent-blue-subtle:rgba(59,130,246,0.15);--flow-accent-blue-glow:rgba(59,130,246,0.4);--flow-gradient-primary:linear-gradient(135deg,#7C3AED,#3B82F6);--flow-gradient-primary-hover:linear-gradient(135deg,#8B5CF6,#60A5FA);--flow-gradient-subtle:linear-gradient(135deg,rgba(124,58,237,0.2),rgba(59,130,246,0.2));--flow-text-primary:#FFFFFF;--flow-text-secondary:#A1A1AA;--flow-text-muted:#71717A;--flow-text-disabled:#52525B;--flow-text-inverse:#0D0D0D;--flow-border-default:rgba(255,255,255,0.1);--flow-border-subtle:rgba(255,255,255,0.06);--flow-border-strong:rgba(255,255,255,0.2);--flow-border-focus:var(--flow-accent-purple);--flow-success:#22C55E;--flow-success-subtle:rgba(34,197,94,0.15);--flow-warning:#F59E0B;--flow-warning-subtle:rgba(245,158,11,0.15);--flow-error:#EF4444;--flow-error-subtle:rgba(239,68,68,0.15);--flow-info:#3B82F6;--flow-info-subtle:rgba(59,130,246,0.15);--flow-space-0:0;--flow-space-1:4px;--flow-space-2:8px;--flow-space-3:12px;--flow-space-4:16px;--flow-space-5:20px;--flow-space-6:24px;--flow-space-8:32px;--flow-space-10:40px;--flow-space-12:48px;--flow-space-16:64px;--flow-space-20:80px;--flow-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--flow-font-mono:"SF Mono","Fira Code","JetBrains Mono",Consolas,monospace;--flow-text-xs:11px;--flow-text-sm:12px;--flow-text-base:13px;--flow-text-md:14px;--flow-text-lg:16px;--flow-text-xl:18px;--flow-text-2xl:20px;--flow-text-3xl:24px;--flow-leading-none:1;--flow-leading-tight:1.25;--flow-leading-snug:1.375;--flow-leading-normal:1.5;--flow-leading-relaxed:1.625;--flow-font-normal:400;--flow-font-medium:500;--flow-font-semibold:600;--flow-font-bold:700;--flow-radius-none:0;--flow-radius-sm:4px;--flow-radius-md:8px;--flow-radius-lg:12px;--flow-radius-xl:16px;--flow-radius-2xl:20px;--flow-radius-full:9999px;--flow-shadow-sm:0 1px 2px rgba(0,0,0,0.3),0 1px 3px rgba(0,0,0,0.15);--flow-shadow-md:0 2px 4px rgba(0,0,0,0.3),0 4px 8px rgba(0,0,0,0.2),0 8px 16px rgba(0,0,0,0.1);--flow-shadow-lg:0 4px 8px rgba(0,0,0,0.4),0 8px 16px rgba(0,0,0,0.3),0 16px 32px rgba(0,0,0,0.2);--flow-shadow-xl:0 8px 16px rgba(0,0,0,0.4),0 16px 32px rgba(0,0,0,0.3),0 24px 48px rgba(0,0,0,0.2);--flow-glow-purple:0 0 20px var(--flow-accent-purple-glow),0 0 40px rgba(124,58,237,0.2);--flow-glow-blue:0 0 20px var(--flow-accent-blue-glow),0 0 40px rgba(59,130,246,0.2);--flow-shadow-inset:inset 0 1px 2px rgba(0,0,0,0.3);--flow-shadow-inset-highlight:inset 0 1px 0 rgba(255,255,255,0.05);--flow-shadow-floating:0 8px 32px rgba(0,0,0,0.5);--flow-shadow-elevated:0 4px 16px rgba(0,0,0,0.3);--flow-grid-color-default:rgba(255,255,255,0.08);--flow-grid-color-strong:rgba(255,255,255,0.15);--flow-grid-color-subtle:rgba(255,255,255,0.04);--flow-duration-fast:100ms;--flow-duration-normal:200ms;--flow-duration-slow:300ms;--flow-duration-slower:400ms;--flow-ease-default:cubic-bezier(0.4,0,0.2,1);--flow-ease-in:cubic-bezier(0.4,0,1,1);--flow-ease-out:cubic-bezier(0,0,0.2,1);--flow-ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--flow-transition-fast:all var(--flow-duration-fast) var(--flow-ease-out);--flow-transition-normal:all var(--flow-duration-normal) var(--flow-ease-out);--flow-transition-slow:all var(--flow-duration-slow) var(--flow-ease-out);--flow-transition-colors:color,background-color,border-color,fill,stroke var(--flow-duration-normal) var(--flow-ease-out);--flow-z-below:-1;--flow-z-base:0;--flow-z-elevated:10;--flow-z-dropdown:100;--flow-z-sticky:200;--flow-z-modal:300;--flow-z-popover:400;--flow-z-tooltip:500;--flow-z-toast:600;--flow-button-height-sm:28px;--flow-button-height-md:32px;--flow-button-height-lg:40px;--flow-input-height-sm:28px;--flow-input-height-md:32px;--flow-input-height-lg:40px;--flow-sidebar-width:260px;--flow-sidebar-width-collapsed:48px;--flow-panel-width:320px;--flow-header-height:48px}.flow-focus-ring:focus-visible{outline:2px solid var(--flow-accent-purple);outline-offset:2px}.flow-glass{background:var(--flow-bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--flow-border-default)}.flow-scrollbar::-webkit-scrollbar{width:8px;height:8px}.flow-scrollbar::-webkit-scrollbar-track{background:transparent}.flow-scrollbar::-webkit-scrollbar-thumb{background:var(--flow-border-default);border-radius:var(--flow-radius-full)}.flow-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--flow-border-strong)}.flow-scrollbar-hidden{scrollbar-width:none;-ms-overflow-style:none}.flow-scrollbar-hidden::-webkit-scrollbar{display:none}.flow-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes flow-fade-in{0%{opacity:0}to{opacity:1}}@keyframes flow-fade-out{0%{opacity:1}to{opacity:0}}@keyframes flow-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flow-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes flow-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes flow-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes flow-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.flow-animate-fade-in{animation:flow-fade-in var(--flow-duration-normal) var(--flow-ease-out)}.flow-animate-slide-up{animation:flow-slide-up var(--flow-duration-normal) var(--flow-ease-out)}.flow-animate-slide-down{animation:flow-slide-down var(--flow-duration-normal) var(--flow-ease-out)}.flow-animate-scale-in{animation:flow-scale-in var(--flow-duration-normal) var(--flow-ease-out)}.flow-animate-pulse{animation:flow-pulse 2s var(--flow-ease-default) infinite}.flow-animate-spin{animation:flow-spin 1s linear infinite}@keyframes flow-connection-flow{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}.flow-connection-animated{animation:flow-connection-flow 1s linear infinite}.flow-status-bar{background:var(--flow-bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--flow-border-default);box-shadow:var(--flow-shadow-floating)}