.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.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{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{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;position:absolute;top:0;right:0;pointer-events:none}.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;background:#0000;transition:opacity .1s linear;z-index:11}.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{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}@font-face{font-family:MesloLGS NF;src:url(/assets/MesloLGS-NF-Regular-Cxr8pvCI.ttf) format("truetype");font-display:block;font-weight:400;font-style:normal}@font-face{font-family:MesloLGS NF;src:url(/assets/MesloLGS-NF-Bold-kN-HYz-g.ttf) format("truetype");font-display:block;font-weight:700;font-style:normal}@font-face{font-family:MesloLGS NF;src:url(/assets/MesloLGS-NF-Italic-CMg1T6-G.ttf) format("truetype");font-display:block;font-weight:400;font-style:italic}@font-face{font-family:MesloLGS NF;src:url(/assets/MesloLGS-NF-Bold-Italic-DwFsXcwX.ttf) format("truetype");font-display:block;font-weight:700;font-style:italic}:root{color:var(--leo-fg);background:var(--leo-bg);font-family:var(--leo-font-ui);font-synthesis:none;text-rendering:optimizeLegibility;text-size-adjust:100%;-webkit-text-size-adjust:100%;--leominal-viewport-height: 100vh;--leominal-keyboard-inset-bottom: 0px;--leominal-safe-area-bottom: env(safe-area-inset-bottom, 0px);--leo-bg: #0a0d10;--leo-bg-2: #0d1216;--leo-bg-sidebar: #08090b;--leo-line: #1a2128;--leo-line-2: #2a3340;--leo-fg: #e2e8ee;--leo-fg-2: #8896a3;--leo-fg-3: #54616d;--leo-accent: #5eead4;--leo-accent-soft: rgba(94, 234, 212, .1);--leo-accent-glow: rgba(94, 234, 212, .55);--leo-ok: #34d399;--leo-danger: #f87171;--leo-font-ui: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--leo-font-mono: "JetBrains Mono", "MesloLGS NF", ui-monospace, "SF Mono", monospace}@supports (height: 100dvh){:root{--leominal-viewport-height: 100dvh}}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{overflow:hidden;background:var(--leo-bg);touch-action:manipulation}button,input,textarea,select{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.42}input{min-width:0;outline:none}textarea{min-width:0;resize:none;outline:none}.terminal-shell{display:grid;grid-template-columns:232px minmax(0,1fr);width:100%;height:var(--leominal-viewport-height);min-height:0;overflow:hidden;padding-bottom:var(--leominal-safe-area-bottom);background:var(--leo-bg);transition:grid-template-columns .16s ease}.terminal-shell[data-collapsed=true]{grid-template-columns:56px minmax(0,1fr)}.workspace-backdrop{display:none}.workspace-sidebar{display:grid;grid-template-rows:auto 1fr auto;min-width:0;min-height:0;border-right:1px solid var(--leo-line);background:var(--leo-bg-sidebar)}.workspace-brand{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:16px 16px 14px}.terminal-shell[data-collapsed=true] .workspace-brand{grid-template-columns:1fr;justify-items:center;gap:6px;padding:14px 0 12px}.workspace-brand-name{color:var(--leo-fg);font-size:13px;font-weight:600;letter-spacing:.02em}.sidebar-collapse-button,.sidebar-drawer-close-button,.workspace-sidebar-header button,.mobile-menu-button,.tab-add-button,.pane-action-button,.icon-button,.workspace-close-button,.terminal-pane-close,.empty-workspace button,.secondary-button{display:grid;place-items:center;border:1px solid transparent;padding:0;color:var(--leo-fg-3);background:transparent;cursor:pointer}.sidebar-collapse-button,.sidebar-drawer-close-button{width:22px;height:22px;border-radius:4px}.sidebar-drawer-close-button{display:none}.terminal-shell[data-collapsed=true] .sidebar-collapse-button{width:28px;height:24px}.sidebar-collapse-button:hover:not(:disabled),.sidebar-drawer-close-button:hover:not(:disabled),.workspace-sidebar-header button:hover:not(:disabled),.mobile-menu-button:hover:not(:disabled),.pane-action-button:hover:not(:disabled),.icon-button:hover:not(:disabled),.empty-workspace button:hover:not(:disabled),.secondary-button:hover:not(:disabled){color:var(--leo-fg);background:var(--leo-bg-2)}.workspace-nav{display:grid;grid-template-rows:auto 1fr;min-height:0}.workspace-sidebar-content{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0}.workspace-sidebar-servers{border-bottom:1px solid var(--leo-line);padding:0 12px 10px}.server-list{display:flex;flex-direction:column;gap:3px}.server-list-row{display:flex;align-items:center;gap:4px}.server-list-item{display:flex;align-items:center;gap:8px;flex:1;min-width:0;height:28px;padding:0 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--leo-fg-3);font-size:12px;cursor:pointer;text-align:left}.server-list-item:hover{background:var(--leo-bg-2);color:var(--leo-fg)}.server-list-item--active{border-color:#5eead48c;color:var(--leo-accent);background:var(--leo-accent-soft)}.server-list-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.server-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-list-editor{flex:1 1 auto;display:flex;align-items:center;min-width:0}.server-list-editor input{width:100%;height:28px;padding:0 10px;border-radius:6px;border:1px solid var(--leo-accent);background:var(--leo-bg-2);color:var(--leo-fg);font:inherit;outline:none}.server-list-remove{width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--leo-fg-3);font-size:16px;line-height:1;cursor:pointer;flex-shrink:0}.server-list-remove:hover{color:var(--leo-danger);background:var(--leo-bg-2)}.server-list-add{height:28px;border:1px dashed var(--leo-line);border-radius:5px;background:transparent;color:var(--leo-fg-3);font-size:11px;cursor:pointer}.server-list-add:hover{color:var(--leo-accent);border-color:#5eead48c}.server-add-form{display:flex;flex-direction:column;gap:6px;padding:8px 0 2px}.server-add-form input{height:28px;padding:0 8px;border:1px solid var(--leo-line);border-radius:5px;background:var(--leo-bg-2);color:var(--leo-fg);font-size:12px}.server-add-actions{display:flex;gap:6px}.server-add-actions button{flex:1;height:28px;font-size:11px}.totp-setup{display:flex;flex-direction:column;gap:14px}.totp-setup-instructions{color:var(--leo-fg-2);font-size:13px;line-height:1.5}.totp-qr-container{display:flex;justify-content:center;padding:12px;background:#fff;border-radius:8px;align-self:center}.totp-secret-details{font-size:12px;color:var(--leo-fg-3)}.totp-secret-text{margin-top:6px;padding:8px;border-radius:5px;background:var(--leo-bg-2);font-family:var(--leo-mono, monospace);letter-spacing:.1em;word-break:break-all;color:var(--leo-fg)}.auth-checkbox{display:inline-flex;flex-direction:row;align-items:center;gap:8px;font-size:12.5px;line-height:1.4;color:var(--leo-fg-2);cursor:pointer;-webkit-user-select:none;user-select:none}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;flex:0 0 16px;border:1px solid var(--leo-line-2);border-radius:4px;background:var(--leo-bg-2);cursor:pointer;position:relative;transition:border-color .12s ease,background .12s ease}input[type=checkbox]:hover{border-color:var(--leo-accent)}input[type=checkbox]:focus-visible{outline:none;border-color:var(--leo-accent);box-shadow:0 0 0 2px var(--leo-accent-soft)}input[type=checkbox]:checked{background:var(--leo-accent);border-color:var(--leo-accent)}input[type=checkbox]:checked:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid var(--leo-bg);border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.workspace-sidebar-footer-actions{display:flex;gap:6px}.security-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.security-panel{width:100%;max-width:520px;max-height:85vh;overflow:auto;background:var(--leo-bg-2);border:1px solid var(--leo-line);border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:18px}.security-panel-header{display:flex;align-items:center;justify-content:space-between}.security-panel-header h2{margin:0;font-size:16px;color:var(--leo-fg)}.security-close{width:28px;height:28px;border:none;border-radius:5px;background:transparent;color:var(--leo-fg-2);font-size:20px;cursor:pointer}.security-close:hover{background:var(--leo-bg);color:var(--leo-fg)}.security-section h3{margin:0 0 4px;font-size:13px;color:var(--leo-fg)}.security-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.security-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--leo-line);border-radius:6px}.security-item-label{display:flex;align-items:center;gap:8px;color:var(--leo-fg);font-size:13px}.security-item-meta{display:block;color:var(--leo-fg-3);font-size:11px;margin-top:2px}.security-badge{font-size:10px;padding:1px 6px;border-radius:999px;background:var(--leo-accent-soft);color:var(--leo-accent)}.security-remove{border:1px solid var(--leo-line);border-radius:5px;background:transparent;color:var(--leo-danger);font-size:11px;padding:4px 10px;cursor:pointer}.security-remove:hover{background:var(--leo-bg)}.security-add-form{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.security-add-form input{flex:1;min-width:120px;height:30px;padding:0 8px;border:1px solid var(--leo-line);border-radius:5px;background:var(--leo-bg);color:var(--leo-fg);font-size:12px}.security-add-form button{height:30px;padding:0 14px}.update-actions{display:flex;gap:8px}.update-actions button{height:30px;padding:0 14px}.workspace-sidebar-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-bottom:1px solid var(--leo-line);padding:0 12px 10px}.workspace-sidebar-tabs button{height:26px;border:1px solid var(--leo-line);border-radius:5px;color:var(--leo-fg-3);background:transparent;font-size:11px;cursor:pointer}.workspace-sidebar-tabs button:hover:not(:disabled){color:var(--leo-fg);background:var(--leo-bg-2)}.workspace-sidebar-tabs button[aria-selected=true]{border-color:#5eead48c;color:var(--leo-accent);background:var(--leo-accent-soft)}.workspace-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:4px 16px 8px;color:var(--leo-fg-3);font-size:10.5px;letter-spacing:.06em}.workspace-sidebar-header button{width:20px;height:20px;border-radius:4px;font-size:16px}.workspace-sidebar-header button:hover:not(:disabled),.tab-add-button:hover:not(:disabled){color:var(--leo-accent)}.workspace-list{display:flex;min-height:0;flex-direction:column;overflow:auto;overscroll-behavior:contain;padding-bottom:8px;-webkit-overflow-scrolling:touch}.workspace-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;min-width:0}.workspace-select-button,.workspace-name-editor{display:grid;min-width:0;gap:2px;border:0;border-left:2px solid transparent;border-radius:0;padding:7px 16px 7px 14px;color:var(--leo-fg-2);background:transparent;text-align:left}.workspace-select-button{cursor:pointer}.workspace-select-button:hover:not(:disabled){color:var(--leo-fg);background:#ffffff04}.workspace-entry[data-active=true] .workspace-select-button,.workspace-entry[data-active=true] .workspace-name-editor{color:var(--leo-fg);border-left-color:var(--leo-accent);background:linear-gradient(90deg,var(--leo-accent-soft),transparent 60%)}.workspace-entry strong{max-width:100%;overflow:hidden;color:currentColor;font-size:12.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.workspace-entry[data-active=true] strong{font-weight:600}.workspace-entry-meta{display:flex;min-width:0;justify-content:space-between;gap:8px;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10.5px}.workspace-entry-cwd{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-name-editor{background:var(--leo-bg-2);border-left-color:var(--leo-accent)}.workspace-name-editor input{width:100%;border:1px solid var(--leo-accent);border-radius:3px;padding:2px 6px;color:var(--leo-fg);background:var(--leo-bg);box-shadow:0 0 8px var(--leo-accent-soft);font-size:12.5px;font-weight:600}.workspace-close-button{align-self:center;width:22px;height:22px;margin-right:10px;border-radius:3px;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.workspace-entry:hover .workspace-close-button{opacity:1}.workspace-close-button:hover:not(:disabled),.terminal-pane-close:hover:not(:disabled){color:var(--leo-danger);background:#f871711a}.terminal-shell[data-collapsed=true] .workspace-list{align-items:center}.terminal-shell[data-collapsed=true] .workspace-entry{display:block}.terminal-shell[data-collapsed=true] .workspace-select-button{justify-items:center;border-left:0;padding:10px 0}.workspace-initial{display:grid;width:28px;height:28px;place-items:center;border:1px solid var(--leo-line);border-radius:6px;color:var(--leo-fg-2);background:var(--leo-bg-2);font-family:var(--leo-font-mono);font-size:12px;font-weight:700}.workspace-entry[data-active=true] .workspace-initial{border-color:var(--leo-accent);color:var(--leo-accent);background:var(--leo-accent-soft);box-shadow:0 0 12px var(--leo-accent-soft)}.workspace-sidebar-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--leo-line);padding:12px 16px;color:var(--leo-fg-3);font-size:10.5px}.workspace-sidebar-footer button{min-height:0;color:var(--leo-fg-2);font-size:10.5px}.file-explorer{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;color:var(--leo-fg-2)}.file-explorer-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid var(--leo-line);padding:8px 10px 8px 12px}.file-explorer-path{min-width:0;overflow:hidden;color:var(--leo-fg-2);font-family:var(--leo-font-mono);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.file-explorer-toolbar,.file-detail-actions,.file-mode-actions,.file-save-row{display:flex;align-items:center;gap:6px}.file-explorer-toolbar button,.file-detail-actions button,.file-mode-actions button,.file-save-row button,.file-conflict button{min-height:24px;border:1px solid var(--leo-line-2);border-radius:5px;padding:0 8px;color:var(--leo-fg-2);background:transparent;font-size:11px;cursor:pointer}.file-explorer-toolbar button{width:24px;padding:0}.file-explorer-toolbar button:hover:not(:disabled),.file-detail-actions button:hover:not(:disabled),.file-mode-actions button:hover:not(:disabled),.file-save-row button:hover:not(:disabled),.file-conflict button:hover:not(:disabled){border-color:#5eead48c;color:var(--leo-fg);background:var(--leo-accent-soft)}.file-explorer-alert,.file-conflict{border-bottom:1px solid rgba(248,113,113,.25);padding:7px 12px;color:#fca5a5;background:#f8717114;font-size:11px}.file-conflict{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid rgba(248,113,113,.25);border-radius:6px}.file-explorer-layout{display:grid;grid-template-rows:minmax(110px,.7fr) minmax(0,1fr);min-width:0;min-height:0}.file-tree{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;border-bottom:1px solid var(--leo-line);padding:6px 0;-webkit-overflow-scrolling:touch}.file-tree-children{display:grid}.file-entry-button{display:grid;grid-template-columns:13px minmax(0,1fr) auto;align-items:center;gap:6px;width:100%;min-width:0;border:0;border-left:2px solid transparent;padding:6px 12px 6px calc(10px + (var(--file-tree-depth, 0) * 14px));color:var(--leo-fg-2);background:transparent;text-align:left;cursor:pointer}.file-entry-button:hover:not(:disabled),.file-entry-button[data-active=true]{color:var(--leo-fg);background:#ffffff05}.file-entry-button[data-active=true]{border-left-color:var(--leo-accent)}.file-entry-button[data-kind=directory][data-expanded=true]{background:#5eead40b}.file-entry-button:disabled{opacity:.44}.file-entry-disclosure{width:13px;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10px;text-align:center}.file-entry-name{min-width:0;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.file-entry-button small{color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10px}.file-entry-button[data-kind=directory] .file-entry-name{color:var(--leo-accent)}.file-detail{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding:10px 12px 12px;-webkit-overflow-scrolling:touch}.file-detail-header,.file-save-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.file-detail-header strong{min-width:0;overflow:hidden;color:var(--leo-fg);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.file-detail-actions{flex:0 0 auto}.file-detail-empty{display:grid;min-height:92px;place-items:center;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:11px}.file-preview-frame{min-height:180px;overflow:auto}.file-preview-frame img,.file-preview-frame iframe{width:100%;min-height:180px;border:1px solid var(--leo-line);border-radius:6px;background:var(--leo-bg-2)}.file-preview-frame img{height:auto;object-fit:contain}.file-markdown-panel,.file-editor-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;min-width:0;min-height:0}.file-markdown-preview{min-height:180px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--leo-line);border-radius:6px;padding:10px;color:var(--leo-fg);background:var(--leo-bg-2);font-size:12px;line-height:1.45;-webkit-overflow-scrolling:touch}.file-text-preview{min-height:180px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--leo-line);border-radius:6px;padding:10px;color:var(--leo-fg);background:var(--leo-bg-2);font-family:var(--leo-font-mono);font-size:12px;line-height:1.45;white-space:pre-wrap;word-break:break-word;-webkit-overflow-scrolling:touch}.file-markdown-preview :first-child{margin-top:0}.file-markdown-preview :last-child{margin-bottom:0}.file-editor{width:100%;min-height:190px;border:1px solid var(--leo-line);border-radius:6px;padding:10px;color:var(--leo-fg);background:var(--leo-bg-2);font-family:var(--leo-font-mono);font-size:12px;line-height:1.45}.file-editor:focus{border-color:#5eead48c;box-shadow:0 0 0 2px var(--leo-accent-soft)}.file-save-row{color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10.5px}.terminal-main{position:relative;display:grid;grid-template-rows:40px minmax(0,1fr) 22px;min-width:0;min-height:0;background:var(--leo-bg)}.workspace-error{margin:0;border-bottom:1px solid rgba(248,113,113,.25);padding:6px 12px;color:#fca5a5;background:#f8717114;font-size:12px}.terminal-tabs{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;min-width:0;border-bottom:1px solid var(--leo-line);padding:0 8px 0 4px;background:var(--leo-bg)}.mobile-menu-button{display:none;align-self:center;width:32px;height:32px;margin:0 2px;border-radius:5px}.hamburger-lines{display:grid;gap:3px}.hamburger-lines span{display:block;width:16px;height:1px;background:currentColor}.terminal-tab-list{display:flex;min-width:0;max-width:100%;align-items:stretch;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.terminal-tab-list::-webkit-scrollbar{display:none}.terminal-tab{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0}.terminal-tab[data-active=true]:after{position:absolute;right:12px;bottom:-1px;left:12px;height:2px;background:var(--leo-accent);box-shadow:0 0 10px var(--leo-accent-glow);content:""}.terminal-tab-select,.terminal-tab-editor{display:flex;align-items:center;gap:8px;min-width:0;height:40px;border:0;padding:0 4px 0 14px;color:var(--leo-fg-2);background:transparent;font-size:12px}.terminal-tab-select{max-width:200px;cursor:pointer}.terminal-tab-select:hover:not(:disabled),.terminal-tab[data-active=true] .terminal-tab-select{color:var(--leo-fg)}.terminal-tab-select>span,.terminal-tab-editor input{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-tab small,.terminal-tab-editor small{flex:0 0 auto;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10px}.terminal-tab[data-active=true] small,.terminal-tab-editor small{color:var(--leo-accent)}.terminal-tab-editor{padding:0 12px}.terminal-tab-editor input{width:min(180px,100%);border:1px solid var(--leo-accent);border-radius:3px;padding:2px 6px;color:var(--leo-fg);background:var(--leo-bg-2);box-shadow:0 0 8px var(--leo-accent-soft);font-size:12px}.icon-button{width:18px;height:18px;margin-right:6px;border-radius:3px;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.terminal-tab:hover .icon-button,.terminal-tab[data-active=true] .icon-button{opacity:1}.icon-button:hover:not(:disabled){color:var(--leo-fg)}.tab-add-button{flex:0 0 auto;width:30px;height:40px;font-size:18px;font-weight:500}.terminal-detached-pills{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:0 6px;flex:0 1 auto;min-width:0}.terminal-detached-pill{display:inline-flex;align-items:stretch;height:24px;font-size:12px;background:var(--leo-bg-2);border:1px solid var(--leo-line);border-radius:999px;overflow:hidden;color:var(--leo-fg-2);transition:border-color .12s ease,color .12s ease}.terminal-detached-pill:hover{border-color:var(--leo-accent);color:var(--leo-fg)}.terminal-detached-pill-open{padding:0 10px;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-detached-pill-open:focus-visible{outline:2px solid var(--leo-accent-soft);outline-offset:-1px}.terminal-detached-pill-delete{display:inline-flex;align-items:center;justify-content:center;width:0;padding:0;background:transparent;border:0;color:var(--leo-fg-3);font-size:14px;line-height:1;cursor:pointer;overflow:hidden;transition:width .14s ease,color .12s ease}.terminal-detached-pill:hover .terminal-detached-pill-delete,.terminal-detached-pill-delete:focus-visible{width:22px;color:var(--leo-danger)}.terminal-pane-actions{display:flex;align-items:center;gap:2px;padding:0 4px}.pane-action-button{width:28px;height:28px;align-self:center;border-radius:5px}.pane-action-button:hover:not(:disabled){border-color:var(--leo-line)}.split-icon{position:relative;display:block;width:14px;height:14px;border:1px solid currentColor;color:currentColor}.split-icon:before{position:absolute;background:currentColor;content:""}.split-icon-right:before{top:0;bottom:0;left:6px;width:1px}.split-icon-down:before{top:6px;right:0;left:0;height:1px}.workspace-body{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--leo-bg)}.workspace-placeholder,.empty-workspace,.missing-pane{display:grid;height:100%;min-height:220px;place-content:center;gap:10px;color:var(--leo-fg-3);font-family:var(--leo-font-mono)}.workspace-placeholder{display:flex;align-items:center;justify-content:center}.workspace-placeholder:before{display:inline-block;color:var(--leo-accent);animation:leo-blink 1.05s steps(2,end) infinite;content:"●"}@keyframes leo-blink{50%{opacity:0}}.empty-workspace{color:var(--leo-fg-2);text-align:center}.empty-workspace button{width:max-content;height:30px;justify-self:center;border-radius:5px;padding:0 12px;color:var(--leo-fg-2)}.split-pane{display:grid;width:100%;height:100%;min-width:0;min-height:0}.split-cell{min-width:0;min-height:0;overflow:hidden}.split-divider{position:relative;background:var(--leo-line);touch-action:none;transition:background .15s ease,box-shadow .15s ease}.split-divider[data-direction=vertical]{cursor:col-resize}.split-divider[data-direction=horizontal]{cursor:row-resize}.split-divider:before{position:absolute;inset:0;content:""}.split-divider[data-direction=vertical]:before{right:-4px;left:-4px}.split-divider[data-direction=horizontal]:before{top:-4px;bottom:-4px}.split-divider:hover,.split-divider.is-dragging{z-index:2;background:var(--leo-accent);box-shadow:0 0 10px var(--leo-accent-glow)}.split-divider-handle{position:absolute;top:50%;left:50%;width:28px;height:4px;border-radius:2px;background:transparent;transform:translate(-50%,-50%)}.split-divider[data-direction=horizontal] .split-divider-handle{width:4px;height:28px}.split-divider:hover .split-divider-handle,.split-divider.is-dragging .split-divider-handle{background:var(--leo-accent)}.terminal-pane{position:relative;display:grid;grid-template-rows:26px minmax(0,1fr);width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:var(--leo-bg);cursor:text}.terminal-pane[data-active=true]{background:linear-gradient(180deg,var(--leo-accent-soft),transparent 22%)}.terminal-pane[data-active=true]:before{position:absolute;top:0;bottom:0;left:0;z-index:1;width:2px;background:var(--leo-accent);box-shadow:0 0 14px var(--leo-accent-glow);content:"";pointer-events:none}.terminal-pane-header{display:flex;align-items:center;gap:6px;min-width:0;border-bottom:1px solid var(--leo-line);padding:0 12px;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10.5px}.terminal-pane-dot{flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:var(--leo-fg-3)}.terminal-pane[data-active=true] .terminal-pane-dot{background:var(--leo-accent);box-shadow:0 0 8px var(--leo-accent)}.terminal-pane-cwd{min-width:0;overflow:hidden;color:var(--leo-fg-2);text-overflow:ellipsis;white-space:nowrap}.terminal-pane-spacer{flex:1 1 auto}.terminal-pane-state{flex:0 0 auto;font-weight:500}.terminal-pane-state-running{color:var(--leo-ok)}.terminal-pane-state-exited{color:var(--leo-fg-3)}.terminal-pane-close{width:18px;height:18px;margin-left:4px;border-radius:3px;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.terminal-pane:hover .terminal-pane-close,.terminal-pane[data-active=true] .terminal-pane-close,.editor-pane:hover .terminal-pane-close{opacity:1}.editor-pane{display:grid;grid-template-rows:28px auto auto minmax(0,1fr);width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:var(--leo-bg)}.editor-pane-header{display:flex;align-items:center;gap:8px;min-width:0;border-bottom:1px solid var(--leo-line);padding:0 10px;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10.5px}.editor-pane-header strong{min-width:0;overflow:hidden;color:var(--leo-fg);font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.editor-pane-header button:not(.terminal-pane-close){min-height:20px;border:1px solid var(--leo-line-2);border-radius:4px;padding:0 8px;color:var(--leo-fg-2);background:transparent;font-size:10.5px}.editor-pane-header button:not(.terminal-pane-close):hover:not(:disabled){border-color:#5eead48c;color:var(--leo-fg);background:var(--leo-accent-soft)}.editor-pane-alert{border-bottom:1px solid rgba(248,113,113,.25);padding:7px 10px;color:#fca5a5;background:#f8717114;font-size:11px}.editor-pane-textarea{grid-row:4;width:100%;height:100%;min-width:0;min-height:0;border:0;padding:12px;resize:none;color:var(--leo-fg);background:var(--leo-bg);font-family:var(--leo-font-mono);font-size:12px;line-height:1.5;outline:none}.editor-markdown-preview{grid-row:4;width:100%;height:100%;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;border:0;padding:14px 16px;color:var(--leo-fg);background:var(--leo-bg);font-size:13px;line-height:1.5;-webkit-overflow-scrolling:touch}.editor-markdown-preview :first-child{margin-top:0}.editor-markdown-preview :last-child{margin-bottom:0}.xterm-container{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;overscroll-behavior:contain;padding:3px;touch-action:none}.xterm{width:100%;height:100%}.mobile-terminal-key-bar{display:none}.mobile-terminal-key{display:grid;min-width:34px;height:30px;place-items:center;border:1px solid var(--leo-line-2);border-radius:5px;padding:0 8px;color:var(--leo-fg-2);background:#0d1216f0;font-family:var(--leo-font-mono);font-size:11px;cursor:pointer}.mobile-terminal-key:hover:not(:disabled),.mobile-terminal-key[data-active=true]{border-color:#5eead48c;color:var(--leo-fg);background:var(--leo-accent-soft)}.terminal-status-bar{display:flex;align-items:center;gap:8px;min-width:0;border-top:1px solid var(--leo-line);padding:0 16px;color:var(--leo-fg-3);background:var(--leo-bg-sidebar);font-family:var(--leo-font-mono);font-size:10.5px}.terminal-status-cwd{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-status-separator{opacity:.45}.terminal-status-spacer{flex:1 1 auto}.terminal-status-connected{color:var(--leo-accent)}.terminal-status-reload-button{display:grid;width:20px;height:18px;place-items:center;border:1px solid var(--leo-line-2);border-radius:4px;padding:0;color:var(--leo-fg-2);background:transparent;cursor:pointer}.terminal-status-reload-icon{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.terminal-status-reload-button:hover:not(:disabled){border-color:#5eead48c;color:var(--leo-fg);background:var(--leo-accent-soft)}.upload-toast{position:absolute;right:16px;bottom:34px;z-index:12;display:grid;width:min(360px,calc(100% - 32px));max-height:min(360px,calc(100% - 64px));overflow:hidden;border:1px solid var(--leo-line-2);border-radius:8px;color:var(--leo-fg);background:#0a0d10f5;box-shadow:0 18px 48px #00000080,0 0 0 1px #ffffff05}.upload-toast-partial,.upload-toast-failed{border-color:#f8717161}.upload-toast-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-bottom:1px solid var(--leo-line);padding:10px 10px 9px 12px}.upload-toast-header strong{min-width:0;overflow:hidden;color:var(--leo-fg);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.upload-toast-header button{display:grid;width:22px;height:22px;place-items:center;border:1px solid transparent;border-radius:4px;padding:0;color:var(--leo-fg-3);background:transparent;cursor:pointer}.upload-toast-header button:hover{color:var(--leo-fg);background:var(--leo-bg-2)}.upload-toast-body{display:grid;gap:9px;min-width:0;overflow:auto;overscroll-behavior:contain;padding:10px 12px 12px;font-family:var(--leo-font-mono);font-size:11px;-webkit-overflow-scrolling:touch}.upload-toast-body p{margin:0}.upload-progress-row{display:flex;min-width:0;justify-content:space-between;gap:12px;color:var(--leo-fg-2)}.upload-progress-track{height:4px;overflow:hidden;border-radius:2px;background:var(--leo-line)}.upload-progress-track span{display:block;height:100%;max-width:100%;background:var(--leo-accent);transition:width .12s ease}.upload-toast-destination,.upload-toast-muted{min-width:0;overflow:hidden;color:var(--leo-fg-3);text-overflow:ellipsis;white-space:nowrap}.upload-result-list{display:grid;gap:6px;min-width:0;margin:0;padding:0;list-style:none}.upload-result-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;color:var(--leo-fg-2)}.upload-result-list li:before{width:5px;height:5px;border-radius:50%;background:var(--leo-ok);content:""}.upload-result-list li[data-status=failed]:before{background:var(--leo-danger)}.upload-result-path{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-result-error{max-width:140px;overflow:hidden;color:#fca5a5;text-overflow:ellipsis;white-space:nowrap}.auth-screen{position:relative;display:grid;width:100%;min-height:var(--leominal-viewport-height);place-items:center;overflow:hidden;padding:24px 24px calc(24px + var(--leominal-safe-area-bottom));color:var(--leo-fg);background:var(--leo-bg)}.auth-background{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-grid{position:absolute;inset:0;background-image:linear-gradient(var(--leo-line) 1px,transparent 1px),linear-gradient(90deg,var(--leo-line) 1px,transparent 1px);background-size:32px 32px;opacity:.22;-webkit-mask-image:radial-gradient(ellipse at 50% 38%,#000 0,transparent 70%);mask-image:radial-gradient(ellipse at 50% 38%,#000 0,transparent 70%)}.auth-glow{position:absolute;top:30%;left:50%;width:720px;height:720px;background:radial-gradient(circle,var(--leo-accent-soft),transparent 60%);filter:blur(20px);transform:translate(-50%,-50%)}.auth-panel{position:relative;display:grid;width:min(440px,100%);gap:18px;border:1px solid var(--leo-line);border-radius:8px;padding:28px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);box-shadow:0 30px 80px #0000008c,0 0 0 1px #ffffff05;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-header{display:grid;gap:18px;border-bottom:1px dashed var(--leo-line);padding-bottom:18px}.auth-brand{display:flex;align-items:center;gap:10px}.eyebrow{margin:0;color:var(--leo-accent);font-family:var(--leo-font-mono);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.auth-host{margin:2px 0 0;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:10.5px}h1{margin:0;color:var(--leo-fg);font-size:22px;line-height:1.2}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:6px;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:11px}.auth-form input{width:100%;height:38px;border:1px solid var(--leo-line-2);border-radius:6px;padding:0 12px;color:var(--leo-fg);background:var(--leo-bg);font-family:var(--leo-font-mono);font-size:14px;letter-spacing:.16em;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.auth-form input:focus{border-color:var(--leo-accent);background:var(--leo-bg-2);box-shadow:0 0 0 3px var(--leo-accent-soft)}.button-row,.workspace-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.auth-form button,.button-row button{display:inline-flex;align-items:center;justify-content:center;height:38px;border-radius:6px;padding:0 18px;font-family:var(--leo-font-mono);font-size:12px;letter-spacing:.04em;cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease}.auth-form button[type=submit]{border:1px solid var(--leo-accent);color:var(--leo-accent);background:var(--leo-accent-soft)}.auth-form button[type=submit]:hover:not(:disabled){color:#062423;background:var(--leo-accent);box-shadow:0 0 16px var(--leo-accent-glow)}.secondary-button,.button-row .secondary-button{border:1px solid var(--leo-line-2);color:var(--leo-fg-2);background:transparent}.muted,.form-error{margin:0;color:var(--leo-fg-3);font-family:var(--leo-font-mono);font-size:11px}.form-error{border:1px solid rgba(248,113,113,.25);border-radius:5px;padding:6px 10px;color:var(--leo-danger);background:#f8717114}@media(max-width:760px){input,textarea,select,.xterm .xterm-helper-textarea{font-size:16px}.terminal-shell,.terminal-shell[data-collapsed=true]{display:block;height:var(--leominal-viewport-height);min-height:var(--leominal-viewport-height)}.workspace-backdrop{position:fixed;inset:0;z-index:20;min-height:0;border:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.terminal-shell[data-sidebar-open=true] .workspace-backdrop{display:block}.workspace-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:min(280px,86vw);padding-bottom:var(--leominal-safe-area-bottom);transform:translate(-100%);transition:transform .18s ease;box-shadow:12px 0 32px #00000080}.terminal-shell[data-sidebar-open=true] .workspace-sidebar{transform:translate(0)}.terminal-shell[data-collapsed=true] .workspace-brand{grid-template-columns:auto 1fr auto;justify-items:stretch;padding:16px 16px 14px}.terminal-shell[data-collapsed=true] .workspace-list{align-items:stretch}.terminal-shell[data-collapsed=true] .workspace-select-button{justify-items:start;padding:7px 16px 7px 14px}.terminal-shell[data-collapsed=true] .workspace-initial,.sidebar-collapse-button{display:none}.sidebar-drawer-close-button{display:grid}.workspace-brand-name,.terminal-shell[data-collapsed=true] .workspace-brand-name{display:block}.terminal-shell[data-collapsed=true] .workspace-sidebar-header,.terminal-shell[data-collapsed=true] .workspace-sidebar-footer{display:flex}.terminal-main{height:100%;grid-template-rows:48px minmax(0,1fr) 24px}.terminal-tabs{min-height:48px;padding:0 4px}.mobile-menu-button{display:grid;width:40px;height:40px}.terminal-tab-select,.terminal-tab-editor{height:48px;max-width:140px;padding:0 6px 0 12px}.icon-button{width:26px;height:26px;opacity:1}.tab-add-button{width:40px;height:48px}.pane-action-button{width:38px;height:38px}.terminal-pane-close{width:26px;height:26px;opacity:1}.terminal-pane[data-active=true] .xterm-container{padding-bottom:calc(46px + var(--leominal-safe-area-bottom))}.mobile-terminal-key-bar{position:absolute;right:8px;bottom:max(8px,var(--leominal-safe-area-bottom));left:8px;z-index:10;display:flex;max-width:calc(100% - 16px);align-items:center;justify-content:center;gap:4px;overflow-x:auto;overscroll-behavior:contain;border:1px solid rgba(42,51,64,.85);border-radius:8px;padding:4px;background:#08090bdb;box-shadow:0 10px 26px #00000059;scrollbar-width:none;-webkit-overflow-scrolling:touch}.mobile-terminal-key-bar::-webkit-scrollbar{display:none}:root[data-leominal-keyboard-visible=true] .terminal-pane[data-active=true] .xterm-container{padding-bottom:3px}:root[data-leominal-keyboard-visible=true] .mobile-terminal-key-bar{position:fixed;bottom:calc(var(--leominal-keyboard-inset-bottom) + 4px)}.terminal-status-bar{height:24px;padding:0 12px}}
