.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;height:100vh;transition:width .2s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar.expanded{width:var(--sidebar-width-expanded)}.sidebar-toggle{cursor:pointer;color:var(--text-primary);white-space:nowrap;letter-spacing:-.02em;background:0 0;border:none;align-items:center;gap:12px;padding:20px 16px;font-size:1rem;font-weight:600;display:flex}.sidebar-toggle:hover{color:var(--accent)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex}.sidebar-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);white-space:nowrap;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:.875rem;text-decoration:none;transition:all .15s;display:flex}.sidebar-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--accent-subtle);color:var(--accent)}.sidebar-icon{text-align:center;min-width:24px;font-size:1.15rem}.sidebar-footer{border-top:1px solid var(--border-color);padding:12px 8px}.main-content{min-height:100vh;padding:24px 28px;transition:margin-left .2s cubic-bezier(.4,0,.2,1)}.main-content.sidebar-collapsed{margin-left:var(--sidebar-width-collapsed)}.main-content.sidebar-expanded{margin-left:var(--sidebar-width-expanded)}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:24px;display:grid}.dashboard-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:12px;padding:20px}.dashboard-section h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:.75rem;font-weight:500}.quick-action-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:8px;margin-right:8px;padding:8px 16px;font-size:.85rem;transition:all .15s}.quick-action-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.connection-banner{background:var(--danger-subtle);color:var(--danger);border-radius:var(--radius-md);text-align:center;border:1px solid #ef444433;margin-bottom:16px;padding:10px 16px;font-size:.875rem}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;transition:border-color .2s;position:relative}.metric-card:hover{border-color:#2a2a2a}.metric-card.warning{border-color:#f59e0b66}.metric-card.danger{border-color:#ef444466}.metric-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.metric-card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:500}.metric-help-btn{color:#555;cursor:pointer;background:0 0;border:1px solid #333;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:.6rem;line-height:1;transition:all .15s;display:flex}.metric-help-btn:hover{color:#fff;background:#333;border-color:#555}.metric-value{letter-spacing:-.02em;margin-bottom:4px;font-size:2rem;font-weight:700;line-height:1}.metric-unit{color:var(--text-secondary);margin-left:2px;font-size:.8rem;font-weight:400}.metric-warning-msg{border-radius:var(--radius-sm);margin-top:8px;padding:4px 8px;font-size:.7rem;font-weight:500}.metric-warning-msg.warning{background:var(--warning-subtle);color:var(--warning)}.metric-warning-msg.danger{background:var(--danger-subtle);color:var(--danger)}.metric-help-tooltip{border-radius:var(--radius-md);color:var(--text-secondary);z-index:10;background:#1a1a1a;border:1px solid #2a2a2a;max-width:220px;padding:10px 12px;font-size:.8rem;line-height:1.4;position:absolute;top:3.5rem;right:12px;box-shadow:0 8px 24px #0009}.services-summary-grid{flex-wrap:wrap;gap:6px;display:flex}.service-dot{color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;display:flex}.service-dot-indicator{border-radius:50%;flex-shrink:0;width:7px;height:7px}.service-dot-indicator.running{background:var(--success);box-shadow:0 0 6px #22c55e80}.service-dot-indicator.stopped{background:var(--danger)}.service-dot-indicator.unknown{background:var(--text-secondary)}.logs-list{margin:0;padding:0;font-family:SF Mono,Menlo,Monaco,Courier New,monospace;font-size:.78rem;list-style:none}.logs-list li{color:var(--text-secondary);word-break:break-all;white-space:pre-wrap;border-bottom:1px solid #ffffff08;padding:4px 0;line-height:1.5}.logs-list li:last-child{border-bottom:none}.ram-detail-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:90%;min-width:500px;max-width:700px;max-height:80vh;padding:24px;overflow-y:auto;box-shadow:0 16px 48px #000c}.ram-modal-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ram-modal-header h3{color:var(--text-primary);font-size:1rem;font-weight:600}.ram-modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.5rem;line-height:1}.ram-modal-close:hover{color:var(--text-primary)}.ram-table{border-collapse:collapse;width:100%;font-size:.82rem}.ram-table thead th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:.7rem;font-weight:500}.ram-table tbody tr{border-bottom:1px solid #ffffff08}.ram-table tbody tr:hover{background:var(--bg-hover)}.ram-table td{color:var(--text-primary);padding:6px 12px}.proc-name{font-weight:500}.proc-pid{color:var(--text-secondary);font-family:monospace;font-size:.78rem}.proc-mem{color:var(--accent);font-weight:500}.proc-pct{color:var(--warning)}.proc-cpu{color:var(--text-secondary)}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.terminal-container{flex-direction:column;height:calc(100vh - 100px);display:flex}.terminal-tabs{background:var(--bg-secondary);border-radius:var(--radius-md) var(--radius-md) 0 0;border:1px solid var(--border-color);border-bottom:none;gap:2px;padding:4px 4px 0;display:flex}.terminal-tab{background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;border:none;align-items:center;gap:8px;padding:8px 16px;font-size:.82rem;transition:all .15s;display:flex}.terminal-tab.active{color:var(--text-primary);background:#000}.terminal-tab:hover:not(.active){background:var(--bg-hover)}.terminal-tab-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:.7rem}.terminal-tab-close:hover{background:var(--danger);color:#fff}.terminal-add-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:8px 12px;font-size:1rem}.terminal-add-btn:hover{color:var(--accent)}.terminal-viewport{border-radius:0 0 var(--radius-md) var(--radius-md);border:1px solid var(--border-color);background:#000;border-top:none;flex:1;overflow:hidden}.services-page{flex-direction:column;gap:12px;display:flex}.services-toolbar{align-items:center;gap:8px;margin-bottom:4px;display:flex}.services-search{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);max-width:360px;color:var(--text-primary);outline:none;flex:1;padding:8px 12px;font-size:.875rem;transition:border-color .15s}.services-search:focus{border-color:var(--accent)}.services-tabs{gap:4px;margin-bottom:8px;display:flex}.services-tab{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;padding:6px 14px;font-size:.8rem;font-weight:500;transition:all .15s}.services-tab:hover{color:var(--text-primary);border-color:#333}.services-tab.active{background:var(--accent-subtle);color:var(--accent);border-color:#3b82f64d}.services-error{background:var(--danger-subtle);border-radius:var(--radius-md);color:#f87171;border:1px solid #ef444433;padding:12px 16px;font-size:.875rem}.services-empty{color:var(--text-secondary);padding:16px 0;font-size:.875rem}.services-list{flex-direction:column;gap:6px;display:flex}.service-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;transition:border-color .15s;display:flex}.service-row:hover{border-color:#2a2a2a}.service-info{flex:1;align-items:center;gap:10px;min-width:200px;display:flex}.service-names{flex-direction:column;display:flex}.service-name{color:var(--text-primary);font-size:.875rem;font-weight:600}.service-desc{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:320px;margin-top:2px;font-size:.75rem;overflow:hidden}.service-meta{align-items:center;gap:6px;display:flex}.service-badge{text-transform:lowercase;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:600}.badge-active{background:var(--success-subtle);color:#4ade80;border:1px solid #22c55e33}.badge-inactive{color:#64748b;background:#94a3b814;border:1px solid #94a3b826}.badge-failed{background:var(--danger-subtle);color:#f87171;border:1px solid #ef444433}.badge-sub{background:var(--accent-subtle);color:var(--accent);border:1px solid #3b82f633}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-green{background:var(--success);box-shadow:0 0 6px #22c55e80}.dot-yellow{background:var(--warning);box-shadow:0 0 6px #f59e0b66}.dot-red{background:var(--danger);box-shadow:0 0 6px #ef444480}.service-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.svc-btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:5px 10px;font-size:.78rem;font-weight:500;transition:all .15s}.svc-btn:disabled{opacity:.4;cursor:not-allowed}.btn-restart{background:var(--accent-subtle);color:var(--accent);border-color:#3b82f633}.btn-restart:not(:disabled):hover{background:#3b82f633}.btn-stop{background:var(--danger-subtle);color:#f87171;border-color:#ef444433}.btn-stop:not(:disabled):hover{background:#ef444433}.btn-start{background:var(--success-subtle);color:#4ade80;border-color:#22c55e33}.btn-start:not(:disabled):hover{background:#22c55e33}.btn-enable{background:var(--success-subtle);color:#86efac;border-color:#22c55e26}.btn-enable:not(:disabled):hover{background:#22c55e26}.btn-disable{background:var(--warning-subtle);color:#fbbf24;border-color:#f59e0b26}.btn-disable:not(:disabled):hover{background:#f59e0b33}.btn-refresh{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-color)}.btn-refresh:not(:disabled):hover{color:var(--text-primary);border-color:#333}.btn-logs{color:#94a3b8;background:#94a3b814;border-color:#94a3b826}.btn-logs:not(:disabled):hover{color:var(--text-primary);background:#94a3b826}.svc-feedback{border-radius:var(--radius-sm);text-overflow:ellipsis;white-space:nowrap;max-width:240px;padding:2px 8px;font-size:.75rem;overflow:hidden}.svc-feedback.ok{color:#4ade80;background:var(--success-subtle)}.svc-feedback.err{color:#f87171;background:var(--danger-subtle)}.logs-page{flex-direction:column;gap:8px;height:calc(100vh - 120px);display:flex}.logs-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.logs-source-select{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;outline:none;min-width:160px;padding:7px 12px;font-size:.85rem}.logs-source-select:focus{border-color:var(--accent)}.logs-search{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary);max-width:300px;color:var(--text-primary);outline:none;flex:1;padding:7px 12px;font-size:.85rem}.logs-search:focus{border-color:var(--accent)}.logs-btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:6px 12px;font-size:.8rem;font-weight:500;transition:all .15s}.btn-stream{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-color)}.btn-stream.active{background:var(--accent-subtle);color:var(--accent);border-color:#3b82f64d}.btn-stream:hover{opacity:.85}.logs-conn{border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:500}.conn-ok{background:var(--success-subtle);color:#4ade80;border:1px solid #22c55e33}.conn-lost{background:var(--danger-subtle);color:#f87171;border:1px solid #ef444433}.logs-error{background:var(--danger-subtle);border-radius:var(--radius-md);color:#f87171;border:1px solid #ef444433;padding:10px 14px;font-size:.85rem}.logs-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);flex:1;padding:12px 16px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.6;overflow-y:auto}.log-line{white-space:pre-wrap;word-break:break-all;padding:1px 0}.log-line:hover{background:var(--bg-hover)}.logs-loading,.logs-empty{color:var(--text-secondary);padding:8px 0;font-size:.85rem;font-style:italic}.logs-footer{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.logs-limit-warn{color:var(--warning)}.settings-page{flex-direction:column;gap:16px;max-width:520px;display:flex}.settings-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px 24px}.settings-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0 0 16px;font-size:.75rem;font-weight:500}.settings-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-row-info{flex-direction:column;gap:2px;display:flex}.settings-label{color:var(--text-primary);font-size:.9rem;font-weight:600}.settings-hint{color:var(--text-secondary);font-size:.75rem}.theme-toggle-btn{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;padding:6px 14px;font-size:.85rem;font-weight:500;transition:all .15s;display:flex}.theme-toggle-btn:hover{border-color:var(--accent);background:var(--accent-subtle)}.theme-icon{font-size:1rem}.settings-form{flex-direction:column;gap:12px;display:flex}.form-group{flex-direction:column;gap:4px;display:flex}.form-label{color:var(--text-secondary);font-size:.8rem;font-weight:500}.form-input{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);outline:none;padding:8px 12px;font-size:.875rem;transition:border-color .15s}.form-input:focus{border-color:var(--accent)}.form-input:disabled{opacity:.4;cursor:not-allowed}.settings-validation-error{color:#f87171;background:var(--danger-subtle);border-radius:var(--radius-sm);border:1px solid #ef444433;padding:6px 10px;font-size:.82rem}.settings-feedback{border-radius:var(--radius-sm);border:1px solid #0000;padding:6px 10px;font-size:.85rem}.settings-feedback.ok{background:var(--success-subtle);color:#4ade80;border-color:#22c55e33}.settings-feedback.err{background:var(--danger-subtle);color:#f87171;border-color:#ef444433}.settings-submit-btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;align-self:flex-start;padding:8px 20px;font-size:.875rem;font-weight:600;transition:opacity .15s}.settings-submit-btn:hover:not(:disabled){opacity:.85}.settings-submit-btn:disabled{opacity:.4;cursor:not-allowed}.file-explorer{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;height:calc(100vh - 120px);display:flex;overflow:hidden}.fe-toolbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:10px 14px;display:flex}.fe-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;padding:5px 12px;font-size:.8rem;transition:all .15s}.fe-btn:hover:not(:disabled){background:var(--bg-hover);border-color:#333}.fe-btn:disabled{opacity:.4;cursor:not-allowed}.fe-btn-danger{color:var(--danger);border-color:#ef44444d}.fe-btn-danger:hover:not(:disabled){background:var(--danger-subtle);border-color:var(--danger)}.fe-breadcrumb{background:var(--bg-primary);border-bottom:1px solid var(--border-color);white-space:nowrap;scrollbar-width:thin;flex-shrink:0;align-items:center;gap:2px;padding:8px 14px;font-size:.8rem;display:flex;overflow-x:auto}.fe-breadcrumb-part{color:var(--accent);cursor:pointer;border-radius:3px;padding:2px 4px;transition:background .1s}.fe-breadcrumb-part:hover{background:var(--bg-hover)}.fe-breadcrumb-part.active{color:var(--text-primary);cursor:default}.fe-breadcrumb-sep{color:#333;margin:0 2px}.fe-warning-banner{background:var(--warning-subtle);color:var(--warning);border-bottom:1px solid #f59e0b33;flex-shrink:0;padding:8px 14px;font-size:.78rem}.fe-file-list{scrollbar-width:thin;flex:1;overflow-y:auto}.fe-file-list::-webkit-scrollbar{width:6px}.fe-file-list::-webkit-scrollbar-track{background:0 0}.fe-file-list::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}.fe-file-list table{border-collapse:collapse;width:100%}.fe-file-list thead th{background:var(--bg-secondary);text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);z-index:1;padding:8px 14px;font-size:.7rem;font-weight:500;position:sticky;top:0}.fe-file-row{cursor:pointer;transition:background .1s}.fe-file-row:hover{background:var(--bg-hover)}.fe-file-row td{color:var(--text-primary);vertical-align:middle;border-bottom:1px solid #ffffff05;padding:7px 14px;font-size:.84rem}.fe-file-row.warning-zone td:first-child{position:relative}.fe-file-row.warning-zone td:first-child:after{content:"";background:var(--warning);width:2px;position:absolute;top:0;bottom:0;left:0}.fe-file-name{align-items:center;gap:8px;display:flex}.fe-file-icon{text-align:center;flex-shrink:0;width:20px;font-size:1rem}.fe-file-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fe-file-name-text.is-dir{color:var(--accent);font-weight:500}.fe-file-name-text.is-symlink{color:#a6e3a1;font-style:italic}.fe-perm{color:var(--text-secondary);font-family:SF Mono,monospace;font-size:.75rem}.fe-size{color:var(--text-secondary);white-space:nowrap;font-size:.78rem}.fe-date{color:var(--text-secondary);white-space:nowrap;font-size:.75rem}.fe-empty,.fe-loading{text-align:center;color:var(--text-secondary);padding:40px;font-size:.875rem}.fe-error{color:var(--danger);padding:16px;font-size:.875rem}.fe-modal-overlay{z-index:800;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fe-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:90%;min-width:320px;max-width:480px;padding:24px;box-shadow:0 16px 48px #000c}.fe-modal h3{color:var(--text-primary);margin:0 0 16px;font-size:1rem;font-weight:600}.fe-modal input{box-sizing:border-box;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);outline:none;margin-bottom:12px;padding:8px 12px;font-size:.875rem;transition:border-color .15s}.fe-modal input:focus{border-color:var(--accent)}.fe-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ai-chat-panel{z-index:200;background:#0a0a0a;border-left:1px solid #1e1e1e;flex-direction:column;width:380px;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #00000080}.ai-chat-header{border-bottom:1px solid #1e1e1e;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ai-chat-title{color:#f0f0f0;align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.ai-dot{background:#3b82f6;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #3b82f680}.ai-chat-close{color:#555;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.5rem;line-height:1}.ai-chat-close:hover{color:#f0f0f0}.ai-chat-messages{scrollbar-width:thin;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.ai-msg{display:flex}.ai-msg.user{justify-content:flex-end}.ai-msg.ai{justify-content:flex-start}.ai-msg-bubble{white-space:pre-wrap;word-wrap:break-word;border-radius:12px;max-width:85%;padding:10px 14px;font-size:.85rem;line-height:1.5}.ai-msg.user .ai-msg-bubble{color:#fff;background:#3b82f6;border-bottom-right-radius:4px}.ai-msg.ai .ai-msg-bubble{color:#d0d0d0;background:#141414;border:1px solid #1e1e1e;border-bottom-left-radius:4px}.ai-typing{align-items:center;gap:4px;padding:12px 18px;display:flex}.ai-typing span{background:#555;border-radius:50%;width:6px;height:6px;animation:1.2s infinite ai-bounce}.ai-typing span:nth-child(2){animation-delay:.15s}.ai-typing span:nth-child(3){animation-delay:.3s}@keyframes ai-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.ai-chat-input-area{border-top:1px solid #1e1e1e;flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.ai-chat-input-area input{color:#f0f0f0;background:#000;border:1px solid #1e1e1e;border-radius:10px;outline:none;flex:1;padding:10px 14px;font-size:.85rem;transition:border-color .15s}.ai-chat-input-area input:focus{border-color:#3b82f6}.ai-send-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;transition:opacity .15s;display:flex}.ai-send-btn:disabled{opacity:.3;cursor:not-allowed}.ai-send-btn:not(:disabled):hover{background:#2563eb}.ai-toggle-btn{color:#fff;cursor:pointer;z-index:150;background:#3b82f6;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.3rem;transition:transform .15s,background .15s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px #3b82f666}.ai-toggle-btn:hover{background:#2563eb;transform:scale(1.05)}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-tertiary:#141414;--bg-hover:#1a1a1a;--border-color:#1e1e1e;--text-primary:#f0f0f0;--text-secondary:#707070;--accent:#3b82f6;--accent-hover:#2563eb;--accent-subtle:#3b82f61a;--success:#22c55e;--success-subtle:#22c55e1a;--warning:#f59e0b;--warning-subtle:#f59e0b1a;--danger:#ef4444;--danger-subtle:#ef44441a;--sidebar-width-collapsed:64px;--sidebar-width-expanded:240px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a3a3a}::selection{color:#fff;background:#3b82f64d}
