body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{display:flex;flex-direction:column;height:100vh;overflow:hidden}.App,.header{background-color:#fff}.header{border-bottom:2px dotted #e0e0e0;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:.5rem 20px}.header-left{flex:1 1;text-align:left}.header-center{justify-content:center}.header-center,.header-right{align-items:center;display:flex;flex:1 1}.header-right{justify-content:flex-end;text-align:right}.header-auth-link{color:#1a73e8;font-size:.9rem;font-weight:500;text-decoration:none}.header-auth-link:hover{text-decoration:underline}.header-title{color:#333;font-size:1rem;font-weight:700;margin:0;padding:0}.main-container{display:flex;flex:1 1;min-height:0;overflow:hidden}.sidebar{background-color:#fff;border-right:2px dotted #e0e0e0;overflow-y:auto;width:250px}.sidebar-nav{display:flex;flex-direction:column;height:100%;padding:0}.sidebar-thread-item.active{background-color:#e3f2fd}.sidebar-thread-item.active .sidebar-thread-title{color:#1976d2;font-weight:600}.sidebar-thread-item.active .sidebar-thread-time{color:#666}.nav-section{margin-bottom:2rem}.section-title{color:#999;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 .75rem 1.5rem;padding:0;text-transform:uppercase}.nav-list{list-style:none;margin:0;padding:0}.nav-item{margin:0}.nav-link{align-items:center;border-left:3px solid #0000;color:#666;display:flex;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.nav-link:hover{background-color:#f8f9fa;border-left-color:#2563eb;color:#333}.nav-link.active{background-color:#e3f2fd;border-left-color:#2563eb;color:#2563eb;font-weight:500}.nav-icon{font-size:1.1rem;margin-right:.75rem}.main{background-color:#fff;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:0}.form-container{background-color:#fff;padding:3rem}.form-container h2{color:#333;font-size:1.5rem;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.keywords-input-row .form-input{flex:1 1}.organization-fields .form-group{margin-bottom:1.25rem}.organization-fields .form-group:last-child{margin-bottom:0}.organization-fields .form-input{font-size:.9375rem;max-width:400px;padding:.6rem .75rem;width:100%}@media (max-width:640px){.organization-fields .form-input{max-width:none}}.tiktok-content-thumbnail-link{color:inherit;display:inline-block;text-decoration:none}.tiktok-content-embed{background:#000;border:1px solid #e2e8f0;border-radius:6px;height:320px;overflow:hidden;position:relative;width:240px}.tiktok-embed-iframe{border:none;display:block;height:100%;width:100%}.tiktok-embed-overlay{cursor:pointer;inset:0;position:absolute;z-index:1}.tiktok-embed-overlay-paused{align-items:center;background:#00000059;display:flex;justify-content:center}.tiktok-embed-overlay-playing{background:#0000}.tiktok-embed-play-btn{align-items:center;background:#ffffffe6;border-radius:50%;color:#000;display:flex;height:64px;justify-content:center;transition:transform .2s;width:64px}.tiktok-embed-play-btn:hover{transform:scale(1.05)}.tiktok-embed-play-btn svg{margin-left:4px}.tiktok-embed-loading{align-items:center;display:flex;justify-content:center}.tiktok-embed-spinner{animation:tiktok-spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:32px;width:32px}@keyframes tiktok-spin{to{transform:rotate(1turn)}}.tiktok-content-thumbnail{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;height:320px;overflow:hidden;position:relative;width:240px}.tiktok-content-thumbnail-img{display:block;height:100%;object-fit:cover;width:100%}.tiktok-content-thumbnail-placeholder{align-items:center;background:#e2e8f0;color:#64748b;display:flex;flex-direction:column;gap:.5rem;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .2s}.tiktok-content-thumbnail-placeholder.visible{opacity:1}.tiktok-content-thumbnail-placeholder svg{flex-shrink:0}.tiktok-content-thumbnail-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:.75rem;line-height:1.2;overflow:hidden;padding:0 .5rem;text-align:center}.form-input{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.form-input:focus{border-color:#2563eb;outline:none}.toast{align-items:center;animation:slideIn .3s ease-out;border-radius:8px;color:#fff;display:flex;font-weight:500;gap:1rem;min-width:300px;padding:1rem 1.5rem;position:fixed;right:20px;top:20px;z-index:1000}.toast.success{background-color:#28a745}.toast.error{background-color:#dc3545}.toast-message{flex:1 1}.toast-close{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;padding:0;transition:background-color .2s ease;width:20px}.toast-close:hover{background-color:#fff3}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#2563eb;height:50px;margin-bottom:20px;width:50px}.result-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.result-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.form-input::placeholder{color:#999}.architecture-layer.selected{background-color:#e8dffc1a;border-color:#8a2be2;box-shadow:0 4px 12px #8a2be233}.llm-chat-message.user{background-color:initial}.agent-prompt-chevron.expanded{transform:rotate(180deg)}.agent-status-indicator.processing{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background-color:#3b82f6}.agent-status-indicator.completed{background-color:#10b981}@keyframes blink-orange{0%,to{background-color:#ff6b35;opacity:1}50%{background-color:#ff8c5a;opacity:.5}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.agent-processing-step.active{color:#3b82f6;font-weight:500;opacity:1}.agent-thinking-step.completed{color:#10b981;opacity:1}.agent-thinking-step.active{color:#3b82f6;font-weight:500;opacity:1}.agent-thinking-step.completed .agent-thinking-step-indicator{color:#10b981;font-size:.875rem}.agent-thinking-step.active .agent-thinking-step-indicator{animation:pulse 1.5s cubic-bezier(.4,0,.6,1) infinite}@keyframes fadeInSlide{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.scraping-step-compact.completed{color:#10b981}.scraping-step-compact.active{color:#ff6b35;font-weight:500}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes blink-orange-text{0%,to{opacity:1}50%{opacity:.6}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-message.user{align-self:flex-end}.thinking-chevron.expanded{transform:rotate(180deg)}.chat-message.user .chat-message-content{background-color:#2563eb;border-bottom-right-radius:4px;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes typing{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}@media (max-width:768px){.header-title{font-size:1.5rem}.header-content{padding:0 15px}.sidebar{width:200px}.main{margin-left:200px;padding:1rem}.form-container{padding:1.5rem}}@media (max-width:480px){.header-center{flex:1 1}.header-title{font-size:1.2rem}.main-container{flex-direction:column}.sidebar{height:auto;position:static;width:100%}.main{margin-left:0}}.docs-viewer-layout{align-items:flex-start;display:flex;gap:24px}.docs-viewer-sidebar{border-right:1px solid #e5e7eb;flex:0 0 260px;max-height:calc(100vh - 200px);overflow-y:auto;padding-right:16px}.docs-viewer-search{border:1px solid #e5e7eb;border-radius:6px;box-sizing:border-box;font-size:.85rem;margin-bottom:12px;padding:6px 10px;width:100%}.docs-viewer-group{margin-bottom:14px}.docs-viewer-group-title{color:#9ca3af;font-size:.7rem;font-weight:700;letter-spacing:.03em;margin-bottom:4px;text-transform:uppercase}.docs-viewer-list{list-style:none;margin:0;padding:0}.docs-viewer-item{background:none;border:none;border-radius:6px;color:#374151;cursor:pointer;display:block;font-size:.85rem;padding:5px 8px;text-align:left;width:100%}.docs-viewer-item:hover{background-color:#f3f4f6}.docs-viewer-item.active{background-color:#eef2ff;color:#4f46e5;font-weight:600}.docs-viewer-content{flex:1 1;min-width:0}.docs-viewer-content-header{align-items:baseline;border-bottom:1px solid #e5e7eb;display:flex;gap:10px;margin-bottom:12px;padding-bottom:8px}.docs-viewer-content-title{font-size:1.1rem;font-weight:700}.docs-viewer-content-path{color:#9ca3af;font-family:monospace;font-size:.75rem}.docs-markdown-body{color:#1f2937;font-size:.9rem;line-height:1.7;max-width:900px}.docs-markdown-body h1,.docs-markdown-body h2,.docs-markdown-body h3,.docs-markdown-body h4{font-weight:700;margin-bottom:.6em;margin-top:1.4em}.docs-markdown-body h1{font-size:1.4rem}.docs-markdown-body h2{border-bottom:1px solid #e5e7eb;font-size:1.2rem;padding-bottom:4px}.docs-markdown-body h3{font-size:1.05rem}.docs-markdown-body p{margin:.6em 0}.docs-markdown-body ol,.docs-markdown-body ul{margin:.6em 0;padding-left:1.4em}.docs-markdown-body code{background-color:#f3f4f6;border-radius:4px;font-size:.85em;padding:1px 5px}.docs-markdown-body pre{background-color:#1f2937;border-radius:8px;color:#f9fafb;margin:.8em 0;overflow-x:auto;padding:12px 14px}.docs-markdown-body pre code{background:none;color:inherit;padding:0}.docs-markdown-body blockquote{background-color:#f8fafc;border-left:3px solid #c7d2fe;color:#4b5563;margin:.8em 0;padding:2px 14px}.docs-markdown-body table{border-collapse:collapse;font-size:.85rem;margin:.8em 0;width:100%}.docs-markdown-body td,.docs-markdown-body th{border:1px solid #e5e7eb;padding:6px 10px;text-align:left}.docs-markdown-body th{background-color:#f9fafb;font-weight:700}.docs-markdown-body a{color:#4f46e5}.docs-markdown-body hr{border:none;border-top:1px solid #e5e7eb;margin:1.4em 0}.admin-guard{align-items:center;background:#f5f6f8;display:flex;justify-content:center;min-height:100vh;padding:24px}.admin-guard-box{background:#fff;border:1px solid #e3e6ea;border-radius:12px;box-shadow:0 8px 24px #1018280f;max-width:440px;padding:32px 36px;text-align:center;width:100%}.admin-guard-title{color:#1f2937;font-size:20px;font-weight:700;margin:0 0 12px}.admin-guard-text{color:#4b5563;line-height:1.5;margin:0 0 20px}.admin-guard-denied{color:#b42318}.admin-guard-actions{display:flex;gap:8px;justify-content:center}.admin-guard-button{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 16px}.admin-guard-button.secondary{background:#e5e7eb;color:#111827}.admin-login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.admin-login-box{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:48px;width:100%}.admin-login-title{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 8px;text-align:center}.admin-login-subtitle{color:#718096;font-size:16px;margin:0 0 24px;text-align:center}.admin-login-environment{margin-bottom:24px}.admin-login-environment-label{color:#4a5568;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.admin-login-environment-options{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.admin-login-environment-option{align-items:flex-start;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:12px 14px;text-align:left;transition:border-color .2s,background-color .2s,box-shadow .2s}.admin-login-environment-option:hover:not(:disabled){border-color:#a0aec0}.admin-login-environment-option strong{color:#2d3748;font-size:14px}.admin-login-environment-option span{font-size:12px}.admin-login-environment-option.active.production{background:#f5f3ff;border-color:#635bff;box-shadow:0 0 0 1px #635bff}.admin-login-environment-option.active.development{background:#fffbeb;border-color:#d97706;box-shadow:0 0 0 1px #d97706}.admin-login-environment-option:disabled{cursor:not-allowed;opacity:.65}.admin-login-environment-status{font-size:12px;line-height:1.4;margin:9px 0 0}.admin-login-environment-status.production{color:#5b56d6}.admin-login-environment-status.development{color:#b45309}.admin-login-error{background:#fed7d7;border:1px solid #fc8181;border-radius:8px;color:#c53030;font-size:14px;margin-bottom:20px;padding:12px 16px}.admin-login-google-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:14px 24px;transition:all .2s;width:100%}.admin-login-google-button:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.admin-login-google-button:active:not(:disabled){transform:translateY(0)}.admin-login-google-button:disabled{cursor:not-allowed;opacity:.6}.admin-login-google-button svg{flex-shrink:0}