@import url(https://fonts.googleapis.com/icon?family=Material+Icons);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.chat-interface{background:#fff;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:100vh;margin:0;position:relative;width:100%}.sidebar-toggle-external{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;left:1rem;padding:.5rem;position:fixed;top:1rem;z-index:999}.sidebar-toggle-external:hover{background:#f3f4f6;color:#374151}.sidebar-toggle-external .material-icons{font-size:20px}.welcome-screen{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;margin-left:280px;padding:3rem 2rem;transition:margin-left .3s ease}.chat-interface:has(.conversation-sidebar.hidden) .welcome-screen{margin-left:0}.header{margin-bottom:4rem}.logo-section{align-items:center;display:flex;gap:1rem;justify-content:center}.logo{height:2rem;margin:0 .5rem;vertical-align:middle;width:auto}.logo-section h1{align-items:center;color:#1a1a1a;display:flex;font-size:2.5rem;font-weight:600;justify-content:center;margin:0}.logo-section h1 .logo{height:2.5rem;margin:0 .5rem}.main-search{margin-bottom:4rem;max-width:750px;overflow:visible;width:100%}.main-search-unified{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;display:flex;overflow:visible;transition:all .1s ease}.main-search-unified:focus-within{border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.main-search-input{background:#0000;border:none;color:#1a1a1a;flex:1 1;font-family:inherit;font-size:1.1rem;outline:none;padding:1.25rem 1.5rem}.main-search-input::placeholder{color:#9ca3af}.main-model-button{background:#0000;border:none;border-left:1px solid #e5e7eb;border-radius:0;color:#6b7280;padding:1.25rem 1rem}.main-model-button:hover:not(:disabled){background:#0000000d;color:#374151}.main-search-unified .search-send-button{border-left:1px solid #e5e7eb;border-radius:0;padding:1.25rem 1rem}.search-send-button{align-items:center;background:#0000;border:none;border-radius:10px;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:500;justify-content:center;min-width:80px;padding:.875rem 1.5rem;transition:all .1s ease}.search-send-button:hover:not(:disabled){background:#0000000d;color:#000}.search-send-button:active:not(:disabled){background:#0000001a}.search-send-button:disabled{background:#0000;color:#9ca3af;cursor:not-allowed}.search-send-button .material-icons{font-size:20px;font-weight:500}.main-search-container{width:100%}.main-search-controls{align-items:center;display:flex;gap:1rem}.suggestions-section{margin-bottom:3rem;max-width:750px;text-align:center;width:100%}.suggestions-section h3{color:#374151;font-size:1.3rem;font-weight:500;margin-bottom:1.5rem}.suggestion-questions{display:flex;flex-direction:column;gap:.5rem}.suggestion-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;color:#374151;cursor:pointer;font-size:1rem;padding:1.25rem 1.5rem;text-align:left;transition:all .1s ease}.suggestion-item:hover{background:#f3f4f6;border-color:#d1d5db;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.demo-section{margin-top:2rem}.demo-button{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.75rem 1.5rem;transition:all .1s ease}.demo-button:hover{background:#e5e7eb;color:#374151}.conversation-view{display:flex;flex-direction:column;height:100vh;margin-left:280px;transition:margin-left .3s ease;width:calc(100% - 280px)}.chat-interface:has(.conversation-sidebar.hidden) .conversation-view{margin-left:0;width:100%}.fixed-chat-title{border-radius:8px;cursor:pointer;left:300px;padding:.5rem;position:fixed;top:.75rem;transition:left .3s ease;transition:all .3s ease;z-index:1000}.chat-interface:has(.conversation-sidebar.hidden) .fixed-chat-title{left:4rem}.fixed-chat-title:hover{background:#0000000d;transform:translateY(-1px)}.fixed-chat-title h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.25rem;font-weight:500;margin:0}.fixed-chat-title .logo{height:1.5rem;margin-left:.5rem;width:auto}.back-button{background:none;border-radius:8px;color:#6b7280;justify-content:center;padding:.5rem;transition:all .1s ease}.back-button:hover{background:#f3f4f6;color:#374151}.back-button .material-icons{font-size:20px}.chat-header .logo-section{align-items:center;display:flex;gap:.75rem}.chat-header .logo{height:1.5rem;width:auto}.chat-header h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.25rem;font-weight:500;margin:0}.connection-status .status-indicator{align-items:center;color:#6b7280;display:flex}.connection-status .status-indicator.connected{color:#10b981}.connection-status .status-indicator.disconnected{color:#ef4444}.messages-container{background:#fafafa;flex:1 1;overflow-y:auto;padding:1.5rem 0}.messages-wrapper{margin:0 auto;max-width:1200px;padding:0 2rem;width:100%}.message,.messages-wrapper{display:flex;flex-direction:column}.message{margin:1.5rem 0}.message.user{align-items:flex-end;align-self:flex-end;max-width:100%}.message.assistant{align-items:flex-start;align-self:flex-start;max-width:100%;width:100%}.message-content{word-wrap:break-word;border-radius:16px;line-height:1.5;margin:8px 0;padding:14px 18px}.message.user .message-content{background:#f1f5f9;border:1px solid #e2e8f0;box-shadow:0 2px 8px #94a3b826;color:#334155;margin-left:auto;max-width:600px;min-width:200px}.message.assistant .message-content{background:#f3f4f6;color:#1f2937;max-width:100%;width:100%}.message-info{color:#6b7280;font-size:11px;margin-top:8px}.message-info span{margin-right:12px}.message-timestamp{color:#9ca3af;font-size:.75rem}.message-model{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:.7rem;font-weight:500;padding:.25rem .5rem}.streaming-indicator{animation:blink 1s infinite;color:#1a1a1a;font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.input-container{background:#fff;border-top:1px solid #e5e7eb;bottom:0;overflow:visible;padding:1.5rem 0;position:-webkit-sticky;position:sticky;z-index:10}.input-wrapper{margin:0 auto;max-width:1200px;padding:0 2rem;width:100%}.unified-input{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;overflow:visible;transition:all .1s ease}.unified-input:focus-within{background:#fff;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.chat-input{background:#0000;border:none;color:#1a1a1a;flex:1 1;font-family:inherit;font-size:1rem;outline:none;padding:.875rem 1rem}.chat-input::placeholder,.chat-input:disabled{color:#9ca3af}.unified-input .model-selector{background:#0000;border:none;border-left:1px solid #e5e7eb;color:#6b7280;cursor:pointer;font-family:inherit;font-size:.85rem;min-width:140px;outline:none;padding:.5rem .75rem}.unified-input .model-selector:disabled{color:#9ca3af;cursor:not-allowed}.send-button{align-items:center;background:#0000;border:none;border-left:1px solid #e5e7eb;border-radius:0 8px 8px 0;color:#000;cursor:pointer;display:flex;justify-content:center;padding:.875rem 1rem;transition:all .1s ease}.send-button:hover:not(:disabled){background:#0000000d;color:#000}.send-button:disabled{background:#0000;color:#9ca3af;cursor:not-allowed}.send-button .material-icons{font-size:18px;font-weight:500}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width:768px){.welcome-screen{height:100vh;padding:2rem 1rem}.header h1{font-size:2rem}.main-search-input{font-size:1rem;padding:1rem 1.25rem}.main-search-controls{gap:1rem;justify-content:space-between}.model-selector-button{min-width:55px;padding:1rem}.model-dropdown{left:0;min-width:auto;right:auto;width:100%}.suggestions-section h3{font-size:1.2rem}.suggestion-item{font-size:.95rem;padding:1rem 1.25rem}.conversation-view{height:100vh;max-width:none}.chat-header,.input-container,.messages-container{padding:1rem 1.5rem}.message,.message.user{max-width:95%}.message.user .message-content{max-width:400px;min-width:150px}.message-content{font-size:.9rem;padding:.875rem 1rem}.unified-input{border-radius:12px;flex-direction:row}.chat-input{border:none;flex:1 1;padding:1rem;width:auto}.chat-model-button,.send-button{min-width:50px;padding:1rem}.message-info{align-items:flex-start;flex-direction:column;gap:.25rem}.conversation-view,.welcome-screen{margin-left:0!important}}.model-selector-container{overflow:visible}.model-selector-button,.model-selector-container{align-items:center;display:flex;position:relative}.model-selector-button{background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;justify-content:center;padding:.75rem;transition:all .1s ease}.model-selector-button:hover:not(:disabled){background:#0000;color:#374151}.model-selector-button:disabled{background:#0000;color:#9ca3af;cursor:not-allowed}.model-selector-button .material-icons{font-size:20px}.chat-model-button{background:#0000;border:none;border-left:1px solid #e5e7eb;border-radius:0;color:#6b7280;padding:.75rem 1rem}.chat-model-button:hover:not(:disabled){background:#0000000d;color:#374151}.model-dropdown{animation:fadeIn .2s ease-out;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:300px;min-width:200px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);z-index:9999}.model-dropdown.chat-dropup{bottom:calc(100% + 8px);top:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.model-dropdown-item{align-items:center;background:none;border:none;border-bottom:1px solid #f3f4f6;color:#374151;cursor:pointer;display:flex;font-size:.9rem;justify-content:space-between;padding:.5rem 1rem;text-align:left;transition:all .2s ease;width:100%}.model-dropdown-item:last-child{border-bottom:none}.model-dropdown-item:hover{background:#f9fafb;color:#1f2937}.model-dropdown-item.selected{background:#f3f4f6;color:#374151;font-weight:500}.model-dropdown-item .model-name{flex:1 1;font-size:.9rem}.model-dropdown-item .check-icon{color:#10b981;font-size:1rem;margin-left:.5rem}.main-search-controls .model-selector{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#1a1a1a;cursor:pointer;flex:1 1;font-family:inherit;font-size:.95rem;outline:none;padding:.875rem 1rem;transition:all .1s ease}.main-search-controls .model-selector:focus{border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.main-search-controls .model-selector:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.part-details-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin:16px 0;overflow:hidden;width:100%}.part-details-title{background:#f3f4f6;border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;font-weight:600;margin:0;padding:12px 16px}.part-details-table{border-collapse:collapse;font-size:13px;table-layout:fixed;width:100%}.part-table-section{background:#0d0d0d;color:#e9e9e9;font-size:12px;font-weight:600;letter-spacing:.05em;padding:8px 16px;text-transform:uppercase}.part-table-key{background:#fafafa;color:#374151;font-weight:500;vertical-align:top;width:25%}.part-table-key,.part-table-value{border-bottom:1px solid #f0f0f0;padding:8px 16px}.part-table-value{color:#1f2937;width:75%;word-break:break-word}.part-table-subtable{border-bottom:1px solid #f0f0f0;padding:0}.part-table-header .part-table-section{border-top:2px solid #e5e7eb}.sub-table{border:1px solid #e5e7eb;border-radius:4px;margin:8px 0;overflow:hidden}.sub-table.nested{border-color:#d1d5db;margin-left:16px}.sub-table-title{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:12px;font-weight:600;padding:6px 12px}.sub-table-content{border-collapse:collapse;font-size:12px;width:100%}.sub-table-content td,.sub-table-content th{border-bottom:1px solid #f3f4f6;font-size:12px;padding:6px 12px;text-align:left}.sub-table-content th{background:#f9fafb;color:#374151;font-weight:600}.sub-table-content td{color:#1f2937;word-break:break-word}.sub-table-simple{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;margin:8px 0;padding:8px 12px}.sub-table-simple.nested{background:#f3f4f6;margin-left:16px}.sub-table-simple .sub-table-title{color:#374151;font-size:12px;font-weight:600;margin-bottom:4px}.sub-table-simple .sub-table-content{color:#1f2937;font-size:12px;word-break:break-word}.step-raw-json{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;margin-top:8px;overflow:hidden}.raw-json-toggle{align-items:center;background:#f1f5f9;border:none;border-bottom:1px solid #e2e8f0;color:#475569;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;text-align:left;width:100%}.raw-json-toggle:hover{background:#e2e8f0}.raw-json-info{padding:0}.json-stats{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;font-size:12px;gap:12px;padding:8px 12px}.json-stats .stat{color:#64748b;font-weight:500}.raw-json-content{background:#fff;border:none;color:#1e293b;font-family:Monaco,Consolas,Liberation Mono,monospace;font-size:11px;line-height:1.4;margin:0;max-height:400px;overflow-y:auto;padding:12px}.llm-formatting-indicator{align-items:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;display:flex;gap:8px;margin-top:8px;padding:8px 12px}.formatting-spinner{animation:spin 1s linear infinite;border:2px solid #f59e0b;border-radius:50%;border-top-color:#d97706;height:16px;width:16px}.formatting-text{color:#92400e;font-size:12px;font-weight:500}.agent-info{color:#6b7280;font-weight:600;opacity:.8}.agent-info,.tool-info{font-size:11px;margin-bottom:4px}.tool-info{color:#4f46e5;font-weight:500}.message-text{line-height:1.5;white-space:pre-wrap}.debug-section{margin-top:12px}.debug-toggle{color:#2563eb;cursor:pointer;font-size:11px;font-weight:500}.debug-toggle:hover{color:#1d4ed8}.debug-json{background:#1f2937;color:#10b981;font-family:Courier New,monospace;font-size:11px;margin-top:8px;max-height:240px;overflow:auto;padding:12px}.thinking-indicator{align-items:center;color:#6b7280;display:flex;font-size:14px;margin:16px 0}.thinking-indicator div{margin-right:2px}.message.assistant .message-content.progress{background:#e5e7eb;border-left:4px solid #6366f1}.message.assistant .message-content.past-progress{background:#f3f4f6;border-left:4px solid #a5b4fc;opacity:.8}.workflow-timeline{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin:16px 0;overflow:hidden}.workflow-timeline.completed{background:#f0fdf4;border-color:#bbf7d0}.timeline-header{align-items:center;background:#f1f5f9;border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.workflow-timeline.completed .timeline-header{background:#ecfdf5;border-bottom-color:#bbf7d0}.timeline-header:hover{background:#e2e8f0}.workflow-timeline.completed .timeline-header:hover{background:#d1fae5}.timeline-title{color:#374151;font-size:14px;font-weight:600;min-width:120px}.workflow-timeline.completed .timeline-title{color:#166534}.timeline-current-step{color:#6b7280;flex:1 1;font-size:13px}.step-status{align-items:center;display:inline-flex;gap:6px}.step-status.active{color:#3b82f6;font-weight:500}.step-status.completed{color:#10b981}.step-status.failed{color:#ef4444}.timeline-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.timeline-toggle:hover{background:#e5e7eb;color:#374151}.timeline-toggle .material-icons{font-size:20px}.timeline-content{background:#fff;padding:16px}.workflow-timeline.completed .timeline-content{background:#fefffe}.timeline-step{display:flex;gap:12px;margin-bottom:16px}.timeline-step:last-child{margin-bottom:0}.step-indicator{align-items:center;display:flex;flex-direction:column;min-width:24px}.step-dot{background:#d1d5db;border:2px solid #e5e7eb;border-radius:50%;flex-shrink:0;height:12px;width:12px}.step-dot.active{animation:pulse-blue 2s infinite;background:#3b82f6;border-color:#2563eb}.step-dot.completed{background:#10b981;border-color:#059669}.step-dot.failed{background:#ef4444;border-color:#dc2626}@keyframes pulse-blue{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.step-line{background:#e5e7eb;flex:1 1;margin-top:4px;min-height:20px;width:2px}.timeline-step.completed .step-line{background:#bbf7d0}.timeline-step.active .step-line{background:#bfdbfe}.step-content{flex:1 1;min-width:0}.step-header{gap:12px;margin-bottom:4px}.timeline-step.active .step-agent{color:#1d4ed8}.timeline-step.completed .step-agent{color:#047857}.timeline-step.failed .step-agent{color:#dc2626}.step-time{background:#f3f4f6;border-radius:4px;color:#9ca3af;flex-shrink:0;font-family:Courier New,monospace;font-size:11px;padding:2px 6px}.step-message{color:#6b7280;font-size:12px;line-height:1.4;margin-bottom:4px}.step-tool{background:#eef2ff;border-radius:4px;color:#4f46e5;display:inline-block;font-size:11px;font-weight:500;padding:2px 6px}.step-debug{margin-top:8px}.step-debug .debug-toggle{color:#2563eb;cursor:pointer;font-size:11px;font-weight:500}.step-debug .debug-toggle:hover{color:#1d4ed8}.step-debug .debug-json{background:#1f2937;border-radius:4px;color:#10b981;font-family:Courier New,monospace;font-size:10px;margin-top:6px;max-height:200px;overflow:auto;padding:8px}@media (max-width:768px){.timeline-header{align-items:flex-start;flex-direction:column;gap:8px;padding:12px}.timeline-current-step{width:100%}.timeline-toggle{align-self:flex-end;position:absolute;right:12px;top:12px}.timeline-content{padding:12px}.step-header{align-items:flex-start;flex-direction:column;gap:4px}.step-time{align-self:flex-end}}.step-details{background:#f8fafc;border-left:3px solid #e2e8f0;border-radius:6px;margin-top:8px;padding:8px}.step-description{color:#64748b;font-size:12px;line-height:1.4;margin-bottom:4px}.step-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.meta-item{background:#e2e8f0;border-radius:4px;color:#475569;font-size:10px;font-weight:500;padding:2px 6px}.substeps-container{border-left:2px solid #e2e8f0;margin-left:16px;margin-top:12px;padding-left:16px}.substep{display:flex;font-size:12px;gap:8px;margin-bottom:8px}.substep:last-child{margin-bottom:0}.substep-indicator{align-items:center;display:flex;flex-direction:column;min-width:16px}.substep-dot{background:#cbd5e1;border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;height:8px;width:8px}.substep-dot.active{animation:pulse-blue-small 2s infinite;background:#60a5fa;border-color:#3b82f6}.substep-dot.completed{background:#34d399;border-color:#10b981}.substep-dot.failed{background:#f87171;border-color:#ef4444}@keyframes pulse-blue-small{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.substep-line{background:#e2e8f0;flex:1 1;margin-top:2px;min-height:12px;width:1px}.substep.completed .substep-line{background:#bbf7d0}.substep.active .substep-line{background:#bfdbfe}.substep-content{flex:1 1;min-width:0}.substep-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:2px}.substep-title{color:#475569;font-size:11px;font-weight:500;line-height:1.3}.substep.active .substep-title{color:#1e40af}.substep.completed .substep-title{color:#059669}.substep.failed .substep-title{color:#dc2626}.substep-time{background:#f1f5f9;border-radius:3px;color:#9ca3af;flex-shrink:0;font-family:Courier New,monospace;font-size:9px;padding:1px 4px}.substep-details{background:#f1f5f9;border-left:2px solid #cbd5e1;border-radius:4px;margin-top:4px;padding:4px 6px}.substep-description{color:#64748b;font-size:10px;line-height:1.3;margin-bottom:2px}.substep-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.substep-meta .meta-item{background:#cbd5e1;border-radius:3px;color:#475569;font-size:9px;font-weight:500;padding:1px 4px}.step-agent{align-items:center;color:#374151;display:flex;font-size:13px;font-weight:600;gap:4px}.step-agent:before{background:currentColor;border-radius:50%;content:"";height:4px;opacity:.6;width:4px}.timeline-step.active .step-agent:before{animation:pulse-blue-small 2s infinite;background:#3b82f6}.timeline-step.completed .step-agent:before{background:#10b981}.timeline-step.failed .step-agent:before{background:#ef4444}@media (max-width:768px){.substeps-container{margin-left:8px;padding-left:8px}.substep-header{align-items:flex-start;flex-direction:column;gap:2px}.substep-time{align-self:flex-end}.substep-meta{flex-direction:column;gap:2px}}.message-actions{gap:8px;margin-top:12px}.action-icon,.message-actions{align-items:center;display:flex}.action-icon{background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;justify-content:center;padding:6px;transition:all .2s ease}.action-icon:hover{background:#f3f4f6;color:#374151}.action-icon .material-icons{font-size:16px}.info-icon:hover{background:#dbeafe;color:#2563eb}.workflow-icon:hover{background:#ecfdf5;color:#059669}.processing-status{gap:8px;margin-left:auto}.processing-status,.processing-status-left{align-items:center;color:#6b7280;display:flex;font-size:13px}.processing-status-left{gap:12px;justify-content:space-between;margin-bottom:12px;margin-right:auto;width:100%}.processing-status-left .status-content{align-items:center;display:flex;gap:8px}.processing-status-left .stop-button{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.processing-status-left .stop-button:hover{background:#ef4444;border-color:#ef4444;color:#fff}.processing-status-left .stop-button:active{transform:scale(.95)}.processing-text{font-style:italic}.processing-dots{align-items:center;display:flex;gap:2px}.processing-dots .dot{animation:pulse-dot 1.5s ease-in-out infinite;background:#6b7280;border-radius:50%;height:4px;width:4px}.processing-dots .dot:first-child{animation-delay:0s}.processing-dots .dot:nth-child(2){animation-delay:.2s}.processing-dots .dot:nth-child(3){animation-delay:.4s}@keyframes pulse-dot{0%,60%,to{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.2)}}.tooltip-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.tooltip-content{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #00000026;max-height:90vh;max-width:90vw;overflow:auto}.tooltip-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:16px 20px}.tooltip-title{color:#374151;font-size:16px;font-weight:600;margin:0}.tooltip-close{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.tooltip-close:hover{background:#e5e7eb;color:#374151}.tooltip-close .material-icons{font-size:18px}.tooltip-body{padding:20px}.metadata-info{display:flex;flex-direction:column;gap:8px}.metadata-info div{font-size:14px;line-height:1.5}.metadata-info strong{color:#374151;font-weight:600;margin-right:8px}.tooltip-body .workflow-timeline{background:#0000;border:none;box-shadow:none;margin:0}.tooltip-body .timeline-header{background:#0000;border:none;cursor:default;display:flex;padding:8px 0}.tooltip-body .timeline-toggle{display:none}.tooltip-body .timeline-content{background:#0000;padding:0}.tooltip-body .step-raw-json{margin-top:8px}.tooltip-body .raw-json-toggle{color:#2563eb;cursor:pointer;font-size:11px;font-weight:500}.tooltip-body .raw-json-content{background:#1f2937;border-radius:4px;color:#10b981;font-family:Courier New,monospace;font-size:10px;margin-top:6px;max-height:300px;overflow:auto;padding:8px}@media (max-width:768px){.tooltip-overlay{padding:10px}.tooltip-content{max-height:95vh;max-width:95vw}.tooltip-header{padding:12px 16px}.tooltip-body{padding:16px}.action-icon{padding:8px}.action-icon .material-icons{font-size:18px}}.metadata-info{font-size:14px;line-height:1.4;max-width:500px}.route-section{background:#f8f9fa;border-left:4px solid #06c;border-radius:8px;margin-bottom:16px;padding:12px}.route-header{align-items:center;display:flex;gap:8px;margin-bottom:10px}.route-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase}.route-simple-response{background:#e8f5e8;color:#2d5a2d}.route-single-agent{background:#e3f2fd;color:#1976d2}.route-multi-agent{background:#fff3e0;color:#f57c00}.route-simple-llm{background:#f3e5f5;color:#7b1fa2}.route-details{margin-top:8px}.route-desc{color:#333;margin-bottom:6px}.route-benefit{color:#666;font-style:italic;margin-bottom:6px}.route-examples{color:#555;font-size:13px}.reasoning-section{background:#fff8dc;border-left:3px solid #daa520;border-radius:6px;margin:16px 0;padding:10px}.reasoning-text{color:#5d5d5d;font-style:italic;margin-top:6px}.confidence-section{background:#f0f8ff;border-left:3px solid #4682b4;border-radius:6px;margin:16px 0;padding:10px}.confidence-display{align-items:center;display:flex;gap:12px;margin:8px 0}.confidence-bar{background:#e0e0e0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.confidence-fill{background:linear-gradient(90deg,#ff6b6b,#ffd93d 50%,#6bcf7f);height:100%;transition:width .3s ease}.confidence-text{color:#333;font-weight:600}.confidence-meaning{color:#666;font-size:13px;margin-top:6px}.agents-section{background:#f5f5f5;border-left:3px solid #888;border-radius:6px;margin:16px 0;padding:10px}.agents-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.agent-tag{background:#e1f5fe;border-radius:12px;color:#0277bd;font-size:12px;font-weight:500;padding:4px 8px}.model-section{background:#fafafa;border-radius:4px;margin:16px 0;padding:8px}.technical-details{border-top:1px solid #e0e0e0;margin-top:16px;padding-top:12px}.technical-details summary{color:#666;cursor:pointer;font-weight:500;outline:none}.technical-details summary:hover{color:#333}.tech-info{background:#f8f8f8;border-radius:4px;font-size:13px;margin-top:10px;padding:10px}.tech-info ul{margin:8px 0;padding-left:20px}.tech-info li{color:#555;margin:4px 0}.learn-more{border-top:1px solid #ddd;color:#777;font-size:12px;margin-top:10px;padding-top:8px}@media (max-width:768px){.metadata-info{font-size:13px;max-width:none}.agents-section,.confidence-section,.reasoning-section,.route-section{margin-bottom:12px;padding:8px}.confidence-display{align-items:stretch;flex-direction:column;gap:8px}.agents-list{flex-direction:column;gap:4px}}.data-table-section{margin:16px 0}.original-table-fallback{border:1px solid #e5e7eb;border-radius:6px;margin-top:12px;overflow:hidden}.original-table-fallback summary{background:#f8f9fa;border-bottom:1px solid #e5e7eb;color:#6b7280;cursor:pointer;font-size:12px;font-weight:500;padding:8px 12px}.original-table-fallback summary:hover{background:#f3f4f6}.original-table-fallback[open] summary{border-bottom:1px solid #e5e7eb}.part-details-comprehensive{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin:20px 0;overflow:hidden}.part-details-header{background:#4a5568;color:#fff;padding:16px 24px;text-align:left}.part-details-header h3{font-size:20px;font-weight:600;line-height:1.2;margin:0 0 4px}.part-details-subtitle{font-size:14px;font-weight:400;margin:0;opacity:.85}.part-details-section{border-bottom:1px solid #e5e7eb;margin:0}.part-details-section:last-child{border-bottom:none}.part-details-section .tanstack-table-container{border:none;border-radius:0;box-shadow:none;margin:0}.part-details-section .table-header{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:2px solid #cbd5e0}.part-details-section .table-title{color:#2d3748;font-size:14px;font-weight:600}.codegen-result-container{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #00000008;margin:16px 0;padding:20px 18px 16px}.codegen-section{margin-bottom:18px}.codegen-label{color:#475569;font-size:13px;font-weight:600;margin-bottom:4px}.codegen-block{background:#1e293b;border-radius:6px;color:#f1f5f9;font-family:Fira Mono,Consolas,Menlo,monospace;font-size:13px;line-height:1.6;margin:0;overflow-x:auto;padding:12px 14px;white-space:pre-wrap}.codegen-value{background:none;color:#22223b;font-size:15px;margin:0;padding:0;word-break:break-word}.codegen-code{margin-bottom:18px}.codegen-exec-result{background:#0f172a;color:#fbbf24}.codegen-explanation{border-bottom:1px solid #e5e7eb;margin-bottom:20px;padding-bottom:10px}.digikey-stock-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:15px 0;padding:20px}.search-summary{border-bottom:2px solid #dee2e6;margin-bottom:25px;padding-bottom:15px}.search-title{color:#2c3e50;font-size:1.4rem;font-weight:600;margin:0 0 10px}.search-info{align-items:center;display:flex;gap:20px}.search-keyword{background:#007bff;border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;padding:4px 12px}.result-count{color:#6c757d;font-size:.9rem}.exact-products-section,.products-section{margin-bottom:25px}.section-title{border-bottom:1px solid #dee2e6;color:#495057;font-size:1.2rem;font-weight:600;margin:0 0 15px;padding-bottom:8px}.products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.product-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;position:relative;transition:box-shadow .2s ease}.product-card:hover{box-shadow:0 4px 8px #00000026}.product-card.exact-match{border-color:#28a745;box-shadow:0 2px 4px #28a74533}.exact-match-badge{background:#28a745;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px;position:absolute;right:10px;top:10px;z-index:1}.product-header{background:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;gap:15px;padding:15px}.product-image{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;flex-shrink:0;height:80px;justify-content:center;width:80px}.product-image .part-image{max-height:75px;max-width:75px;object-fit:contain}.no-image{color:#6c757d;font-size:.75rem;text-align:center}.product-title{flex:1 1}.part-number{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 5px}.manufacturer{color:#007bff;font-size:.9rem;font-weight:500;margin:0 0 8px}.description{color:#6c757d;font-size:.85rem;line-height:1.4;margin:0}.product-details{padding:15px}.detail-row{border-bottom:1px solid #f8f9fa;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:4px}.detail-row:last-child{border-bottom:none;margin-bottom:0}.detail-row .label{color:#495057;font-size:.85rem;font-weight:600;min-width:80px}.detail-row .value{color:#6c757d;flex:1 1;font-size:.85rem;text-align:right}.stock-info{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.stock-status.in-stock{color:#28a745;font-weight:600}.stock-status.out-stock{color:#dc3545;font-weight:600}.stock-status.no-stock-info{color:#6c757d;font-style:italic;font-weight:500}.quantity{color:#6c757d;font-size:.75rem}.rohs-status{color:#28a745;font-size:.8rem}.pricing-section{background:#f8f9fa;border-radius:6px;margin:15px;overflow:hidden}.pricing-title{background:#e9ecef;border-bottom:1px solid #dee2e6;color:#495057;font-size:.9rem;font-weight:600;margin:0;padding:10px 15px}.pricing-table{display:grid;grid-template-columns:1fr 1fr 1fr}.pricing-header{display:contents}.pricing-header span{background:#6c757d;color:#fff;font-size:.8rem;font-weight:600;padding:8px 12px;text-align:center}.pricing-row{display:contents}.pricing-row span{background:#fff;border-bottom:1px solid #dee2e6;font-size:.8rem;padding:6px 12px;text-align:center}.pricing-row:hover span{background:#f8f9fa}.pricing-row .quantity{color:#495057;font-weight:600}.pricing-row .unit-price{color:#007bff;font-weight:600}.pricing-row .total-price{color:#6c757d}.product-actions{background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:12px;padding:15px}.action-link{align-items:center;border-radius:6px;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 12px;text-decoration:none;transition:all .2s ease}.product-link{background:#007bff;color:#fff}.product-link:hover{background:#0056b3;color:#fff}.datasheet-link{background:#6c757d;color:#fff}.datasheet-link:hover{background:#545b62;color:#fff}.action-link .material-icons{font-size:16px}.no-products{color:#6c757d;padding:40px 20px;text-align:center}.no-products details{margin-top:20px;text-align:left}.no-products summary{color:#007bff;cursor:pointer;font-weight:500}@media (max-width:768px){.products-grid{grid-template-columns:1fr}.product-header{flex-direction:column;gap:10px}.product-image{align-self:center}.detail-row{flex-direction:column;gap:4px}.detail-row .value{text-align:left}.stock-info{align-items:flex-start}.pricing-table{font-size:.75rem}.product-actions{flex-direction:column}}.step-debug-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:.75rem}.debug-info-toggle{background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:block;font-size:.875rem;font-weight:500;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.debug-info-toggle:hover{background:#f3f4f6;color:#4b5563}.debug-info-content{background:#fff;border-radius:0 0 8px 8px;border-top:1px solid #e5e7eb;padding:1rem}.debug-meta{border-bottom:1px solid #f3f4f6;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem}.debug-stat{background:#f3f4f6;border-radius:6px;color:#4b5563;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.debug-content-section{margin-bottom:1rem}.debug-content-section h6{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .5rem}.debug-text-preview{font-size:.8rem;max-height:150px;padding:.75rem}.debug-text-full,.debug-text-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#1e293b;font-family:Fira Code,Monaco,Consolas,monospace;line-height:1.4;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.debug-text-full{font-size:.75rem;margin:.5rem 0;max-height:400px;padding:1rem}.debug-code{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:.8rem}.debug-code,.debug-json{font-family:Fira Code,Monaco,Consolas,monospace;line-height:1.4;max-height:300px;overflow-y:auto;padding:1rem;white-space:pre-wrap;word-break:break-word}.debug-json{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#1e293b;font-size:.75rem}.debug-analysis-request,.debug-analysis-response,.debug-code-extraction,.debug-llm-request,.debug-llm-response{border-left:3px solid #3b82f6;padding-left:1rem}.debug-llm-response{border-left-color:#10b981}.debug-code-extraction{border-left-color:#f59e0b}.debug-analysis-request{border-left-color:#8b5cf6}.debug-analysis-response{border-left-color:#06b6d4}@media (max-width:768px){.debug-meta{flex-direction:column;gap:.5rem}.debug-code,.debug-json,.debug-text-full,.debug-text-preview{font-size:.7rem;max-height:200px}.debug-info-content{padding:.75rem}}.file-upload-button,.file-upload-container{align-items:center;display:flex;position:relative}.file-upload-button{background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;justify-content:center;padding:.75rem;transition:all .1s ease}.file-upload-button:hover:not(:disabled){background:#0000;color:#374151}.file-upload-button:disabled{background:#0000;color:#9ca3af;cursor:not-allowed}.file-upload-button.has-file{color:#3b82f6}.file-upload-button.has-file:hover:not(:disabled){color:#2563eb}.file-upload-button .material-icons{font-size:20px}.chat-file-button{background:#0000;border:none;border-left:1px solid #e5e7eb;border-radius:0;color:#6b7280;padding:.75rem 1rem}.chat-file-button:hover:not(:disabled){background:#0000000d;color:#374151}.chat-file-button.has-file{color:#3b82f6}.chat-file-button.has-file:hover:not(:disabled){background:#3b82f61a;color:#2563eb}.file-attachment-tooltip{bottom:100%;left:50%;margin-bottom:8px;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:1000}.file-attachment-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#1f2937;font-size:.875rem;justify-content:space-between;min-width:200px;padding:.75rem 1rem;white-space:nowrap}.file-attachment-content,.file-info{align-items:center;display:flex;gap:.75rem}.file-info{flex:1 1}.file-attachment-content .file-icon{flex-shrink:0;font-size:1.25rem}.file-attachment-content .file-details{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.file-attachment-content .file-name{color:#1f2937;font-size:.875rem;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-attachment-content .file-size{color:#6b7280;font-size:.75rem}.remove-file-btn{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.25rem;transition:all .2s ease}.remove-file-btn:hover{background:#fee2e2;color:#dc2626}.remove-file-btn .material-icons{font-size:16px}.tooltip-arrow{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid #fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.file-attachment-display{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;display:inline-block;font-weight:500;margin-bottom:.5rem;max-width:300px;overflow:hidden;padding:.5rem .75rem;text-overflow:ellipsis;white-space:nowrap}.market-availability-display{margin:20px 0}.part-availability-section{background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.market-status{border-radius:4px;display:inline-block;font-size:.85rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.market-status.in-stock{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.market-status.out-stock{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.seller-count{background:#e9ecef;color:#495057}.lead-time,.seller-count{border-radius:4px;font-size:.85rem;margin-left:15px;padding:4px 8px}.lead-time{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.seller-card{border-left:4px solid #007bff}.seller-info{display:flex;flex-direction:column;gap:5px}.seller-name{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.seller-type{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:500;padding:2px 8px;text-transform:uppercase}.seller-type.authorized{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.seller-type.independent{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.packaging-option{border-top:1px solid #e9ecef;margin-top:15px;padding-top:15px}.packaging-option:first-child{border-top:none;margin-top:0;padding-top:0}.buy-now-link{background:#28a745!important;color:#fff!important;font-weight:600;padding:8px 16px}.buy-now-link:hover{background:#218838!important;text-decoration:none}.main-file-preview{margin:1rem auto;max-width:1200px;padding:0 .5rem;width:95%}.suggestions-section{max-height:1000px;opacity:1;overflow:hidden;transition:opacity .3s ease-out,max-height .3s ease-out,margin .3s ease-out}.suggestions-section.hidden{margin:0;max-height:0;opacity:0;pointer-events:none}.chat-file-preview{margin:.5rem 0;max-width:100%;padding:0 .5rem}@media (max-width:768px){.main-file-preview{margin:.75rem auto;max-width:100%;padding:0 .375rem;width:98%}.chat-file-preview{margin:.375rem 0;padding:0 .375rem}}@media (max-width:480px){.main-file-preview{margin:.5rem auto;padding:0 .25rem}.chat-file-preview{margin:.25rem 0;padding:0 .25rem}}.user-file-table{margin:1rem 0 .5rem;max-width:none;padding:0;width:100%}@media (max-width:768px){.user-file-table{margin:.75rem 0 .375rem}}@media (max-width:480px){.user-file-table{margin:.5rem 0 .25rem}}.conversation-sidebar{background:#f8f9fa;border-right:1px solid #e1e5e9;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:100vh;left:0;position:fixed;top:0;transition:transform .3s ease;width:280px;z-index:1000}.conversation-sidebar.visible{transform:translateX(0)}.conversation-sidebar.hidden{transform:translateX(-100%)}.sidebar-header{background:#fff;border-bottom:1px solid #e1e5e9;justify-content:space-between;padding:1rem}.new-chat-link,.sidebar-header{align-items:center;display:flex}.new-chat-link{background:none;border:none;color:#1a1a1a;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 0;text-decoration:none}.new-chat-link:hover{color:#666}.new-chat-link .material-icons{font-size:16px}.sidebar-toggle-in-header{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:.5rem}.sidebar-toggle-in-header:hover{background:#f3f4f6;color:#374151}.sidebar-toggle-in-header .material-icons{font-size:18px}.conversations-list{background:#f8f9fa;flex:1 1;overflow-y:auto;padding:.5rem}.conversations-list::-webkit-scrollbar{width:4px}.conversations-list::-webkit-scrollbar-track{background:#0000}.conversations-list::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:2px}.conversations-list::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.conversation-item{align-items:center;background:#fff;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.25rem;min-height:44px;padding:.5rem 1rem;position:relative}.conversation-item:hover{background:#f3f4f6;border-color:#e5e7eb}.conversation-item.active{background:#f0f0f0;border-color:#d1d5db;color:#1a1a1a}.conversation-item.active:hover{background:#e8e8e8}.conversation-content{flex:1 1;min-width:0;padding-right:2.5rem}.conversation-title{color:#1f2937;font-size:.9rem;font-weight:500;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item.active .conversation-title{color:#1a1a1a}.delete-button{align-items:center;background:#0000;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;opacity:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:32px;z-index:10}.conversation-item:hover .delete-button{opacity:1}.delete-button:hover{background:#f3f4f6;color:#374151}.delete-button .material-icons{font-size:16px}.loading-state{align-items:center;color:#6b7280;display:flex;flex-direction:column;font-size:.9rem;justify-content:center;padding:2rem 1rem;text-align:center}.loading-spinner{border:2px solid #e5e7eb;border-top-color:#1a1a1a;height:24px;width:24px}.empty-state{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:3rem 1rem;text-align:center}.empty-state .material-icons{color:#d1d5db;font-size:48px;margin-bottom:1rem}.empty-state p{font-size:.9rem;margin:.5rem 0}.empty-state .empty-subtitle{color:#9ca3af;font-size:.8rem}@media (max-width:768px){.conversation-sidebar{max-width:320px;width:100%}.conversation-item{padding:1rem}.conversation-title{font-size:1rem}.conversation-timestamp{font-size:.8rem}.new-chat-link{font-size:1rem;padding:.75rem 0}.delete-button{height:36px;width:36px}.delete-button .material-icons{font-size:18px}}.admin-section{border-top:1px solid #e1e5e9;margin-top:auto;padding:16px}.admin-link{align-items:center;background:none;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px;text-align:left;text-decoration:none;transition:all .2s ease;width:100%}.admin-link:hover{background:#f8f9fa;color:#007bff}.admin-link .material-icons{font-size:18px}.tanstack-table-container{background:#fff;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;overflow:hidden}.right-panel .tanstack-table-container{border:none;border-radius:0;box-shadow:none;margin:0}.loading-dots{align-items:center;display:inline-flex;gap:3px;padding:2px 0}.loading-dots .dot{animation:pulse 1.4s ease-in-out infinite;background-color:#94a3b8;border-radius:50%;height:4px;width:4px}.loading-dots .dot-1{animation-delay:0s}.loading-dots .dot-2{animation-delay:.2s}.loading-dots .dot-3{animation-delay:.4s}@keyframes pulse{0%,60%,to{opacity:.5;transform:scale(1)}30%{opacity:1;transform:scale(1.5)}}.table-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 20px}.right-panel .table-header{background:#f8f9fa;border-bottom:1px solid #e2e8f0;padding:8px 12px}.table-title{color:#1e293b;font-size:18px;font-weight:600;margin:0}.table-stats{color:#64748b;font-size:14px;font-weight:400}.table-controls{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:12px 16px}.right-panel .table-controls{background:#f8f9fa;justify-content:space-between;padding:8px 12px}.search-box{position:relative}.global-filter{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:14px;max-width:300px;padding:8px 12px;transition:all .2s ease;width:100%}.global-filter:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.global-filter::placeholder{color:#9ca3af}.table-wrapper{flex:1 1;overflow:auto;position:relative}.right-panel .table-wrapper{height:100%;max-height:none}.tanstack-table{border-collapse:collapse;font-size:13px;min-width:-webkit-max-content;min-width:max-content;width:100%}.table-header-cell{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0;border-right:1px solid #f1f5f9;color:#374151;font-size:.7rem;font-weight:600;letter-spacing:.025em;line-height:1.2;padding:.375rem .5rem;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap;z-index:10}.table-header-cell:last-child{border-right:none}.table-header-cell.sortable{cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.table-header-cell.sortable:hover{background:#f8fafc}.header-content{align-items:center;display:flex;justify-content:space-between;position:relative}.sort-indicator{color:#6b7280;font-size:12px;margin-left:4px}.table-row{transition:background-color .15s ease}.table-row:nth-child(2n){background-color:#fafafa}.table-row:hover{background-color:#f0f9ff}.table-cell{border-bottom:1px solid #f1f5f9;border-right:1px solid #f8fafc;color:#374151;font-size:13px;line-height:1.3;max-width:300px;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap;word-break:break-word}.table-cell:last-child{border-right:none}.property-name{color:#1e293b;font-family:Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:500;word-break:break-word}.boolean-value{border-radius:12px;display:inline-block;font-size:11px;font-weight:500;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.boolean-value.true{background:#dcfce7;color:#166534}.boolean-value.false{background:#fee2e2;color:#991b1b}.numeric-value{background:#f3f4f6;border-radius:4px;color:#1f2937;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;padding:2px 6px}.cell-value{color:#1f2937}.cell-value.loading-state{color:#6b7280;font-style:italic;opacity:.8}.loading-spinner{animation:spin 2s linear infinite;display:inline-block}.empty-array{color:#9ca3af}.array-value{color:#1f2937}.url-link{color:#3b82f6;font-family:monospace;font-size:12px}.image-container{align-items:center;display:flex;justify-content:center;padding:4px}.image-array-container{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.part-image{border:1px solid #e2e8f0;border-radius:4px;box-shadow:0 1px 3px #0000001a}.document-link{align-items:center;display:inline-flex;font-size:13px;font-weight:400;gap:4px}.document-link,.document-link:hover{text-decoration:none}.document-icon{color:#6b7280;font-family:Material Icons;font-size:16px}.document-text{color:#000}.document-text:hover{text-decoration:underline}.source-link{align-items:center;color:#000;display:inline-flex;font-size:13px;font-weight:400;gap:4px;text-decoration:none}.source-link:hover{text-decoration:underline}.source-icon{font-family:Material Icons;font-size:16px}.source-text{color:#000}.array-details,.long-text-details,.object-details{margin:0}.array-summary,.long-text-summary,.object-summary{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:12px;font-weight:500;outline:none;padding:4px 0}.array-summary:hover,.long-text-summary:hover,.object-summary:hover{color:#1d4ed8}.array-content,.long-text-content,.object-content{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;font-size:12px;margin-top:8px;padding:8px}.sub-item{border-bottom:1px solid #f1f5f9;margin-bottom:4px;padding:2px 0}.sub-item:last-child{border-bottom:none}.sub-item strong{color:#1e293b;font-weight:500;margin-right:8px}.array-item{background:#fff;border-radius:3px;font-family:monospace;font-size:11px;margin-bottom:4px;padding:4px}.object-content{background:#1f2937;border-radius:4px;color:#10b981;font-family:Monaco,Consolas,Liberation Mono,monospace;font-size:11px;margin-top:8px;max-height:200px;overflow:auto;padding:8px}.table-pagination{align-items:center;background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px 16px}.right-panel .table-pagination{padding:8px 12px}.pagination-controls{align-items:center;display:flex;gap:4px}.page-info{color:#374151;font-size:14px;font-weight:400;margin:0 8px}.pagination-button{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:14px;min-width:32px;padding:6px 10px;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.pagination-button:disabled{background:#f9fafb;color:#d1d5db;cursor:not-allowed}.page-size-selector{align-items:center;color:#64748b;display:flex;font-size:13px;gap:8px}.page-size-select{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;font-size:12px;padding:4px 8px}.no-data{color:#9ca3af;font-style:italic;padding:40px 20px;text-align:center}@media (max-width:768px){.table-header{align-items:flex-start;flex-direction:column;gap:8px}.table-controls{padding:12px 16px}.global-filter{max-width:none}.table-cell{max-width:200px;padding:8px 12px}.table-pagination{align-items:center;flex-direction:column;gap:12px}.pagination-controls{justify-content:center;order:2}.page-size-selector{justify-content:center;order:1}}@media (max-width:480px){.tanstack-table-container{border-left:none;border-radius:0;border-right:none;margin:12px -16px}.table-controls,.table-header,.table-pagination{padding-left:16px;padding-right:16px}.table-cell{font-size:12px;max-width:120px;padding:6px 8px}.table-title{font-size:14px}}.export-container{display:inline-block;position:relative}.export-button{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;display:flex;font-size:13px;gap:4px;padding:6px 12px;transition:all .2s ease}.export-button:hover{background:#f3f4f6;border-color:#9ca3af}.export-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 10px 15px -3px #0000001a;margin-top:4px;min-width:120px;position:absolute;right:0;top:100%;z-index:50}.export-option{background:none;border:none;color:#374151;cursor:pointer;font-size:13px;padding:8px 16px;text-align:left;transition:background .2s ease;width:100%}.export-option:hover{background:#f3f4f6}.export-option:first-child{border-radius:5px 5px 0 0}.export-option:last-child{border-radius:0 0 5px 5px}.column-menu-container{align-items:center;display:inline-flex;margin-left:4px;position:relative}.column-menu-button{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:2px;transition:color .2s ease}.column-menu-button:hover{color:#374151}.column-menu-icon{display:flex;flex-direction:column;gap:2px}.column-menu-icon span{background:currentColor;border-radius:50%;height:3px;width:3px}.column-menu-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 10px 15px -3px #0000001a;margin-top:4px;min-width:150px;position:absolute;right:0;top:100%;z-index:50}.column-menu-option{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 16px;text-align:left;transition:background .2s ease;width:100%}.column-menu-option:hover{background:#f3f4f6}.column-menu-option.danger{color:#374151}.column-menu-option.danger:hover{background:#f3f4f6}.column-menu-divider{background:#e5e7eb;height:1px;margin:4px 0}.table-wrapper{contain:layout style paint}.tanstack-table{table-layout:auto}.column-resizer{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;-webkit-user-select:none;user-select:none;width:5px}.column-resizer:hover{background:#3b82f64d}.column-resizer.isResizing{background:#3b82f6;opacity:1}.table-header-cell.resizing *{-webkit-user-select:none;user-select:none}.page-size-select:focus,.pagination-button:focus,.table-header-cell:focus{outline:2px solid #3b82f6;outline-offset:2px}.tanstack-table-container *{box-sizing:border-box}.array-value{background:#e0f2fe;border-radius:12px;color:#0277bd;font-size:12px;font-weight:500;padding:2px 6px}.empty-array{color:#6b7280;font-size:12px;font-style:italic}.cards-container{display:flex;flex-direction:column;gap:16px;margin-top:16px}.data-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;overflow:hidden}.card-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 16px}.card-title{color:#374151;font-size:16px;font-weight:600;margin:0}.card-content{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:16px}.card-field{display:flex;flex-direction:column;gap:4px}.field-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.field-value{word-wrap:break-word;color:#374151;font-size:14px;line-height:1.4}@media (max-width:768px){.card-content{grid-template-columns:1fr}}.enrichment-table{table-layout:fixed}.enrichment-header{max-width:125px!important;min-width:125px!important;width:125px!important}.enrichment-header .header-text-wrapper{display:inline-block;max-width:100px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.enrichment-table tbody td{font-size:11px!important;height:22px!important;line-height:1.1!important;max-width:125px!important;min-width:125px!important;padding:2px 6px!important;vertical-align:middle!important;width:125px!important}.enrichment-table tbody tr:nth-child(2n){background-color:#e3f2fd!important}.enrichment-table tbody tr:nth-child(odd){background-color:#fff!important}.enrichment-table tbody tr:hover{background-color:#bbdefb!important}.enrichment-cell .cell-value{display:inline-block;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enrichment-cell .numeric-value{font-size:12px;padding:1px 4px}.enrichment-cell .boolean-value{font-size:10px;padding:1px 6px}.file-preview-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #00000014;margin:.5rem 0;max-width:none;overflow:hidden;transition:all .2s ease;width:100%}.file-preview-container:hover{box-shadow:0 4px 16px #0000001f}.preview-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.5rem .75rem}.file-preview-title{align-items:center;color:#1e293b;display:flex;font-size:.85rem;font-weight:600;gap:.5rem}.filename{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-name{color:#64748b;font-size:.85rem;font-weight:400}.preview-info{color:#64748b;font-size:.75rem;font-weight:500}.preview-table-wrapper{overflow-x:auto;overflow-y:hidden;position:relative}.file-preview-table{background:#fff;border-collapse:collapse;font-size:.8rem;line-height:1.3;min-width:600px;width:100%}.preview-header-cell{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0;border-right:1px solid #f1f5f9;color:#374151;font-size:.7rem;font-weight:600;letter-spacing:.025em;line-height:1.2;padding:.375rem .5rem;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap;z-index:10}.preview-header-cell:last-child{border-right:none}.preview-row{transition:background-color .15s ease}.preview-row:nth-child(2n){background-color:#fafafa}.preview-row:hover{background-color:#f0f9ff}.preview-cell{border-bottom:1px solid #f1f5f9;border-right:1px solid #f8fafc;line-height:1.3;min-width:120px;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.preview-cell:last-child{border-right:none}.cell-value{color:#374151}.empty-value,.null-value{color:#9ca3af;font-style:italic}.array-value{color:#059669;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem}.object-value{color:#dc2626;font-style:italic}.url-link{color:#2563eb;font-weight:500;text-decoration:none;transition:color .2s ease}.url-link:hover{color:#1d4ed8;text-decoration:underline}.long-text{color:#374151;cursor:help}.boolean-value.true{color:#059669;font-weight:500}.boolean-value.false{color:#dc2626;font-weight:500}.numeric-value{font-feature-settings:"tnum";color:#7c3aed;font-variant-numeric:tabular-nums;font-weight:500}.more-data-indicator{border-top:1px solid #e2e8f0;padding:.5rem .75rem .375rem;text-align:center}.more-data-indicator,.more-data-text{background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:relative}.more-data-text{color:#64748b;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin-top:.25rem;padding:0 .75rem;text-transform:uppercase;z-index:2}@media (max-width:768px){.file-preview-container{border-radius:8px;margin:.75rem 0}.preview-header{align-items:flex-start;flex-direction:column;gap:.25rem;padding:.375rem .5rem}.file-preview-title{font-size:.8rem}.filename{max-width:200px}.preview-info{font-size:.7rem}.preview-header-cell{font-size:.65rem;padding:.25rem .375rem}.preview-cell{min-width:100px;padding:.2rem .375rem}.file-preview-table{font-size:.75rem}}@media (max-width:480px){.preview-cell,.preview-header-cell{min-width:80px;padding:.15rem .3rem}.file-preview-title{gap:.25rem}.filename{max-width:150px}}.file-preview-container{animation:slideIn .3s ease-out}.split-screen-container{position:relative;width:100%}.left-panel,.split-screen-container{background:#fff;display:flex;height:100%;overflow:hidden}.left-panel{flex-direction:column;transition:width .3s ease}.right-panel{animation:slideIn .3s ease;background:#fff;border-left:1px solid #dee2e6;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.resize-handle{background:#e9ecef;cursor:col-resize;flex-shrink:0;height:100%;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none;width:6px;z-index:50}.resize-handle:hover{background:#007bff;width:8px}.resize-handle:active{background:#0056b3;width:8px}.resize-handle-bar{display:none}.panel-toggle-button{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px 0 0 4px;border-right:none;box-shadow:-2px 0 4px #0000000d;color:#666;cursor:pointer;display:flex;height:48px;justify-content:center;left:-24px;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;width:24px;z-index:100}.panel-toggle-button:hover{background:#f8f9fa;color:#333;width:28px}.panel-toggle-button .material-icons{font-size:18px}.panel-toggle-button-collapsed{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px 0 0 4px;border-right:none;box-shadow:-2px 0 4px #0000001a;color:#666;cursor:pointer;display:flex;height:48px;justify-content:center;position:fixed;right:0;top:50%;transform:translateY(-50%);transition:all .2s;width:24px;z-index:100}.panel-toggle-button-collapsed:hover{background:#f8f9fa;color:#333;width:32px}.panel-toggle-button-collapsed .material-icons{font-size:18px}.table-container{background:#fff;bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0}.right-panel .tanstack-table-container{background:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important;display:flex;flex-direction:column;height:100%;margin:0!important;overflow:visible!important;overflow:initial!important;padding:0!important;position:relative;width:100%}.right-panel .table-controls{align-items:center;background:#fff!important;border-bottom:1px solid #dee2e6!important;display:flex;height:48px;left:0;padding:8px 12px!important;position:absolute;right:0;top:0;z-index:30}.right-panel .table-header,.right-panel .tanstack-table-container .table-controls,.right-panel .tanstack-table-container .table-pagination{display:none!important}.right-panel .tanstack-table-container .table-wrapper{all:unset!important;display:contents!important}.right-panel>.table-container>.table-wrapper{background:#fff!important;bottom:68px;left:0;margin:0!important;overflow-x:scroll!important;overflow-y:auto!important;padding:0!important;position:absolute;right:0;scrollbar-width:none;top:48px}.right-panel>.table-container>.table-wrapper::-webkit-scrollbar:horizontal{display:none;height:0}.right-panel>.table-container>.table-wrapper::-webkit-scrollbar:vertical{width:12px}.right-panel .table-wrapper::-webkit-scrollbar-track{background:#f1f1f1}.right-panel .table-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:6px}.right-panel .table-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.right-panel .horizontal-scroll-container::-webkit-scrollbar{background:#f8f9fa;height:15px}.right-panel .horizontal-scroll-container::-webkit-scrollbar-track{background:#f8f9fa;border-radius:4px}.right-panel .horizontal-scroll-container::-webkit-scrollbar-thumb{background:#6c757d;border:2px solid #f8f9fa;border-radius:4px}.right-panel .horizontal-scroll-container::-webkit-scrollbar-thumb:hover{background:#495057}.right-panel .horizontal-scroll-container{background:#f8f9fa;border-bottom:1px solid #dee2e6;border-top:1px solid #dee2e6;bottom:48px;height:20px;left:0;overflow-x:auto;overflow-y:hidden;position:absolute;right:0;z-index:25}.right-panel .horizontal-scroll-spacer{background:#0000;height:1px}.right-panel .table-pagination{align-items:center;background:#f8f9fa!important;border-top:1px solid #dee2e6!important;bottom:0;display:flex;height:48px;justify-content:space-between;left:0;margin:0!important;padding:8px 12px!important;position:absolute;right:0;z-index:30}.right-panel .tanstack-table{background:#fff!important;border-collapse:collapse;border-radius:0!important;min-width:100%!important;width:-webkit-max-content!important;width:max-content!important}.right-panel .table-header-cell{background:#f8f9fa!important;border-bottom:2px solid #dee2e6!important;border-right:1px solid #e9ecef!important;color:#495057!important;min-width:150px!important;padding:12px 16px!important;position:-webkit-sticky;position:sticky;top:0;white-space:nowrap!important;z-index:20}.right-panel .column-resizer{background:#0000;cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;-webkit-user-select:none;user-select:none;width:5px;z-index:21}.right-panel .column-resizer:hover{background:#007bff66}.right-panel .column-resizer.isResizing{background:#007bff;opacity:1}.right-panel .table-header-cell:last-child{border-right:none!important}.right-panel .table-cell{background:#fff!important;border-bottom:1px solid #e9ecef!important;border-right:1px solid #f8f9fa!important;color:#212529!important;min-width:150px!important;padding:8px 12px!important;position:relative;white-space:nowrap!important}.right-panel .table-cell .cell-value{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.right-panel .table-cell:last-child{border-right:none!important}.right-panel .table-row{background:#fff!important;height:24px!important;max-height:24px!important}.right-panel .table-row:hover{background:#f8f9fa!important}.right-panel .table-row:nth-child(2n){background:#fafbfc!important}.right-panel .global-filter{max-width:300px;width:100%}.right-panel .page-size-selector,.right-panel .pagination-controls{align-items:center;display:flex;gap:8px}.right-panel .array-value,.right-panel .boolean-value,.right-panel .cell-value,.right-panel .document-text,.right-panel .empty-array,.right-panel .null-value,.right-panel .numeric-value,.right-panel .source-text,.right-panel .url-link{color:#212529!important}.right-panel .empty-array,.right-panel .null-value{color:#6c757d!important;font-style:italic}.right-panel .url-link{color:#06c!important}@media (max-width:768px){.right-panel{height:100%;position:fixed;right:0;top:0;width:100%!important;z-index:9999}.resize-handle{display:none}.left-panel{width:100%!important}.panel-toggle-button{border-radius:4px 0 0 4px;right:0}}.admin-panel{background:#f5f5f5;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:1000}.admin-header{align-items:center;background:#fff;border-bottom:1px solid #ddd;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.admin-header h2{color:#333;font-size:1.5rem;font-weight:600;margin:0}.back-button{align-items:center;background:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.back-button:hover{background-color:#0052a3;color:#fff;text-decoration:none}.back-button .material-icons{font-size:1rem}.admin-tabs{background:#fff;border-bottom:1px solid #ddd;display:flex;gap:0;padding:0 2rem}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:1rem 1.5rem;transition:all .2s}.tab-button:hover{background-color:#f8f8f8;color:#333}.tab-button.active{background-color:#f8f8ff;border-bottom-color:#06c;color:#06c}.tab-button .material-icons{font-size:1.1rem}.admin-content{flex:1 1;overflow-y:auto;padding:2rem}.admin-tab-content h3{color:#333;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.admin-tab-content>p{color:#666;font-size:.95rem;margin:0 0 2rem}.settings-form{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.form-group{margin-bottom:2rem}.form-group label{color:#333;display:block;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.9rem;line-height:1.4;min-height:120px;padding:.75rem;resize:vertical;width:100%}.form-group textarea:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.form-help{color:#666;font-size:.85rem;font-style:italic;margin-top:.5rem}.form-actions{display:flex;gap:1rem;margin-top:2rem}.save-button{background:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.save-button:hover:not(:disabled){background:#0052a3}.save-button:disabled{background:#ccc;cursor:not-allowed}.description-edit-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:.9rem;line-height:1.4;min-height:60px;padding:8px;resize:vertical;width:100%}.description-edit-input:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.tool-description{margin-bottom:12px}.tool-description p{color:#555;line-height:1.5;margin:0}.edit-button:hover:not(:disabled){background:#ffc107;color:#fff}.save-button:hover:not(:disabled){background:#28a745;color:#fff}.cancel-button:hover:not(:disabled){background:#dc3545;color:#fff}.mcp-filters{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex-wrap:wrap;gap:2rem;margin-bottom:2rem;padding:1.5rem}.filter-group,.mcp-filters{align-items:center;display:flex}.filter-group{gap:.5rem}.filter-group label{color:#333;font-size:.9rem;font-weight:500}.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:.9rem;padding:.5rem}.filter-group input[type=checkbox]{margin-right:.5rem}.register-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1rem;transition:background-color .2s}.register-button:hover:not(:disabled){background:#218838}.register-button:disabled{background:#ccc;cursor:not-allowed}.categories-summary{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:1.5rem}.categories-summary h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.categories-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.category-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1rem}.category-card h5{color:#333;font-size:.95rem;font-weight:600;margin:0 0 .5rem}.category-stats{display:flex;font-size:.85rem;gap:.5rem}.enabled-count{color:#28a745;font-weight:500}.total-count{color:#666}.tools-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.tools-section h4{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.tools-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.tool-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1rem;transition:all .2s}.tool-card.enabled{border-left:4px solid #28a745}.tool-card.disabled{border-left:4px solid #dc3545;opacity:.7}.tool-card:hover{box-shadow:0 2px 8px #0000001a}.tool-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.tool-header h5{color:#333;flex:1 1;font-size:1rem;font-weight:600;margin:0}.tool-actions{display:flex;gap:.5rem}.tool-actions button{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;padding:.25rem;transition:background-color .2s}.tool-actions button:hover:not(:disabled){background-color:#e9ecef;color:#333}.tool-actions button:disabled{cursor:not-allowed;opacity:.5}.tool-actions .material-icons{font-size:1.1rem}.tool-info{color:#666}.tool-description{font-size:.9rem;line-height:1.4;margin:0 0 .75rem}.tool-meta{display:flex;flex-wrap:wrap;font-size:.8rem;gap:.75rem}.tool-category{background:#e9ecef;color:#495057}.tool-category,.tool-method{border-radius:12px;padding:.25rem .5rem}.tool-method{background:#d1ecf1;color:#0c5460}.tool-usage{color:#28a745;font-weight:500}.empty-state,.error-state,.loading-state{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#06c;height:32px;margin-bottom:1rem;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state .material-icons,.error-state .material-icons{color:#ccc;font-size:3rem;margin-bottom:1rem}.empty-state button,.error-state button{background:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.empty-subtitle{color:#999;font-size:.9rem;margin-top:.5rem}.tool-details-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.modal-header{border-bottom:1px solid #ddd;padding:1.5rem}.modal-header h3{font-size:1.2rem}.modal-header button{border-radius:50%;color:#666;padding:.5rem}.modal-header button:hover{background-color:#f0f0f0}.modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.detail-group p{font-size:.9rem;line-height:1.4}.detail-group .url{background:#f8f9fa;border-radius:4px;font-family:monospace;padding:.25rem .5rem;word-break:break-all}.status-enabled{color:#28a745;font-weight:500}.status-disabled{color:#dc3545;font-weight:500}.schema-display{border-radius:4px;color:#495057}.usage-stats{display:flex;flex-wrap:wrap}.stat-item{background:#f8f9fa;border-radius:4px;min-width:120px;padding:.75rem}.stat-label,.stat-value{display:block}.stat-value{font-size:1.1rem}.test-result{border-radius:4px;margin-top:.5rem;padding:1rem}.test-result.success{background:#d4edda;border:1px solid #c3e6cb}.test-result.error{background:#f8d7da;border:1px solid #f5c6cb}.success-message{color:#155724}.error-message,.success-message{font-weight:500;margin:0 0 .5rem}.error-message{color:#721c24}.test-result details{margin-top:.75rem}.test-result summary{color:#495057;cursor:pointer;font-weight:500}.test-result pre{background:#fff;border:1px solid #dee2e6;border-radius:4px;font-size:.8rem;margin-top:.5rem;overflow-x:auto;padding:.75rem}.modal-actions{border-top:1px solid #ddd;display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem}.test-button-large,.toggle-button-large{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.test-button-large{background:#06c;color:#fff}.test-button-large:hover:not(:disabled){background:#0052a3}.test-button-large:disabled{background:#ccc;cursor:not-allowed}.toggle-button-large{background:#6c757d;color:#fff}.toggle-button-large:hover{background:#5a6268}.flow-diagram-container{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #e0e0e0;border-radius:12px;margin:20px 0;overflow:visible;padding:20px}.flow-diagram-container h4{color:#333;font-size:1.5rem;margin-bottom:15px}.flow-diagram-container p{color:#666;font-size:1rem;margin-bottom:20px}.wide-prompt-editor{overflow:hidden;position:relative}.wide-prompt-editor,.wide-textarea{box-sizing:border-box;max-width:100%;width:100%}.wide-textarea{word-wrap:break-word;background-color:#fafafa;border:1px solid #ddd;border-radius:4px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.9rem;-webkit-hyphens:auto;hyphens:auto;line-height:1.4;min-height:120px;overflow-wrap:break-word;padding:.75rem;resize:vertical;word-break:break-all}.wide-textarea:focus{background:#fff;border-color:#5c6bc0;box-shadow:0 0 0 2px #5c6bc01a;outline:none}.wide-textarea:hover{background:#fff;border-color:#90a4ae}.expand-button{background:#5c6bc01a;border:1px solid #5c6bc033;border-radius:6px;color:#5c6bc0;font-size:.8rem;gap:2px;padding:4px 6px}.expand-button:hover{background:#5c6bc033;border-color:#5c6bc04d}.expand-button .material-icons{font-size:14px}.fullscreen-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.fullscreen-editor{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;height:80%;max-width:1200px;overflow:hidden;width:90%}.fullscreen-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;padding:20px}.fullscreen-header h3{color:#333;font-size:1.2rem;margin:0}.fullscreen-close{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1.5rem;padding:4px;transition:all .2s ease}.fullscreen-close:hover{background:#0000001a;color:#333}.fullscreen-textarea{background:#fff;border:none;flex:1 1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;line-height:1.3;outline:none;padding:20px;resize:none}.flow-diagram{align-items:center;display:flex;flex-direction:column;gap:0;min-height:600px;position:relative}.flow-step{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin:0 auto;max-width:800px;padding:16px;position:relative;transition:all .3s ease;width:100%;z-index:10}.flow-step:before{color:#64b5f6;content:"▼";font-size:12px;top:-10px}.flow-step:after,.flow-step:before{left:50%;position:absolute;transform:translateX(-50%);z-index:20}.flow-step:after{background:#64b5f6;border:1px solid #fff;border-radius:50%;bottom:-4px;content:"";height:8px;width:8px}.flow-step:hover{border-color:#90caf9;box-shadow:0 4px 16px #0000001a;transform:translateY(-1px)}.flow-step.entry-point{background:#fafafa;border-color:#b0bec5}.flow-step.entry-point:before{display:none}.flow-step.service{background:#f5f5f5;border-color:#90a4ae}.flow-step.router{background:#5c6bc005;border-color:#5c6bc0}.flow-step.simple-llm{background:#7986cb05;border-color:#7986cb}.flow-step.agent-workflow{background:#64b5f605;border-color:#64b5f6}.flow-step.codegen-analysis{background:#ff980005;border-color:#ff9800}.flow-step.mcp-analysis{background:#42a5f505;border-color:#42a5f5}.flow-step.mcp-tools-section{background:#9c27b005;border-color:#9c27b0;margin:20px -40px;max-width:none!important;min-height:auto;position:relative;width:calc(100% + 80px)!important}.flow-step.final{background:#fafafa;border-color:#78909c}.flow-step.final:after{display:none}.step-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px;position:relative;z-index:15}.step-header h5{color:#333;font-size:1.2rem;margin:0}.step-header .material-icons{color:#666;font-size:1.5rem}.step-details{margin-bottom:15px;position:relative;z-index:15}.step-details small{color:#666;display:block;font-size:.85rem;margin-bottom:5px}.agent-list{display:flex;flex-direction:column;gap:.3rem;margin-top:.5rem}.agent-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#495057;display:flex;font-size:.75rem;gap:.3rem;padding:.3rem .6rem;transition:background-color .2s}.agent-item:hover{background:#e9ecef}.agent-item.agent-planned{background:#f8f9fa;border-color:#dee2e6;color:#6c757d;font-style:italic}.agent-item.agent-planned:hover{background:#f8f9fa;cursor:default}.agent-specific-branches{margin:30px 0;width:100%}.agent-branch-label{background:#5c6bc01a;border:1px solid #5c6bc033;border-radius:12px;color:#5c6bc0;font-size:.9rem;font-weight:500;margin-bottom:20px;padding:8px 16px;text-align:center}.agent-specific-parallel{align-items:flex-start;display:flex;gap:30px;justify-content:center}.agent-specific-path{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;max-width:450px;overflow:hidden}@media (max-width:1024px){.agent-specific-parallel{align-items:center;flex-direction:column;gap:20px}.agent-specific-path{max-width:100%;width:100%}}.flow-connector{align-items:center;display:flex;height:24px;justify-content:center;margin:0 auto;max-width:800px;position:relative;width:100%}.flow-connector:before{background:#90caf9;border-radius:1px;content:"";height:100%;width:2px}.flow-branches{align-items:center;display:flex;height:80px;justify-content:center;margin:0 auto;max-width:800px;position:relative;width:100%}.flow-branches:before{height:30px;left:50%;top:0;transform:translateX(-50%);width:2px}.flow-branches:after,.flow-branches:before{background:#90caf9;border-radius:1px;content:"";position:absolute}.flow-branches:after{height:2px;left:25%;right:25%;top:30px}.branch-container{align-items:center;display:flex;flex-direction:column;gap:8px;position:absolute;top:33px}.branch-container.left{left:25%;transform:translateX(-50%)}.branch-container.right{right:25%;transform:translateX(50%)}.branch-container:before{background:#90caf9;border-radius:1px;content:"";height:20px;left:50%;position:absolute;top:-2px;transform:translateX(-50%);width:2px}.branch-label{background:#5c6bc01a;border:1px solid #5c6bc033;border-radius:12px;color:#5c6bc0;font-size:.8rem;font-weight:500;padding:4px 12px;position:relative;text-align:center;white-space:nowrap;z-index:15}.flow-parallel{align-items:flex-start;gap:40px;justify-content:center;margin:0;max-width:1200px;width:100%}.flow-parallel,.flow-path{display:flex;position:relative}.flow-path{align-items:center;flex:1 1;flex-direction:column;gap:0}.flow-path.left-path:before,.flow-path.right-path:before{display:none}.flow-convergence{align-items:center;display:flex;height:40px;justify-content:center;margin:0 auto;max-width:800px;position:relative;width:100%}.flow-convergence:before{background:#90caf9;border-radius:1px;content:"";height:100%;width:2px}.global-save-section{background:#f8f9fa;border:1px solid #ddd;border-radius:12px;margin-top:30px;padding:20px;text-align:center}.global-save-button{background:#333;font-size:1.1rem;font-weight:400;padding:15px 30px}.global-save-button:hover:not(:disabled){background:#222}.toggle-tools-button{background:#9c27b01a;border:1px solid #9c27b04d;border-radius:50%;height:32px;margin-left:auto;width:32px}.toggle-tools-button:hover{background:#9c27b033;border-color:#9c27b080}.toggle-tools-button .material-icons{color:#9c27b0;font-size:1.2rem}.mcp-tools-flow-container{background:#9c27b008;border:1px solid #9c27b01a;border-radius:8px;box-sizing:border-box;margin-top:15px;padding:20px;width:100%}.tools-loading{align-items:center;color:#666;display:flex;gap:10px;justify-content:center;padding:20px}.tools-loading .loading-spinner{height:16px;width:16px}.tools-empty{align-items:center;color:#666;display:flex;flex-direction:column;gap:5px;justify-content:center;padding:20px;text-align:center}.tools-empty .material-icons{color:#ccc;font-size:2rem;margin-bottom:5px}.mcp-tools-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));max-height:400px;overflow-y:auto;padding:5px;width:100%}.mcp-tool-mini{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;justify-content:space-between;min-height:80px;padding:12px;position:relative}.mcp-tool-mini:hover{border-color:#9c27b0;box-shadow:0 2px 8px #9c27b01a}.mcp-tool-mini.enabled{border-left:3px solid #4caf50}.mcp-tool-mini.disabled{border-left:3px solid #f44336}.tool-mini-header{margin-bottom:8px}.tool-mini-name{font-size:.9rem;font-weight:500}.tool-mini-status .material-icons{font-size:1rem}.mcp-tool-mini.enabled .tool-mini-status .material-icons{color:#4caf50}.mcp-tool-mini.disabled .tool-mini-status .material-icons{color:#f44336}.tool-mini-meta{gap:8px}.tool-mini-category{background:#f5f5f5;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-mini-usage{color:#9c27b0;white-space:nowrap}.mcp-tool-flow-modal{padding:20px;z-index:2000}.mcp-tool-flow-content{box-shadow:0 10px 30px #0000004d}.modal-flow-actions{gap:10px;margin-top:20px;padding-top:15px}.flow-action-button{gap:6px;padding:8px 16px}.flow-action-button.primary{background:#9c27b0}.flow-action-button.primary:hover{background:#7b1fa2;transform:translateY(-1px)}.flow-action-button.secondary{background:#f5f5f5;border:1px solid #ddd;color:#666}.flow-action-button.secondary:hover{background:#eee;border-color:#ccc}@media (max-width:768px){.mcp-tools-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.mcp-tool-mini{min-height:70px;padding:10px}.flow-parallel{flex-direction:column;gap:20px}.wide-textarea{min-width:100%}.flow-step{margin:10px;max-width:100%}}.flow-legend,.flow-stats,.hardcoded-badge,.inline-prompt-editor,.toggle-flow-btn{display:none}.mcp-tools-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;box-shadow:0 1px 3px #0000001a;margin-top:1.5rem;padding:1rem}.mcp-tools-section .step-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.mcp-tools-section .step-header h5{color:#495057;font-size:1rem;font-weight:600;margin:0}.mcp-tools-section .step-details{margin-bottom:1rem}.mcp-tools-section .step-details small{color:#6c757d;font-size:.85rem}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.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 .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.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:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{top:auto}.react-flow__handle-bottom,.react-flow__handle-top{left:50%;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.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-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.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{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.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.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:2rem}.flow-header{margin-bottom:2rem}.flow-header h4{color:#333;font-size:1.4rem;font-weight:600;margin:0 0 .5rem}.flow-header p{color:#666;font-size:.95rem;line-height:1.5;margin:0}.react-flow-wrapper{background:#f8f9fa;border:1px solid #ddd;border-radius:8px;height:800px;margin-bottom:2rem}.react-flow-diagram{border-radius:8px}.custom-node{background:#fff;border:2px solid #ddd;border-radius:12px;box-shadow:0 4px 12px #00000026;max-width:400px;min-width:280px;padding:16px;position:relative;transition:all .3s ease}.custom-node:hover{box-shadow:0 8px 24px #0003;transform:translateY(-2px)}.custom-node.entry-point{background:linear-gradient(135deg,#fff,#f8fff9);border-color:#28a745}.custom-node.service{background:linear-gradient(135deg,#fff,#f8fdff);border-color:#17a2b8}.custom-node.router{background:linear-gradient(135deg,#fff,#faf9ff);border-color:#6f42c1}.custom-node.simple-llm{background:linear-gradient(135deg,#fff,#fff8f8);border-color:#ff6b6b}.custom-node.agent-workflow{background:linear-gradient(135deg,#fff,#f8fcff);border-color:#4dabf7}.custom-node.data-analysis{background:linear-gradient(135deg,#fff,#f8fff9);border-color:#51cf66}.custom-node.codegen-analysis{background:linear-gradient(135deg,#fff,#f8fff9);border-color:#69db7c}.custom-node.mcp-analysis{background:linear-gradient(135deg,#fff,#fffdf8);border-color:#ffd43b}.custom-node.final{background:linear-gradient(135deg,#fff,#fffbf8);border-color:#fd7e14}.node-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.node-header h5{color:#333;flex:1 1;font-size:1.1rem;font-weight:600;margin:0}.node-header .material-icons{color:#666;font-size:1.3rem;margin-left:8px}.node-description{color:#666;font-size:.9rem;font-weight:500;margin:0 0 8px}.node-details{margin-bottom:12px}.node-details small{color:#777;display:block;font-size:.8rem;line-height:1.4;margin-bottom:2px}.prompt-editor{margin-top:12px;position:relative}.prompt-textarea{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.85rem;line-height:1.4;min-height:80px;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.prompt-textarea:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.expand-button{align-items:center;background:#f8f9fa;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;height:28px;justify-content:center;padding:4px;position:absolute;right:8px;top:8px;transition:all .2s ease;width:28px}.expand-button:hover{background:#e9ecef;border-color:#adb5bd}.expand-button .material-icons{color:#666;font-size:16px}.mcp-tools-section{border-top:1px solid #eee;margin-top:16px;padding-top:16px}.mcp-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mcp-section-header h5{color:#333;font-size:.95rem;font-weight:600;margin:0}.toggle-tools-button{align-items:center;background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;height:28px;justify-content:center;padding:4px;transition:all .2s ease;width:28px}.toggle-tools-button:hover{background:#f8f9fa;border-color:#adb5bd}.toggle-tools-button .material-icons{color:#666;font-size:16px}.mcp-tools-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-top:12px}.mcp-tool-mini{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:.8rem;padding:8px;transition:all .2s ease}.mcp-tool-mini:hover{background:#e9ecef;border-color:#adb5bd;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.mcp-tool-mini.enabled{background:#f8fff9;border-color:#28a745}.mcp-tool-mini.disabled{background:#fff8f8;border-color:#dc3545;opacity:.7}.tool-mini-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.tool-mini-name{color:#333;flex:1 1;font-size:.75rem;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-mini-status .material-icons{font-size:14px}.mcp-tool-mini.enabled .tool-mini-status .material-icons{color:#28a745}.mcp-tool-mini.disabled .tool-mini-status .material-icons{color:#dc3545}.tool-mini-meta{align-items:center;display:flex;justify-content:space-between;margin-top:4px}.tool-mini-category{background:#e9ecef;border-radius:10px;color:#666;font-size:.7rem;font-weight:500;padding:2px 6px}.tool-mini-usage{color:#007bff;font-size:.7rem;font-weight:500}.global-save-section{border-top:1px solid #eee;display:flex;justify-content:center;margin-top:2rem;padding-top:2rem}.global-save-button{align-items:center;background:linear-gradient(135deg,#06c,#0052a3);border:none;border-radius:8px;box-shadow:0 4px 12px #0066cc4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 32px;transition:all .3s ease}.global-save-button:hover:not(:disabled){background:linear-gradient(135deg,#0052a3,#004085);box-shadow:0 6px 20px #06c6;transform:translateY(-2px)}.global-save-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.mcp-tool-flow-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:10000}.mcp-tool-flow-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:1.5rem 2rem}.modal-header h3{color:#333;font-size:1.3rem;font-weight:600;margin:0}.modal-header button{background:none;border:none;border-radius:6px;cursor:pointer;padding:8px;transition:background-color .2s ease}.modal-header button:hover{background:#f8f9fa}.modal-body{padding:2rem}.tool-details{margin-bottom:2rem}.detail-group{margin-bottom:1.5rem}.detail-group label{color:#333;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.detail-group p{color:#666;line-height:1.5;margin:0}.status-enabled{color:#28a745!important;font-weight:600}.status-disabled{color:#dc3545!important;font-weight:600}.schema-display{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#333;font-family:Courier New,monospace;font-size:.8rem;margin:0;overflow-x:auto;padding:1rem}.usage-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:.5rem}.stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-label{color:#666;font-size:.8rem;margin-bottom:.25rem}.stat-value{color:#333;font-size:1.2rem;font-weight:600}.modal-flow-actions{border-top:1px solid #eee;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.flow-action-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.flow-action-button.primary{background:#06c;color:#fff}.flow-action-button.primary:hover{background:#0052a3}.flow-action-button.secondary{background:#6c757d;color:#fff}.flow-action-button.secondary:hover{background:#5a6268}.flow-action-button .material-icons{font-size:1rem}.react-flow__controls{bottom:10px;left:10px;position:absolute;z-index:4}.react-flow__controls button{background:#fff;border:1px solid #ddd;border-radius:6px;margin-bottom:4px}.react-flow__controls button:hover{background:#f8fbff;border-color:#06c}.custom-controls{bottom:10px;left:120px;position:absolute;z-index:5}.save-view-button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#333;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:6px;justify-content:center;min-width:110px;padding:8px 12px;transition:all .2s ease}.save-view-button:hover:not(:disabled){background:#f8fbff;border-color:#06c;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.save-view-button:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.save-view-button .material-icons{color:#666;font-size:18px}.save-view-button:hover:not(:disabled) .material-icons{color:#06c}.save-view-button .button-text{font-size:.875rem;line-height:1}.react-flow__edge-text{fill:#333;font-size:12px;font-weight:600}.react-flow__handle{background:#333;border:2px solid #fff;box-shadow:0 2px 4px #0003;height:8px;width:8px}.react-flow__handle-top{top:-4px}.react-flow__handle-bottom{bottom:-4px}@media (max-width:768px){.react-flow-wrapper{height:600px}.custom-node{max-width:300px;min-width:240px;padding:12px}.mcp-tools-grid{gap:6px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.prompt-textarea{font-size:.8rem;min-height:60px}.node-header h5{font-size:1rem}.flow-header h4{font-size:1.2rem}.save-view-button{font-size:.8rem;min-width:90px;padding:6px 8px}.save-view-button .material-icons{font-size:16px}.save-view-button .button-text{font-size:.8rem}}@media (max-width:480px){.react-flow-container{padding:1rem}.react-flow-wrapper{height:500px}.custom-node{max-width:250px;min-width:200px;padding:10px}.modal-body,.modal-header{padding:1rem}.modal-flow-actions{flex-direction:column}.flow-action-button{justify-content:center;width:100%}}
/*# sourceMappingURL=main.1e198f84.css.map*/