.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}/**
 * 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-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{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.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}.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;background:#0000;transition:opacity .1s linear;z-index:11}.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{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}:root{--color-bg: #ffffff;--color-surface: #f8f9fa;--color-border: #dee2e6;--color-text: #212529;--color-text-muted: #6c757d;--color-primary: #0d6efd;--color-primary-hover: #0b5ed7;--color-success: #198754;--color-warning: #ffc107;--color-danger: #dc3545;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius: .375rem;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);color:var(--color-text);background-color:var(--color-surface);line-height:1.6}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);padding:var(--spacing-md) 0}.header-content{display:flex;align-items:stretch;gap:var(--spacing-lg)}.header-main{display:flex;flex-direction:column;flex:1;min-width:0}.header-row-top{display:flex;align-items:center;justify-content:space-between}.header-row-bottom{display:flex;align-items:center;min-height:1.5rem}.header-cta{align-self:center;flex-shrink:0}.logo{font-size:1.5rem;font-weight:600;color:var(--color-text);text-decoration:none}.logo:hover{color:var(--color-primary)}.nav{display:flex;gap:var(--spacing-lg)}.nav-link{color:var(--color-text);text-decoration:none;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);transition:background-color .2s}.nav-link:hover{background-color:var(--color-surface)}.container{margin:0 auto;padding:0 var(--spacing-xl)}.main{flex:1;padding:var(--spacing-xl) 0}.loading,.error,.empty-state{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted)}.error{color:var(--color-danger)}.dashboard-header{margin-bottom:var(--spacing-xl)}.dashboard-header h1{margin-bottom:var(--spacing-lg)}.page-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.page-tab{padding:var(--spacing-sm) var(--spacing-lg);border:none;background:none;color:var(--color-text-muted);font-size:.9rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.page-tab:hover{color:var(--color-text)}.page-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.dashboard-stats{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.stat-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md) var(--spacing-lg);min-width:120px}.stat-value{font-size:2rem;font-weight:600;color:var(--color-primary)}.stat-label{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-card-clickable{cursor:pointer;transition:border-color .15s,background-color .15s}.stat-card-clickable:hover{border-color:var(--color-primary);background-color:var(--bg-tertiary)}.stat-card-active{border-color:var(--color-primary);background-color:var(--bg-tertiary);box-shadow:0 0 0 1px var(--color-primary)}.dashboard-filters{margin-bottom:var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-md)}.dashboard-filters label{font-weight:500}.team-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);font-family:inherit;font-size:1rem;cursor:pointer}.team-select:focus{outline:2px solid var(--color-primary);outline-offset:2px}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.agent-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);text-decoration:none;color:inherit;display:block;transition:box-shadow .2s,border-color .2s}.agent-card:hover{box-shadow:0 4px 12px #0000001a;border-color:var(--color-primary)}.agent-card--disabled{opacity:.5}.agent-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-md)}.agent-card-title{font-size:1.25rem;font-weight:600;margin:0}.agent-card-description{color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-size:.9375rem}.agent-card-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.agent-card-integrations{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.integration-indicator{font-size:.8125rem;color:var(--color-text-muted);background-color:var(--color-surface);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius)}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.badge-team{background-color:#e7f5ff;color:#1971c2}.badge-behavior{background-color:#f3f0ff;color:#5f3dc4}.badge-capability{background-color:#e3fafc;color:#0c8599}.badge-model{background-color:#fff3bf;color:#8c6d1f}.badge-large{font-size:.875rem;padding:var(--spacing-sm) var(--spacing-md)}.back-link{display:inline-block;color:var(--color-primary);text-decoration:none;margin-bottom:var(--spacing-lg);font-weight:500}.back-link:hover{color:var(--color-primary-hover);text-decoration:underline}.agent-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);gap:var(--spacing-lg)}.agent-detail-header h1{margin-bottom:var(--spacing-xs)}.agent-detail-id{color:var(--color-text-muted);font-family:monospace;font-size:.9375rem}.detail-section{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.detail-section h2{font-size:1.25rem;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.agent-description{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);font-size:1rem;line-height:1.6}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.detail-item label{display:block;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-muted);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.badge-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.channel-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.channel-code{display:inline-block;font-family:monospace;font-size:.875rem;background-color:var(--color-surface);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius)}.text-muted{color:var(--color-text-muted);font-size:.875rem}.data-table{width:100%;border-collapse:collapse;font-size:.9375rem}.data-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-surface);font-weight:600;border-bottom:2px solid var(--color-border);color:var(--color-text-muted);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.data-table tbody tr:hover{background-color:var(--color-surface)}.data-table code{font-family:monospace;font-size:.875rem;background-color:var(--color-surface);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius)}.text-small{font-size:.8125rem;color:var(--color-text-muted)}.metrics-header{margin-bottom:var(--spacing-xl)}.metrics-header h1{margin-bottom:var(--spacing-sm)}.metrics-controls{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);flex-wrap:wrap}.control-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:150px}.control-group label{font-weight:600;font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.control-select,.control-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);font-family:inherit;font-size:1rem}.control-select:focus,.control-input:focus{outline:2px solid var(--color-primary);outline-offset:2px}.control-input::placeholder{color:var(--color-text-muted)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:var(--spacing-lg)}.metric-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg)}.metric-chart{width:100%}.metric-chart-title{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-lg);flex-wrap:wrap}.page-header h1{margin:0}.time-range-selector{display:flex;gap:var(--spacing-xs);background-color:var(--color-surface);padding:var(--spacing-xs);border-radius:var(--border-radius)}.time-range-button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid transparent;border-radius:var(--border-radius);background-color:transparent;font-family:inherit;font-size:.9375rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}.time-range-button:hover{background-color:var(--color-bg);color:var(--color-text)}.time-range-button.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.metrics-section{margin-bottom:var(--spacing-xl)}.metrics-section h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.section-description{color:var(--color-text-muted);margin-bottom:var(--spacing-lg);font-size:.9375rem}.agent-name{font-size:1.125rem;font-weight:600;margin:0}.agent-badges{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.badge-bedrock-tool{background-color:#f3f0ff;color:#5f3dc4}.badge-service-operation{background-color:#e3fafc;color:#0c8599}.badge-service{background-color:#fff3cd;color:#856404}.tool-parameters{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.parameters-title{font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.parameters-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-sm)}.parameter-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--border-radius);font-size:.875rem}.parameter-name{font-family:monospace;font-weight:600;color:var(--color-text)}.parameter-type{color:var(--color-text-muted);font-size:.8125rem;margin-left:var(--spacing-sm)}.parameter-required{display:inline-block;padding:.125rem var(--spacing-xs);background-color:var(--color-danger);color:#fff;font-size:.6875rem;font-weight:600;border-radius:var(--border-radius);text-transform:uppercase;letter-spacing:.05em;margin-left:var(--spacing-xs)}.parameter-description{color:var(--color-text-muted);font-size:.8125rem;line-height:1.4}.tool-usage{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-sm)}.usage-label{font-size:.875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.usage-agents{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.usage-agent-link{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background-color:#e7f5ff;color:#1971c2;font-size:.75rem;font-weight:500;text-decoration:none;border-radius:var(--border-radius);transition:background-color .2s}.usage-agent-link:hover{background-color:#d0ebff}.learnings-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.learning-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg)}.learning-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-md)}.learning-meta{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.learning-date{font-size:.875rem;color:var(--color-text-muted)}.learning-messages{font-size:.875rem;color:var(--color-text-muted);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-surface);border-radius:var(--border-radius)}.learning-content{margin-bottom:var(--spacing-md)}.learning-text{font-family:var(--font-family);font-size:.9375rem;line-height:1.6;white-space:pre-wrap;color:var(--color-text);background-color:var(--color-surface);padding:var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-border)}.learning-conflicts{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background-color:#fff3cd;border:1px solid #ffc107;border-radius:var(--border-radius)}.conflicts-title{font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-md);color:#856404;text-transform:uppercase;letter-spacing:.05em}.conflict-item{background-color:#fff;padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-sm)}.conflict-item:last-child{margin-bottom:0}.conflict-existing{margin-bottom:var(--spacing-sm)}.conflict-existing pre{font-family:monospace;font-size:.875rem;white-space:pre-wrap;color:var(--color-text);background-color:var(--color-surface);padding:var(--spacing-sm);border-radius:var(--border-radius);margin-top:var(--spacing-xs)}.conflict-reason{margin-bottom:var(--spacing-sm);font-size:.875rem;color:var(--color-text-muted)}.conflict-recommendation{display:flex;gap:var(--spacing-sm);align-items:center}.learning-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius);font-family:inherit;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-approve{background-color:var(--color-success);color:#fff}.btn-approve:hover:not(:disabled){background-color:#157347}.btn-reject{background-color:var(--color-danger);color:#fff}.btn-reject:hover:not(:disabled){background-color:#bb2d3b}.badge-pending{background-color:#fff3cd;color:#856404}.badge-committed{background-color:#d1e7dd;color:#0f5132}.badge-rejected{background-color:#f8d7da;color:#842029}.badge-unresolved{background-color:#e2e3e5;color:#41464b}.badge-evict{background-color:#f8d7da;color:#842029}.badge-update{background-color:#cfe2ff;color:#084298}.badge-info{background-color:#cff4fc;color:#055160}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-border)}.btn-consolidate{background-color:var(--color-primary);color:#fff}.btn-consolidate:hover:not(:disabled){background-color:var(--color-primary-hover)}.learning-textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:var(--font-family);font-size:.9375rem;line-height:1.6;resize:vertical;min-height:100px;background-color:var(--color-bg);color:var(--color-text);transition:border-color .2s,box-shadow .2s}.learning-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0d6efd26}.learning-textarea:disabled{background-color:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}.learning-edit{display:flex;flex-direction:column;gap:var(--spacing-md)}.learning-edit-actions{display:flex;gap:var(--spacing-sm)}.query-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.query-actions{display:flex;gap:var(--spacing-sm);align-items:center}.query-actions-inline{margin-top:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius);display:flex;flex-direction:column;gap:var(--spacing-sm)}.query-replies+.query-form,.query-replies+.query-actions-inline{margin-top:4px}.query-status{margin-top:var(--spacing-md)}.query-replies{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.query-reply{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-border);background-color:#f0f4ff;align-self:flex-end;max-width:85%}.query-reply-user{background-color:#f8f9fa;border-color:var(--color-border);align-self:flex-start}.query-reply-role{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.query-reply-user .query-reply-role{text-align:left}.query-reply:not(.query-reply-user) .query-reply-role{text-align:right}.query-reply-content{line-height:1.6;word-wrap:break-word}.query-reply-content p{margin:0 0 var(--spacing-sm)}.query-reply-content p:last-child{margin-bottom:0}.query-reply-content code{background:var(--bg-tertiary);padding:.15em .4em;border-radius:3px;font-size:.9em}.query-reply-content pre{background:var(--bg-tertiary);padding:var(--spacing-md);border-radius:var(--radius);overflow-x:auto;margin:var(--spacing-sm) 0}.query-reply-content pre code{background:none;padding:0}.query-reply-content ul,.query-reply-content ol{margin:var(--spacing-sm) 0;padding-left:1.5em}.query-reply-content h1,.query-reply-content h2,.query-reply-content h3{margin:var(--spacing-md) 0 var(--spacing-sm);font-size:1em;font-weight:600}.query-reply-content h1{font-size:1.2em}.query-reply-content h2{font-size:1.1em}.query-result{margin-top:var(--spacing-lg)}.query-result-header{display:flex;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-md)}.consolidations-section{margin-bottom:var(--spacing-xl)}.consolidations-section h2{margin-bottom:var(--spacing-md)}.consolidation-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-md)}.consolidation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.consolidation-header h3{margin:0;font-size:1.125rem}.consolidation-content{margin-bottom:var(--spacing-md)}.consolidation-sources{font-size:.875rem;color:var(--color-text-muted)}.agent-builder-page{display:flex;flex-direction:column;height:calc(100vh - 73px)}.agent-builder-page-canvas{margin:0 calc(-1 * var(--spacing-xl))}.agent-builder-content{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.nav-link-cta{background-color:var(--color-success);color:#fff!important;border-radius:var(--border-radius);font-size:.875rem}.nav-link-cta:hover{background-color:#157347!important}.ingress-selector{max-width:700px;width:100%}.ingress-selector-header{text-align:center;margin-bottom:var(--spacing-xl)}.ingress-selector-header h2{margin-bottom:var(--spacing-sm)}.ingress-selector-description{color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.ingress-design-button{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .15s}.ingress-design-button:hover{background-color:var(--color-primary-hover)}.ingress-selector-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.ingress-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s;font-family:inherit;font-size:inherit}.ingress-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #00000014}.ingress-card-disabled{opacity:.5;cursor:not-allowed}.ingress-card-disabled:hover{border-color:var(--color-border);box-shadow:none}.ingress-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:var(--color-surface);border-radius:var(--border-radius);font-size:1.5rem;flex-shrink:0}.ingress-card-title{font-weight:600;margin-bottom:2px}.ingress-card-description{font-size:.875rem;color:var(--color-text-muted)}.flow-builder{flex:1;display:flex;flex-direction:column;position:relative;height:100%}.flow-builder-canvas{flex:1;position:relative;width:100%;height:100%}.flow-toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-xl);background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.flow-toolbar-left{display:flex;align-items:center;gap:var(--spacing-md)}.flow-toolbar-hint{font-size:.875rem;color:var(--color-text-muted)}.flow-toolbar-right{display:flex;gap:var(--spacing-sm)}.flow-toolbar-button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s}.flow-toolbar-button:disabled{opacity:.5;cursor:not-allowed}.flow-toolbar-button-secondary{background-color:var(--color-bg);color:var(--color-text)}.flow-toolbar-button-secondary:hover:not(:disabled){background-color:var(--color-surface)}.flow-toolbar-button-primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.flow-toolbar-button-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.flow-node{background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md);min-width:180px;font-family:var(--font-family)}.flow-node-selected{border-color:var(--color-primary);box-shadow:0 0 0 2px #0d6efd33}.flow-node-ingress{border-left:4px solid var(--color-success);display:flex;align-items:center;gap:var(--spacing-md)}.flow-node-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:#e6f4ea;border-radius:var(--border-radius);font-size:1.125rem;flex-shrink:0}.flow-node-agent-step{border-left:4px solid var(--color-primary)}.flow-node-agent-existing{border-left:4px solid #0c8599;background:linear-gradient(135deg,var(--color-bg) 0%,#f0fafb 100%)}.flow-node-invocation{border-left:4px solid #9775fa;background:linear-gradient(135deg,var(--color-bg) 0%,#f8f5ff 100%)}.flow-node-invocation-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7048c6;background-color:#ede5ff;padding:2px var(--spacing-sm);border-radius:var(--border-radius);margin-bottom:var(--spacing-xs);display:inline-block}.flow-node-event-type{font-size:.6875rem;color:#7048c6;font-family:monospace;margin-top:4px}.flow-node-logic-gate{border-left:4px solid var(--color-warning);text-align:center;min-width:140px}.flow-node-gate-icon{font-size:1.25rem;color:var(--color-warning);margin-bottom:2px}.flow-node-egress{border-left:4px solid #fa5252;background:linear-gradient(135deg,var(--color-bg) 0%,#fff1f1 100%);display:flex;align-items:center;gap:var(--spacing-md)}.flow-node-egress .flow-node-icon{background-color:#ffe0e0;color:#c92a2a}.flow-node-terminal{border-left:4px solid #868e96;background:linear-gradient(135deg,var(--color-bg) 0%,#f1f3f5 100%);text-align:center;min-width:120px}.flow-node-terminal-icon{font-size:.75rem;color:#868e96;margin-bottom:2px}.flow-node-content{flex:1}.flow-node-label{font-weight:500;font-size:.875rem;color:var(--color-text);line-height:1.3}.flow-node-sublabel{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}.flow-node-detail{font-size:.8125rem;color:var(--color-text-secondary);font-family:var(--font-mono, monospace);margin-top:2px}.flow-node-placeholder{background:none;border:none;padding:0;min-width:auto;display:flex;flex-direction:column;align-items:center}.flow-node-placeholder-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.flow-node-placeholder-button{width:36px;height:36px;border:2px dashed var(--color-border);border-radius:50%;background-color:var(--color-bg);color:var(--color-text-muted);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s,background-color .15s}.flow-node-placeholder-button:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#e7f1ff}.flow-node-placeholder-label{font-size:.6875rem;color:var(--color-text-muted);white-space:nowrap}.add-step-menu{position:fixed;z-index:1000;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:0 8px 24px #0000001f;min-width:180px;padding:var(--spacing-xs)}.add-step-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;border-radius:var(--border-radius);font-family:inherit;font-size:.875rem;color:var(--color-text);cursor:pointer;text-align:left}.add-step-menu-item:hover{background-color:var(--color-surface)}.add-step-menu-back{color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xs);border-radius:0}.add-step-menu-icon{font-size:1rem;width:20px;text-align:center}.node-config-panel{position:absolute;top:0;right:0;width:340px;height:100%;background-color:var(--color-bg);border-left:1px solid var(--color-border);display:flex;flex-direction:column;z-index:100;box-shadow:-4px 0 12px #0000000f}.node-config-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.node-config-panel-header h3{margin:0;font-size:1rem}.node-config-panel-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.node-config-panel-close:hover{color:var(--color-text)}.node-config-panel-body{flex:1;padding:var(--spacing-lg);overflow-y:auto}.node-config-panel-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border)}.node-config-section{margin-bottom:var(--spacing-lg)}.node-config-field{margin-bottom:var(--spacing-md)}.node-config-label{display:block;font-size:.8125rem;font-weight:500;color:var(--color-text-muted);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.03em}.node-config-info{font-size:.9375rem;color:var(--color-text)}.node-config-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.node-config-toggle-option{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;background-color:var(--color-bg);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;color:var(--color-text-muted);transition:background-color .15s,color .15s}.node-config-toggle-option:not(:last-child){border-right:1px solid var(--color-border)}.node-config-toggle-option.active{background-color:var(--color-primary);color:#fff}.node-config-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);font-family:inherit;font-size:.9375rem}.node-config-select:focus{outline:2px solid var(--color-primary);outline-offset:2px}.node-config-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);font-family:inherit;font-size:.9375rem;resize:vertical;line-height:1.5}.node-config-textarea:focus{outline:2px solid var(--color-primary);outline-offset:2px}.node-config-branches{display:flex;flex-direction:column;gap:var(--spacing-xs)}.node-config-branch-item{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-surface);border-radius:var(--border-radius);font-size:.875rem}.node-config-branch-label{font-weight:500}.node-config-branch-header{margin-bottom:var(--spacing-xs)}.node-config-branch-condition{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;font-size:.8125rem;background-color:var(--color-bg)}.node-config-branch-condition:focus{outline:2px solid var(--color-primary);outline-offset:1px}.node-config-hint{margin-top:var(--spacing-xs);font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.node-config-mono{font-family:monospace;font-size:.875rem}.node-config-toggle-existing.active{background-color:#0c8599}.flow-node-condition{font-size:.6875rem;color:var(--color-text-muted);font-style:italic;margin-top:2px}.btn-danger-outline{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-danger);border-radius:var(--border-radius);background-color:var(--color-bg);color:var(--color-danger);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .15s}.btn-danger-outline:hover{background-color:#fff5f5}.flow-edge-label{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:2px var(--spacing-sm);font-size:.6875rem;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.agent-flow-graph{border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.flow-graph-node{background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);min-width:140px;font-family:var(--font-family)}.flow-graph-node-step{border-left:4px solid var(--color-primary)}.flow-graph-node-ingress{border-left:4px solid var(--color-success)}.flow-graph-node-service{border-left:4px solid var(--color-warning);background:linear-gradient(135deg,var(--color-bg) 0%,#fff8e1 100%)}.flow-graph-node-terminal{border-left:4px solid #868e96}.flow-graph-node-content{display:flex;flex-direction:column;gap:2px}.flow-graph-node-label{font-weight:600;font-size:.8125rem;color:var(--color-text);font-family:var(--font-mono, monospace)}.flow-graph-node-sublabel{font-size:.6875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.flow-graph-node-badges{display:flex;gap:var(--spacing-xs);margin-top:4px}.flow-graph-badge{font-size:.625rem;font-weight:600;padding:1px 6px;border-radius:10px;text-transform:uppercase;letter-spacing:.02em}.flow-graph-badge-responds{background-color:#e6f4ea;color:#137333}.flow-graph-badge-pauses{background-color:#fff3cd;color:#856404}.flow-graph-node-decision{background:none;border:none;padding:0;min-width:auto;display:flex;align-items:center;justify-content:center;position:relative}.flow-graph-decision-diamond{width:28px;height:28px;background-color:var(--color-bg);border:2px solid var(--color-primary);transform:rotate(45deg)}.flow-graph-decision-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);box-shadow:0 4px 12px #00000026;z-index:100;width:max-content;white-space:nowrap}.flow-graph-decision-condition{font-size:.75rem;font-family:var(--font-mono, monospace);color:var(--color-text);padding:2px 0;border-bottom:1px solid var(--color-border)}.flow-graph-decision-condition:last-child{border-bottom:none}.flow-review-panel{max-width:700px;width:100%}.flow-review-header{margin-bottom:var(--spacing-xl)}.flow-review-header h2{margin-bottom:var(--spacing-sm)}.flow-review-subtitle{color:var(--color-text-muted)}.flow-review-body{margin-bottom:var(--spacing-xl)}.flow-review-section{margin-bottom:var(--spacing-lg)}.flow-review-section-title{font-size:.8125rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.flow-review-ingress{display:flex;align-items:center;gap:var(--spacing-md)}.flow-review-ingress-badge{background-color:#e6f4ea;color:var(--color-success);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-weight:600;font-size:.875rem}.flow-review-ingress-description{color:var(--color-text-muted);font-size:.875rem}.flow-review-steps{display:flex;flex-direction:column;gap:var(--spacing-md)}.flow-review-step{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md) var(--spacing-lg)}.flow-review-step-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.flow-review-step-number{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:var(--color-surface);border-radius:50%;font-size:.75rem;font-weight:600;color:var(--color-text-muted);flex-shrink:0}.flow-review-step-label{font-weight:500;flex:1}.flow-review-step-badge{font-size:.6875rem;font-weight:500;padding:2px var(--spacing-sm);border-radius:var(--border-radius);text-transform:uppercase;letter-spacing:.03em}.flow-review-step-badge-existing-agent{background-color:#e7f5ff;color:#1971c2}.flow-review-step-badge-new-agent{background-color:#f3f0ff;color:#5f3dc4}.flow-review-step-badge-logic-gate{background-color:#fff3bf;color:#8c6d1f}.flow-review-step-description{font-size:.9375rem;color:var(--color-text);line-height:1.5}.flow-review-step-concerns{margin-top:var(--spacing-sm)}.flow-review-concern{font-size:.8125rem;color:var(--color-warning);padding:var(--spacing-xs) 0}.flow-review-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted)}.flow-review-footer{display:flex;justify-content:space-between;align-items:center}.flow-review-warning{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:#fff8e1;border:1px solid #ffecb3;border-radius:var(--border-radius);font-size:.8125rem;color:#856404}.flow-review-loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl) 0;color:var(--color-text-muted)}.flow-review-loading-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.flow-review-error-text{color:var(--color-danger)}.flow-review-step-ok{border-left:3px solid var(--color-success)}.flow-review-step-warning{border-left:3px solid var(--color-warning)}.flow-review-step-suggestion{border-left:3px solid var(--color-primary)}.flow-review-step-summary{font-weight:500;margin-bottom:var(--spacing-xs)}.flow-review-step-details{font-size:.9375rem;color:var(--color-text-muted);line-height:1.5}.flow-review-step-dependencies{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:#f3f0ff;border-radius:var(--border-radius);display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm)}.flow-review-step-deps-label{font-size:.8125rem;font-weight:500;color:#5f3dc4}.flow-review-step-dep-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;background-color:#e5dbff;border-radius:12px;font-size:.8125rem;font-weight:500;color:#5f3dc4}.flow-review-step-dep-event{font-family:monospace;font-size:.75rem;color:#7048c6;opacity:.8}.flow-review-step-dep-reason{font-size:.75rem;color:#6741d9;opacity:.7;font-weight:400}.flow-review-step-alternative{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:#e7f5ff;border-radius:var(--border-radius);font-size:.875rem;color:#1971c2;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.flow-review-step-event-type{font-family:monospace;font-size:.8125rem}.flow-review-apply-button{padding:var(--spacing-xs) var(--spacing-md);background-color:#7048c6;color:#fff;border:none;border-radius:var(--border-radius);font-family:inherit;font-size:.75rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .15s}.flow-review-apply-button:hover{background-color:#5f3dc4}.flow-review-step-applied{border-left:3px solid #9775fa;opacity:.8}.flow-review-step-status-applied{background-color:#ede5ff;color:#7048c6}.flow-review-step-applied-notice{margin-top:var(--spacing-sm);font-size:.8125rem;color:#7048c6;font-style:italic}.flow-review-step-status{font-size:.75rem;font-weight:500;padding:2px var(--spacing-sm);border-radius:var(--border-radius)}.flow-review-step-status-ok{background-color:#e6f4ea;color:var(--color-success)}.flow-review-step-status-warning{background-color:#fff8e1;color:#856404}.flow-review-step-status-suggestion{background-color:#e7f5ff;color:#1971c2}.flow-review-suggestions{list-style:none;padding:0}.flow-review-suggestion-item{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:var(--spacing-sm);font-size:.9375rem}.code-task-split{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-lg);min-height:60vh}.code-task-output-pane{display:flex;flex-direction:column;gap:var(--spacing-md)}.code-task-output-pane .output-container{flex:1;min-height:400px;max-height:70vh}.code-task-output-pane .terminal-output{width:100%;height:100%;min-height:400px;border-radius:var(--radius-md);overflow:hidden}.code-task-detail-pane{display:flex;flex-direction:column;gap:var(--spacing-md);border-left:1px solid var(--color-border);padding-left:var(--spacing-lg)}.agent-creation-split{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%}.agent-creation-status-pane{display:flex;flex-direction:column;align-items:flex-end;padding:var(--spacing-lg);padding-right:var(--spacing-xl);border-right:1px solid var(--color-border);text-align:right}.agent-creation-status-pane h2{margin:0 0 var(--spacing-sm) 0}.agent-creation-conversation-pane{display:flex;flex-direction:column;padding:var(--spacing-lg);padding-left:var(--spacing-xl);overflow-y:auto;min-height:0}.agent-creation-messages{display:flex;flex-direction:column;gap:var(--spacing-sm)}.agent-creation-messages-history{opacity:.7;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-sm)}.agent-creation-history-toggle{background:none;border:none;color:var(--color-text-secondary);font-size:.8125rem;cursor:pointer;padding:var(--spacing-xs) 0;margin-bottom:var(--spacing-sm)}.agent-creation-history-toggle:hover{color:var(--color-primary)}.agent-creation-message{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:.9375rem;white-space:pre-wrap}.agent-creation-reply{display:flex;flex-direction:column;gap:var(--spacing-sm)}.agent-creation-reply-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);color:var(--color-text);font-size:.9375rem;font-family:inherit;resize:vertical}.agent-creation-reply-input:focus{outline:none;border-color:var(--color-primary)}.agent-creation-preview{padding:var(--spacing-md);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:.8125rem;white-space:pre-wrap;word-break:break-word;overflow-x:auto}.agent-creation-subtasks{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-md);width:100%;max-width:280px}.agent-creation-subtask{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.8125rem}.agent-creation-subtask-icon{flex-shrink:0;width:1rem;text-align:center}.agent-creation-subtask-id{flex:1;font-family:var(--font-mono, monospace);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-creation-subtask-label{flex-shrink:0;font-size:.75rem;opacity:.7}.agent-creation-subtask--pending{color:var(--color-text-muted, #888)}.agent-creation-subtask--in_progress{color:var(--color-primary, #3b82f6);background-color:color-mix(in srgb,var(--color-primary, #3b82f6) 8%,transparent)}.agent-creation-subtask--completed{color:var(--color-success, #22c55e)}.agent-creation-subtask--failed{color:var(--color-danger, #ef4444)}.deploy-status-banner{display:flex;align-items:center;gap:var(--spacing-md);font-size:.8125rem}.deploy-status-indicator{display:flex;align-items:center;gap:var(--spacing-xs)}.deploy-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.deploy-status--deploying .deploy-status-dot{background-color:var(--color-warning);animation:pulse 1.5s infinite}.deploy-status--success .deploy-status-dot{background-color:var(--color-success)}.deploy-status--failure .deploy-status-dot{background-color:var(--color-danger)}.deploy-status--cancelled .deploy-status-dot{background-color:var(--color-text-secondary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.deploy-status-label{color:var(--color-text-secondary)}.deploy-status-commit{font-size:.75rem;color:var(--color-text-primary)}.deploy-status-time{color:var(--color-text-secondary)}.deploy-status-separator{color:var(--color-border)}.deploy-status-prs{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary)}.deploy-status-pr{font-size:.75rem;padding:1px 6px;border-radius:3px;background-color:var(--color-bg);text-decoration:none;color:inherit}.deploy-status-pr:hover{opacity:.8}.deploy-status-pr--pending{border-left:2px solid var(--color-warning)}.deploy-status-pr--success{border-left:2px solid var(--color-success)}.deploy-status-pr--failure{border-left:2px solid var(--color-danger)}.deploy-status-pr--cancelled,.deploy-status-pr--neutral{border-left:2px solid var(--color-text-secondary)}.deploy-status-pr--timed_out{border-left:2px solid var(--color-danger)}.deploy-status-pr--action_required{border-left:2px solid var(--color-warning)}.deploy-status-pr-more{font-size:.75rem;color:var(--color-text-secondary)}.settings-section{margin-bottom:var(--spacing-xl)}.settings-error{padding:var(--spacing-md);margin-bottom:var(--spacing-md);background-color:#fff5f5;border:1px solid var(--color-danger);border-radius:var(--border-radius);color:var(--color-danger);font-size:.875rem}.settings-section-title{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.settings-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.settings-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);gap:var(--spacing-lg)}.settings-item-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.settings-item-header{display:flex;align-items:center;gap:var(--spacing-md)}.settings-item-label{font-weight:600;font-size:1rem}.settings-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.settings-badge-slack{background-color:#e3fafc;color:#0c8599}.settings-badge-webhook{background-color:#f3f0ff;color:#5f3dc4}.settings-item-agents{font-size:.875rem;color:var(--color-text-muted)}.settings-item-agents-label{font-weight:500}.settings-item-updated{font-size:.75rem;color:var(--color-text-muted)}.settings-toggle{position:relative;display:inline-block;width:50px;height:28px;flex-shrink:0}.settings-toggle-input{opacity:0;width:0;height:0}.settings-toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:28px}.settings-toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}.settings-toggle-input:checked+.settings-toggle-slider{background-color:var(--color-success)}.settings-toggle-input:checked+.settings-toggle-slider:before{transform:translate(22px)}.settings-toggle-input:disabled+.settings-toggle-slider{opacity:.5;cursor:not-allowed}.flow-design-chat{display:flex;flex-direction:column;height:100%;max-width:700px;width:100%;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.flow-design-chat-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.flow-design-chat-header h2{margin-bottom:var(--spacing-xs)}.flow-design-chat-header p{color:var(--color-text-muted);font-size:.875rem;margin-bottom:var(--spacing-md)}.flow-design-chat-back{background:none;border:none;color:var(--color-primary);cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:500;padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-md);transition:color .15s}.flow-design-chat-back:hover{color:var(--color-primary-hover)}.flow-design-chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.flow-design-chat-empty{color:var(--color-text-muted);text-align:center;padding:var(--spacing-xl) 0}.flow-design-chat-empty ul{list-style:none;padding:0;margin:var(--spacing-md) 0 0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.flow-design-chat-empty li{background-color:var(--color-surface);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);font-size:.875rem;text-align:left}.flow-design-chat-message{max-width:75%;padding:var(--spacing-md);border-radius:var(--border-radius);line-height:1.5}.flow-design-chat-message--user{align-self:flex-end;background-color:var(--color-primary);color:#fff}.flow-design-chat-message--assistant{align-self:flex-start;background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.flow-design-chat-message-content{font-size:.9375rem;white-space:pre-wrap;word-wrap:break-word}.flow-design-chat-typing{display:flex;align-items:center;gap:var(--spacing-xs);font-style:italic;color:var(--color-text-muted)}.flow-design-chat-typing:after{content:"";display:inline-block;width:4px;height:4px;background-color:var(--color-text-muted);border-radius:50%;animation:typing-pulse 1.4s infinite}@keyframes typing-pulse{0%,to{opacity:.3}50%{opacity:1}}.flow-design-chat-input{padding:var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);align-items:flex-end}.flow-design-chat-input textarea{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;font-size:.9375rem;resize:none;line-height:1.5;background-color:var(--color-bg);color:var(--color-text)}.flow-design-chat-input textarea:focus{outline:2px solid var(--color-primary);outline-offset:2px}.flow-design-chat-input textarea:disabled{background-color:var(--color-surface);cursor:not-allowed;opacity:.6}.flow-design-chat-send{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);font-family:inherit;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .15s;white-space:nowrap}.flow-design-chat-send:hover:not(:disabled){background-color:var(--color-primary-hover)}.flow-design-chat-send:disabled{opacity:.6;cursor:not-allowed}.detail-section-header{display:flex;align-items:center;justify-content:space-between}.detail-section-header h2{margin:0}.detail-section-actions{display:flex;align-items:center;gap:.75rem}.debug-icon-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text-muted, #888);cursor:pointer;transition:color .15s,border-color .15s}.debug-icon-button:hover{color:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6)}.debug-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.debug-modal{background:var(--color-surface, #fff);border-radius:8px;width:90vw;max-width:900px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.debug-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.debug-modal-header h2{margin:0;font-size:1.125rem}.debug-modal-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.debug-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-muted, #888);line-height:1;padding:0 var(--spacing-xs)}.debug-modal-close:hover{color:var(--color-text, #333)}.debug-spin{animation:debug-spin-animation 1s linear infinite}@keyframes debug-spin-animation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.debug-modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.debug-results{display:flex;flex-direction:column;gap:var(--spacing-md)}.debug-thread-info{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius)}.debug-steps-flow{display:flex;flex-direction:column}.debug-step-block{position:relative}.debug-step-card{border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden;cursor:pointer;transition:border-color .15s}.debug-step-card--active:hover{border-color:var(--color-primary, #3b82f6)}.debug-step-card--inactive{opacity:.5;cursor:default}.debug-step-card-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.debug-step-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-border);flex-shrink:0}.debug-step-indicator--active{background:var(--color-success, #22c55e)}.debug-step-name{font-weight:500;flex:1}.debug-step-duration{font-size:.75rem;font-family:var(--font-mono, monospace);color:var(--color-text-muted, #888);background:var(--color-bg);padding:2px 6px;border-radius:3px}.debug-step-memory{font-size:.75rem;font-family:var(--font-mono, monospace);color:var(--color-text-muted, #888)}.debug-step-connector{width:2px;height:12px;background:var(--color-success, #22c55e);margin-left:18px}.debug-step-connector--inactive{background:var(--color-border);opacity:.5}.debug-step-logs{border-top:1px solid var(--color-border);display:flex;flex-direction:column}.debug-log-entry{display:flex;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:.8125rem}.debug-log-entry:last-child{border-bottom:none}.debug-log-timestamp{flex-shrink:0;color:var(--color-text-muted, #888);font-family:var(--font-mono, monospace);font-size:.75rem;min-width:80px}.debug-log-message{margin:0;white-space:pre-wrap;word-break:break-word;font-size:.8125rem;line-height:1.4}.debug-log-entry--platform{background:var(--color-bg)}.debug-log-platform{display:flex;align-items:center;gap:var(--spacing-sm)}.debug-log-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase;padding:1px 6px;border-radius:3px;letter-spacing:.03em}.debug-log-badge--start{background:color-mix(in srgb,var(--color-primary, #3b82f6) 15%,transparent);color:var(--color-primary, #3b82f6)}.debug-log-badge--end{background:color-mix(in srgb,var(--color-text-muted, #888) 15%,transparent);color:var(--color-text-muted, #888)}.debug-log-badge--report{background:color-mix(in srgb,var(--color-success, #22c55e) 15%,transparent);color:var(--color-success, #22c55e)}.debug-log-badge--metric{background:color-mix(in srgb,#8b5cf6 15%,transparent);color:#8b5cf6}.debug-log-badge--invocation{background:color-mix(in srgb,#06b6d4 15%,transparent);color:#06b6d4}.debug-log-badge--emission{background:color-mix(in srgb,#f59e0b 15%,transparent);color:#f59e0b}.debug-log-thread-ts{color:var(--color-text-muted, #888);font-size:.75rem}.debug-log-detail{font-size:.8125rem;color:var(--color-text-muted, #888);font-family:var(--font-mono, monospace)}.debug-log-emf{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.debug-log-emf-detail{font-size:.8125rem;font-family:var(--font-mono, monospace);padding:1px 6px;background:var(--color-bg);border-radius:3px}.debug-related-agents{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.debug-related-agents-title{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.debug-related-agent{margin-left:1.5rem;padding-left:1rem;border-left:2px solid #0d6efd;margin-bottom:1.5rem}.debug-related-agent-header{font-size:.8rem;font-weight:500;color:#0d6efd;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.table-container{overflow-x:auto;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius)}.table{width:100%;border-collapse:collapse;font-size:.9375rem}.table thead{background-color:var(--color-surface);border-bottom:1px solid var(--color-border)}.table th{text-align:left;padding:var(--spacing-md) var(--spacing-lg);font-weight:600;color:var(--color-text)}.table td{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background-color:var(--color-surface)}.task-link{color:var(--color-primary);text-decoration:none;font-family:monospace;font-weight:500}.task-link:hover{text-decoration:underline}.badge-status-queued{background-color:#e2e3e5;color:#41464b}.badge-status-running{background-color:#cfe2ff;color:#084298}.badge-status-awaiting_reply{background-color:#fff3cd;color:#856404}.badge-status-completed{background-color:#d1e7dd;color:#0f5132}.badge-status-failed{background-color:#f8d7da;color:#842029}.detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.detail-header h1{margin:0}.detail-section{margin-bottom:var(--spacing-xl)}.detail-section h2{font-size:1.25rem;margin-bottom:var(--spacing-md)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg)}.detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{font-size:.875rem;color:var(--color-text-muted);font-weight:500}.detail-value{font-size:1rem;color:var(--color-text)}.code-block{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);font-family:monospace;font-size:.875rem;white-space:pre-wrap;word-break:break-word;overflow-x:auto}.output-container{background-color:#1e1e1e;border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);max-height:500px;overflow-y:auto}.output-empty{color:#888;font-style:italic;text-align:center;padding:var(--spacing-lg)}.output-lines{font-family:monospace;font-size:.875rem}.output-line{color:#d4d4d4;line-height:1.5;padding:2px 0}.reply-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.reply-textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:var(--font-family);font-size:.9375rem;line-height:1.6;resize:vertical;min-height:100px;background-color:var(--color-bg);color:var(--color-text);transition:border-color .2s,box-shadow .2s}.reply-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0d6efd26}.reply-textarea:disabled{opacity:.6;cursor:not-allowed}.button{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius);font-family:inherit;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.button:disabled{opacity:.6;cursor:not-allowed}.button-primary{background-color:var(--color-primary);color:#fff}.button-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.reply-error{color:var(--color-danger);font-size:.875rem;padding:var(--spacing-sm);background-color:#f8d7da;border-radius:var(--border-radius)}.reply-success{color:var(--color-success);font-size:.875rem;padding:var(--spacing-sm);background-color:#d1e7dd;border-radius:var(--border-radius)}.kb-conflicts-panel{margin-top:var(--spacing-xl);border-top:1px solid var(--color-border);padding-top:var(--spacing-xl)}.kb-conflicts-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.kb-conflicts-title{font-size:1.25rem;font-weight:600;margin:0;flex:1}.kb-conflicts-actions{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.kb-conflicts-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.kb-conflict-hint-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg)}.kb-conflict-hint-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.kb-conflict-hint-badges{display:flex;gap:var(--spacing-sm);align-items:center}.kb-conflict-hint-description{font-size:.9375rem;color:var(--color-text);margin-bottom:var(--spacing-md)}.kb-conflict-hint-subjects{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.kb-conflict-hint-entries{font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.kb-conflict-entry-list{list-style:none;padding:0;margin:var(--spacing-xs) 0 0 0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.kb-conflict-entry-key code{font-size:.8125rem;background-color:var(--color-surface);padding:2px var(--spacing-xs);border-radius:var(--border-radius)}.kb-conflict-analysis{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.kb-conflict-analysis-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.kb-conflict-analysis-date{font-size:.8125rem;color:var(--color-text-muted)}.kb-conflict-explanation{font-size:.9375rem;color:var(--color-text);margin-bottom:var(--spacing-md)}.kb-conflict-resolutions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.kb-conflict-resolutions-title{font-size:.875rem;font-weight:600;color:var(--color-text-muted)}.kb-conflict-resolution-option{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md)}.kb-conflict-resolution-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.kb-conflict-resolution-description{font-size:.875rem;color:var(--color-text)}.kb-conflict-resolution-key{font-size:.8125rem;color:var(--color-text-muted);margin-top:var(--spacing-xs);padding-left:1.5rem}.kb-conflict-resolution-content{margin-top:var(--spacing-sm);padding-left:1.5rem}.kb-conflict-proposed-content{font-family:monospace;font-size:.8125rem;white-space:pre-wrap;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-sm);margin-top:var(--spacing-sm);max-height:300px;overflow-y:auto}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8125rem}.badge-kb-conflict-high{background-color:#f8d7da;color:#842029}.badge-kb-conflict-medium{background-color:#fff3cd;color:#856404}.badge-kb-conflict-low{background-color:#cfe2ff;color:#084298}.badge-kb-action-evict{background-color:#f8d7da;color:#842029}.badge-kb-action-merge{background-color:#cfe2ff;color:#084298}.badge-kb-action-scope-qualify{background-color:#fff3cd;color:#856404}.badge-kb-action-no-action{background-color:#e2e3e5;color:#41464b}
