/**
 * 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:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.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}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#080a0d;color:#eef2f7;font-synthesis:none;--bg: #080a0d;--surface: #0e1116;--surface-2: #13171d;--surface-3: #181d24;--line: #272e38;--muted: #7f8997;--text: #e9edf3;--orange: #ff7518;--orange-soft: #2a170c;--green: #46d784;--red: #ec666d;--yellow: #e4ad50}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overflow:hidden;background:radial-gradient(circle at 78% 0%,rgba(255,117,24,.07),transparent 30%),var(--bg);color:var(--text)}button,input,textarea{font:inherit}button{border:1px solid #303844;background:#181d24;color:#e6ebf2;border-radius:10px;padding:9px 13px;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}button:hover:not(:disabled){background:#20262f;border-color:#47515e}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.46;cursor:default}button.primary{background:linear-gradient(180deg,#ff852d,#f26708);color:#17100a;border-color:#ff8f42;font-weight:800;box-shadow:0 9px 24px #ff690a29}button.primary:hover:not(:disabled){background:linear-gradient(180deg,#ff984b,#ff7214);border-color:#ffa260}button.secondary{background:#171b21}button.danger{color:#ff9ba0;border-color:#69333a;background:#2b1519}button.full{width:100%}.small-button{padding:7px 10px!important;font-size:12px}input,textarea{width:100%;border:1px solid #313946;background:#0b0e12;color:#f0f3f8;border-radius:10px;padding:10px 11px;outline:none}input:focus,textarea:focus{border-color:#a6521c;box-shadow:0 0 0 3px #ff75181a}label{display:grid;gap:7px;color:#aeb7c3;font-size:12px;font-weight:650}code{font-family:Cascadia Mono,Consolas,monospace}.brand-mark{width:58px;height:48px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#ff8d31,#f26106);color:#16100b;font-weight:950;font-size:16px;letter-spacing:1px;box-shadow:inset 0 1px #ffffff40,0 12px 25px #ff640a2e}.product-brand{display:flex;align-items:center;gap:14px}.product-brand.compact .brand-mark{width:44px;height:38px;border-radius:11px;font-size:13px}.brand-copy{display:grid;gap:3px}.brand-copy strong{font-size:18px;letter-spacing:-.2px}.brand-copy span{color:var(--muted);font-size:12px}.product-brand.compact .brand-copy strong{font-size:15px}.product-brand.compact .brand-copy span{font-size:11px}.login-page{min-height:100%;display:grid;place-items:center;padding:26px;background:radial-gradient(circle at 50% 15%,rgba(255,117,24,.12),transparent 34%),linear-gradient(180deg,#0b0e12,#07090b)}.login-card{width:min(450px,100%);padding:30px;border:1px solid #2b323c;border-radius:22px;background:#0f1217f0;box-shadow:0 34px 100px #0000008c}.login-heading{margin:28px 0 22px}.login-heading h1{margin:0 0 8px;font-size:27px}.login-heading p{margin:0;color:#8993a0;line-height:1.55}.login-card form{display:grid;gap:15px}.form-error,.inline-error{background:#2b1519;color:#ff9ba0;border:1px solid #67343a}.form-success{background:#10251a;color:#78dda5;border:1px solid #24583a}.form-error,.form-success{margin-top:14px;border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.splash{width:100%;height:100%;display:grid;place-items:center;background:#080a0d}.app-shell{height:100%;display:grid;grid-template-columns:300px minmax(0,1fr)}.sidebar{min-width:0;background:#0b0d11fa;border-right:1px solid #232933;padding:17px 13px 12px;display:grid;grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto;gap:10px}.sidebar-topline{display:flex;align-items:center;justify-content:space-between;padding:2px 5px 8px;color:#687383;font-size:10px;font-weight:850;letter-spacing:1.5px}.version-chip{border:1px solid #303744;border-radius:999px;padding:3px 7px;color:#8c97a6;letter-spacing:0}.overview-button{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;text-align:left;padding:12px;background:#11151a}.overview-button.active{border-color:#75411e;background:linear-gradient(90deg,#25160d,#15171b);box-shadow:inset 3px 0 var(--orange)}.overview-button span:last-child{min-width:0;display:grid;gap:3px}.overview-button strong{font-size:13px}.overview-button small{color:#778190;font-size:10px}.overview-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#20252d;color:#ff8c3d;font-size:17px}.add-server{background:var(--orange-soft);border-color:#6f3918;color:#ff9a55;font-weight:850;text-align:left}.server-search{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;padding:0 10px;border:1px solid #2a313b;border-radius:10px;background:#0b0e12;color:#677181}.server-search input{border:0;padding:9px 0;box-shadow:none;background:transparent;font-size:12px}.server-list-heading{display:flex;justify-content:space-between;padding:5px 5px 0;color:#667181;font-size:10px;font-weight:800;letter-spacing:1px}.server-list{overflow-y:auto;padding-right:3px;display:grid;align-content:start;gap:7px}.server-card{width:100%;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;padding:11px 10px;background:transparent;border-color:transparent}.server-card:hover{background:#14181e!important}.server-card.active{background:#1a1d22;border-color:#50301d;box-shadow:inset 3px 0 var(--orange)}.server-card-text{min-width:0;display:grid;gap:4px}.server-card-text strong,.server-card-text small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.server-card-text strong{font-size:13px}.server-card-text small{color:#77818e;font-size:10px}.server-card-side{display:grid;gap:3px;justify-items:end;color:#798493;font-size:9px;white-space:nowrap}.server-card-side small{color:#9b6b49}.no-servers{color:#747f8d;border:1px dashed #2b323d;border-radius:11px;padding:16px 12px;font-size:12px;line-height:1.5}.sidebar-footer{border-top:1px solid #252b34;padding-top:11px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.sidebar-footer button{padding:8px 6px;font-size:11px}.status-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:#68717e;box-shadow:0 0 0 3px #ffffff09}.status-dot.large{width:12px;height:12px}.status-dot.online{background:var(--green);box-shadow:0 0 0 4px #46d7841f,0 0 16px #46d78459}.status-dot.offline{background:var(--red);box-shadow:0 0 0 4px #ec666d1a}.status-dot.checking{background:var(--yellow);animation:pulse 1.2s infinite}.status-dot.disabled{background:#68717e}@keyframes pulse{50%{opacity:.35}}.workspace{min-width:0;min-height:0;display:grid;grid-template-rows:70px minmax(0,1fr);position:relative}.site-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px;border-bottom:1px solid #242b34;background:#0c0f13e6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.site-header-status{display:flex;align-items:center;gap:9px;color:#8a95a3;font-size:12px}.site-header-status strong{color:#dce2ea}.header-divider{height:20px;width:1px;background:#303742;margin:0 4px}.current-user{color:#bdc5cf}.workspace-content{min-width:0;min-height:0;overflow:auto}.global-notice{position:absolute;z-index:50;top:80px;left:50%;transform:translate(-50%);padding:10px 12px;border-radius:10px;display:flex;align-items:center;gap:12px;font-size:12px;box-shadow:0 14px 38px #00000073}.global-notice button{background:none;border:0;padding:0;font-size:18px;color:inherit}.global-notice.error{background:#32191d;border:1px solid #7a383f;color:#ffadb1}.global-notice.success{background:#11271b;border:1px solid #286443;color:#83e2ad}.dashboard-view,.server-view{min-height:100%;padding:22px}.view-heading,.server-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.view-heading h1,.server-heading h1{margin:3px 0 5px;font-size:27px;letter-spacing:-.6px}.view-heading p,.server-heading p{margin:0;color:#828d9b;font-size:13px}.eyebrow{color:#b46a37;font-size:9px;letter-spacing:1.7px;font-weight:900}.server-identity{display:flex;gap:13px;align-items:center}.header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-grid article{position:relative;overflow:hidden;min-height:112px;padding:17px 18px;border:1px solid #29313b;border-radius:15px;background:linear-gradient(145deg,#12161c,#0d1014);display:grid;align-content:space-between}.summary-grid article>span{color:#818c9a;font-size:11px}.summary-grid strong{font-size:31px;line-height:1}.summary-grid strong small{color:#798493;font-size:14px;font-weight:600}.summary-indicator{position:absolute;top:17px;right:17px;width:9px;height:9px;border-radius:50%;background:#697380;box-shadow:0 0 18px currentColor}.summary-indicator.online{background:var(--green);color:var(--green)}.summary-indicator.offline{background:var(--red);color:var(--red)}.summary-indicator.warning{background:var(--yellow);color:var(--yellow)}.summary-indicator.neutral{background:#6398e5;color:#6398e5}.monitor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:13px;padding-bottom:24px}.monitor-card{min-width:0;border:1px solid #29313b;border-radius:16px;background:linear-gradient(150deg,#11151a,#0b0e12);box-shadow:0 18px 45px #0000002e;padding:15px;display:grid;gap:13px}.monitor-card.online{border-color:#294234}.monitor-card.offline{border-color:#4d2b30}.monitor-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.monitor-title{display:flex;align-items:center;gap:10px;min-width:0}.monitor-title h3{margin:0;font-size:15px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monitor-title p{margin:3px 0 0;color:#778290;font-size:10px}.status-badge{border:1px solid #37404b;border-radius:999px;padding:5px 8px;color:#8e99a7;font-size:9px;white-space:nowrap}.status-badge.online{color:#75dda3;border-color:#29533b;background:#102219}.status-badge.offline{color:#f18b91;border-color:#603038;background:#281417}.status-badge.checking{color:#e2b563;border-color:#5b4628;background:#261e11}.warning-row{display:flex;flex-wrap:wrap;gap:6px}.warning-row span{color:#f0b76a;background:#2a1d0e;border:1px solid #65421d;border-radius:999px;padding:4px 7px;font-size:9px}.metric-stack{display:grid;gap:11px}.metric-bar{display:grid;gap:5px}.metric-bar-heading{display:flex;justify-content:space-between;align-items:center;color:#9aa5b2;font-size:10px}.metric-bar-heading strong{color:#dce2e9;font-size:11px}.metric-track{height:6px;border-radius:999px;background:#232a32;overflow:hidden}.metric-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#547ee9,#65a7f4);transition:width .3s ease}.metric-bar.warning .metric-track span{background:linear-gradient(90deg,#ce8b35,#efb552)}.metric-bar.critical .metric-track span{background:linear-gradient(90deg,#d34d55,#ef7379)}.metric-bar small{color:#65707e;font-size:9px}.monitor-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.monitor-facts div{min-width:0;padding:9px;border:1px solid #232a33;border-radius:10px;background:#0b0e12;display:grid;gap:5px}.monitor-facts span{color:#6f7a88;font-size:9px}.monitor-facts strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monitor-facts .attention{color:#efb25e}.host-meta{margin:0;color:#687381;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monitor-unavailable{min-height:177px;display:grid;place-content:center;text-align:center;gap:6px;color:#8994a2}.monitor-unavailable strong{color:#c8cfd8}.monitor-unavailable p{margin:0;max-width:310px;color:#6f7a88;font-size:11px;line-height:1.5}.metrics-note{color:#d8a45d;font-size:9px}.monitor-card>footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #222932;padding-top:11px;color:#65707e;font-size:9px}.dashboard-empty{min-height:360px;display:grid;place-content:center;justify-items:center;gap:7px;text-align:center;color:#818c9a}.dashboard-empty h2{margin:0;color:#e5eaf0}.dashboard-empty p{margin:0}.empty-icon{color:var(--orange);font-size:52px}.server-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:13px}.server-kpis>div{min-width:0;border:1px solid #29313b;border-radius:12px;padding:11px 12px;background:#10141a;display:grid;gap:5px}.server-kpis span{color:#737e8c;font-size:9px;text-transform:uppercase;letter-spacing:.8px}.server-kpis strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.server-kpis .attention-kpi{border-color:#63451f;background:#21180d}.server-kpis .attention-kpi strong{color:#efb35e}.server-kpis .critical-kpi{border-color:#693139;background:#251316}.server-kpis .critical-kpi strong{color:#f28a90}.panels{min-width:0;min-height:0;height:calc(100vh - 244px);display:grid;grid-template-columns:minmax(510px,1.08fr) minmax(450px,.92fr);gap:13px}.panel{min-width:0;min-height:0;overflow:hidden;border:1px solid #29313b;border-radius:15px;background:#0d1014;box-shadow:0 18px 45px #0003;display:grid;grid-template-rows:auto minmax(0,1fr)}.panel-header{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid #242b34;background:#12161b}.panel-header>div:first-child{min-width:0}.panel-header h3{margin:0;font-size:13px}.panel-header .toolbar{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.toolbar button{padding:6px 9px;font-size:10px}.terminal-state{display:block;margin-top:3px;color:#7a8593;font-size:9px}.terminal-state.ready{color:#59da8e}.terminal-state.error{color:#f08086}.terminal-state.closed{color:#dfac59}.terminal-panel{position:relative}.terminal-host{min-width:0;min-height:0;padding:8px 4px 6px 9px;background:#080a0d;overscroll-behavior:contain}.terminal-host .xterm{height:100%;overscroll-behavior:contain}.terminal-host .xterm-screen{cursor:text}.terminal-host .xterm-viewport{overflow-y:auto!important;overscroll-behavior-y:contain;scrollbar-gutter:stable}.terminal-copy-notice{position:absolute;right:18px;bottom:16px;z-index:5;max-width:calc(100% - 36px);padding:7px 10px;border:1px solid transparent;border-radius:999px;background:#0e1217f0;color:#aeb7c3;font-size:10px;font-weight:750;line-height:1;box-shadow:0 8px 26px #00000061;opacity:0;pointer-events:none;transform:translateY(5px);transition:opacity .14s ease,transform .14s ease}.terminal-copy-notice.copied,.terminal-copy-notice.error{opacity:1;transform:translateY(0)}.terminal-copy-notice.copied{color:#72e0a1;border-color:#46d7844d}.terminal-copy-notice.error{color:#f39ba1;border-color:#ec666d57}.file-panel{grid-template-rows:auto auto minmax(0,1fr) auto;position:relative}.file-panel.is-uploading:after{content:"Загрузка файлов…";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:grid;place-items:center;background:#06080ab8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:#ff9c57;font-weight:800}.breadcrumbs{display:flex;align-items:center;gap:4px;max-width:420px;margin-top:4px;overflow:hidden}.breadcrumbs button{border:0;background:none;color:#c77841;padding:0;font-size:9px;white-space:nowrap}.breadcrumbs span{color:#4d5662;font-size:9px}.inline-error{margin:8px 10px 0;border-radius:9px;padding:8px 10px;font-size:10px;display:flex;justify-content:space-between;gap:8px}.inline-error button{background:none;border:0;color:inherit;padding:0}.file-table-wrap{min-height:0;overflow:auto}.file-table{width:100%;border-collapse:collapse;font-size:11px}.file-table th{position:sticky;top:0;z-index:1;background:#0f1318;color:#737e8c;text-align:left;font-weight:700;padding:9px 10px;border-bottom:1px solid #222932}.file-table td{padding:7px 10px;color:#aab3bf;border-bottom:1px solid #1a1f26;white-space:nowrap}.file-table tr:hover td{background:#12171d}.file-table th:first-child{width:45%}.file-table th:nth-child(2){width:90px}.file-table th:nth-child(3){width:150px}.file-name{max-width:100%;border:0;background:none!important;padding:1px 0;color:#e2e7ee;display:flex;align-items:center;gap:8px;overflow:hidden}.file-name span:last-child{overflow:hidden;text-overflow:ellipsis}.file-icon{color:#e89a55;font-size:9px}.row-actions{display:flex;justify-content:flex-end;gap:8px}.row-actions button,.row-actions a{border:0;background:none!important;color:#c48252;padding:1px;text-decoration:none;font-size:9px}.row-actions .danger-link{color:#dd747b}.empty{text-align:center;padding:34px!important;color:#697482!important}.drop-hint{border-top:1px solid #222932;padding:7px 10px;text-align:center;color:#626d7b;font-size:9px}.drop-hint code{color:#9a6a49}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;padding:20px;display:grid;place-items:center;background:#020305cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid #313946;border-radius:18px;background:#11151a;box-shadow:0 30px 100px #000000a6}.modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:19px 21px 14px;border-bottom:1px solid #252c35}.modal h2{margin:0;font-size:20px}.modal header p{margin:5px 0 0;color:#7d8794;font-size:11px;line-height:1.45}.icon-button{width:32px;height:32px;padding:0;font-size:19px}.server-modal form{padding:18px 21px 21px}.form-grid{display:grid;grid-template-columns:140px minmax(0,1fr);gap:13px}.form-grid .wide{grid-column:1/-1}.checkbox{margin-top:15px;display:flex;align-items:center;gap:9px}.checkbox input{width:auto}.fingerprint{margin-top:14px;padding:10px 12px;border:1px solid #2c343e;border-radius:10px;background:#0b0e12;display:grid;gap:6px}.fingerprint span{color:#7e8996;font-size:10px}.fingerprint code{color:#d69769;font-size:10px;overflow-wrap:anywhere}.modal footer{padding:15px 21px 20px;display:flex;justify-content:flex-end;gap:9px}.server-modal form footer{padding:17px 0 0}.footer-spacer{flex:1}.reset-key{font-size:10px}.editor-modal{width:min(1000px,96vw);height:min(760px,92vh);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}.editor-modal textarea{border:0;border-radius:0;resize:none;min-height:0;padding:16px;background:#080a0d;font-family:Cascadia Mono,Consolas,monospace;line-height:1.5}.editor-modal .form-error{margin:8px 20px 0}.loading{padding:30px;color:#7e8996}.audit-modal{width:min(840px,96vw)}.audit-list{max-height:65vh;overflow:auto;padding:10px 18px 20px}.audit-list article{display:grid;grid-template-columns:155px 190px minmax(0,1fr);gap:12px;padding:10px 5px;border-bottom:1px solid #252c35;font-size:11px}.audit-list time{color:#6f7986}.audit-list strong{color:#d38e5c}.audit-list span{color:#a6afba;overflow-wrap:anywhere}.password-modal{width:min(490px,100%)}.password-modal form{padding:18px 21px 0;display:grid;gap:13px}.password-modal form footer{margin:3px -21px 0}.popout-shell{height:100%;display:grid;grid-template-rows:64px minmax(0,1fr);padding:10px;gap:10px;background:#080a0d}.popout-header{border:1px solid #29313b;border-radius:14px;background:#11151a;padding:8px 12px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;gap:16px}.popout-server{display:flex;align-items:center;gap:10px;justify-self:center}.popout-server>div{display:grid;gap:2px}.popout-server strong{font-size:13px}.popout-server span{color:#778290;font-size:10px}.popout-actions{justify-self:end;display:flex;align-items:center;gap:8px;color:#7f8997;font-size:11px}.popout-actions button{padding:7px 9px;font-size:10px}.standalone-terminal{border-radius:14px}.popout-error{min-height:100%;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center}.popout-error h1{margin:15px 0 0}.popout-error p{margin:0;color:#8a95a2}@media(max-width:1280px){.app-shell{grid-template-columns:270px minmax(0,1fr)}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.server-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.panels{grid-template-columns:1fr;grid-template-rows:minmax(420px,1fr) minmax(360px,1fr);height:auto}.server-view{overflow:auto}}@media(max-width:820px){body{overflow:auto}.app-shell{height:auto;min-height:100%;grid-template-columns:1fr}.sidebar{max-height:460px;border-right:0;border-bottom:1px solid #242b34}.workspace{min-height:900px}.site-header{align-items:flex-start}.site-header-status{flex-wrap:wrap;justify-content:flex-end}.dashboard-view,.server-view{padding:14px}.view-heading,.server-heading{flex-direction:column}.summary-grid,.monitor-grid{grid-template-columns:1fr}.server-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.audit-list article{grid-template-columns:1fr;gap:4px}.popout-header{grid-template-columns:1fr auto}.popout-server{justify-self:start;grid-column:1/-1;grid-row:2}}.terminal-session-note{display:block;margin-top:2px;color:#596575;font-size:9px}.toolbar .danger-soft{border-color:#d9535b57;color:#e99aa0}.toolbar .danger-soft:hover{border-color:#d9535bb3;background:#912a3129}.workspace-content{overscroll-behavior:auto}:root{--header-height: 58px;--sidebar-width: 264px;--panel-radius: 12px}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.sidebar{padding:13px 10px 10px;gap:8px;background:#0a0d11}.sidebar-topline{padding:1px 4px 7px}.overview-button{padding:10px}.add-server{padding:9px 11px}.server-card{padding:9px 8px;gap:8px;border-radius:9px}.server-card.active{background:#171b20;border-color:#4e2d18}.server-card-text strong{font-size:12px}.server-card-text small{font-size:9px}.server-card-side{font-size:8px}.sidebar-footer{gap:5px;padding-top:9px}.sidebar-footer button{padding:7px 4px;font-size:10px}.workspace{grid-template-rows:var(--header-height) minmax(0,1fr)}.site-header{min-height:var(--header-height);padding:8px 16px;background:#0a0d11f5}.product-brand.compact .brand-mark{width:38px;height:34px;border-radius:9px;font-size:11px}.product-brand.compact .brand-copy strong{font-size:14px}.product-brand.compact .brand-copy span{font-size:9px}.site-header-status{font-size:10px;gap:7px}.header-divider{height:16px}.workspace-content{overflow:hidden}.server-view{height:100%;min-height:0;padding:12px 14px 14px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:9px;overflow:hidden}.server-commandbar{min-width:0;min-height:66px;display:grid;grid-template-columns:minmax(230px,.9fr) minmax(560px,1.9fr) auto;align-items:center;gap:12px;padding:9px 11px;border:1px solid #282f38;border-radius:12px;background:linear-gradient(180deg,#11151a,#0e1216);box-shadow:0 10px 28px #0000002e}.server-command-identity{min-width:0;display:flex;align-items:center;gap:10px}.server-command-identity>div{min-width:0}.server-title-row{min-width:0;display:flex;align-items:center;gap:8px}.server-title-row h1{min-width:0;margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:20px;letter-spacing:-.35px}.server-command-identity p{margin:3px 0 0;color:#74808e;font:10px/1.2 Cascadia Mono,Consolas,monospace;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.connection-pill{flex:0 0 auto;border:1px solid #39424d;border-radius:999px;padding:3px 6px;color:#8995a3;background:#101419;font-size:8px;font-weight:750}.connection-pill.online{color:#70d99e;border-color:#28533b;background:#102119}.connection-pill.offline{color:#ef8c93;border-color:#603139;background:#281519}.connection-pill.checking{color:#e1b363;border-color:#5b472b;background:#261f13}.quick-metrics{min-width:0;display:grid;grid-template-columns:repeat(6,minmax(72px,1fr));gap:6px}.quick-metric,.quick-fact{min-width:0;height:45px;padding:6px 8px;border:1px solid #242b34;border-radius:9px;background:#0b0f13;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 4px;align-content:center;gap:5px 7px}.quick-metric span,.quick-fact span{color:#6e7987;font-size:8px;font-weight:760;letter-spacing:.4px;text-transform:uppercase}.quick-metric strong,.quick-fact strong{min-width:0;color:#dce3eb;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-metric i{grid-column:1 / -1;height:3px;overflow:hidden;border-radius:999px;background:#222932}.quick-metric i b{display:block;height:100%;border-radius:inherit;background:#4f83d6}.quick-metric.warning i b{background:#d99b43}.quick-metric.critical i b{background:#dc5e67}.quick-fact{grid-template-rows:auto auto;gap:3px}.quick-fact.warning{border-color:#5d421f;background:#21180d}.quick-fact.warning strong{color:#efb45f}.quick-fact.critical{border-color:#623239;background:#251417}.quick-fact.critical strong{color:#ef8e95}.server-command-actions{display:flex;align-items:center;gap:6px}.server-command-actions button{padding:7px 9px;font-size:9px;white-space:nowrap}button.danger-quiet{color:#d77d83;border-color:transparent;background:transparent}button.danger-quiet:hover:not(:disabled){border-color:#5d3036;background:#251417}.workbench-bar{min-width:0;min-height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 2px}.layout-switch{display:inline-grid;grid-template-columns:repeat(3,auto);padding:3px;border:1px solid #29313a;border-radius:9px;background:#0c1014}.layout-switch button{border:0;border-radius:6px;padding:6px 10px;background:transparent;color:#788391;font-size:9px;font-weight:720}.layout-switch button:hover:not(:disabled){background:#151a20;border-color:transparent}.layout-switch button.active{background:#222831;color:#eef2f7;box-shadow:inset 0 0 0 1px #343d48}.workbench-hint{color:#626e7c;font-size:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.popout-button{padding:6px 9px;border-color:transparent;background:transparent;color:#9ca7b4;font-size:9px}.popout-button:hover:not(:disabled){border-color:#343d47;background:#151a20}.server-workbench{min-width:0;min-height:0;height:100%;display:grid;gap:0;overflow:hidden}.server-workbench.mode-split{grid-template-columns:minmax(420px,var(--terminal-share)) 9px minmax(330px,1fr)}.server-workbench.mode-terminal,.server-workbench.mode-files{grid-template-columns:minmax(0,1fr)}.server-workbench>.panel{height:100%}.workbench-splitter{position:relative;z-index:6;cursor:col-resize;touch-action:none;display:grid;place-items:center}.workbench-splitter:before{content:"";position:absolute;top:0;right:3px;bottom:0;left:3px;border-radius:999px;background:#171c22;transition:background .15s ease}.workbench-splitter span{position:relative;width:2px;height:34px;border-radius:999px;background:#4a5562;box-shadow:0 -7px #4a5562,0 7px #4a5562}.workbench-splitter:hover:before,body.is-resizing-workbench .workbench-splitter:before{background:#ff751833}body.is-resizing-workbench{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.panel{border-radius:var(--panel-radius);border-color:#282f38;box-shadow:none;background:#0b0e12}.panel-header{min-height:50px;padding:8px 10px;gap:8px;background:#11151a}.panel-header h3{font-size:12px}.panel-header .toolbar{gap:4px;flex-wrap:nowrap}.toolbar button{padding:5px 7px;border-radius:7px;font-size:8px;white-space:nowrap}.toolbar .primary-soft{color:#ff9a55;border-color:#633718;background:#22150d}.toolbar .icon-only{width:28px;padding-inline:0;font-size:13px}.terminal-state{margin-top:2px;font-size:8px}.terminal-session-note{font-size:8px;color:#52606f}.terminal-host{padding:7px 3px 5px 8px}.terminal-host .xterm-viewport{scrollbar-width:thin}.terminal-copy-notice{right:12px;bottom:10px}.file-panel{grid-template-rows:auto auto minmax(0,1fr) auto}.breadcrumbs{max-width:min(38vw,500px);margin-top:3px}.file-table{font-size:10px}.file-table th{padding:8px 9px;font-size:9px}.file-table td{padding:6px 9px}.file-table th:first-child{width:auto}.file-table th:nth-child(2){width:78px}.file-table th:nth-child(3){width:128px}.file-table th:last-child{width:78px}.row-actions{gap:3px;opacity:.22;transition:opacity .14s ease}.file-table tr:hover .row-actions,.row-actions:focus-within{opacity:1}.row-actions button,.row-actions a{width:22px;height:22px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:6px;color:#aab4bf;font-size:12px}.row-actions button:hover,.row-actions a:hover{border-color:#39424d;background:#1a2027!important}.row-actions .danger-link{color:#dc7f86}.drop-hint{padding:5px 9px;font-size:8px}.dashboard-view{min-height:100%;padding:18px}@media(max-width:1450px){:root{--sidebar-width: 248px}.server-commandbar{grid-template-columns:minmax(210px,.8fr) minmax(460px,1.7fr) auto}.quick-metrics{grid-template-columns:repeat(3,minmax(78px,1fr))}.quick-metric,.quick-fact{height:36px;padding:5px 7px}.server-workbench.mode-split{grid-template-columns:minmax(390px,var(--terminal-share)) 9px minmax(300px,1fr)}}@media(max-width:1120px){.workspace-content{overflow:auto}.server-view{height:auto;min-height:980px;overflow:visible}.server-commandbar{grid-template-columns:minmax(0,1fr) auto}.quick-metrics{grid-column:1 / -1;grid-row:2}.server-workbench.mode-split{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(440px,1fr) minmax(360px,.85fr);gap:9px}.workbench-splitter{display:none}.server-workbench.mode-split>.panel{min-height:0}.workbench-hint{display:none}}@media(max-width:820px){:root{--sidebar-width: 100%}.workspace{grid-template-rows:var(--header-height) minmax(0,1fr)}.server-view{padding:10px;min-height:920px}.server-commandbar{grid-template-columns:minmax(0,1fr);align-items:start}.server-command-actions{position:absolute;right:20px}.quick-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-bar{grid-template-columns:1fr auto}.popout-button{grid-column:2;grid-row:1}.layout-switch{grid-column:1}.server-workbench.mode-split{grid-template-rows:minmax(430px,1fr) minmax(360px,1fr)}.panel-header{align-items:flex-start}.panel-header .toolbar{flex-wrap:wrap;justify-content:flex-end}}.server-commandbar{position:relative}@media(max-width:820px){.server-command-actions{position:static;grid-row:3;justify-content:flex-end}}:root{--bg: #050912;--surface: #0a1020;--surface-2: #0d1528;--surface-3: #121b31;--line: #1a2540;--muted: #8695b2;--text: #eef4ff;--orange: #6ea6ff;--orange-soft: rgba(72, 110, 190, .18);--green: #34d399;--red: #fb7185;--yellow: #f4c66d}body{background:radial-gradient(1200px 700px at 18% -10%,rgba(74,134,255,.13),transparent 55%),radial-gradient(900px 600px at 100% 0%,rgba(52,211,153,.06),transparent 42%),linear-gradient(180deg,#030712,#050912)}button,input,textarea,select{border-radius:12px}button{border-color:#1d2a49;background:linear-gradient(180deg,#10182bfa,#0a0f1cfa);color:#dfe8fb;box-shadow:inset 0 1px #ffffff08}button:hover{border-color:#304a7a;background:linear-gradient(180deg,#131e36fa,#0c1222fa)}button.primary,.primary{border-color:#365da8;background:linear-gradient(180deg,#4c82ec,#3766ca);color:#fff;box-shadow:0 10px 24px #3766ca3d,inset 0 1px #ffffff2e}button.primary:hover,.primary:hover{border-color:#4b74ca;background:linear-gradient(180deg,#5a8ef0,#3f72dc)}button.danger,.danger{border-color:#4d2942;background:linear-gradient(180deg,#311022fa,#1f0b16fa);color:pink}.app-shell{grid-template-columns:272px minmax(0,1fr);background:transparent}.sidebar{background:#040810e0;border-right:1px solid #121d34;padding:18px 14px 14px;gap:14px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-topline{padding:4px 4px 10px;align-items:center}.sidebar-topline span:first-child{font-size:12px;letter-spacing:1.7px;color:#8ea6d8}.version-chip{border-color:#22365f;background:#0a101feb;color:#bdd3ff}.overview-button,.add-server,.server-card,.server-search,.sidebar-footer button{border-radius:14px}.overview-button{border-color:#162340;background:linear-gradient(180deg,#0b1221fa,#070d18fa);min-height:62px}.overview-button.active,.server-card.active{border-color:#355ea8;background:linear-gradient(180deg,#101c36fa,#0a1222fa),radial-gradient(120% 120% at 0% 0%,rgba(97,147,255,.22),transparent 60%);box-shadow:inset 0 0 0 1px #709cff1a,0 12px 28px #00000038}.overview-icon{width:34px;height:34px;border-radius:10px;background:#5a86eb1f;color:#93b9ff}.add-server{border-color:#315aa4;background:linear-gradient(180deg,#4472c82e,#2c4c891c);color:#dbe8ff;font-weight:700}.server-search{border-color:#16233d;background:#080d19f0}.server-search input{color:#dde6f8}.server-list-heading{color:#7e93ba}.server-card{grid-template-columns:auto minmax(0,1fr) auto;border-color:#16233d;background:linear-gradient(180deg,#090f1cf5,#060a14f5);padding:14px 12px}.server-card:hover{border-color:#28416d}.server-card-text strong{font-size:16px}.server-card-text small,.server-card-side span,.server-card-side small{color:#7d90b2}.server-card-side{text-align:right}.sidebar-footer{border-top-color:#13203a;gap:8px}.workspace{grid-template-rows:72px minmax(0,1fr)}.site-header{padding:14px 24px;border-bottom:1px solid #121d34;background:#050912d6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.product-brand.compact .brand-mark,.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(180deg,#6da4ff,#4270ce);color:#f8fbff;box-shadow:0 10px 28px #4270ce47,inset 0 1px #ffffff2e}.brand-copy strong{font-size:24px;letter-spacing:-.03em}.brand-copy span{color:#7f92b6}.site-header-status{color:#8b9cba}.header-divider{background:#1c2946}.current-user{color:#d9e4fb}.workspace-content{background:radial-gradient(600px 260px at 18% 0%,rgba(78,121,216,.09),transparent 50%),transparent}.dashboard-view,.server-view{padding:26px}.view-heading,.server-heading{margin-bottom:22px}.view-heading h1,.server-heading h1{font-size:36px;line-height:1.05;letter-spacing:-.04em}.eyebrow{color:#7fa7ff;font-size:10px}.server-heading p,.view-heading p{color:#7f92b6;font-size:14px}.summary-grid{grid-template-columns:1.5fr repeat(3,1fr);gap:16px}.summary-grid article{min-height:140px;border-color:#16223c;border-radius:22px;padding:22px;background:linear-gradient(180deg,#0a0f1cfa,#060a14fa),radial-gradient(70% 90% at 0% 0%,rgba(84,133,244,.12),transparent 60%);box-shadow:0 20px 60px #00000038}.summary-grid article:first-child{min-height:172px}.summary-grid strong{font-size:38px}.summary-grid article>span{color:#86a0ce;text-transform:uppercase;letter-spacing:1.2px}.summary-indicator{opacity:.85}.monitor-card,.panel,.server-kpis>div{border-color:#17243f;background:linear-gradient(180deg,#090f1cfa,#050912fa),radial-gradient(100% 100% at 0% 0%,rgba(79,127,227,.07),transparent 56%);box-shadow:0 18px 48px #00000038}.monitor-card.online{border-color:#1f3a52}.monitor-card.offline{border-color:#4b2741}.status-badge{border-color:#203357;background:#0a101fb3}.status-badge.online{border-color:#1e4d4a;background:#081c1cb8;color:#77e2ba}.status-badge.offline{border-color:#5e2c43;background:#240b16b8}.status-badge.checking{border-color:#62522d;background:#251d0db8}.metric-track{background:#111a2c}.metric-track span{background:linear-gradient(90deg,#4d86f0,#77b3ff)}.metric-bar.warning .metric-track span{background:linear-gradient(90deg,#d79b38,#f2c66d)}.metric-bar.critical .metric-track span{background:linear-gradient(90deg,#d65b71,#fb8291)}.monitor-facts div{background:#070b14d1;border-color:#16223b;border-radius:14px}.server-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.server-kpis>div{border-radius:16px;padding:14px 14px 13px}.server-kpis span{color:#7f93ba}.server-kpis strong{font-size:15px}.server-workbench-controls{border:1px solid #15223d;border-radius:18px;padding:14px 16px;background:linear-gradient(180deg,#090f1cf2,#060a14f2);margin-bottom:16px}.workbench-mode-toggle{padding:4px;border-radius:14px;background:#070b14e0;border-color:#15223d}.workbench-mode-toggle button{border-radius:10px;border-color:transparent;color:#9eb3d8;background:transparent;box-shadow:none}.workbench-mode-toggle button.active{background:linear-gradient(180deg,#4f7fe1,#3a63b8);color:#fff}.popout-button{border-color:#20355c;color:#cfe0ff}.panels,.server-workbench{gap:14px}.panel{border-radius:18px}.panel-header{padding:14px 16px;border-bottom-color:#15223d;background:#0a0f1ceb}.panel-header h3{font-size:15px}.panel-header .toolbar button,.toolbar button{border-radius:10px;padding:7px 10px}.terminal-state{color:#8da2ca}.terminal-state.ready{color:#72dfb5}.terminal-host{background:linear-gradient(180deg,#050912,#070e1a);padding:10px 8px 8px 12px}.terminal-host .xterm-viewport::-webkit-scrollbar,.file-table-wrap::-webkit-scrollbar,.workspace-content::-webkit-scrollbar,.server-list::-webkit-scrollbar{width:10px;height:10px}.terminal-host .xterm-viewport::-webkit-scrollbar-thumb,.file-table-wrap::-webkit-scrollbar-thumb,.workspace-content::-webkit-scrollbar-thumb,.server-list::-webkit-scrollbar-thumb{background:#203153;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.terminal-copy-notice{border-color:#22375e;background:#080c16f2;color:#dce7ff}.file-panel .panel-header,.file-panel .file-toolbar,.file-breadcrumbs{background:#0a0f1ceb}.file-breadcrumbs{color:#7f97c0;border-bottom-color:#15223d}.file-table thead th{color:#84a0ce;background:#0a0f1ceb;border-bottom-color:#16223d}.file-table tbody tr:hover{background:#1e31543d}.file-table td,.file-table th{border-bottom-color:#111b30}.file-row-actions button,.file-actions button{border-radius:9px}.login-page{background:radial-gradient(700px 400px at 50% 0%,rgba(80,127,230,.16),transparent 60%),linear-gradient(180deg,#030711,#050912)}.login-card,.modal{border-color:#172540;border-radius:22px;background:linear-gradient(180deg,#090f1cfa,#050912fa);box-shadow:0 24px 80px #00000047}input,textarea,select{border-color:#182542;background:#070c16f2;color:#e5eefc}input:focus,textarea:focus,select:focus{border-color:#4678dd;box-shadow:0 0 0 3px #4678dd2e}@media(max-width:1440px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1180px){.app-shell{grid-template-columns:100%}.sidebar{max-height:none}.workspace{grid-template-rows:68px minmax(0,1fr)}.server-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}.app-shell{min-height:100dvh;height:100dvh}.sidebar,.workspace,.workspace-content,.server-list,.server-workbench,.panel,.file-table-wrap{min-height:0}.workspace-content{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}@media(max-width:1366px){.app-shell{grid-template-columns:276px minmax(0,1fr)}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.server-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1180px){html,body,#root{height:auto;min-height:100%}body{overflow:auto}.app-shell{height:auto;min-height:100dvh;grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{border-right:0;border-bottom:1px solid #13203a;padding-bottom:12px}.server-list{display:flex;overflow-x:auto;overflow-y:hidden;gap:10px;padding-bottom:6px;scroll-snap-type:x proximity}.server-card{min-width:260px;flex:0 0 260px;scroll-snap-align:start}.workspace{min-height:0;grid-template-rows:auto minmax(0,1fr)}.site-header{flex-wrap:wrap;align-items:flex-start}.dashboard-view,.server-view{min-height:auto;padding:18px}.view-heading,.server-heading{flex-direction:column;align-items:stretch}.header-actions{justify-content:flex-start}.summary-grid,.monitor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.server-workbench,.server-workbench.mode-split,.server-workbench.mode-terminal,.server-workbench.mode-files,.panels{height:auto;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto;overflow:visible;gap:12px}.workbench-splitter{display:none!important}.panel,.server-workbench>.panel{min-height:360px;height:auto}.file-table-wrap{max-height:420px}}@media(max-width:900px){.site-header{padding:12px 16px}.site-header-status{flex-wrap:wrap}.header-divider{display:none}.dashboard-view,.server-view{padding:14px}.view-heading h1,.server-heading h1{font-size:30px}.summary-grid,.monitor-grid,.server-kpis{grid-template-columns:1fr}.monitor-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.server-card{min-width:232px;flex-basis:232px}.server-workbench-controls{grid-template-columns:1fr;gap:12px}.workbench-bar,.panel-header{align-items:flex-start}.panel-header .toolbar{width:100%;flex-wrap:wrap;justify-content:flex-start}}@media(max-width:640px){.sidebar{padding:12px 10px 10px;gap:12px}.sidebar-topline{padding:0 2px 4px}.overview-button,.add-server,.server-search,.server-card,.sidebar-footer button{border-radius:12px}.product-brand.compact{gap:10px}.product-brand.compact .brand-copy strong{font-size:14px}.product-brand.compact .brand-copy span{font-size:10px}.site-header{gap:10px}.site-header-status{font-size:11px}.summary-grid article{min-height:118px;padding:18px}.summary-grid strong{font-size:32px}.monitor-facts,.server-kpis{grid-template-columns:1fr}.server-workbench-controls,.workbench-mode-toggle,.popout-button,.layout-switch{width:100%}.layout-switch button{flex:1 1 0}.terminal-host,.file-table-wrap{min-height:300px}.file-table{min-width:640px}.server-search input,input,textarea,select{font-size:16px}}@media(pointer:coarse){.workspace-content,.server-list,.file-table-wrap,.terminal-host .xterm-viewport{-webkit-overflow-scrolling:touch}}button.quick-fact.update-action{width:100%;color:inherit;text-align:left;cursor:pointer;box-shadow:none;transform:none}button.quick-fact.update-action:hover:not(:disabled){border-color:#365d9d;background:#1f355b6b}button.quick-fact.update-action.warning{position:relative;border-color:#81602a;background:linear-gradient(180deg,#3c2b0ff5,#23190af5);animation:update-glow 2.2s ease-in-out infinite}button.quick-fact.update-action.warning:after{content:"";position:absolute;top:7px;right:7px;width:6px;height:6px;border-radius:50%;background:#f4c66d;box-shadow:0 0 12px #f4c66dcc}@keyframes update-glow{0%,to{box-shadow:0 0 #f4c66d00}50%{box-shadow:0 0 24px #f4c66d29}}.update-modal{width:min(920px,calc(100vw - 28px));display:grid;grid-template-rows:auto auto auto auto minmax(220px,1fr) auto;max-height:min(820px,calc(100dvh - 32px));overflow:hidden}.update-state{margin:16px 20px 0;padding:13px 14px;border:1px solid #1b2b4a;border-radius:14px;background:#080e1bdb;display:flex;align-items:center;gap:12px}.update-state>div{display:grid;gap:4px}.update-state strong{font-size:14px}.update-state span:not(.status-dot){color:#8295b8;font-size:11px}.update-state.running{border-color:#655126}.update-state.succeeded{border-color:#245641}.update-state.failed{border-color:#663044}.update-warning{margin:12px 20px 0;padding:11px 13px;border:1px solid #27395e;border-radius:12px;background:#111c32b8;color:#a9b9d5;font-size:11px;line-height:1.55}.update-warning code{color:#d5e3ff}.update-modal .form-error{margin:12px 20px 0}.update-log{min-height:220px;margin:14px 20px 0;padding:14px;overflow:auto;border:1px solid #162542;border-radius:14px;background:#030711;color:#dbe7fb;font:12px/1.5 Cascadia Mono,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;overscroll-behavior:contain}.update-modal footer{border-top:1px solid #15223d;margin-top:16px}@media(max-width:640px){.update-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.update-modal>header,.update-modal footer{padding-left:14px;padding-right:14px}.update-state,.update-warning,.update-log,.update-modal .form-error{margin-left:14px;margin-right:14px}.update-log{font-size:11px}}.sudo-password-button{border-color:#3a4b70;color:#c8d8f6;background:linear-gradient(180deg,#172239fa,#0c1424fa)}.sudo-password-button.configured{border-color:#2b6c58;color:#8be5bd;background:linear-gradient(180deg,#0f342aeb,#091f1bf2)}.sudo-password-button.sent{border-color:#4b82d7;color:#eef6ff;background:linear-gradient(180deg,#4d82df,#3766bd)}.sudo-password-modal{width:min(520px,100%)}.sudo-password-modal form{display:grid;gap:14px}.sudo-security-note{border:1px solid #26395f;border-radius:12px;padding:12px 13px;background:#0e182bd1;color:#9cb0d1;font-size:12px;line-height:1.55}.sudo-security-note code{color:#dce9ff}.sudo-password-modal footer{display:flex;justify-content:flex-end;gap:9px}@media(max-width:640px){.sudo-password-modal footer{display:grid;grid-template-columns:1fr}.sudo-password-modal footer button{width:100%}}:root{--sidebar-expanded: 272px;--sidebar-collapsed: 78px;--header-desktop: 72px}.app-shell{grid-template-columns:var(--sidebar-expanded) minmax(0,1fr);height:100dvh;min-height:0;overflow:hidden;transition:grid-template-columns .18s ease}.app-shell.sidebar-is-collapsed{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)}.sidebar-collapse-button{width:28px;height:28px;padding:0;display:grid;place-items:center;border-radius:9px;font-size:18px;line-height:1}.sidebar-is-collapsed .sidebar{padding-inline:10px}.sidebar-is-collapsed .sidebar-topline>span,.sidebar-is-collapsed .overview-button span:last-child,.sidebar-is-collapsed .server-card-text,.sidebar-is-collapsed .server-card-side,.sidebar-is-collapsed .server-search,.sidebar-is-collapsed .server-list-heading{display:none}.sidebar-is-collapsed .sidebar-topline{justify-content:center;padding-inline:0}.sidebar-is-collapsed .overview-button{grid-template-columns:1fr;justify-items:center;padding:10px}.sidebar-is-collapsed .overview-icon{width:36px;height:36px}.sidebar-is-collapsed .add-server{font-size:0;text-align:center;padding:12px 6px}.sidebar-is-collapsed .add-server:before{content:"＋";font-size:20px}.sidebar-is-collapsed .server-list{padding-right:0}.sidebar-is-collapsed .server-card{grid-template-columns:1fr;justify-items:center;min-height:48px;padding:10px 5px}.sidebar-is-collapsed .server-card.active{box-shadow:inset 3px 0 #6ea6ff}.sidebar-is-collapsed .status-dot{width:12px;height:12px}.sidebar-is-collapsed .sidebar-footer{grid-template-columns:1fr}.sidebar-is-collapsed .sidebar-footer button{font-size:0;min-height:36px}.sidebar-is-collapsed .sidebar-footer button:nth-child(1):after{content:"Ж";font-size:12px}.sidebar-is-collapsed .sidebar-footer button:nth-child(2):after{content:"•••";font-size:12px;letter-spacing:1px}.sidebar-is-collapsed .sidebar-footer button:nth-child(3):after{content:"↪";font-size:17px}.workspace{grid-template-rows:var(--header-desktop) minmax(0,1fr);min-height:0;overflow:hidden}.workspace-content{min-height:0;overflow:auto;scrollbar-gutter:stable}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.summary-grid article,.summary-grid article:first-child{min-height:86px;padding:14px 16px;border-radius:16px}.summary-grid strong{font-size:29px}.summary-grid article>span{font-size:9px;letter-spacing:.9px}.monitor-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.server-view{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.server-commandbar,.workbench-bar{min-width:0}.workbench-shortcuts{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0;color:#7387ad;font-size:9px;white-space:nowrap}.workbench-shortcuts kbd{min-width:22px;padding:3px 5px;border:1px solid #22345a;border-bottom-color:#34517f;border-radius:6px;background:#091121;color:#b9cdf3;text-align:center;font:700 9px/1.1 inherit}.workbench-shortcuts span{margin-right:5px}.server-workbench{min-height:0;overflow:hidden}.server-workbench>.terminal-workspace,.server-workbench>.panel{min-height:0;height:100%}.terminal-workspace{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:42px minmax(0,1fr);overflow:hidden}.terminal-tabs{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border:1px solid #17243f;border-bottom:0;border-radius:16px 16px 0 0;background:#080e1b;overflow:hidden}.terminal-tabs-scroll{min-width:0;display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:thin}.terminal-tab{min-width:128px;max-width:220px;height:41px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 11px;border:0;border-right:1px solid #15213a;border-radius:0;background:transparent;box-shadow:none;color:#8396b8;font-size:11px;text-align:left}.terminal-tab:hover:not(:disabled){background:#0d1729;border-color:#15213a}.terminal-tab.active{background:linear-gradient(180deg,#111d34,#0b1425);color:#e8f0ff;box-shadow:inset 0 -2px #6597f5}.terminal-tab>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-tab-status{width:7px;height:7px;border-radius:50%;background:#36d49b;box-shadow:0 0 10px #36d49b66}.terminal-tab i{width:18px;height:18px;display:grid;place-items:center;border-radius:5px;color:#66799c;font-style:normal;font-size:14px}.terminal-tab i:hover{background:#253451;color:#fff}.terminal-tab-add{width:42px;border:0;border-left:1px solid #17243f;border-radius:0;background:#0b1323;color:#9eb9ec;box-shadow:none;font-size:17px}.terminal-workspace>.terminal-panel{border-radius:0 0 16px 16px;border-top-color:#17243f}.terminal-panel{min-height:0;grid-template-rows:auto minmax(0,1fr) 30px}.terminal-panel-header{min-height:48px}.terminal-title-block h3{font-size:12px}.terminal-toolbar{position:relative}.sudo-password-button.requested{border-color:#b47a28;background:linear-gradient(180deg,#4a3210,#2c1d0a);color:#ffd887;box-shadow:0 0 0 3px #e4ad501a,0 0 20px #e4ad5024;animation:sudo-request-pulse 1.25s ease-in-out infinite}.sudo-password-button:disabled{opacity:.52}@keyframes sudo-request-pulse{50%{box-shadow:0 0 0 5px #e4ad500f,0 0 24px #e4ad5038}}.terminal-more-wrap{position:relative}.terminal-more-menu{position:absolute;z-index:40;top:calc(100% + 7px);right:0;width:190px;padding:6px;display:grid;gap:3px;border:1px solid #20345b;border-radius:12px;background:#070c17fa;box-shadow:0 18px 50px #00000073}.terminal-more-menu button{width:100%;padding:8px 9px;border:0;background:transparent;text-align:left;font-size:10px;box-shadow:none}.terminal-more-menu button:hover{background:#14213a}.terminal-more-menu .danger-menu{color:#ff9aaa}.terminal-host{min-height:0;height:auto}.terminal-statusbar{min-width:0;height:30px;display:flex;align-items:center;gap:7px;padding:0 11px;border-top:1px solid #16223c;background:#080e19;color:#8296ba;font-size:9px;white-space:nowrap;overflow:hidden}.terminal-statusbar .status-dot{width:7px;height:7px}.terminal-status-divider{width:1px;height:12px;background:#253552}.terminal-status-spacer{flex:1 1 auto}.terminal-jump-bottom{position:absolute;z-index:8;right:16px;bottom:43px;padding:7px 10px;border-color:#315796;background:#0c182df2;color:#cfe0ff;font-size:9px;box-shadow:0 10px 28px #0000005c}.terminal-copy-notice{bottom:42px}@media(min-width:1181px)and (max-height:850px){:root{--header-desktop: 58px}.site-header{padding-block:8px}.product-brand.compact .brand-mark{width:34px;height:34px}.product-brand.compact .brand-copy span{display:none}.server-view{padding:10px 14px 12px}.server-commandbar{padding:8px 10px;margin-bottom:7px}.server-title-row h1{font-size:20px}.server-command-identity p{font-size:9px}.quick-metric,.quick-fact{height:34px;padding:4px 7px}.quick-metric span,.quick-fact span{font-size:7px}.quick-metric strong,.quick-fact strong{font-size:10px}.workbench-bar{min-height:38px;margin-bottom:7px;padding:5px 7px}.terminal-workspace{grid-template-rows:36px minmax(0,1fr)}.terminal-tab,.terminal-tab-add{height:35px}.terminal-panel-header{min-height:42px;padding-block:6px}.terminal-session-note{display:none}}@media(max-width:1180px){body{overflow:auto}.app-shell,.app-shell.sidebar-is-collapsed{height:auto;min-height:100dvh;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);overflow:visible}.sidebar-collapse-button{display:none}.sidebar-is-collapsed .sidebar-topline>span{display:inline}.sidebar-is-collapsed .overview-button span:last-child{display:grid}.sidebar-is-collapsed .server-card-text,.sidebar-is-collapsed .server-card-side,.sidebar-is-collapsed .server-search{display:grid}.sidebar-is-collapsed .server-list-heading{display:flex}.sidebar-is-collapsed .sidebar{padding:14px}.sidebar-is-collapsed .overview-button{grid-template-columns:34px minmax(0,1fr);justify-items:stretch}.sidebar-is-collapsed .add-server{font-size:inherit;text-align:left}.sidebar-is-collapsed .add-server:before{content:none}.sidebar-is-collapsed .server-list{display:flex}.sidebar-is-collapsed .server-card{grid-template-columns:auto minmax(0,1fr) auto;justify-items:stretch}.sidebar-is-collapsed .sidebar-footer{grid-template-columns:repeat(3,1fr)}.sidebar-is-collapsed .sidebar-footer button{font-size:11px}.sidebar-is-collapsed .sidebar-footer button:after{content:none!important}.workspace{min-height:0;overflow:visible}.workspace-content{overflow:visible}.server-view{height:auto;min-height:0;overflow:visible}.server-workbench,.server-workbench.mode-split,.server-workbench.mode-terminal,.server-workbench.mode-files{height:auto;overflow:visible}.server-workbench.mode-split{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(520px,70dvh) minmax(420px,auto);gap:12px}.workbench-splitter{display:none}.server-workbench.mode-terminal .terminal-workspace,.server-workbench.mode-split .terminal-workspace{height:min(760px,72dvh);min-height:480px}.server-workbench.mode-files>.file-panel,.server-workbench.mode-split>.file-panel{height:min(720px,68dvh);min-height:420px}.workbench-shortcuts{display:none}}@media(max-width:820px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.monitor-grid,.server-commandbar{grid-template-columns:1fr}.server-command-actions{justify-content:flex-start}.quick-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.workbench-bar{grid-template-columns:1fr}.layout-switch{width:100%;display:flex}.layout-switch button{flex:1}.terminal-tabs{border-radius:13px 13px 0 0}.terminal-tab{min-width:118px}.terminal-toolbar>button:not(.sudo-password-button),.terminal-toolbar .terminal-more-wrap{display:grid}}@media(max-width:560px){.site-header{display:none}.workspace{grid-template-rows:minmax(0,1fr)}.dashboard-view,.server-view{padding:10px}.summary-grid{grid-template-columns:1fr 1fr;gap:8px}.summary-grid article,.summary-grid article:first-child{min-height:76px;padding:12px}.summary-grid strong{font-size:24px}.quick-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.server-command-actions{display:grid;grid-template-columns:1fr 1fr}.server-command-actions button{width:100%}.terminal-workspace{grid-template-rows:39px minmax(0,1fr)}.terminal-tab{min-width:108px;max-width:160px;padding-inline:8px}.terminal-panel-header{align-items:center}.terminal-title-block{display:none}.terminal-toolbar{width:100%;justify-content:flex-end}.terminal-toolbar button{min-height:34px}.terminal-statusbar{gap:5px;padding-inline:8px}.terminal-statusbar span:nth-of-type(4),.terminal-statusbar span:nth-of-type(5){display:none}.server-workbench.mode-terminal .terminal-workspace,.server-workbench.mode-split .terminal-workspace{height:72dvh;min-height:420px}.file-table{min-width:620px}}.file-table tbody tr{cursor:default}.file-table tbody tr.selected td{background:#355ea53d;box-shadow:inset 0 1px #6699ff14,inset 0 -1px #6699ff14}.file-table tbody tr.selected td:first-child{box-shadow:inset 3px 0 #5f8fe8,inset 0 1px #6699ff14,inset 0 -1px #6699ff14}.download-selected{border-color:#294d84;background:#2b518e2e;color:#cfe1ff}.download-selected:not(:disabled):hover{border-color:#4775bd;background:#3665b047}.row-actions{opacity:1;align-items:center}.row-actions .download-row{width:auto;min-width:78px;padding:4px 8px;gap:5px;border-color:#294d84;background:#2b518e29!important;color:#cfe1ff;font-size:9px;font-weight:750;white-space:nowrap}.row-actions .download-row:hover{border-color:#4775bd;background:#3665b047!important}.file-table th:last-child{width:146px}@media(max-width:720px){.row-actions .download-row{min-width:30px;width:30px;padding-inline:0}.row-actions .download-row span{display:none}.file-table th:last-child{width:86px}}.sudo-password-button.configured:not(.requested):not(:disabled){opacity:1;cursor:pointer}.sudo-password-button.configured:not(.requested):not(:disabled):hover{border-color:#4678dd;background:#315baa38}.gateway-mode-chip{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 10px;border:1px solid #264878;border-radius:999px;background:#1f437538;color:#bcd5ff;font-size:10px;font-weight:750;letter-spacing:.15px}.gateway-route-strip{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;margin:-4px 0 12px;padding:9px 12px;border:1px solid #1b3153;border-radius:12px;background:linear-gradient(90deg,#19365e3d,#080e1bbf);color:#8296b8}.gateway-route-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#4c82ec24;color:#82b4ff;font-size:16px;font-weight:900}.gateway-route-strip>div{min-width:0;display:grid;gap:2px}.gateway-route-strip strong{color:#d8e6ff;font-size:10px}.gateway-route-strip div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8ea6cc;font-size:9px;font-family:Cascadia Mono,Consolas,monospace}.gateway-route-strip em{color:#6f84a9;font-size:9px;font-style:normal;white-space:nowrap}.terminal-route-label{max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#86a1cc}@media(max-width:1180px){.gateway-route-strip{grid-template-columns:auto minmax(0,1fr)}.gateway-route-strip em{grid-column:2;white-space:normal}.gateway-mode-chip{max-width:280px}}@media(max-width:720px){.gateway-mode-chip{max-width:100%;order:-1}.gateway-route-strip{margin-top:0}.gateway-route-strip em,.terminal-route-label{display:none}}
