html,body{background:var(--gradient-card);overscroll-behavior:none;max-width:100vw;min-height:100vh;margin:0;padding:0;overflow-x:hidden}html.dark:before,html[data-theme=basbuilder-dark]:before{content:"";z-index:-1;background:linear-gradient(9deg,#121212 0%,#1c1c1c 60%,#1a1a1a 100%);position:fixed;inset:0}html.dark #__next,html[data-theme=basbuilder-dark] #__next{background:linear-gradient(9deg,#121212 0%,#1c1c1c 60%,#1a1a1a 100%);min-height:100vh}html.light #__next,html[data-theme=basbuilder-light] #__next{background:0 0;min-height:100vh}[data-theme=basbuilder-dark] main,[data-theme=basbuilder-dark] .text-foreground{background-color:#0000}*,:before,:after{border-color:hsl(var(--border))}body{font-feature-settings:"rlig" 1, "calt" 1;background-attachment:fixed}[role=dialog][data-radix-dialog-content]{border:none!important}code,pre,kbd,samp{font-family:var(--font-mono)}.bg-gradient-brand{background:linear-gradient(135deg, hsl(var(--tertiary)) 0%, hsl(var(--accent)) 40%, hsl(var(--primary)) 100%)}.bg-elevated{background:var(--gradient-bg-elevated)}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.badge-type{background:hsl(var(--muted) / .1);font-family:var(--font-mono);color:hsl(var(--muted-foreground) / .6);border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem}.badge-key{background:hsl(var(--muted) / .1);font-family:var(--font-mono);color:hsl(var(--muted-foreground) / .5);border-radius:.25rem;padding:.125rem .375rem;font-size:10px}.text-h1{font-family:var(--font-heading);letter-spacing:-.025em;font-size:1.875rem;font-weight:700;line-height:1.2}.text-h2{font-family:var(--font-heading);letter-spacing:-.02em;font-size:1.5rem;font-weight:600;line-height:1.25}.text-h3{font-family:var(--font-heading);letter-spacing:-.015em;font-size:1.25rem;font-weight:600;line-height:1.3}.text-h4{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;line-height:1.35}.text-body{font-size:.875rem;line-height:1.5}.text-body-sm{font-size:.8125rem;line-height:1.5}.text-caption{color:hsl(var(--muted-foreground));font-size:.75rem;line-height:1.5}.text-overline{letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:600;line-height:1.5}.text-label{font-size:.8125rem;font-weight:500;line-height:1.5}.shadow-elevation-1{box-shadow:0 1px 2px #0000000a,0 1px 3px #0000000f}.shadow-elevation-2{box-shadow:0 2px 4px #0000000a,0 4px 12px #00000014}.shadow-elevation-3{box-shadow:0 4px 8px #0000000f,0 8px 24px #0000001a}.shadow-elevation-4{box-shadow:0 8px 16px #00000014,0 16px 48px #0000001f}.dark .shadow-elevation-1{box-shadow:0 1px 2px #0003,0 1px 3px #0000004d}.dark .shadow-elevation-2{box-shadow:0 2px 4px #0003,0 4px 12px #00000059}.dark .shadow-elevation-3{box-shadow:0 4px 8px #00000040,0 8px 24px #0006}.dark .shadow-elevation-4{box-shadow:0 8px 16px #0000004d,0 16px 48px #00000080}.shadow-dialog{box-shadow:0 8px 16px #00000014,0 16px 48px #0000001f}.dark .shadow-dialog{box-shadow:0 8px 16px #0000004d,0 16px 48px #00000080}.border-table-subtle{border:1px solid hsl(var(--border))}.animate-slide-in-right{animation:.2s ease-out slide-in-right}.animate-slide-in-left{animation:.2s ease-out slide-in-left}.animate-slide-in-top{animation:.2s ease-out slide-in-top}.animate-slide-in-bottom{animation:.2s ease-out slide-in-bottom}.animate-scale-in{animation:.15s cubic-bezier(.16,1,.3,1) scale-in}.animate-fade-in{animation:.15s ease-out fade-in}.animate-shimmer-wave{animation:1.5s ease-in-out infinite shimmer-wave}.react-flow__controls{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;overflow:hidden;box-shadow:0 4px 16px #00000026}.dark .react-flow__controls{background:#1e2429;border-color:#ffffff14;box-shadow:0 4px 16px #0000004d}.react-flow__controls-button{transition:all .15s;border-color:hsl(var(--border))!important;color:hsl(var(--muted-foreground))!important;background:0 0!important;width:32px!important;height:32px!important;padding:8px!important}.react-flow__controls-button:hover{background:hsl(var(--primary) / .1)!important;color:hsl(var(--primary))!important}.react-flow__controls-button:disabled{opacity:.3}.react-flow__controls-button svg{fill:currentColor!important;width:14px!important;height:14px!important}.react-flow__minimap{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;overflow:hidden;box-shadow:0 4px 16px #00000026}.dark .react-flow__minimap{background:#1a1f23;border-color:#ffffff14;box-shadow:0 4px 16px #0000004d}.react-flow__minimap-mask{fill:hsl(var(--background) / .6)}.dark .react-flow__minimap-mask{fill:#111418b3}.react-flow__minimap-node{rx:4;ry:4}.dark .react-flow__minimap-node{fill:hsl(var(--primary) / .4)!important}.dark .react-flow__minimap-node.selected{fill:hsl(var(--primary) / .7)!important}.light .react-flow__minimap-node{fill:hsl(var(--primary) / .25)!important}.light .react-flow__minimap-node.selected{fill:hsl(var(--primary) / .5)!important}.react-flow__background pattern circle,.react-flow__background pattern line{stroke:hsl(var(--border))}.react-flow__handle{transition:box-shadow .2s ease-in-out,border-color .2s ease-in-out,background-color .2s ease-in-out,opacity .2s ease-in-out!important}.react-flow__handle:hover{box-shadow:0 0 12px 4px hsl(var(--primary) / .4)!important}.react-flow__handle.connecting{animation:1s ease-in-out infinite handle-pulse}.react-flow__handle-valid{box-shadow:0 0 12px 4px #16a24980!important}.react-flow__handle-invalid{box-shadow:0 0 12px 4px #ef434380!important}@keyframes handle-pulse{0%,to{box-shadow:0 0 8px 2px hsl(var(--primary) / .4)}50%{box-shadow:0 0 16px 6px hsl(var(--primary) / .6)}}.react-flow__connection-path{animation:.5s linear infinite connection-dash;stroke:hsl(var(--primary))!important;stroke-width:3px!important;stroke-dasharray:8 4!important}@keyframes connection-dash{to{stroke-dashoffset:-12px}}.react-flow__edge .react-flow__edge-path{stroke-linecap:round;stroke-linejoin:round;transition:stroke-width .15s ease-out}.react-flow__edge.selected .react-flow__edge-path{stroke-width:3px}.react-flow,.react-flow__viewport,.react-flow__renderer,.react-flow__edges,.react-flow__nodes,.react-flow__pane{width:100%;height:100%}.react-flow__edges svg{pointer-events:none;width:100%!important;height:100%!important;overflow:visible!important}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slide-in-top{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes shimmer-wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-contrast:high){:root{--border:192 10% 30%;--muted-foreground:192 8% 25%}.dark{--border:192 8% 50%;--muted-foreground:192 6% 75%}}@media (prefers-reduced-transparency:reduce){.glass-card,.glass-panel,.glass-modal{-webkit-backdrop-filter:none;backdrop-filter:none;opacity:1}}.chat-stream-shimmer-bar{background:hsl(var(--muted) / .18);width:100%;height:2px;position:relative;overflow:hidden}.chat-stream-shimmer-bar:after{content:"";background:linear-gradient(90deg, transparent 0%, hsl(var(--primary) / 0) 0%, hsl(var(--primary) / .85) 50%, hsl(var(--primary) / 0) 100%, transparent 100%);background-repeat:no-repeat;background-size:40% 100%;animation:1.35s linear infinite chat-stream-shimmer;position:absolute;inset:0}@keyframes chat-stream-shimmer{0%{background-position:-40% 0}to{background-position:140% 0}}.chat-stream-shimmer-bar[data-fading-out=true]{opacity:0;transition:opacity .3s ease-out}.chat-stream-halo-dot{width:8px;height:8px;display:inline-block;position:relative}.chat-stream-halo-dot:before{content:"";background:hsl(var(--primary));border-radius:9999px;position:absolute;inset:0}.chat-stream-halo-dot:after{content:"";border:1.5px solid hsl(var(--primary) / .55);border-radius:9999px;animation:1.4s ease-in-out infinite chat-stream-halo;position:absolute;inset:-3px}@keyframes chat-stream-halo{0%{opacity:.85;transform:scale(.85)}60%{opacity:0;transform:scale(1.6)}to{opacity:0;transform:scale(1.6)}}.chat-typing-dots{align-items:center;gap:4px;display:inline-flex}.chat-typing-dots>span{background:hsl(var(--muted-foreground) / .65);border-radius:9999px;width:5px;height:5px;animation:1.4s ease-in-out infinite chat-typing-dot;display:inline-block}.chat-typing-dots>span:first-child{animation-delay:0s}.chat-typing-dots>span:nth-child(2){animation-delay:.22s}.chat-typing-dots>span:nth-child(3){animation-delay:.44s}@keyframes chat-typing-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.chat-stream-shimmer-bar:after{background:hsl(var(--primary) / .45);animation:none}.chat-stream-halo-dot:after{opacity:.55;animation:none;transform:scale(1)}.chat-typing-dots>span{opacity:.7;animation:none}.animate-slide-in-right,.animate-slide-in-left,.animate-slide-in-top,.animate-slide-in-bottom,.animate-scale-in,.animate-fade-in,.animate-shimmer-wave,.react-flow__edge-path-animated,[class*=handle-pulse],[class*=connection-dash]{animation:none!important}}.gradient-dark-card-chat{background:linear-gradient(135deg,#13171b 0%,#151a1e 25%,#1a1f23 50%,#151a1e 75%,#13171b 100%)}.light .gradient-dark-card-chat{background:#f4f4f6}.gradient-dark-card{border:1px solid hsl(var(--border));border-radius:var(--radius-lg,.75rem);background:linear-gradient(135deg,#181c21f5 0%,#181d21f7 25%,#1c2126fa 50%,#181d22f7 75%,#181c21f5 100%)}.light .gradient-dark-card{-webkit-backdrop-filter:blur(16px);background:linear-gradient(135deg,#fcfcfc 0%,#f7f7f7 100%);border:1px solid #e0e0e0;box-shadow:0 4px 20px #0000000f,0 1px 3px #0000000a,inset 0 1px #fffc}.gradient-dark-card-sidebar{border:1px solid hsl(var(--border));background:linear-gradient(135deg,#191d22 0%,#191e23 25%,#1d2228 50%,#191e23 75%,#191e22 100%);border-radius:0}.light .gradient-dark-card-sidebar{background:#f1f2f4;border:1px solid #d7dae0;border-radius:0}.backdrop-blur-premium{-webkit-backdrop-filter:blur(20px)}.shadow-elegant{box-shadow:0 10px 30px -5px #0000004d}.light .shadow-elegant{box-shadow:0 4px 16px -4px #0000001a}.bg-field-subtle{background:linear-gradient(135deg,#1a1a1af2 0%,#1f1f1ffa 70%,#1a1a1a 100%)}.light .bg-field-subtle{background:#f7f7f8;border:1px solid #dddfe4}