.editor-dashboard{max-width:720px;padding:var(--space-3xl) var(--space-lg) var(--space-2xl);margin:0 auto}.editor-dashboard-header{text-align:center;margin-bottom:var(--space-2xl)}.editor-dashboard-header h1{letter-spacing:-.03em;background:var(--accent-gradient);-webkit-text-fill-color:transparent;margin-bottom:var(--space-sm);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.editor-dashboard-header p{color:var(--text-secondary);font-size:.95rem}.editor-dashboard-message{color:var(--text-secondary);margin-top:var(--space-xl);text-align:center;font-size:.95rem}.editor-dashboard-create{gap:var(--space-sm);margin-bottom:var(--space-2xl);justify-content:center;display:flex}.editor-dashboard-input{background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-family:var(--font-family);width:260px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;font-size:.875rem}.editor-dashboard-input::placeholder{color:var(--text-muted)}.editor-dashboard-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.editor-dashboard-create-btn{background:var(--accent-gradient);color:var(--text-on-accent);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-family);transition:all var(--transition-base);white-space:nowrap;border:none;font-size:.875rem;font-weight:600}.editor-dashboard-create-btn:hover:not(:disabled){background:var(--accent-gradient-hover);transform:translateY(-1px);box-shadow:0 4px 16px #6366f14d}.editor-dashboard-create-btn:disabled{opacity:.4;cursor:not-allowed}.editor-dashboard-subtitle{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-md);font-size:.75rem;font-weight:600}.editor-project-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.editor-project-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);cursor:pointer;transition:all var(--transition-slow);gap:var(--space-xs);flex-direction:column;display:flex}.editor-project-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lg), var(--shadow-glow);transform:translateY(-3px)}.editor-project-name{color:var(--text-primary);font-size:1rem;font-weight:700}.editor-project-path{color:var(--text-tertiary);font-size:.75rem;font-family:var(--font-mono)}.editor-dashboard-empty{text-align:center;padding:var(--space-2xl);color:var(--text-tertiary);font-size:.875rem}.editor-dashboard-loading{text-align:center;padding:var(--space-3xl);color:var(--text-tertiary);font-size:.95rem}.editor-page-wrapper{flex-direction:column;height:100dvh;display:flex}.editor-page-wrapper .page-header{flex-shrink:0;position:relative}.editor-shell{background:var(--bg-base);flex-direction:column;flex:1;min-height:0;display:flex}.editor-header{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(12px);align-items:center;gap:var(--space-md);background:#0c0c18b3;flex-shrink:0;display:flex}.editor-back-btn{border:1px solid var(--border-default);color:var(--text-secondary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-family);transition:all var(--transition-fast);background:0 0;align-items:center;gap:4px;font-size:.8rem;font-weight:500;display:inline-flex}.editor-back-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:#ffffff0a}.editor-header-title{letter-spacing:-.01em;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1rem;font-weight:700}.editor-docs-link{color:var(--text-secondary);padding:2px var(--space-sm);border-radius:var(--radius-sm);margin-right:var(--space-sm);font-size:.8rem;font-weight:600;text-decoration:none}.editor-docs-link:hover{color:var(--accent-primary)}.editor-status-badge{padding:2px var(--space-sm);border-radius:var(--radius-sm);text-transform:capitalize;letter-spacing:.02em;font-size:.7rem;font-weight:600}.editor-status-connected{color:var(--color-success);background:#34d3991f}.editor-status-connecting{color:var(--color-warning);background:#fbbf241f}.editor-status-disconnected{color:var(--color-danger);background:#f871711f}.editor-main{flex:1;min-height:0;padding:0;overflow:auto}.editor-empty-state{height:100%;color:var(--text-tertiary);padding:var(--space-2xl);justify-content:center;align-items:center;font-size:.875rem;display:flex}.editor-layout{flex:1;min-height:0;display:flex;overflow:hidden}.editor-panel{flex-shrink:0;position:relative;overflow:auto}.editor-panel-center{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.editor-resize-handle{cursor:col-resize;background:var(--border-subtle);width:4px;transition:background var(--transition-fast);flex-shrink:0}.editor-resize-handle:hover{background:var(--accent-primary)}.editor-panel-collapse-btn{top:var(--space-sm);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);z-index:2;padding:2px 6px;font-size:.6rem;position:absolute}.editor-panel-collapse-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-hover)}.editor-panel-collapse-left{right:var(--space-sm)}.editor-panel-collapse-right{left:var(--space-sm)}.editor-panel-expand-btn{padding:var(--space-sm) 4px;background:var(--bg-surface);color:var(--text-tertiary);cursor:pointer;writing-mode:vertical-rl;text-orientation:mixed;transition:all var(--transition-fast);letter-spacing:.05em;border:none;font-size:.6rem;font-weight:600}.editor-panel-expand-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.editor-panel-expand-left{border-right:1px solid var(--border-subtle)}.editor-panel-expand-right{border-left:1px solid var(--border-subtle)}.file-tree{border-right:1px solid var(--border-subtle);background:var(--bg-surface);flex-direction:column;min-width:0;height:100%;display:flex}.file-tree-header{padding:var(--space-sm);border-bottom:1px solid var(--border-subtle);gap:var(--space-xs);align-items:center;display:flex}.file-tree-new-btn{padding:var(--space-xs) var(--space-sm);background:var(--accent-gradient);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-family);transition:all var(--transition-base);border:none}.file-tree-new-btn:hover{background:var(--accent-gradient-hover);box-shadow:0 2px 8px #6366f140}.file-tree-new-form{padding:var(--space-sm);gap:var(--space-xs);border-bottom:1px solid var(--border-subtle);display:flex}.file-tree-input{padding:var(--space-xs) var(--space-sm);background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--radius-sm);font-size:.75rem;font-family:var(--font-mono);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1}.file-tree-input::placeholder{color:var(--text-muted);font-family:var(--font-family)}.file-tree-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.file-tree-add-btn{padding:var(--space-xs) var(--space-sm);background:var(--accent-gradient);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-family);transition:all var(--transition-base);border:none}.file-tree-content{padding:var(--space-xs);flex:1;overflow:auto}.file-tree-empty{padding:var(--space-sm);color:var(--text-muted);font-size:.75rem}.file-tree-node{padding:3px var(--space-sm);cursor:pointer;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:.8rem;display:flex}.file-tree-node:hover{color:var(--text-primary);background:#ffffff0a}.file-tree-node-active{color:var(--text-primary);background:#6366f11f}.file-tree-node-active:hover{background:#6366f12e}.file-tree-node-folder{color:var(--text-tertiary);font-weight:500}.file-tree-chevron{width:14px;color:var(--text-muted);text-align:center;font-size:.55rem;display:inline-block}.file-tree-icon{flex-shrink:0;font-size:.85rem}.file-tree-collab-dot{color:var(--color-success);font-size:.55rem}.file-tree-context-menu{z-index:1000;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-xs) 0;min-width:140px;position:fixed}.file-tree-menu-item{width:100%;padding:6px var(--space-md);text-align:left;cursor:pointer;font-size:.8rem;font-family:var(--font-family);color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;display:block}.file-tree-menu-item:hover{color:var(--text-primary);background:#ffffff0f}.file-tree-menu-item-danger{color:var(--color-danger)}.file-tree-menu-item-danger:hover{color:var(--color-danger);background:#f871711a}.editor-tab-bar{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);padding:0 var(--space-sm);flex-shrink:0;align-items:center;gap:0;min-height:36px;display:flex}.editor-tab{padding:var(--space-sm) var(--space-md);cursor:pointer;transition:all var(--transition-fast);border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;display:flex}.editor-tab:hover{background:#ffffff08}.editor-tab-active{border-bottom-color:var(--accent-primary);background:#6366f10f}.editor-tab-name{color:var(--text-tertiary);font-size:.8rem;font-weight:500}.editor-tab-active .editor-tab-name{color:var(--text-primary)}.editor-tab-close{border-radius:var(--radius-sm);cursor:pointer;width:18px;height:18px;color:var(--text-muted);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex}.editor-tab-close:hover{color:var(--text-primary);background:#ffffff14}.editor-tab-presence{gap:2px;display:flex}.editor-tab-dot{border-radius:50%;width:6px;height:6px}.diagnostics-panel{background:var(--bg-surface);flex:1;overflow:auto}.diagnostics-header{padding:var(--space-sm) var(--space-md);color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.diagnostics-empty{padding:var(--space-lg);color:var(--text-muted);text-align:center;font-size:.75rem}.diagnostics-content{padding:var(--space-sm)}.diagnostics-file-group{margin-bottom:var(--space-md)}.diagnostics-file-name{color:var(--text-tertiary);margin-bottom:var(--space-xs);font-size:.7rem;font-family:var(--font-mono)}.diagnostics-item{padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.75rem}.diagnostics-item:hover{filter:brightness(1.2)}.diagnostics-error{color:var(--color-danger);background:#f871711a}.diagnostics-warning{color:var(--color-warning);background:#fbbf241a}.diagnostics-info{color:var(--color-info);background:#60a5fa1a}.diagnostics-code{font-weight:700}.diagnostics-line{opacity:.7}.preview-panel{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.preview-header{padding:var(--space-sm) var(--space-md);color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);align-items:center;gap:var(--space-sm);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600;display:flex}.preview-auto-label{align-items:center;gap:var(--space-xs);color:var(--text-tertiary);text-transform:none;letter-spacing:normal;cursor:pointer;font-size:.7rem;font-weight:500;display:flex}.preview-auto-label input[type=checkbox]{accent-color:var(--accent-primary)}.preview-reset-btn{padding:2px var(--space-sm);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;font-size:.65rem;font-weight:600;font-family:var(--font-family);text-transform:none;letter-spacing:normal;transition:all var(--transition-fast);background:0 0}.preview-reset-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:#ffffff0a}.preview-placeholder{padding:var(--space-lg);color:var(--text-muted);font-size:.8rem}.preview-content{padding:var(--space-md)}.collab-avatars{align-items:center;gap:var(--space-xs);margin-left:auto;display:flex}.collab-count{color:var(--text-tertiary);margin-right:var(--space-xs);font-size:.7rem}.collab-avatar{color:#fff;border:2px solid var(--bg-base);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:-4px;font-size:.65rem;font-weight:700;display:flex}.collab-avatar:first-of-type{margin-left:0}.code-editor-wrap{flex:1;min-height:0;overflow:hidden}.code-editor-wrap .cm-editor{background:var(--bg-base);height:100%;color:var(--text-primary)}.code-editor-wrap .cm-editor.cm-focused{outline:none}.code-editor-wrap .cm-gutters{background:var(--bg-surface);color:var(--text-muted);border-right:1px solid var(--border-subtle)}.code-editor-wrap .cm-activeLineGutter{background:#6366f114}.code-editor-wrap .cm-activeLine{background:#ffffff08}.code-editor-wrap .cm-selectionBackground{background:#6366f140!important}.code-editor-wrap .cm-cursor{border-left-color:var(--accent-primary-hover)}.code-editor-wrap .cm-matchingBracket{background:#6366f133;outline:1px solid #6366f166}.code-editor-wrap .cm-tooltip{background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-primary)}.code-editor-wrap .cm-tooltip-lint{background:var(--bg-elevated)}.code-editor-wrap .cm-panel{background:var(--bg-surface);border-top:1px solid var(--border-subtle)}.code-editor-wrap .cm-scroller{font-family:var(--font-mono);font-size:13px;line-height:1.6}.editor-right-panel{background:var(--bg-surface);flex-direction:column;height:100%;display:flex}
