*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;min-height:100vh;display:flex;flex-direction:column}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#2c3e50;color:#fff;box-shadow:0 2px 4px #0000001a}.nav-brand h2{margin:0;font-size:1.5rem}.nav-links{display:flex;gap:2rem}.nav-link{color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:4px;transition:background-color .3s}.nav-link:hover,.nav-link.router-link-active{background-color:#34495e}.main-content{flex:1;padding:2rem;background-color:#f8f9fa}.main-content.no-nav{padding:0}.logout-btn{background:#dc3545!important;color:#fff!important;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;text-decoration:none}.logout-btn:hover{background:#c82333!important}.redirecting[data-v-fb28db99],.loading[data-v-fb28db99]{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem;color:#666}.rag-dashboard[data-v-2dd8aa00]{max-width:1200px;margin:0 auto;padding:20px}.status-card[data-v-2dd8aa00],.upload-section[data-v-2dd8aa00],.chat-section[data-v-2dd8aa00]{background:#f5f5f5;padding:20px;margin:20px 0;border-radius:8px}.upload-section form[data-v-2dd8aa00]{display:flex;flex-direction:column;gap:10px}.metadata[data-v-2dd8aa00]{display:flex;gap:10px}.metadata input[data-v-2dd8aa00]{flex:1}.chat-messages[data-v-2dd8aa00]{max-height:400px;overflow-y:auto;margin-bottom:10px}.message[data-v-2dd8aa00]{padding:10px;margin:5px 0;border-radius:5px}.message.user[data-v-2dd8aa00]{background:#e3f2fd;text-align:right}.message.ai[data-v-2dd8aa00]{background:#f3e5f5}.message.error[data-v-2dd8aa00]{background:#ffebee;color:#c62828}input[data-v-2dd8aa00],button[data-v-2dd8aa00]{padding:10px;border:1px solid #ddd;border-radius:4px}button[data-v-2dd8aa00]{background:#2196f3;color:#fff;cursor:pointer}button[data-v-2dd8aa00]:disabled{background:#ccc;cursor:not-allowed}.conversations-panel[data-v-80778c85]{width:350px;min-width:320px;max-width:380px;background:#fff;border-radius:15px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-80778c85]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;font-size:18px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.status-indicator[data-v-80778c85]{width:10px;height:10px;border-radius:50%;background:#ef4444}.status-indicator.connected[data-v-80778c85]{background:#4ade80;animation:pulse-80778c85 2s infinite}@keyframes pulse-80778c85{0%,to{opacity:1}50%{opacity:.5}}.search-box[data-v-80778c85]{padding:15px;border-bottom:1px solid #e5e7eb}.search-box input[data-v-80778c85]{width:100%;padding:10px 15px;border:2px solid #e5e7eb;border-radius:20px;font-size:14px;outline:none;transition:border-color .3s}.search-box input[data-v-80778c85]:focus{border-color:#667eea}.conversations-list[data-v-80778c85]{flex:1;overflow-y:auto}.loading[data-v-80778c85],.error[data-v-80778c85],.empty[data-v-80778c85]{padding:40px 20px;text-align:center;color:#6b7280}.error[data-v-80778c85]{color:#ef4444}.error button[data-v-80778c85]{margin-top:10px;padding:8px 20px;background:#667eea;color:#fff;border:none;border-radius:5px;cursor:pointer}.empty-icon[data-v-80778c85]{font-size:48px;margin-bottom:10px}.conversation-item[data-v-80778c85]{padding:15px;border-bottom:1px solid #e5e7eb;cursor:pointer;transition:background .2s;display:flex;gap:12px;align-items:flex-start}.conversation-item[data-v-80778c85]:hover{background:#f9fafb}.conversation-item.active[data-v-80778c85]{background:#ede9fe;border-left:3px solid #7c3aed}.conversation-item img[data-v-80778c85]{width:50px;height:50px;border-radius:50%;object-fit:cover;flex-shrink:0}.conversation-info[data-v-80778c85]{flex:1;min-width:0}.conversation-name[data-v-80778c85]{font-weight:600;margin-bottom:4px;color:#1f2937}.conversation-last-message[data-v-80778c85]{font-size:14px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.conversation-time[data-v-80778c85]{font-size:12px;color:#9ca3af}.unread-badge[data-v-80778c85]{background:#ef4444;color:#fff;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;flex-shrink:0}.chat-panel[data-v-0e64da1d]{flex:1;background:#fff;border-radius:15px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;min-width:0}.panel-header[data-v-0e64da1d]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;font-size:18px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.user-info[data-v-0e64da1d]{display:flex;gap:12px;align-items:center}.user-info img[data-v-0e64da1d]{width:40px;height:40px;border-radius:50%;object-fit:cover}.user-name[data-v-0e64da1d]{font-weight:600;margin-bottom:2px}.user-status[data-v-0e64da1d]{font-size:12px;opacity:.9}.header-actions[data-v-0e64da1d]{display:flex;align-items:center;gap:12px}.connection-status[data-v-0e64da1d]{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#ffffff1a;border-radius:12px;font-size:12px;font-weight:500}.connection-status.connected[data-v-0e64da1d]{background:#22c55e33;color:#22c55e}.status-dot[data-v-0e64da1d]{width:6px;height:6px;border-radius:50%;background:#ef4444;animation:pulse-0e64da1d 2s infinite}.connection-status.connected .status-dot[data-v-0e64da1d]{background:#22c55e;animation:none}@keyframes pulse-0e64da1d{0%,to{opacity:1}50%{opacity:.5}}.status-select[data-v-0e64da1d]{padding:6px 12px;border:none;border-radius:5px;background:#fff3;color:#fff;cursor:pointer;font-size:14px}.status-select option[data-v-0e64da1d]{color:#1f2937}.messages-container[data-v-0e64da1d]{flex:1;padding:20px;overflow-y:auto;background:#f9fafb;min-height:0}.messages-flow[data-v-0e64da1d]{display:flex;flex-direction:column;gap:12px}.message-error[data-v-0e64da1d]{background:#fee2e2;color:#b91c1c;padding:12px 16px;margin:0 20px 12px;border:1px solid #fecaca;border-radius:10px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.message-error__close[data-v-0e64da1d]{background:transparent;border:none;color:inherit;font-size:16px;cursor:pointer;padding:0 4px}.messaging-meta[data-v-0e64da1d]{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.messaging-meta__label[data-v-0e64da1d]{font-size:12px;font-weight:600;color:#1f2937}.messaging-meta__select[data-v-0e64da1d]{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#fff;cursor:pointer}.message-tag-config[data-v-0e64da1d]{border:1px solid #e5e7eb;border-radius:10px;padding:12px;background:#f9fafb}.message-tag-hint[data-v-0e64da1d]{margin:8px 0 4px;font-size:12px;color:#374151}.message-tag-warning[data-v-0e64da1d]{font-size:11px;color:#b45309;background:#fef3c7;border:1px solid #fcd34d;padding:8px 10px;border-radius:8px}.empty-state[data-v-0e64da1d]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af}.empty-icon[data-v-0e64da1d]{font-size:64px;margin-bottom:20px}.message[data-v-0e64da1d]{margin-bottom:15px;display:flex;flex-direction:column;animation:slideIn-0e64da1d .3s ease-out}@keyframes slideIn-0e64da1d{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user[data-v-0e64da1d]{align-items:flex-start}.message-admin[data-v-0e64da1d]{align-items:flex-end}.message-bubble[data-v-0e64da1d]{max-width:70%;padding:12px 16px;border-radius:18px;word-wrap:break-word}.message-text[data-v-0e64da1d]{margin:0;white-space:pre-wrap}.message-text[data-v-0e64da1d]:not(:last-child){margin-bottom:8px}.message-text--muted[data-v-0e64da1d]{color:#6b7280;font-style:italic}.message-media[data-v-0e64da1d]{margin-bottom:8px}.message-media[data-v-0e64da1d]:last-child{margin-bottom:0}.message-image[data-v-0e64da1d]{max-width:260px;border-radius:12px;display:block}.message-user .message-bubble[data-v-0e64da1d]{background:#fff;color:#1f2937;border-bottom-left-radius:4px;box-shadow:0 2px 5px #0000001a}.message-admin .message-bubble[data-v-0e64da1d]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.message-bubble[data-pending=true][data-v-0e64da1d]{opacity:.7;position:relative}.message-bubble[data-pending=true][data-v-0e64da1d]:after{content:"";position:absolute;top:50%;right:-8px;transform:translateY(-50%);width:0;height:0;border-left:6px solid #667eea;border-top:4px solid transparent;border-bottom:4px solid transparent;animation:pulse-0e64da1d 1.5s infinite}@keyframes pulse-0e64da1d{0%,to{opacity:.3}50%{opacity:1}}.message-time[data-v-0e64da1d]{font-size:11px;margin-top:4px;color:#9ca3af}.input-area[data-v-0e64da1d]{padding:20px;background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:10px}.input-area__textarea[data-v-0e64da1d]{flex:1;padding:12px 16px;border:1px solid #d1d5db;border-radius:12px;font-size:14px;resize:none;max-height:180px;min-height:48px;line-height:1.4}.input-area input[data-v-0e64da1d]{flex:1;padding:12px 16px;border:2px solid #e5e7eb;border-radius:25px;font-size:14px;outline:none;transition:border-color .3s}.input-area input[data-v-0e64da1d]:focus{border-color:#667eea}.input-area input[data-v-0e64da1d]:disabled{background:#f3f4f6;cursor:not-allowed}.input-area button[data-v-0e64da1d]{padding:12px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:25px;cursor:pointer;font-weight:600;transition:transform .2s}.input-area button[data-v-0e64da1d]:hover:not(:disabled){transform:scale(1.05)}.input-area button[data-v-0e64da1d]:disabled{opacity:.5;cursor:not-allowed;transform:none}.loading[data-v-0e64da1d]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af}.spinner[data-v-0e64da1d]{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin-0e64da1d .8s linear infinite;margin-bottom:12px}@keyframes spin-0e64da1d{to{transform:rotate(360deg)}}.messenger-layout[data-v-687ff2be]{display:flex;gap:24px;padding:24px;background:linear-gradient(135deg,#eef2ff,#f8fafc);height:100vh;width:100%;box-sizing:border-box;overflow:hidden;align-items:stretch}.modal-overlay[data-v-13bcab55]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-13bcab55]{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header[data-v-13bcab55]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.close-btn[data-v-13bcab55]{background:none;border:none;font-size:24px;cursor:pointer;color:#666}.modal-body[data-v-13bcab55]{padding:20px}.form-group[data-v-13bcab55]{margin-bottom:20px}.form-group label[data-v-13bcab55]{display:block;margin-bottom:5px;font-weight:500}.form-group input[data-v-13bcab55]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.form-group input.error[data-v-13bcab55]{border-color:#dc3545}.error-text[data-v-13bcab55]{color:#dc3545;font-size:12px;margin-top:5px;display:block}.modal-footer[data-v-13bcab55]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel[data-v-13bcab55],.btn-save[data-v-13bcab55]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-cancel[data-v-13bcab55]{background:#6c757d;color:#fff}.btn-save[data-v-13bcab55]{background:#007bff;color:#fff}.btn-save[data-v-13bcab55]:disabled{background:#ccc;cursor:not-allowed}.modal-overlay[data-v-09a4b79b]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-09a4b79b]{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header[data-v-09a4b79b]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.close-btn[data-v-09a4b79b]{background:none;border:none;font-size:24px;cursor:pointer;color:#666}.modal-body[data-v-09a4b79b]{padding:20px}.form-group[data-v-09a4b79b]{margin-bottom:20px}.form-group label[data-v-09a4b79b]{display:block;margin-bottom:5px;font-weight:500}.form-group input[data-v-09a4b79b]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.form-group input.error[data-v-09a4b79b]{border-color:#dc3545}.error-text[data-v-09a4b79b]{color:#dc3545;font-size:12px;margin-top:5px;display:block}.modal-footer[data-v-09a4b79b]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel[data-v-09a4b79b],.btn-save[data-v-09a4b79b]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-cancel[data-v-09a4b79b]{background:#6c757d;color:#fff}.btn-save[data-v-09a4b79b]{background:#ffc107;color:#212529}.btn-save[data-v-09a4b79b]:disabled{background:#ccc;cursor:not-allowed}.user-management[data-v-c3cdffe7]{padding:20px}.header[data-v-c3cdffe7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.filters[data-v-c3cdffe7]{margin-bottom:20px}.search-input[data-v-c3cdffe7]{width:300px;padding:8px 12px;border:1px solid #ddd;border-radius:4px}.stats[data-v-c3cdffe7]{display:flex;gap:20px;margin-bottom:20px}.stat-card[data-v-c3cdffe7]{background:#f8f9fa;padding:15px;border-radius:8px;text-align:center;min-width:120px}.stat-card h3[data-v-c3cdffe7]{margin:0;font-size:24px;color:#007bff}.stat-card p[data-v-c3cdffe7]{margin:5px 0 0;color:#666}.table-container[data-v-c3cdffe7]{overflow-x:auto}.user-table[data-v-c3cdffe7]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.user-table th[data-v-c3cdffe7],.user-table td[data-v-c3cdffe7]{padding:12px;text-align:left;border-bottom:1px solid #eee}.user-table th[data-v-c3cdffe7]{background:#f8f9fa;font-weight:600}.actions[data-v-c3cdffe7]{display:flex;gap:8px}.btn-primary[data-v-c3cdffe7],.btn-edit[data-v-c3cdffe7],.btn-warning[data-v-c3cdffe7],.btn-danger[data-v-c3cdffe7],.btn-pagination[data-v-c3cdffe7]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-primary[data-v-c3cdffe7]{background:#007bff;color:#fff}.btn-edit[data-v-c3cdffe7]{background:#28a745;color:#fff}.btn-warning[data-v-c3cdffe7]{background:#ffc107;color:#212529}.btn-danger[data-v-c3cdffe7]{background:#dc3545;color:#fff}.btn-pagination[data-v-c3cdffe7]{background:#6c757d;color:#fff}.btn-pagination[data-v-c3cdffe7]:disabled{background:#ccc;cursor:not-allowed}.pagination[data-v-c3cdffe7]{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}.page-info[data-v-c3cdffe7]{font-weight:500}.login-container[data-v-4f6834b8]{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.login-form[data-v-4f6834b8]{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}.form-group[data-v-4f6834b8]{margin-bottom:1rem}.form-group label[data-v-4f6834b8]{display:block;margin-bottom:.5rem;font-weight:700}.form-group input[data-v-4f6834b8]{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;box-sizing:border-box}button[data-v-4f6834b8]{width:100%;padding:.75rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}button[data-v-4f6834b8]:disabled{background-color:#ccc;cursor:not-allowed}.error-message[data-v-4f6834b8]{color:#dc3545;margin-top:1rem;text-align:center}
