/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.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;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.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,.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.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}*{box-sizing:border-box}:root{--keyboard-inset: 0px;--visual-viewport-height: 100vh;--visual-viewport-top: 0px;--master-pane-width: 600px}html,body,#root{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{margin:0;font:14px system-ui,sans-serif;background:#f4f6f8;color:#172026}button,input,select,textarea{font:inherit}button,select,input{border:1px solid #c9d2d8;background:#fff;min-height:34px;padding:0 10px;border-radius:6px}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}button:disabled{cursor:not-allowed;opacity:.55}input{min-width:0}.app{height:100%;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:none}.toolbar{min-height:52px;display:flex;align-items:center;padding:8px 14px;border-bottom:1px solid #d8e0e5;background:#fff}.toolbar strong{font-size:16px}.toolbarActions{margin-left:auto;display:flex;gap:8px}.toolbarActions button{width:38px;min-height:34px;padding:0}.mobileChromeToggle{display:none}.cwdField{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:6px}.cwdField button{padding:0}.check{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.check input{min-height:0;width:16px;height:16px}.activeButton{background:#e7f1ee;border-color:#8db7a9}.statusLine{min-height:32px;display:flex;align-items:center;padding:0 14px;border-bottom:1px solid #d8e0e5;color:#355148;background:#eef6f3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layout{flex:1;display:grid;grid-template-columns:minmax(600px,var(--master-pane-width)) 8px minmax(0,1fr);min-height:0;overflow:hidden}.masterPane{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid #d8e0e5;background:#fff}.paneResizer{min-width:8px;min-height:0;align-self:stretch;position:relative;z-index:3;cursor:col-resize;background:#f8fafb;border-right:1px solid #d8e0e5;touch-action:none}.paneResizer:before{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:#c9d2d8}.paneResizer:hover:before,.paneResizer:focus-visible:before{background:#5f8f80}.paneResizer:focus-visible{outline:2px solid #8db7a9;outline-offset:-2px}.paneResizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.paneResizing iframe,.paneResizing .xtermHost{pointer-events:none}.paneTabs{min-height:46px;display:flex;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid #d8e0e5;background:#f8fafb}.paneTabs button{min-height:30px;font-size:13px}.sessionFilterButton{margin-left:auto;width:82px;flex:0 0 82px}.iconButton{width:32px;padding:0}.sessions{flex:1;min-height:0;background:#fff;overflow:auto;overscroll-behavior:contain}.row{width:100%;display:grid;grid-template-columns:90px 78px minmax(110px,1fr) 76px 82px 52px;gap:8px;align-items:center;text-align:left;border:0;border-bottom:1px solid #edf1f3;border-radius:0;padding:10px 12px;color:inherit}.row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row.header{position:sticky;top:0;z-index:1;min-height:34px;font-size:12px;color:#66737b;background:#f8fafb}button.row{min-height:42px;justify-content:stretch}.row.active{background:#e7f1ee}.pill{display:inline-flex;width:fit-content;max-width:100%;min-height:22px;align-items:center;border-radius:999px;padding:0 8px;background:#edf1f3}.pill.running{background:#dcf2e6;color:#17613b}.pill.stopped{background:#eceff1;color:#515c63}.pill.crashed{background:#fee6e4;color:#9d2d25}.connectionWorkspace{grid-column:1 / -1;min-width:0;min-height:0;display:flex;flex-direction:column;background:#fff}.connectionAddButton{margin-left:auto}.connectionList{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.connectionRow{min-height:48px;display:grid;grid-template-columns:minmax(160px,220px) minmax(180px,1fr) 90px 44px;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid #edf1f3}.connectionHeader{position:sticky;top:0;z-index:1;min-height:34px;color:#66737b;background:#f8fafb;font-size:12px}.connectionRow.active{background:#e7f1ee}.connectionSelectButton{min-width:0;justify-content:flex-start;padding:0;border:0;background:transparent;color:inherit}.connectionSelectButton span,.connectionUrlCell{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connectionUrlCell{color:#41515a;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.workPane{min-width:0;min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px;overflow:hidden}.mobileBackButton{display:none}.terminalBox{flex:1;height:100%;min-height:0;display:flex;flex-direction:column;background:#101214;color:#fff;border-radius:8px;overflow:hidden}.terminalTop{min-height:44px;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#1a1f22;border-bottom:1px solid #2e363b}.sessionTitle{min-width:0;margin-right:auto;display:grid;gap:1px}.sessionTitle span,.sessionTitle small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessionTitle small{color:#93a0a7;font-size:12px}.terminalTop button{min-height:30px;background:#252c30;color:#fff;border-color:#394247}.terminalTop button.activeDark{background:#365148;border-color:#5c8375}.xtermShell{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.xtermSurface{flex:1;min-height:0;display:flex}.xtermHost{flex:1;min-height:0;overflow:hidden;overscroll-behavior:contain;touch-action:none}.xtermHost .xterm{height:100%;padding:8px 8px 10px}.xtermHost .xterm-viewport{overflow-y:hidden;overscroll-behavior:contain;scroll-behavior:auto}.terminalScrollOverlay{flex:0 0 34px;width:34px;margin:8px 8px 8px 0;align-self:stretch;display:grid;grid-template-rows:minmax(80px,1fr);pointer-events:auto}.terminalScrollOverlay.disabled{opacity:.45;pointer-events:none}.terminalScrollRail{position:relative;width:34px;border:1px solid #394247;border-radius:999px;background:#0f1214bd;touch-action:none}.terminalScrollThumb{position:absolute;left:7px;width:18px;min-height:28px;border-radius:999px;background:#8fa0a8;box-shadow:0 0 0 1px #0000002e}.terminalKeyBar{min-height:44px;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;padding:6px max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid #2e363b;background:#171c1f}.terminalKeyBar button{min-width:0;min-height:32px;padding:0 4px;border-color:#394247;background:#252c30;color:#fff;font-size:11px}.terminalKeyBar button.activeKey{border-color:#8db7a9;background:#365148}.logPane{flex:1;min-height:0;display:flex;flex-direction:column;background:#101214}.logBody{flex:1;min-height:0;margin:0;padding:10px;overflow:auto;overscroll-behavior:contain;color:#e8ecef;background:#101214;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.logActions{min-height:38px;display:flex;align-items:center;gap:10px;padding:6px 10px;border-top:1px solid #2e363b;color:#93a0a7;background:#1a1f22;font-size:12px}.logActions button{margin-left:auto;min-height:28px;background:#252c30;color:#fff;border-color:#394247}.logError{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffb1aa}.empty{height:100%;display:grid;place-items:center;gap:10px;color:#65727a}.login{min-height:100vh;display:grid;place-items:center}.login form{width:min(360px,calc(100vw - 32px));display:grid;gap:10px}.login h1{margin:0 0 8px;font-size:32px}.loginError{min-height:32px;display:flex;align-items:center;padding:7px 10px;border:1px solid #f6c8c3;border-radius:6px;color:#9d2d25;background:#feecea}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0f161b6b;overscroll-behavior:contain}.folderPicker{width:min(720px,calc(100vw - 40px));max-height:min(720px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #c9d2d8;border-radius:8px;background:#fff;box-shadow:0 18px 48px #0f161b33}.sessionModal{width:min(520px,calc(100vw - 40px));display:grid;gap:12px;overflow:hidden;border:1px solid #c9d2d8;border-radius:8px;background:#fff;box-shadow:0 18px 48px #0f161b33}.modalTop{min-height:48px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #d8e0e5}.modalTop strong{margin-right:auto}.modalContext{margin:-4px 12px 0;padding:8px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #e7ecef;border-radius:6px;color:#41515a;background:#f8fafb;font-size:12px}.fieldLabel{display:grid;gap:6px;padding:0 12px}.fieldLabel span{font-size:12px;color:#41515a}.sessionModal .check{padding:0 12px}.modalActions{display:flex;justify-content:flex-end;gap:8px;padding:4px 12px 12px}.folderTop{min-height:48px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #d8e0e5}.folderTop strong{margin-right:auto}.folderPath{min-height:38px;padding:10px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#41515a;background:#f8fafb;border-bottom:1px solid #e7ecef;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.folderActions{display:flex;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid #e7ecef}.folderCreate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px;border-bottom:1px solid #e7ecef}.folderError{min-height:32px;display:flex;align-items:center;padding:0 12px;color:#9d2d25;background:#feecea;border-bottom:1px solid #f6c8c3}.folderList{min-height:220px;overflow:auto;overscroll-behavior:contain}.folderRow{width:100%;min-height:38px;display:grid;grid-template-columns:20px minmax(0,1fr);justify-content:stretch;gap:8px;border:0;border-radius:0;border-bottom:1px solid #edf1f3;text-align:left}.folderRow span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folderEmpty{height:160px;display:grid;place-items:center;color:#66737b}.fileWorkspace{height:100%;min-height:0;display:grid;grid-template-columns:minmax(600px,var(--master-pane-width)) 8px minmax(0,1fr);grid-column:1 / -1;overflow:hidden;background:#fff}.fileExplorer{background:#f8fafb}.fileExplorerPath{min-height:34px;padding:8px 10px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#41515a;background:#f8fafb;border-bottom:1px solid #e7ecef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fileExplorerActions{display:flex;gap:6px;align-items:center;padding:8px 10px;border-bottom:1px solid #e7ecef}.fileExplorerActions button{min-height:28px;font-size:12px;padding:0 8px}.fileRefreshButton{margin-left:auto}.fileExplorerList{flex:1;overflow:auto;overscroll-behavior:contain}.fileEntryRow{width:100%;min-height:34px;display:grid;grid-template-columns:14px 18px minmax(0,1fr);gap:6px;padding:0 10px 0 8px;border:0;border-radius:0;border-bottom:1px solid #edf1f3;text-align:left;font-size:13px;color:#172026}.fileEntryRow span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fileEntryRow.active{background:#e7f1ee}.fileEntryLoading{min-height:28px;display:flex;align-items:center;color:#66737b;font-size:12px}.fileEditorSurface{display:flex;flex-direction:column;min-height:0;padding:12px;background:#fff}.fileTabs{min-height:38px;display:flex;align-items:center;gap:6px;padding:0 8px 0 0;border-bottom:1px solid #d8e0e5;background:#f8fafb}.fileTab{align-self:stretch;min-width:0;max-width:260px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border-right:1px solid #d8e0e5;background:#fff;font-size:13px}.fileTab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fileTab.dirty:after{content:"";width:8px;height:8px;border-radius:50%;background:#d6862f}.fileTab.muted{color:#66737b;background:#f8fafb}.fileTabSpacer{flex:1;min-width:0}.fileTabs button{min-height:28px;font-size:12px;padding:0 10px}.fileBreadcrumb{min-height:30px;padding:7px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#41515a;border-bottom:1px solid #e7ecef}.fileEditorTextarea{flex:1;min-height:0;resize:none;border:0;border-radius:0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;outline:none;color:#172026}.fileStatusBar{min-height:26px;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:0 10px;border-top:1px solid #d8e0e5;color:#41515a;background:#f8fafb;font-size:12px}.fileEditorEmpty{flex:1;display:grid;place-items:center;gap:10px;color:#65727a}.fileImageViewer{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;overscroll-behavior:contain;background:#f0f2f4}.fileImageViewer img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;box-shadow:0 2px 12px #00000026}.fileMarkdownPreview{flex:1;min-height:0;padding:20px 24px;overflow:auto;overscroll-behavior:contain;font-size:14px;line-height:1.75;color:#172026}.fileMarkdownPreview h1,.fileMarkdownPreview h2,.fileMarkdownPreview h3,.fileMarkdownPreview h4{margin:1.2em 0 .5em;line-height:1.3}.fileMarkdownPreview h1{font-size:22px;border-bottom:1px solid #d8e0e5;padding-bottom:6px}.fileMarkdownPreview h2{font-size:18px;border-bottom:1px solid #e7ecef;padding-bottom:4px}.fileMarkdownPreview h3{font-size:15px}.fileMarkdownPreview p{margin:0 0 12px}.fileMarkdownPreview ul,.fileMarkdownPreview ol{padding-left:22px;margin:0 0 12px}.fileMarkdownPreview li{margin-bottom:4px}.fileMarkdownPreview code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.87em;padding:2px 5px;border-radius:4px;background:#edf1f3;color:#1a4a3a}.fileMarkdownPreview pre{background:#f4f6f8;border:1px solid #d8e0e5;border-radius:6px;padding:12px 14px;overflow-x:auto;margin:0 0 14px}.fileMarkdownPreview pre code{background:none;padding:0;font-size:13px;color:#172026}.fileMarkdownPreview blockquote{border-left:3px solid #8db7a9;padding-left:14px;margin:0 0 14px;color:#41515a}.fileMarkdownPreview table{border-collapse:collapse;width:100%;margin:0 0 14px}.fileMarkdownPreview th,.fileMarkdownPreview td{border:1px solid #d8e0e5;padding:6px 10px;text-align:left}.fileMarkdownPreview th{background:#f4f6f8;font-weight:600}.fileMarkdownPreview img{max-width:100%;border-radius:4px}.fileMarkdownPreview hr{border:0;border-top:1px solid #d8e0e5;margin:16px 0}.fileMarkdownPreview a{color:#2563a8}.fileCodeHighlight{flex:1;min-height:0;margin:0;padding:0;overflow:auto;overscroll-behavior:contain;border-radius:0;border:0}.fileCodeHighlight code.hljs{display:block;min-height:100%;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;border-radius:0}.fileStatusLang{margin-left:auto}.codeEditorWrapper{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.codeEditorWrapper .cm-editor{flex:1;min-height:0;height:100%}.codeEditorWrapper .cm-editor.cm-focused{outline:none}@media(max-width:820px){button,select,input{min-height:40px}html,body,#root{height:var(--visual-viewport-height);min-height:var(--visual-viewport-height)}.app{height:var(--visual-viewport-height);min-height:var(--visual-viewport-height);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.toolbar{gap:8px;flex-wrap:wrap;padding:8px max(10px,env(safe-area-inset-right)) 8px max(10px,env(safe-area-inset-left))}.toolbar strong{flex:0 0 auto}.toolbarActions{margin-left:auto}.toolbarActions button,.iconButton{width:40px;min-height:40px}.mobileChromeToggle{position:fixed;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));z-index:80;width:42px;min-height:42px;padding:0;border-color:#394247;background:#14191cf0;color:#fff;box-shadow:0 8px 24px #0f161b47}.mobileDetailOpen .mobileChromeToggle{display:inline-flex}.mobileDetailOpen:not(.mobileChromeOpen)>.toolbar,.mobileDetailOpen:not(.mobileChromeOpen)>.statusLine{display:none}.paneTabs{gap:6px;overflow-x:auto;padding:8px 10px;scrollbar-width:none}.paneTabs::-webkit-scrollbar{display:none}.paneTabs button{flex:0 0 auto;min-height:38px}.statusLine{padding:7px 10px;white-space:normal}.layout{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.masterPane{border-right:0}.paneResizer,.layout.showDetail .masterPane{display:none}.layout:not(.showDetail) .workPane{display:none}.workPane{padding:8px}.mobileDetailOpen:not(.mobileChromeOpen){padding-left:0;padding-right:0}.mobileDetailOpen:not(.mobileChromeOpen) .layout.showDetail>.workPane{gap:0;padding:0}.mobileDetailOpen:not(.mobileChromeOpen) .terminalBox{border-radius:0}.mobileDetailOpen:not(.mobileChromeOpen) .terminalTop{display:none}.mobileBackButton{min-height:40px;display:inline-flex;align-self:flex-start}.mobileDetailOpen:not(.mobileChromeOpen) .mobileBackButton{display:none}.terminalTop{flex-wrap:wrap}.sessionTitle{flex-basis:100%}.terminalTop button{min-height:38px}.xtermShell{gap:0}.xtermSurface{min-height:0}.xtermHost{min-width:0}.terminalScrollOverlay{flex:0 0 28px;width:28px;margin:10px 0 10px -8px;grid-template-rows:minmax(96px,1fr)}.xtermHost .xterm{padding-right:0}.terminalScrollRail{width:28px}.terminalScrollThumb{left:6px;width:14px}.modalBackdrop{align-items:end;top:var(--visual-viewport-top);height:var(--visual-viewport-height);padding:10px max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.sessionModal,.folderPicker{width:100%;max-height:calc(var(--visual-viewport-height) - 20px - env(safe-area-inset-bottom))}.modalActions{display:grid;grid-template-columns:1fr 1fr}.folderCreate{grid-template-columns:1fr}.fileWorkspace{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.fileExplorer{border-right:0}.fileEditorSurface{grid-column:1;grid-row:1;padding:8px}.fileWorkspace.showDetail .fileExplorer{display:none}.fileWorkspace:not(.showDetail) .fileEditorSurface{display:none}.fileTabs{gap:6px;min-height:44px;padding-left:8px;overflow-x:auto;scrollbar-width:none}.fileTabs::-webkit-scrollbar{display:none}.fileTab{flex:0 1 180px}.fileTabs button{flex:0 0 auto;min-height:38px}.codeEditorWrapper .cm-gutters{min-width:0}.codeEditorWrapper .cm-lineNumbers .cm-gutterElement{min-width:28px;padding:0 6px 0 2px}.connectionRow{grid-template-columns:minmax(92px,1fr) minmax(110px,1.4fr) 66px 40px;gap:7px;padding:8px 10px}.connectionHeader{min-height:32px}.connectionUrlCell{font-size:11px}.row{grid-template-columns:74px minmax(90px,1fr) 68px 76px;min-width:0;padding:9px 10px}.row span:nth-child(2),.row span:nth-child(6){display:none}}@media(max-width:430px){body{font-size:13px}.paneTabs button{padding:0 9px}.sessionFilterButton{margin-left:0}.connectionRow{grid-template-columns:minmax(86px,1fr) minmax(96px,1.2fr) 58px 40px}.connectionRow .pill{font-size:12px}.row{grid-template-columns:68px minmax(86px,1fr) 56px 70px;gap:6px}.pill{padding:0 6px}.terminalTop{gap:6px;padding:6px 8px}.fileExplorerActions{overflow-x:auto;scrollbar-width:none}.fileExplorerActions::-webkit-scrollbar{display:none}.fileMarkdownPreview{padding:14px}.fileStatusBar{gap:8px;padding:0 8px}}
