:root{--ide-bg:#0a0b14;--ide-sidebar:#111827;--ide-panel:#111827f2;--ide-text:#f9fafb;--ide-accent:#6366f1;--ide-accent-light:#818cf8}.ide-container{background-color:#0a0b14;color:#f9fafb;color:var(--ide-text);display:flex;flex-direction:column;font-family:JetBrains Mono,Fira Code,Consolas,monospace;height:100vh}.gutter,.ide-container{background-color:var(--ide-bg)}.gutter:hover{background-color:var(--ide-accent)}.gutter.gutter-horizontal{background-image:linear-gradient(90deg,#0000 0,#0000 40%,#6366f14d 0,#6366f14d 60%,#0000 0,#0000)}.gutter.gutter-vertical{background-image:linear-gradient(180deg,#0000 0,#0000 40%,#6366f14d 0,#6366f14d 60%,#0000 0,#0000)}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0a0b1480;border-radius:5px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#6366f166,#8b5cf666);border:2px solid #0a0b1480;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#6366f199,#8b5cf699)}::-webkit-scrollbar-corner{background:#0a0b14;background:var(--ide-bg)}.file-explorer{background-color:#111827;background-color:var(--ide-sidebar);border-right:1px solid #6366f133;border-right:1px solid var(--ide-border);display:flex;flex-direction:column;height:100%}.file-explorer-header{background:#111827f2;background:var(--ide-panel);border-bottom:1px solid #6366f133;border-bottom:1px solid var(--ide-border);color:#9ca3af;color:var(--ide-text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.file-explorer-content{flex:1 1;overflow-y:auto;padding:8px 0}.file-item{align-items:center;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 16px;transition:all .2s ease}.file-item:hover{background-color:#6366f11a;color:#f9fafb;color:var(--ide-text)}.file-item.selected{background-color:#6366f126;border-left:3px solid #6366f1;border-left:3px solid var(--ide-accent);color:#818cf8;color:var(--ide-accent-light)}.file-item .file-icon{flex-shrink:0;height:18px;width:18px}.file-item .file-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-panel{background-color:#0a0b14;background-color:var(--ide-bg);display:flex;flex-direction:column;height:100%}.monaco-editor,.monaco-editor .inputarea.ime-input,.monaco-editor .margin,.monaco-editor .monaco-scrollable-element,.monaco-editor-background{background-color:#0a0b14!important;background-color:var(--ide-bg)!important}.monaco-editor .line-numbers{color:#9ca3af!important;color:var(--ide-text-muted)!important}.monaco-editor .current-line~.line-numbers{color:#818cf8!important;color:var(--ide-accent-light)!important}.terminal-panel{background-color:#0a0b14f2;border-top:1px solid #6366f133;border-top:1px solid var(--ide-border);display:flex;flex-direction:column;height:100%}.terminal-header{align-items:center;background:#111827f2;background:var(--ide-panel);border-bottom:1px solid #6366f133;border-bottom:1px solid var(--ide-border);color:#f9fafb;color:var(--ide-text);display:flex;font-size:13px;font-weight:700;gap:8px;padding:10px 16px}.terminal-content{color:#e5e7eb;flex:1 1;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;line-height:1.7;overflow-y:auto;padding:16px;white-space:pre-wrap;word-break:break-word}.terminal-line{margin-bottom:2px}.terminal-line.success{color:#10b981;color:var(--ide-success)}.terminal-line.error{color:#ef4444;color:var(--ide-error)}.terminal-line.warning{color:#f59e0b;color:var(--ide-warning)}.terminal-line.command{color:#818cf8;color:var(--ide-accent-light)}.status-bar{background:#111827f2;background:var(--ide-panel);border-top:1px solid #6366f133;border-top:1px solid var(--ide-border);color:#9ca3af;color:var(--ide-text-muted);font-size:11px;height:28px;justify-content:space-between;padding:0 16px}.status-bar,.status-bar-item{align-items:center;display:flex}.status-bar-item{border-radius:4px;cursor:default;gap:6px;padding:2px 8px;transition:all .2s ease}.status-bar-item:hover{background:#6366f11a;color:#f9fafb;color:var(--ide-text)}.ide-toolbar{background:#111827f2;background:var(--ide-panel)}.toolbar-button{align-items:center;background:#0000;border:1px solid #6366f133;border:1px solid var(--ide-border);border-radius:8px;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .2s ease}.toolbar-button:hover{background:#6366f11a;border-color:#6366f1;border-color:var(--ide-accent);color:#818cf8;color:var(--ide-accent-light)}.toolbar-button.primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#0000;box-shadow:0 4px 14px #6366f14d;color:#fff}.toolbar-button.primary:hover{box-shadow:0 6px 20px #6366f180;transform:translateY(-1px)}.toolbar-button.success{background:linear-gradient(135deg,#10b981,#059669);border-color:#0000;box-shadow:0 4px 14px #10b9814d;color:#fff}.toolbar-button.success:hover{box-shadow:0 6px 20px #10b98180;transform:translateY(-1px)}.toolbar-button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.5;transform:none!important}.icon-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.icon-button:hover{background:#6366f11a;color:#818cf8;color:var(--ide-accent-light)}.icon-button.active{background:#6366f126;color:#6366f1;color:var(--ide-accent)}.panel-tabs{background:#111827;background:var(--ide-sidebar);border-bottom:1px solid #6366f133;border-bottom:1px solid var(--ide-border);overflow-x:auto}.panel-tab,.panel-tabs{align-items:center;display:flex}.panel-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:13px;gap:8px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.panel-tab:hover{background:#6366f10d;color:#f9fafb;color:var(--ide-text)}.panel-tab.active{background:#0a0b14;background:var(--ide-bg);border-bottom-color:#6366f1;border-bottom-color:var(--ide-accent);color:#818cf8;color:var(--ide-accent-light)}.chip{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.3px;padding:3px 10px}.chip.primary{background:#6366f126;border:1px solid #6366f14d;color:#818cf8;color:var(--ide-accent-light)}.chip.success{background:#10b98126;border:1px solid #10b9814d;color:#10b981;color:var(--ide-success)}.chip.warning{background:#f59e0b26;border:1px solid #f59e0b4d;color:#f59e0b;color:var(--ide-warning)}.chip.error{background:#ef444426;border:1px solid #ef44444d;color:#ef4444;color:var(--ide-error)}.empty-state{color:#9ca3af;color:var(--ide-text-muted);flex-direction:column;height:100%;padding:40px;text-align:center}.empty-state,.empty-state-icon{align-items:center;display:flex;justify-content:center}.empty-state-icon{background:linear-gradient(135deg,#6366f133,#8b5cf633);border:1px solid #6366f14d;border-radius:20px;height:80px;margin-bottom:24px;width:80px}.empty-state h3{color:#f9fafb;color:var(--ide-text);font-size:18px;font-weight:700;margin:0 0 8px}.empty-state p{color:#9ca3af;color:var(--ide-text-muted);font-size:14px;margin:0;max-width:300px}.loading-overlay{align-items:center;background:#0a0b14e6;display:flex;flex-direction:column;gap:16px;inset:0;justify-content:center;position:absolute;z-index:100}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #6366f133;border-radius:50%;border-top:3px solid var(--ide-accent);height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}:focus-visible{outline:2px solid #6366f1;outline:2px solid var(--ide-accent);outline-offset:2px}::selection{color:var(--ide-text)}@media (max-width:768px){.ide-toolbar{-webkit-overflow-scrolling:touch;gap:4px;overflow-x:auto;padding:6px 12px}.toolbar-button{font-size:12px;padding:6px 10px}.status-bar{font-size:10px;padding:0 12px}.file-item{font-size:12px;padding:6px 12px}}@media (max-width:480px){.toolbar-button span:not(.icon){display:none}.toolbar-button{min-width:auto;padding:8px}}:root{--ide-primary:#6366f1;--ide-primary-light:#818cf8;--ide-primary-dark:#4f46e5;--ide-secondary:#8b5cf6;--ide-bg-primary:#0a0b14;--ide-bg-secondary:#111827;--ide-bg-tertiary:#1f2937;--ide-bg-elevated:#111827f2;--ide-surface:#111827cc;--ide-surface-hover:#1f2937e6;--ide-surface-active:#6366f126;--ide-border:#6366f133;--ide-border-light:#6366f11a;--ide-border-strong:#6366f166;--ide-text-primary:#f9fafb;--ide-text-secondary:#e5e7eb;--ide-text-muted:#9ca3af;--ide-text-disabled:#6b7280;--ide-success:#10b981;--ide-success-bg:#10b98126;--ide-warning:#f59e0b;--ide-warning-bg:#f59e0b26;--ide-error:#ef4444;--ide-error-bg:#ef444426;--ide-info:#3b82f6;--ide-info-bg:#3b82f626;--ide-glass-bg:#111827cc;--ide-glass-border:#6366f14d;--ide-glass-blur:20px;--ide-shadow-sm:0 2px 8px #0000004d;--ide-shadow-md:0 4px 16px #0006;--ide-shadow-lg:0 8px 32px #00000080;--ide-shadow-glow:0 0 20px #6366f14d;--ide-font-mono:"JetBrains Mono","Fira Code","Consolas",monospace;--ide-font-sans:"Inter","Segoe UI",-apple-system,sans-serif;--icon-sm:16px;--icon-md:18px;--icon-lg:20px;--icon-xl:22px;--icon-2xl:24px;--ide-gradient-primary:linear-gradient(135deg,#6366f1,#8b5cf6);--ide-gradient-surface:linear-gradient(180deg,#111827f2,#0a0b14fa);--ide-gradient-success:linear-gradient(135deg,#10b981,#059669);--ide-gradient-warning:linear-gradient(135deg,#f59e0b,#d97706);--ide-gradient-error:linear-gradient(135deg,#ef4444,#dc2626)}.gutter{background-color:#0a0b14;background-color:var(--ide-bg-primary);transition:background-color .2s ease}.gutter:hover{background-color:#6366f1;background-color:var(--ide-primary)}.gutter.gutter-horizontal{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='20'%3E%3Cpath d='M2 0v20M4 0v20' stroke='%236366F1' stroke-opacity='.3'/%3E%3C/svg%3E");cursor:col-resize}.gutter.gutter-horizontal,.gutter.gutter-vertical{background-position:50%;background-repeat:no-repeat}.gutter.gutter-vertical{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='6'%3E%3Cpath d='M0 2h20M0 4h20' stroke='%236366F1' stroke-opacity='.3'/%3E%3C/svg%3E");cursor:row-resize}.ide-scrollbar::-webkit-scrollbar,.modern-scrollbar::-webkit-scrollbar{height:10px;width:10px}.ide-scrollbar::-webkit-scrollbar-track,.modern-scrollbar::-webkit-scrollbar-track{background:#0a0b14;background:var(--ide-bg-primary);border-radius:5px}.ide-scrollbar::-webkit-scrollbar-thumb,.modern-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:var(--ide-gradient-primary);border:2px solid #0a0b14;border:2px solid var(--ide-bg-primary);border-radius:5px}.ide-scrollbar::-webkit-scrollbar-thumb:hover,.modern-scrollbar::-webkit-scrollbar-thumb:hover{background:#818cf8;background:var(--ide-primary-light)}.ide-scrollbar::-webkit-scrollbar-corner,.modern-scrollbar::-webkit-scrollbar-corner{background:#0a0b14;background:var(--ide-bg-primary)}.file-explorer-item{align-items:center;border-radius:8px;color:#e5e7eb;color:var(--ide-text-secondary);cursor:pointer;display:flex;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:13px;gap:8px;margin:2px 4px;padding:8px 12px;transition:all .2s ease}.file-explorer-item:hover{background:#1f2937e6;background:var(--ide-surface-hover);color:#f9fafb;color:var(--ide-text-primary)}.file-explorer-item.selected{background:#6366f126;background:var(--ide-surface-active);border-left:3px solid #6366f1;border-left:3px solid var(--ide-primary);color:#818cf8;color:var(--ide-primary-light)}.file-explorer-item .file-icon{flex-shrink:0;height:18px;height:var(--icon-md);width:18px;width:var(--icon-md)}.file-explorer-item .file-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-explorer-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(var(--ide-glass-blur));backdrop-filter:blur(var(--ide-glass-blur));background:#111827cc;background:var(--ide-glass-bg);border-bottom:1px solid #6366f11a;border-bottom:1px solid var(--ide-border-light);display:flex;justify-content:space-between;padding:12px 16px}.file-explorer-header h3{color:#9ca3af;color:var(--ide-text-muted);font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans);font-size:12px;font-weight:700;letter-spacing:.5px;margin:0;text-transform:uppercase}.file-explorer-actions{align-items:center;display:flex;gap:4px}.file-explorer-actions button{align-items:center;background:#0000;border:none;border-radius:6px;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s ease;width:28px}.file-explorer-actions button:hover{background:#6366f126;background:var(--ide-surface-active);color:#818cf8;color:var(--ide-primary-light)}.terminal-output{color:#e5e7eb;color:var(--ide-text-secondary);font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:13px;line-height:1.7;padding:16px;white-space:pre-wrap;word-break:break-word}.terminal-output .line{margin-bottom:2px}.terminal-output .success{color:#10b981;color:var(--ide-success)}.terminal-output .error{color:#ef4444;color:var(--ide-error)}.terminal-output .warning{color:#f59e0b;color:var(--ide-warning)}.terminal-output .info{color:#3b82f6;color:var(--ide-info)}.terminal-output .command{color:#818cf8;color:var(--ide-primary-light)}.terminal-output .comment{color:#6b7280;color:var(--ide-text-disabled);font-style:italic}.terminal-input{align-items:center;background:#111827cc;background:var(--ide-glass-bg);border-top:1px solid #6366f11a;border-top:1px solid var(--ide-border-light);display:flex;gap:8px;padding:12px 16px}.terminal-input .prompt{color:#818cf8;color:var(--ide-primary-light);font-weight:600}.terminal-input .prompt,.terminal-input input{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:14px}.terminal-input input{background:#0000;border:none;color:#f9fafb;color:var(--ide-text-primary);flex:1 1;outline:none}.terminal-input input::placeholder{color:#6b7280;color:var(--ide-text-disabled)}.skeleton{animation:skeleton-shimmer 1.5s infinite;background:linear-gradient(90deg,#111827 25%,#1f2937 50%,#111827 75%);background:linear-gradient(90deg,var(--ide-bg-secondary) 25%,var(--ide-bg-tertiary) 50%,var(--ide-bg-secondary) 75%);background-size:200% 100%;border-radius:6px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ide-status-bar{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(var(--ide-glass-blur));backdrop-filter:blur(var(--ide-glass-blur));background:#111827cc;background:var(--ide-glass-bg);border-top:1px solid #6366f133;border-top:1px solid var(--ide-border);color:#9ca3af;color:var(--ide-text-muted);display:flex;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:11px;height:28px;justify-content:space-between;padding:0 16px}.ide-status-bar .status-item{align-items:center;border-radius:4px;cursor:default;display:flex;gap:6px;padding:2px 8px;transition:all .2s ease}.ide-status-bar .status-item:hover{background:#6366f126;background:var(--ide-surface-active);color:#f9fafb;color:var(--ide-text-primary)}.ide-status-bar .status-indicator{background:#6366f1;background:var(--ide-primary);border-radius:50%;height:8px;width:8px}.ide-status-bar .status-indicator.success{background:#10b981;background:var(--ide-success);box-shadow:0 0 8px #10b981;box-shadow:0 0 8px var(--ide-success)}.ide-status-bar .status-indicator.error{background:#ef4444;background:var(--ide-error);box-shadow:0 0 8px #ef4444;box-shadow:0 0 8px var(--ide-error)}.ide-status-bar .status-indicator.warning{animation:pulse 1.5s infinite;background:#f59e0b;background:var(--ide-warning);box-shadow:0 0 8px #f59e0b;box-shadow:0 0 8px var(--ide-warning)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ide-toolbar{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(var(--ide-glass-blur));backdrop-filter:blur(var(--ide-glass-blur));background:#111827cc;background:var(--ide-glass-bg);border-bottom:1px solid #6366f133;border-bottom:1px solid var(--ide-border);display:flex;gap:8px;padding:8px 16px}.ide-toolbar-button{align-items:center;background:#0000;border:1px solid #6366f133;border:1px solid var(--ide-border);border-radius:8px;color:#e5e7eb;color:var(--ide-text-secondary);cursor:pointer;display:flex;font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans);font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:8px 14px;transition:all .2s ease}.ide-toolbar-button:hover{background:#6366f126;background:var(--ide-surface-active);border-color:#6366f1;border-color:var(--ide-primary);color:#818cf8;color:var(--ide-primary-light)}.ide-toolbar-button.primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:var(--ide-gradient-primary);border-color:#0000;box-shadow:0 0 20px #6366f14d;box-shadow:var(--ide-shadow-glow);color:#fff}.ide-toolbar-button.primary:hover{box-shadow:0 0 30px #6366f180;transform:translateY(-1px)}.ide-toolbar-button.success{background:linear-gradient(135deg,#10b981,#059669);background:var(--ide-gradient-success);border-color:#0000;box-shadow:0 4px 14px #10b9814d;color:#fff}.ide-toolbar-button.success:hover{box-shadow:0 6px 20px #10b98180;transform:translateY(-1px)}.ide-toolbar-button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.5;transform:none!important}.ide-toolbar-button .icon{height:18px;height:var(--icon-md);width:18px;width:var(--icon-md)}.ide-icon-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.ide-icon-button:hover{color:#818cf8;color:var(--ide-primary-light)}.ide-icon-button.active,.ide-icon-button:hover{background:#6366f126;background:var(--ide-surface-active)}.ide-icon-button.active{color:#6366f1;color:var(--ide-primary)}.ide-icon-button .icon{height:20px;height:var(--icon-lg);width:20px;width:var(--icon-lg)}.ide-tabs{background:#111827;background:var(--ide-bg-secondary);border-bottom:1px solid #6366f11a;border-bottom:1px solid var(--ide-border-light);overflow-x:auto}.ide-tab,.ide-tabs{align-items:center;display:flex}.ide-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#9ca3af;color:var(--ide-text-muted);cursor:pointer;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:13px;gap:8px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.ide-tab:hover{background:#1f2937e6;background:var(--ide-surface-hover);color:#f9fafb;color:var(--ide-text-primary)}.ide-tab.active{background:#0a0b14;background:var(--ide-bg-primary);border-bottom-color:#6366f1;border-bottom-color:var(--ide-primary);color:#818cf8;color:var(--ide-primary-light)}.ide-tab .close-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#6b7280;color:var(--ide-text-disabled);cursor:pointer;display:flex;height:18px;justify-content:center;opacity:0;transition:all .2s ease;width:18px}.ide-tab:hover .close-btn{opacity:1}.ide-tab .close-btn:hover{background:#ef444426;background:var(--ide-error-bg);color:#ef4444;color:var(--ide-error)}.ide-badge{align-items:center;border-radius:12px;display:inline-flex;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono);font-size:10px;font-weight:700;justify-content:center;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.ide-badge.primary{background:#6366f126;background:var(--ide-surface-active);border:1px solid #6366f14d;border:1px solid var(--ide-glass-border);color:#818cf8;color:var(--ide-primary-light)}.ide-badge.success{background:#10b98126;background:var(--ide-success-bg);border:1px solid #10b9814d;color:#10b981;color:var(--ide-success)}.ide-badge.warning{background:#f59e0b26;background:var(--ide-warning-bg);border:1px solid #f59e0b4d;color:#f59e0b;color:var(--ide-warning)}.ide-badge.error{background:#ef444426;background:var(--ide-error-bg);border:1px solid #ef44444d;color:#ef4444;color:var(--ide-error)}.ide-tooltip{border:1px solid #6366f14d;border:1px solid var(--ide-glass-border);border-radius:8px;color:#f9fafb;color:var(--ide-text-primary);font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans);font-size:12px;padding:8px 12px;pointer-events:none;position:absolute;white-space:nowrap}.ide-context-menu,.ide-tooltip{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(var(--ide-glass-blur));backdrop-filter:blur(var(--ide-glass-blur));background:#111827cc;background:var(--ide-glass-bg);box-shadow:0 8px 32px #00000080;box-shadow:var(--ide-shadow-lg);z-index:1000}.ide-context-menu{border:1px solid #6366f14d;border:1px solid var(--ide-glass-border);border-radius:12px;min-width:180px;padding:6px;position:fixed}.ide-context-menu-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#e5e7eb;color:var(--ide-text-secondary);cursor:pointer;display:flex;font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans);font-size:13px;gap:10px;padding:10px 14px;text-align:left;transition:all .2s ease;width:100%}.ide-context-menu-item:hover{background:#6366f126;background:var(--ide-surface-active);color:#818cf8;color:var(--ide-primary-light)}.ide-context-menu-item .icon{color:#9ca3af;color:var(--ide-text-muted);height:18px;height:var(--icon-md);width:18px;width:var(--icon-md)}.ide-context-menu-item:hover .icon{color:#818cf8;color:var(--ide-primary-light)}.ide-context-menu-item .shortcut{color:#6b7280;color:var(--ide-text-disabled);font-size:11px;margin-left:auto}.ide-context-menu-divider{background:#6366f11a;background:var(--ide-border-light);height:1px;margin:6px 0}.ide-panel-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(var(--ide-glass-blur));backdrop-filter:blur(var(--ide-glass-blur));background:#111827cc;background:var(--ide-glass-bg);border-bottom:1px solid #6366f11a;border-bottom:1px solid var(--ide-border-light);display:flex;justify-content:space-between;min-height:40px;padding:10px 16px}.ide-panel-header .title{align-items:center;color:#f9fafb;color:var(--ide-text-primary);display:flex;font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans);font-size:13px;font-weight:700;gap:8px}.ide-panel-header .title .icon{color:#6366f1;color:var(--ide-primary);height:18px;height:var(--icon-md);width:18px;width:var(--icon-md)}.ai-assistant-panel{background:#0a0b14;background:var(--ide-bg-primary);border-left:1px solid #6366f133;border-left:1px solid var(--ide-border);display:flex;flex-direction:column;height:100%}.ai-message{border-radius:12px;margin:8px;max-width:90%;padding:14px 16px}.ai-message.user{background:#6366f126;background:var(--ide-surface-active);border:1px solid #6366f14d;border:1px solid var(--ide-glass-border);margin-left:auto}.ai-message.assistant{background:#111827;background:var(--ide-bg-secondary);border:1px solid #6366f11a;border:1px solid var(--ide-border-light)}.ai-code-block{background:#0a0b14;background:var(--ide-bg-primary);border:1px solid #6366f133;border:1px solid var(--ide-border);border-radius:8px;margin:12px 0;overflow:hidden}.ai-code-block .header{align-items:center;background:#111827cc;background:var(--ide-surface);border-bottom:1px solid #6366f11a;border-bottom:1px solid var(--ide-border-light);display:flex;justify-content:space-between;padding:8px 12px}.ai-code-block .header .language{color:#9ca3af;color:var(--ide-text-muted);font-size:11px;letter-spacing:.5px;text-transform:uppercase}.ai-code-block .header .language,.ai-code-block pre{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--ide-font-mono)}.ai-code-block pre{color:#e5e7eb;color:var(--ide-text-secondary);font-size:13px;line-height:1.6;margin:0;overflow-x:auto;padding:14px}.ide-empty-state{flex-direction:column;height:100%;padding:40px;text-align:center}.ide-empty-state,.ide-empty-state .icon-wrapper{align-items:center;display:flex;justify-content:center}.ide-empty-state .icon-wrapper{background:linear-gradient(135deg,#6366f1,#8b5cf6);background:var(--ide-gradient-primary);border-radius:20px;box-shadow:0 0 20px #6366f14d;box-shadow:var(--ide-shadow-glow);height:80px;margin-bottom:24px;width:80px}.ide-empty-state .icon-wrapper .icon{color:#fff;height:40px;width:40px}.ide-empty-state h3{color:#f9fafb;color:var(--ide-text-primary);font-size:18px;font-weight:700;margin:0 0 8px}.ide-empty-state h3,.ide-empty-state p{font-family:Inter,Segoe UI,-apple-system,sans-serif;font-family:var(--ide-font-sans)}.ide-empty-state p{color:#9ca3af;color:var(--ide-text-muted);font-size:14px;margin:0;max-width:300px}@media (max-width:768px){.ide-toolbar{gap:4px;overflow-x:auto;padding:6px 12px}.ide-toolbar-button{font-size:12px;padding:6px 10px}.ide-status-bar{font-size:10px;padding:0 12px}.file-explorer-item{font-size:12px;padding:6px 10px}.ide-panel-header{padding:8px 12px}}@media (max-width:480px){.ide-toolbar-button span{display:none}.ide-toolbar-button{padding:8px}.ide-status-bar .status-item:not(.essential){display:none}}@keyframes gradientFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-flow{animation:gradientFlow 3s ease infinite;background-size:200% 200%}.ide-focus-visible:focus-visible{outline:2px solid #6366f1;outline:2px solid var(--ide-primary);outline-offset:2px}::selection{background:#6366f166;color:#f9fafb;color:var(--ide-text-primary)}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.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{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray: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;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;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{margin:15px;position:absolute;z-index:5}.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:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.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-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.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-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.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{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 #0059dccc}.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{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.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.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.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.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
/*# sourceMappingURL=main.d8e5a757.css.map*/