*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1117;--bg-inset: #010409;--surface: #151b23;--surface-2: #212830;--border: #3d444d;--accent: #4493f8;--accent-hover:#388bfd;--text: #f0f6fc;--text-muted: #9198a1;--user-bubble: #1f6feb;--ai-bubble: #151b23;--error: #f85149;--error-bg: #f851491a;--error-border:#da3633;--error-text: #ffa198;--radius: 6px;--header-h: 52px;--font: "Inter", system-ui, sans-serif;--text-primary:#f0f6fc;--text-secondary:#9198a1;--timeline-axis: rgba(240,246,252,.1);--timeline-tick: rgba(240,246,252,.25);--timeline-text-dim: rgba(240,246,252,.38);--timeline-row-bg: rgba(240,246,252,.06);--timeline-silence-fill: rgba(248,81,73,.15);--timeline-silence-text: #f85149;--stat-panel-bg: rgba(240,246,252,.03);--stat-panel-border: rgba(240,246,252,.07);--stat-label: rgba(240,246,252,.4);--stat-sep: rgba(240,246,252,.25);--stat-value: rgba(240,246,252,.85);--stats-track: rgba(240,246,252,.05);--stats-track-empty: rgba(240,246,252,.07);--stats-empty-text: rgba(240,246,252,.3);--stats-median-line: rgba(240,246,252,.8);--stats-row-border: rgba(240,246,252,.04);--stats-row-hover: rgba(240,246,252,.03);--monitor-paused-row: #212830;--monitor-chip-text-bg: #001a47;--monitor-chip-text-fg: #4da0ff;--monitor-chip-voice-bg: #211047;--monitor-chip-voice-fg: #b687f7;--monitor-chip-active-bg: #122117;--monitor-chip-active-fg: #41b445;--monitor-chip-paused-bg: #1c1c1c;--monitor-chip-paused-fg: #92a1b5;--monitor-action-bg: #2a313c;--monitor-action-bg-alt: #122117;--monitor-action-border: #3d444d;--monitor-action-text: #f0f6fc;--workflow-action-bg: #122117;--workflow-action-border: #41b445;--workflow-decision-bg: #2f2500;--workflow-decision-border: #d4a72c;--workflow-terminal-bg: #2a1214;--workflow-terminal-border: #ff6a69}body[data-theme=light]{--bg: #ffffff;--bg-inset: #f6f8fa;--surface: #f6f8fa;--surface-2: #f6f8fa;--border: #d1d9e0;--accent: #0969da;--accent-hover:#0550ae;--text: #1f2328;--text-muted: #59636e;--user-bubble: #0969da;--ai-bubble: #f6f8fa;--error: #cf222e;--error-bg: #ffebe9;--error-border:#cf222e;--error-text: #82071e;--text-primary:#1f2328;--text-secondary:#59636e;--timeline-axis: rgba(31,35,40,.1);--timeline-tick: rgba(31,35,40,.25);--timeline-text-dim: rgba(31,35,40,.52);--timeline-row-bg: rgba(31,35,40,.06);--timeline-silence-fill: rgba(207,34,46,.1);--timeline-silence-text: #cf222e;--stat-panel-bg: rgba(31,35,40,.03);--stat-panel-border: rgba(31,35,40,.1);--stat-label: rgba(31,35,40,.62);--stat-sep: rgba(31,35,40,.38);--stat-value: rgba(31,35,40,.88);--stats-track: rgba(31,35,40,.06);--stats-track-empty: rgba(31,35,40,.1);--stats-empty-text: rgba(31,35,40,.45);--stats-median-line: rgba(31,35,40,.85);--stats-row-border: rgba(31,35,40,.06);--stats-row-hover: rgba(31,35,40,.03);--monitor-paused-row: #f6f8fa;--monitor-chip-text-bg: #d1f0ff;--monitor-chip-text-fg: #005fcc;--monitor-chip-voice-bg: #f1e5ff;--monitor-chip-voice-fg: #783ae4;--monitor-chip-active-bg: #dafbe1;--monitor-chip-active-fg: #1a7f37;--monitor-chip-paused-bg: #e8ecf2;--monitor-chip-paused-fg: #5c6570;--monitor-action-bg: #f6f8fa;--monitor-action-bg-alt: #dafbe1;--monitor-action-border: #d1d9e0;--monitor-action-text: #1f2328;--workflow-action-bg: #dcfce7;--workflow-action-border: #86efac;--workflow-decision-bg: #fef9c3;--workflow-decision-border: #facc15;--workflow-terminal-bg: #fee2e2;--workflow-terminal-border: #fca5a5}html{background:var(--bg-inset)}body{font-family:var(--font);background:var(--bg-inset);color:var(--text);height:100vh;overflow:hidden}#root{min-height:100vh;background:var(--bg-inset)}.app-root{display:flex;flex-direction:column;height:100vh}.app-header{height:var(--header-h);min-height:var(--header-h);display:flex;align-items:center;gap:24px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--border);z-index:10}.logo{font-size:1.25rem;font-weight:700;color:var(--accent);letter-spacing:.05em;white-space:nowrap;margin-right:8px}.theme-toggle-btn{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.theme-toggle-btn:hover{color:var(--text);background:var(--surface-2)}.theme-toggle-btn-active{color:var(--accent);background:var(--surface-2);border-color:var(--accent)}.tab-bar{display:flex;gap:4px}.tab-btn{font-family:var(--font);font-size:.875rem;font-weight:500;padding:6px 18px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.tab-btn:hover{color:var(--text);background:var(--surface-2)}.tab-btn-active{color:var(--accent);background:var(--surface-2);border-color:var(--accent)}.tab-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.layout{display:flex;flex:1;overflow:hidden}.sidebar{width:280px;min-width:240px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:20px;padding:24px 18px;overflow-y:auto}.model-selector{display:flex;flex-direction:column;gap:6px}.model-selector label,.system-prompt-section label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.model-selector select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-family:var(--font);font-size:.875rem;cursor:pointer;outline:none}.model-selector select:focus{border-color:var(--accent)}.model-selector select:disabled{opacity:.5;cursor:not-allowed}.system-prompt-section{display:flex;flex-direction:column;gap:6px}.system-prompt-section textarea{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-family:var(--font);font-size:.8rem;resize:vertical;outline:none;line-height:1.5}.system-prompt-section textarea:focus{border-color:var(--accent)}.btn{font-family:var(--font);font-size:.875rem;font-weight:500;padding:9px 16px;border:none;border-radius:8px;cursor:pointer;transition:background .15s,opacity .15s}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-saved{background:#2a6b3a!important}.session-id{font-size:.7rem;color:var(--text-muted);word-break:break-all;margin-top:auto}.chat-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.messages{flex:1;overflow-y:auto;padding:28px 24px 16px;display:flex;flex-direction:column;gap:20px}.empty-state{margin:auto;color:var(--text-muted);font-size:1rem}.bubble-wrapper{display:flex;align-items:flex-end;gap:10px}.bubble-wrapper.user{flex-direction:row-reverse}.bubble-wrapper.assistant{flex-direction:row}.bubble-avatar{width:32px;height:32px;min-width:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0;margin-bottom:2px}.avatar-human{background:var(--accent);color:#fff}.avatar-agent{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted)}.bubble{max-width:65%;border-radius:var(--radius);padding:12px 16px;display:flex;flex-direction:column;gap:4px}.bubble-user{background:var(--user-bubble);color:#fff;border-bottom-right-radius:3px}.bubble-assistant{background:var(--ai-bubble);color:var(--text);border-bottom-left-radius:3px;border:1px solid var(--border)}.bubble-role{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.75;margin-bottom:2px}.bubble-content{font-size:.925rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.bubble-time{font-size:.65rem;opacity:.5;align-self:flex-end;margin-top:4px}.latency-bar{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.latency-pill{display:inline-flex;align-items:center;gap:4px;background:#6c63ff1f;border:1px solid rgba(108,99,255,.25);border-radius:999px;padding:2px 8px;font-size:.68rem;cursor:default}.latency-label{color:var(--text-muted);font-weight:600;letter-spacing:.03em;text-transform:uppercase}.latency-value{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.voice-metrics-wrapper{margin-top:20px;padding:14px 18px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:none}.voice-metrics-heading{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.voice-latency-panel{justify-content:center}.voice-transcript{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding-top:20px;width:100%;max-width:none}.voice-transcript-heading{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;flex-shrink:0}.voice-messages{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:8px}.voice-messages::-webkit-scrollbar{width:6px}.voice-messages::-webkit-scrollbar-track{background:transparent}.voice-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.voice-message{max-width:65%;border-radius:var(--radius);padding:12px 16px;display:flex;flex-direction:column;gap:4px;font-size:.925rem}.voice-message-human{background:var(--user-bubble);color:#fff;border-bottom-right-radius:3px;align-self:flex-end}.voice-message-agent{background:var(--ai-bubble);color:var(--text);border-bottom-left-radius:3px;border:1px solid var(--border);align-self:flex-start}.voice-message-role{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);opacity:.8}.voice-message-content{color:inherit;font-size:.925rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.voice-message-metrics{display:flex;gap:8px;margin-top:4px;font-size:.65rem;color:var(--text-muted)}.voice-message-metrics span{background:#6c63ff1a;padding:2px 6px;border-radius:4px}.bubble.typing{flex-direction:row;align-items:center;gap:6px;padding:14px 18px}.bubble.typing span{display:inline-block;width:7px;height:7px;background:var(--text-muted);border-radius:50%;animation:bounce 1.2s infinite}.bubble.typing span:nth-child(2){animation-delay:.2s}.bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,100% {transform: translateY(0);} 40% {transform: translateY(-6px);} @keyframes bounce {0%,80%,100% {transform: translateY(0);} 40% {transform: translateY(-6px);}} @keyframes queued-pulse {0%,100% {opacity: 1;} 50% {opacity: .45;}} .bubble-queued-pulse {animation: queued-pulse 1.5s ease-in-out infinite;}}.error-banner{background:#2d1b1b;border:1px solid var(--error);color:var(--error);border-radius:8px;padding:10px 14px;font-size:.85rem}.input-bar{display:flex;align-items:flex-end;gap:10px;padding:14px 24px 18px;border-top:1px solid var(--border);background:var(--surface)}.input-field{flex:1;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-family:var(--font);font-size:.9rem;line-height:1.5;resize:none;outline:none;transition:border-color .15s}.input-field:focus{border-color:var(--accent)}.input-field:disabled{opacity:.5}.config-loading{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-muted);font-size:.95rem}.config-error{color:var(--error)}.config-panel{flex:1;overflow-y:auto;padding:32px 40px;display:flex;flex-direction:column;gap:28px;width:100%}.config-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.config-title{font-size:1.3rem;font-weight:600;color:var(--text);margin-bottom:4px}.config-subtitle{font-size:.8rem;color:var(--text-muted)}.config-subtitle code{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:.78rem;color:var(--accent)}.config-body{display:flex;flex-direction:column;gap:24px}.config-field{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);padding:20px 24px}.config-field-row{flex-direction:row;align-items:center;justify-content:space-between}.config-field-row>div{display:flex;flex-direction:column;gap:4px}.config-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.config-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:var(--text);-webkit-user-select:none;user-select:none}.config-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.config-hint{font-size:.8rem;color:var(--text-muted);margin-bottom:2px}.config-doc{font-size:.82rem;color:var(--text-muted);line-height:1.55;background:var(--surface-2);border-left:3px solid var(--accent);border-radius:4px;padding:8px 12px;margin-bottom:4px;font-style:italic}.config-select,.config-input{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:var(--font);font-size:.875rem;outline:none;transition:border-color .15s}.config-select:focus,.config-input:focus{border-color:var(--accent)}.config-select{cursor:pointer}.config-input{flex:1;min-width:0}.config-textarea{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:var(--font);font-size:.875rem;resize:vertical;outline:none;line-height:1.6;transition:border-color .15s}.config-textarea:focus{border-color:var(--accent)}.config-number{width:90px;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-family:var(--font);font-size:.95rem;text-align:center;outline:none;transition:border-color .15s}.config-number:focus{border-color:var(--accent)}.model-list{display:flex;flex-wrap:wrap;gap:8px}.model-tag{display:flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:5px 10px;font-size:.8rem;color:var(--text)}.model-tag-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 2px;transition:color .15s}.model-tag-remove:hover{color:var(--error)}.model-add-row{display:flex;gap:10px;margin-top:4px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.voice-lobby{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:60px 24px;max-width:480px;margin:0 auto;text-align:center}.voice-intro{color:var(--text-muted);line-height:1.6}.voice-multi-root{display:flex;flex-direction:column;gap:1rem;padding:1rem;flex:1;min-height:0;overflow-y:auto;box-sizing:border-box}.voice-multi-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.voice-multi-grid{display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0;width:100%}.voice-room-card{flex:1;min-height:0;min-width:0;max-width:none;overflow:hidden;display:flex;flex-direction:column}.voice-error{color:var(--error);font-size:.85rem}.voice-error-inline{margin-left:1rem}.voice-alert{padding:.75rem 1rem;border-radius:6px;margin-bottom:12px;font-size:.875rem}.voice-alert-error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.voice-room-name{font-size:.75rem;color:var(--text-muted);margin-bottom:4px;font-family:monospace;word-break:break-all}.voice-room-count{color:var(--text-muted);font-size:.85rem;margin-left:1rem}.voice-livekit-room{display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:0;overflow-y:auto;padding:32px 24px}.voice-agent{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;min-width:0;max-width:none;flex:1;min-height:0}.voice-agent-state{color:var(--text-muted);font-size:.9rem}.voice-terminate-btn{margin-top:8px;background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.voice-terminate-btn:hover:not(:disabled){background:color-mix(in srgb,var(--error-bg) 80%,var(--error-border))}.voice-visualiser{width:100%;height:80px;display:flex;align-items:center;justify-content:center}.lt-page{flex:1;max-width:1020px;width:100%;margin:0 auto;padding:2rem 1.25rem;overflow-y:auto;overflow-x:auto;box-sizing:border-box}.lt-page-toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.cost-summary-panel{margin-bottom:1.25rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised, rgba(255, 255, 255, .03));box-shadow:0 1px 2px #0000000f}.cost-summary-panel-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.cost-summary-panel-title{margin:0;font-size:1rem;font-weight:700;color:var(--text)}.cost-summary-panel-meta{font-size:.85rem;color:var(--text-muted)}.cost-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem 1rem;margin:0}.cost-summary-item{min-width:0}.cost-summary-label{margin:0 0 .2rem;font-size:.78rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em}.cost-summary-value{margin:0;font-size:.95rem;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.cost-summary-banner{margin-bottom:1rem;font-size:1.05rem;font-weight:600}.lt-container{display:flex;flex-direction:column;gap:1.5rem}.lt-heading{font-size:1.1rem;font-weight:700;color:var(--text);margin:0 0 .25rem;letter-spacing:.02em}.lt-empty{color:var(--text-muted);font-size:.95rem;padding:2rem;text-align:center;background:var(--surface);border-radius:12px;border:1px solid var(--border)}.lt-turns{display:flex;flex-direction:column;gap:1.5rem}.lt-turn{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.1rem 1.25rem .9rem;overflow-x:auto}.lt-turn-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.9rem}.lt-turn-label{font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.lt-turn-total{font-size:.82rem;color:var(--text-muted)}.lt-legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-top:1.2rem;padding-top:.6rem;border-top:1px solid var(--border)}.lt-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--text-muted)}.lt-legend-dot{display:inline-block;width:10px;height:10px;border-radius:2px;border:1.5px solid transparent;flex-shrink:0}.lt-legend-marker{font-weight:700;font-size:.78rem}.lt-stats{display:flex;flex-wrap:wrap;gap:.4rem .75rem;padding:.45rem .75rem;margin-top:.35rem;background:var(--stat-panel-bg);border-radius:6px;border:1px solid var(--stat-panel-border)}.lt-stat{display:flex;align-items:baseline;gap:.3rem;font-size:.78rem}.lt-stat-label{color:var(--stat-label);font-weight:500}.lt-stat-sep{color:var(--stat-sep);font-weight:400}.lt-stat-value{color:var(--stat-value);font-weight:700;font-variant-numeric:tabular-nums}.lt-channel-badge{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em}.toolbar-filter-label{font-size:.85rem;color:var(--text-muted);display:flex;align-items:center;gap:6px}.toolbar-filter-select{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:.85rem}.toolbar-filter-select:focus{outline:none;border-color:var(--accent)}.rooms-monitor{padding:1.5rem;width:100%;height:100%;display:flex;flex-direction:column;color:var(--text);box-sizing:border-box}.rooms-monitor-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.rooms-monitor-title{margin:0;font-size:1.2rem}.rooms-monitor-refresh,.rooms-monitor-action-btn{padding:4px 12px;border-radius:6px;border:1px solid var(--monitor-action-border);background:var(--surface-2);color:var(--text);cursor:pointer;font-size:.85rem}.rooms-monitor-refresh:disabled,.rooms-monitor-action-btn:disabled{cursor:not-allowed;opacity:.6}.rooms-monitor-refresh-time,.rooms-monitor-empty{color:var(--text-muted);font-size:.8rem}.rooms-monitor-error{color:var(--error-text);margin-bottom:1rem;font-size:.9rem}.rooms-monitor-table-scroll{overflow-x:auto;overflow-y:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}.rooms-monitor-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.9rem}.rooms-monitor-table th,.rooms-monitor-table td{padding:8px 10px}.rooms-monitor-table thead tr{border-bottom:1px solid var(--border);text-align:left;color:var(--text-muted)}.rooms-monitor-table thead th{position:sticky;top:0;z-index:1;background:var(--surface)}.rooms-monitor-row{border-bottom:1px solid var(--border)}.rooms-monitor-row:hover{background:var(--surface-2);cursor:default}.rooms-monitor-row-paused{background:var(--monitor-paused-row)}.rooms-monitor-id-cell{font-family:monospace;font-size:.8rem;max-width:260px;white-space:nowrap;display:flex;align-items:center;gap:6px}.rooms-monitor-id-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rooms-monitor-tenant-cell{font-family:monospace;font-size:.75rem;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.rooms-monitor-copy-btn{flex-shrink:0;background:none;border:1px solid #555;border-radius:3px;cursor:pointer;font-size:.8rem;color:#bbb;padding:1px 4px;line-height:1;transition:color .2s,border-color .2s}.rooms-monitor-copy-btn:hover{color:#fff;border-color:#999}.rooms-monitor-copy-btn-copied{color:#4caf50!important;border-color:#4caf50!important}.rooms-monitor-center{text-align:center}.rooms-monitor-chip{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.8rem}.rooms-monitor-chip-text{background:var(--monitor-chip-text-bg);color:var(--monitor-chip-text-fg)}.rooms-monitor-chip-voice{background:var(--monitor-chip-voice-bg);color:var(--monitor-chip-voice-fg)}.rooms-monitor-chip-active{background:var(--monitor-chip-active-bg);color:var(--monitor-chip-active-fg)}.rooms-monitor-chip-paused{background:var(--monitor-chip-paused-bg);color:var(--monitor-chip-paused-fg)}.rooms-monitor-chip-archived{background:#64647840;color:#aaa}.rooms-monitor-chip-deleted{background:#b432322e;color:#f87171}.rooms-monitor-actions{display:flex;gap:8px}.rooms-monitor-action-btn{padding:4px 10px;font-size:.8rem}.rooms-monitor-action-btn-pause{background:var(--monitor-action-bg);color:var(--monitor-action-text)}.rooms-monitor-action-btn-open{background:var(--monitor-action-bg-alt);color:var(--monitor-action-text)}.rooms-monitor-action-btn-secondary{background:transparent;color:var(--text-muted);border-color:#555}.rooms-monitor-action-btn-resume{background:var(--monitor-action-bg-alt);color:var(--monitor-action-text)}.rooms-monitor-action-btn-danger{border-color:var(--error-border);background:var(--error-bg);color:var(--error-text)}.rooms-monitor-action-btn:hover:not(:disabled),.rooms-monitor-refresh:hover:not(:disabled){filter:brightness(.98)}.rooms-monitor-menu-wrapper{position:relative;display:inline-block}.rooms-monitor-menu-trigger{padding:4px 10px;font-size:.8rem;background:var(--surface-2);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;cursor:pointer;white-space:nowrap}.rooms-monitor-menu-trigger:hover{background:var(--border)}.rooms-monitor-menu{position:absolute;right:0;top:calc(100% + 4px);min-width:140px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #00000059;z-index:100;display:flex;flex-direction:column;overflow:hidden}.rooms-monitor-menu-item{text-align:left;padding:8px 14px;font-size:.85rem;background:none;border:none;color:var(--text-primary);cursor:pointer;white-space:nowrap}.rooms-monitor-menu-item:hover{background:var(--border)}.rooms-monitor-menu-item-disabled,.rooms-monitor-menu-item:disabled{color:var(--text-secondary);cursor:not-allowed;opacity:.55}.rooms-monitor-menu-item-disabled:hover,.rooms-monitor-menu-item:disabled:hover{background:none}.rooms-monitor-menu-item-danger{color:var(--error-text)}.rooms-monitor-menu-item-danger:hover{background:var(--error-bg)}.lt-channel-chat{background:#6366f12e;color:#a5b4fc;border:1px solid rgba(99,102,241,.35)}.lt-channel-voice{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.lt-chunks-badge{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;background:#fbbf241f;color:#fcd34d;border:1px solid rgba(251,191,36,.28)}.chat-toolbar{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.conv-log-table{width:100%;border-collapse:collapse;font-size:.85rem}.conv-log-table th{text-align:left;padding:.5rem .75rem;border-bottom:2px solid var(--border);color:var(--text-muted, #888);font-weight:600;white-space:nowrap}.conv-log-table td{padding:.45rem .75rem;border-bottom:1px solid var(--border);vertical-align:top}.log-turn-separator-row td{padding:0;border-bottom:none;background:transparent!important}.log-turn-separator{display:block;height:3px;margin:1.35rem .35rem 1.05rem;padding:0;border:none;border-radius:999px;background:var(--log-turn-divider, rgba(148, 163, 184, .55))}body[data-theme=light] .log-turn-separator{background:var(--log-turn-divider, rgba(100, 116, 139, .38))}.lt-turns .log-turn-separator{margin:1.5rem 0 1.15rem}.conv-row-human td{background:#6366f10f}.conv-row-agent td{background:#22c55e0f}.conv-cell-time{white-space:nowrap;font-size:.78rem;color:var(--text-muted, #888)}.conv-cell-room{white-space:nowrap;font-size:.78rem;color:var(--text-muted, #888);max-width:7rem;overflow:hidden;text-overflow:ellipsis;font-family:monospace}.conv-cell-channel{white-space:nowrap;font-size:.78rem;color:var(--text-muted, #888);width:4rem}.conv-cell-turn{text-align:center;font-weight:600;width:3rem}.conv-cell-speaker{font-weight:700;width:5rem}.conv-row-human .conv-cell-speaker{color:#6366f1}.conv-row-agent .conv-cell-speaker{color:#22c55e}.conv-cell-text{word-break:break-word;max-width:28rem}.conv-cell-model{white-space:nowrap;font-size:.78rem;font-family:monospace}.conv-cell-info{max-width:28rem;vertical-align:top}.event-info-toggle{display:inline-block;margin:0 0 .35rem;padding:0;border:none;background:none;color:var(--accent, #6366f1);font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.event-info-toggle:hover{opacity:.85}.event-info-pre{margin:0;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.35}.conv-cell-dur{white-space:nowrap;font-size:.82rem;color:var(--text-muted, #888);width:6rem}.lt-page-toolbar{gap:.5rem}.split-toggle-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.split-toggle-btn:hover{color:var(--text);background:var(--surface-2)}.split-toggle-btn-active{color:var(--accent);background:var(--surface-2);border-color:var(--accent)}.logout-btn{display:flex;align-items:center;justify-content:center;padding:0 12px;height:34px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.85rem;cursor:pointer;transition:color .15s,background .15s,border-color .15s}.logout-btn:hover{color:var(--error, #f87171);background:var(--surface-2);border-color:var(--error, #f87171)}.new-session-header-btn{display:flex;align-items:center;justify-content:center;padding:0 14px;height:34px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-family:var(--font);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s;white-space:nowrap}.new-session-header-btn:hover{background:var(--accent-hover)}.voice-stream-cursor{display:inline-block;width:2px;height:1em;background:var(--accent);margin-left:3px;vertical-align:text-bottom;border-radius:1px;animation:blink-cursor .7s steps(1) infinite}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.split-root{flex:1;display:flex;flex-direction:row;overflow:hidden}.split-pane{display:flex;flex-direction:column;overflow:hidden;flex:1;min-width:200px}.split-pane-left-wrapper,.split-pane-right-wrapper{display:flex;flex-direction:column;overflow:hidden;min-width:200px}.split-pane-left-wrapper>.split-pane,.split-pane-right-wrapper>.split-pane{flex:1;width:100%}.split-divider{width:5px;flex-shrink:0;background:var(--border);cursor:col-resize;transition:background .15s;display:flex;align-items:center;justify-content:center;position:relative}.split-divider:hover{background:var(--accent)}.split-divider-handle{width:3px;height:32px;border-radius:2px;background:var(--text-muted);opacity:.35}.split-divider:hover .split-divider-handle{opacity:.9;background:var(--accent)}.pane-tab-bar{display:flex;flex-wrap:wrap;gap:4px;padding:6px 10px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.pane-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.ls-container{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin:10px 12px 4px;padding:12px 16px}.ls-header-row{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;flex-wrap:wrap}.ls-title{font-size:.95rem;font-weight:700;color:var(--text-primary)}.ls-subtitle{font-size:.78rem;color:var(--text-muted)}.ls-legend{font-size:.72rem;color:var(--text-muted);margin-left:auto}.ls-leg{font-size:.85em}.ls-leg-min{color:#3b82f6}.ls-leg-p75{color:#93c5fd}.ls-leg-p90{color:#f59e0b}.ls-leg-p99{color:#ef4444}.ls-leg-tail{color:#ef444480}.ls-leg-mean{color:#fcd34d}.ls-leg-median{color:var(--stats-median-line)}.ls-table{width:100%;border-collapse:collapse;font-size:.78rem}.ls-table th{text-align:right;color:var(--text-muted);font-weight:600;padding:2px 8px 6px;border-bottom:1px solid var(--border);white-space:nowrap}.ls-th-field{text-align:left;min-width:90px}.ls-th-bar{text-align:left;min-width:230px}.ls-th-stat{min-width:62px}.ls-row td{padding:5px 8px;border-bottom:1px solid var(--stats-row-border)}.ls-row:last-child td{border-bottom:none}.ls-row:hover td{background:var(--stats-row-hover)}.ls-field-cell{white-space:nowrap}.ls-field-label{color:var(--text-primary);font-weight:600;margin-right:6px}.ls-field-count{color:var(--text-muted);font-size:.72rem}.ls-bar-cell{padding-top:7px!important;padding-bottom:7px!important}.ls-stat-cell{text-align:right;color:var(--text-secondary);font-variant-numeric:tabular-nums}.ls-empty{margin:14px 12px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-muted);font-size:.85rem}.ms-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.ms-header{display:flex;align-items:center;gap:12px;padding:12px 16px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.ms-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.ms-page-tab-bar{display:flex;gap:2px}.ms-page-tab-btn{display:flex;align-items:center;gap:7px;padding:5px 14px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ms-page-tab-btn:hover{color:var(--text-primary);background:var(--surface)}.ms-page-tab-btn-active{background:var(--accent);border-color:var(--accent);color:#fff}.ms-page-tab-count{font-size:.72rem;font-weight:600;padding:1px 6px;border-radius:100px;background:#fff3;color:inherit;min-width:18px;text-align:center}.ms-page-tab-btn:not(.ms-page-tab-btn-active) .ms-page-tab-count{background:var(--border);color:var(--text-muted)}.infra-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:16px}.infra-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden;cursor:pointer;transition:border-color .15s}.infra-card:hover{border-color:var(--accent, #6366f1)}.infra-card-selected{border-color:var(--accent, #6366f1);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #6366f1) 30%,transparent)}.infra-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;border-bottom:1px solid var(--border)}.infra-card-name{font-size:.9rem;font-weight:600;color:var(--text-primary)}.infra-card-body{padding:10px 14px;display:flex;flex-direction:column;gap:6px}.infra-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem}.infra-label{color:var(--text-muted)}.infra-value{color:var(--text-secondary);font-family:var(--font-mono, monospace);font-size:.78rem}.infra-health-ok{color:#16a34a}.infra-health-error{color:#dc2626}.infra-health-degraded{color:#ca8a04}.infra-health-unknown{color:#6b7280}.infra-config-groups{display:flex;flex-direction:column;gap:24px}.infra-config-blob{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.infra-config-blob-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);padding:10px 20px}.infra-config-blob-description{padding:12px 20px 0}.infra-config-blob-description .config-doc{margin-bottom:0}.infra-config-blob-fields{display:flex;flex-direction:column;gap:0}.infra-config-blob-fields .config-field{border:none;border-radius:0;border-bottom:1px solid var(--border);border-left:none;padding:16px 20px}.infra-config-blob-fields .config-field:last-child{border-bottom:none}.svc-subnav{display:flex;flex-wrap:wrap;gap:6px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface)}.svc-subnav-empty{color:var(--text-muted);font-size:.82rem;padding:2px 0}.svc-pill{display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:14px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.svc-pill:hover{background:var(--surface);color:var(--text-primary)}.svc-pill-active{background:var(--accent);border-color:var(--accent);color:#fff}.svc-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.svc-dot-green{background:#22c55e}.svc-dot-red{background:#ef4444}.svc-dot-orange{background:#f97316}.svc-dot-yellow{background:#eab308}.svc-dot-grey{background:#6b7280}.ms-detail{display:flex;flex-direction:column;flex:1;overflow:hidden}.ms-summary{display:flex;gap:10px;padding:12px 16px 10px;flex-shrink:0;border-bottom:1px solid var(--border)}.ms-metric-card{display:flex;flex-direction:column;gap:3px;padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);min-width:90px}.ms-metric-label{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.ms-metric-value{font-size:.9rem;font-weight:600;color:var(--text-primary);line-height:1.3}.ms-metric-mono{font-family:var(--font-mono, monospace);font-size:.85rem}.ms-status-badge{display:inline-flex;align-items:center;gap:5px}.ms-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.ms-health-sub{font-size:.68rem;font-weight:400;opacity:.75;margin-left:2px}.ms-status-ok .ms-status-dot{background:#22c55e}.ms-status-ok{color:#16a34a}.ms-status-degraded .ms-status-dot{background:#f59e0b}.ms-status-degraded{color:#d97706}.ms-status-error .ms-status-dot{background:#ef4444}.ms-status-error{color:#dc2626}.ms-status-unknown .ms-status-dot{background:#9ca3af}.ms-status-unknown{color:#6b7280}.ms-tab-bar{display:flex;gap:4px;padding:0 16px;border-bottom:1px solid var(--border);flex-shrink:0}.ms-tab-btn{padding:6px 14px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-size:.85rem;cursor:pointer;transition:color .15s,border-color .15s}.ms-tab-btn:hover{color:var(--text-primary)}.ms-tab-btn-active{color:var(--accent);border-bottom-color:var(--accent)}.ms-tab-content{flex:1;overflow-y:auto;padding:14px 16px}.endpoint-list{display:flex;flex-direction:column;gap:6px}.endpoint-card{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.endpoint-card-open{border-color:var(--accent)}.endpoint-header{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text-primary);transition:background .12s}.endpoint-header:hover{background:var(--bg)}.endpoint-main{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.endpoint-title-row{display:flex;align-items:center;gap:8px;min-width:0}.endpoint-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.endpoint-method{font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:4px;flex-shrink:0;font-family:var(--font-mono, monospace)}.method-get{background:#16a34a22;color:#16a34a}.method-post{background:#2563eb22;color:#2563eb}.method-delete{background:#dc262622;color:#dc2626}.method-put{background:#d9770622;color:#d97706}.method-patch{background:#7c3aed22;color:#7c3aed}.method-ws{background:#0891b222;color:#0891b2}.method-other{background:#6b728022;color:#6b7280}.endpoint-path{font-family:var(--font-mono, monospace);font-size:.82rem;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.endpoint-badge{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:600;line-height:1.35}.endpoint-badge-exposure{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text-primary)}.endpoint-badge-access{background:color-mix(in srgb,#0ea5e9 16%,transparent);color:#0ea5e9}.endpoint-badge-auth{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#f59e0b}.endpoint-badge-owner{background:color-mix(in srgb,#94a3b8 20%,transparent);color:var(--text-muted)}.endpoint-summary{width:100%;font-size:.76rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.endpoint-chevron{margin-left:auto;font-size:.7rem;color:var(--text-muted);flex-shrink:0}.endpoint-body{display:flex;flex-direction:column;gap:10px;padding:12px 14px 14px;border-top:1px solid var(--border)}.endpoint-metadata-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.endpoint-metadata-item{display:flex;flex-direction:column;gap:3px;border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:7px 8px;min-width:0}.endpoint-metadata-label{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.endpoint-metadata-value{font-size:.78rem;color:var(--text-primary);font-family:var(--font-mono, monospace);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.endpoint-label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--text-muted);font-weight:500}.endpoint-input{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text-primary);font-family:var(--font-mono, monospace);font-size:.82rem}.endpoint-textarea{padding:6px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text-primary);font-family:var(--font-mono, monospace);font-size:.82rem;resize:vertical}.endpoint-ws-note{font-size:.78rem;color:var(--text-muted);margin:0}.endpoint-ws-note code{font-family:var(--font-mono, monospace);color:var(--text-primary)}.endpoint-response{display:flex;flex-direction:column;gap:6px}.endpoint-response-meta{display:flex;align-items:center;gap:10px}.response-status{font-size:.82rem;font-weight:700;padding:2px 8px;border-radius:4px;font-family:var(--font-mono, monospace)}.status-ok{background:#16a34a22;color:#16a34a}.status-err{background:#dc262622;color:#dc2626}.response-latency{font-size:.75rem;color:var(--text-muted)}.endpoint-response-body{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px 12px;font-family:var(--font-mono, monospace);font-size:.78rem;color:var(--text-primary);overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto;margin:0}@media (max-width: 980px){.endpoint-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.endpoint-header{padding:9px 10px}.endpoint-title-row{flex-wrap:wrap}.endpoint-path{width:100%}.endpoint-metadata-grid{grid-template-columns:minmax(0,1fr)}}.log-viewer{display:flex;flex-direction:column;height:100%;min-height:0}.log-viewer-toolbar{display:flex;align-items:center;gap:8px;padding-bottom:8px;flex-shrink:0}.log-viewer-line-count{margin-left:auto;font-size:.75rem;color:var(--text-muted)}.log-viewer-body{flex:1;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-family:var(--font-mono, monospace);font-size:.78rem;color:var(--text);min-height:200px}.log-viewer-empty{color:var(--text-muted);font-style:italic}.log-line{line-height:1.55;white-space:pre-wrap;word-break:break-all}.log-line:hover{background:var(--stats-row-hover)}.logs-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.subtab-bar{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.subtab-btn{font-family:var(--font);font-size:.8125rem;font-weight:500;padding:5px 16px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.subtab-btn:hover{color:var(--text);background:var(--surface-2)}.subtab-btn-active{color:var(--accent);background:var(--surface-2);border-color:var(--accent)}.subtab-content{flex:1;overflow:auto;display:flex;flex-direction:column}.job-setup-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.job-setup-panel .lt-page-toolbar,.job-setup-panel .subtab-bar{flex-shrink:0}.job-setup-panel .subtab-content{min-height:0}.job-setup-panel .subtab-content-graph{overflow:hidden}.job-setup-graph{flex:1;min-height:0;width:100%;position:relative;display:flex;flex-direction:column}.job-setup-graph-legend{position:absolute;top:12px;right:12px;z-index:5;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:8px 10px;box-shadow:0 6px 16px #0f172a1f;font-size:12px;color:var(--text);min-width:130px}.job-setup-graph-legend-title{font-weight:700;margin-bottom:6px}.job-setup-graph-legend-item{display:flex;align-items:center;gap:8px;margin-top:4px}.job-setup-graph-legend-swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid transparent}.job-setup-graph-legend-swatch-terminal{background:#fee2e2;border-color:#fca5a5}.job-setup-graph-legend-swatch-action{background:#dcfce7;border-color:#86efac}.job-setup-graph-legend-swatch-decision{background:#fef9c3;border-color:#facc15}.workflow-graph-context-menu{position:fixed;z-index:20;min-width:180px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 10px 24px #0f172a2e}.workflow-graph-context-menu-item{display:block;width:100%;text-align:left;border:none;background:transparent;color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer}.workflow-graph-context-menu-item:hover:not(:disabled){background:#94a3b82e}.workflow-graph-context-menu-item:disabled{opacity:.45;cursor:default}.workflow-graph-context-menu-danger{color:var(--error-text)}.workflow-graph-connection-hint{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:11;max-width:min(520px,92%);padding:8px 12px;border-radius:8px;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);color:var(--text);font-size:12px;text-align:center;pointer-events:none}.react-flow__node.workflow-node-connection-source{outline:2px solid #3b82f6;outline-offset:4px}.react-flow__node.workflow-node-connection-target-valid{outline:2px solid #22c55e;outline-offset:4px;box-shadow:0 0 0 6px #22c55e2e}.workflow-graph-connection-hint-valid{background:#22c55e1f;border-color:#22c55e73}.job-setup-graph-editing .workflow-node-surface-passthrough{pointer-events:none}.job-setup-graph-editing .react-flow__handle{z-index:4}.job-setup-graph-editing .react-flow__connection .react-flow__connection-path{stroke:#3b82f6;stroke-width:2.5}.job-setup-graph-editing .react-flow__connection.valid .react-flow__connection-path{stroke:#22c55e;stroke-width:3}.workflow-graph-edit-sidebar{position:absolute;top:0;right:0;bottom:0;z-index:12;width:min(280px,42vw);display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--bg);border-left:1px solid var(--border);box-shadow:-8px 0 24px #0f172a1f}.workflow-graph-edit-sidebar-header{display:flex;flex-direction:column;gap:6px}.workflow-graph-edit-sidebar-back{align-self:flex-start;border:none;background:transparent;color:var(--text);font-size:12px;cursor:pointer;padding:4px 0;opacity:.8}.workflow-graph-edit-sidebar-back:hover{opacity:1}.workflow-graph-edit-sidebar-title{margin:0;font-size:14px;font-weight:600}.workflow-graph-edit-sidebar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow:auto}.workflow-graph-edit-sidebar-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;text-align:left;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);padding:10px 12px;cursor:pointer}.workflow-graph-edit-sidebar-option:hover:not(:disabled){background:#94a3b824}.workflow-graph-edit-sidebar-option-current{border-color:var(--monitor-chip-text-fg);background:#94a3b81a}.workflow-graph-edit-sidebar-option:disabled{opacity:.65;cursor:default}.workflow-graph-edit-sidebar-option-label{font-size:13px;font-weight:600}.workflow-graph-edit-sidebar-option-desc{font-size:12px;opacity:.75;line-height:1.35}.workflow-graph-edit-sidebar-form{display:flex;flex-direction:column;gap:12px}.workflow-graph-edit-sidebar-field{display:flex;flex-direction:column;gap:6px;font-size:12px}.workflow-graph-edit-sidebar-input{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--bg);color:var(--text);font-size:13px}.workflow-graph-edit-sidebar-apply{align-self:flex-start}.job-setup-graph-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:10px}.job-setup-graph-dirty{font-size:12px;color:var(--error-text)}.job-setup-graph-edit-hint{font-size:12px;opacity:.75}.job-setup-graph-history{width:min(520px,92vw);max-height:85vh;overflow:auto;background:var(--surface);color:var(--text)}.job-setup-graph-history-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.job-setup-graph-history-help{margin:0 0 12px;font-size:13px;color:var(--text-muted)}.job-setup-graph-history-versions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.job-setup-graph-version{font-size:13px;padding:0;color:var(--accent)}.job-setup-graph-history-version{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--surface-2);color:var(--text);cursor:pointer}.job-setup-graph-history-version:hover{border-color:var(--accent)}.job-setup-graph-history-version-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.job-setup-graph-history-version-label{font-weight:600;font-size:14px;color:var(--text)}.job-setup-graph-history-version-meta{font-size:12px;color:var(--text-muted);margin-top:4px}.job-setup-graph-history-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:13px}.job-setup-graph-history-body{display:flex;flex-direction:column;gap:16px}.job-setup-graph-history-table{width:100%;border-collapse:collapse;font-size:13px}.job-setup-graph-history-table th,.job-setup-graph-history-table td{border-bottom:1px solid var(--border);padding:8px 10px;text-align:left}.job-setup-graph-history-row-selected{background:var(--monitor-chip-text-bg)}.job-setup-graph-history-preview{min-height:360px;display:flex;flex-direction:column;gap:8px}.job-setup-graph-history-preview-title{font-weight:600}.job-setup-graph-history-preview .job-setup-graph{min-height:320px}.job-setup-graph .react-flow__attribution{display:none}.workflow-graph-edit-toggle-active{background:var(--monitor-chip-text-bg);color:var(--monitor-chip-text-fg)}.workflow-graph-edit-toggle-icon{fill:#1a192b;width:14px;height:14px}.workflow-graph-edit-toggle-active .workflow-graph-edit-toggle-icon{fill:var(--monitor-chip-text-fg)}.job-setup-graph-legend-swatch-exec-pending{background:var(--monitor-chip-paused-bg);border-color:var(--monitor-chip-paused-fg)}.job-setup-graph-legend-swatch-exec-running{background:var(--monitor-chip-text-bg);border-color:var(--monitor-chip-text-fg)}.job-setup-graph-legend-swatch-exec-completed{background:var(--monitor-chip-active-bg);border-color:var(--monitor-chip-active-fg)}.job-setup-graph-legend-swatch-exec-blocked,.job-setup-graph-legend-swatch-exec-failed{background:var(--error-bg);border-color:var(--error-text)}.workflow-node{position:relative;box-sizing:border-box;color:var(--text);z-index:2}.workflow-node-action{min-width:168px}.workflow-node-decision,.workflow-node-terminal{width:120px}.workflow-node-decision{height:120px}.workflow-node-terminal{height:60px}.workflow-node-surface{box-sizing:border-box;color:var(--text)}.workflow-node-label{text-transform:none;font-weight:500;line-height:1.35;white-space:normal;word-break:break-word}.workflow-node-surface-action{min-height:60px;padding:10px 18px;border-radius:8px;border:1px solid var(--workflow-action-border);background:var(--workflow-action-bg);display:flex;align-items:center;justify-content:center;font-size:13px;text-align:center}.workflow-node-surface-terminal{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;border:1px solid var(--workflow-terminal-border);background:var(--workflow-terminal-bg);display:flex;align-items:center;justify-content:center;font-size:13px}.workflow-node-surface-diamond{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(45deg);border:1px solid var(--workflow-decision-border);background:var(--workflow-decision-bg)}.workflow-node-decision-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:10px;pointer-events:none;z-index:2}.workflow-node-decision-label .workflow-node-label{width:72px;text-align:center;font-size:12px}.workflow-node-exec-pending .workflow-node-surface-action,.workflow-node-exec-pending .workflow-node-surface-terminal,.workflow-node-exec-pending .workflow-node-surface-diamond{background:var(--monitor-chip-paused-bg);border-color:var(--monitor-chip-paused-fg);color:var(--monitor-chip-paused-fg)}.workflow-node-exec-running .workflow-node-surface-action,.workflow-node-exec-running .workflow-node-surface-terminal,.workflow-node-exec-running .workflow-node-surface-diamond{background:var(--monitor-chip-text-bg);border-color:var(--monitor-chip-text-fg);color:var(--monitor-chip-text-fg)}.workflow-node-exec-completed .workflow-node-surface-action,.workflow-node-exec-completed .workflow-node-surface-terminal,.workflow-node-exec-completed .workflow-node-surface-diamond{background:var(--monitor-chip-active-bg);border-color:var(--monitor-chip-active-fg);color:var(--monitor-chip-active-fg)}.workflow-node-exec-blocked .workflow-node-surface-action,.workflow-node-exec-blocked .workflow-node-surface-terminal,.workflow-node-exec-blocked .workflow-node-surface-diamond,.workflow-node-exec-failed .workflow-node-surface-action,.workflow-node-exec-failed .workflow-node-surface-terminal,.workflow-node-exec-failed .workflow-node-surface-diamond{background:var(--error-bg);border-color:var(--error-text);color:var(--error-text)}.execution-view-bar{display:flex;gap:8px;flex-wrap:wrap}.execution-view-btn{padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-size:13px;cursor:pointer}.execution-view-btn:hover{color:var(--text);background:var(--surface)}.execution-view-btn-active{color:var(--text);border-color:var(--accent);background:var(--surface)}.job-setup-execution-graph{flex:1;min-height:320px}.job-setup-execution{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow:auto;color:var(--text)}.job-setup-execution-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.job-setup-execution-meta,.job-setup-execution-hint,.job-setup-execution-empty{margin:0;color:var(--text-muted)}.job-setup-execution-error{margin:0;color:var(--error-text)}.job-setup-execution-run-picker{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text)}.job-setup-execution-run-picker select{max-width:420px;background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.job-setup-execution-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);font-size:13px;color:var(--text)}.job-setup-execution-status{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.job-setup-execution-status-running,.job-setup-execution-status-pending{background:var(--monitor-chip-text-bg);color:var(--monitor-chip-text-fg)}.job-setup-execution-status-completed{background:var(--monitor-chip-active-bg);color:var(--monitor-chip-active-fg)}.job-setup-execution-status-blocked,.job-setup-execution-status-failed{background:var(--error-bg);color:var(--error-text)}.job-setup-execution-panel{border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:12px 14px;min-height:180px;color:var(--text)}.job-setup-execution-table{width:100%;border-collapse:collapse;font-size:13px;color:var(--text)}.job-setup-execution-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:0 8px 8px 0;border-bottom:1px solid var(--border)}.job-setup-execution-table th:last-child{width:96px;text-align:right}.job-setup-execution-step-row td{padding:10px 8px 10px 0;border-bottom:1px solid var(--border);vertical-align:top;color:var(--text)}.job-setup-execution-step-row:last-child td{border-bottom:none}.job-setup-execution-log-title{margin:16px 0 8px;font-size:13px;font-weight:600;color:var(--text)}.job-setup-execution-log{list-style:decimal;margin:0;padding-left:20px;color:var(--text)}.job-setup-execution-step-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.job-setup-execution-step-running .job-setup-execution-step-status{color:var(--monitor-chip-text-fg)}.job-setup-execution-step-completed .job-setup-execution-step-status{color:var(--monitor-chip-active-fg)}.job-setup-execution-step-pending .job-setup-execution-step-status{color:var(--monitor-chip-paused-fg)}.job-setup-execution-step-blocked .job-setup-execution-step-status,.job-setup-execution-step-failed .job-setup-execution-step-status{color:var(--error-text)}.job-setup-execution-step-label{color:var(--text)}.job-setup-execution-step-tools{min-width:140px}.job-setup-execution-tool-list{display:flex;flex-wrap:wrap;gap:6px}.job-setup-execution-tool-chip{font-family:var(--font-mono, monospace);font-size:11px;padding:2px 6px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.job-setup-execution-tool-empty{color:var(--text-muted)}.job-setup-execution-step-latency{font-size:12px;font-weight:600;color:var(--text);text-align:right;white-space:nowrap}.job-setup-execution-log li{padding:8px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--text)}.job-setup-execution-log li::marker{color:var(--text-muted)}.job-setup-execution-log li:last-child{border-bottom:none}.memory-label-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;margin-bottom:4px;background:transparent}.memory-label-chip-valid{background:#dcfce7;color:#166534;border:1px solid #86efac}.memory-graph-card{background:linear-gradient(140deg,#f8fafc,#ecfeff 55%,#f0fdf4);border:1px solid var(--border);border-radius:12px;padding:12px;box-shadow:0 8px 20px #0f172a14;display:flex;flex-direction:column;height:100%;min-height:0}.memory-graph-svg{width:100%;flex:1;min-height:280px;display:block;border-radius:10px;background:radial-gradient(circle at 50% 50%,#fff,#f1f5f9 70%,#e2e8f0)}.memory-graph-node{fill:#fff;stroke:#1f2937;stroke-width:1.8}.memory-graph-node-label{fill:#111827;font-size:12px;font-weight:600;pointer-events:none}.memory-graph-edge-label{fill:#374151;font-size:11px;font-weight:600;text-anchor:middle}.memory-graph-stats{margin-top:10px;display:flex;gap:14px;color:#334155;font-size:.82rem;font-weight:600}.memory-graph-legend{margin-top:12px;display:flex;gap:14px;flex-wrap:wrap}.memory-graph-tab{padding:1.5rem;display:flex;flex-direction:column;height:100%;min-height:0}.memory-graph-toolbar{margin-bottom:1.5rem;flex-wrap:wrap;flex-shrink:0}.memory-graph-content{flex:1;min-height:0}.memory-graph-legend-item{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 10px;font-weight:600}.memory-graph-legend-line{width:28px;height:0;display:inline-block;border-top-width:3px;border-top-style:solid}.line-positive{border-top-color:#0f766e}.line-negative{border-top-color:#b91c1c}.line-uncertain-positive{border-top-color:#0f766e;border-top-style:dotted}.line-uncertain-negative{border-top-color:#b91c1c;border-top-style:dotted}.session-empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;color:var(--text-muted);font-size:.95rem;text-align:center}.session-create-error{font-size:.8rem;color:var(--error);background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius);padding:8px 12px}.session-active{flex:1;display:flex;flex-direction:column;overflow:hidden}.session-active-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.session-active-meta{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.session-meta-label{font-size:.75rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.session-active-name{font-weight:600;font-size:.9rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:3rem}.session-active-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.session-channel-select{padding:6px 10px;font-size:.8rem;border-radius:var(--radius);min-width:90px}.session-end-btn{font-size:.8rem;padding:6px 12px;white-space:nowrap}.session-channel-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500;white-space:nowrap;line-height:1;flex-shrink:0}.session-channel-chip-chat{background:var(--monitor-chip-text-bg);color:var(--monitor-chip-text-fg)}.session-channel-chip-voice{background:var(--monitor-chip-voice-bg);color:var(--monitor-chip-voice-fg)}.session-agent-status{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:400;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;line-height:1;flex-shrink:0}.session-agent-status strong{color:var(--text);font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px 36px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:20px}.modal-title{font-size:1.1rem;font-weight:600;color:var(--text);margin:0}.modal-form{display:flex;flex-direction:column;gap:20px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.search-result-modal-card{max-width:min(1100px,94vw);width:min(1100px,94vw);max-height:90vh;padding:18px 20px;gap:12px}.search-result-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.search-result-inline-tabs{padding:6px 0;border-bottom:1px solid var(--border);background:transparent;flex-shrink:0}.graph-search-tab{display:flex;flex-direction:column;height:100%;min-height:0;padding:1.5rem;box-sizing:border-box}.graph-search-toolbar{flex-shrink:0;margin-bottom:1rem}.graph-search-result-panel{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.graph-search-result-meta{flex-shrink:0;display:flex;flex-wrap:wrap;gap:1rem;padding:8px 12px;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--text-muted)}.graph-search-result-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.graph-search-query-panel{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:12px}.graph-search-query-heading{margin:0;color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.search-result-cypher-query,.search-result-cypher-params{margin:0;padding:12px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.82rem;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);overflow:auto;white-space:pre}.search-result-cypher-query{min-height:180px}.search-result-cypher-params{min-height:120px}.graph-search-matched-entities{flex-shrink:0;padding:10px 12px;border-top:1px solid var(--border)}.search-result-raw-json{flex:1;margin:0;padding:12px;border:none;background:var(--surface-2);color:var(--text);font-size:.8rem;overflow-y:auto;white-space:pre-wrap;word-break:break-word}
