body { font-family: Tahoma, sans-serif; margin: 0; padding: 0; background: #f5f5f5; } /* Breadcrumb */ .breadcrumb-container { background: #333; color: white; padding: 12px 20px; border-bottom: 3px solid #42a5f5; } .breadcrumb { display: flex; align-items: center; gap: 10px; font-size: 14px; } .breadcrumb-item { font-weight: 500; } .breadcrumb-separator { color: #999; font-weight: bold; } .agent-selector { padding: 6px 12px; border: 2px solid #42a5f5; border-radius: 4px; background: white; color: #333; font-size: 14px; font-weight: bold; cursor: pointer; transition: all 0.2s; } .agent-selector:hover { background: #e3f2fd; border-color: #1e88e5; } .agent-selector:focus { outline: none; box-shadow: 0 0 0 3px rgba(66, 165, 245, 0.3); } .tab-container { background: white; } .tab-buttons { background: #f0f0f0; border-bottom: 2px solid #333; padding: 0; margin: 0; } .tab-button { background: #e0e0e0; border: none; padding: 12px 24px; cursor: pointer; font-size: 16px; font-weight: bold; border-top: 2px solid transparent; border-left: 2px solid transparent; border-right: 2px solid transparent; transition: background 0.2s; } .tab-button:hover { background: #d0d0d0; } .tab-button.active { background: white; border-top: 2px solid #333; border-left: 2px solid #333; border-right: 2px solid #333; border-bottom: 2px solid white; margin-bottom: -2px; } .tab-content { display: none; background: white; } .tab-content.active { display: block; } /* Data Tab Styles */ .data-sub-tabs { background: #e3f2fd; padding: 10px 20px; border-bottom: 2px solid #333; display: flex; gap: 10px; } .data-sub-tab-button { background: #fff; border: 2px solid #42a5f5; padding: 8px 20px; cursor: pointer; font-size: 14px; font-weight: bold; border-radius: 4px; transition: all 0.2s; } .data-sub-tab-button:hover { background: #e3f2fd; } .data-sub-tab-button.active { background: #42a5f5; color: white; } .data-subtab-content { display: none; } .data-subtab-content.active { display: block; } .view-toggle { background: #f9f9f9; padding: 10px 20px; border-bottom: 2px solid #ddd; display: flex; gap: 10px; } .view-toggle-button { background: #fff; border: 2px solid #ccc; padding: 6px 16px; cursor: pointer; font-size: 14px; font-weight: bold; border-radius: 4px; transition: all 0.2s; } .view-toggle-button:hover { background: #e0e0e0; } .view-toggle-button.active { background: #333; color: white; border-color: #333; } .no-agent-message { padding: 40px; text-align: center; color: #666; background: #f9f9f9; } .data-view { position: relative; } .data-controls { padding: 15px; background: #f9f9f9; border-bottom: 2px solid #333; display: flex; gap: 15px; align-items: center; flex-wrap: wrap; } .data-controls h2 { margin: 0; flex: 1 0 100%; } .load-button { padding: 8px 20px; background: #66bb6a; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; font-size: 14px; } .load-button:hover { background: #43a047; } .control-input { width: 80px; padding: 5px; border: 1px solid #ccc; border-radius: 4px; } .control-select { padding: 5px; border: 1px solid #ccc; border-radius: 4px; } .apply-button { padding: 6px 15px; background: #42a5f5; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; } .apply-button:hover { background: #1e88e5; } .node-count { color: #666; font-size: 14px; } .graph-canvas { width: 100%; height: 800px; background: #ffffff; } .table-filter { width: 100%; max-width: 600px; padding: 10px; margin: 0 20px 15px 20px; border: 2px solid #ccc; border-radius: 4px; font-size: 14px; box-sizing: border-box; } .table-container { overflow-x: auto; padding: 0 20px 20px 20px; } .memory-table { width: 100%; border-collapse: collapse; font-size: 13px; max-width: 1400px; } .memory-table th { padding: 10px; text-align: left; border: 1px solid #ddd; background: #f0f0f0; } .memory-table td { padding: 8px; border: 1px solid #ddd; } .empty-message { padding: 40px; text-align: center; color: #666; } #cy { width: 100%; height: 800px; background: #ffffff; } #graph-tab { position: relative; } #table-tab { padding: 20px; } .legend { position: absolute; top: 80px; left: 20px; background: white; padding: 15px; border: 2px solid #333; border-radius: 8px; box-shadow: 2px 2px 8px rgba(0,0,0,0.3); z-index: 1000; max-width: 250px; } .legend h3 { margin-top: 0; border-bottom: 2px solid #333; padding-bottom: 5px; } .legend h4 { margin: 10px 0 5px 0; } .legend-item { margin: 8px 0; display: flex; align-items: center; } .legend-line { width: 30px; height: 2px; margin-right: 10px; } .legend-line.temporal { background: #00bcd4; border-top: 1px dashed #00bcd4; } .legend-line.semantic { background: #ff69b4; } .legend-line.entity { background: #ffd700; } .legend-node { width: 20px; height: 20px; margin-right: 10px; border: 1px solid #999; border-radius: 3px; } .legend-node.no-entities { background: #e0e0e0; } .legend-node.one-entity { background: #90caf9; } .legend-node.multi-entities { background: #42a5f5; } .tooltip { position: absolute; background: white; border: 2px solid #333; border-radius: 4px; padding: 10px; box-shadow: 2px 2px 8px rgba(0,0,0,0.3); max-width: 300px; font-size: 12px; pointer-events: none; z-index: 9999; } #debug-tab { padding: 20px; } .debug-container { display: flex; gap: 20px; height: calc(100vh - 150px); } .debug-pane { flex: 1; display: flex; flex-direction: column; border: 2px solid #333; border-radius: 8px; overflow: hidden; } .debug-pane-header { background: #f0f0f0; padding: 10px; border-bottom: 2px solid #333; font-weight: bold; } .debug-search-controls { padding: 10px; background: #e3f2fd; border-bottom: 2px solid #333; } .debug-status-bar { padding: 8px 15px; background: #fff8e1; border-bottom: 2px solid #333; font-size: 13px; display: flex; align-items: center; gap: 5px; flex-wrap: wrap; } .debug-controls { padding: 10px; background: #f9f9f9; border-bottom: 2px solid #333; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; } .debug-viz { flex: 1; position: relative; background: white; min-height: 400px; width: 100%; } .debug-viz canvas { width: 100% !important; height: 100% !important; } .debug-info { padding: 10px; background: #f9f9f9; border-top: 2px solid #333; font-size: 12px; max-height: 200px; overflow-y: auto; } .debug-button { padding: 8px 16px; background: #42a5f5; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; } .debug-button:hover { background: #1e88e5; } .debug-button.secondary { background: #66bb6a; } .debug-button.secondary:hover { background: #43a047; } .error-message { color: #d32f2f; padding: 10px; background: #ffebee; border: 1px solid #ef5350; border-radius: 4px; margin-top: 10px; } .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; margin-top: 10px; } .stat-item { padding: 8px; background: white; border: 1px solid #ddd; border-radius: 4px; } .stat-label { font-weight: bold; color: #666; font-size: 11px; } .stat-value { font-size: 18px; color: #333; } .loading { text-align: center; padding: 20px; color: #666; } .refresh-button { padding: 6px 15px; background: #66bb6a; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; margin-left: 10px; } .refresh-button:hover { background: #43a047; } /* Decision Log Styles */ .debug-viz-container { flex: 1; position: relative; overflow: hidden; } .decision-log { height: 100%; overflow-y: auto; padding: 20px; background: #fafafa; } .log-header { background: white; border: 2px solid #333; border-radius: 8px; padding: 20px; margin-bottom: 20px; } .log-header h3 { margin: 0 0 10px 0; color: #333; } .log-header p { margin: 5px 0; } .log-explanation { color: #666; font-size: 13px; line-height: 1.5; } .log-step { margin-bottom: 20px; } .log-step-header { background: #333; color: white; padding: 10px 15px; font-weight: bold; border-radius: 6px 6px 0 0; font-size: 14px; } .log-step-explanation { background: #e3f2fd; border: 2px solid #333; border-top: none; padding: 12px 15px; font-size: 13px; line-height: 1.5; } .log-card { background: white; border: 2px solid #ddd; border-radius: 6px; padding: 15px; margin: 10px 0; transition: box-shadow 0.2s; } .log-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.1); } .log-card-entry { border-color: #66bb6a; background: #f1f8f4; } .log-card-result { border-color: #ffd54f; background: #fffef0; } .log-card-pruned { border-color: #ef5350; background: #ffebee; } .log-card-header { display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; } .log-badge { display: inline-block; padding: 4px 10px; border-radius: 12px; font-size: 11px; font-weight: bold; text-transform: uppercase; } .log-badge-entry { background: #66bb6a; color: white; } .log-badge-result { background: #ffd54f; color: #333; } .log-badge-temporal { background: #00bcd4; color: white; } .log-badge-semantic { background: #ff69b4; color: white; } .log-badge-entity { background: #ffd700; color: #333; } .log-badge-pruned { background: #ef5350; color: white; } .log-memory-text { font-size: 14px; color: #333; margin: 10px 0; padding: 10px; background: #f9f9f9; border-left: 4px solid #42a5f5; font-style: italic; } .log-details { margin-top: 10px; font-size: 12px; } .log-detail-row { display: flex; justify-content: space-between; align-items: center; padding: 6px 0; border-bottom: 1px solid #eee; } .log-detail-row:last-child { border-bottom: none; } .log-detail-label { font-weight: bold; color: #666; } .log-detail-value { color: #333; } .log-detail-help { cursor: help; margin-left: 5px; color: #999; font-size: 14px; } /* Results Table Styles */ .results-table-container { height: 100%; overflow-y: auto; background: white; } /* Search Graph Legend */ .search-graph-legend { position: absolute; top: 10px; right: 10px; background: white; padding: 15px; border: 2px solid #333; border-radius: 8px; box-shadow: 2px 2px 8px rgba(0,0,0,0.3); z-index: 1000; max-width: 320px; font-size: 12px; } /* Think Tab Styles */ #think-tab { padding: 20px; max-width: 1200px; margin: 0 auto; } .think-controls { background: #f9f9f9; padding: 20px; border-radius: 8px; border: 2px solid #333; } .think-answer { background: white; padding: 20px; border-radius: 8px; border: 2px solid #333; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .think-sources { background: white; padding: 20px; border-radius: 8px; border: 2px solid #333; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } /* Delete Button */ .delete-button { padding: 4px 12px; background: #ef5350; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 12px; font-weight: bold; transition: background 0.2s; } .delete-button:hover { background: #d32f2f; }