*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;background:var(--bg);color:var(--text);font-family:var(--body)}body{min-height:100vh;background:var(--bg-elevated);overflow:hidden}button{cursor:pointer;border:none;background:none}button,input,select,textarea{font-family:inherit;color:inherit}a{color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;z-index:2}.auth-card{width:100%;max-width:420px;background:linear-gradient(180deg,var(--bg-elevated),var(--bg));border:1px solid var(--border);box-shadow:0 0 0 1px var(--border),0 30px 80px color-mix(in srgb,var(--shadow-color) 70%,transparent);padding:50px 50px 40px;position:relative}.auth-card:after,.auth-card:before{content:"";position:absolute;width:36px;height:36px;border:2px solid var(--accent)}.auth-card:before{top:10px;left:10px;border-right:0;border-bottom:0}.auth-card:after{bottom:10px;right:10px;border-left:0;border-top:0}.auth-card h1{font-family:var(--display);font-weight:700;font-size:32px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-strong);text-shadow:0 0 18px color-mix(in srgb,var(--accent) 35%,transparent);margin-bottom:24px}.auth-card label{display:block;margin-bottom:16px}.auth-card label span{display:block;font-family:var(--display);font-weight:600;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.auth-card input{width:100%;background:var(--bg-inset);border:1px solid var(--border);color:var(--text);padding:12px 14px;font-family:var(--mono);font-size:14px;letter-spacing:.05em;outline:none}.auth-card input:focus{border-color:var(--accent)}.auth-card .err{color:var(--danger);font-family:var(--body);font-style:italic;font-size:13px;margin:12px 0}.auth-card button{width:100%;background:linear-gradient(180deg,var(--bg-elevated),var(--bg));border:1px solid var(--accent);color:var(--accent-strong);padding:12px 18px;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;margin-top:8px;transition:box-shadow .25s ease}.auth-card button:hover:not(:disabled){box-shadow:0 0 18px color-mix(in srgb,var(--accent) 30%,transparent)}.auth-card button:disabled{opacity:.5;cursor:not-allowed}.pg-agent{font-size:.78em;width:16px;display:inline-block;text-align:center;margin-right:4px;font-family:monospace;cursor:help}.pg-agent.agent-ok{color:var(--success)}.pg-agent.agent-missing{color:var(--term-dim)}.pg-agent.agent-error{color:var(--danger-strong)}.pg-agent.agent-unknown{color:var(--term-dim);opacity:.5}.pg-action{background:color-mix(in srgb,var(--tint) 4%,transparent);border:1px solid color-mix(in srgb,var(--tint) 12%,transparent);color:inherit;font-size:.78em;padding:2px 8px;margin-left:4px;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit}.pg-action:hover{background:color-mix(in srgb,var(--tint) 8%,transparent)}.claude-sidebar .vps-card{margin:0 8px 14px;border:1px solid color-mix(in srgb,var(--tint) 6%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--shade) 15%,transparent);overflow:hidden}.claude-sidebar .vps-card.agent-missing{border-color:color-mix(in srgb,var(--warning) 35%,transparent)}.claude-sidebar .vps-card.agent-error{border-color:color-mix(in srgb,var(--danger-strong) 40%,transparent)}.claude-sidebar .vps-card .vps-head{padding:7px 11px 5px;border-bottom:0;gap:7px}.claude-sidebar .vps-card.collapsed .vps-head{border-bottom:0;padding-bottom:7px}.vps-agent-dot{display:inline-block;width:14px;text-align:center;font-family:monospace;font-size:11px;cursor:help;flex-shrink:0}.vps-agent-dot.agent-ok{color:var(--success)}.vps-agent-dot.agent-missing{color:var(--warning)}.vps-agent-dot.agent-error{color:var(--danger-strong)}.vps-agent-dot.agent-unknown{color:var(--term-dim)}.vps-agent-dot.outdated{color:var(--warning);animation:vps-agent-pulse 2s ease-in-out infinite}@keyframes vps-agent-pulse{0%,to{opacity:1}50%{opacity:.45}}.claude-sidebar .vps-meta{padding:0 11px 5px 30px;font-family:var(--mono,"JetBrains Mono",monospace);font-size:10px;line-height:1.4;color:color-mix(in srgb,var(--term-fg) 45%,transparent);display:flex;flex-wrap:wrap;gap:6px;text-transform:none;letter-spacing:0}.vps-host{color:color-mix(in srgb,var(--term-fg) 55%,transparent)}.vps-sep{opacity:.4}.vps-agent-text.agent-ok{color:var(--success)}.vps-agent-text.agent-missing{color:var(--warning);font-weight:500}.vps-agent-text.agent-error{color:var(--danger-strong);font-weight:500}.vps-agent-text.agent-unknown{color:color-mix(in srgb,var(--term-fg) 50%,transparent)}.claude-sidebar .vps-actions{padding:4px 11px 9px 30px;display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px dashed color-mix(in srgb,var(--tint) 7%,transparent)}.vps-act-btn{background:color-mix(in srgb,var(--tint) 4%,transparent);border:1px solid color-mix(in srgb,var(--tint) 14%,transparent);color:color-mix(in srgb,var(--term-fg) 75%,transparent);font-family:var(--display,inherit);font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:var(--radius-sm);cursor:pointer;line-height:1.2;white-space:nowrap;height:auto;width:auto}.vps-act-btn:hover{background:color-mix(in srgb,var(--tint) 8%,transparent);color:var(--text-strong);border-color:color-mix(in srgb,var(--tint) 30%,transparent)}.vps-act-btn.primary{background:color-mix(in srgb,var(--warning) 18%,transparent);border-color:color-mix(in srgb,var(--warning) 55%,transparent);color:var(--warning-soft)}.vps-act-btn.primary:hover{background:color-mix(in srgb,var(--warning) 28%,transparent);border-color:color-mix(in srgb,var(--warning) 80%,transparent)}.vps-act-btn.agent-update{background:color-mix(in srgb,var(--warning) 10%,transparent);border-color:color-mix(in srgb,var(--warning) 45%,transparent);color:var(--warning)}.vps-act-btn.agent-update:hover:not(:disabled){background:color-mix(in srgb,var(--warning) 20%,transparent);border-color:color-mix(in srgb,var(--warning) 70%,transparent);color:var(--warning-soft)}.vps-act-btn.agent-update:disabled{opacity:.6;cursor:progress}.vps-act-btn.icon-only{padding:3px 7px;font-size:12px;letter-spacing:0}.vps-act-btn .btn-emoji{display:inline-block;font-size:13px;line-height:1;vertical-align:-2px;margin-right:2px;letter-spacing:0;filter:saturate(.85)}.vps-act-btn .btn-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:-2px;margin-right:4px;letter-spacing:0}.vps-act-btn .btn-icon svg{width:12px;height:12px}.claude-sidebar .vps-section.vps-card{margin-bottom:14px}.claude-sidebar .vps-card .proj-block{margin:4px 0;padding-left:0;position:relative}.claude-sidebar .vps-card .proj-head{padding:4px 11px 4px 20px;font-size:11.5px}.claude-sidebar .vps-card .proj-block:before{content:"";position:absolute;left:17px;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--tint) 8%,transparent)}.claude-sidebar .vps-card .session-row{margin-left:28px;width:calc(100% - 36px)}.claude-sidebar .vps-card .proj-block.empty{padding:6px 11px 8px 20px}.login-console-modal{position:fixed;inset:0;background:color-mix(in srgb,var(--shade) 60%,transparent);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.login-console-card{background:var(--bg-inset);color:var(--term-fg);border:1px solid color-mix(in srgb,var(--tint) 15%,transparent);border-radius:var(--radius-md);width:min(900px,100%);max-height:80vh;display:flex;flex-direction:column;font-family:inherit}.login-console-card header{padding:10px 14px;border-bottom:1px solid color-mix(in srgb,var(--tint) 10%,transparent);display:flex;align-items:center;gap:12px}.login-console-card header .title{font-weight:600}.login-console-card header .hint{font-size:.85em;color:var(--term-dim);flex:1 1}.login-console-card header .dismiss{background:transparent;border:0;color:var(--term-dim);font-size:1.1em;cursor:pointer}.login-error{background:var(--danger-bg);color:var(--danger-soft);padding:8px 14px;border-bottom:1px solid var(--danger-bg-strong);font-size:.9em}.login-xterm-wrap{flex:1 1;position:relative;display:flex;flex-direction:column;min-height:0}.login-xterm{flex:1 1;padding:8px 10px;background:var(--term-bg);min-height:360px;overflow:hidden}.login-xterm .xterm{height:100%}.login-xterm .xterm-screen,.login-xterm .xterm-viewport{background:transparent!important}.term-url-overlay{position:absolute;right:14px;bottom:14px;z-index:10;min-width:280px;max-width:min(520px,calc(100% - 28px));background:color-mix(in srgb,var(--bg-inset) 96%,transparent);border:1px solid var(--accent);box-shadow:0 6px 24px color-mix(in srgb,var(--shadow-color) 50%,transparent);padding:10px 12px;font-family:var(--body);color:var(--text);display:flex;flex-direction:column;gap:7px;pointer-events:auto}.term-url-head{display:flex;align-items:center;gap:8px;font-size:11px}.term-url-glyph{font-size:14px}.term-url-title{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong)}.term-url-hint{color:var(--text-muted);opacity:.7;font-style:italic;font-size:10.5px}.term-url-dismiss{margin-left:auto;background:transparent;border:1px solid var(--border);color:var(--text-muted);width:22px;height:22px;font-size:11px;cursor:pointer}.term-url-dismiss:hover{color:var(--accent-strong);border-color:var(--accent)}.term-url-display{font-family:var(--mono);font-size:11px;background:color-mix(in srgb,var(--shade) 35%,transparent);padding:6px 8px;border:1px solid color-mix(in srgb,var(--tint) 8%,transparent);color:var(--text-muted);overflow-wrap:anywhere;word-break:break-all;-webkit-user-select:all;-moz-user-select:all;user-select:all;max-height:60px;overflow-y:auto}.term-url-actions{display:flex;gap:6px}.term-url-btn{flex:1 1;background:transparent;border:1px solid var(--border);color:var(--text);padding:5px 10px;font-family:var(--body);font-size:12px;cursor:pointer}.term-url-btn:hover{background:color-mix(in srgb,var(--warning) 10%,transparent)}.term-url-btn.primary,.term-url-btn:hover{color:var(--accent-strong);border-color:var(--accent)}.data-modal-v2 .data-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.data-modal-v2 .data-head h2{margin:0}.data-modal-v2 .data-add-vps-btn{background:transparent;border:1px solid var(--border);color:var(--accent);font-family:var(--display);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:6px 14px;cursor:pointer}.data-modal-v2 .data-add-vps-btn:hover{color:var(--accent-strong);border-color:var(--accent)}.data-modal-v2 .data-add.data-add-vps{margin-bottom:16px}.data-vps-list{display:flex;flex-direction:column;overflow-y:auto;flex:1 1;padding-right:4px}.data-empty{text-align:center;color:var(--text-muted);font-style:italic;padding:40px 12px}.data-vps-card{border:1px solid var(--border);background:var(--bg-inset)}.data-vps-card.agent-missing{border-color:color-mix(in srgb,var(--warning) 50%,transparent)}.data-vps-card.agent-error{border-color:color-mix(in srgb,var(--danger-strong) 50%,transparent)}.data-vps-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent);border-bottom:1px solid var(--border);flex-wrap:wrap}.dv-glyph{font-family:var(--mono,monospace)}.dv-glyph,.dv-name{color:var(--accent-strong)}.dv-name{font-family:var(--display,inherit);font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}.dv-host{font-size:11px;color:var(--text-muted);flex:1 1;min-width:0}.dv-agent,.dv-host{font-family:var(--mono,monospace)}.dv-agent{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;padding:2px 8px;border-radius:var(--radius-sm);border:1px solid transparent}.dv-agent.agent-ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,transparent);background:color-mix(in srgb,var(--success) 8%,transparent)}.dv-agent.agent-missing{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 35%,transparent);background:color-mix(in srgb,var(--warning) 8%,transparent)}.dv-agent.agent-error{color:var(--danger-strong);border-color:color-mix(in srgb,var(--danger-strong) 35%,transparent);background:color-mix(in srgb,var(--danger-strong) 8%,transparent)}.dv-agent.agent-unknown{color:var(--term-dim)}.dv-agent-text{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em}.dv-actions{display:flex;gap:5px}.dv-btn{background:color-mix(in srgb,var(--tint) 4%,transparent);border:1px solid color-mix(in srgb,var(--tint) 14%,transparent);color:color-mix(in srgb,var(--term-fg) 80%,transparent);font-family:var(--display,inherit);font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;line-height:1.2}.dv-btn:hover{background:color-mix(in srgb,var(--tint) 10%,transparent);color:var(--text-strong)}.dv-btn.primary{background:color-mix(in srgb,var(--warning) 18%,transparent);border-color:color-mix(in srgb,var(--warning) 55%,transparent);color:var(--warning-soft)}.dv-btn.primary:hover{background:color-mix(in srgb,var(--warning) 28%,transparent)}.dv-btn.danger{background:transparent;border-color:color-mix(in srgb,var(--tint) 12%,transparent);color:color-mix(in srgb,var(--term-fg) 50%,transparent);padding:4px 8px}.dv-btn.danger:hover{color:var(--danger-strong);border-color:color-mix(in srgb,var(--danger-strong) 50%,transparent);background:color-mix(in srgb,var(--danger-strong) 8%,transparent)}.data-vps-paths{padding:6px 14px 10px}.dv-empty{font-style:italic;color:var(--text-muted);font-size:11px;padding:8px 0}.dv-path-row{display:grid;grid-template-columns:16px minmax(120px,1fr) 2fr 24px;align-items:center;grid-gap:10px;gap:10px;padding:5px 0;border-bottom:1px dashed color-mix(in srgb,var(--tint) 5%,transparent)}.dv-path-row:last-of-type{border-bottom:0}.dv-path-glyph{color:var(--accent);font-family:var(--mono,monospace);text-align:center;font-size:11px}.dv-path-label{background:transparent;border:1px solid transparent;color:var(--text);font-family:var(--body,inherit);font-size:12px;padding:3px 6px;border-radius:var(--radius-sm);outline:none;min-width:0}.dv-path-label:hover{border-color:color-mix(in srgb,var(--tint) 10%,transparent)}.dv-path-label:focus{border-color:var(--accent);background:color-mix(in srgb,var(--shade) 20%,transparent)}.dv-path-label::placeholder{color:color-mix(in srgb,var(--term-fg) 35%,transparent);font-style:italic}.dv-path-path{font-family:var(--mono,monospace);font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dv-path-del{background:transparent;border:0;color:color-mix(in srgb,var(--term-fg) 30%,transparent);cursor:pointer;font-size:12px;padding:2px 4px}.dv-path-del:hover{color:var(--danger-strong)}.dv-add-path{display:grid;grid-template-columns:16px minmax(120px,1fr) 2fr auto;align-items:center;grid-gap:10px;gap:10px;padding:8px 0 4px;margin-top:4px;border-top:1px solid color-mix(in srgb,var(--tint) 7%,transparent)}.dv-add-glyph{color:color-mix(in srgb,var(--warning) 60%,transparent);text-align:center;font-size:14px;font-weight:700}.dv-add-glyph,.dv-add-path input{font-family:var(--mono,monospace)}.dv-add-path input{background:color-mix(in srgb,var(--shade) 20%,transparent);border:1px solid color-mix(in srgb,var(--tint) 10%,transparent);color:var(--text);font-size:11px;padding:4px 8px;border-radius:var(--radius-sm);outline:none;min-width:0}.dv-add-path input:focus{border-color:var(--accent)}.dv-add-path input.dv-add-path-input{font-size:11px}.dv-add-btn{background:color-mix(in srgb,var(--warning) 15%,transparent);border:1px solid color-mix(in srgb,var(--warning) 40%,transparent);color:var(--warning-soft);font-family:var(--display,inherit);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:var(--radius-sm);cursor:pointer;font-weight:600}.dv-add-btn:hover:not(:disabled){background:color-mix(in srgb,var(--warning) 25%,transparent)}.dv-add-btn:disabled{opacity:.3;cursor:not-allowed}.session-row{position:relative;overflow:hidden}.session-row .row-color-stripe{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--row-color,transparent);pointer-events:none}.session-row.has-color:before{content:"";position:absolute;inset:0;background:var(--row-color);opacity:.12;pointer-events:none}.session-row.has-color.selected:before{opacity:.22}.session-row.is-sleeping.has-color{--row-color:color-mix(in srgb,var(--term-dim) 55%,transparent)}.session-row .row-head,.session-row .row-meta,.session-row .row-preview{position:relative;z-index:1}.session-ctx-menu .ctx-color-row{display:flex;gap:6px;padding:8px 14px;border-bottom:1px solid var(--border);align-items:center}.session-ctx-menu .ctx-color-dot{width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px;aspect-ratio:1/1;border-radius:50%;border:1px solid color-mix(in srgb,var(--tint) 20%,transparent);cursor:pointer;padding:0;margin:0;position:relative;transition:transform .08s ease;text-align:center;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.session-ctx-menu .ctx-color-dot:hover{transform:scale(1.18);border-color:color-mix(in srgb,var(--tint) 60%,transparent);background-color:var(--row-color,transparent)}.session-ctx-menu .ctx-color-dot.on{border-color:var(--text-strong);box-shadow:0 0 0 1px color-mix(in srgb,var(--shadow-color) 40%,transparent),0 0 5px color-mix(in srgb,var(--tint) 45%,transparent)}.session-ctx-menu .ctx-color-dot.none{border:1px dashed color-mix(in srgb,var(--tint) 30%,transparent);background:transparent!important}.session-ctx-menu .ctx-color-dot .x{font-size:11px;color:color-mix(in srgb,var(--tint) 50%,transparent);line-height:1}.session-ctx-menu .ctx-hint{opacity:.5;font-size:11px;font-style:italic}.session-ctx-menu .ctx-subtitle{font-family:var(--mono,"JetBrains Mono",monospace);font-size:10px;color:color-mix(in srgb,var(--term-fg) 45%,transparent);margin-top:4px;text-transform:none;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.claude-main.shell-main{display:flex;flex-direction:column;padding:0;background:var(--term-bg)}.shell-slot{flex:1 1;min-width:0}.shell-slot,.shell-terminal-pane{min-height:0;flex-direction:column}.shell-terminal-pane{display:flex;flex:1 1}.shell-term-head{display:flex;align-items:center;gap:12px;padding:8px 16px;background:linear-gradient(180deg,var(--bg-raised),var(--bg));border-bottom:1px solid var(--border);flex-shrink:0}.shell-term-head .title{font-family:var(--display,inherit);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);font-weight:600}.shell-term-head .cwd{font-family:var(--mono,monospace);font-size:11.5px;color:var(--text-muted);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-term-head .exit-badge{background:color-mix(in srgb,var(--term-dim) 15%,transparent);border:1px solid color-mix(in srgb,var(--term-dim) 30%,transparent);color:var(--term-dim);padding:2px 8px;border-radius:var(--radius-sm);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.shell-term-head .kill-btn{background:color-mix(in srgb,var(--danger-strong) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger-strong) 40%,transparent);color:var(--danger-strong);padding:4px 12px;border-radius:var(--radius-sm);font-family:var(--display,inherit);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;cursor:pointer}.shell-term-head .kill-btn:hover{background:color-mix(in srgb,var(--danger-strong) 22%,transparent);color:var(--text-strong)}.shell-error{background:color-mix(in srgb,var(--danger-strong) 12%,transparent);color:var(--danger-strong);padding:8px 14px;border-bottom:1px solid color-mix(in srgb,var(--danger-strong) 30%,transparent);font-size:12px}.shell-xterm-wrap{flex:1 1;position:relative;display:flex;flex-direction:column;min-height:0}.shell-xterm{flex:1 1;padding:8px 12px;background:var(--term-bg);overflow:hidden;min-height:0}.shell-xterm .xterm{height:100%}.shell-xterm .xterm-screen,.shell-xterm .xterm-viewport{background:transparent!important}.shell-restoring{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px;background:color-mix(in srgb,var(--term-bg) 82%,transparent);color:var(--text);font-family:var(--mono,"JetBrains Mono",monospace);font-size:12px;letter-spacing:.02em;pointer-events:none}.shell-restoring .spin{width:12px;height:12px;border:2px solid color-mix(in srgb,var(--info) 30%,transparent);border-top-color:var(--info);border-radius:50%;animation:charon-shell-spin .7s linear infinite}@keyframes charon-shell-spin{to{transform:rotate(1turn)}}.dot.dot-cyan{background:var(--info);box-shadow:0 0 6px color-mix(in srgb,var(--info) 50%,transparent)}.session-row.shell-row .label{font-family:var(--mono,"JetBrains Mono",monospace);font-size:11.5px;color:var(--text)}.session-row.shell-row.exited .label,.session-row.shell-row.exited .meta-cwd{opacity:.5}.shell-exit-tag{background:color-mix(in srgb,var(--term-dim) 15%,transparent);color:var(--term-dim);font-size:9px;padding:1px 5px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;margin-left:auto}.proj-action.proj-shell{color:var(--border);font-size:11px}.proj-action.proj-shell:hover{color:var(--info);border-color:var(--info)}.closed-badge{background:color-mix(in srgb,var(--success) 20%,transparent);border:1px solid color-mix(in srgb,var(--success) 40%,transparent);color:var(--success-soft);padding:1px 8px;border-radius:var(--radius-sm);font-size:.75em;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.folder-section{margin-bottom:14px;border:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 4%,transparent),transparent)}.folder-section.folder-collapsed{background:color-mix(in srgb,var(--accent) 2%,transparent)}.folder-head{display:flex;align-items:center;gap:6px;padding:8px 14px;font-family:var(--display);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-strong);border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:color-mix(in srgb,var(--accent) 6%,transparent)}.folder-head:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.folder-section.folder-collapsed .folder-head{border-bottom:0}.folder-caret{color:var(--text-muted);font-family:var(--mono);width:12px;flex-shrink:0;font-size:10px}.folder-glyph{color:var(--accent)}.folder-name{flex:1 1;color:var(--accent-strong);letter-spacing:.18em}.folder-count{font-size:10px;color:var(--text-muted);background:color-mix(in srgb,var(--shade) 20%,transparent);padding:1px 6px;border:1px solid var(--border)}.folder-active-count,.folder-count{font-family:var(--mono);letter-spacing:0}.folder-active-count{font-size:11px;background:color-mix(in srgb,var(--diff-add) 15%,transparent);border:1px solid var(--diff-add);color:var(--diff-add);padding:1px 7px}.folder-empty{padding:14px;font-style:italic;color:var(--text-muted);font-size:11px;text-align:center}.data-search{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px 12px;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-lg)}.data-search:focus-within{border-color:var(--accent)}.data-search-glyph{color:var(--accent);font-family:var(--mono);font-size:15px;line-height:1}.data-search-input{flex:1 1;min-width:0;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:13px}.data-search-input::placeholder{color:var(--text-muted);opacity:.55}.data-search-count{font-family:var(--mono);font-size:10px;color:var(--text-muted);background:color-mix(in srgb,var(--shade) 30%,transparent);border:1px solid var(--border);padding:2px 8px;flex-shrink:0}.data-search-clear{flex-shrink:0;cursor:pointer;padding:2px 7px;border-radius:var(--radius-md);background:transparent;border:1px solid transparent;color:var(--text-muted);font-size:12px;line-height:1}.data-search-clear:hover{border-color:var(--accent);color:var(--accent-strong)}.data-folder-drag-handle.is-off,.data-vps-drag-handle.is-off{opacity:.25;cursor:default}.data-modal-v2 .data-help{margin:-4px 0 14px;font-family:var(--mono);font-size:11px;color:var(--text-muted);font-style:italic}.data-modal-v2 .data-head-actions{display:flex;gap:8px}.data-modal-v2 .data-add-folder{margin-bottom:14px}.data-folder-list{display:flex;flex-direction:column;gap:18px;overflow-y:auto;flex:1 1;padding-right:4px}.data-folder-card{border:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,transparent),color-mix(in srgb,var(--accent) 2%,transparent));transition:opacity .15s ease,box-shadow .15s ease}.data-folder-card.is-dragging{box-shadow:0 0 18px color-mix(in srgb,var(--accent) 30%,transparent);z-index:50}.data-folder-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:color-mix(in srgb,var(--accent) 8%,transparent);border-bottom:1px solid var(--border)}.data-folder-drag-handle{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-muted);font-size:14px;letter-spacing:-2px;padding:2px 4px;font-family:var(--mono)}.data-folder-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.data-folder-glyph{color:var(--accent);font-family:var(--display);font-size:14px}.data-folder-name-input{flex:1 1;background:transparent;border:1px solid transparent;color:var(--accent-strong);font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:4px 8px;outline:none}.data-folder-name-input:hover{border-color:color-mix(in srgb,var(--warning) 25%,transparent)}.data-folder-name-input:focus{border-color:var(--accent)}.data-folder-count,.data-folder-name-input:focus{background:color-mix(in srgb,var(--shade) 25%,transparent)}.data-folder-count{font-family:var(--mono);font-size:10px;color:var(--text-muted);padding:2px 8px;border:1px solid var(--border);letter-spacing:.04em}.data-folder-body{display:flex;flex-direction:column;gap:10px;padding:12px;min-height:60px}.data-folder-empty{padding:18px;font-style:italic;color:var(--text-muted);font-size:11px;text-align:center;border:1px dashed var(--border);background:color-mix(in srgb,var(--shade) 10%,transparent)}.data-vps-drag-handle{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-muted);font-size:13px;letter-spacing:-2px;padding:2px 4px;font-family:var(--mono);flex-shrink:0}.data-vps-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.data-vps-card.is-dragging{box-shadow:0 0 18px color-mix(in srgb,var(--accent) 30%,transparent);z-index:100}.dv-card-drag-overlay,.dv-folder-drag-overlay{background:var(--bg-elevated);border:1px solid var(--accent);padding:10px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 24px color-mix(in srgb,var(--shadow-color) 50%,transparent),0 0 18px color-mix(in srgb,var(--accent) 30%,transparent);font-family:var(--mono);font-size:12px;color:var(--text);cursor:-webkit-grabbing;cursor:grabbing}.dv-folder-drag-overlay{letter-spacing:.16em}.data-folder-static .data-folder-name-static,.dv-folder-drag-overlay{font-family:var(--display);text-transform:uppercase;color:var(--accent-strong)}.data-folder-static .data-folder-name-static{flex:1 1;font-size:13px;letter-spacing:.14em;padding:4px 8px}.data-folder-lock{font-size:12px;width:16px;text-align:center;color:var(--text-muted);opacity:.7}.dv-folder-select{background:color-mix(in srgb,var(--shade) 25%,transparent);border:1px solid var(--border);color:var(--text);font-family:var(--mono);font-size:11px;padding:4px 6px;cursor:pointer;max-width:130px;outline:none}.dv-folder-select:focus,.dv-folder-select:hover{border-color:var(--accent)}.dv-folder-select:focus{background:color-mix(in srgb,var(--shade) 40%,transparent)}.data-modal-v2 .data-head{padding-bottom:14px;margin-bottom:16px}.data-modal-v2 .data-add-vps-btn{border-radius:var(--radius-lg);padding:7px 14px;background:color-mix(in srgb,var(--shade) 25%,transparent)}.data-modal-v2 .data-add-vps-btn:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.data-folder-list{gap:16px}.data-folder-card{border-radius:var(--radius-xl);overflow:hidden;border-color:var(--border);background:color-mix(in srgb,var(--bg-raised) 45%,transparent)}.data-folder-head{background:color-mix(in srgb,var(--accent) 7%,transparent);padding:11px 14px}.data-folder-static .data-folder-head{background:color-mix(in srgb,var(--danger) 6%,transparent)}.data-folder-count,.data-folder-empty{border-radius:var(--radius-lg)}.data-vps-list{gap:14px}.data-vps-card{border-radius:var(--radius-lg);overflow:hidden;background:color-mix(in srgb,var(--bg-raised) 55%,transparent)}.data-vps-card.agent-error{border-color:var(--danger-deep)}.data-vps-head{background:color-mix(in srgb,var(--shade) 18%,transparent);padding:10px 12px}.dv-agent{border-radius:var(--radius-lg)}.dv-actions{gap:6px}.dv-btn{border-radius:var(--radius-md);padding:5px 11px}.dv-btn.danger{padding:5px 9px}.dv-folder-select{padding:5px 8px;max-width:150px}.dv-add-path input,.dv-folder-select,.dv-path-del,.dv-path-label{border-radius:var(--radius-md)}.dv-add-path input{padding:5px 9px}.dv-add-btn{border-radius:var(--radius-md);padding:5px 13px}.dv-card-drag-overlay,.dv-folder-drag-overlay{border-radius:var(--radius-lg)}.data-folder-list,.data-vps-list{min-height:0}.data-folder-card,.data-vps-card{flex-shrink:0}.data-folder-caret{background:transparent;border:none;cursor:pointer;color:var(--text-muted);font-size:10px;line-height:1;width:14px;flex-shrink:0;padding:0}.data-folder-caret:hover{color:var(--accent-strong)}.data-folder-card.is-collapsed .data-folder-head{border-bottom:none}.data-vps-caret{background:transparent;border:none;cursor:pointer;color:var(--text-muted);font-size:10px;line-height:1;width:14px;flex-shrink:0;padding:0}.data-vps-caret:hover{color:var(--accent-strong)}.data-vps-card.is-collapsed .data-vps-head{border-bottom:none}.dv-health{flex-basis:100%;display:flex;align-items:center;padding:2px 0 0 30px}:root,[data-theme=nordic]{--bg-inset:#11131a;--bg:#181b24;--bg-raised:#1c1f29;--bg-elevated:#232733;--bg-high:#2a2f3c;--text:#d2d9ec;--text-strong:#e5eaf2;--text-muted:#6a7388;--text-faint:#5b6373;--border:#363c4d;--border-strong:#4a5161;--accent:#8ab4e4;--accent-strong:#a8c4ef;--accent-dim:#537ca8;--info:#86c5d8;--info-deep:#5a8a9a;--danger:#d8757f;--danger-strong:#e0736b;--danger-soft:#f0c7c7;--danger-deep:#944f57;--danger-bg:#2a1414;--danger-bg-strong:#4a1f1f;--success:#7fbf7f;--success-soft:#bcdf98;--success-deep:#6b8855;--warning:#e6c07a;--warning-strong:#ffd700;--warning-soft:#f0d39e;--attention:#f0a060;--attention-strong:#ff785a;--lavender:#a8b8e0;--violet:#ac8fe0;--violet-soft:#afafff;--violet-deep:#9b8ec4;--syn-comment:#5a627a;--syn-string:#a0c87b;--diff-add:#a0c87b;--shade:#000000;--shadow-color:#000000;--scrim:#000000;--tint:#ffffff;--logo-plate:#f4f1ea;--media-bg:#ffffff;--term-bg:#0e0e0e;--term-fg:#dcdcdc;--term-dim:#888888;--bubble-edge:1px;--bubble-tint:1;--bubble-measure:none;--bubble-align:stretch;--bubble-radius:0;--radius-sm:3px;--radius-md:6px;--radius-lg:9px;--radius-xl:14px;--display:"Inter",system-ui,-apple-system,sans-serif;--body:"Inter",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",monospace}[data-theme=daylight]{--bg-inset:#ffffff;--bg:#eef1f6;--bg-raised:#f8fafc;--bg-elevated:#ffffff;--bg-high:#e2e8f1;--text:#1e2632;--text-strong:#0b1220;--text-muted:#5b6675;--text-faint:#8b95a5;--border:#cfd7e3;--border-strong:#aab5c5;--accent:#2c6db5;--accent-strong:#1a5296;--accent-dim:#7ea4d1;--info:#217f93;--info-deep:#17606f;--danger:#c2404b;--danger-strong:#b32d22;--danger-soft:#9c4a4a;--danger-deep:#7c2b30;--danger-bg:#fbe9e9;--danger-bg-strong:#f4cfcf;--success:#2f7d33;--success-soft:#4f9a53;--success-deep:#1c5e21;--warning:#96690f;--warning-strong:#b8860b;--warning-soft:#7d5a10;--attention:#bf5d13;--attention-strong:#cc4420;--lavender:#55609f;--violet:#6a3fa0;--violet-soft:#6f5fc8;--violet-deep:#4a3a7a;--syn-comment:#6a737d;--syn-string:#3d7a1f;--diff-add:#3d7a1f;--shade:#64748b;--shadow-color:#475569;--scrim:#0b1220;--tint:#1e293b;--logo-plate:#f4f1ea;--media-bg:#ffffff;--term-bg:#fbfaf7;--term-fg:#2f3337;--term-dim:#7a8088;--bubble-edge:1px;--bubble-tint:1;--bubble-measure:none;--bubble-align:stretch;--bubble-radius:0;--radius-sm:3px;--radius-md:6px;--radius-lg:9px;--radius-xl:14px;--display:"Inter",system-ui,-apple-system,sans-serif;--body:"Inter",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",monospace}[data-theme=etonc]{--bg-inset:#14130f;--bg:#191817;--bg-raised:#1d1c1a;--bg-elevated:#201f1d;--bg-high:#2b2a27;--text:#f0eee6;--text-strong:#fbf9f2;--text-muted:#8f8a7f;--text-faint:#6b665c;--border:#3a3835;--border-strong:#514d47;--accent:#d97757;--accent-strong:#e8977a;--accent-dim:#8a4630;--info:#9db5a8;--info-deep:#62766c;--danger:#d4534b;--danger-strong:#e56a5c;--danger-soft:#f3c9c2;--danger-deep:#8a3c36;--danger-bg:#2a1512;--danger-bg-strong:#48211b;--success:#93b071;--success-soft:#b9d19a;--success-deep:#62784a;--warning:#d7a54e;--warning-strong:#f0c168;--warning-soft:#ecd6a8;--attention:#f2a93c;--attention-strong:#ff8a2b;--lavender:#cbb79c;--violet:#b491c9;--violet-soft:#cdaede;--violet-deep:#8a6b9e;--syn-comment:#7a7469;--syn-string:#a9bd85;--diff-add:#a9bd85;--shade:#000000;--shadow-color:#000000;--scrim:#0b0a08;--tint:#fff4e8;--logo-plate:#f4f1ea;--media-bg:#ffffff;--term-bg:#141312;--term-fg:#e6e0d4;--term-dim:#857e70;--bubble-edge:0px;--bubble-tint:0;--bubble-measure:46rem;--bubble-align:center;--bubble-radius:0;--radius-sm:3px;--radius-md:6px;--radius-lg:9px;--radius-xl:14px;--display:"Inter",system-ui,-apple-system,sans-serif;--body:"Inter",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",monospace}[data-theme=cupertino]{--bg-inset:#ffffff;--bg:#f2f2f7;--bg-raised:#fafafc;--bg-elevated:#ffffff;--bg-high:#e5e5ea;--text:#1d1d1f;--text-strong:#000000;--text-muted:#6e6e73;--text-faint:#8e8e93;--border:#d2d2d7;--border-strong:#b0b0b8;--accent:#007aff;--accent-strong:#0040dd;--accent-dim:#7ab5ff;--info:#0e8fa3;--info-deep:#0a6c7c;--danger:#d70015;--danger-strong:#a5000f;--danger-soft:#8a2b2b;--danger-deep:#7a0a12;--danger-bg:#ffeceb;--danger-bg-strong:#ffd9d6;--success:#248a3d;--success-soft:#30a14e;--success-deep:#16642b;--warning:#a9640a;--warning-strong:#c98a00;--warning-soft:#7d5410;--attention:#c93400;--attention-strong:#e5511f;--lavender:#4b49c7;--violet:#8944ab;--violet-soft:#a259c4;--violet-deep:#6b2f87;--syn-comment:#5d6c79;--syn-string:#c41a16;--diff-add:#248a3d;--shade:#8e8e93;--shadow-color:#3c3c43;--scrim:#000000;--tint:#3c3c43;--logo-plate:#f4f1ea;--media-bg:#ffffff;--term-bg:#ffffff;--term-fg:#1d1d1f;--term-dim:#8e8e93;--bubble-edge:1px;--bubble-tint:0.5;--bubble-measure:none;--bubble-align:stretch;--bubble-radius:12px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--display:-apple-system,BlinkMacSystemFont,"SF Pro Display",system-ui,sans-serif;--body:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;--mono:"SF Mono",ui-monospace,Menlo,monospace}[data-theme=cupertino-night]{--bg-inset:#121214;--bg:#1c1c1e;--bg-raised:#232325;--bg-elevated:#2c2c2e;--bg-high:#3a3a3c;--text:#f5f5f7;--text-strong:#ffffff;--text-muted:#98989f;--text-faint:#6c6c70;--border:#38383a;--border-strong:#54545a;--accent:#8ab4e4;--accent-strong:#a8c4ef;--accent-dim:#537ca8;--info:#40cbe0;--info-deep:#2a8c9c;--danger:#ff453a;--danger-strong:#ff6961;--danger-soft:#ffc9c5;--danger-deep:#a5251d;--danger-bg:#2c1414;--danger-bg-strong:#4a1c18;--success:#30d158;--success-soft:#6ee787;--success-deep:#1f8a3b;--warning:#e5c04a;--warning-strong:#ffd60a;--warning-soft:#f5dd8f;--attention:#ff9f0a;--attention-strong:#ff7a45;--lavender:#7d7aff;--violet:#bf5af2;--violet-soft:#da8fff;--violet-deep:#8b3fb0;--syn-comment:#6c7986;--syn-string:#fc6a5d;--diff-add:#30d158;--shade:#000000;--shadow-color:#000000;--scrim:#000000;--tint:#ffffff;--logo-plate:#f4f1ea;--media-bg:#ffffff;--term-bg:#121214;--term-fg:#f5f5f7;--term-dim:#8e8e93;--bubble-edge:1px;--bubble-tint:1;--bubble-measure:none;--bubble-align:stretch;--bubble-radius:12px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--display:-apple-system,BlinkMacSystemFont,"SF Pro Display",system-ui,sans-serif;--body:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;--mono:"SF Mono",ui-monospace,Menlo,monospace}:root{--stone:var(--bg);--stone-2:var(--bg-elevated);--stone-3:var(--bg-high);--parchment:var(--text);--parchment-soft:var(--text-muted);--gold:var(--accent);--gold-bright:var(--accent-strong);--gold-deep:var(--border);--teal:var(--info);--teal-deep:var(--info-deep);--crimson:var(--danger);--crimson-deep:var(--danger-deep);--violet-bright:var(--violet);--shadow:var(--bg-inset)}