.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}@font-face{font-family:IBM Plex Sans;font-weight:100 900;font-style:normal;src:url(/assets/fonts/IBMPlexSans-Variable.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:400;font-style:normal;src:url(/assets/fonts/IBMPlexMono-Regular.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:500;font-style:normal;src:url(/assets/fonts/IBMPlexMono-Medium.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:600;font-style:normal;src:url(/assets/fonts/IBMPlexMono-SemiBold.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-weight:700;font-style:normal;src:url(/assets/fonts/IBMPlexMono-Bold.woff2) format("woff2")}:root{--bg-main: #1a1a2e;--bg-card: #252536;--bg-card-hover: #2c2c42;--bg-topbar: #ffffff;--bg-bottombar: #f5f0eb;--bg-input: #1e1e30;--widget-purple: #7c3aed;--widget-green: #10b981;--widget-blue: #3b82f6;--widget-red: #ef4444;--widget-orange: #f59e0b;--widget-teal: #14b8a6;--text-white: #ffffff;--text-light: #e2e8f0;--text-muted: #94a3b8;--text-dim: #64748b;--text-dark: #1e293b;--text-dark-muted: #64748b;--border-dark: rgba(255, 255, 255, .06);--border-light: #e2e8f0;--shadow-card: 0 4px 24px rgba(0, 0, 0, .3);--shadow-widget: 0 8px 32px rgba(0, 0, 0, .4);--shadow-topbar: 0 2px 12px rgba(0, 0, 0, .08)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-main);color:var(--text-white);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;min-height:100vh}.dashboard-area{flex:1}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:10px}.mono{font-family:IBM Plex Mono,monospace;font-size:.875rem}.hud-bar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--bg-topbar);box-shadow:var(--shadow-topbar)}.hud-left,.hud-right{display:flex;align-items:center;gap:20px}.hud-logo{display:flex;align-items:center;gap:12px}.logo-mark{width:36px;height:36px}.logo-main{font-size:18px;font-weight:900;letter-spacing:3px;color:var(--text-dark)}.logo-sub{display:block;font-size:10px;color:var(--text-dark-muted);letter-spacing:1.5px;font-weight:600;text-transform:uppercase}.logo-text-group{line-height:1.2}.hud-center{display:flex;align-items:center;gap:20px}.system-status{display:flex;align-items:center;gap:8px}.status-indicator{position:relative;width:10px;height:10px}.pulse-dot{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--widget-green);border-radius:50%}.pulse-dot.offline{background:var(--widget-red)}.pulse-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid var(--widget-green);border-radius:50%;animation:pulse 2s ease-out infinite}.pulse-ring.offline{border-color:var(--widget-red)}@keyframes pulse{0%{transform:scale(.8);opacity:1}to{transform:scale(2);opacity:0}}.status-text{font-size:12px;font-weight:700;letter-spacing:.5px}.status-text.online{color:var(--widget-green)}.status-text.offline{color:var(--widget-red)}.hud-clock{font-size:20px;font-weight:800;color:var(--text-dark);font-variant-numeric:tabular-nums}.hud-date{font-size:12px;color:var(--text-dark-muted);font-weight:600}.hud-metric{text-align:right}.metric-label{display:block;font-size:10px;font-weight:700;letter-spacing:1px;color:var(--text-dark-muted);text-transform:uppercase}.metric-value{font-size:14px;font-weight:800;color:var(--text-dark);font-variant-numeric:tabular-nums}.dashboard-area{padding:10px;flex:1}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.react-draggable-dragging{z-index:100;opacity:.9;box-shadow:0 16px 48px #00000080!important}.react-grid-item>.react-resizable-handle{position:absolute;width:22px;height:22px;bottom:0;right:0;cursor:se-resize;opacity:.5;transition:opacity .15s;overflow:visible;z-index:2;background:none}.react-grid-item:hover>.react-resizable-handle{opacity:.9}.react-grid-item>.react-resizable-handle:before{content:"";position:absolute;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 22px 22px;border-color:transparent transparent rgba(0,0,0,.3) transparent}.react-grid-item>.react-resizable-handle:after{content:""!important;position:absolute;right:3px;bottom:3px;width:8px;height:8px;border:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='15,3 21,3 21,9'/%3E%3Cline x1='21' y1='3' x2='14' y2='10'/%3E%3Cpolyline points='9,21 3,21 3,15'/%3E%3Cline x1='3' y1='21' x2='10' y2='14'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.react-grid-placeholder{background:var(--widget-purple)!important;opacity:.12!important;border:2px dashed var(--widget-purple)!important;border-radius:0!important}.widget{border-radius:0;padding:20px;height:100%;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:box-shadow .2s}.widget:hover{box-shadow:var(--shadow-widget)}.widget-dark{background:var(--bg-card);color:var(--text-white);box-shadow:var(--shadow-card)}.widget-purple{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:var(--text-white);box-shadow:0 8px 32px #7c3aed4d}.widget-green{background:linear-gradient(135deg,#10b981,#059669);color:var(--text-white);box-shadow:0 8px 32px #10b9814d}.widget-blue{background:linear-gradient(135deg,#3b82f6,#2563eb);color:var(--text-white);box-shadow:0 8px 32px #3b82f64d}.widget-teal{background:linear-gradient(135deg,#14b8a6,#0d9488);color:var(--text-white);box-shadow:0 8px 32px #14b8a64d}.widget-orange{background:linear-gradient(135deg,#f59e0b,#d97706);color:var(--text-white);box-shadow:0 8px 32px #f59e0b4d}.widget-red{background:linear-gradient(135deg,#ef4444,#dc2626);color:var(--text-white);box-shadow:0 8px 32px #ef44444d}.widget-anthracite{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);color:var(--text-white);box-shadow:0 8px 32px #0006}.widget-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-shrink:0}.widget-header-left{display:flex;align-items:center;gap:10px;flex-shrink:0}.widget-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:13px;opacity:.8;background:none}.widget-icon-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.widget-title{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;opacity:.85}.widget-badge{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:4px 0;background:none}.widget-badge .live-dot{width:7px;height:7px;background:#4ade80;border-radius:50%;animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.widget-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.widget-statusbar{display:flex;align-items:center;gap:0;flex-shrink:0;padding:6px 12px;margin:8px -20px -20px;background:#0003;font-size:10px;font-weight:600;color:#ffffff73;overflow:visible;white-space:nowrap}.widget-statusbar .sb-item{display:inline-flex;align-items:center;gap:4px}.widget-statusbar .sb-item i:not(.sb-live){font-size:8px;color:#ffffffb3!important}.widget-statusbar .sb-item i.sb-live{font-size:7px}.sb-sep{width:1px;height:10px;background:#ffffff1f;margin:0 8px;flex-shrink:0}.sb-refresh{flex-shrink:0;background:none;border:none;color:#ffffff80;cursor:pointer;font-size:10px;padding:2px 4px;margin-left:8px;transition:color .15s,transform .3s;line-height:1;display:flex;align-items:center}.sb-refresh:hover{color:#fff;transform:rotate(90deg)}.sb-refresh:active{transform:rotate(180deg)}.drag-handle{cursor:grab}.drag-handle:active{cursor:grabbing}.drag-grip{font-size:11px;opacity:.25;transition:opacity .15s}.drag-handle:hover .drag-grip{opacity:.6}.widget-move-btn{position:absolute;top:20px;right:8px;z-index:11;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:grab;opacity:.35;transition:opacity .15s;color:var(--text-white);font-size:11px}.widget-move-btn:hover{opacity:.9;background:#ffffff1a}.widget-del-btn{position:absolute;top:20px;right:36px;z-index:11;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;opacity:.35;transition:opacity .15s;color:var(--text-white);font-size:11px}.widget-del-btn:hover{opacity:.9!important;background:#ef44444d}.widget-max-btn{position:absolute;top:20px;right:36px;z-index:11;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;opacity:.35;transition:opacity .15s;color:var(--text-white);font-size:10px}.widget-max-btn:hover{opacity:.9!important;background:#ffffff1a}.widget-del-btn~.widget-max-btn{right:64px}.widget-min-btn{position:absolute;top:20px;right:64px;z-index:11;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;opacity:.35;transition:opacity .15s;color:var(--text-white);font-size:11px}.widget-min-btn:hover{opacity:.9!important;background:#ffffff1a}.widget-del-btn~.widget-max-btn~.widget-min-btn{right:92px}.widget-maximized-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}.widget-maximized{width:100%;height:100%;max-width:100%;max-height:100%;display:flex;flex-direction:column}.widget-maximized .widget-max-btn{top:20px;right:8px}.widget-maximized .widget-body{flex:1;overflow:auto}.gauge-bg{fill:none;stroke:#ffffff1a;stroke-width:6}.gauge-fill{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dasharray 1s ease}.gauge-fill.cyan{stroke:var(--widget-blue)}.gauge-fill.purple{stroke:var(--widget-purple)}.gauge-fill.green{stroke:var(--widget-green)}.gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.gauge-value{font-size:18px;font-weight:800}.system-gauges{display:flex;justify-content:space-around;margin-bottom:16px;padding:12px 0}.sys-gauge{text-align:center}.sys-gauge-label{display:block;margin-top:6px;font-size:11px;font-weight:700;letter-spacing:1px;opacity:.6}.sys-details{display:flex;flex-direction:column;overflow:auto;padding-right:12px}.sys-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13px;font-weight:600;color:#fff9}.sys-row:last-child{border-bottom:none}.sys-row .mono{font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:700;color:var(--text-white)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 0}.chat-msg{max-width:85%;padding:10px 14px;font-size:13px;font-weight:500;line-height:1.5;display:flex;gap:10px;align-items:flex-start}.chat-msg.user{align-self:flex-end;background:var(--widget-purple);color:#fff}.chat-msg.assistant{align-self:flex-start;background:#ffffff14;color:var(--text-light)}.chat-msg-content{flex:1;min-width:0}.jenny-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;margin-top:1px}.jenny-avatar-sm{width:20px;height:20px;border-radius:50%}.chat-empty{display:flex;align-items:center;gap:14px;padding:24px;color:var(--text-white);font-size:14px;font-weight:700;opacity:.8}.jenny-empty-avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0}.chat-msg pre{background:#0000004d;padding:8px 10px;margin:6px 0;overflow-x:auto;font-family:IBM Plex Mono,monospace;font-size:12px}.chat-msg code{font-family:IBM Plex Mono,monospace;font-size:12px;background:#0003;padding:1px 4px}.chat-input-row{display:flex;gap:8px;margin-top:10px;flex-shrink:0}.chat-input{flex:1;background:var(--bg-input);border:1px solid var(--border-dark);padding:10px 14px;font-family:IBM Plex Sans,sans-serif;font-size:14px;font-weight:500;color:var(--text-white);outline:none;transition:all .15s}.chat-input:focus{border-color:var(--widget-purple);box-shadow:0 0 0 2px #7c3aed33}.chat-input::placeholder{color:var(--text-dim)}.chat-send-btn{padding:10px 20px;background:var(--widget-purple);color:#fff;border:none;font-family:IBM Plex Sans,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s}.chat-send-btn:hover{box-shadow:0 4px 12px #7c3aed66}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-clear-btn{padding:10px 14px;background:#ffffff0f;color:var(--text-dim);border:1px solid var(--border-dark);font-size:13px;cursor:pointer;transition:all .15s}.chat-clear-btn:hover{color:#ef4444;border-color:#ef4444;background:#ef44441a}.chat-md{word-break:break-word}.chat-md p{margin:0 0 8px}.chat-md p:last-child{margin-bottom:0}.chat-md ul,.chat-md ol{margin:4px 0;padding-left:20px}.chat-md li{margin:2px 0}.chat-md strong{font-weight:700}.chat-md a{color:#a78bfa;text-decoration:underline}.chat-md a:hover{color:#c4b5fd}.chat-md h1,.chat-md h2,.chat-md h3{margin:8px 0 4px;font-weight:700}.chat-md h1{font-size:16px}.chat-md h2{font-size:15px}.chat-md h3{font-size:14px}.chat-md blockquote{border-left:3px solid var(--widget-purple);padding-left:10px;margin:6px 0;opacity:.8}.typing-indicator{font-size:12px;color:var(--text-muted);font-weight:600;padding:4px 0;display:flex;align-items:center;gap:8px}.typing-indicator span{animation:blink 1s ease-in-out infinite}.streaming-cursor{animation:blink .6s ease-in-out infinite;font-weight:300;opacity:.6}.terminal-output{flex:1;overflow-y:auto;padding:4px 0;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.6;cursor:text}.term-line{white-space:pre-wrap;word-break:break-all}.term-cmd{color:#4ade80;font-weight:600}.term-output{color:#e2e8f0}.term-error{color:#f87171}.term-info{color:#64748b;font-style:italic}.terminal-input{font-family:IBM Plex Mono,monospace!important;font-size:12px!important}.alert-tabs{display:flex;gap:0;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.alert-tab{padding:6px 12px;font-size:11px;font-weight:700;cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;color:#fff6;transition:all .15s;text-transform:uppercase;letter-spacing:.5px}.alert-tab:hover{color:#ffffffb3}.alert-tab.active{color:#fff;border-bottom-color:var(--widget-red)}.alert-actions{margin-left:auto;display:flex;gap:6px;opacity:0;transition:opacity .15s;align-items:center}.alert-item:hover .alert-actions{opacity:1}.alert-action-btn{background:none;border:none;color:#fff6;cursor:pointer;font-size:12px;padding:4px;transition:color .15s}.alert-action-btn:hover{color:#fff}.alert-action-delete:hover{color:red}.alert-feed{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:6px}.alert-item{display:flex;gap:10px;padding:10px 12px;background:#ffffff1a;transition:background .15s}.alert-item:hover{background:#ffffff26}.alert-item.critical{border-left:3px solid #fff;border-right:4px solid #FF0000}.alert-item.warning{border-left:3px solid var(--widget-orange)}.alert-item.info{border-left:3px solid var(--widget-blue)}.alert-severity{font-size:12px;font-weight:800;letter-spacing:.5px;padding:4px 10px;flex-shrink:0;height:fit-content}.alert-severity.critical{background:red;color:#fff}.alert-severity.warning{background:#f59e0b66;color:#fff}.alert-severity.info{background:#3b82f666;color:#fff}.alert-title{font-size:16px;font-weight:700;color:#fff}.alert-message{font-size:14px;color:#ffffffd9;margin-top:4px;line-height:1.5}.alert-time{font-size:13px;color:#fff9;margin-top:4px}.alert-empty{text-align:center;padding:24px;color:var(--text-white);font-size:13px;font-weight:500;opacity:.7}.status-bar{position:sticky;bottom:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--bg-bottombar);font-size:12px;font-weight:600;color:var(--text-dark-muted);box-shadow:0 -2px 12px #00000014}.status-bar-left,.status-bar-right{display:flex;align-items:center;gap:12px}.sb-item{display:flex;align-items:center;gap:5px}.sb-item i:not(.sb-live){font-size:11px;color:var(--widget-purple)}.sb-item strong{color:var(--text-dark);font-weight:700}.sb-divider{color:#cbd5e1}.sb-logout{background:none;border:none;color:var(--text-dark-muted);cursor:pointer;font-size:12px;padding:0;transition:color .15s}.sb-logout:hover{color:var(--widget-red)}.widget-dock{position:sticky;bottom:38px;z-index:99;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;min-height:44px;background:#1a1a2ed9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dock-item{display:flex;align-items:center;gap:10px;padding:10px 18px;cursor:pointer;border-left:6px solid transparent;background:var(--bg-card);box-shadow:var(--shadow-card);transition:all .15s;flex-shrink:0;-webkit-user-select:none;user-select:none}.dock-item:hover{background:#ffffff1f;box-shadow:0 0 12px #ffffff14;border-left-width:6px}.dock-item:active{transform:scale(.97)}.dock-item-icon{font-size:14px;opacity:.9}.dock-item-title{font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--text-light)}.dock-badge{min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:10px;padding:0 6px;font-size:11px;font-weight:700;color:#fff}.panel-table-wrap{flex:1;overflow-y:auto}.panel-table{width:100%;border-collapse:collapse}.panel-table th{text-align:left;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.6;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.1)}.panel-table td{padding:8px;font-size:12px;border-bottom:1px solid rgba(255,255,255,.04)}.panel-table tr:last-child td{border-bottom:none}.panel-table tr:hover td{background:#ffffff0a}.api-sections{display:flex;flex-direction:column;gap:12px;padding:4px 0}.api-section-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;margin-bottom:4px}.api-section-body{font-size:12px}.api-kv{display:flex;flex-wrap:wrap;gap:4px 16px}.api-kv-item{display:inline-flex;gap:4px}.api-kv-key{color:#ffffff73;font-size:11px}.api-nested-table{width:100%;border-collapse:collapse}.api-nested-table th{text-align:left;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;opacity:.5;padding:4px 8px;border-bottom:1px solid rgba(255,255,255,.08)}.api-nested-table td{padding:5px 8px;font-size:12px;border-bottom:1px solid rgba(255,255,255,.04)}.api-nested-table tr:last-child td{border-bottom:none}.api-nested-row td{padding:0 8px 8px}.api-nested-label{font-size:10px;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.3px;margin:8px 0 4px}.api-nested .api-nested{margin-left:0;padding:0;background:#00000026;border-radius:4px}.svc-badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;letter-spacing:.5px;text-transform:uppercase}.svc-badge.started{background:#10b98126;color:#34d399}.svc-badge.stopped{background:#ef444426;color:#f87171}.svc-badge.crashed{background:#ef444440;color:#fca5a5}.panel-command-output{flex:1;overflow:auto;padding:10px;background:#0003;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.6;color:var(--text-light);white-space:pre-wrap}.add-panel-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--widget-purple);border:none;cursor:pointer;color:#fff;font-size:14px;font-weight:700;transition:all .15s}.add-panel-btn:hover{box-shadow:0 4px 12px #7c3aed66;transform:scale(1.05)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.modal-box{background:var(--bg-card);padding:24px;min-width:300px;box-shadow:0 16px 48px #00000080}.modal-title{font-size:14px;font-weight:800;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px;color:var(--text-white)}.modal-options{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.modal-option{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#ffffff0a;border:1px solid var(--border-dark);cursor:pointer;color:var(--text-white);font-size:14px;font-weight:600;transition:all .15s}.modal-option:hover{background:#7c3aed26;border-color:var(--widget-purple)}.modal-option i{font-size:16px;opacity:.8;width:20px;text-align:center}.modal-close-btn{width:100%;padding:10px;background:none;border:1px solid var(--border-dark);color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.modal-close-btn:hover{background:#ffffff0a;color:var(--text-white)}.modal-close-btn:disabled{opacity:.3;cursor:default}.modal-wide{min-width:min(640px,90vw);max-width:90vw}.prompt-editor{width:100%;min-height:320px;padding:12px;background:var(--bg-input);border:1px solid var(--border-dark);color:var(--text-white);font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.5;resize:vertical;outline:none;transition:border-color .15s}.prompt-editor:focus{border-color:var(--widget-purple)}.modal-actions{display:flex;align-items:center;gap:8px;margin-top:12px}.modal-save-btn{padding:10px 24px;background:var(--widget-purple);border:none;color:#fff;font-family:IBM Plex Sans,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s}.modal-save-btn:hover{background:#6d28d9}.modal-save-btn:disabled{opacity:.5;cursor:default}.settings-btn{background:#7c3aed26!important}.settings-btn:hover{background:#7c3aed4d!important}.panel-flip-container{perspective:1000px;flex:1;min-height:0;cursor:default}.panel-flip-inner{width:100%;height:100%;transition:transform .5s ease;transform-style:preserve-3d;position:relative}.panel-flip-inner.flipped{transform:rotateY(180deg)}.panel-flip-front,.panel-flip-back{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;display:flex;flex-direction:column;overflow:auto}.panel-flip-back{transform:rotateY(180deg)}.panel-config{display:flex;flex-direction:column;height:100%;gap:8px}.panel-config-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.config-label{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.6;margin-top:4px}.config-input{width:100%;padding:6px 10px;background:#00000040;border:1px solid rgba(255,255,255,.1);color:var(--text-white);font-family:IBM Plex Mono,monospace;font-size:12px;outline:none;transition:border-color .15s}.config-input:focus{border-color:#ffffff4d}.config-textarea{width:100%;padding:6px 10px;background:#00000040;border:1px solid rgba(255,255,255,.1);color:var(--text-white);font-family:IBM Plex Mono,monospace;font-size:11px;outline:none;resize:vertical;line-height:1.4}.config-textarea:focus{border-color:#ffffff4d}.display-type-picker{display:flex;gap:4px}.display-type-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 8px;background:#0003;border:1px solid rgba(255,255,255,.06);color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s}.display-type-btn:hover{background:#ffffff14;color:var(--text-white)}.display-type-btn.active{background:#7c3aed40;border-color:#7c3aed80;color:#fff}.display-type-btn i{font-size:12px}.panel-chart-wrap{flex:1;min-height:0;position:relative;padding:4px}.field-picker{display:flex;flex-direction:column;gap:3px}.field-chip{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;background:#0003;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.field-chip:hover{background:#ffffff14}.field-chip.active{background:#7c3aed33;border-color:#7c3aed66}.field-chip-name{font-size:12px;font-weight:600}.field-chip-sample{font-size:10px;opacity:.45;font-family:IBM Plex Mono,monospace;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-config-actions{display:flex;gap:6px;flex-shrink:0;margin-top:4px}.config-cancel-btn{flex:1;padding:6px;background:none;border:1px solid rgba(255,255,255,.1);color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s}.config-cancel-btn:hover{background:#ffffff0d;color:var(--text-white)}.config-save-btn{flex:1;padding:6px;background:var(--widget-purple);border:none;color:#fff;font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s}.config-save-btn:hover{background:#6d28d9}.config-save-btn:disabled{opacity:.5;cursor:default}.settings-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.settings-tab{flex:1;padding:10px 16px;background:none;border:none;color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.settings-tab:hover{color:var(--text-light)}.settings-tab.active{color:var(--widget-purple);border-bottom-color:var(--widget-purple)}.agents-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.agent-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#ffffff0a;border-radius:8px;cursor:pointer;transition:all .15s;border:1px solid rgba(255,255,255,.06)}.agent-card:hover{background:#ffffff14;border-color:#7c3aed4d}.agent-card.disabled{opacity:.5}.agent-card-icon{width:36px;height:36px;border-radius:8px;background:#7c3aed26;display:flex;align-items:center;justify-content:center;color:var(--widget-purple);font-size:14px;flex-shrink:0}.agent-card-info{flex:1;min-width:0}.agent-card-name{font-size:13px;font-weight:600;color:var(--text-white)}.agent-card-detail{font-size:11px;color:var(--text-muted);margin-top:2px}.agent-card-status{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;background:#ef444426;color:#f87171}.agent-card-status.active{background:#4ade8026;color:#4ade80}.agent-edit{margin-bottom:8px}.agent-edit-header{display:flex;align-items:center;gap:10px;padding:10px 0;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08);font-size:15px;font-weight:600;color:var(--text-white)}.agent-edit-header i{color:var(--widget-purple);font-size:16px}.agent-toggle{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer}.agent-toggle input{accent-color:var(--widget-purple);width:14px;height:14px}.agent-edit-row{margin-bottom:12px}.agent-edit-row label{display:block;font-size:11px;font-weight:600;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.agent-edit-row select,.agent-edit-row input[type=text],.agent-edit-row input[type=password]{width:100%;padding:8px 10px;background:var(--bg-input);border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-light);font-family:IBM Plex Sans,sans-serif;font-size:13px;box-sizing:border-box}.agent-edit-row select:focus,.agent-edit-row input:focus{border-color:var(--widget-purple);outline:none}.agent-edit-row textarea{width:100%;padding:8px 10px;background:var(--bg-input);border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-light);font-family:IBM Plex Mono,monospace;font-size:12px;resize:vertical;box-sizing:border-box}.agent-edit-row textarea:focus{border-color:var(--widget-purple);outline:none}.settings-general{margin-bottom:16px}.notify-section-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text-light);padding:10px 0 6px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px}.notify-section-header i{font-size:16px;color:var(--widget-purple)}.notify-help{font-size:12px;color:#ffffff73;padding:4px 0 4px 120px;line-height:1.5}.notify-help a{color:var(--widget-purple);text-decoration:none}.notify-help a:hover{text-decoration:underline}.heartbeat-container{flex:1;position:relative;min-height:0;overflow:hidden;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:20px 20px}.heartbeat-container canvas{display:block;width:100%;height:100%}.activity-feed{display:flex;flex-direction:column;gap:6px;overflow-y:auto;height:100%;padding:4px 6px 4px 0}.activity-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#ffffff14;transition:background .15s}.activity-item:hover{background:#ffffff21}.activity-item.failed{background:#ef444414;border-left:2px solid #f87171}.activity-icon{width:32px;height:32px;border-radius:50%;background:#3b82f61f;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;color:#60a5fa;margin-top:1px}.activity-item.failed .activity-icon{background:#ef44441f;color:#f87171}.activity-item.failed .activity-detail,.activity-item.failed .activity-agent{color:#fff}.activity-item.failed .activity-time{color:#fff;opacity:.8}.activity-content{flex:1;min-width:0}.activity-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.activity-agent{font-weight:600;font-size:15px;color:#fff}.activity-action{font-size:13px;padding:2px 8px;border-radius:3px;background:#3b82f61f;color:#60a5fa;font-weight:500}.activity-action.failed{background:#ef444466;color:#fff}.activity-action.executing{background:#f59e0b66;color:#fff}.activity-action.completed{background:#10b98159;color:#fff}.activity-action.todo_created,.activity-action.issues_found{background:#f59e0b59;color:#fff}.activity-detail{font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.activity-time{font-size:11px;color:#fff;opacity:.5;white-space:nowrap;flex-shrink:0;margin-left:auto;margin-top:2px}@media (max-width: 900px){.hud-bar{flex-wrap:wrap;gap:12px}.hud-center{order:3;width:100%;justify-content:center}.dashboard-area{padding:8px}}
