.layout{height:100vh;display:flex;flex-direction:column;background-color:#1a1a1a;color:#e0e0e0;min-height:0}.layout-header{background-color:#2d3748;color:#fff;padding:.75rem 0;box-shadow:0 2px 8px #0000004d;border-bottom:1px solid #4a5568;flex-shrink:0}.layout-container{width:100%;max-width:none;margin:0;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center}.layout-logo a{color:#63b3ed;text-decoration:none;font-size:1.6rem;font-weight:700;transition:color .2s}.layout-logo a:hover{color:#90cdf4}.layout-nav{display:flex;gap:1rem}.nav-link{color:#e2e8f0;text-decoration:none;padding:.6rem 1.2rem;border-radius:8px;transition:all .2s;font-weight:500;border:1px solid transparent;position:relative}.nav-link:hover{background-color:#63b3ed1a;border-color:#63b3ed4d;color:#90cdf4}.nav-link.active{background:linear-gradient(135deg,#63b3ed40,#4299e140);border-color:#63b3ed;color:#63b3ed;font-weight:600;box-shadow:0 2px 8px #63b3ed4d}.nav-link.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60%;height:3px;background:linear-gradient(90deg,transparent,#63b3ed,transparent);border-radius:2px}.layout-user{display:flex;align-items:center;gap:1rem}.user-welcome{color:#cbd5e0;font-weight:500}.logout-btn{background:linear-gradient(135deg,#e53e3e,#c53030);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:500;box-shadow:0 2px 4px #0003}.logout-btn:hover{background:linear-gradient(135deg,#c53030,#9c2626);transform:translateY(-1px);box-shadow:0 4px 8px #0000004d}.layout-main{flex:1;padding:0;overflow:hidden;background-color:#1a1a1a}.welcome-container{text-align:center;padding:3rem 2rem;height:100%;display:flex;flex-direction:column;justify-content:center;background-color:#1a1a1a}.welcome-container h1{color:#63b3ed;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700}.welcome-container p{color:#a0aec0;margin-bottom:2rem;font-size:1.2rem}.welcome-container ul{list-style:none;padding:0;max-width:700px;margin:0 auto}.welcome-container li{background:linear-gradient(135deg,#2d3748,#4a5568);margin:1rem 0;padding:1.5rem;border-radius:12px;border-left:4px solid #63b3ed;color:#e2e8f0;box-shadow:0 4px 6px #0000004d;transition:transform .2s,box-shadow .2s}.welcome-container li:hover{transform:translateY(-2px);box-shadow:0 8px 12px #0006}@media (max-width: 1024px){.layout-container{padding:0 1rem}.layout-logo a{font-size:1.4rem}.nav-link{padding:.5rem 1rem;font-size:.9rem}.user-welcome{font-size:.9rem}.logout-btn{padding:.5rem 1rem;font-size:.9rem}}@media (max-width: 768px){.layout-header{padding:.5rem 0}.layout-container{padding:0 .75rem;flex-wrap:wrap;gap:.5rem}.layout-logo a{font-size:1.2rem}.layout-nav{gap:.5rem;order:3;width:100%;justify-content:center;margin-top:.5rem}.nav-link{padding:.4rem .8rem;font-size:.8rem}.layout-user{gap:.5rem}.user-welcome{font-size:.8rem}.logout-btn{padding:.4rem .8rem;font-size:.8rem}}@media (max-width: 480px){.layout{height:100vh;height:100dvh}.layout-header{padding:.4rem 0}.layout-container{padding:0 .5rem;flex-direction:column;gap:.4rem}.layout-logo a{font-size:1.1rem}.layout-nav{order:2;width:100%;justify-content:center;margin:0;gap:.3rem}.nav-link{padding:.3rem .6rem;font-size:.75rem}.layout-user{order:3;gap:.4rem}.user-welcome{font-size:.75rem}.logout-btn{padding:.3rem .6rem;font-size:.75rem}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d3748);padding:1rem}.auth-card{background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:16px;box-shadow:0 8px 32px #0006;border:1px solid #4a5568;padding:2.5rem;width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{color:#63b3ed;margin-bottom:.5rem;font-size:1.8rem;font-weight:700}.auth-header p{color:#a0aec0;font-size:1rem}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;position:relative}.form-group label{color:#e2e8f0;font-weight:500;margin-bottom:.75rem;font-size:.95rem}.form-group input{padding:1rem;border:1px solid #4a5568;border-radius:8px;font-size:1rem;background-color:#2d3748!important;color:#fff!important;transition:all .2s;-webkit-text-fill-color:#ffffff!important;font-weight:500}.form-group input::placeholder{color:#9ca3af;opacity:1;font-weight:400}.form-group input:focus{outline:none;border-color:#63b3ed!important;box-shadow:0 0 0 3px #63b3ed33;background-color:#374151!important;color:#fff!important}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:hover,.form-group input:-webkit-autofill:focus,.form-group input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px #2d3748 inset!important;-webkit-text-fill-color:#ffffff!important;caret-color:#fff;transition:background-color 5000s ease-in-out 0s}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:3rem}.password-toggle-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#a0aec0;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .2s;line-height:1;z-index:1}.password-toggle-btn:hover{color:#63b3ed;transform:translateY(-50%) scale(1.1)}.password-toggle-btn:focus{outline:2px solid #63b3ed;outline-offset:2px;border-radius:4px}.auth-error{background:#fc81811a;color:#fc8181;padding:.75rem;border-radius:8px;border:1px solid rgba(252,129,129,.3);font-size:.9rem;text-align:center;font-weight:500}.auth-button{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem;box-shadow:0 4px 12px #63b3ed4d}.auth-button:hover:not(:disabled){background:linear-gradient(135deg,#4299e1,#3182ce);transform:translateY(-2px);box-shadow:0 8px 20px #63b3ed66}.auth-button:disabled{background:linear-gradient(135deg,#4a5568,#2d3748);opacity:.5;cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #4a5568}.auth-footer p{color:#a0aec0;font-size:.9rem}.auth-link{color:#63b3ed;text-decoration:none;font-weight:500;transition:color .2s}.auth-link:hover{color:#90cdf4;text-decoration:underline}.password-hint{color:#a0aec0;font-size:.85rem;margin-top:.5rem;line-height:1.4;padding:.5rem;background:#a0aec01a;border-radius:6px;border-left:3px solid #63b3ed}.instructions-panel{background:transparent;border-radius:12px;padding:0;height:100%;max-height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;position:relative}.instructions-section{margin-bottom:1rem;background:linear-gradient(135deg,#1a202c,#2d3748);border-radius:8px;border:1px solid #4a5568;overflow:hidden;box-shadow:0 2px 8px #0000004d;flex-shrink:0}.section-header{display:flex;align-items:center;padding:1rem;background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.section-header:hover{background:linear-gradient(135deg,#4299e1,#3182ce);transform:translateY(-1px)}.section-icon{margin-right:.5rem;font-size:1.1rem}.section-title{flex:1;font-weight:500;font-size:.9rem}.expand-icon{transition:transform .2s;font-size:.8rem}.expand-icon.expanded{transform:rotate(180deg)}.section-content{padding:1rem;background:#1a202c;color:#e2e8f0}.section-content h4{margin:0 0 .75rem;color:#63b3ed;font-size:.95rem}.section-content h5{margin:1rem 0 .5rem;color:#90cdf4;font-size:.85rem}.section-content ol,.section-content ul{margin:0;padding-left:1.25rem}.section-content li{margin-bottom:.5rem;font-size:.85rem;line-height:1.4;color:#cbd5e0}.copy-instructions{margin-bottom:1rem}.copy-method{display:flex;align-items:center;padding:.5rem;margin-bottom:.5rem;border-radius:4px;font-size:.8rem}.copy-method.recommended{background:#48bb781a;border:1px solid #48bb78}.copy-method.alternative{background:#63b3ed1a;border:1px solid #63b3ed}.method-icon{margin-right:.5rem}.prompt-container{border:1px solid #4a5568;border-radius:8px;margin:1rem 0;background:#2d3748;box-shadow:0 2px 4px #0003}.prompt-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#4a5568;border-bottom:1px solid #718096;font-size:.8rem;font-weight:500;color:#e2e8f0}.copy-button{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;padding:.4rem .8rem;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0003}.copy-button:hover{background:linear-gradient(135deg,#4299e1,#3182ce);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.copy-button.copied{background:linear-gradient(135deg,#48bb78,#38a169)}.copy-button.copied:hover{background:linear-gradient(135deg,#38a169,#2f855a)}.prompt-textarea{width:100%;min-height:200px;max-height:300px;padding:1rem;border:none;font-family:Courier New,monospace;font-size:.8rem;line-height:1.5;resize:vertical;background:#1a202c;color:#e2e8f0;overflow-y:auto;overflow-x:hidden}.prompt-textarea:focus{outline:none;background:#2d3748}.copy-guide{margin-top:1rem}.guide-steps{margin:.5rem 0}.guide-step{display:flex;align-items:flex-start;margin-bottom:.5rem;font-size:.8rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;margin-right:.5rem;flex-shrink:0}.guide-step code{background:#4a5568;padding:.2rem .4rem;border-radius:4px;font-size:.75rem;color:#fc8181}.compatibility-info{margin-top:.75rem;padding:.75rem;background:#48bb781a;border-radius:8px;border-left:3px solid #48bb78}.compatibility-item{display:flex;align-items:center;margin-bottom:.25rem;font-size:.75rem;color:#cbd5e0}.compatibility-icon{margin-right:.5rem}@media (max-width: 768px){.instructions-panel{padding:.75rem;height:auto}.section-content{padding:.75rem}.prompt-textarea{min-height:150px;font-size:.75rem}.prompt-header{flex-direction:column;gap:.5rem;align-items:flex-start}.copy-button{align-self:flex-end}}.instructions-panel{scrollbar-width:thin;scrollbar-color:#4a5568 #2d3748}.instructions-panel::-webkit-scrollbar{width:8px;display:block}.instructions-panel::-webkit-scrollbar-track{background:#2d3748;border-radius:4px}.instructions-panel::-webkit-scrollbar-thumb{background:#4a5568;border-radius:4px}.instructions-panel::-webkit-scrollbar-thumb:hover{background:#718096}.prompt-textarea::-webkit-scrollbar{width:8px}.prompt-textarea::-webkit-scrollbar-track{background:#2d3748;border-radius:4px}.prompt-textarea::-webkit-scrollbar-thumb{background:#4a5568;border-radius:4px}.prompt-textarea::-webkit-scrollbar-thumb:hover{background:#718096}.instructions-section:last-child{margin-bottom:.5rem}.chatbot-sidebar .instructions-panel,.instructions-sidebar-overlay .instructions-panel{height:100%;max-height:100%;overflow-y:auto}.graph-modal-backdrop{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.graph-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:95vw;max-height:95vh;width:auto;min-width:600px;max-width:min(95vw,1600px);display:flex;flex-direction:column;overflow:hidden}.graph-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.graph-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.graph-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:all .2s}.graph-modal-close:hover{background-color:#f3f4f6;color:#374151}.graph-modal-body{flex:1;overflow:auto;padding:0;display:flex;align-items:center;justify-content:center;min-height:400px;max-height:75vh;width:100%}.graph-modal-body::-webkit-scrollbar{width:12px;height:12px}.graph-modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}.graph-modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}.graph-modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.graph-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.graph-loading p{margin:0;color:#6b7280;font-size:1rem}.graph-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center}.error-icon{font-size:3rem;margin-bottom:16px}.graph-error p{margin:0 0 8px;color:#374151;font-size:1.1rem;font-weight:500}.error-details{color:#6b7280!important;font-size:.9rem!important;font-weight:400!important;margin-bottom:0!important}.graph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center}.empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.graph-empty p{margin:0;color:#6b7280;font-size:1rem}@media (max-width: 768px){.graph-modal-backdrop{padding:10px}.graph-modal-content{max-width:98vw;max-height:98vh;min-width:400px}.graph-modal-header{padding:16px 20px 12px}.graph-modal-body{min-height:300px;max-height:75vh}.graph-loading,.graph-error,.graph-empty{padding:40px 20px}}@media (max-width: 480px){.graph-modal-backdrop{padding:5px}.graph-modal-content{max-width:100vw;max-height:100vh;min-width:320px;border-radius:8px}.graph-modal-header{padding:12px 16px 8px}.graph-modal-body{min-height:250px;max-height:80vh}.graph-loading,.graph-error,.graph-empty{padding:20px 16px}}.mermaid-modal-backdrop{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.mermaid-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:95vw;max-height:95vh;width:auto;min-width:600px;max-width:min(95vw,1600px);display:flex;flex-direction:column;overflow:hidden}.mermaid-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.mermaid-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.mermaid-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:all .2s}.mermaid-modal-close:hover{background-color:#f3f4f6;color:#374151}.mermaid-modal-body{flex:1;overflow:auto;padding:0;min-height:400px;max-height:75vh;width:100%}.mermaid-modal-body::-webkit-scrollbar{width:12px;height:12px}.mermaid-modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}.mermaid-modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}.mermaid-modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.mermaid-modal-diagram{background-color:#fff;border-radius:0;margin:0;padding:24px;min-height:400px}.mermaid-modal-footer{padding:16px 24px 20px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.mermaid-modal-hint{margin:0;font-size:.875rem;color:#6b7280;text-align:center}.mermaid-modal-hint kbd{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;padding:2px 6px;font-size:.75rem;font-family:monospace}@media (max-width: 768px){.mermaid-modal-backdrop{padding:10px}.mermaid-modal-content{max-width:98vw;max-height:98vh;min-width:400px}.mermaid-modal-header{padding:16px 20px 12px}.mermaid-modal-body{min-height:300px;max-height:75vh}.mermaid-modal-diagram{padding:16px}.mermaid-modal-footer{padding:12px 20px 16px}}@media (max-width: 480px){.mermaid-modal-backdrop{padding:5px}.mermaid-modal-content{max-width:100vw;max-height:100vh;min-width:320px;border-radius:8px}.mermaid-modal-header{padding:12px 16px 8px}.mermaid-modal-body{min-height:250px;max-height:80vh}.mermaid-modal-diagram{padding:12px}.mermaid-modal-footer{padding:8px 16px 12px}}.markdown-modal-backdrop{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.markdown-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:90vw;max-height:90vh;width:1000px;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .3s ease-out}.markdown-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa;gap:1rem}.modal-title-section{flex:1}.markdown-modal-title{margin:0;color:#2c3e50;font-size:1.25rem;font-weight:600}.modal-actions{display:flex;align-items:center;gap:.5rem}.download-button{background:#28a745;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.25rem}.download-button:hover{background:#218838;transform:translateY(-1px)}.download-button:active{transform:translateY(0)}.markdown-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:.25rem;border-radius:4px;transition:all .2s;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.markdown-modal-close:hover{background:#e9ecef;color:#495057}.markdown-modal-close:focus{outline:2px solid #667eea;outline-offset:2px}.markdown-modal-body{flex:1;overflow:auto;padding:1.5rem;min-height:300px}.modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem}.modal-error{display:flex;align-items:center;justify-content:center;min-height:200px;color:#dc3545;font-size:1.1rem}.modal-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#6c757d;font-style:italic}.markdown-content h1{color:#2c3e50;border-bottom:2px solid #667eea;padding-bottom:.5rem;margin-bottom:1rem}.markdown-content h2{color:#34495e;border-bottom:1px solid #bdc3c7;padding-bottom:.3rem;margin-top:2rem;margin-bottom:1rem}.markdown-content h3{color:#34495e;margin-top:1.5rem;margin-bottom:.75rem}.markdown-content h4,.markdown-content h5,.markdown-content h6{color:#2c3e50;margin-top:1rem;margin-bottom:.5rem}.markdown-content p{margin-bottom:1rem}.markdown-content ul,.markdown-content ol{margin-bottom:1rem;padding-left:2rem}.markdown-content li{margin-bottom:.5rem}.markdown-content blockquote{border-left:4px solid #667eea;padding-left:1rem;margin:1rem 0;background:#f8f9fa;padding:1rem;border-radius:4px}.markdown-content code{background:#f1f3f4;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#e91e63}.markdown-content pre{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1rem;overflow-x:auto;margin:1rem 0}.markdown-content pre code{background:none;padding:0;color:#2c3e50}.markdown-content table{border-collapse:collapse;width:100%;margin:1rem 0}.markdown-content th,.markdown-content td{border:1px solid #dee2e6;padding:.75rem;text-align:left}.markdown-content th{background:#f8f9fa;font-weight:600}.markdown-content a{color:#667eea;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-modal-footer{padding:.75rem 1.5rem;border-top:1px solid #e1e8ed;background:#f8f9fa;text-align:center}.modal-hint{margin:0;color:#6c757d;font-size:.875rem}.modal-hint kbd{background:#e9ecef;border:1px solid #ced4da;border-radius:3px;padding:.1rem .4rem;font-size:.8rem;font-family:monospace}@media (max-width: 768px){.markdown-modal-backdrop{padding:.5rem}.markdown-modal-content{max-width:95vw;max-height:95vh;width:auto}.markdown-modal-header{padding:.75rem 1rem;flex-direction:column;align-items:flex-start;gap:.75rem}.modal-actions{align-self:flex-end}.markdown-modal-title{font-size:1.1rem}.markdown-modal-body{padding:1rem}.markdown-modal-footer{padding:.5rem 1rem}}@media (max-width: 480px){.markdown-modal-content{max-width:98vw;max-height:98vh}.markdown-modal-header{padding:.5rem .75rem}.markdown-modal-title{font-size:1rem}.markdown-modal-body{padding:.75rem}.download-button{padding:.4rem .8rem;font-size:.8rem}}.modal-overlay{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .3s ease-out}.state-modal,.memories-modal{max-width:none}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa;gap:1rem}.modal-header-actions{display:flex;align-items:center;gap:.5rem}.modal-header h2{margin:0;color:#2c3e50;font-size:1.25rem;font-weight:600}.view-graph-button{background:#007bff;border:none;color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.25rem}.view-graph-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.view-graph-button:disabled{background:#6c757d;cursor:not-allowed;transform:none}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:.25rem;border-radius:4px;transition:all .2s;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:#e9ecef;color:#495057}.modal-close:focus{outline:2px solid #667eea;outline-offset:2px}.state-modal,.memories-modal{width:1600px;height:80vh;max-width:95vw;min-width:1200px}.memories-modal-body{display:flex;flex-direction:column;flex:1;overflow:hidden}.memories-navigation{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa}.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#6c757d}.breadcrumb-home{cursor:pointer;font-size:1.1rem;transition:transform .2s}.breadcrumb-home:hover{transform:scale(1.1)}.breadcrumb-separator{color:#adb5bd}.breadcrumb-path{font-family:Courier New,monospace;color:#495057;font-weight:500}.back-button{background:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s}.back-button:hover{background:#5a6268;transform:translate(-2px)}.memories-content{flex:1;overflow-y:auto;padding:1.5rem}.memory-step h3{margin:0 0 1.5rem;color:#2c3e50;font-size:1.25rem}.memory-classes-list,.memories-list,.memory-keys-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.memory-class-item,.memory-item,.memory-key-item{padding:1rem;border:1px solid #e1e8ed;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff;position:relative}.memory-item{display:flex;align-items:center;justify-content:space-between}.memory-item-content{flex:1;cursor:pointer}.memory-class-item:hover,.memory-item:hover,.memory-key-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;transform:translateY(-2px)}.memory-actions{display:flex;align-items:center;gap:.5rem;margin-left:1rem}.delete-memory-button{background:#ff4757;color:#fff;border:none;border-radius:6px;padding:.5rem;cursor:pointer;font-size:1rem;transition:all .2s;display:flex;align-items:center;justify-content:center;min-width:2rem;height:2rem}.delete-memory-button:hover{background:#ff3742;transform:scale(1.05)}.delete-memory-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.delete-memory-button:active{transform:scale(.95)}.memory-class-header,.memory-header,.memory-key-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.memory-class-icon,.memory-icon,.memory-key-icon{font-size:1.2rem}.memory-class-name,.memory-name,.memory-key-name{font-weight:600;color:#2c3e50;font-family:Courier New,monospace}.memory-class-description,.memory-description,.memory-key-description{color:#6c757d;font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.memory-class-count,.memory-keys-count{font-size:.8rem;color:#667eea;font-weight:500}.memory-details{background:#fff;border:1px solid #e1e8ed;border-radius:8px;overflow:hidden}.memory-details-header{background:#f8f9fa;padding:1rem;border-bottom:1px solid #e1e8ed}.memory-info{font-size:.9rem;line-height:1.6;color:#495057}.memory-info strong{color:#2c3e50;font-weight:600}.memory-content{padding:1rem}.memory-content h4{margin:0 0 .75rem;color:#495057;font-size:1rem;font-weight:600}.memory-content-empty,.no-memory-data{color:#6c757d;font-style:italic;text-align:center;padding:2rem;background:#f8f9fa;border-radius:6px}.memory-hint{margin-top:1rem;padding:1rem;background:#e7f3ff;border-left:4px solid #0066cc;border-radius:4px;text-align:left;font-style:normal;color:#333}.memory-hint p{margin:.5rem 0}.memory-hint ol{margin:.5rem 0;padding-left:1.5rem}.memory-hint li{margin:.25rem 0}.agent-config-modal{width:900px;height:80vh}.agent-config-body{display:flex;flex-direction:column;flex:1;overflow:hidden}.config-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #e1e8ed;background:#f8f9fa}.config-tab{flex:1 1 auto;min-width:100px;padding:1rem;border:none;background:transparent;cursor:pointer;font-size:.9rem;font-weight:500;color:#6c757d;transition:all .2s;border-bottom:3px solid transparent;white-space:nowrap}.config-tab:hover{background:#667eea1a;color:#495057}.config-tab.active{color:#667eea;border-bottom-color:#667eea;background:#fff}.config-content{flex:1;overflow-y:auto;padding:1.5rem}.config-section{max-width:100%}.config-section h3{margin:0 0 .5rem;color:#2c3e50;font-size:1.25rem}.section-description{color:#6c757d;font-size:.9rem;margin-bottom:1.5rem;line-height:1.4}.config-group{display:flex;flex-direction:column;gap:1rem}.config-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e1e8ed;border-radius:6px;cursor:pointer;transition:all .2s;background:#fff}.config-item:hover{border-color:#667eea;box-shadow:0 2px 4px #667eea1a}.config-item-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.config-label{font-weight:600;color:#2c3e50;font-size:.9rem}.config-description{font-size:.8rem;color:#6c757d;line-height:1.3}.config-item input[type=checkbox]{width:1.2rem;height:1.2rem;cursor:pointer;accent-color:#667eea}.config-item input[type=number]{width:80px;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.9rem;text-align:center}.config-item input[type=number]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.config-actions{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid #e1e8ed;background:#f8f9fa}.reset-button{background:#6c757d;color:#fff;border:none;padding:.75rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.reset-button:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.reset-button:disabled{opacity:.6;cursor:not-allowed}.primary-actions{display:flex;gap:1rem}.cancel-button{background:transparent;color:#6c757d;border:1px solid #ced4da;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.cancel-button:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.start-agent-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 6px #28a74533}.start-agent-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ea080);transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.start-agent-button:disabled{opacity:.8;cursor:not-allowed;transform:none}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.agent-config-modal{width:95vw;height:85vh}}@media (max-width: 768px){.agent-config-modal{width:95vw;height:90vh}.config-tabs{overflow-x:auto}.config-tab{min-width:120px;font-size:.8rem;padding:.75rem}.config-content{padding:1rem}.config-actions{flex-direction:column;gap:1rem;align-items:stretch}.primary-actions{order:-1}}@media (max-width: 480px){.agent-config-modal{width:98vw;height:95vh}.config-item{flex-direction:column;align-items:flex-start;gap:.75rem}.config-item input[type=number]{width:100px}}@media (max-width: 1800px){.memories-modal{width:95vw;height:80vh}}@media (max-width: 768px){.memories-modal{width:95vw;height:85vh}.memories-navigation{flex-direction:column;gap:1rem;align-items:flex-start}.memory-classes-list,.memories-list,.memory-keys-list{grid-template-columns:1fr}}@media (max-width: 480px){.memories-modal{width:98vw;height:90vh}.memories-content{padding:1rem}.memory-class-item,.memory-item,.memory-key-item{padding:.75rem}}.state-modal-body{display:flex;flex-direction:column;flex:1;overflow:hidden;padding:1.5rem;gap:1.5rem}.state-variable-selector{display:flex;flex-direction:column;gap:.75rem}.selector-label{font-weight:600;color:#2c3e50;font-size:1rem;margin-bottom:.5rem}.variable-dropdown{width:100%;padding:.875rem 3rem .875rem 1rem;border:2px solid #e1e8ed;border-radius:8px;font-size:.9rem;font-family:Courier New,monospace;background:#fff;color:#2c3e50;cursor:pointer;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem}.variable-dropdown:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.variable-dropdown:hover{border-color:#667eea;background-color:#f8f9fa}.variable-dropdown option{padding:.75rem;font-family:Courier New,monospace;color:#2c3e50;background:#fff;font-weight:500}.variable-dropdown option:hover{background:#f8f9fa;color:#667eea}.state-content-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#6c757d;text-align:center}.no-selection h3{margin:0 0 .5rem;color:#495057}.no-selection p{margin:0;font-size:.9rem}.error-message{padding:1rem;background:#f8d7da;color:#721c24;border-left:4px solid #dc3545;margin:1rem;border-radius:4px}.success-message{padding:1rem;background:#d4edda;color:#155724;border-left:4px solid #28a745;margin:1rem;border-radius:4px;text-align:center;font-weight:500}.loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.variable-details{padding:1.5rem;flex:1;overflow-y:auto}.variable-details-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e1e8ed}.variable-details-header h3{margin:0;color:#2c3e50;font-family:Courier New,monospace;display:flex;align-items:center;gap:.5rem}.variable-type-badge{background:#667eea;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-family:monospace;text-transform:uppercase;letter-spacing:.5px}.variable-details-description{color:#6c757d;font-size:.9rem;line-height:1.5;margin-bottom:1.5rem;padding:.75rem;background:#f8f9fa;border-radius:6px;border-left:4px solid #667eea}.variable-content{margin-top:1rem}.variable-content h4{margin:0 0 .75rem;color:#495057;font-size:1rem;font-weight:600}.variable-content-empty{color:#6c757d;font-style:italic;text-align:center;padding:2rem;background:#f8f9fa;border-radius:6px}.json-content{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1.5rem;overflow-x:auto;font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;color:#2c3e50;white-space:pre-wrap;word-break:break-word;max-height:60vh;overflow-y:auto}.markdown-content{line-height:1.6;color:#2c3e50}.text-content{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1.5rem;font-family:system-ui,-apple-system,sans-serif;font-size:.95rem;line-height:1.6;color:#2c3e50;white-space:pre-wrap;word-break:break-word;max-height:60vh;overflow-y:auto}.simple-value{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:1rem;font-family:Courier New,monospace;font-size:1rem;color:#2c3e50;font-weight:600}.dict-browser{width:100%;min-width:0}.dict-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.dict-controls{display:flex;gap:.5rem}.dict-view-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.dict-view-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.dict-view-button.active{background:linear-gradient(135deg,#48bb78,#38a169)}.dict-key-search{margin-bottom:1rem}.key-search-input{width:100%;padding:.75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#2d3748;font-size:.875rem;transition:all .2s}.key-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.dict-keys-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem;margin-bottom:1.5rem;max-height:400px;overflow-y:auto;padding:.5rem;background-color:#ffffff05;border-radius:6px}.dict-key-button{display:flex;flex-direction:column;align-items:flex-start;padding:.75rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left}.dict-key-button:hover{background-color:#ffffff1a;border-color:#667eea;transform:translateY(-1px)}.key-name{font-weight:600;color:#2d3748;margin-bottom:.25rem;word-break:break-word}.key-type{font-size:.75rem;color:#4a5568;background-color:#ffffff1a;padding:.125rem .375rem;border-radius:3px}.json-fallback{margin-top:1.5rem}.json-fallback h5{color:#2d3748;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.dict-key-content{width:100%}.dict-navigation{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.back-to-keys-button{background:linear-gradient(135deg,#4a5568,#2d3748);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.back-to-keys-button:hover{background:linear-gradient(135deg,#667eea,#764ba2);transform:translateY(-1px)}.current-key{font-weight:600;color:#2d3748;background-color:#ffffff1a;padding:.5rem 1rem;border-radius:6px}.agent-configuration-modal{width:90vw;max-width:1000px;height:85vh;max-height:none}.config-modal-body{display:flex;flex-direction:column;height:100%;overflow:hidden}.configuration-content{flex:1;overflow-y:auto;padding:1rem 0}.config-overview{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:1.5rem;border-radius:8px;margin-bottom:2rem;border:1px solid rgba(102,126,234,.2)}.config-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.875rem;color:#4a5568;font-weight:500}.summary-value{font-weight:600;color:#2d3748;font-size:1rem}.summary-value.configured{color:#48bb78}.config-sections{display:flex;flex-direction:column;gap:2rem}.config-section{background-color:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem}.config-section-title{color:#2d3748;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e2e8f0}.config-items{display:flex;flex-direction:column;gap:1rem}.config-item{display:grid;grid-template-columns:1fr 2fr;gap:1rem;align-items:start;padding:.75rem;background-color:#ffffff08;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.config-key{font-weight:600;color:#2d3748;word-break:break-word}.config-value-container{display:flex;align-items:center}.config-value{font-family:Courier New,monospace;font-size:.875rem;padding:.25rem .5rem;border-radius:4px;word-break:break-word}.config-value.null{color:#718096;font-style:italic}.config-value.boolean.true{color:#48bb78;background-color:#48bb781a}.config-value.boolean.false{color:#f56565;background-color:#f565651a}.config-value.number{color:#63b3ed;background-color:#63b3ed1a}.config-value.string{color:#68d391;background-color:#68d3911a}.config-value.array{flex-direction:column;align-items:flex-start;width:100%}.config-value.array-empty{color:#4a5568;background-color:#a0aec01a;font-style:italic}.array-length{color:#ed8936;background-color:#ed89361a;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;margin-bottom:.5rem}.array-content,.object-content{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:1rem;font-size:.8rem;color:#2d3748;white-space:pre-wrap;overflow-x:auto;width:100%;max-height:300px;overflow-y:auto;min-width:0}.config-value.object{width:100%}.raw-config{background-color:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;font-size:.75rem;color:#2d3748;white-space:pre-wrap;overflow-x:auto;max-height:400px;overflow-y:auto}.no-configuration{text-align:center;padding:3rem;color:#4a5568}.no-configuration h3{color:#2d3748;margin-bottom:1rem}.config-empty{padding:1rem;text-align:center;background-color:#ffffff05;border-radius:6px;border:1px dashed rgba(255,255,255,.1)}.empty-message{color:#4a5568;font-style:italic;font-size:.875rem}.coding-project-modal{width:600px;max-height:90vh;display:flex;flex-direction:column}.coding-project-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem;max-height:calc(90vh - 120px)}.coding-project-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#2c3e50;font-size:.9rem}.form-group .required{color:#dc3545}.form-group .recommended{color:#6c757d;font-weight:400;font-size:.85rem;font-style:italic}.form-input,.form-textarea,.form-select{width:100%;padding:.75rem;border:2px solid #e1e8ed;border-radius:6px;font-size:.9rem;font-family:system-ui,-apple-system,sans-serif;transition:all .2s;background:#fff;color:#2c3e50}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background:#f8f9fa;border-color:#dee2e6;color:#6c757d;cursor:not-allowed}.form-textarea{resize:vertical;min-height:100px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem;padding-right:2.5rem}.form-hint{margin-top:.25rem;padding:.5rem;background:#f8f9fa;border-left:3px solid #667eea;border-radius:4px;font-size:.85rem;color:#495057;line-height:1.4}.project-mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e1e8ed}.mode-tab{flex:1;padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.9rem;font-weight:500;color:#6c757d;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.mode-tab:hover:not(:disabled){background:#667eea0d;color:#495057}.mode-tab.active{color:#667eea;border-bottom-color:#667eea;background:#fff}.mode-tab:disabled{opacity:.6;cursor:not-allowed}.project-select-view{display:flex;flex-direction:column;gap:1rem}.search-container{margin-bottom:.5rem}.loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.loading-content p{color:#6c757d;font-size:.9rem}.no-projects-message{text-align:center;padding:3rem 1rem;color:#6c757d}.no-projects-message p{margin:.5rem 0;font-size:1rem}.hint-text{font-size:.9rem;font-style:italic;color:#adb5bd}.projects-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;padding:.5rem}.project-item{padding:1rem;border:2px solid #e1e8ed;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.project-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;transform:translateY(-1px)}.project-item.selected{border-color:#667eea;background:#667eea0d;box-shadow:0 2px 8px #667eea26}.project-item-header{display:flex;gap:1rem;align-items:flex-start}.project-radio{margin-top:.25rem;cursor:pointer;accent-color:#667eea}.project-item-content{flex:1}.project-name{margin:0 0 .5rem;color:#2c3e50;font-size:1rem;font-weight:600}.project-description{margin:0 0 .75rem;color:#6c757d;font-size:.9rem;line-height:1.4}.project-meta{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.project-access-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.project-access-badge[data-access=all]{background:#28a7451a;color:#155724}.project-access-badge[data-access=some]{background:#667eea1a;color:#667eea}.project-access-badge[data-access=admin]{background:#6c757d1a;color:#495057}.project-owner{font-size:.85rem;color:#6c757d}.project-access-users{display:flex;flex-direction:row;align-items:baseline;gap:.4rem;margin-top:.3rem;font-size:.75rem;width:100%}.access-users-label{color:#0009;font-weight:500;white-space:nowrap}.access-users-list{color:#000c;flex:1;word-break:break-word;line-height:1.3}.email-input-container{display:flex;gap:.5rem;margin-bottom:.75rem}.email-input{flex:1}.add-email-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;white-space:nowrap}.add-email-button:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#653a8f);transform:translateY(-1px)}.add-email-button:disabled{background:#cbd5e0;cursor:not-allowed;transform:none}.available-emails-container{margin-bottom:1rem}.available-emails-label{display:block;font-size:.85rem;color:#6c757d;margin-bottom:.5rem}.email-select{width:100%}.selected-emails-list{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:6px;border:1px solid #e1e8ed}.selected-emails-header{margin-bottom:.75rem;font-weight:600;color:#2c3e50;font-size:.9rem}.email-tags{display:flex;flex-wrap:wrap;gap:.5rem}.email-tag{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border:1px solid #667eea;border-radius:6px;font-size:.85rem}.email-tag span{color:#2c3e50}.remove-email-button{background:#ff4757;color:#fff;border:none;border-radius:50%;width:1.25rem;height:1.25rem;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0;line-height:1}.remove-email-button:hover:not(:disabled){background:#ff3742;transform:scale(1.1)}.remove-email-button:disabled{background:#cbd5e0;cursor:not-allowed}.feedback-modal{width:600px;max-height:90vh;display:flex;flex-direction:column}.feedback-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem;max-height:calc(90vh - 120px)}.feedback-context{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid rgba(102,126,234,.2)}.feedback-context p{margin:.5rem 0;color:#2c3e50}.feedback-context strong{color:#667eea;font-weight:600}.state-exploration-info{margin-top:1rem;padding:1rem;background:#e8f4fd;border:1px solid #b8daff;border-radius:8px}.state-exploration-info h4{margin:0 0 .75rem;color:#004085;font-size:1rem;font-weight:600}.state-description{color:#004085}.state-description p{margin:.5rem 0;font-size:.9rem;font-weight:500}.state-description ul{margin:.5rem 0;padding-left:1.5rem}.state-description li{margin:.25rem 0;font-size:.9rem}.state-description code{background:#f8f9fa;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.85rem;color:#e83e8c;border:1px solid #dee2e6}.feedback-form{display:flex;flex-direction:column;gap:1.5rem}.feedback-type-selection{display:flex;flex-direction:column;gap:1rem}.feedback-type-selection label{display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px solid #e1e8ed;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.feedback-type-selection label:hover{border-color:#667eea;background:#667eea0d}.feedback-type-selection input[type=radio]{width:1.2rem;height:1.2rem;cursor:pointer;accent-color:#667eea}.radio-label{font-weight:500;color:#2c3e50;font-size:1rem}.feedback-input-section{display:flex;flex-direction:column;gap:1.5rem}.general-feedback label{display:block;font-weight:600;color:#2c3e50;margin-bottom:.5rem}.general-feedback textarea{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;font-family:system-ui,-apple-system,sans-serif;resize:vertical;min-height:80px;transition:border-color .2s}.general-feedback textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.function-specific-feedback h4{margin:0 0 1rem;color:#2c3e50;font-size:1rem;font-weight:600}.function-feedback-description{margin:.5rem 0 1rem;color:#155724;font-size:.9rem;font-style:italic;background:#ffffffb3;padding:.75rem;border-radius:6px;border-left:3px solid #28a745}.general-feedback{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#fff3cd,#fef9e7);border-radius:8px;border:2px solid #ffc107;box-shadow:0 2px 8px #ffc1071a}.general-feedback h4{margin:0 0 1rem;color:#2c3e50;font-size:1rem;font-weight:600}.general-feedback-description{margin:.5rem 0 1rem;color:#856404;font-size:.9rem;font-style:italic;background:#ffffffb3;padding:.75rem;border-radius:6px;border-left:3px solid #ffc107}.add-function-feedback{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;background:linear-gradient(135deg,#e8f5e8,#f0f8f0);border-radius:8px;border:2px solid #28a745;box-shadow:0 2px 8px #28a7451a}.function-selection-row{display:flex;gap:.75rem;align-items:flex-start}.function-name-select{flex:1;padding:.75rem;border:2px solid #28a745;border-radius:6px;font-size:.9rem;font-family:Courier New,monospace;background:#fff;transition:border-color .2s;cursor:pointer;color:#2c3e50;font-weight:500}.function-name-select:focus{outline:none;border-color:#20c997;box-shadow:0 0 0 3px #28a74533}.function-name-select option{padding:.75rem;font-family:Courier New,monospace;color:#2c3e50;background:#fff;font-weight:500}.function-name-select option:hover{background:#e8f5e8;color:#155724}.function-name-input{padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;font-family:Courier New,monospace;transition:border-color .2s}.function-name-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.no-functions-message{padding:1rem;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;text-align:center}.no-functions-message p{margin:0;color:#856404;font-size:.9rem;font-style:italic}.function-feedback-input{padding:.75rem;border:2px solid #28a745;border-radius:6px;font-size:.9rem;font-family:system-ui,-apple-system,sans-serif;resize:vertical;min-height:100px;transition:border-color .2s;background:#fff;color:#2c3e50;font-weight:500}.function-feedback-input:focus{outline:none;border-color:#20c997;box-shadow:0 0 0 3px #28a74533;background:#f8fff8}.function-feedback-input:disabled{background:#f8f9fa;border-color:#dee2e6;color:#6c757d;cursor:not-allowed}.function-feedback-input::placeholder{color:#6c757d;font-style:italic}.feedback-input-container{margin-top:1rem}.feedback-input-label{display:block;margin-bottom:.5rem;font-weight:600;color:#155724;font-size:.9rem}.feedback-input-hint{margin-top:.5rem;padding:.5rem;background:#28a7451a;border-radius:4px;font-size:.8rem;color:#155724;font-style:italic}.add-feedback-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;align-self:flex-start;box-shadow:0 2px 8px #28a7454d;min-width:160px}.add-feedback-button:hover:not(:disabled){background:linear-gradient(135deg,#20c997,#17a2b8);transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.add-feedback-button:disabled{background:#cbd5e0;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.function-feedback-list{margin-top:1rem}.function-feedback-list h5{margin:0 0 .75rem;color:#2c3e50;font-size:.9rem;font-weight:600}.function-feedback-item{background:#fff;border:1px solid #e1e8ed;border-radius:6px;padding:1rem;margin-bottom:.75rem;transition:all .2s}.function-feedback-item:hover{border-color:#667eea;box-shadow:0 2px 4px #667eea1a}.function-feedback-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.function-feedback-header strong{color:#667eea;font-family:Courier New,monospace;font-size:.9rem}.remove-feedback-button{background:#ff4757;color:#fff;border:none;border-radius:50%;width:1.5rem;height:1.5rem;cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.remove-feedback-button:hover{background:#ff3742;transform:scale(1.1)}.function-feedback-item p{margin:0;color:#495057;font-size:.9rem;line-height:1.4}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid #e1e8ed}.submit-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;box-shadow:0 2px 6px #28a74533}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ea080);transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.submit-button:disabled{background:#cbd5e0;cursor:not-allowed;transform:none;box-shadow:none}.store-results-selection{padding:1.5rem;background:linear-gradient(135deg,#e8f4fd,#f0f8ff);border-radius:8px;border:2px solid #b8daff;box-shadow:0 2px 8px #b8daff33}.store-results-selection h4{margin:0 0 1rem;color:#004085;font-size:1.1rem;font-weight:600;text-align:center}.store-results-selection p{margin:0 0 1.5rem;color:#004085;font-size:.95rem;text-align:center;line-height:1.5}.store-results-options{display:flex;flex-direction:column;gap:1rem}.store-results-options label{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border:2px solid #b8daff;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff;font-weight:500;color:#004085}.store-results-options label:hover{border-color:#667eea;background:#667eea0d;transform:translateY(-1px);box-shadow:0 2px 8px #667eea1a}.store-results-options input[type=radio]{width:1.2rem;height:1.2rem;cursor:pointer;accent-color:#667eea}.store-results-options .radio-label{font-weight:500;color:#004085;font-size:1rem;flex:1}@media (max-width: 768px){.coding-project-modal{width:95vw;max-height:90vh}.coding-project-modal .modal-body{padding:1rem}.form-group{gap:.75rem}}@media (max-width: 480px){.coding-project-modal{width:98vw;max-height:95vh}}@media (max-width: 768px){.feedback-modal{width:95vw;max-height:90vh}.feedback-type-selection{gap:.75rem}.feedback-type-selection label{padding:.75rem}.store-results-selection{padding:1rem}.store-results-options label{padding:.75rem 1rem}.add-function-feedback{padding:.75rem}.function-selection-row{flex-direction:column;gap:.5rem}.add-feedback-button{width:100%;justify-content:center}.feedback-button{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-width:120px}.feedback-button:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#d63031);transform:translateY(-1px);box-shadow:0 4px 12px #ff6b6b4d}.feedback-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.modal-actions{flex-direction:column;gap:.75rem}.submit-button,.cancel-button{width:100%;justify-content:center}}@media (max-width: 480px){.feedback-modal{width:98vw;max-height:95vh}.feedback-context,.function-feedback-item{padding:.75rem}}@media (max-width: 1800px){.state-modal{width:95vw;height:85vh}}@media (max-width: 768px){.state-modal{width:95vw;height:90vh}.state-modal-body{padding:1rem;gap:1rem}.variable-details{padding:1rem}.variable-dropdown{font-size:.85rem;padding:.75rem 2.5rem .75rem .875rem}}@media (max-width: 480px){.modal-overlay{padding:.5rem}.state-modal{width:98vw;height:95vh}.modal-header{padding:.75rem 1rem}.modal-header h2{font-size:1.1rem}.state-modal-body{padding:.75rem;gap:.75rem}.variable-details{padding:.75rem}.variable-dropdown{font-size:.8rem;padding:.625rem 2.25rem .625rem .75rem}.json-content,.text-content,.simple-value{font-size:.8rem;padding:.75rem}}.hypothesis-search-modal-backdrop{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.hypothesis-search-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:700px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .3s ease-out}.hypothesis-search-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa}.hypothesis-search-modal-title{margin:0;color:#2c3e50;font-size:1.25rem;font-weight:600}.hypothesis-search-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:.25rem;border-radius:4px;transition:all .2s;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.hypothesis-search-modal-close:hover:not(:disabled){background:#e9ecef;color:#495057}.hypothesis-search-modal-close:disabled{opacity:.5;cursor:not-allowed}.hypothesis-search-form{display:flex;flex-direction:column;height:100%}.hypothesis-search-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e1e8ed}.section-title{margin:0 0 1rem;color:#2c3e50;font-size:1rem;font-weight:500}.form-input,.hypothesis-textarea{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-family:inherit;font-size:.9rem;transition:border-color .2s}.hypothesis-textarea{line-height:1.4;resize:vertical}.form-input:focus,.hypothesis-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.form-input:disabled,.hypothesis-textarea:disabled{background:#f8f9fa;opacity:.7}.form-help{display:block;margin-top:.25rem;color:#6c757d;font-size:.8rem;line-height:1.3}.checkbox-group{margin-top:.5rem}.checkbox-label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.9rem;color:#2c3e50}.checkbox-label input[type=checkbox]{margin:0;width:auto;flex-shrink:0}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.hypothesis-search-modal-footer{padding:1.5rem;border-top:1px solid #e1e8ed;background:#f8f9fa}.search-button{background:#28a745;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.search-button:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.search-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 768px){.hypothesis-search-modal-backdrop{padding:.5rem}.hypothesis-search-modal-content{max-width:95vw;max-height:95vh}.hypothesis-search-modal-header{padding:1rem}.hypothesis-search-modal-title{font-size:1.1rem}.hypothesis-search-modal-body,.hypothesis-search-modal-footer{padding:1rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.cancel-button,.search-button{width:100%;justify-content:center}}@media (max-width: 480px){.hypothesis-search-modal-content{max-width:98vw;max-height:98vh}.hypothesis-search-modal-header{padding:.75rem}.hypothesis-search-modal-title{font-size:1rem}.hypothesis-search-modal-body,.hypothesis-search-modal-footer{padding:.75rem}}.chatbot-container{display:flex;flex-direction:column;height:100%;min-height:0;background:linear-gradient(135deg,#2d3748,#4a5568);border-radius:12px;box-shadow:0 8px 32px #0006;border:1px solid #4a5568;overflow:hidden;margin:0;padding:0;gap:0}.chatbot-header{background:linear-gradient(135deg,#1a202c,#2d3748);color:#fff;padding:.5rem 1rem;flex-shrink:0;border-bottom:1px solid #4a5568;display:flex;flex-direction:column;gap:.5rem;position:relative;min-height:auto}.chatbot-header h2{display:none}.session-info{position:absolute;top:.5rem;right:1rem;font-size:.65rem;color:#ffffff80;background:#0003;padding:.2rem .5rem;border-radius:4px;font-family:Courier New,monospace;z-index:10}.header-left{display:flex;flex-direction:column;gap:.25rem;flex-shrink:0}.header-left h2{margin:0;font-size:1.25rem;color:#63b3ed;font-weight:600;line-height:1.2}.header-right{display:flex;align-items:center;gap:.75rem;flex:1;justify-content:flex-end}.header-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.agents-panel{margin-top:0;padding-top:0;border-top:none;width:100%}.agents-panel h3{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px}.agents-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.agent-card{display:flex;align-items:center;gap:.5rem;background:#ffffff1a;padding:.5rem;border-radius:4px;font-size:.8rem}.agent-emoji{font-size:1.2rem}.agent-info{display:flex;flex-direction:column;gap:.1rem}.agent-info strong{font-size:.85rem}.agent-info small{opacity:.8;font-size:.7rem}.chatbot-messages{flex:1;min-height:0;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.8rem;background:#1a1a1a;border-top:1px solid #4a5568;border-bottom:1px solid #4a5568;position:relative}.message{display:flex;max-width:80%}.message-user{align-self:flex-end}.message-bot{align-self:flex-start}.message-content{padding:1rem 1.25rem;border-radius:16px;position:relative;box-shadow:0 2px 8px #0003}.message-user .message-content{background:linear-gradient(135deg,#63b3edcc,#4299e1cc)!important;color:#fff!important;border-bottom-right-radius:6px}.message-bot .message-content{background:linear-gradient(135deg,#2d3748,#4a5568);color:#e2e8f0;border:1px solid #4a5568;border-bottom-left-radius:6px}.message-content p{margin:0 0 .5rem;line-height:1.4}.message-text{line-height:1.5}.message-text h1,.message-text h2,.message-text h3,.message-text h4,.message-text h5,.message-text h6{margin:.5rem 0 .3rem;color:inherit}.message-text h1{font-size:1.2rem;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:.2rem}.message-text h2{font-size:1.1rem}.message-text h3{font-size:1rem}.message-text h4,.message-text h5,.message-text h6{font-size:.95rem}.message-text p{margin:.5rem 0;line-height:1.5}.message-text p:first-child{margin-top:0}.message-text p:last-child{margin-bottom:0}.message-text ul,.message-text ol{margin:.5rem 0;padding-left:1.5rem}.message-text li{margin-bottom:.2rem;line-height:1.4}.message-text blockquote{border-left:3px solid #667eea;padding-left:.75rem;margin:.5rem 0;font-style:italic;opacity:.9}.message-text code{background:#0000001a;padding:.1rem .3rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.message-text pre{background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:.5rem;overflow-x:auto;margin:.5rem 0;font-size:.85rem}.message-text pre code{background:none;padding:0}.message-text table{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.9rem}.message-text th,.message-text td{border:1px solid rgba(0,0,0,.2);padding:.3rem .5rem;text-align:left}.message-text th{background:#0000000d;font-weight:600}.message-text a{color:#667eea;text-decoration:none}.message-text a:hover{text-decoration:underline}.message-text hr{border:none;border-top:1px solid rgba(0,0,0,.2);margin:.75rem 0}.message-bot .message-text code{background:#fff3}.message-bot .message-text pre{background:#ffffff1a;border-color:#fff3}.message-bot .message-text th{background:#ffffff1a}.message-bot .message-text td,.message-bot .message-text th,.message-bot .message-text hr{border-color:#ffffff4d}.message-time{font-size:.75rem;opacity:.8;margin-top:.5rem;display:block;color:#a0aec0}.message-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.message-footer .message-time{margin-top:0}.copy-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#a0aec0;cursor:pointer;font-size:.8rem;padding:.25rem .5rem;transition:all .2s ease;opacity:.7;min-width:28px;height:24px;display:flex;align-items:center;justify-content:center}.copy-button:hover{background:#fff3;border-color:#ffffff4d;opacity:1;transform:translateY(-1px)}.copy-button.copied{background:#22c55e33;border-color:#22c55e66;color:#22c55e;opacity:1}.copy-button.copied:hover{background:#22c55e4d;border-color:#22c55e80}.plain-text{white-space:pre-wrap;word-break:break-word;line-height:1.4}.message-user .message-text{line-height:1.5!important;font-weight:400!important;font-size:inherit!important;white-space:normal!important;word-wrap:break-word;overflow-wrap:break-word}.message-user .message-text *{color:inherit!important}.message-user .message-text strong,.message-user .message-text b{font-weight:700!important;color:#fff!important}.message-user .message-text em,.message-user .message-text i{font-style:italic!important}.message-user .message-text h1,.message-user .message-text h2,.message-user .message-text h3,.message-user .message-text h4,.message-user .message-text h5,.message-user .message-text h6{margin:.75rem 0 .5rem;color:#fff!important;font-weight:600!important;line-height:1.3}.message-user .message-text h1{font-size:1.3rem!important;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.3rem}.message-user .message-text h2{font-size:1.2rem!important}.message-user .message-text h3{font-size:1.1rem!important}.message-user .message-text h4,.message-user .message-text h5,.message-user .message-text h6{font-size:1rem!important}.message-user .message-text p{margin:.5rem 0;line-height:1.5;color:#fffffff2!important}.message-user .message-text p:first-child{margin-top:0}.message-user .message-text p:last-child{margin-bottom:0}.message-user .message-text ul,.message-user .message-text ol{margin:.5rem 0;padding-left:1.5rem;color:#fffffff2!important}.message-user .message-text li{margin-bottom:.3rem;line-height:1.4;color:#fffffff2!important}.message-user .message-text code{background-color:#ffffff26!important;color:#fff!important;padding:.15rem .4rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;font-weight:400}.message-user .message-text pre{background-color:#ffffff1a!important;border:1px solid rgba(255,255,255,.2);padding:.75rem;border-radius:6px;overflow-x:auto;margin:.75rem 0;color:#fffffff2!important}.message-user .message-text pre code{background-color:transparent!important;padding:0;color:#fffffff2!important}.message-user .message-text blockquote{border-left:3px solid rgba(255,255,255,.4);padding-left:1rem;margin:.75rem 0;font-style:italic;opacity:.95;color:#ffffffe6!important}.message-user .message-text a{color:#add8e6!important;text-decoration:underline}.message-user .message-text a:hover{color:#87cefa!important}.message-user .message-text table{border-collapse:collapse;margin:.75rem 0;width:100%;color:#fffffff2!important}.message-user .message-text th,.message-user .message-text td{border:1px solid rgba(255,255,255,.2);padding:.5rem;text-align:left;color:#fffffff2!important}.message-user .message-text th{background-color:#ffffff1a;font-weight:600;color:#fff!important}.message-user .message-text hr{border:none;border-top:1px solid rgba(255,255,255,.2);margin:1rem 0}.agent-label{font-size:.75rem;font-weight:700;color:#667eea;margin-bottom:.25rem}.message-user .agent-label{color:#fffc}.user-label{font-size:.75rem!important;font-weight:700!important;color:#ffffffe6!important;margin-bottom:.25rem!important;display:flex!important;align-items:center!important;gap:.25rem!important}.user-icon{font-size:.8rem!important}.typing-indicator{display:flex;gap:.2rem;align-items:center}.typing-indicator span{width:6px;height:6px;background:#999;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.agents-thinking{display:flex;flex-direction:column;gap:.3rem}.thinking-agent{font-size:.8rem;color:#667eea;opacity:.8}.chatbot-input{display:flex;padding:.75rem 1rem;background:linear-gradient(135deg,#1a202c,#2d3748);border-top:1px solid #4a5568;gap:.75rem;border-radius:0 0 12px 12px}.chatbot-input textarea{flex:1;padding:1rem 1.25rem;border:1px solid #4a5568;border-radius:12px;font-size:1rem;outline:none;background-color:#2d3748;color:#e2e8f0;transition:all .2s;resize:vertical;min-height:36px;max-height:120px;font-family:inherit;line-height:1.5}.chatbot-input textarea::placeholder{color:#a0aec0}.chatbot-input textarea:focus{border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed33;background-color:#4a5568}.chatbot-input textarea:disabled{opacity:.6;cursor:not-allowed}.chatbot-input button{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;padding:1rem 2rem;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s;box-shadow:0 2px 8px #63b3ed4d}.chatbot-input button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #63b3ed66;background:linear-gradient(135deg,#4299e1,#3182ce)}.chatbot-input button:disabled{opacity:.5;cursor:not-allowed;transform:none;background:linear-gradient(135deg,#4a5568,#2d3748)}.feedback-button{background:linear-gradient(135deg,#ff6b6b,#ee5a24)!important;color:#fff;border:none;padding:1rem 2rem;border-radius:25px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 2px 8px #ff6b6b4d}.feedback-button:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#d63031)!important;transform:translateY(-2px);box-shadow:0 6px 16px #ff6b6b66}.feedback-button:disabled{background:linear-gradient(135deg,#4a5568,#2d3748)!important;opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.session-info{display:block;color:#ffffffb3;font-size:.75rem;font-weight:400;line-height:1.3}.start-agent-button-header{padding:.5rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #667eea4d;white-space:nowrap}.start-agent-button-header:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.start-agent-button-header:disabled{opacity:.6;cursor:not-allowed;transform:none}.header-action-btn{padding:.4rem .75rem;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.header-action-btn:nth-child(2){background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 6px #667eea4d}.header-action-btn:nth-child(2):hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px);box-shadow:0 2px 8px #667eea66}.header-action-btn:nth-child(3){background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 2px 6px #28a7454d}.header-action-btn:nth-child(3):hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ea080);transform:translateY(-1px);box-shadow:0 2px 8px #28a74566}.header-action-btn.reconfigure-btn{background:linear-gradient(135deg,#fd7e14,#ff922b);box-shadow:0 2px 6px #fd7e144d}.header-action-btn.reconfigure-btn:hover:not(:disabled){background:linear-gradient(135deg,#e8590c,#fa5252);transform:translateY(-1px);box-shadow:0 2px 8px #fd7e1466}.header-action-btn.config-btn{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 2px 6px #007bff4d}.header-action-btn.config-btn:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px);box-shadow:0 2px 8px #007bff66}.header-action-btn.danger{background:linear-gradient(135deg,#dc3545,#c82333);box-shadow:0 2px 6px #dc35454d}.header-action-btn.danger:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);transform:translateY(-1px);box-shadow:0 2px 8px #dc354566}.header-action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.project-dropdown-header{padding:.4rem .75rem;border:1px solid #4a5568;border-radius:6px;background-color:#2d3748;color:#e2e8f0;font-size:.85rem;outline:none;transition:all .2s ease;min-width:180px;max-width:250px}.project-dropdown-header:focus{border-color:#63b3ed;box-shadow:0 0 0 2px #63b3ed33}.project-dropdown-header option{background-color:#2d3748;color:#e2e8f0}.chatbot-toolbar{background:linear-gradient(135deg,#1a202c,#2d3748);border-bottom:1px solid #4a5568;padding:.5rem 1.5rem;display:flex;align-items:center;gap:1rem;min-height:36px;flex-shrink:0}.toolbar-info{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.toolbar-label{color:#a0aec0;font-weight:500}.toolbar-value{color:#63b3ed;font-weight:600;padding:.2rem .6rem;background:#63b3ed26;border-radius:4px;border:1px solid rgba(99,179,237,.3)}.toolbar-status{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#a0aec0}.toolbar-error{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#fc8181}.loading-spinner-small{width:16px;height:16px;border:2px solid #4a5568;border-top:2px solid #63b3ed;border-radius:50%;animation:spin 1s linear infinite}.retry-button-small{padding:.2rem .5rem;background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;border-radius:4px;font-size:.7rem;cursor:pointer;transition:all .2s ease}.retry-button-small:hover{transform:translateY(-1px);box-shadow:0 2px 4px #63b3ed4d}.config-error-banner{background:#fc818126;color:#fc8181;padding:.5rem 1.5rem;font-size:.8rem;border-bottom:1px solid rgba(252,129,129,.3);flex-shrink:0}.session-initializing,.session-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:#a0aec0;background-color:#1a1a1a}.loading-spinner{width:40px;height:40px;border:4px solid #4a5568;border-top:4px solid #63b3ed;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.session-error p{color:#fc8181;margin-bottom:1rem}.retry-button{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s;box-shadow:0 2px 8px #63b3ed4d}.retry-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #63b3ed66;background:linear-gradient(135deg,#4299e1,#3182ce)}.chatbot-layout{display:flex;gap:1.5rem;width:100%;height:100%;padding:1.5rem;background-color:#1a1a1a}.chatbot-main{flex:1;min-width:0;display:flex;flex-direction:column;transition:all .3s ease}.chatbot-sidebar{flex:0 1 400px;min-width:300px;max-width:400px;background-color:#2d3748;border-radius:12px;padding:1rem;border:1px solid #4a5568;transition:all .3s ease;position:relative;overflow:hidden}.chatbot-sidebar.collapsed{flex:0 0 60px;min-width:60px;max-width:60px;padding:1rem .5rem;display:flex;align-items:flex-start;justify-content:center;overflow:visible}.instructions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #4a5568}.instructions-header h3{margin:0;font-size:1rem;color:#63b3ed;font-weight:600}.instructions-collapse-button{background:transparent;border:none;color:#a0aec0;cursor:pointer;font-size:1.2rem;padding:.25rem .5rem;border-radius:4px;transition:all .2s ease}.instructions-collapse-button:hover{background:#ffffff1a;color:#fff}.instructions-expand-button{background:linear-gradient(135deg,#63b3ed,#4299e1);border:none;color:#fff;cursor:pointer;font-size:1.5rem;padding:.75rem;border-radius:8px;width:48px;height:48px;display:flex!important;align-items:center;justify-content:center;box-shadow:0 4px 12px #63b3ed66;transition:all .3s ease;flex-shrink:0;z-index:10;position:relative;opacity:1;visibility:visible}.instructions-expand-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #63b3ed80;background:linear-gradient(135deg,#4299e1,#3182ce)}.instructions-expand-button:active{transform:scale(.95)}.instructions-expand-button:focus{outline:2px solid rgba(99,179,237,.5);outline-offset:2px}.instructions-toggle{display:none;position:fixed;top:50%;right:1rem;transform:translateY(-50%);z-index:1000;background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;border:none;border-radius:50%;width:56px;height:56px;cursor:pointer;box-shadow:0 4px 12px #63b3ed66;transition:all .3s ease;font-size:1.2rem}.instructions-toggle:hover{transform:translateY(-50%) scale(1.1);box-shadow:0 6px 16px #63b3ed80}.instructions-toggle.active{background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 12px #48bb7866}.instructions-overlay{display:none;position:fixed;inset:0;background:#000000b3;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.instructions-overlay.show{display:block;animation:fadeIn .3s ease}.instructions-sidebar-overlay{position:fixed;top:1rem;right:1rem;bottom:1rem;width:90%;max-width:400px;background-color:#2d3748;border-radius:12px;padding:1rem;border:1px solid #4a5568;z-index:1000;overflow-y:auto;box-shadow:0 8px 32px #0009;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 1200px){.chatbot-layout{gap:1rem;padding:1rem}.chatbot-sidebar{min-width:280px;max-width:350px}.chatbot-sidebar.collapsed{min-width:60px;max-width:60px}}@media (max-width: 1024px){.chatbot-layout{flex-direction:row;gap:0;padding:0;height:100vh;margin:0}.chatbot-main{flex:1;padding:.5rem}.chatbot-header{padding:.6rem 1rem;flex-wrap:wrap}.header-left h2{font-size:1.1rem}.session-info{font-size:.65rem}.header-controls{gap:.4rem}.header-action-btn{padding:.35rem .6rem;font-size:.75rem}.project-dropdown-header{min-width:140px;font-size:.8rem;padding:.35rem .6rem}.chatbot-toolbar{padding:.4rem 1rem;min-height:32px}.agents-panel{margin-top:.6rem;padding-top:.6rem}.agents-panel h3{font-size:.85rem;margin:0 0 .35rem}.agent-card{padding:.45rem;font-size:.8rem}.agent-info strong{font-size:.85rem}.agent-info small{font-size:.7rem}.chatbot-sidebar,.chatbot-sidebar.collapsed .instructions-expand-button{display:none!important}.instructions-toggle{display:block}.chatbot-messages{padding:1.25rem;gap:.9rem;max-height:60vh;flex:0 1 auto}.message-content{padding:.9rem 1.1rem}.message-text{font-size:.95rem;line-height:1.45}.message-text h1{font-size:1.15rem;margin:.45rem 0 .25rem}.message-text h2{font-size:1.05rem;margin:.45rem 0 .25rem}.message-text h3{font-size:.98rem;margin:.45rem 0 .25rem}.message-text h4,.message-text h5,.message-text h6{font-size:.93rem;margin:.45rem 0 .25rem}.message-text p{margin:.45rem 0;line-height:1.45}.message-text ul,.message-text ol{margin:.45rem 0;padding-left:1.3rem}.message-text li{margin-bottom:.18rem;line-height:1.35}.message-text blockquote{padding-left:.7rem;margin:.45rem 0}.message-text pre{padding:.45rem;margin:.45rem 0}.message-text table{font-size:.85rem;margin:.45rem 0}.message-text th,.message-text td{padding:.28rem .45rem}.message-time{font-size:.72rem;margin-top:.45rem}.message-footer{margin-top:.45rem}}@media (max-width: 768px){.chatbot-layout{padding:0}.chatbot-main{padding:.25rem}.chatbot-header{padding:.5rem .75rem;gap:.75rem}.header-left h2{font-size:1rem}.session-info{font-size:.6rem}.header-controls{flex-direction:column;align-items:stretch;width:100%;gap:.3rem}.header-action-btn{width:100%;justify-content:center}.project-dropdown-header{width:100%}.chatbot-toolbar{padding:.35rem .75rem;min-height:28px;font-size:.75rem}.toolbar-value{padding:.15rem .5rem;font-size:.75rem}.agents-panel{margin-top:.5rem;padding-top:.5rem}.agents-panel h3{font-size:.8rem;margin:0 0 .3rem}.agent-card{padding:.4rem;font-size:.75rem}.agent-info strong{font-size:.8rem}.agent-info small{font-size:.65rem}.chatbot-input{padding:1rem;gap:.75rem}.chatbot-input textarea{padding:.75rem 1rem;font-size:.9rem}.chatbot-input button{padding:.75rem 1.5rem;font-size:.9rem}.instructions-toggle{right:.5rem;width:48px;height:48px;font-size:1rem}.chatbot-messages{padding:.75rem;gap:.75rem;max-height:50vh;flex:0 1 auto}.message-content{padding:.75rem 1rem;border-radius:12px}.message-text{font-size:.9rem;line-height:1.4}.message-text h1{font-size:1.1rem;margin:.4rem 0 .2rem}.message-text h2{font-size:1rem;margin:.4rem 0 .2rem}.message-text h3{font-size:.95rem;margin:.4rem 0 .2rem}.message-text h4,.message-text h5,.message-text h6{font-size:.9rem;margin:.4rem 0 .2rem}.message-text p{margin:.4rem 0;line-height:1.4}.message-text ul,.message-text ol{margin:.4rem 0;padding-left:1.2rem}.message-text li{margin-bottom:.15rem;line-height:1.3}.message-text blockquote{padding-left:.6rem;margin:.4rem 0}.message-text pre{padding:.4rem;margin:.4rem 0}.message-text table{font-size:.8rem;margin:.4rem 0}.message-text th,.message-text td{padding:.25rem .4rem}.message-time{font-size:.7rem;margin-top:.4rem}.message-footer{margin-top:.4rem}.instructions-sidebar-overlay{top:.5rem;right:.5rem;bottom:.5rem;width:95%}}@media (max-width: 480px){.chatbot-main{padding:.1rem}.chatbot-header{padding:.75rem}.chatbot-header h2{font-size:1rem;margin:0 0 .2rem}.chatbot-header p{font-size:.7rem;margin:0 0 .4rem}.agents-panel{margin-top:.4rem;padding-top:.4rem}.agents-panel h3{font-size:.7rem;margin:0 0 .2rem}.agent-card{padding:.3rem;font-size:.7rem}.agent-info strong{font-size:.75rem}.agent-info small{font-size:.6rem}.chatbot-input{padding:.75rem;gap:.5rem;flex-direction:column}.chatbot-input textarea{padding:.75rem;font-size:.875rem;border-radius:12px}.chatbot-input button{padding:.75rem 1rem;font-size:.875rem;border-radius:12px;width:100%}.chatbot-messages{padding:.5rem;gap:.5rem;max-height:45vh;flex:0 1 auto}.message-content{padding:.6rem .8rem;border-radius:10px}.message-text{font-size:.85rem;line-height:1.3}.message-text h1{font-size:1rem;margin:.3rem 0 .15rem}.message-text h2{font-size:.95rem;margin:.3rem 0 .15rem}.message-text h3{font-size:.9rem;margin:.3rem 0 .15rem}.message-text h4,.message-text h5,.message-text h6{font-size:.85rem;margin:.3rem 0 .15rem}.message-text p{margin:.3rem 0;line-height:1.3}.message-text ul,.message-text ol{margin:.3rem 0;padding-left:1rem}.message-text li{margin-bottom:.1rem;line-height:1.2}.message-text blockquote{padding-left:.5rem;margin:.3rem 0}.message-text pre{padding:.3rem;margin:.3rem 0;font-size:.8rem}.message-text table{font-size:.75rem;margin:.3rem 0}.message-text th,.message-text td{padding:.2rem .3rem}.message-time{font-size:.65rem;margin-top:.3rem}.message-footer{margin-top:.3rem}.user-label{font-size:.7rem!important;margin-bottom:.3rem!important}.user-icon{font-size:.7rem!important}}@media (max-width: 360px){.chatbot-main{padding:.05rem}.chatbot-messages{padding:.4rem;gap:.4rem;max-height:40vh;flex:0 1 auto}.message-content{padding:.5rem .7rem;border-radius:8px}.message-text{font-size:.8rem;line-height:1.25}.message-text h1{font-size:.95rem;margin:.25rem 0 .1rem}.message-text h2{font-size:.9rem;margin:.25rem 0 .1rem}.message-text h3{font-size:.85rem;margin:.25rem 0 .1rem}.message-text h4,.message-text h5,.message-text h6{font-size:.8rem;margin:.25rem 0 .1rem}.message-text p{margin:.25rem 0;line-height:1.25}.message-text ul,.message-text ol{margin:.25rem 0;padding-left:.8rem}.message-text li{margin-bottom:.08rem;line-height:1.15}.message-text blockquote{padding-left:.4rem;margin:.25rem 0}.message-text pre{padding:.25rem;margin:.25rem 0;font-size:.75rem}.message-text table{font-size:.7rem;margin:.25rem 0}.message-text th,.message-text td{padding:.15rem .25rem}.message-time{font-size:.6rem;margin-top:.25rem}.message-footer{margin-top:.25rem}.user-label{font-size:.65rem!important;margin-bottom:.25rem!important}.user-icon{font-size:.65rem!important}.chatbot-input{padding:.5rem;gap:.4rem;flex-direction:column}.chatbot-input textarea{padding:.6rem;font-size:.8rem;border-radius:10px}.chatbot-input button{padding:.6rem .8rem;font-size:.8rem;border-radius:10px;width:100%}}.agent-controls{margin-top:.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem;width:100%}.agents-panel .agent-controls{grid-template-columns:repeat(2,1fr)}@media (min-width: 1200px){.agents-panel .agent-controls{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1600px){.agents-panel .agent-controls{grid-template-columns:repeat(4,1fr);gap:.6rem}}.agent-graph-button{padding:.5rem .75rem;background:linear-gradient(135deg,#9f8db1,#7e33ca);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #667eea33;font-size:.8rem;font-weight:500;min-width:0}.agent-graph-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d;background:linear-gradient(135deg,#dcccec,#5c16a1)}.agent-graph-button:active{transform:translateY(0);box-shadow:0 2px 6px #667eea33}.graph-icon{font-size:1.1rem}.agent-graph-button .expand-hint{display:none}.report-button{padding:.5rem .75rem;background:linear-gradient(135deg,#5bbb71,#128043);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #28a74533;font-size:.8rem;font-weight:500;min-width:0}.search-summaries-button{padding:.5rem .75rem;background:linear-gradient(135deg,#62a3e0,#1d62a3);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #28a74533;font-size:.8rem;font-weight:500;min-width:0}.report-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d;background:linear-gradient(135deg,#218838,#1ea080)}.report-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #28a74533}.report-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.report-icon{font-size:1.1rem}.report-button .expand-hint{display:none}.state-button{padding:.5rem .75rem;background:linear-gradient(135deg,#f87d18,#e63535);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #667eea33;font-size:.8rem;font-weight:500;min-width:0}.state-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4200064d;background:linear-gradient(135deg,#e63535,#f87d18)}.state-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #667eea33}.state-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.state-icon{font-size:1.1rem}.state-button .expand-hint{display:none}.memories-button{padding:.5rem .75rem;background:linear-gradient(135deg,#f87d18,#fd195e);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #e83e8c33;font-size:.8rem;font-weight:500;min-width:0}.memories-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2e001b4d;background:linear-gradient(135deg,#fd195e,#f87d18)}.memories-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #e83e8c33}.memories-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.memories-icon{font-size:1.1rem}.memories-button .expand-hint{display:none}.config-view-button{padding:.5rem .75rem;background:linear-gradient(135deg,#aeb8ca,#2d3748);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #4a556833;font-size:.8rem;font-weight:500;min-width:0}.config-view-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4a55684d;background:linear-gradient(135deg,#b1b0c9,#35302c)}.config-view-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #4a556833}.config-view-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.config-icon{font-size:1.1rem}.reconfigure-button{padding:.5rem .75rem;background:linear-gradient(135deg,#858585,#414141);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #f59e0b33;font-size:.8rem;font-weight:500;min-width:0}.reconfigure-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d;background:linear-gradient(135deg,#bebebe,#35302c)}.reconfigure-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #f59e0b33}.reconfigure-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.reconfigure-icon{font-size:1.1rem}.file-upload-button{padding:.5rem .75rem;background:linear-gradient(135deg,#5a88eb,#1449bd);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #8b5cf633;font-size:.8rem;font-weight:500;min-width:0}.file-upload-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d;background:linear-gradient(135deg,#bdccec,#2452b6)}.file-upload-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #8b5cf633}.file-upload-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.upload-icon{font-size:1.1rem}.agent-status{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0d;border-radius:6px;border:1px dashed rgba(255,255,255,.2);width:100%}.status-message{margin:0;color:#fffc;font-size:.85rem;text-align:center}.start-agent-main-button{padding:.6rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;box-shadow:0 4px 12px #667eea4d;font-size:.9rem;font-weight:600;min-width:140px}.start-agent-main-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.start-agent-main-button:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #667eea4d}.start-agent-main-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33;transform:none}.start-icon{font-size:1.1rem}.project-selection-section{display:flex;flex-direction:row;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.4rem .6rem;background:#ffffff0d;border-radius:6px;border:1px solid rgba(255,255,255,.1);width:100%}.start-project-button{padding:.5rem 1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;box-shadow:0 4px 12px #10b9814d;font-size:.85rem;font-weight:600;white-space:nowrap;flex-shrink:0}.start-project-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166;background:linear-gradient(135deg,#059669,#047857)}.start-project-button:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #10b9814d}.start-project-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33;transform:none}.project-icon{font-size:1.1rem}.current-project-info{display:flex;flex-direction:row;align-items:baseline;gap:.5rem;padding:.4rem .6rem;background:#63b3ed1a;border-radius:6px;border-left:3px solid #63b3ed;flex:1;min-width:0}.project-label{font-size:.8rem;color:#ffffffb3;font-weight:500;white-space:nowrap;line-height:1.2;display:flex;align-items:baseline}.project-name{font-size:.8rem;color:#63b3ed;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;cursor:help;display:flex;align-items:baseline}.project-description{display:none}.vectorize-button{flex:1;padding:.6rem .8rem;background:linear-gradient(135deg,#6f42c1,#e83e8c);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #6f42c133;font-size:.85rem}.general-report-button{padding:.5rem .75rem;background:linear-gradient(135deg,#55df9a,#139e3d);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.4rem;font-family:inherit;box-shadow:0 2px 6px #17a2b833;font-size:.8rem;font-weight:500;min-width:0}.general-report-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #17a2b84d;background:linear-gradient(135deg,#138496,#0f6674)}.general-report-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #17a2b833}.general-report-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.vectorize-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6f42c14d;background:linear-gradient(135deg,#5a2d91,#d91a72)}.vectorize-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #6f42c133}.vectorize-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);box-shadow:0 2px 6px #6c757d33}.vectorize-icon{font-size:1.1rem}.vectorize-button .expand-hint{display:none}.new-icon,.create-icon,.clear-icon{font-size:1.1rem}.new-chat-button .expand-hint,.create-project-button .expand-hint,.clear-history-button .expand-hint{display:none}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.panel-header h3{margin:0;color:#63b3ed;font-size:1.2rem;font-weight:600}.project-controls{display:flex;flex-direction:column;gap:1rem}.project-actions{display:flex;gap:.5rem;flex-wrap:wrap}.project-selector{display:flex;flex-direction:column;gap:.5rem}.project-selector label{font-size:.85rem;color:#a0aec0;font-weight:500}.project-dropdown{padding:.5rem .75rem;border:1px solid #4a5568;border-radius:6px;background-color:#2d3748;color:#e2e8f0;font-size:.85rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.project-dropdown:focus{border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed33}.project-dropdown option{background-color:#2d3748;color:#e2e8f0}.current-project{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#63b3ed1a;border:1px solid rgba(99,179,237,.2);border-radius:6px;font-size:.85rem}.current-project-label{color:#a0aec0;font-weight:500}.current-project-name{color:#63b3ed;font-weight:600}.loading-projects,.projects-error{padding:1rem;text-align:center;color:#a0aec0;font-size:.85rem}.projects-error{color:#fc8181;background:#fc81811a;border:1px solid rgba(252,129,129,.2);border-radius:6px}.start-agent-button{padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px #667eea33;display:flex;align-items:center;gap:.4rem}.start-agent-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.start-agent-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);transform:none;box-shadow:0 1px 2px #0000001a}.status-message{margin:0 0 .5rem;color:#a0aec0;font-size:.8rem;text-align:center}.status-message.success{color:#48bb78}.error-message{background:#fc81811a;color:#fc8181;padding:.5rem .75rem;border-radius:6px;font-size:.8rem;margin-top:.5rem;border:1px solid rgba(252,129,129,.2)}.project-actions .new-chat-button,.project-actions .create-project-button,.project-actions .clear-history-button{flex:1;min-width:100px;padding:.5rem .75rem;font-size:.8rem}.new-chat-button{flex:1;padding:.6rem .8rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.5rem;box-shadow:0 2px 4px #667eea33}.new-chat-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.create-project-button{flex:1;padding:.6rem .8rem;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.5rem;box-shadow:0 2px 4px #28a74533}.create-project-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d;background:linear-gradient(135deg,#218838,#1ea080)}.clear-history-button{flex:1;padding:.6rem .8rem;background:linear-gradient(135deg,#dc3545,#fd7e14);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.5rem;box-shadow:0 2px 4px #dc354533}.clear-history-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d;background:linear-gradient(135deg,#c82333,#e8590c)}.new-chat-button:active:not(:disabled),.create-project-button:active:not(:disabled),.clear-history-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #667eea33}.new-chat-button:disabled,.create-project-button:disabled,.clear-history-button:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6c757d,#868e96);transform:none;box-shadow:0 1px 2px #0000001a}.scroll-to-bottom-button{position:absolute;bottom:20px;right:20px;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 12px #667eea4d;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center}.scroll-to-bottom-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66;background:linear-gradient(135deg,#5a67d8,#6b46c1)}.scroll-to-bottom-button:active{transform:translateY(0);box-shadow:0 2px 6px #667eea4d}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0;border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem}.modal-header h3{margin:0;color:#2d3748;font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;color:#718096;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.modal-close:hover{background:#f7fafc;color:#2d3748}.modal-body{padding:0 1.5rem;flex:1}.form-group label{display:block;margin-bottom:.5rem;color:#2d3748;font-weight:500;font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#2d3748;background:#fff;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0aec0}.form-group textarea{resize:vertical;min-height:80px}.error-message{background:#fed7d7;color:#c53030;padding:.75rem;border-radius:8px;font-size:.875rem;margin-top:1rem;border:1px solid #feb2b2}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e2e8f0;margin-top:1.5rem}.cancel-button{padding:.75rem 1.5rem;background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.create-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #28a74533}.create-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1ea080);box-shadow:0 4px 8px #28a7454d;transform:translateY(-1px)}.create-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 1px 2px #0000001a}.success-notification{position:fixed;top:20px;right:20px;z-index:1000;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px #48bb7866;animation:slideInRight .3s ease;max-width:400px;border:1px solid rgba(255,255,255,.2)}.success-content{display:flex;align-items:center;gap:.75rem}.success-icon{font-size:1.2rem;flex-shrink:0}.success-text{flex:1;font-weight:500;font-size:.9rem}.success-close{background:none;border:none;color:#fffc;font-size:1rem;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;flex-shrink:0}.success-close:hover{background:#ffffff1a;color:#fff}@media (max-width: 640px){.modal-overlay{padding:.5rem}.modal-content{max-height:95vh}.modal-header,.modal-body,.modal-footer{padding-left:1rem;padding-right:1rem}.modal-footer{flex-direction:column;gap:.5rem}.cancel-button,.create-button{width:100%}}@media (max-width: 768px){.agent-controls{gap:.4rem;flex-direction:row;flex-wrap:wrap}.agent-graph-button,.report-button,.state-button,.memories-button,.config-view-button,.vectorize-button,.general-report-button,.new-chat-button,.create-project-button,.clear-history-button{padding:.5rem;font-size:.8rem;min-width:48px;justify-content:center}.agent-graph-button span:not(.graph-icon),.report-button span:not(.report-icon),.state-button span:not(.state-icon),.memories-button span:not(.memories-icon),.config-view-button span:not(.config-icon),.vectorize-button span:not(.vectorize-icon),.general-report-button span:not(.report-icon),.new-chat-button span:not(.new-icon),.create-project-button span:not(.create-icon),.clear-history-button span:not(.clear-icon){display:none}.graph-icon,.report-icon,.state-icon,.memories-icon,.config-icon,.vectorize-icon,.new-icon,.create-icon,.clear-icon{font-size:1.2rem;margin:0}}@media (max-width: 480px){.agent-controls{gap:.3rem;flex-direction:row;flex-wrap:wrap;justify-content:center}.agent-graph-button,.report-button,.state-button,.memories-button,.config-view-button,.vectorize-button,.general-report-button,.new-chat-button,.create-project-button,.clear-history-button{padding:.4rem;font-size:.75rem;min-width:44px;flex:0 0 auto}.graph-icon,.report-icon,.state-icon,.memories-icon,.config-icon,.vectorize-icon,.new-icon,.create-icon,.clear-icon{font-size:1.1rem}}.hypothesis-modal-backdrop{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.hypothesis-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:scale(.9) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.hypothesis-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e1e8ed;background:#f8f9fa}.hypothesis-modal-title{margin:0;color:#2c3e50;font-size:1.25rem;font-weight:600}.hypothesis-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;padding:.25rem;border-radius:4px;transition:all .2s;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.hypothesis-modal-close:hover:not(:disabled){background:#e9ecef;color:#495057}.hypothesis-modal-close:disabled{opacity:.5;cursor:not-allowed}.hypothesis-form{display:flex;flex-direction:column;height:100%}.hypothesis-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;padding:.75rem;margin-bottom:1rem;color:#721c24}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#2c3e50;font-size:.9rem}.required{color:#dc3545}.hypothesis-textarea{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:6px;font-family:inherit;font-size:.9rem;line-height:1.4;resize:vertical;transition:border-color .2s}.hypothesis-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.hypothesis-textarea:disabled{background:#f8f9fa;opacity:.7}.metadata-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.add-metadata-button{background:#28a745;color:#fff;border:none;padding:.4rem .8rem;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s}.add-metadata-button:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.add-metadata-button:disabled{opacity:.5;cursor:not-allowed}.metadata-entries{display:flex;flex-direction:column;gap:.5rem}.metadata-entry{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.metadata-inputs{display:flex;gap:.5rem;flex:1}.metadata-key-input,.metadata-value-input{flex:1;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.85rem;transition:border-color .2s}.metadata-key-input:focus,.metadata-value-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.metadata-key-input:disabled,.metadata-value-input:disabled{background:#f8f9fa;opacity:.7}.remove-metadata-button{background:#dc3545;color:#fff;border:none;padding:.5rem;border-radius:4px;cursor:pointer;transition:all .2s;font-size:.8rem;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.remove-metadata-button:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.remove-metadata-button:disabled{opacity:.5;cursor:not-allowed}.hypothesis-modal-footer{padding:1.5rem;border-top:1px solid #e1e8ed;background:#f8f9fa}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-bottom:.75rem}.cancel-button{background:#6c757d;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.9rem}.cancel-button:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.submit-button{background:#667eea;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.submit-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.loading-spinner-small{width:14px;height:14px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-hint{margin:0;color:#6c757d;font-size:.8rem;text-align:center}.form-hint kbd{background:#e9ecef;border:1px solid #ced4da;border-radius:3px;padding:.1rem .4rem;font-size:.75rem;font-family:monospace}@media (max-width: 768px){.hypothesis-modal-backdrop{padding:.5rem}.hypothesis-modal-content{max-width:95vw;max-height:95vh}.hypothesis-modal-header{padding:1rem}.hypothesis-modal-title{font-size:1.1rem}.hypothesis-modal-body,.hypothesis-modal-footer{padding:1rem}.metadata-inputs{flex-direction:column}.form-actions{flex-direction:column-reverse}.cancel-button,.submit-button{width:100%;justify-content:center}}@media (max-width: 480px){.hypothesis-modal-content{max-width:98vw;max-height:98vh}.hypothesis-modal-header{padding:.75rem}.hypothesis-modal-title{font-size:1rem}.hypothesis-modal-body,.hypothesis-modal-footer{padding:.75rem}}.file-upload-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-in-out}.file-upload-modal-content{background-color:#1e1e1e;border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease-out;color:#e0e0e0}.file-upload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #333}.file-upload-modal-header h2{margin:0;font-size:24px;color:#fff}.file-upload-modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:#999;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.file-upload-modal-close:hover{background-color:#333;color:#fff}.file-upload-modal-body{padding:24px}.upload-section{margin-bottom:32px}.drop-zone{border:2px dashed #555;border-radius:8px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .3s;background-color:#252525;margin-bottom:16px}.drop-zone:hover{border-color:#4caf50;background-color:#2a2a2a}.drop-zone.dragging{border-color:#4caf50;background-color:#4caf501a;transform:scale(1.02)}.drop-zone.has-file{border-color:#2196f3;background-color:#2196f31a}.drop-zone-icon{font-size:48px;margin-bottom:16px}.drop-zone-text{font-size:18px;font-weight:600;margin:0 0 8px;color:#fff}.drop-zone-subtext{font-size:14px;color:#999;margin:0 0 16px}.drop-zone-hint{font-size:12px;color:#666;margin:0}.remove-file-button{margin-top:16px;padding:8px 16px;background-color:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.remove-file-button:hover{background-color:#d32f2f}.upload-message{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:14px;animation:slideDown .3s ease-out}.upload-message.error{background-color:#f4433626;border:1px solid #f44336;color:#ff6b6b}.upload-message.success{background-color:#4caf5026;border:1px solid #4CAF50;color:#66bb6a}.upload-button{width:100%;padding:14px;background-color:#4caf50;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s}.upload-button:hover:not(:disabled){background-color:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.upload-button:disabled{background-color:#666;cursor:not-allowed;opacity:.6}.existing-files-section{border-top:1px solid #333;padding-top:24px}.existing-files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.existing-files-header h3{margin:0;font-size:18px;color:#fff}.toggle-files-button{background-color:#333;color:#e0e0e0;border:none;border-radius:4px;padding:6px 12px;cursor:pointer;font-size:13px;transition:background-color .2s}.toggle-files-button:hover{background-color:#444}.files-list{animation:slideDown .3s ease-out}.loading-files,.no-files{text-align:center;padding:24px;color:#999;font-size:14px}.files-grid{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:#252525;border-radius:6px;transition:background-color .2s}.file-item:hover{background-color:#2a2a2a}.file-icon{font-size:24px;flex-shrink:0}.file-details{flex:1;min-width:0}.file-name{font-size:14px;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{font-size:12px;color:#999;margin-top:4px}.file-date{opacity:.7}.delete-file-button{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s;flex-shrink:0}.delete-file-button:hover{background-color:#f4433626;transform:scale(1.1)}.file-upload-modal-footer{padding:16px 24px;border-top:1px solid #333;background-color:#1a1a1a;border-radius:0 0 12px 12px}.footer-note{margin:0;font-size:13px;color:#999;text-align:center}.footer-note code{background-color:#333;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;color:#4caf50}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}@media (max-width: 768px){.file-upload-modal-content{width:95%;max-height:95vh}.drop-zone{padding:32px 16px}.drop-zone-icon{font-size:36px}.drop-zone-text{font-size:16px}.file-name{font-size:13px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:scale(.95) translateY(-10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.info-modal-backdrop{position:fixed;inset:0;background-color:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:fadeIn .2s ease-out;overflow-y:auto}.info-modal-content{background:linear-gradient(135deg,#1a202c,#2d3748);border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:90vw;width:1000px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .3s ease-out;border:1px solid #4a5568}.info-modal-title{margin:0;color:#e2e8f0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.info-modal-close{background:transparent;border:none;color:#cbd5e0;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.info-modal-close:hover{background:#4a5568;color:#fff;transform:rotate(90deg)}.info-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;border-bottom:2px solid #4a5568;background:linear-gradient(135deg,#2d3748,#1a202c);gap:1rem;flex-shrink:0}.info-modal-subtitle{margin:.5rem 0 0;color:#cbd5e0;font-size:1rem;line-height:1.5;font-weight:400}.info-modal-tabs{display:flex;border-bottom:2px solid #4a5568;background:#1a202c;padding:0;overflow-x:auto;gap:0;flex-shrink:0;position:sticky;top:0;z-index:10}.info-modal-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:#cbd5e0;padding:.75rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;transition:all .2s ease;white-space:nowrap;min-width:fit-content;flex-shrink:0}.info-modal-tab:hover{background:#60a5fa1a;color:#e2e8f0}.info-modal-tab.active{color:#60a5fa;border-bottom-color:#60a5fa;background:#60a5fa0d}.tab-icon{font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center}.tab-label{font-size:.875rem;line-height:1.2}.info-modal-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;display:flex;flex-direction:column;min-height:0}.info-modal-tab-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:2rem;min-height:0;text-align:left}.info-modal-graph-image{width:100%;height:auto;max-width:100%;max-height:50vh;object-fit:contain;border-radius:8px;border:1px solid #4a5568;background:#1a202c;padding:1rem;display:block;margin:0 auto;cursor:zoom-in;transition:transform .2s ease}.info-modal-graph-image.large-graph{max-width:70%;max-height:45vh}.info-modal-graph-image:hover{border-color:#60a5fa}.info-modal-graph-image:active{cursor:zoom-out}.graph-image-error{color:#cbd5e0;text-align:center;padding:2rem;font-style:italic}.graph-zoom-hint{text-align:center!important;color:#9ca3af;font-size:.875rem;margin-top:.5rem;font-style:italic}.info-modal-tab-content h1{color:#60a5fa;font-size:1.75rem;margin:0 0 1.5rem;font-weight:600;border-bottom:2px solid #4a5568;padding-bottom:.5rem}.info-modal-tab-content h2{color:#60a5fa;font-size:1.5rem;margin:2rem 0 1rem;font-weight:600}.info-modal-tab-content h3{color:#90cdf4;font-size:1.25rem;margin:1.5rem 0 .75rem;font-weight:600}.info-modal-tab-content p{color:#cbd5e0;line-height:1.8;margin:1.25rem 0;text-align:left;font-size:.875rem;max-width:none}.info-modal-tab-content ul,.info-modal-tab-content ol{color:#cbd5e0;margin:.5rem 0;padding-left:1.5rem;text-align:left;list-style-position:outside;background:transparent!important;border:none!important;padding-top:0;padding-bottom:0;box-shadow:none!important;font-size:.875rem}.info-modal-tab-content ul ul,.info-modal-tab-content ol ol,.info-modal-tab-content ul ol,.info-modal-tab-content ol ul{margin:.25rem 0;padding-left:1.25rem;background:transparent!important;border:none!important}.info-modal-tab-content li{margin:.25rem 0;line-height:1.7;display:list-item;background:transparent!important;border:none!important;padding:0;box-shadow:none!important;font-size:.875rem}.info-callout ul,.info-callout ol{background:transparent!important;border:none!important;margin:.5rem 0;padding-left:1.5rem;font-size:.875rem}.info-callout li{background:transparent!important;border:none!important;margin:.25rem 0;font-size:.875rem}.template-header{display:flex;justify-content:flex-end;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #4a5568}.copy-template-button{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.copy-template-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.copy-template-button:active{transform:translateY(0)}.copy-template-button .copy-icon{font-size:1rem;line-height:1}.info-modal-tab-content code{background:#2d3748;color:#fbbf24;padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;border:1px solid #4a5568}.info-modal-tab-content pre{background:#2d3748;border:1px solid #4a5568;border-radius:8px;padding:1rem;overflow-x:auto;margin:1rem 0}.info-modal-tab-content pre code{background:transparent;color:#cbd5e0;padding:0;border:none}.info-modal-tab-content strong{color:#e2e8f0;font-weight:600}.info-modal-tab-content em{color:#a0aec0;font-style:italic}.info-modal-tab-content blockquote{border-left:4px solid #60a5fa;padding-left:1rem;margin:1rem 0;color:#a0aec0;font-style:italic}.info-modal-tab-content hr{border:none;border-top:2px solid #4a5568;margin:2rem 0;background:none}.tooltip-wrapper{position:relative;display:inline;cursor:help}.tooltip-icon{display:inline-block;width:16px;height:16px;font-size:.7rem;margin-left:.2rem;vertical-align:super;opacity:.7;transition:opacity .2s ease}.tooltip-wrapper:hover .tooltip-icon{opacity:1}.tooltip-tech{color:#fbbf24}.tooltip-langgraph{color:#60a5fa}.tooltip-content{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.5rem;padding:.75rem 1rem;background:#1a202c;border:1px solid #60a5fa;border-radius:8px;color:#e2e8f0;font-size:.85rem;line-height:1.5;width:max-content;max-width:300px;z-index:1000;box-shadow:0 4px 12px #00000080;animation:tooltipFadeIn .2s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.info-callout{padding:1rem 1.25rem;border-radius:8px;margin:1.5rem 0;display:flex;align-items:flex-start;gap:.75rem;border-left:4px solid}.info-callout p{margin:0;flex:1}.callout-icon{font-size:1.5rem;flex-shrink:0}.info-callout-tip{background:#60a5fa1a;border-color:#60a5fa}.info-callout-warning{background:#fbbf241a;border-color:#fbbf24}.info-callout-info{background:#90cdf41a;border-color:#90cdf4}.info-callout-success{background:#34d3991a;border-color:#34d399}.info-highlight{background:#60a5fa26;border-left:3px solid #60a5fa;padding:.5rem 1rem;margin:1rem 0;border-radius:4px}.info-highlight strong{color:#60a5fa}.info-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-top:2px solid #4a5568;background:linear-gradient(135deg,#2d3748,#1a202c);flex-shrink:0}.info-modal-close-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.info-modal-close-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.info-modal-hint{color:#9ca3af;font-size:.875rem;margin:0}.info-modal-hint kbd{background:#4a5568;color:#e2e8f0;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.875rem;border:1px solid #718096}.info-modal-body::-webkit-scrollbar,.info-modal-tab-content::-webkit-scrollbar,.info-modal-tabs::-webkit-scrollbar{width:8px;height:8px}.info-modal-body::-webkit-scrollbar-track,.info-modal-tab-content::-webkit-scrollbar-track,.info-modal-tabs::-webkit-scrollbar-track{background:#1a202c;border-radius:4px}.info-modal-body::-webkit-scrollbar-thumb,.info-modal-tab-content::-webkit-scrollbar-thumb,.info-modal-tabs::-webkit-scrollbar-thumb{background:#4a5568;border-radius:4px}.info-modal-body::-webkit-scrollbar-thumb:hover,.info-modal-tab-content::-webkit-scrollbar-thumb:hover,.info-modal-tabs::-webkit-scrollbar-thumb:hover{background:#718096}@media (max-width: 768px){.info-modal-content{max-width:95vw;max-height:95vh}.info-modal-header{padding:1rem 1.5rem}.info-modal-title{font-size:1.5rem}.info-modal-tabs{overflow-x:auto}.info-modal-tab{padding:.625rem .875rem;font-size:.8125rem}.tab-icon{font-size:.9rem}.tab-label{font-size:.8125rem}.info-modal-tab-content{padding:1.5rem}.info-modal-footer{flex-direction:column;gap:.5rem;align-items:stretch}.info-modal-close-button{width:100%}}.App{min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0}.welcome-container{max-width:1200px;margin:0 auto;padding:1.5rem 2rem 2rem;color:#e2e8f0}.welcome-container h1{font-size:2rem;margin-bottom:.5rem;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-subtitle{font-size:1rem;color:#cbd5e0;margin-bottom:1.25rem}.welcome-agents-stack{display:flex;flex-direction:column;gap:.625rem;max-width:1000px;margin-left:auto;margin-right:auto;padding-bottom:2rem}.welcome-agent-card{background:linear-gradient(135deg,#1a202c,#2d3748);border-radius:10px;padding:.625rem 1rem .5rem;border:1px solid #4a5568;box-shadow:0 4px 6px #0000004d;transition:all .3s ease;display:flex;flex-direction:column;gap:.375rem}.welcome-agent-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0006;border-color:#60a5fa}.welcome-agent-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.agent-card-title-link{text-decoration:none;display:block;transition:all .2s ease;flex:1}.agent-card-title-link:hover{transform:translate(4px)}.agent-card-title-link h3{margin:0;color:#60a5fa;font-size:1.25rem;font-weight:600;cursor:pointer;transition:color .2s ease}.agent-card-title-link:hover h3{color:#3b82f6}.agent-card-description{color:#cbd5e0;line-height:1.35;margin:0;font-size:.875rem}.agent-card-button{padding:.4rem 1.125rem;border-radius:6px;font-size:.825rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;text-align:center;border:none;display:inline-block;white-space:nowrap}.agent-card-button.secondary{background:transparent;color:#60a5fa;border:2px solid #60a5fa}.agent-card-button.secondary:hover{background:#60a5fa1a;border-color:#3b82f6;color:#3b82f6}@media (max-width: 768px){.welcome-container{padding:1rem}.welcome-container h1{font-size:1.75rem}.welcome-subtitle{font-size:.9rem}.welcome-agents-stack{gap:.625rem;padding-bottom:1rem}.welcome-agent-card{padding:.5rem .875rem .375rem}.welcome-agent-card-header{flex-direction:column;align-items:stretch;gap:.375rem}.agent-card-title-link h3{font-size:1.125rem}.agent-card-description{font-size:.8rem}.agent-card-button{width:100%;padding:.5rem;font-size:.8rem}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#e0e0e0;background-color:#1a1a1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}a{font-weight:500;color:#63b3ed;text-decoration:inherit;transition:color .2s}a:hover{color:#90cdf4}body{margin:0;min-width:320px;min-height:100vh;background-color:#1a1a1a;color:#e0e0e0}#root{width:100%;height:100vh;margin:0;padding:0}h1{font-size:3.2em;line-height:1.1;color:#63b3ed}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0003}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000004d;background:linear-gradient(135deg,#4299e1,#3182ce)}button:focus,button:focus-visible{outline:2px solid #63b3ed;outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed;transform:none}
