@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-base:224 30% 7%;--bg-surface:222 25% 10%;--bg-panel:223 20% 12%;--bg-panel-hover:223 20% 16%;--border-color:223 20% 18%;--text-primary:0 0% 95%;--text-secondary:220 15% 82%;--text-muted:220 15% 68%;--accent-indigo:263 70% 50%;--accent-violet:280 80% 60%;--accent-cyan:190 90% 50%;--accent-success:142 70% 45%;--accent-error:346 80% 55%;--accent-warning:38 90% 55%;--glow-indigo:0 0 15px #6b26d959;--glow-violet:0 0 15px #b447eb59;--glow-cyan:0 0 15px #0dccf259;--glow-success:0 0 15px #22c35d59;--glow-error:0 0 15px #e8305b59}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:hsl(var(--bg-base));height:100%;color:hsl(var(--text-primary));font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:hsl(var(--border-color));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--text-muted))}.ide-container{background:radial-gradient(circle at 50% -20%,#b447eb1a,#0000 60%),radial-gradient(circle at 10% 40%,#6b26d90d,#0000 40%);grid-template-rows:1fr 30px;width:100vw;height:100vh;display:grid}.ide-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#0a0c1699;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.brand{letter-spacing:.5px;background:linear-gradient(135deg, hsl(var(--accent-violet)), hsl(var(--accent-cyan)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;gap:10px;font-size:1.1rem;font-weight:700;display:flex}.ide-main{grid-template-columns:320px 4px 1fr;height:100%;display:grid;overflow:hidden}.sidebar-resizer{cursor:col-resize;z-index:20;-webkit-user-select:none;user-select:none;background:#ffffff0a;width:4px;height:100%;transition:background .15s,box-shadow .15s;position:relative}.sidebar-resizer:hover,.sidebar-resizer.dragging{background:hsl(var(--accent-violet));box-shadow:0 0 10px hsl(var(--accent-violet))}.sidebar{background:#0d101cd9;border-right:1px solid #ffffff0f;flex-direction:column;height:100%;display:flex;overflow:hidden}.sidebar-brand-header{background:#080a14f2;border-bottom:1px solid #ffffff0d;flex-shrink:0;align-items:center;height:48px;padding:0 16px;display:flex}.brand-text{letter-spacing:.5px;background:linear-gradient(135deg, hsl(var(--accent-violet)), hsl(var(--accent-cyan)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:.85rem;font-weight:700}.sidebar-toggle-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;margin-left:auto;padding:5px;transition:all .15s;display:flex}.sidebar-toggle-btn:hover{color:#fff;background:#ffffff1a}.sidebar-expand-floating-btn{color:#cbd5e1;cursor:pointer;background:#0d101ce6;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;margin-right:6px;padding:6px;transition:all .15s;display:flex}.sidebar-expand-floating-btn:hover{color:#fff;border-color:hsl(var(--accent-violet));background:#8b5cf633}.sidebar-tabs{background:#0a0c1666;border-bottom:1px solid #ffffff0f;display:flex}.sidebar-tab{color:hsl(var(--text-secondary));cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 6px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.sidebar-tab:hover{color:hsl(var(--text-primary));background:#ffffff05}.sidebar-tab.active{color:hsl(var(--accent-violet));border-bottom-color:hsl(var(--accent-violet));text-shadow:var(--glow-violet);background:#8b5cf60d}.sidebar-content{flex-direction:column;flex:1;gap:10px;padding:10px 14px;display:flex;overflow-y:auto}.workspace-right{grid-template-rows:1fr 200px;height:100%;display:grid;overflow:hidden}.editor-container{background:hsl(var(--bg-surface));flex-direction:column;height:100%;display:flex;overflow:hidden}.editor-wrapper{background:hsl(var(--bg-surface));flex-direction:column;flex:1;width:100%;display:flex;position:relative}.editor-tabs-bar{background:#080a14f2;border-bottom:1px solid #ffffff0d;flex-shrink:0;height:36px;display:flex;overflow-x:auto}.editor-tabs-bar::-webkit-scrollbar{display:none}.editor-tabs-bar{-ms-overflow-style:none;scrollbar-width:none}.editor-tab{height:100%;color:hsl(var(--text-muted));cursor:pointer;-webkit-user-select:none;user-select:none;background:#0c0e1c66;border-right:1px solid #ffffff0a;align-items:center;gap:8px;padding:0 16px;font-size:.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.editor-tab:hover{color:hsl(var(--text-secondary));background:#ffffff05}.editor-tab.active{background:hsl(var(--bg-surface));color:hsl(var(--text-primary));font-weight:500}.editor-tab.active:after{content:"";background:hsl(var(--accent-violet));width:100%;height:2px;box-shadow:0 0 8px hsl(var(--accent-violet));position:absolute;bottom:0;left:0}.tab-name{white-space:nowrap}.tab-close-btn{width:16px;height:16px;color:hsl(var(--text-muted));cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:4px;transition:all .15s;display:flex}.tab-close-btn:hover{color:hsl(var(--text-primary));background:#ffffff1a}.empty-editor-placeholder{text-align:center;background:hsl(var(--bg-surface));border-bottom:1px solid #ffffff0d;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.empty-editor-placeholder .placeholder-icon{color:hsl(var(--accent-violet));opacity:.25;margin-bottom:20px;animation:3s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{opacity:.25;filter:drop-shadow(0 0 #0000);transform:scale(1)}50%{opacity:.4;filter:drop-shadow(0 0 8px hsl(var(--accent-violet)));transform:scale(1.05)}}.empty-editor-placeholder h3{color:hsl(var(--text-primary));letter-spacing:.5px;margin-bottom:8px;font-size:1.25rem;font-weight:600}.empty-editor-placeholder p{color:hsl(var(--text-muted));max-width:320px;margin-bottom:24px;font-size:.85rem;line-height:1.5}.placeholder-actions .btn{border-radius:6px;padding:8px 18px;font-size:.8rem;font-weight:500;transition:all .2s;box-shadow:0 0 12px #8b5cf640}.placeholder-actions .btn:hover{box-shadow:0 0 20px #8b5cf673}.console-panel{background:#080a12f2;border-top:1px solid #ffffff14;grid-template-rows:35px 1fr;display:grid;overflow:hidden}.console-header{letter-spacing:.5px;color:#cbd5e1;background:#0a0c16bf;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:0 16px;font-size:.75rem;font-weight:600;display:flex}.console-action-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:3px 6px;font-size:.72rem;font-weight:500;transition:all .15s;display:flex}.console-action-btn:hover{color:#fff;background:#ffffff1a}.console-body{font-family:var(--font-mono);color:hsl(var(--text-secondary));padding:12px 16px;font-size:.75rem;line-height:1.5;overflow-y:auto}.console-line{white-space:pre-wrap;margin-bottom:4px}.console-line.error{color:hsl(var(--accent-error))}.console-line.success{color:hsl(var(--accent-success))}.console-line.info{color:hsl(var(--accent-cyan))}.console-line.warning{color:hsl(var(--accent-warning))}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;font-weight:600;transition:all .25s;display:inline-flex}.btn-primary{background:linear-gradient(135deg, hsl(var(--accent-indigo)), hsl(var(--accent-violet)));color:#fff;border:none}.btn-primary:hover{box-shadow:var(--glow-violet);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:hsl(var(--text-primary));background:#ffffff0a;border:1px solid #ffffff14}.btn-secondary:hover{background:#ffffff14;border-color:#ffffff26}.btn-danger{color:hsl(var(--accent-error));background:#ef444426;border:1px solid #ef44444d}.btn-danger:hover{box-shadow:var(--glow-error);background:#ef444440;border-color:#ef444480}.panel-title{color:hsl(var(--text-primary));border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:4px;font-size:.95rem;font-weight:700;display:flex}.input-group{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.input-label{color:hsl(var(--text-secondary));font-size:.75rem;font-weight:600}.form-control{color:hsl(var(--text-primary));font-family:var(--font-sans);background:#ffffff08;border:1px solid #ffffff14;border-radius:6px;outline:none;padding:8px 12px;font-size:.8rem;transition:all .2s}.form-control:focus{border-color:hsl(var(--accent-violet));background:#ffffff0f;box-shadow:0 0 8px #b447eb26}.form-control-mono{font-family:var(--font-mono);font-size:.75rem}.file-item{color:hsl(var(--text-secondary));cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;padding:6px 8px;font-size:.8rem;transition:all .15s;display:flex}.file-item:hover{color:hsl(var(--text-primary));background:#ffffff08}.file-item.active{color:hsl(var(--text-primary));background:#8b5cf614;font-weight:500}.file-actions{gap:4px;display:none}.file-item:hover .file-actions{display:flex}.file-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:3px;font-size:.8rem;transition:all .15s}.file-btn:hover{color:#fff;background:#ffffff1f}.status-badge{border-radius:12px;align-items:center;gap:6px;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.status-badge.connected{color:hsl(var(--accent-success));background:#10b98126}.status-badge.disconnected{color:hsl(var(--accent-error));background:#ef444426}.status-indicator{border-radius:50%;width:8px;height:8px}.status-badge.connected .status-indicator{background:hsl(var(--accent-success));box-shadow:var(--glow-success)}.status-badge.disconnected .status-indicator{background:hsl(var(--accent-error));box-shadow:var(--glow-error)}.method-card{background:#ffffff05;border:1px solid #ffffff0d;border-radius:8px;margin-bottom:12px;padding:12px}.method-name{font-family:var(--font-mono);color:hsl(var(--accent-cyan));margin-bottom:10px;font-size:.85rem;font-weight:600}.footer-status{color:hsl(var(--text-muted));background:#080a12cc;border-top:1px solid #ffffff0f;align-items:center;gap:16px;padding:0 20px;font-size:.75rem;display:flex}.spinner{border:2px solid #ffffff1a;border-left-color:hsl(var(--accent-violet));border-radius:50%;width:14px;height:14px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.custom-context-menu{-webkit-backdrop-filter:blur(12px);background:#0c0a1cd9;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;gap:2px;min-width:130px;padding:4px;display:flex;box-shadow:0 10px 30px #00000080,0 0 15px #8b5cf61a}.context-menu-item{color:hsl(var(--text-secondary));text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.context-menu-item:hover:not(:disabled){color:hsl(var(--text-primary));background:#ffffff0f}.context-menu-item.delete:hover:not(:disabled){color:hsl(var(--accent-error));background:#ef444426}.context-menu-item:disabled{opacity:.35;cursor:not-allowed}.inline-edit-input{border:1px solid hsl(var(--accent-indigo));color:hsl(var(--text-primary));background:#0000004d;border-radius:4px;outline:none;width:100%;padding:2px 6px;font-family:inherit;font-size:.8rem}.project-selector-container{background:#0a0c1666;border-bottom:1px solid #ffffff0d;padding:8px 12px;position:relative}.project-selector-bar{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-dropdown-btn{color:hsl(var(--text-primary));cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:6px;flex:1;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex;overflow:hidden}.project-dropdown-btn:hover{background:#ffffff0f;border-color:#ffffff26}.project-name-text{white-space:nowrap;text-overflow:ellipsis;max-width:170px;overflow:hidden}.project-actions-group{align-items:center;gap:4px;display:flex}.project-action-icon-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:5px;transition:all .15s;display:flex}.project-action-icon-btn:hover:not(:disabled){color:#fff;background:#ffffff1f;border-color:#ffffff26}.project-action-icon-btn.disabled,.project-action-icon-btn:disabled{opacity:.3;cursor:not-allowed}.dropdown-overlay{z-index:99;position:fixed;inset:0}.project-dropdown-menu{z-index:100;background:#0d101d;border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;animation:.15s ease-out fadeIn;display:flex;position:absolute;top:calc(100% + 4px);left:12px;right:12px;overflow:hidden;box-shadow:0 10px 25px #00000080}.dropdown-header{color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #ffffff0d;padding:8px 12px;font-size:.7rem;font-weight:700}.dropdown-list{max-height:180px;padding:4px;overflow-y:auto}.dropdown-item{color:hsl(var(--text-secondary));cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.8rem;transition:all .15s;display:flex}.dropdown-item:hover{color:hsl(var(--text-primary));background:#ffffff0d}.dropdown-item.active{color:hsl(var(--text-primary));background:#8b5cf61f;font-weight:600}.dropdown-item-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.dropdown-footer{color:hsl(var(--accent-violet));cursor:pointer;background:#8b5cf60d;border-top:1px solid #ffffff0d;align-items:center;gap:8px;padding:10px 12px;font-size:.75rem;font-weight:600;transition:background .15s;display:flex}.dropdown-footer:hover{background:#8b5cf626}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background:#000000a6;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:#0f1322;border:1px solid #ffffff1f;border-radius:12px;width:100%;max-width:420px;overflow:hidden;box-shadow:0 20px 40px #0009}.modal-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-header h3{color:hsl(var(--text-primary));margin:0;font-size:.95rem;font-weight:600}.modal-close-btn{color:hsl(var(--text-muted));cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex}.modal-close-btn:hover{color:hsl(var(--text-primary))}.modal-body{padding:18px}.modal-input{width:100%;color:hsl(var(--text-primary));background:#0006;border:1px solid #ffffff1a;border-radius:6px;outline:none;padding:8px 12px;font-size:.85rem;transition:border-color .2s}.modal-input:focus{border-color:hsl(var(--accent-violet))}.modal-footer{justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;display:flex}.btn-danger{background:hsl(var(--accent-danger,0 84% 60%));color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 14px;font-size:.8rem;font-weight:600;transition:opacity .2s}.btn-danger:hover{opacity:.9}.wallet-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#04050bd9;justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) fadeInModal;display:flex;position:fixed;inset:0}.wallet-modal-content{background:#0d0f1c;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;width:90%;max-width:480px;animation:.25s cubic-bezier(.16,1,.3,1) slideUpModal;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000080,0 0 0 1px #ffffff0d}.wallet-modal-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.wallet-modal-title{color:#fff;letter-spacing:-.01em;font-size:1rem;font-weight:700}.wallet-modal-close-btn{color:hsl(var(--text-muted));cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.wallet-modal-close-btn:hover{color:#fff;background:#ffffff0d}.wallet-modal-body{flex-direction:column;gap:16px;max-height:420px;padding:20px;display:flex;overflow-y:auto}.wallet-modal-section-title{color:#fff;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.8rem;font-weight:700}.wallet-modal-section-text{color:hsl(var(--text-secondary));font-size:.78rem;line-height:1.5}.wallet-modal-footer{background:#ffffff03;border-top:1px solid #ffffff0f;justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes slideUpModal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
