code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}.App,body{min-height:100vh;overflow-x:hidden;width:100%}.App{display:flex;flex-direction:column}.page-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #fff3;box-shadow:0 2px 10px #0000001a;padding:.5rem 2rem;position:-webkit-sticky;position:sticky;text-align:center;top:0;z-index:100}.page-header h1{color:#000;font-size:1.2rem;font-weight:600;margin:0}.app-container{display:flex;flex:1 1;height:calc(100vh - 100px);max-width:100vw;overflow-x:hidden;position:relative;width:100%}.left-panel{background:#fff;border-radius:0 16px 16px 0;bottom:0!important;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;height:100%!important;left:0!important;max-height:100%!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto;padding:1rem!important;position:absolute!important;top:0!important;width:35%!important}.left-panel,.left-panel *{box-sizing:border-box!important}.left-panel *{max-width:100%!important}.panel-header{border-bottom:1px solid #e2e8f0;margin-bottom:.5rem;padding-bottom:.25rem;text-align:center}.panel-header h1{color:#1e293b;font-size:1.1rem;font-weight:600;line-height:1.2;margin:0}.prompt-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:.75rem}.prompt-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:.5rem}.prompt-content{display:flex;flex-direction:column;gap:1rem}.prompt-content label{color:#374151;font-size:.9rem;font-weight:600}.prompt-textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.4;min-height:120px;padding:.75rem;resize:vertical;transition:border-color .2s ease;width:100%}.prompt-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.prompt-help{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem}.prompt-help p{color:#374151;font-size:.8rem;font-weight:600;margin-bottom:.25rem}.prompt-variables-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.prompt-help ul{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin:0;padding:0}.prompt-help li{color:#4b5563;font-size:.75rem;margin:0}.prompt-help code{background:#f1f5f9;border-radius:4px;color:#1e293b;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;padding:.2rem .4rem}.reset-prompt-button{background:#3b82f6;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.65rem;padding:.25rem .5rem;transition:background-color .2s ease;white-space:nowrap}.reset-prompt-button:hover{background:#2563eb}.upload-section{margin-bottom:1rem}.upload-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:.5rem}.chunk-settings,.rag-settings{margin-bottom:1rem}.rag-settings{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem}.chunk-settings h3,.rag-settings h3{color:#374151;font-size:1rem;font-weight:600;margin-bottom:.5rem}.settings-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.setting-item{display:flex;flex-direction:column;gap:.25rem}.setting-item label{color:#4b5563;font-size:.8rem;font-weight:500}.setting-input{border:1px solid #d1d5db;border-radius:4px;font-size:.9rem;padding:.5rem}.settings-note{color:#6b7280;font-size:.75rem;font-style:italic;margin-top:.5rem}.upload-area{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:6px;cursor:pointer;display:flex;justify-content:center;min-height:80px;padding:.75rem;text-align:center;transition:all .3s ease}.upload-area:hover{background:#f0f9ff;border-color:#3b82f6}.upload-area.drag-active{background:#eff6ff;border-color:#3b82f6;transform:scale(1.02)}.upload-content{align-items:center;display:flex;flex-direction:column;gap:.5rem}.upload-icon{color:#64748b;margin-bottom:0}.upload-content h4{color:#1e293b;font-size:.9rem;font-weight:600;margin:0}.upload-content p{color:#64748b;font-size:.7rem;line-height:1.3;margin:0}.upload-button{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.8rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.upload-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.upload-button:disabled{background:#94a3b8;cursor:not-allowed;transform:none}.upload-button.small{font-size:.8rem;padding:.5rem 1rem}.chunk-preview{color:#94a3b8!important;font-size:.65rem!important}.documents-section{margin-bottom:.5rem}.policy-documents-compact{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-wrap:wrap;font-size:.75rem;gap:.5rem;padding:.5rem}.documents-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.document-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.document-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a}.document-info{align-items:center;display:flex;flex:1 1;gap:.75rem}.document-info h4{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.document-info p{color:#64748b;font-size:.85rem;margin:.25rem 0 0}.document-meta{color:#64748b;display:block;font-size:.8rem;margin-top:.25rem}.no-documents{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;margin:1rem 0;padding:2rem;text-align:center}.no-documents h3{color:#475569;font-size:1.2rem;font-weight:600;margin-bottom:.75rem}.no-documents p{color:#64748b;font-size:.9rem;line-height:1.5;margin-bottom:1.5rem}.no-documents .btn{font-size:.9rem;font-weight:500;padding:.75rem 1.5rem}.no-documents-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.no-documents-actions .btn{min-width:140px}.policy-documents{margin:1rem 0}.policy-documents h3{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.vector-store-badge{background:#10b981;border-radius:4px;color:#fff;display:inline-block;font-size:.7rem;margin-top:.25rem;padding:.2rem .5rem}.delete-button{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s ease}.delete-button:hover{background:#dc2626;transform:scale(1.05)}.policy-section{margin-bottom:2rem}.policy-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.policy-upload{min-height:140px}.policy-document{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;padding:1rem}.policy-document .document-info h4{color:#1e293b;font-size:.9rem;font-weight:600;margin:0}.policy-document .document-info p{color:#64748b;font-size:.8rem;margin:.25rem 0 0}.policy-mode-section{margin-bottom:2rem}.policy-mode-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.mode-toggle{display:flex;flex-direction:column;gap:.5rem}.toggle-label{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.5rem;transition:background .2s ease}.toggle-label:hover{background:#f1f5f9}.toggle-label input[type=checkbox]{display:none}.toggle-slider{background:#cbd5e1;border-radius:12px;height:24px;position:relative;transition:background .3s ease;width:50px}.toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:20px}.toggle-label input[type=checkbox]:checked+.toggle-slider{background:#10b981}.toggle-label input[type=checkbox]:checked+.toggle-slider:before{transform:translateX(26px)}.toggle-label input[type=checkbox]:disabled+.toggle-slider{background:#e2e8f0;opacity:.5}.toggle-text{color:#1e293b;font-size:.9rem;font-weight:500}.mode-hint{color:#64748b;font-size:.8rem;font-style:italic;margin-top:.5rem}.right-panel{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0!important;box-sizing:border-box!important;display:flex;flex-direction:column;height:100%!important;max-height:100%!important;min-height:100%!important;overflow-x:hidden;position:absolute!important;right:0!important;top:0!important;width:65%!important}.chat-container{background:#fff;border-radius:16px;box-shadow:0 10px 25px #0000001a;display:flex;flex:1 1;flex-direction:column;margin:2rem;min-width:0;overflow:hidden}.chat-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;gap:1rem;padding:1.5rem;text-align:center}.chat-header,.chat-header h3{align-items:center;display:flex}.chat-header h3{color:#1e293b;font-size:1.3rem;font-weight:600;gap:.5rem;margin:0}.no-doc-hint{color:#64748b;font-size:.9rem;font-style:italic}.policy-mode-indicator{align-items:center;display:flex}.mode-badge{background:#10b981;border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:.4rem .8rem}.model-selection{align-items:center;display:flex;gap:.5rem}.model-selection label{color:#64748b;font-size:.9rem;font-weight:500}.ai-provider-info{margin-bottom:15px}.ai-provider-status{display:flex;flex-direction:column;gap:8px}.provider-details{display:flex;flex-direction:column;gap:6px}.provider-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.provider-badge.openai{background:linear-gradient(45deg,#10b981,#059669);color:#fff}.provider-badge.ollama{background:linear-gradient(45deg,#8b5cf6,#7c3aed);color:#fff}.model-info{background:#3b82f60d;border:1px solid #3b82f633;border-radius:6px;padding:8px}.model-info small{color:#64748b;line-height:1.4}.cost-info{background:#10b9811a;border:1px solid #10b9814d;border-radius:6px;padding:4px 8px}.cost-info small{color:#10b981;font-weight:500}.loading{color:#9ca3af;font-style:italic}.chat-messages{gap:1rem;overflow-y:auto;padding:1.5rem}.chat-messages,.empty-chat{display:flex;flex:1 1;flex-direction:column}.empty-chat{align-items:center;color:#64748b;justify-content:center;text-align:center}.empty-chat h3{color:#1e293b;font-size:1.2rem;margin:1rem 0 .5rem}.upload-first{color:#ef4444;font-weight:500;margin-top:.5rem}.getting-started-steps{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;max-width:300px;padding:1.5rem}.step-item{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;display:flex;gap:.75rem;padding:.5rem;transition:all .2s ease}.step-item:hover{border-color:#3b82f6;box-shadow:0 4px 8px #0000001a;transform:translateX(-2px)}.step-number{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;flex-shrink:0;font-size:.8rem;height:24px;width:24px}.step-text{color:#334155;flex:1 1;font-size:.9rem;font-weight:500}.step-pointer{animation:pulse 2s infinite;font-size:1.2rem}.message{display:flex;flex-direction:column;gap:.5rem;max-width:100%}.message.user{align-items:flex-end}.message.assistant{align-items:flex-start}.message-content{word-wrap:break-word;border-radius:12px;line-height:1.5;max-width:80%;padding:1rem}.message.user .message-content{background:#3b82f6;border-bottom-right-radius:4px;color:#fff}.message.assistant .message-content{background:#f1f5f9;border-bottom-left-radius:4px;color:#1e293b}.search-metadata{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:.5rem;padding:.5rem 1rem}.message-time,.search-metadata small{color:#64748b;font-size:.8rem}.message-time{margin-top:.25rem}.chat-input{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:1rem;padding:1.5rem}.chat-input textarea{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-family:inherit;font-size:.9rem;max-height:120px;min-height:44px;padding:.75rem;resize:none;transition:border-color .2s ease}.chat-input textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.chat-input textarea:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.send-button{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;justify-content:center;min-width:44px;padding:.75rem;transition:all .2s ease}.send-button:hover:not(:disabled){background:#2563eb;transform:scale(1.05)}.send-button:disabled{background:#94a3b8;cursor:not-allowed;transform:none}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.message-content table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:1rem 0;overflow:hidden;width:100%}.message-content th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:.9rem;font-weight:600;padding:.75rem;text-align:left}.message-content td{border-bottom:1px solid #e2e8f0;color:#374151;font-size:.9rem;padding:.75rem}.message-content tr:last-child td{border-bottom:none}.message-content tr:hover{background:#f8fafc}.message-content pre{background:#1e293b;border-radius:8px;color:#e2e8f0;font-size:.85rem;line-height:1.5;margin:1rem 0;overflow-x:auto;padding:1rem}.message-content code{background:#f1f5f9;border-radius:4px;color:#dc2626;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;padding:.2rem .4rem}.message-content ol,.message-content ul{margin:1rem 0;padding-left:1.5rem}.message-content li{line-height:1.6;margin:.5rem 0}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{color:#1e293b;font-weight:600;margin:1.5rem 0 1rem}.message-content h1{font-size:1.5rem}.message-content h2{font-size:1.3rem}.message-content h3{font-size:1.1rem}.message-content p{color:#374151;line-height:1.6;margin:1rem 0}.message-content blockquote{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:0 8px 8px 0;color:#64748b;font-style:italic;margin:1rem 0;padding:1rem}.debug-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:1rem;padding:1rem}.debug-info summary{color:#495057;cursor:pointer;font-weight:600;margin-bottom:1rem}.debug-info summary:hover{color:#007bff}.debug-content h4{border-bottom:1px solid #dee2e6;color:#495057;font-size:.9rem;font-weight:600;margin:1rem 0 .5rem;padding-bottom:3px}.debug-content h4:first-child{margin-top:0}.debug-stats{background-color:#e3f2fd;border-left:3px solid #2196f3;border-radius:3px;margin:5px 0;padding:8px}.debug-stats p{color:#1976d2;font-size:11px;margin:3px 0}.debug-question{background:#fff3e0;border:1px solid #ffeaa7;border-left:3px solid #ff9800;color:#e65100}.debug-context,.debug-prompt,.debug-response{word-wrap:break-word;background:#f1f3f4;border:1px solid #dadce0;border-radius:4px;color:#202124;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;margin:.5rem 0;max-height:300px;overflow-y:auto;padding:.75rem;white-space:pre-wrap}.debug-prompt{background:#fff3cd;border-color:#ffeaa7}.debug-response{background:#d1ecf1;border-color:#bee5eb}.debug-context{background:#e2e3e5;border-color:#d6d8db}@media (max-width:480px){body{font-size:14px;overflow-x:hidden}.page-header{padding:.75rem 1rem}.page-header h1{font-size:1.1rem}.app-container{flex-direction:column;height:auto;min-height:calc(100vh - 80px)}.left-panel{border-radius:0!important;margin-bottom:1rem;min-height:auto!important;padding:1rem!important}.left-panel,.right-panel{max-height:none!important;position:relative!important;width:100%!important}.right-panel{background:#fff!important;border-radius:16px 16px 0 0!important;margin-top:0;min-height:60vh!important}.chat-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:1rem}.control-grid{gap:1rem!important;grid-template-columns:1fr!important}.control-knob-container{padding:1rem}.debug-info{margin-top:.5rem}.debug-info details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem}.debug-info summary{color:#64748b;cursor:pointer;font-size:.9rem;font-weight:600;padding:.25rem}.chat-input{font-size:16px!important;padding:1rem!important}.chat-input input{font-size:16px!important;padding:.75rem!important}.chat-input button{font-size:.9rem!important;padding:.75rem 1rem!important}.sample-questions{gap:.5rem!important}.sample-question-button{font-size:.9rem!important;line-height:1.3!important;padding:.75rem!important}.upload-area{font-size:.9rem!important;padding:1.5rem 1rem!important}.search-process-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:.5rem;padding:.5rem}.search-section-header{font-size:.9rem;padding:.5rem}.search-metadata{background:#f1f5f9;border-radius:6px;font-size:.8rem;margin-top:.5rem;padding:.5rem}}@media (min-width:481px) and (max-width:768px){.app-container{flex-direction:column;height:auto;min-height:calc(100vh - 100px)}.left-panel{border-radius:0!important;margin-bottom:1rem;min-height:auto!important;padding:1.5rem!important}.left-panel,.right-panel{max-height:none!important;position:relative!important;width:100%!important}.right-panel{min-height:60vh!important}.chat-container{margin:1.5rem}.control-grid{gap:1rem!important;grid-template-columns:1fr 1fr!important}}@media (min-width:769px) and (max-width:1024px){.left-panel{border-radius:0 12px 12px 0;width:40%!important}.right-panel{width:60%!important}.chat-container{margin:1.5rem}}.upload-area{min-height:140px;padding:1.5rem 1rem}.upload-content h4{font-size:1rem}.chat-container{margin:1rem}.chat-header{align-items:flex-start;flex-direction:column;padding:1rem}.model-selection{justify-content:space-between;width:100%}.model-dropdown{flex:1 1;margin-left:.5rem}.chat-input,.chat-messages{padding:1rem}.message-content{max-width:90%}.chunk-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:1rem 0;overflow:hidden}.chunk-summary{align-items:center;background:#fff;color:#1e293b;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.chunk-summary:hover{background:#f1f5f9;color:#3b82f6}.arrow{color:#64748b;display:inline-block;font-size:.8rem;transition:transform .2s ease}.arrow.open{color:#3b82f6;transform:rotate(90deg)}.chunk-content{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1rem}.chunk-item{background:#fff;border-left:3px solid #3b82f6;border-radius:6px;margin-bottom:.75rem;padding:.75rem}.chunk-item:last-child{margin-bottom:0}.chunk-item h4{color:#3b82f6;font-size:.9rem;margin:0 0 .5rem}.chunk-item p{color:#4b5563;font-size:.85rem;line-height:1.4;margin:.25rem 0}.chunk-item p strong{color:#1f2937}.search-process-details{margin:1rem 0}.search-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.5rem;overflow:hidden}.search-section-header{align-items:center;background:#fff;border-bottom:1px solid #0000;color:#1e293b;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.search-section-header:hover{background:#f1f5f9;color:#3b82f6}.search-section-content{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1rem}.process-step{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:.5rem}.step-number{border-radius:4px;font-size:.75rem;min-width:60px;padding:.25rem .5rem;text-align:center}.step-content{color:#4b5563;flex:1 1;font-size:.85rem;line-height:1.5}.selected-chunk{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #10b981;border-radius:6px;margin-bottom:.75rem;padding:.75rem}.selected-chunk:last-child{margin-bottom:0}.chunk-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.chunk-rank{background:#10b981;border-radius:50%;color:#fff;font-size:.75rem;font-weight:600;min-width:24px;padding:.25rem .5rem;text-align:center}.chunk-id{color:#374151;font-weight:600}.chunk-score{background:#ecfdf5;border-radius:4px;color:#065f46;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.chunk-text{color:#4b5563;font-size:.85rem;font-style:italic;line-height:1.5}.similarity-chunk{background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:.5rem;padding:.5rem}.similarity-chunk:last-child{margin-bottom:0}.similarity-chunk.above-threshold{background:#f0fdf4;border-left:4px solid #10b981}.similarity-chunk.below-threshold{background:#fef2f2;border-left:4px solid #ef4444}.similarity-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.similarity-score{color:#374151;font-size:.9rem;font-weight:600}.chunk-preview,.threshold-indicator{font-size:.8rem}.chunk-preview{color:#6b7280;font-style:italic;line-height:1.4}.test-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.test-action-card{background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;padding:.75rem;text-align:center;transition:all .3s ease}.test-action-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.test-action-card h3{align-items:center;color:#1e293b;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;margin:0 0 .25rem}.test-action-card p{color:#64748b;font-size:.8rem;line-height:1.3;margin:0 0 .5rem}.test-action-button{background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.4rem .8rem;transition:all .2s ease}.test-action-button:hover{background:#2563eb}.test-simple-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-top:.75rem}.simple-action{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s ease}.simple-action:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px)}.simple-action-icon{align-items:center;color:#64748b;display:flex;flex-shrink:0;justify-content:center}.simple-action:hover .simple-action-icon{color:#3b82f6}.simple-action-text{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.simple-action-title{color:#1e293b;font-size:.8rem;font-weight:600;line-height:1.2}.simple-action-desc{color:#64748b;font-size:.7rem;line-height:1.3}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:80vh;max-width:90vw;overflow-y:auto;padding:1.5rem;position:relative;width:600px}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.modal-header h2{color:#1e293b;font-size:1.2rem;font-weight:600;margin:0}.modal-close{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:all .2s ease}.modal-close:hover{background:#f1f5f9;color:#1e293b}.modal-body{color:#374151;line-height:1.6}.modal-body h3{color:#1e293b;font-size:1rem;font-weight:600;margin:1.5rem 0 .5rem}.modal-body h3:first-child{margin-top:0}.modal-body p{font-size:.9rem;margin:.5rem 0}.modal-body ul{margin:.5rem 0;padding-left:1.5rem}.modal-body li{font-size:.9rem;margin:.25rem 0}.modal-body code{background:#f1f5f9;border-radius:4px;color:#dc2626;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;padding:.2rem .4rem}.confirmation-modal{max-width:400px}.confirmation-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.confirm-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.confirm-button:hover{background:#2563eb;transform:translateY(-1px)}.cancel-button{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.cancel-button:hover{background:#4b5563;transform:translateY(-1px)}.prompt-view-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1rem}.prompt-header{align-items:center;display:flex;justify-content:space-between}.prompt-header h2{color:#111827;font-size:1.1rem;font-weight:600;margin:0}.view-prompt-link{color:#3b82f6;cursor:pointer;font-size:.9rem;font-weight:500;text-decoration:underline;transition:color .2s ease}.view-prompt-link:hover{color:#2563eb}.prompt-modal{max-height:80vh;max-width:800px;width:90%}.prompt-display{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;max-height:60vh;overflow-y:auto;padding:1rem}.prompt-display pre{word-wrap:break-word;color:#374151;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.6;margin:0;white-space:pre-wrap}.setting-item-with-tooltip{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.setting-label-group{align-items:center;display:flex;gap:.5rem;min-width:150px}.help-icon{color:#6b7280;cursor:help;font-size:.85rem;position:relative}.help-icon:hover{color:#374151}.help-tooltip{word-wrap:break-word;background-color:#1f2937;border-radius:6px;bottom:125%;box-shadow:0 4px 6px #0000001a;color:#fff;font-size:.75rem;left:50%;line-height:1.4;max-width:400px;min-width:280px;opacity:0;padding:.75rem;position:absolute;transform:translateX(-50%);transition:opacity .3s,visibility .3s;visibility:hidden;white-space:normal;width:320px;z-index:1000}.help-tooltip:after{border:5px solid #0000;border-top-color:#1f2937;content:"";left:50%;margin-left:-5px;position:absolute;top:100%}.help-icon:hover .help-tooltip{opacity:1;visibility:visible}.setting-control{flex:1 1;max-width:200px}.quick-actions-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1rem}.quick-actions-section h2{color:#111827;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.quick-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.quick-action{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;padding:.75rem;transition:all .2s ease}.quick-action:hover{background:#e2e8f0;transform:translateY(-1px)}.learning-steps{max-width:none;padding:2rem}.step-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.step-header{gap:1rem;margin-bottom:1rem}.step-header,.step-number{align-items:center;display:flex}.step-number{background:#3b82f6;border-radius:16px;color:#fff;font-size:.85rem;font-weight:600;height:32px;justify-content:center;min-width:80px;padding:0 12px;white-space:nowrap}.step-header h3{color:#111827;font-size:1.25rem;font-weight:600;margin:0}.step-content{margin-left:3rem}.step-description{color:#4b5563;font-size:.95rem;line-height:1.5;margin-bottom:1rem}.step-list{color:#6b7280;font-size:.9rem;line-height:1.6;margin:1rem 0;padding-left:1.25rem}.step-list li{margin-bottom:.5rem}.step-button{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;margin:1.5rem 0;padding:.875rem 1.5rem;transition:all .2s ease}.step-button:hover{background:#2563eb;transform:translateY(-1px)}.step-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.step-hint{font-size:.85rem;font-style:italic}.step-complete,.step-hint{color:#059669;margin-top:.75rem}.step-complete{font-size:.9rem;font-weight:500}.learning-steps-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1rem}.learning-steps-panel h2{color:#111827;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.step-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.step-panel:last-child{margin-bottom:0}.step-panel-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.step-indicator{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.85rem;font-weight:600;height:24px;justify-content:center;width:24px}.step-indicator.completed,.step-indicator.current{background:#059669}.step-indicator.disabled{background:#9ca3af}.step-panel-header h3{color:#111827;flex:1 1;font-size:1rem;font-weight:600;margin:0}.step-check{color:#059669;font-size:1.1rem}.step-panel-content{margin-left:2rem}.step-panel-description{color:#4b5563;font-size:.85rem;margin-bottom:.5rem}.step-panel-process{background:#f3f4f6;border-left:3px solid #3b82f6;border-radius:4px;color:#6b7280;font-family:monospace;font-size:.75rem;line-height:1.4;margin-bottom:.75rem;padding:.4rem .6rem}.step-panel-details{color:#6b7280;font-size:.8rem;margin:.5rem 0;padding-left:1rem}.step-panel-details li{margin-bottom:.25rem}.step-panel-button{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;margin-top:.75rem;padding:.5rem 1rem;transition:all .2s ease}.step-panel-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.step-panel-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.step-panel-examples{margin-top:.75rem}.step-panel-examples p{color:#374151;font-size:.8rem;font-weight:500;margin-bottom:.5rem}.example-questions{display:flex;flex-direction:column;gap:.25rem}.example-questions span{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#6b7280;font-size:.75rem;font-style:italic;padding:.25rem .5rem}.step-panel-disabled{color:#9ca3af;font-size:.8rem;font-style:italic;margin-top:.75rem}.step-panel-note{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:6px;color:#059669;font-size:.8rem;line-height:1.4;margin-top:.75rem;padding:.5rem}.predefined-questions{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.question-button{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;cursor:pointer;font-size:.85rem;font-weight:500;padding:.75rem;text-align:left;transition:all .2s ease}.question-button:hover{background:#dbeafe;border-color:#93c5fd;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.question-button:active{transform:translateY(0)}.disabled-input{background:#f8fafc!important;border-color:#e2e8f0!important}.input-replacement{align-items:center;display:flex;height:60px;justify-content:center;padding:1rem}.input-replacement p{color:#6b7280;font-size:.9rem;font-style:italic;margin:0;text-align:center}.control-panel{background:linear-gradient(145deg,#1e293b,#334155);border:2px solid #475569;border-radius:12px;box-shadow:0 8px 25px #0000004d,inset 0 1px 0 #ffffff1a;color:#fff;margin-bottom:1.5rem;overflow:visible;padding:1.5rem}.control-panel-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.control-panel-title{align-items:center;display:flex}.control-panel-title h2{color:#e2e8f0;font-size:1.1rem;font-weight:700;letter-spacing:1px;margin:0;text-transform:uppercase}.control-panel-indicator{align-items:center;color:#94a3b8;display:flex;font-size:.7rem;font-weight:600;gap:.5rem;letter-spacing:.5px}.status-light{background:#ef4444;border-radius:50%;box-shadow:0 0 8px #ef444499;height:8px;width:8px}.status-light.active{animation:pulse 2s infinite;background:#22c55e;box-shadow:0 0 8px #22c55e99}.status-light.large{box-shadow:0 0 12px #22c55ecc;height:12px;width:12px}.control-panel-status{align-items:center;display:flex;justify-content:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.control-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);overflow:visible}.control-knob-container{align-items:center;display:flex;flex-direction:column;overflow:visible;text-align:center}.control-header{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.control-label{color:#cbd5e1;font-size:.7rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.control-knob{height:120px;margin-bottom:1rem;position:relative;width:120px}.knob-dial{background:radial-gradient(circle at 30% 30%,#64748b,#374151);border:4px solid #475569;border-radius:50%;box-shadow:0 6px 20px #0006,inset 0 2px 6px #ffffff1a;cursor:pointer;height:70px;left:25px;position:absolute;top:25px;transition:all .2s ease;width:70px}.knob-dial:hover{box-shadow:0 8px 25px #00000080,inset 0 3px 8px #fff3;transform:scale(1.05)}.knob-pointer{background:#f59e0b;border-radius:3px;box-shadow:0 0 12px #f59e0bcc;height:20px;left:50%;position:absolute;top:8px;transform:translateX(-50%);width:3px}.knob-labels{height:120px;left:0;position:absolute;top:0;width:120px;z-index:10}.knob-label{background:#1e293bcc;border:1px solid #475569;border-radius:3px;color:#94a3b8;font-size:.75rem;font-weight:600;padding:.15rem .4rem;position:absolute;text-shadow:0 1px 2px #000c}.knob-label.active{border-color:#f59e0b;box-shadow:0 0 8px #f59e0b4d;color:#f59e0b;text-shadow:0 0 6px #f59e0bcc}.hidden-select{opacity:0;pointer-events:none;position:absolute;z-index:-1}.knob-buttons{display:flex;justify-content:center;margin-top:.5rem;position:relative;z-index:20}.knob-btn{background:linear-gradient(145deg,#f59e0b,#d97706);border:2px solid #f59e0b;border-radius:6px;box-shadow:0 3px 8px #f59e0b4d;color:#1e293b;cursor:pointer;font-size:.8rem;font-weight:700;letter-spacing:.5px;min-width:50px;padding:.4rem 1rem;text-transform:uppercase;transition:all .2s ease}.knob-btn:hover{background:linear-gradient(145deg,#fbbf24,#f59e0b);border-color:#fbbf24;box-shadow:0 5px 15px #f59e0b80;transform:translateY(-2px)}.control-switch-container{text-align:center}.control-switch,.control-switch-container{align-items:center;display:flex;flex-direction:column}.control-switch{gap:.75rem;height:120px;justify-content:center;margin-bottom:1rem}.switch-toggle{background:linear-gradient(145deg,#374151,#1f2937);border:2px solid #475569;border-radius:15px;box-shadow:inset 0 2px 4px #0000004d;cursor:pointer;height:30px;position:relative;transition:all .3s ease;width:60px}.switch-toggle.active{background:linear-gradient(145deg,#059669,#047857);border-color:#10b981}.switch-handle{background:radial-gradient(circle at 30% 30%,#f8fafc,#e2e8f0);border-radius:50%;box-shadow:0 2px 4px #0000004d;height:22px;left:2px;position:absolute;top:2px;transition:all .3s ease;width:22px}.switch-toggle.active .switch-handle{transform:translateX(30px)}.switch-labels{display:flex;flex-direction:column;gap:.25rem}.switch-labels span{color:#64748b;font-size:.6rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:color .3s ease}.switch-labels span.active{color:#22c55e;text-shadow:0 0 4px #22c55e66}.control-slider-container{text-align:center}.control-slider,.control-slider-container{align-items:center;display:flex;flex-direction:column}.control-slider{gap:.75rem;width:100%}.slider-track{background:linear-gradient(145deg,#1f2937,#374151);border:1px solid #475569;border-radius:4px;box-shadow:inset 0 2px 4px #0000004d;height:8px;position:relative;width:80px}.slider-fill{background:linear-gradient(90deg,#f59e0b,#d97706);border-radius:4px;box-shadow:0 0 8px #f59e0b66;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.slider-thumb{background:radial-gradient(circle at 30% 30%,#fbbf24,#f59e0b);border:2px solid #374151;border-radius:50%;box-shadow:0 2px 6px #0006;cursor:pointer;height:16px;position:absolute;top:-4px;transform:translateX(-50%);transition:all .3s ease;width:16px}.slider-thumb:hover{box-shadow:0 4px 12px #f59e0b99;transform:translateX(-50%) scale(1.2)}.slider-value{color:#e2e8f0;font-size:.8rem;font-weight:700;text-shadow:0 1px 2px #000c}.hidden-slider{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:10}.legal-footer{background:#0000001a;border-top:1px solid #ffffff1a;margin-top:2rem;padding:1rem 2rem;text-align:center}.legal-footer p{color:#c8b4e6;font-size:.75rem;line-height:1.4;margin:0 auto;max-width:800px;opacity:.7}
/*# sourceMappingURL=main.ba00670e.css.map*/