.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-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:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.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}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0f14;--panel:#131a22;--panel-strong:#18212b;--panel-border:#263241;--text:#eef4fb;--muted:#95a3b5;--accent:#39c0a3;--accent-soft:#39c0a324;--danger:#f87171;--warning:#fbbf24;--info:#60a5fa;--success:#34d399}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:264px minmax(0,1fr);min-height:100vh;display:grid}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{border:1px solid var(--panel-border);background:var(--panel);border-radius:8px;width:min(420px,100%);padding:24px}.login-panel>div:first-child span{color:var(--accent);text-transform:uppercase;font-size:.78rem;font-weight:800}.login-panel h1{margin:8px 0 0;font-size:1.6rem}.sidebar{border-right:1px solid var(--panel-border);background:#0f151c;grid-template-rows:auto 1fr auto;padding:24px 18px;display:grid}.brand{align-items:center;gap:12px;margin-bottom:32px;display:flex}.brand-mark{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border:1px solid #39c0a380;border-radius:8px;place-items:center;font-weight:800;display:grid}.brand strong,.brand span{display:block}.brand span,.page-header p,.panel p,.stat-card p,.stat-card span{color:var(--muted)}.nav-list{gap:6px;display:grid}.nav-link{color:#cbd5e1;border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.nav-link:hover{color:var(--text);background:#17212b}.sidebar-footer{color:var(--muted);margin-top:24px;font-size:.76rem}.content{width:min(1120px,100%);padding:36px}.topbar{justify-content:flex-end;margin-bottom:18px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:28px;display:flex}.page-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.page-header span{color:var(--accent);text-transform:uppercase;font-size:.78rem;font-weight:700}.page-header h1{margin:8px 0;font-size:2rem}.page-header p{max-width:760px;margin:0;line-height:1.6}.stats-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;margin-bottom:16px;display:grid}.stat-card,.panel{border:1px solid var(--panel-border);background:var(--panel);border-radius:8px}.stat-card{min-height:126px;padding:18px}.stat-card strong{margin:12px 0 6px;font-size:2rem;display:block}.compact-stat{min-height:92px}.compact-stat strong{overflow-wrap:anywhere;font-size:1.1rem}.panel{padding:22px}.stack{gap:16px;display:grid}.split-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.small-heading{color:var(--muted);text-transform:uppercase;margin:0 0 10px;font-size:.8rem}.metric-list{gap:8px;display:grid}.metric-row{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.topology-grid,.group-grid,.agent-node-list{gap:12px;display:grid}.region-node,.group-node,.agent-node{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px}.region-header{width:100%;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:14px;display:grid}.region-header small,.agent-node small{color:var(--muted)}.group-grid{padding:0 14px 14px}.group-node{padding:14px}.agent-node{grid-template-columns:1fr auto;gap:6px 12px;padding:12px;display:grid}.agent-node small{grid-column:1/-1}.heat-low{border-color:#34d3996b}.heat-medium{border-color:#fbbf248c}.heat-high{border-color:#f87171a6}.panel h2{margin:0 0 8px;font-size:1rem}.panel p{margin:0;line-height:1.6}.section-heading,.toolbar,.modal-header,.modal-actions,.header-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-heading{margin-bottom:16px}.section-heading span,.modal-header span,.detail-item span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:700}.section-heading h2,.modal-header h2{margin:4px 0 0}.toolbar{flex-wrap:wrap;justify-content:flex-start;margin-bottom:16px}input,select,textarea{border:1px solid var(--panel-border);width:100%;color:var(--text);font:inherit;background:#0e151d;border-radius:8px;outline:none}input,select{min-height:40px;padding:0 12px}textarea{resize:vertical;padding:12px;line-height:1.5}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px var(--accent-soft);border-color:#39c0a3bf}.toolbar input{max-width:320px}.toolbar select{width:180px}.button,.button-secondary,.icon-button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.button{background:var(--accent);color:#06100d;gap:8px;min-height:40px;padding:0 14px}.button:disabled{cursor:not-allowed;opacity:.65}.button-secondary{border-color:var(--panel-border);min-height:40px;color:var(--text);background:0 0;padding:0 14px}.icon-button{border-color:var(--panel-border);width:36px;height:36px;color:var(--text);background:#0e151d}.text-link,.row-link{color:var(--accent);font-weight:700}.text-link:hover,.row-link:hover{text-decoration:underline}.table-wrap{border:1px solid var(--panel-border);border-radius:8px;width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--panel-border);text-align:left;vertical-align:middle;white-space:nowrap;height:48px;padding:0 14px}th{color:var(--muted);text-transform:uppercase;background:#101720;font-size:.75rem;font-weight:800}tbody tr:hover{background:#ffffff06}tbody tr:last-child td{border-bottom:0}.status-pill{border:1px solid var(--panel-border);min-height:24px;color:var(--muted);text-transform:uppercase;background:#0e151d;border-radius:999px;align-items:center;padding:0 9px;font-size:.75rem;font-weight:800;display:inline-flex}.status-online,.status-success{color:var(--success);background:#34d3991f;border-color:#34d3996b}.status-running,.status-dispatched,.status-scheduled,.status-queued,.status-created,.status-updating{color:var(--info);background:#60a5fa1f;border-color:#60a5fa6b}.status-failed,.status-timeout,.status-cancelled,.status-offline,.status-unreachable{color:var(--danger);background:#f871711f;border-color:#f871716b}.empty-state,.muted-line,.error-banner,.info-banner,.success-banner{border-radius:8px}.empty-state{border:1px dashed var(--panel-border);background:#ffffff04;padding:24px}.empty-state-action{margin-top:16px}.empty-state p,.muted-line{color:var(--muted)}.error-banner{color:#fecaca;background:#f871711a;border:1px solid #f871716b;margin-bottom:16px;padding:12px 14px}.info-banner{color:#bfdbfe;background:#60a5fa1a;border:1px solid #60a5fa6b;margin-bottom:16px;padding:12px 14px}.warning-banner{color:#fde68a;background:#fbbf241f;border:1px solid #fbbf247a;border-radius:8px;margin:16px 0;padding:12px 14px}.success-banner{color:#bbf7d0;background:#34d3991a;border:1px solid #34d3996b;margin-top:16px;padding:12px 14px}.badge-warning{min-height:22px;color:var(--warning);text-transform:uppercase;background:#fbbf241f;border:1px solid #fbbf246b;border-radius:999px;align-items:center;margin-left:8px;padding:0 8px;font-size:.72rem;font-weight:800;display:inline-flex}.mono-cell{text-overflow:ellipsis;max-width:360px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;overflow:hidden}.chart-wrap{gap:14px;display:grid}.chart-wrap svg{border:1px solid var(--panel-border);background:#0e151d;border-radius:8px;width:100%;min-height:180px}.chart-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.timeseries-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.timeseries-item{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;padding:10px}.timeseries-item span{color:var(--muted);font-size:.75rem;font-weight:700;display:block}.timeseries-item strong{margin-top:4px;display:block}.log-line-cell{text-overflow:ellipsis;max-width:560px;overflow:hidden}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.detail-item{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;min-width:0;padding:12px}.detail-item strong{overflow-wrap:anywhere;margin-top:6px;font-size:.92rem;display:block}.chip-row{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.chip-row.compact{margin-top:0}.chip{border:1px solid var(--panel-border);background:var(--accent-soft);color:#c7fff2;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.78rem;font-weight:700;display:inline-flex}.modal-backdrop{z-index:50;background:#0000009e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--panel-border);background:var(--panel);border-radius:8px;width:min(620px,100%);max-height:min(760px,100%);padding:20px;overflow:auto;box-shadow:0 24px 80px #0000006b}.modal-wide{width:min(980px,100%)}.terminal-modal{grid-template-rows:auto minmax(0,1fr);width:min(1120px,100%);height:min(760px,100vh - 36px);display:grid}.terminal-surface{border:1px solid var(--panel-border);background:#070b10;border-radius:8px;min-height:0;padding:10px;overflow:hidden}.terminal-surface .xterm{height:100%}.onboarding-modal{max-height:calc(100vh - 36px);overflow:auto}.onboarding-grid{gap:16px;display:grid}.onboarding-section{border:1px solid var(--panel-border);background:#0f151cb8;border-radius:8px;gap:12px;padding:16px;display:grid}.onboarding-section h3,.docs-panel h2{margin:0}.compact-form{margin-top:0}.command-block{border:1px solid var(--panel-border);color:#dbeafe;white-space:pre;background:#070b10;border-radius:8px;padding:14px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.86rem;line-height:1.7;overflow:auto}.command-line{display:inline}.syntax-command{color:#93c5fd}.syntax-env{color:#86efac}.syntax-url{color:#fcd34d}.verification-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.verification-step{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;padding:12px}.verification-step p,.docs-panel p{color:var(--muted);margin:8px 0 0}.tabs{border:1px solid var(--panel-border);background:#ffffff08;border-radius:8px;gap:4px;margin-top:18px;padding:4px;display:inline-flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-weight:700}.tabs button:disabled{cursor:not-allowed;opacity:.55}.tabs .tab-active{background:var(--accent);color:#071018}.form-grid{gap:14px;margin-top:18px;display:grid}.form-grid label{gap:7px;display:grid}.form-grid label span{color:var(--muted);font-size:.78rem;font-weight:700}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal-actions{justify-content:flex-end}.bulk-bar{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;grid-template-columns:auto repeat(4,minmax(120px,1fr)) auto;align-items:center;gap:10px;margin-bottom:16px;padding:12px;display:grid}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent);padding:0}.log-viewer{border:1px solid var(--panel-border);color:#cbd5e1;white-space:pre-wrap;background:#070b10;border-radius:8px;min-height:180px;padding:14px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.85rem;line-height:1.6;overflow:auto}.live-log-viewer{align-content:start;gap:2px;max-height:360px;display:grid}.live-log-line{grid-template-columns:88px 64px minmax(0,1fr);align-items:start;gap:10px;display:grid}.live-log-line span,.live-log-line strong{color:var(--muted);font-size:.76rem}.live-log-line.stdout code{color:#d1fae5}.live-log-line.stderr code{color:#fecaca}.live-log-line code{overflow-wrap:anywhere;white-space:pre-wrap}.live-badge{color:#86efac;vertical-align:middle;background:#22c55e29;border-radius:999px;align-items:center;min-height:22px;margin-left:8px;padding:0 8px;font-size:.7rem;display:inline-flex}.live-badge.muted{color:var(--muted);background:#94a3b824}.file-transfer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.file-transfer-card{border:1px solid var(--panel-border);background:#0f151c;border-radius:8px;gap:12px;padding:14px;display:grid}.file-transfer-card label{gap:7px;display:grid}.file-transfer-card label span{color:var(--muted);font-size:.78rem;font-weight:700}.file-manager-toolbar,.file-upload-inline,.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.file-manager-toolbar{margin-top:16px}.file-manager-path{border:1px solid var(--panel-border);font-family:var(--font-mono);overflow-wrap:anywhere;background:#0f151c;border-radius:8px;justify-content:space-between;gap:12px;margin:12px 0;padding:10px 12px;display:flex}.file-upload-inline{margin-bottom:12px}.selected-row{background:#38bdf814}.danger-link{color:#fca5a5}.transfer-status{border:1px solid var(--panel-border);color:var(--muted);overflow-wrap:anywhere;background:#0f151c;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;padding:12px;display:flex}.error-text{color:#fca5a5}.bootstrap-result{gap:10px;display:grid}.bootstrap-result .table-wrap{max-height:360px}.bootstrap-result p{color:var(--muted);overflow-wrap:anywhere;margin:0}details summary{cursor:pointer;color:var(--accent);font-weight:700}details .log-viewer{min-width:320px;min-height:120px;max-height:260px;margin-top:8px}@media (max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:10;padding:14px;position:sticky;top:0}.brand{margin-bottom:12px}.nav-list,.stats-grid{grid-template-columns:1fr}.content{padding:24px 18px}.content,.toolbar input,.toolbar select{width:100%}.section-heading,.page-header,.toolbar,.modal-actions,.bulk-bar{flex-direction:column;align-items:stretch}.bulk-bar{display:flex}.button,.button-secondary{width:100%}.detail-grid,.file-transfer-grid,.form-row,.timeseries-grid,.split-grid,.verification-grid,.region-header,.agent-node{grid-template-columns:1fr}}
