.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility,.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f7fb;--surface:#fff;--surface-2:#f8fafc;--surface-3:#eef2ff;--border:#dbe2ea;--border-strong:#c7d2e1;--text:#172033;--muted:#5f6f84;--primary:#4f46e5;--primary-2:#4338ca;--primary-soft:#eef2ff;--success:#059669;--success-soft:#d1fae5;--warning:#d97706;--warning-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fee2e2;--shadow:0 18px 44px #0f172a1a;--radius:8px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Plus Jakarta Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{border-radius:var(--radius);background:var(--primary-2);color:#fff;cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 13px;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s;display:inline-flex}button:hover{background:var(--primary)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.radix-select-trigger:focus-visible,.radix-tab-trigger:focus-visible{outline-offset:2px;outline:3px solid #4f46e538}button:disabled{opacity:.52;cursor:not-allowed}button.secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}button.secondary:hover{background:var(--surface-2);border-color:var(--primary);color:var(--primary-2)}button.ghost{color:var(--muted);border-color:var(--border);background:0 0}button.ghost:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}button.danger{background:var(--danger)}button.danger:hover{background:#b91c1c}button.success{background:var(--success)}button.success:hover{background:#047857}input,textarea,select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:var(--radius);outline:none;padding:10px 12px;transition:border-color .18s,box-shadow .18s,background-color .18s}input:hover,textarea:hover,select:hover{border-color:var(--border-strong)}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51f}input:disabled,textarea:disabled,select:disabled{color:#64748b;cursor:not-allowed;background:#f1f5f9}textarea{resize:vertical;min-height:112px;line-height:1.55}label{color:var(--muted);margin-bottom:7px;font-size:13px;font-weight:700;display:block}.login-page{background:var(--surface-2);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);width:min(430px,100%);box-shadow:var(--shadow);border-radius:12px;padding:30px}.login-card h1{margin:0 0 8px;font-size:30px}.login-submit{width:100%;margin-top:12px}.login-highlights{flex-wrap:wrap;gap:8px;margin:18px 0 20px;display:flex}.login-highlights span{background:var(--surface-2);border:1px solid var(--border);color:#334155;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.logo,.brand-mark{background:var(--primary-2);color:#fff;letter-spacing:0;place-items:center;font-weight:900;display:grid}.logo{border-radius:12px;width:52px;height:52px;margin-bottom:18px}.shell{grid-template-rows:minmax(0,1fr) 58px;height:100dvh;display:grid;overflow:hidden}.workspace{grid-template-columns:260px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--surface);min-height:0;padding:18px;overflow:auto}.brand{align-items:center;gap:12px;margin-bottom:22px;display:flex}.brand-mark{border-radius:10px;flex:none;width:40px;height:40px}.brand-title{font-size:18px;font-weight:900}.side-user{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin:-8px 0 18px;padding:0 0 16px;display:flex;position:relative}.side-username{color:var(--text);margin-top:6px;font-weight:800}.settings-wrap{position:relative}.settings-menu{z-index:30;border:1px solid var(--border);background:var(--surface);width:142px;box-shadow:var(--shadow);border-radius:10px;gap:6px;padding:8px;display:grid;position:absolute;top:44px;right:0}.settings-menu button{justify-content:flex-start;width:100%}.nav{gap:6px;display:grid}.nav::-webkit-scrollbar{display:none}.nav button,.nav a{color:#475569;border-radius:var(--radius);background:0 0;border:1px solid #0000;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:10px 11px;font-weight:800;text-decoration:none;display:inline-flex}.nav button:hover,.nav a:hover{background:var(--surface-2);color:var(--text)}.nav button.active,.nav a.active{background:var(--primary-soft);color:var(--primary-2);border-color:#c7d2fe;font-weight:800}.main{min-height:0;padding:24px;overflow:auto}.page{max-width:1440px;margin:0 auto}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-copy{min-width:0}.page-title{letter-spacing:0;margin:0;font-size:28px;line-height:1.18}.page-desc{color:var(--muted);max-width:780px;margin:7px 0 0;line-height:1.55}.page-actions,.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 1px 2px #0f172a0a}.card-body{padding:18px}.card-title{margin:0 0 12px;font-size:16px}.grid{gap:16px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;min-height:96px;padding:18px;display:flex}.stat-value,.info-value{margin-top:5px;font-size:28px;font-weight:900;line-height:1}.stat-icon{width:42px;height:42px;color:var(--primary-2);background:var(--primary-soft);border-radius:8px;flex:none;place-items:center;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{margin-bottom:14px}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.compact-toolbar{margin-bottom:10px}.searchbar{grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:10px;margin-bottom:14px;display:grid}.task-filters{grid-template-columns:minmax(360px,1fr) 220px auto;align-items:start;gap:10px;margin-bottom:14px;display:grid}.task-filters .searchbar{margin-bottom:0}.group-filter{min-width:0}.pagination{justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.settings-card{max-width:560px}.table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:13px 14px}th{color:#475569;text-transform:uppercase;letter-spacing:0;background:var(--surface-2);font-size:12px;font-weight:900}tbody tr:last-child td{border-bottom:0}tr:hover td{background:#fafbff}tr.active-row td{background:var(--primary-soft)}.badge,.pill{color:#334155;border:1px solid var(--border);background:#eef2f7;border-radius:999px;align-items:center;gap:5px;min-height:24px;margin:2px;padding:3px 9px;font-size:12px;font-weight:800;display:inline-flex}.badge.success{background:var(--success-soft);color:#047857;border-color:#a7f3d0}.badge.warning{background:var(--warning-soft);color:#92400e;border-color:#fde68a}.badge.danger{background:var(--danger-soft);color:#b91c1c;border-color:#fecaca}.muted{color:var(--muted)}.small{font-size:12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty{text-align:center;color:var(--muted);place-items:center;gap:10px;padding:44px 20px;display:grid}.empty svg{color:#94a3b8}.error,.notice{border-radius:8px;align-items:center;gap:8px;padding:10px 12px;line-height:1.45;display:flex}.error{color:#991b1b;background:#fff1f2;border:1px solid #fecdd3}.notice{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe}.key-box{white-space:pre-wrap;word-break:break-all;color:#d1fae5;background:#0f172a;border-radius:8px;padding:12px;line-height:1.5}.public-key-cell{align-items:center;gap:8px;min-width:260px;display:flex}.public-key-short{text-overflow:ellipsis;vertical-align:middle;max-width:420px;display:inline-block;overflow:hidden}.health-url{overflow-wrap:anywhere;max-width:420px;font-weight:800}.health-rule-box{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;gap:8px;margin:2px 0 14px;padding:12px;display:grid}.health-rule-box>div{align-items:center;gap:8px;display:flex}.health-rule-box p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.health-filters{grid-template-columns:minmax(360px,1fr) 180px;align-items:start;gap:10px;margin-bottom:14px;display:grid}.health-filters .searchbar,.health-filter-status{margin-bottom:0}.task-desc-summary{min-height:0;color:var(--muted);white-space:normal;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;margin-top:4px;padding:0;font-size:12px;font-weight:700;line-height:1.5;display:block}.task-desc-summary:hover{color:var(--primary-2);background:0 0;text-decoration:underline}.task-desc-full{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);line-height:1.65}.execution-cell{text-align:center;vertical-align:middle}.execution-cell .badge{margin-top:4px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:min(1080px,96vw);max-height:92vh;box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.radix-overlay{animation:.16s ease-out overlayShow}.radix-dialog{z-index:60;animation:.18s cubic-bezier(.16,1,.3,1) dialogShow;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.modal.small-modal{width:min(560px,96vw)}.modal-head{border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.modal-head h2{margin:0;font-size:18px;line-height:1.3}.modal-body{padding:18px;overflow:auto}.modal-foot{border-top:1px solid var(--border);background:var(--surface-2);justify-content:flex-end;gap:10px;padding:14px 18px;display:flex}.tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:16px;padding-bottom:8px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);background:0 0;border:1px solid #0000}.tabs button.active,.radix-tab-trigger[data-state=active]{background:var(--primary-soft);color:var(--primary-2);border-color:#c7d2fe;font-weight:800}.radix-tab-trigger{color:var(--muted);border-radius:var(--radius);background:0 0;border:1px solid #0000;padding:8px 13px}.radix-tab-trigger:hover{background:var(--surface-2);color:var(--text)}.console{white-space:pre-wrap;color:#dcfce7;background:#080d16;border:1px solid #111827;border-radius:10px;height:460px;padding:14px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.55;overflow:auto}.terminal-wrap{border:1px solid var(--border);background:#000;border-radius:10px;height:66vh;min-height:460px;padding:8px}.terminal-fullscreen-wrap{--terminal-safe-bottom:32px;min-height:0;padding:8px 8px calc(8px + var(--terminal-safe-bottom) + env(safe-area-inset-bottom,0px));background:#000;border:1px solid #111827;border-radius:10px;flex-direction:column;flex:1;margin:14px;display:flex;overflow:hidden}.terminal-fit-area{flex:1;width:100%;min-height:0;overflow:hidden}.terminal-fit-area .xterm{width:100%;height:100%}.terminal-fit-area .xterm-viewport{overflow-y:auto}.mobile-shell-keys{z-index:95;pointer-events:none;justify-content:flex-end;width:min(360px,100vw - 20px);display:none;position:fixed}.shell-key-toggle{pointer-events:auto;background:var(--primary-2);color:#fff;min-height:38px;box-shadow:var(--shadow);border-color:#c7d2fe;padding:8px 12px}.shell-key-panel{pointer-events:auto;border:1px solid var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:10px;flex-wrap:wrap;gap:6px;padding:8px;display:flex}.shell-key-head{color:var(--text);flex:0 0 100%;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 2px 4px;display:grid}.shell-key-head strong{min-width:0}.shell-key-head button{height:30px;min-height:30px;padding:4px 10px}.shell-key-head .shell-key-drag{cursor:grab;touch-action:none;width:30px;padding:0}.shell-key{flex:none;min-width:46px;height:34px;min-height:34px;padding:0 10px;font-size:12px;font-weight:900}.fullscreen-window{z-index:80;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0 0 58px}.fullscreen-window.minimized{visibility:hidden;pointer-events:none;opacity:0}.fullscreen-titlebar{border-bottom:1px solid var(--border);background:var(--surface);flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 18px;display:flex}.log-browser{grid-template-columns:320px 1fr;gap:16px;min-height:620px;display:grid}.log-tree,.history-list,.history-output,.file-tree{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:12px;overflow:auto}.log-viewer,.file-editor{min-width:0}.fullscreen-log-browser{flex:1;grid-template-columns:360px minmax(0,1fr);min-height:0;padding:14px}.fullscreen-log-browser .log-tree,.fullscreen-log-viewer{min-height:0;max-height:calc(100vh - 150px)}.fullscreen-log-viewer{flex-direction:column;display:flex}.fullscreen-console{flex:1;height:auto;min-height:0}.history-window{flex:1;grid-template-columns:minmax(460px,44%) minmax(0,1fr);gap:14px;min-height:0;padding:14px;display:grid;overflow:hidden}.history-list,.history-output{min-height:0}.history-output{flex-direction:column;display:flex}.file-manager{grid-template-columns:340px 1fr;gap:16px;min-height:70vh;display:grid}.file-editor{flex-direction:column;display:flex}.monaco-wrap{background:#020617;border:1px solid #111827;border-radius:10px;flex:1;min-height:560px;position:relative;overflow:hidden}.monaco-wrap textarea,.monaco-editor textarea{min-height:0!important;box-shadow:none!important;resize:none!important;background:0 0!important;border:0!important;padding:0!important}.image-preview-wrap{background-color:#111827;background-image:linear-gradient(45deg,#0f172a 25%,#0000 25%),linear-gradient(-45deg,#0f172a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#0f172a 75%),linear-gradient(-45deg,#0000 75%,#0f172a 75%),none;background-position:0 0,0 10px,10px -10px,-10px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border:1px solid #111827;border-radius:10px;flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:auto}.image-preview{object-fit:contain;max-width:100%;max-height:100%;box-shadow:0 18px 50px #02061747}.fullscreen-file-manager{flex:1;grid-template-columns:360px minmax(0,1fr);min-height:0;padding:14px}.fullscreen-file-manager .file-tree,.fullscreen-file-manager .file-editor{min-height:0;max-height:calc(100vh - 150px)}.fullscreen-file-manager .file-tree{flex-direction:column;display:flex;overflow:hidden}.tree-scroll{flex:1;min-height:0;padding-right:4px;overflow:auto}.sticky-tools,.editor-toolbar{z-index:2;background:var(--surface);border-bottom:1px solid var(--border);margin-bottom:10px;padding-bottom:10px;position:sticky;top:0}.editor-toolbar{border:1px solid var(--border);border-radius:10px;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.file-action-row{flex:none;align-items:center;gap:8px;display:inline-flex}.file-menu-wrap{position:relative}.file-menu{z-index:5;border:1px solid var(--border);background:var(--surface);min-width:132px;box-shadow:var(--shadow);border-radius:10px;padding:6px;position:absolute;top:44px;right:0}.file-menu button{justify-content:flex-start;width:100%}.floating-task-menu{z-index:2147483646;border:1px solid var(--border);background:var(--surface);min-width:132px;box-shadow:var(--shadow);border-radius:10px;padding:6px;position:fixed}.floating-task-menu button{justify-content:flex-start;width:100%}.danger-text{color:var(--danger)!important}.danger-text:hover{background:var(--danger-soft)!important;color:#b91c1c!important;border-color:#fecaca!important}.path-row{align-items:center;gap:8px;width:100%;display:flex}.path-row input{min-width:0}.icon-btn{flex:none;justify-content:center;width:38px;height:38px;padding:0}.fullscreen-monaco{flex:1;height:100%;min-height:0}.file-notice{flex:none;margin-bottom:10px}.mini-taskbar{z-index:90;border-top:1px solid var(--border);background:var(--surface);justify-content:flex-start;align-items:center;gap:8px;height:58px;min-height:58px;padding:6px 12px;display:flex;overflow:auto hidden}.mini-taskbar.empty{opacity:.72;justify-content:center}.taskbar-item{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;flex:none;align-items:center;gap:4px;min-width:0;max-width:260px;height:42px;padding:3px;display:inline-flex}.taskbar-item.active{background:var(--primary-soft);border-color:#c7d2fe}.taskbar-item button{height:34px;min-height:34px;padding-top:0;padding-bottom:0}.taskbar-main{justify-content:flex-start;min-width:0;max-width:210px}.taskbar-main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.taskbar-close{flex:none;width:32px;padding-left:0;padding-right:0}.tree-list{gap:4px;display:grid}.tree-child{border-left:1px dashed var(--border-strong);margin-left:14px;padding-left:10px}.tree-item{width:100%;color:var(--text);background:0 0;border:1px solid #0000;justify-content:space-between;padding:8px 10px}.tree-item:hover,.tree-item.active{background:var(--primary-soft);color:var(--primary-2);border-color:#c7d2fe}.tree-name{align-items:center;gap:8px;min-width:0;display:inline-flex}.tree-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-spinner,.loading-line svg,.editor-loading svg{flex:none;animation:.8s linear infinite spin}.confirm-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a6b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border);background:var(--surface);width:min(420px,94vw);box-shadow:var(--shadow);border-radius:12px;padding:18px}.confirm-icon{color:#92400e;background:var(--warning-soft);border:1px solid #fde68a;border-radius:10px;place-items:center;width:38px;height:38px;margin-bottom:12px;display:grid}.confirm-icon.danger{color:#b91c1c;background:var(--danger-soft);border-color:#fecaca}.confirm-dialog h3{margin:0 0 8px;font-size:18px}.confirm-copy p{color:var(--muted);overflow-wrap:anywhere;margin:0 0 16px;line-height:1.5}.confirm-copy pre{border:1px solid var(--border);background:var(--surface-2);max-height:140px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:0 0 16px;padding:10px;overflow:auto}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.param-card{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;margin-bottom:10px;padding:12px}.compact-param,.log-path-card{grid-template-columns:32px minmax(0,1fr);align-items:start;gap:12px;display:grid}.param-index{background:var(--primary-soft);width:28px;height:28px;color:var(--primary-2);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.param-fields{min-width:0}.param-check{align-self:end;margin-bottom:14px}.compact-textarea{min-height:92px}.log-path-table table{min-width:900px}.log-path-table td{vertical-align:middle}.log-path-table input{min-width:180px}.choice-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:12px}.host-route-panel{gap:12px;margin-bottom:12px;display:grid}.run-param-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.run-param{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:12px}.host-select{width:220px}.loading-line{color:var(--muted);align-items:center;gap:7px;padding:8px 0;font-size:12px;font-weight:700;display:inline-flex}.editor-loading{z-index:4;color:#e2e8f0;background:#020617b8;place-items:center;gap:8px;font-weight:800;display:grid;position:absolute;inset:0}.checkbox-list{flex-wrap:wrap;gap:8px;display:flex}.checkbox-pill{color:#334155;border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:13px;font-weight:700;display:inline-flex}.checkbox-pill input{width:auto;margin:0}.radix-check-pill{cursor:pointer;transition:background-color .18s,border-color .18s,color .18s}.radix-check-pill:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-2)}.radix-checkbox{border:1px solid var(--border-strong);background:var(--surface);color:#fff;border-radius:5px;flex:none;place-items:center;width:16px;height:16px;min-height:16px;padding:0;display:inline-grid}.radix-checkbox[data-state=checked]{background:var(--primary-2);border-color:var(--primary-2)}.radix-select-trigger{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:inline-flex}.radix-select-trigger:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #4f46e51f}.radix-select-content{z-index:2147483647;min-width:var(--radix-select-trigger-width);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:10px;padding:6px;overflow:hidden}.radix-select-item{color:var(--text);cursor:pointer;border-radius:8px;outline:none;padding:9px 10px}.radix-select-item[data-highlighted]{background:var(--primary-soft);color:var(--primary-2)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes overlayShow{0%{opacity:0}to{opacity:1}}@keyframes dialogShow{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=980px){.shell{grid-template-rows:minmax(0,1fr) 58px}.workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr);gap:12px;padding:12px 14px;display:grid;overflow:visible}.brand,.side-user{margin-bottom:0}.side-user{border-bottom:0;padding-bottom:0}.brand{gap:10px}.brand-mark{width:36px;height:36px}.brand-title{font-size:16px}.nav{scroll-snap-type:x proximity;scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.nav button,.nav a{scroll-snap-align:start;flex:none;width:auto;min-height:38px}.main{padding:18px}.grid.two,.grid.three,.form-row,.stats-grid,.log-browser,.fullscreen-log-browser,.file-manager,.fullscreen-file-manager,.history-window,.task-filters,.run-param-list{grid-template-columns:1fr}.page-head,.toolbar,.editor-toolbar,.fullscreen-titlebar{flex-direction:column;align-items:stretch}.page-actions{justify-content:flex-start}.searchbar{grid-template-columns:auto minmax(0,1fr)}.searchbar button{grid-column:1/-1}.fullscreen-log-browser .log-tree,.fullscreen-log-viewer,.fullscreen-file-manager .file-tree,.fullscreen-file-manager .file-editor{max-height:none}.fullscreen-window{overflow:auto}.fullscreen-log-browser,.fullscreen-file-manager,.history-window{overflow:visible}.fullscreen-console,.monaco-wrap,.image-preview-wrap{min-height:420px}.terminal-fullscreen-wrap{min-height:480px}}@media (hover:none),(pointer:coarse),(width<=720px){.mobile-shell-keys{display:flex}}@media (width<=720px){.page-head{gap:12px;margin-bottom:14px}.page-title{font-size:24px}.page-desc{font-size:13px}.card-body{padding:14px}.pagination{flex-direction:column;align-items:stretch}.pagination .actions{width:100%}.pagination .actions button{flex:1 1 0}.table-wrap{background:0 0;border:0;overflow:visible}.table-wrap table{border-collapse:separate;border-spacing:0 10px;min-width:0}.table-wrap thead{display:none}.table-wrap tbody,.table-wrap tr,.table-wrap td{width:100%;display:block}.table-wrap tbody tr{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:10px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.table-wrap tbody tr:hover td{background:0 0}.table-wrap tbody tr.active-row{background:var(--primary-soft);border-color:#c7d2fe}.table-wrap tbody tr.active-row td{background:0 0}.table-wrap td{border-bottom:1px solid var(--border);overflow-wrap:anywhere;grid-template-columns:minmax(82px,32%) minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px;display:grid}.table-wrap td:last-child{border-bottom:0}.table-wrap td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:900}.table-wrap td:empty{display:none}.table-wrap td .actions{justify-content:flex-start}.execution-cell{text-align:left}.log-path-table input,.public-key-cell{min-width:0}.public-key-short{max-width:100%}}@media (width<=560px){.login-card{padding:22px}.sidebar{gap:10px;padding:10px}.side-user{align-items:flex-start}.settings-menu{right:0}.nav button,.nav a{padding:9px 10px;font-size:13px}.main{padding:12px}.card-body,.modal-body{padding:14px}.page-title{font-size:22px}.stat-card{min-height:82px;padding:14px}.stat-value,.info-value{font-size:24px}.actions,.page-actions,.modal-foot{align-items:stretch}.actions>button,.page-actions>button,.modal-foot>button{width:100%}.actions>button.icon-btn,.file-action-row>button.icon-btn,.fullscreen-titlebar .actions>button.icon-btn{width:38px}.file-action-row{flex-wrap:wrap;justify-content:flex-end}.editor-toolbar,.modal-backdrop{padding:10px}.radix-dialog{width:100vw;max-width:100vw;top:0;left:0;transform:none}.modal{border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh}.modal-head,.modal-foot{padding:12px 14px}.tabs{margin-left:-2px;margin-right:-2px;padding-bottom:6px}.radix-tab-trigger{flex:none;padding:8px 10px;font-size:13px}.fullscreen-window{inset:0 0 58px}.fullscreen-titlebar{min-height:auto;padding:10px 12px}.fullscreen-titlebar h2{font-size:18px}.fullscreen-log-browser,.fullscreen-file-manager,.history-window{gap:10px;padding:10px}.log-tree,.history-list,.history-output,.file-tree{padding:10px}.console{padding:10px;font-size:12px;line-height:1.5}.fullscreen-console,.monaco-wrap,.image-preview-wrap{min-height:360px}.terminal-fullscreen-wrap{min-height:400px;margin:10px}.shell-key{min-width:44px}.mini-taskbar{padding:6px 8px}.taskbar-item{max-width:220px}.taskbar-main{max-width:170px}.confirm-actions{flex-direction:column-reverse}.confirm-actions button{width:100%}}
