:root{--color-primary: #667eea;--color-primary-dark: #764ba2;--color-primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--color-success: #10b981;--color-success-dark: #059669;--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-border: #fca5a5;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #1a202c;--color-text-primary: #1a202c;--color-text-secondary: #374151;--color-text-tertiary: #6b7280;--color-text-muted: #9ca3af;--color-text-white: #ffffff;--color-bg-primary: #ffffff;--color-bg-secondary: #f3f4f6;--color-bg-tertiary: #f9fafb;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 2.5rem;--spacing-xxl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 50%;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 4px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-lg: 0 4px 8px rgba(0, 0, 0, .08), 0 2px 4px rgba(0, 0, 0, .06);--shadow-xl: 0 10px 20px rgba(0, 0, 0, .12);--shadow-primary: 0 2px 8px rgba(102, 126, 234, .2);--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .2s;--transition-base: .3s;--transition-slow: .5s;--z-dropdown: 100;--z-modal: 200;--navbar-height: 64px;--max-width: 1400px;--max-width-content: 800px;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1600px}*{box-sizing:border-box}h1{text-shadow:0 2px 4px rgba(0,0,0,.1)}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-family);line-height:1.5;font-weight:var(--font-weight-normal);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;background-color:var(--color-gray-100);-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;width:100%;margin:0;padding:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg)}.container-content{max-width:var(--max-width-content);margin:0 auto;padding:0 var(--spacing-lg);width:100%}.card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);padding:var(--spacing-2xl);margin:var(--spacing-md)}.btn{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;border:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-md)}.btn-primary{background:var(--color-primary-gradient);color:var(--color-text-white)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-primary)}.btn-secondary{background:var(--color-bg-primary);color:var(--color-text-secondary);border:2px solid var(--color-gray-200)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{width:32px;height:32px;padding:0;border-radius:var(--radius-full);background:transparent;color:var(--color-gray-500);min-width:32px;min-height:32px;flex-shrink:0}.btn-icon:hover{background:var(--color-gray-100);color:var(--color-text-secondary)}.input{padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text-primary);transition:all var(--transition-fast);width:100%}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.input:disabled{background-color:var(--color-gray-100);cursor:not-allowed}.input::placeholder{color:var(--color-gray-400)}.navbar{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:var(--spacing-md) auto;background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);position:sticky;top:var(--spacing-md);z-index:var(--z-dropdown);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-sizing:border-box;margin-left:auto;margin-right:auto;transition:background-color .3s ease,opacity .3s ease,transform .4s cubic-bezier(.4,0,.2,1),visibility .4s ease;transform:translateY(0);visibility:visible}.navbar-hidden{transform:translateY(calc(-100% - var(--spacing-md) * 2));pointer-events:none;opacity:0}.navbar-hidden .navbar-content{pointer-events:none}.navbar-pin-button{position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;border:none;background:#fff9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:calc(var(--z-dropdown) + 1);color:var(--color-text-secondary);pointer-events:auto!important;opacity:.6!important;transform:translateY(0)!important}.navbar-pin-button:hover{background:#ffffffe6;opacity:1!important;transform:translateY(0) scale(1.1)!important}.navbar-pin-button:active{transform:translateY(0) scale(.95)!important}.navbar-transparent{background:#ffffff40!important}.navbar-transparent:hover{background:#fffffff2!important}.navbar-content{width:100%;margin:0;padding:0 var(--spacing-lg);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--spacing-xl);height:var(--navbar-height);box-sizing:border-box}.navbar-logo{flex-shrink:0;display:flex;align-items:center;gap:var(--spacing-md)}.navbar-logo-text{margin:0;font-weight:500;font-size:1.5rem;line-height:1}.logo-uts-portal{font-family:Ubuntu,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:700;color:#1a202c;letter-spacing:-.02em;background:none;text-shadow:0 2px 4px rgba(0,0,0,.1);-webkit-text-fill-color:#1a202c;animation:none;text-shadow:none;filter:none}.logo-separator{margin:0 .125rem}.logo-iq{font-weight:700}.navbar-menu{display:flex;align-items:center;justify-content:center;gap:2px;height:100%}.nav-menu-item{display:flex;align-items:center;gap:6px;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);position:relative;height:40px;font-family:inherit}.nav-menu-item:hover{background:var(--color-gray-50);color:var(--color-text-primary)}.nav-menu-item.active{color:var(--color-primary);background:#667eea14}.nav-menu-item.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60%;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0}.nav-menu-item svg{flex-shrink:0;opacity:.8}.nav-menu-item.active svg{opacity:1}.nav-menu-item span{white-space:nowrap}.nav-menu-item-dropdown{position:relative;height:100%;display:flex;align-items:center}.nav-dropdown-menu{position:absolute;top:calc(100% + var(--spacing-xs));left:0;background:var(--color-bg-primary);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000026;z-index:var(--z-dropdown);min-width:180px;padding:var(--spacing-xs);display:flex;flex-direction:column;gap:2px}.nav-dropdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.nav-dropdown-item:hover{background:var(--color-gray-50);color:var(--color-text-primary)}.nav-dropdown-item.active{color:var(--color-primary);background:#667eea14}.nav-dropdown-item svg{flex-shrink:0;opacity:.8}.nav-dropdown-item.active svg{opacity:1}.chat-layout{display:flex;flex-direction:column;width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:var(--spacing-md) auto;gap:var(--spacing-md);min-height:0;padding-bottom:calc(100px + var(--spacing-md) * 3);box-sizing:border-box;margin-top:calc(var(--navbar-height) + var(--spacing-md))}.chat-main{width:100%;display:flex;flex-direction:column;overflow:hidden}.chat-sidebar{width:300px;flex-shrink:0;background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);display:flex;flex-direction:column;transition:width var(--transition-fast);position:relative;overflow:hidden;height:calc(100vh - var(--navbar-height) - var(--spacing-md) * 4 - 120px);max-height:calc(100vh - var(--navbar-height) - var(--spacing-md) * 4 - 120px);box-sizing:border-box}.chat-sidebar.collapsed{width:auto;height:auto;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:0}.chat-sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200);background:var(--color-bg-primary);min-height:60px;cursor:default}.sidebar-expand-btn{width:48px;height:48px;border:1px solid var(--color-gray-200);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);padding:0;margin:0}.sidebar-expand-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translate(2px)}.header-controls{display:flex;align-items:center;gap:var(--spacing-md);width:100%}.new-chat-button-inline{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-gradient);color:var(--color-text-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;transition:all var(--transition-fast);flex:1;justify-content:center}.new-chat-button-inline:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-primary)}.new-chat-button-inline:disabled{opacity:.6;cursor:not-allowed;transform:none}.sidebar-toggle-btn{width:36px;height:36px;border:1px solid var(--color-gray-200);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.sidebar-toggle-btn.collapsed-icon{width:48px;height:48px;border:none;background:transparent;color:var(--color-primary)}.sidebar-toggle-btn:hover{background:var(--color-gray-100);color:var(--color-text-primary);border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.chat-sidebar-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1}.chat-sidebar-content{flex:1;overflow-y:auto;padding:var(--spacing-md);background:var(--color-bg-secondary)}.chat-sidebar-loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-2xl);color:var(--color-text-secondary);background:var(--color-bg-primary);border-radius:var(--radius-md);margin:var(--spacing-md)}.loading-spinner{width:24px;height:24px;border:2px solid var(--color-gray-200);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-sidebar-empty{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);color:var(--color-text-secondary);background:var(--color-bg-primary);border-radius:var(--radius-md);border:1px dashed var(--color-gray-300);margin:var(--spacing-md)}.chat-sidebar-empty p{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-sm)}.empty-subtitle{font-size:var(--font-size-xs)!important;color:var(--color-text-tertiary)!important;margin:0!important}.chat-list-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);margin:var(--spacing-sm);margin-bottom:var(--spacing-md);background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200)}.chat-list-header h4{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.clear-all-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.clear-all-button:hover:not(:disabled){background:var(--color-gray-100);color:var(--color-error)}.clear-all-button:disabled{opacity:.4;cursor:not-allowed}.clear-all-button svg{flex-shrink:0}.chat-list{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm)}.chat-item{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--color-gray-200);position:relative;background:var(--color-bg-primary);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.chat-item:hover{background:var(--color-gray-50);border-color:var(--color-gray-300);box-shadow:var(--shadow-md);transform:translateY(-1px)}.chat-item.active{background:var(--color-primary)!important;color:#fff!important;border:2px solid var(--color-primary)!important;box-shadow:var(--shadow-primary);font-weight:600;transform:none}.chat-item.active:hover{background:var(--color-primary-dark)!important;border-color:var(--color-primary-dark)!important}.chat-item.active .chat-item-title{color:#fff!important;font-weight:600}.chat-item.active .chat-item-date,.chat-item.active .chat-item-count{color:#fff!important;opacity:.95}.chat-item-content{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:0}.chat-item-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1.4;color:inherit}.chat-item-meta{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);opacity:.7;margin-top:var(--spacing-xs)}.chat-item-date{color:inherit}.chat-item-count{background:var(--color-gray-200);color:var(--color-text-secondary);padding:2px var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.chat-item.active .chat-item-count{background:#ffffff40;color:#fff}.chat-item-delete{width:28px;height:28px;border:1px solid var(--color-gray-200);background:var(--color-bg-primary);color:var(--color-text-secondary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:all var(--transition-fast);cursor:pointer}.chat-item:hover .chat-item-delete{opacity:1;border-color:var(--color-error);color:var(--color-error)}.chat-item-delete:hover{background:var(--color-error);color:#fff;border-color:var(--color-error);opacity:1}.chat-item.active .chat-item-delete{border-color:#ffffff4d;background:#ffffff1a;color:#fff;opacity:.8}.chat-item.active .chat-item-delete:hover{background:#fff3;border-color:#fff6;opacity:1}.chat-sidebar-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.chat-sidebar-modal{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-xl);max-width:400px;width:90%;margin:var(--spacing-lg)}.chat-sidebar-modal h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.chat-sidebar-modal p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.5}.chat-sidebar-modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.navbar-logo h1{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:6px;line-height:1.2}.logo-agentiq{font-weight:var(--font-weight-semibold);background:linear-gradient(90deg,#667eea,#a855f7,#ec4899,#f97316,#06b6d4,#3b82f6,#8b5cf6 90%,#667eea);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:agentiqGradient 8s ease-in-out infinite;filter:brightness(1.1)}@keyframes agentiqGradient{0%,to{background-position:0% center}50%{background-position:100% center}}.navbar-actions{display:flex;align-items:center;gap:var(--spacing-md);padding-right:var(--spacing-lg);min-width:fit-content;flex-shrink:0}.navbar-client-info{position:relative;display:flex;align-items:center}.client-info-static{display:flex;flex-direction:column;align-items:flex-end;padding-right:var(--spacing-md);border-right:1px solid var(--color-gray-200);margin-right:var(--spacing-md)}.client-selector{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-bg-primary);cursor:pointer;transition:all .2s;margin-right:var(--spacing-md);border-right:1px solid var(--color-gray-200);padding-right:var(--spacing-lg)}.client-selector:hover{background:var(--color-gray-50);border-color:var(--color-primary)}.client-info{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.client-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.client-name{font-weight:600;font-size:.9rem;color:var(--color-text-primary);line-height:1.2}.client-id{font-size:.75rem;color:var(--color-text-tertiary);line-height:1.2;margin-top:2px}.client-status{font-size:.75rem;font-weight:500;padding:2px 8px;border-radius:var(--radius-sm);white-space:nowrap;display:inline-block}.client-status.status-active{background:var(--color-success);color:#fff}.client-status.status-demo{background:#3b82f6;color:#fff}.client-status.status-disabled{background:var(--color-gray-400);color:#fff}.client-selector svg{color:var(--color-text-tertiary);transition:transform .2s}.client-selector:hover svg{color:var(--color-text-primary)}.client-dropdown{position:absolute;top:calc(100% + var(--spacing-sm));right:0;background:var(--color-bg-primary);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000026;z-index:1000;min-width:280px;max-width:400px;max-height:400px;overflow:hidden;display:flex;flex-direction:column}.client-dropdown-loading,.client-dropdown-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:.9rem}.client-dropdown-list{max-height:400px;overflow-y:auto;overflow-x:hidden}.client-dropdown-list::-webkit-scrollbar{width:8px}.client-dropdown-list::-webkit-scrollbar-track{background:var(--color-gray-100)}.client-dropdown-list::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.client-dropdown-list::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.client-dropdown-item{width:100%;padding:var(--spacing-md);border:none;background:transparent;text-align:left;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--color-gray-100);display:flex;flex-direction:column;align-items:flex-start;gap:4px}.client-dropdown-item:last-child{border-bottom:none}.client-dropdown-item:hover{background:var(--color-gray-50)}.client-dropdown-item.active{background:var(--color-primary);color:#fff}.client-dropdown-item.active .client-dropdown-name,.client-dropdown-item.active .client-dropdown-id{color:#fff}.client-dropdown-name{font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.client-dropdown-id{font-size:.75rem;color:var(--color-text-tertiary)}.settings-button{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all var(--transition-fast);flex-shrink:0;box-sizing:border-box}.settings-button:hover{background:var(--color-gray-100);color:var(--color-text-primary)}.settings-button:active{transform:scale(.95)}.settings-button svg{width:24px;height:24px;opacity:.8;transition:opacity var(--transition-fast)}.settings-button:hover svg{opacity:1}.navbar-user{position:relative}.user-avatar{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:var(--radius-full);border:2px solid var(--color-gray-200);background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-text-white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);padding:0;overflow:hidden;flex-shrink:0;box-sizing:border-box}.user-avatar:hover{border-color:var(--color-primary);transform:scale(1.05);box-shadow:0 2px 8px #667eea4d}.user-avatar img{width:100%;height:100%;object-fit:cover;display:block}.user-avatar span{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);z-index:1;color:var(--color-text-white)}.dropdown-menu{position:absolute;top:calc(100% + var(--spacing-sm));right:0;background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:240px;overflow:hidden;animation:slideDown var(--transition-fast) ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);background:var(--color-gray-50)}.dropdown-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-primary-gradient);color:var(--color-text-white);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.dropdown-avatar img{width:100%;height:100%;object-fit:cover}.dropdown-avatar span{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.dropdown-info{flex:1;min-width:0}.dropdown-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-email{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-divider{height:1px;background:var(--color-gray-200);margin:0}.dropdown-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;text-align:left;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast);font-family:inherit}.dropdown-item:hover{background-color:var(--color-gray-100)}.dropdown-item:active{background-color:var(--color-gray-200)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-lg);background:var(--color-primary-gradient)}.login-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-3xl);width:100%;max-width:420px;animation:slideUp var(--transition-slow) ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.login-header p{color:var(--color-text-tertiary);font-size:.95rem;margin:0}.google-button{width:100%;padding:var(--spacing-md) var(--spacing-xl);background:var(--color-bg-primary);color:var(--color-text-secondary);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.google-button:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.google-button:active:not(:disabled){transform:translateY(1px)}.google-button:disabled{opacity:.7;cursor:not-allowed}.google-icon{width:20px;height:20px}.divider{display:flex;align-items:center;text-align:center;margin:var(--spacing-xl) 0;color:var(--color-gray-400);font-size:var(--font-size-sm)}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid var(--color-gray-200)}.divider span{padding:0 var(--spacing-lg)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.form-group input{padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-primary);transition:all var(--transition-fast);width:100%;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:var(--color-gray-100);cursor:not-allowed;opacity:.6}.form-group input::placeholder{color:var(--color-text-muted)}.login-button{width:100%;padding:var(--spacing-md) var(--spacing-xl);background:var(--color-primary-gradient);color:var(--color-text-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.error-message{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-error-light);border:1px solid var(--color-error-border);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xl);text-align:center}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-xl);scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;animation:fadeInSlide var(--transition-slow) ease-out}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-welcome h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.chat-welcome p{font-size:var(--font-size-base);color:var(--color-text-tertiary);margin:0}.chat-welcome-zero-agents{text-align:center;padding:var(--spacing-2xl) var(--spacing-xl)}.chat-welcome-zero-agents h2{font-size:var(--font-size-3xl, 1.875rem);margin-bottom:var(--spacing-md)}.chat-welcome-zero-agents p{margin-bottom:var(--spacing-xl);max-width:480px;margin-left:auto;margin-right:auto}.chat-create-first-agent-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-lg, 1.125rem);font-weight:var(--font-weight-semibold);min-height:56px;min-width:280px;border-radius:var(--radius-lg);box-shadow:0 4px 14px #667eea66;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.chat-create-first-agent-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.chat-create-first-agent-btn-icon{display:flex;align-items:center;justify-content:center}.message{display:flex;gap:var(--spacing-lg);animation:fadeInSlide var(--transition-base) ease-out;max-width:75%}.message.user{align-self:flex-end;flex-direction:row-reverse}.message.assistant{align-self:flex-start;max-width:70%;width:70%}@media(max-width:768px){.message.assistant{max-width:100%;width:100%}}.message-avatar{width:32px;height:32px;min-width:32px;min-height:32px;border-radius:var(--radius-full);border:2px solid var(--color-gray-200);background:var(--color-primary-gradient);color:var(--color-text-white);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-avatar span{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.message.assistant .message-avatar{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-dark) 100%)}.message-content{flex:1;min-width:0}.message-text{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);line-height:1.6;word-wrap:break-word;white-space:pre-wrap;animation:messageAppear var(--transition-base) ease-out}@keyframes messageAppear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.message.user .message-text{background:var(--color-primary-gradient);color:var(--color-text-white);border-bottom-right-radius:var(--radius-sm)}.message.assistant .message-text{background:var(--color-gray-100);color:var(--color-text-primary);border-bottom-left-radius:var(--radius-sm)}.message.loading .message-content{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-gray-100);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm)}.chat-input-container{position:fixed;bottom:var(--spacing-md);left:50%;transform:translate(-50%);background:var(--color-bg-primary);padding:var(--spacing-sm) var(--spacing-lg);width:calc(100% - var(--spacing-md) * 2);max-width:1600px;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);display:flex;flex-direction:column;gap:var(--spacing-sm);z-index:var(--z-dropdown);box-sizing:border-box}.chat-tabs-container{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;overflow:hidden;border-bottom:1px solid var(--color-gray-200);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.chat-tabs-scroll{display:flex;align-items:center;gap:var(--spacing-xs);overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;flex:1;min-width:0;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-gray-300) transparent}.chat-tabs-scroll::-webkit-scrollbar{height:4px}.chat-tabs-scroll::-webkit-scrollbar-track{background:transparent}.chat-tabs-scroll::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.chat-tabs-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.chat-tab{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);position:relative;min-width:0}.chat-tab:hover{background:var(--color-gray-200);border-color:var(--color-gray-300)}.chat-tab.active{background:var(--color-primary-gradient);border-color:var(--color-primary);color:var(--color-text-white)}.chat-tab.active .chat-tab-close{color:var(--color-text-white);opacity:.8}.chat-tab.active .chat-tab-close:hover{opacity:1;background:#fff3}.chat-tab-title{max-width:150px;overflow:hidden;text-overflow:ellipsis;font-weight:var(--font-weight-medium);flex:1;min-width:0}.chat-tab-edit{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);padding:0;transition:all var(--transition-fast);flex-shrink:0;opacity:.6;margin-right:var(--spacing-xs);order:-1}.chat-tab-edit:hover{opacity:1;background:var(--color-gray-200)}.chat-tab.active .chat-tab-edit{color:var(--color-text-white);opacity:.8}.chat-tab.active .chat-tab-edit:hover{opacity:1;background:#fff3}.chat-tab-edit-input{flex:1;border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;color:var(--color-text-primary);background:var(--color-bg-primary);outline:none;min-width:100px;max-width:200px;margin-right:var(--spacing-xs)}.chat-tab.active .chat-tab-edit-input{border-color:var(--color-text-white);background:#fffffff2;color:var(--color-text-primary)}.chat-tab-edit-input:focus{box-shadow:0 0 0 2px #667eea33;border-color:var(--color-primary)}.chat-tab.active .chat-tab-edit-input:focus{box-shadow:0 0 0 2px #ffffff4d;border-color:var(--color-text-white)}.chat-tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);padding:0;transition:all var(--transition-fast);flex-shrink:0;opacity:.6}.chat-tab-close:hover{opacity:1;background:var(--color-gray-200)}.chat-tab-new{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px dashed var(--color-gray-300);background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;color:var(--color-text-secondary);padding:0}.chat-tab-new:hover{background:var(--color-gray-100);border-color:var(--color-primary);color:var(--color-primary)}.chat-tab-add-knowledge{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.chat-tab-add-knowledge:hover{background:var(--color-primary-gradient);border-color:var(--color-primary);color:var(--color-text-white)}.chat-tab-add-knowledge svg{flex-shrink:0}.chat-delete-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn var(--transition-fast) ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.chat-delete-modal{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--color-gray-200);padding:var(--spacing-xl);max-width:400px;width:calc(100% - var(--spacing-md) * 2);animation:slideUp var(--transition-base) ease-out}.chat-delete-modal h3{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.chat-delete-modal p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);line-height:1.5}.chat-delete-modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.chat-delete-cancel,.chat-delete-confirm{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border:none}.chat-delete-cancel{background:var(--color-gray-100);color:var(--color-text-secondary)}.chat-delete-cancel:hover{background:var(--color-gray-200)}.chat-delete-confirm{background:var(--color-error);color:var(--color-text-white)}.chat-delete-confirm:hover{background:var(--color-error-dark)}.create-first-agent-wizard-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);animation:fadeIn var(--transition-fast) ease-out}.create-first-agent-wizard-modal{max-width:560px;width:100%;max-height:calc(100vh - var(--spacing-xl) * 2);display:flex;flex-direction:column;animation:slideUp var(--transition-base) ease-out;background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:0 var(--spacing-xl) var(--spacing-xl)}.create-first-agent-wizard-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xl) 0;flex-shrink:0}.create-first-agent-wizard-header h2{margin:0;font-size:var(--font-size-2xl, 1.5rem);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.create-first-agent-wizard-close{background:none;border:none;padding:var(--spacing-xs);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background var(--transition-fast)}.create-first-agent-wizard-close:hover{color:var(--color-text-primary);background:var(--color-gray-100)}.create-first-agent-wizard-content{padding:var(--spacing-xl) 0;overflow-y:auto;flex:1;color:var(--color-text-primary)}.create-first-agent-wizard-intro{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5}.create-first-agent-wizard-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.create-first-agent-wizard-actions .btn-secondary{background:var(--color-gray-100);color:var(--color-text-primary);border:1px solid var(--color-gray-200)}.create-first-agent-wizard-actions .btn-secondary:hover{background:var(--color-gray-200)}.create-first-agent-wizard-creating{padding:var(--spacing-2xl);text-align:center}.create-first-agent-wizard-progress-bar{height:8px;background:var(--color-gray-200);border-radius:9999px;overflow:hidden;margin-bottom:var(--spacing-lg)}.create-first-agent-wizard-progress-fill{height:100%;width:30%;background:var(--color-primary);border-radius:9999px;animation:createFirstAgentProgress 1.5s ease-in-out infinite}@keyframes createFirstAgentProgress{0%,to{transform:translate(-100%)}50%{transform:translate(233%)}}.create-first-agent-wizard-content .form-group label{color:var(--color-text-primary);font-weight:500}.create-first-agent-wizard-creating-text{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.create-first-agent-wizard-upload-header{margin-bottom:var(--spacing-lg)}.create-first-agent-wizard-upload-header p{margin:0;font-size:var(--font-size-base);color:var(--color-text-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.agent-selector{display:flex;align-items:center;gap:var(--spacing-sm);padding:0}.agent-selector-label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.agent-select-wrapper{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.agent-select{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text-primary);background:var(--color-bg-primary);cursor:pointer;transition:all var(--transition-fast);min-width:200px}.agent-description{font-size:var(--font-size-xs);color:var(--color-text-tertiary);flex:1;line-height:1.4}.agent-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.agent-select:disabled{background:var(--color-gray-100);cursor:not-allowed;opacity:.6}.chat-form{width:100%;max-width:100%}.chat-input-wrapper{display:flex;align-items:flex-end;gap:var(--spacing-sm);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-xs) var(--spacing-sm);transition:all var(--transition-fast);width:100%;max-width:100%;box-sizing:border-box}.chat-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;background:var(--color-bg-primary)}.chat-input{flex:1;border:none;outline:none;background:transparent;font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text-primary);resize:none;max-height:80px;overflow-y:auto;line-height:1.4;padding:var(--spacing-xs) var(--spacing-sm);min-height:32px}.chat-input::placeholder{color:var(--color-gray-400)}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-attachment-button{width:28px;height:28px;border-radius:var(--radius-full);border:none;background:transparent;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.chat-attachment-button:hover:not(:disabled){background:var(--color-gray-100);color:var(--color-text-primary);transform:scale(1.05)}.chat-attachment-button:active:not(:disabled){transform:scale(.95)}.chat-attachment-button:disabled{opacity:.5;cursor:not-allowed}.attachment-spinner{width:16px;height:16px;border:2px solid var(--color-gray-300);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.chat-send-button{width:28px;height:28px;border-radius:var(--radius-full);border:none;background:var(--color-primary-gradient);color:var(--color-text-white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;padding:0}.chat-send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-primary)}.chat-send-button:active:not(:disabled){transform:scale(.95)}.chat-send-button:disabled{opacity:.5;cursor:not-allowed;background:var(--color-gray-300)}.send-button-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-text-white);border-radius:var(--radius-full);animation:spin .8s linear infinite}.endpoint-results-wrapper{width:100%}.endpoint-results-grid{display:grid;gap:var(--spacing-lg);width:100%}.endpoint-results-grid-single{grid-template-columns:1fr}.endpoint-results-grid-single .endpoint-result-card{grid-column:1 / -1;width:100%}.endpoint-results-grid-double{grid-template-columns:repeat(2,1fr)}.endpoint-results-grid-triple{grid-template-columns:repeat(3,1fr)}.endpoint-result-card{background:var(--color-bg-primary);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;animation:fadeInSlide var(--transition-base) ease-out;min-width:400px;display:flex;flex-direction:column}.endpoint-card-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.endpoint-card-header h4{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1}.confidence-pill{padding:6px 14px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;box-shadow:0 2px 8px #00000026;display:inline-flex;align-items:center;gap:6px;transition:all .2s ease;position:relative;overflow:hidden}.confidence-pill:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.confidence-pill:hover:before{left:100%}.confidence-pill:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.endpoint-card-content{padding:var(--spacing-lg);flex:1;display:flex;flex-direction:column}.markdown-content{line-height:1.7;color:var(--color-text-primary)}.markdown-content p{margin:0 0 var(--spacing-md) 0}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:var(--spacing-lg) 0 var(--spacing-md) 0;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.markdown-content h1{font-size:var(--font-size-xl)}.markdown-content h2{font-size:var(--font-size-lg)}.markdown-content h3{font-size:var(--font-size-base)}.markdown-content ul,.markdown-content ol{margin:0 0 var(--spacing-md) 0;padding-left:var(--spacing-xl)}.markdown-content li{margin-bottom:var(--spacing-sm)}.markdown-content code{background:var(--color-gray-100);padding:2px var(--spacing-sm);border-radius:var(--radius-sm);font-size:.9em;font-family:Monaco,Courier New,monospace}.markdown-content pre{background:var(--color-gray-900);color:var(--color-gray-50);padding:var(--spacing-lg);border-radius:var(--radius-md);overflow-x:auto;margin:var(--spacing-md) 0}.markdown-content pre code{background:transparent;padding:0;color:inherit}.markdown-content a{color:var(--color-primary);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition-fast)}.markdown-content a:hover{border-bottom-color:var(--color-primary)}.markdown-content blockquote{border-left:3px solid var(--color-primary);padding-left:var(--spacing-lg);margin:var(--spacing-md) 0;color:var(--color-text-secondary);font-style:italic}.markdown-content table{width:100%;border-collapse:separate;border-spacing:0;margin:var(--spacing-xl) 0;font-size:var(--font-size-sm);overflow-x:auto;display:block;background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000001a}.markdown-content table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--color-text-white)}.markdown-content table th{padding:var(--spacing-lg) var(--spacing-xl);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-white);font-size:var(--font-size-base);letter-spacing:.3px;border:none;position:sticky;top:0;z-index:10}.markdown-content table th:first-child{border-top-left-radius:var(--radius-lg)}.markdown-content table th:last-child{border-top-right-radius:var(--radius-lg)}.markdown-content table td{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-gray-200);color:var(--color-text-secondary);background:var(--color-bg-primary);transition:background-color .2s ease}.markdown-content table tbody tr{transition:all .2s ease}.markdown-content table tbody tr:hover{background-color:#667eea0d;transform:scale(1.001);box-shadow:0 2px 8px #667eea1a}.markdown-content table tbody tr:hover td{background-color:transparent}.markdown-content table tbody tr:last-child td{border-bottom:none}.markdown-content table tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius-lg)}.markdown-content table tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-lg)}.markdown-content table tbody tr:nth-child(2n) td{background-color:var(--color-gray-50)}.markdown-content table tbody tr:nth-child(2n):hover td{background-color:#667eea0d}.markdown-content sup{font-size:.7em;vertical-align:super;line-height:0;font-weight:var(--font-weight-semibold);color:var(--color-primary);margin-left:2px;cursor:pointer;transition:color .2s ease}.markdown-content sup:hover{color:var(--color-primary-dark);text-decoration:underline}.sources-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-gray-200)}.sources-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.sources-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.tools-badge{padding:4px 10px;border-radius:12px;font-size:10px;font-weight:500;background:var(--color-gray-100);color:var(--color-text-secondary);white-space:nowrap}.sources-list{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:300px;overflow-y:auto;padding-right:var(--spacing-xs)}.sources-list::-webkit-scrollbar{width:6px}.sources-list::-webkit-scrollbar-track{background:var(--color-gray-100);border-radius:3px}.sources-list::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:3px}.sources-list::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.source-item{padding:var(--spacing-md);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);transition:all .2s ease}.source-item:hover{background:var(--color-gray-100);border-color:var(--color-primary);box-shadow:0 2px 8px #00000014;transform:translate(2px)}.source-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);gap:var(--spacing-md);flex-wrap:wrap}.source-name-section{display:flex;align-items:center;gap:var(--spacing-xs);flex:1;min-width:0}.source-label{font-size:11px;font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);white-space:nowrap}.source-file-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-meta-badges{display:flex;gap:var(--spacing-xs);align-items:center;flex-shrink:0}.relevance-badge{font-size:10px;font-weight:600;padding:4px 8px;border-radius:12px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;white-space:nowrap;box-shadow:0 1px 3px #0000001a}.page-badge{font-size:10px;font-weight:500;padding:4px 8px;border-radius:12px;background:var(--color-gray-200);color:var(--color-text-secondary);white-space:nowrap}.source-snippet{font-size:11px;line-height:1.5;color:var(--color-text-secondary);padding:var(--spacing-sm);background:var(--color-bg-primary);border-left:3px solid var(--color-primary);border-radius:4px;margin-top:var(--spacing-sm);position:relative;padding-left:var(--spacing-md)}.source-snippet:before{content:'"';position:absolute;left:6px;top:4px;font-size:16px;color:var(--color-primary);opacity:.5;font-family:Georgia,serif}.error-text{color:var(--color-error);font-size:var(--font-size-sm);margin:0}.error-response{background:var(--color-error-light);border:1px solid var(--color-error-border)}.skeleton-container{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.skeleton-line{height:16px;background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton-loading 1.5s ease-in-out infinite}.skeleton-line.short{width:60%}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.thinking-indicator,.thinking-dots{display:flex;gap:var(--spacing-xs);align-items:center}.thinking-indicator{justify-content:center;padding:var(--spacing-md) 0}.thinking-indicator span,.thinking-dots span{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-primary);animation:thinking-pulse 1.4s ease-in-out infinite}.thinking-indicator span:nth-child(1),.thinking-dots span:nth-child(1){animation-delay:0s}.thinking-indicator span:nth-child(2),.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-indicator span:nth-child(3),.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking-pulse{0%,60%,to{transform:scale(1);opacity:.5}30%{transform:scale(1.2);opacity:1}}.generating-indicator{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-gray-100);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm)}.generating-text{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.agent-container,.admin-container{min-height:100vh;display:flex;flex-direction:column}.settings-container{min-height:100vh;background:transparent;display:flex;flex-direction:column}.settings-content{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:var(--spacing-md) auto;padding:0;box-sizing:border-box;margin-left:auto;margin-right:auto}.settings-content-wrapper{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:var(--spacing-md) auto;padding:0;box-sizing:border-box}.settings-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-lg) 0;min-height:60px}.settings-header-actions{display:flex;align-items:center;gap:var(--spacing-md);height:40px}.settings-header-title{display:flex;align-items:center;gap:var(--spacing-lg);height:40px}.settings-icon-container{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.settings-icon-cog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse 2s ease-in-out infinite;opacity:.4;color:var(--color-gray-400);z-index:1}@keyframes rotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.1);opacity:.6}}.settings-header-title h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.1)}.settings-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);padding:0;overflow:hidden;margin:0;width:100%;box-sizing:border-box}.settings-tabs{display:flex;border-bottom:1px solid var(--color-gray-200);background:var(--color-gray-50)}.settings-tab{flex:1;padding:var(--spacing-lg) var(--spacing-xl);background:none;border:none;border-bottom:2px solid transparent;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.settings-tab:hover{color:var(--color-text-secondary);background:var(--color-gray-100)}.settings-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:var(--color-bg-primary)}.settings-tab:disabled{opacity:.5;cursor:not-allowed;color:var(--color-text-tertiary)}.settings-tab:disabled:hover{background:transparent;color:var(--color-text-tertiary)}.settings-tab-content{padding:var(--spacing-2xl)}.settings-section{margin-bottom:0}.settings-section h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-xl) 0}.settings-section h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.settings-item{margin-bottom:var(--spacing-xl)}.settings-item:last-child{margin-bottom:0}.settings-item label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.settings-item label:has(input[type=checkbox]){display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer;margin-bottom:0}.settings-item input[type=checkbox]{width:var(--spacing-lg);height:var(--spacing-lg);cursor:pointer;accent-color:var(--color-primary)}.settings-select{width:100%;max-width:300px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text-secondary);background:var(--color-bg-primary);cursor:pointer;transition:all var(--transition-fast)}.settings-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.upload-area{margin-bottom:var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-lg);align-items:center;padding:var(--spacing-md);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);background:var(--color-gray-50);transition:all var(--transition-fast)}.upload-area:hover{border-color:var(--color-primary);background:var(--color-bg-primary)}.upload-options{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-white);border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.conflict-warning{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-warning-50);border:1px solid var(--color-warning-200);border-radius:var(--radius-md);color:var(--color-warning-800)}.conflict-warning ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}.conflict-warning li{margin-bottom:var(--spacing-xs)}.file-input{display:none}.upload-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-2xl);background:var(--color-primary-gradient);color:var(--color-text-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);font-family:inherit}.upload-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-primary)}.upload-button:active:not(:disabled){transform:translateY(0)}.upload-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.upload-hint{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin:0;text-align:center}.files-list{margin-top:var(--spacing-sm)}.files-table{width:100%;border-collapse:collapse;margin-top:0;background:var(--color-bg-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.files-table th,.files-table td{padding:0;text-align:left;border-bottom:1px solid var(--color-gray-200)}.files-table th{background:var(--color-gray-50);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:2px solid var(--color-gray-300)}.files-table tr:hover{background:var(--color-gray-25)}.file-name-cell{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.file-size-cell{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.file-actions-cell{text-align:right;min-width:100px}.file-name{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:var(--spacing-xs)}.file-size{display:block;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.file-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.view-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;padding:0}.view-button:hover{background:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary)}.delete-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-error);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;padding:0}.delete-button:hover{background:var(--color-error-light);border-color:var(--color-error-border)}.delete-button:active{transform:scale(.95)}.empty-state{text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--spacing-2xl);margin:0}.agents-layout{display:grid;grid-template-columns:400px 1fr;gap:var(--spacing-2xl);min-height:600px}.agents-column{display:flex;flex-direction:column;gap:var(--spacing-lg);border-right:1px solid var(--color-gray-200);padding-right:var(--spacing-2xl)}.agents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.agents-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.agents-grid{display:flex;flex-direction:column;gap:var(--spacing-md);max-height:calc(100vh - 300px);overflow-y:auto}.agents-grid::-webkit-scrollbar{width:8px}.agents-grid::-webkit-scrollbar-track{background:transparent}.agents-grid::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.agents-grid::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.agent-card{padding:var(--spacing-lg);background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-fast);margin:var(--spacing-md)}.agent-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.agent-card.active{border-color:var(--color-primary);background:var(--color-bg-primary);box-shadow:var(--shadow-primary)}.agent-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.agent-card-header h4{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;flex:1}.agent-card-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.agent-card-actions .btn-icon:not(.upload-button-card){border-radius:var(--radius-md)!important;background:var(--color-gray-100)!important;color:var(--color-text-secondary)!important;border:none!important;transition:all var(--transition-fast)}.agent-card-actions .btn-icon:not(.upload-button-card):hover{background:var(--color-gray-200)!important;color:var(--color-text-primary)!important;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.agent-card-actions .delete-button{background:var(--color-error-light)!important;color:var(--color-error)!important}.agent-card-actions .delete-button:hover{background:#fee2e2!important;color:#dc2626!important}.agent-card-info{margin:var(--spacing-sm) 0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.agent-id{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;font-family:inherit}.agent-info-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:var(--font-size-sm);line-height:1.5;margin-bottom:var(--spacing-xs)}.agent-info-item:last-child{margin-bottom:0}.agent-info-label{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);flex-shrink:0;min-width:110px;font-size:var(--font-size-sm)}.agent-info-value{color:var(--color-text-primary);flex:1;word-break:break-word;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.agent-info-value.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.agent-card-footer{margin-top:var(--spacing-md);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.upload-button-card{display:flex!important;align-items:center!important;gap:var(--spacing-xs)!important;background:var(--color-primary)!important;color:#fff!important;border-radius:var(--radius-md)!important;border:none!important;padding:var(--spacing-xs) var(--spacing-sm)!important;font-size:var(--font-size-xs)!important;font-weight:var(--font-weight-medium)!important;transition:all var(--transition-fast);white-space:nowrap}.upload-button-card:hover{background:var(--color-primary-dark)!important;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.upload-button-card svg{flex-shrink:0}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.status-badge.enabled{background:var(--color-success);color:var(--color-text-white)}.status-badge.disabled{background:var(--color-gray-300);color:var(--color-text-secondary)}.agent-sync-dropdown-wrap{position:relative}.agent-sync-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:1px solid var(--color-gray-300);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.agent-sync-btn:hover:not(:disabled){background:var(--color-gray-100);border-color:var(--color-gray-400)}.agent-sync-btn.has-unsynced{border-color:var(--color-warning, #e6a800);background:#e6a8001f;color:var(--color-warning-dark, #b38600)}.agent-sync-btn.has-unsynced .agent-sync-warning-icon{color:var(--color-warning, #e6a800)}.agent-sync-btn.resyncing{pointer-events:none;opacity:.8}.agent-sync-spinner{width:14px;height:14px;border:2px solid var(--color-gray-300);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.agent-sync-chevron{flex-shrink:0;opacity:.7}.agent-sync-dropdown{position:absolute;top:100%;left:0;margin-top:var(--spacing-xs);min-width:220px;background:var(--color-bg-primary);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:50;padding:var(--spacing-xs)}.agent-sync-option{display:block;width:100%;text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.agent-sync-option:hover{background:var(--color-gray-100)}.agent-form-card{padding:var(--spacing-xl);background:var(--color-bg-primary);border:2px solid var(--color-primary);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.agent-form-card h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0}.endpoint-group{padding:var(--spacing-lg);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.endpoint-group h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.endpoint-group h4:before{content:"";width:4px;height:16px;background:var(--color-primary-gradient);border-radius:2px}.endpoint-group .form-group:last-child{margin-bottom:0}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.upload-column{display:flex;flex-direction:column;gap:var(--spacing-xl)}.upload-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.upload-placeholder{display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--color-text-tertiary);font-size:var(--font-size-base)}.loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg-primary);position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3xl);max-width:400px;width:100%;padding:var(--spacing-2xl)}.loading-logo{display:flex;align-items:center;justify-content:center}.logo-square{width:48px;height:48px;background:var(--color-primary);border-radius:var(--radius-sm);animation:logoPulse 2s ease-in-out infinite}@keyframes logoPulse{0%,to{opacity:1}50%{opacity:.6}}.loading-text-container{text-align:center;width:100%}.loading-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);text-transform:uppercase}.loading-status{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-weight:var(--font-weight-normal)}.status-text{font-weight:var(--font-weight-normal)}.status-dot{color:var(--color-primary);animation:dotBlink 1.5s ease-in-out infinite;font-size:.5rem}@keyframes dotBlink{0%,to{opacity:1}50%{opacity:.3}}.loading-bar{width:100%;height:2px;background:var(--color-gray-200);border-radius:1px;overflow:hidden;position:relative}.bar-fill{height:100%;width:40%;background:var(--color-primary);border-radius:1px;animation:barMove 1.5s ease-in-out infinite}@keyframes barMove{0%{transform:translate(-100%)}50%{transform:translate(250%)}to{transform:translate(-100%)}}.settings-content,.settings-content-wrapper{width:calc(100% - var(--spacing-md) * 2 - 2px);max-width:1598px;margin:var(--spacing-md) auto;padding:0}@media(max-width:575px){:root{--spacing-md: .5rem;--spacing-lg: .75rem;--spacing-xl: 1rem}.navbar{padding:var(--spacing-sm)}.navbar-content{padding:0 var(--spacing-sm);gap:var(--spacing-sm)}.navbar-logo h1{font-size:1rem}.chat-layout{width:calc(100% - var(--spacing-md) * 2);margin:var(--spacing-md) auto;margin-top:calc(var(--navbar-height) + var(--spacing-md));padding-bottom:calc(120px + var(--spacing-md) * 2)}.chat-main{min-height:50vh}.chat-tabs-container{padding-bottom:var(--spacing-xs)}.chat-tab-title{max-width:100px}.chat-input-container{width:calc(100% - var(--spacing-md) * 2);padding:var(--spacing-md) var(--spacing-sm);bottom:var(--spacing-sm)}.settings-header,.automation-header,.integration-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md)}.settings-header-actions{width:100%}.message{max-width:85%}.agent-selector{flex-direction:column;gap:var(--spacing-xs)}.endpoint-results-grid,.files-grid,.agents-layout{grid-template-columns:1fr}}@media(min-width:576px)and (max-width:767px){.chat-tab-title{max-width:120px}.chat-input-container{width:calc(100% - var(--spacing-md) * 2);padding:var(--spacing-md) var(--spacing-lg)}.message{max-width:80%}.endpoint-results-grid{grid-template-columns:1fr}}@media(min-width:768px)and (max-width:1023px){.chat-layout{margin-top:calc(var(--navbar-height) + var(--spacing-md))}.chat-tab-title{max-width:150px}.chat-input-container{width:calc(100% - var(--spacing-md) * 2);padding:var(--spacing-lg) var(--spacing-xl)}.endpoint-results-grid,.files-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.chat-layout{margin-top:calc(var(--navbar-height) + var(--spacing-md))}.chat-tab-title{max-width:150px}.chat-input-container{width:calc(100% - var(--spacing-md) * 2 - 2px);max-width:1598px;padding:var(--spacing-lg) var(--spacing-xl)}.endpoint-results-grid{grid-template-columns:repeat(3,1fr)}}.debug-drawer-overlay{position:fixed;inset:0;background:#00000080;z-index:999;animation:fadeIn var(--transition-fast) ease-out}.debug-drawer{position:fixed;top:0;right:0;width:500px;max-width:90vw;height:100vh;background:var(--color-bg-primary);box-shadow:var(--shadow-xl);z-index:1000;display:flex;flex-direction:column;animation:slideInRight var(--transition-base) ease-out;overflow:hidden}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.debug-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-gray-200);background:var(--color-gray-50);flex-shrink:0}.debug-drawer-header h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.debug-drawer-close{width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.debug-drawer-close:hover{background:var(--color-gray-200);color:var(--color-text-primary)}.debug-drawer-content{flex:1;overflow-y:auto;padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-2xl)}.debug-drawer-content::-webkit-scrollbar{width:8px}.debug-drawer-content::-webkit-scrollbar-track{background:transparent}.debug-drawer-content::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.debug-drawer-content::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.debug-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.debug-section h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-gray-200)}.debug-code{margin:0;padding:var(--spacing-lg);background:var(--color-gray-900);color:var(--color-gray-50);border-radius:var(--radius-md);font-family:Monaco,Courier New,monospace;font-size:var(--font-size-sm);line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}.debug-code::-webkit-scrollbar{height:8px}.debug-code::-webkit-scrollbar-track{background:var(--color-gray-800);border-radius:var(--radius-sm)}.debug-code::-webkit-scrollbar-thumb{background:var(--color-gray-600);border-radius:var(--radius-sm)}.debug-code::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}@media(max-width:768px){.debug-drawer{width:100vw;max-width:100vw}.debug-drawer-header{padding:var(--spacing-md) var(--spacing-lg)}.debug-drawer-content{padding:var(--spacing-lg);gap:var(--spacing-xl)}.debug-code{font-size:var(--font-size-xs);padding:var(--spacing-md)}}.automation-header,.integration-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) 0;background:transparent;border-radius:0;box-shadow:none;border:none;margin:0 0 var(--spacing-lg) 0;min-height:60px}.automation-header h1,.integration-header h1{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.1)}.automation-form,.integration-form{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin-bottom:var(--spacing-2xl);box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:var(--spacing-xl)}.form-group label{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:.9rem}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:.95rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.code-editor-wrapper{border:1px solid var(--color-gray-300);border-radius:var(--radius-md);overflow:hidden}.code-editor-toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-300)}.code-editor{width:100%;padding:var(--spacing-md);border:none;resize:vertical;font-family:Courier New,monospace;background:var(--color-bg-primary)}.error-text{color:var(--color-error);font-size:.85rem}.automation-list,.integration-list,.voice-agent-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md);padding:0}.automation-card,.integration-card,.voice-agent-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-gray-200);display:flex;flex-direction:column;justify-content:space-between;transition:all var(--transition-fast);margin:0}.automation-card:hover,.integration-card:hover,.voice-agent-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.automation-card-content,.integration-card-content,.voice-agent-card-content{flex:1}.automation-card h3,.integration-card h3,.voice-agent-card h3{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-md) 0}.automation-description,.integration-description{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:var(--spacing-md);line-height:1.5}.automation-meta,.integration-meta,.voice-agent-meta{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:.85rem;color:var(--color-text-tertiary)}.automation-card-actions,.integration-card-actions,.voice-agent-card-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.automation-view-container,.integration-view-container,.voice-agent-view-container{padding:var(--spacing-xl);height:calc(100vh - var(--navbar-height));display:flex;flex-direction:column}.automation-view-header,.integration-view-header,.voice-agent-view-header{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.automation-view-header h2,.integration-view-header h2,.voice-agent-view-header h2{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0}.voice-agent-view-content{flex:1;overflow-y:auto}.voice-agent-details{background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.detail-item{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-gray-200)}.detail-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-item strong{color:var(--color-text-primary);margin-right:var(--spacing-sm)}.recordings-section{background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--spacing-xl)}.recordings-section h3{margin:0 0 var(--spacing-lg) 0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.loading-container,.empty-state{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary)}.loading-spinner{border:3px solid var(--color-gray-200);border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto var(--spacing-lg)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.85rem}.btn-danger{background:var(--color-error);color:var(--color-text-white)}.btn-danger:hover{background:var(--color-error-dark)}.admin-header-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.admin-clients-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.data-table-container,.admin-clients-table-container{overflow-x:auto;width:100%}.data-table,.admin-clients-table{width:100%;border-collapse:collapse;background:var(--color-bg-primary);border-radius:var(--radius-lg);overflow:hidden}.data-table thead,.admin-clients-table thead{background:var(--color-gray-50);border-bottom:2px solid var(--color-gray-200)}.data-table th,.admin-clients-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--color-text-primary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr,.admin-clients-table tbody tr{border-bottom:1px solid var(--color-gray-200);transition:background-color var(--transition-fast)}.data-table tbody tr:last-child,.admin-clients-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover,.admin-clients-table tbody tr:hover{background:var(--color-gray-50)}.data-table-row-clickable,.admin-clients-table tbody tr{cursor:pointer}.data-table td,.admin-clients-table td{padding:var(--spacing-md);color:var(--color-text-secondary);font-size:.9rem}.table-user-cell{display:flex;align-items:center;gap:var(--spacing-md)}.user-avatar-small{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-avatar-initials-small{width:36px;height:36px;border-radius:50%;background:var(--color-primary-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0}.table-user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.table-user-info strong{color:var(--color-text-primary);font-weight:600;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-user-email{font-size:.8rem;color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-uid{font-family:monospace;font-size:.85rem;color:var(--color-text-tertiary)}.table-role{font-size:.875rem;color:var(--color-text-secondary)}.admin-client-row strong{color:var(--color-text-primary);font-weight:600}.client-id-small{font-size:.75rem;color:var(--color-text-tertiary);margin-top:2px}.admin-table-actions{display:flex;gap:var(--spacing-xs)}.admin-search-container{position:relative;display:flex;align-items:center;margin-right:var(--spacing-md)}.admin-search-input{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 36px;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:.9rem;width:300px;transition:all var(--transition-fast)}.admin-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.admin-search-icon{position:absolute;left:var(--spacing-md);color:var(--color-text-tertiary);pointer-events:none}.admin-search-results{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:.875rem;text-align:right}.admin-client-form{max-width:600px;margin:0 auto;padding:var(--spacing-xl)}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.form-header h2{margin:0;color:var(--color-text-primary);font-size:1.5rem;font-weight:600}.admin-client-form .form-group,.admin-user-form-modal .form-group{margin-bottom:var(--spacing-lg)}.admin-client-form .form-group label,.admin-user-form-modal .form-group label{display:block;font-size:.9rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.admin-client-form .form-group input,.admin-client-form .form-group select,.admin-user-form-modal .form-group input,.admin-user-form-modal .form-group select{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:.95rem;font-family:inherit;background:var(--color-bg-primary);color:var(--color-text-primary);transition:all var(--transition-fast);box-sizing:border-box}.admin-client-form .form-group input:focus,.admin-client-form .form-group select:focus,.admin-user-form-modal .form-group input:focus,.admin-user-form-modal .form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.admin-client-form .form-group input:disabled,.admin-client-form .form-group select:disabled,.admin-user-form-modal .form-group input:disabled,.admin-user-form-modal .form-group select:disabled{background-color:var(--color-gray-100);cursor:not-allowed;opacity:.6}.admin-client-form .form-group select,.admin-user-form-modal .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;background-size:12px;padding-right:calc(var(--spacing-xl) + 12px)}.admin-client-form .form-group select:hover:not(:disabled),.admin-user-form-modal .form-group select:hover:not(:disabled){border-color:var(--color-gray-400)}.admin-client-form .form-group label:has(input[type=checkbox]),.admin-user-form-modal .form-group label.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:500;margin-bottom:0}.admin-client-form .form-group input[type=checkbox],.admin-user-form-modal .form-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary);margin:0;flex-shrink:0;padding:0}.admin-client-form .form-actions,.admin-user-form-modal .form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-gray-200)}.admin-client-view-wrapper{width:100%;min-height:100vh;padding:var(--spacing-xl);padding-top:var(--spacing-md);background:var(--color-bg-secondary)}.admin-client-view{width:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-client-view-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xl);margin-bottom:var(--spacing-md)}.admin-client-view-title{flex:1}.admin-client-view-title h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--color-text-primary)}.admin-client-view-meta{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xs)}.admin-floating-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-xl)}.admin-actions-card{background:linear-gradient(135deg,#667eea0d,#764ba20d);border:1px solid rgba(102,126,234,.15)}.admin-actions-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.admin-actions-row .btn{display:flex;align-items:center;gap:var(--spacing-sm)}.admin-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.admin-card-header .admin-section-title{margin:0}.admin-back-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9rem;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.admin-back-button:hover{background:var(--color-gray-50);border-color:var(--color-gray-400);color:var(--color-text-primary)}.admin-back-button svg{flex-shrink:0}.admin-view-id{font-size:.875rem;color:var(--color-text-tertiary);font-family:monospace}.admin-section-title{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-primary);font-size:1.25rem;font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.info-grid>div{padding:var(--spacing-sm);color:var(--color-text-secondary)}.info-grid strong{color:var(--color-text-primary);margin-right:var(--spacing-sm)}.info-grid-improved{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--color-gray-50);border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.info-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary)}.info-value{font-size:.95rem;color:var(--color-text-primary);font-weight:500}.admin-stats-widgets{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-md)}.widget-card{background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg);text-align:center;transition:all var(--transition-fast)}.widget-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.widget-card h4{margin:0 0 var(--spacing-md) 0;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.widget-value{font-size:2rem;font-weight:700;color:var(--color-primary);margin:var(--spacing-md) 0}.widget-label{font-size:.85rem;color:var(--color-text-tertiary);margin:0}.admin-floating-card .admin-card-header{padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-gray-100)}.user-avatar,.user-avatar-initials{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-weight:600;font-size:.9rem}.user-avatar{object-fit:cover}.user-status{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.user-status.status-active{background:var(--color-success);color:#fff}.user-status.status-inactive{background:var(--color-gray-400);color:#fff}.user-status.status-suspended{background:var(--color-error);color:#fff}.super-admin-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;background:var(--color-primary);color:#fff;text-transform:uppercase}.admin-user-form-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-user-form-modal .modal-content{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-xl);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-gray-200)}.modal-header h3{margin:0;color:var(--color-text-primary)}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl);justify-content:flex-end}.admin-user-form-modal .form-actions{padding-top:var(--spacing-lg);border-top:1px solid var(--color-gray-200)}.integration-card{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:0 auto;background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;margin-bottom:var(--spacing-xl);overflow:hidden}.integration-card.has-margin-top{margin-top:var(--spacing-lg)}.integration-card-header{padding:var(--spacing-lg);border-bottom:1px solid rgba(102,126,234,.15);background:linear-gradient(135deg,#667eea1a,#764ba21a);box-shadow:0 2px 8px #0000000f}.integration-card-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.integration-card-workflow{width:100%;height:350px;position:relative;background:#f5f5f5}.integration-card-iframe{width:100%;height:100%;border:none;display:block;background:#fff}.integration-container{width:100%;max-width:1600px;margin:0 auto;padding:var(--spacing-xl);box-sizing:border-box}.integration-container.hide-header{padding:var(--spacing-lg)}.integration-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl)}.integration-content-wrapper{width:100%;max-width:100%}.integration-demo-banner{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:0 auto;background:linear-gradient(135deg,#667eea,#764ba2);background-size:200% 200%;animation:gradientShift 3s ease infinite;color:#fff;padding:var(--spacing-sm) var(--spacing-2xl);text-align:center;box-shadow:0 4px 12px #667eea4d;position:relative;overflow:hidden;margin-bottom:var(--spacing-xl);border-radius:var(--radius-lg)}.integration-demo-banner-content{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md)}.integration-demo-banner-text{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.menu-editor-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-xl)}.menu-editor-modal{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.menu-editor-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-gray-200);background:linear-gradient(135deg,#667eea1a,#764ba21a)}.menu-editor-modal-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.menu-editor-close-btn{background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.menu-editor-close-btn:hover{background:var(--color-gray-100);color:var(--color-text-primary)}.menu-editor-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-xl)}.menu-editor-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-gray-200);background:var(--color-bg-secondary)}.menu-editor-footer-right{display:flex;gap:var(--spacing-md)}.menu-editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);color:var(--color-text-tertiary)}.menu-editor-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.menu-editor-section:last-child{margin-bottom:0}.menu-editor-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.menu-editor-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.menu-editor-section-header h4{margin:0}.radio-group{display:flex;gap:var(--spacing-lg)}.radio-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;color:var(--color-text-secondary)}.radio-label input[type=radio]{accent-color:var(--color-primary);width:16px;height:16px}.menu-items-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.menu-item-group{border-radius:var(--radius-md);overflow:hidden}.menu-item-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);transition:all var(--transition-fast)}.menu-item-row:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.menu-item-row.dragging{opacity:.5;border-style:dashed;border-color:var(--color-primary)}.menu-item-child{margin-left:var(--spacing-2xl);background:var(--color-bg-tertiary)}.menu-item-children{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.menu-item-drag-handle{cursor:grab;color:var(--color-text-muted);padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center}.menu-item-drag-handle:active{cursor:grabbing}.menu-item-submenu-drop-zone{font-size:var(--font-size-xs);color:var(--color-text-muted);padding:var(--spacing-xs) var(--spacing-sm);border:1px dashed var(--color-gray-300);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:border-color var(--transition-fast),background var(--transition-fast)}.menu-item-submenu-drop-zone:hover,.menu-item-submenu-drop-zone.drag-over{border-color:var(--color-primary);background:var(--color-primary-light, rgba(59, 130, 246, .08))}.menu-item-expand-btn{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.menu-item-expand-btn:hover{background:var(--color-gray-100);color:var(--color-text-secondary)}.menu-item-toggle{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.menu-item-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-gray-300);transition:var(--transition-fast);border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:var(--transition-fast);border-radius:50%;box-shadow:var(--shadow-sm)}.menu-item-toggle input:checked+.toggle-slider{background-color:var(--color-primary)}.menu-item-toggle input:checked+.toggle-slider:before{transform:translate(20px)}.menu-item-toggle input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.menu-item-path{font-size:var(--font-size-xs);color:var(--color-text-muted);font-family:monospace;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-gray-100);border-radius:var(--radius-sm);min-width:100px}.menu-item-label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);min-width:120px}.menu-item-badge{font-size:var(--font-size-xs);padding:2px 10px;border-radius:9999px;font-weight:var(--font-weight-medium)}.menu-item-badge.custom{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border-radius:9999px}.menu-item-actions{display:flex;gap:var(--spacing-xs);margin-left:auto}.btn-ghost{background:transparent;border:none;color:var(--color-text-tertiary);padding:var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.btn-ghost:hover{background:var(--color-gray-100);color:var(--color-text-primary)}.btn-ghost.btn-danger:hover{background:var(--color-error-light);color:var(--color-error)}.menu-editor-sub-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;padding:var(--spacing-xl)}.menu-editor-sub-modal{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.menu-editor-sub-modal-large{max-width:700px}.menu-editor-sub-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.menu-editor-sub-modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.menu-editor-sub-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.menu-editor-sub-modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-gray-200);background:var(--color-bg-secondary)}.input-with-prefix{display:flex;align-items:stretch;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-primary)}.input-with-prefix:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.input-prefix{background:var(--color-bg-secondary);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-muted);font-size:var(--font-size-sm);border-right:1px solid var(--color-gray-200);display:flex;align-items:center}.input-with-prefix input{flex:1;border:none;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);outline:none}.form-help{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--spacing-xs)}.form-help-above{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.user-transfer-list{display:flex;gap:var(--spacing-md);align-items:stretch}.transfer-box{flex:1;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-primary);display:flex;flex-direction:column;min-height:200px}.transfer-box-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-gray-200);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--spacing-sm)}.transfer-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.transfer-box-list{flex:1;overflow-y:auto;padding:var(--spacing-xs)}.transfer-box-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.transfer-box-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);display:flex;flex-direction:column;gap:2px}.transfer-box-item:hover{background:var(--color-gray-100)}.transfer-box-item.selected{background:#667eea1a;border:1px solid var(--color-primary)}.transfer-user-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.transfer-user-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.transfer-buttons{display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm)}.custom-view-container{width:calc(100% - var(--spacing-md) * 2);max-width:1600px;margin:0 auto;margin-top:calc(var(--spacing-xs) - var(--spacing-md));height:calc(100vh - var(--navbar-height) - var(--spacing-md) * 2 - var(--spacing-xs));display:flex;flex-direction:column;background:transparent;overflow:hidden}.custom-view-iframe{flex:1;width:100%;min-height:0;border:none;background:#fff}.custom-view-loading,.custom-view-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;color:var(--color-text-secondary)}.custom-view-error svg{color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.custom-view-error h2{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);color:var(--color-text-primary)}.custom-view-error p{margin:0;font-size:var(--font-size-base)}.custom-view-hint{margin-top:var(--spacing-md)!important;font-size:var(--font-size-sm)!important;color:var(--color-text-muted)!important}.logout-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--spacing-lg);color:var(--color-text-secondary)}.users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.users-header h2{margin:0}.users-header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.license-indicator{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.users-table thead th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-gray-200)}.users-table tbody td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-gray-100);vertical-align:middle}.users-table tbody tr:last-child td{border-bottom:none}.user-cell{display:flex;align-items:center;gap:var(--spacing-sm)}.user-avatar-sm{width:32px;height:32px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0}.user-avatar-initials-sm{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-primary-gradient);color:var(--color-text-white);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-shrink:0}.user-cell-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.user-cell-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.role-badge.role-super{background:#fef3c7;color:#92400e}.role-badge.role-admin{background:#dbeafe;color:#1e40af}.role-badge.role-user{background:var(--color-gray-100);color:var(--color-text-secondary)}.user-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.user-self-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}@media(max-width:768px){.menu-editor-modal{max-height:100vh;border-radius:0}.menu-editor-modal-overlay{padding:0}.menu-item-row{flex-wrap:wrap}.menu-item-actions{width:100%;justify-content:flex-end;margin-top:var(--spacing-sm)}.menu-item-child{margin-left:var(--spacing-lg)}.user-transfer-list{flex-direction:column}.transfer-buttons{flex-direction:row;justify-content:center}.transfer-buttons .btn svg{transform:rotate(90deg)}.users-table-container{font-size:var(--font-size-xs)}.user-actions{flex-wrap:wrap}.users-header{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}}.navbar-hamburger{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);flex-shrink:0}.navbar-hamburger:hover{background:var(--color-gray-50);color:var(--color-text-primary)}.navbar-mobile-menu,.navbar-mobile-backdrop{display:none}.navbar-mobile-menu-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left;font-family:inherit;border-radius:0;box-sizing:border-box}.navbar-mobile-menu-item:hover{background:var(--color-gray-50);color:var(--color-text-primary)}.navbar-mobile-menu-item.active{color:var(--color-primary);background:#667eea14;border-left:3px solid var(--color-primary)}.navbar-mobile-submenu-item{padding-left:calc(var(--spacing-xl) + var(--spacing-xl));font-size:var(--font-size-sm)}.nav-dropdown-subitem{padding-left:calc(var(--spacing-md) + var(--spacing-lg));font-size:var(--font-size-xs)}.ft-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.ft-header-left{flex:1;min-width:200px}.ft-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ft-subtitle{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ft-upload-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary-gradient);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #667eea4d}.ft-upload-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.ft-upload-btn:disabled{opacity:.6;cursor:not-allowed}.ft-dropzone{border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);padding:var(--spacing-2xl);text-align:center;cursor:pointer;transition:all .2s;margin-bottom:var(--spacing-xl);color:var(--color-gray-400)}.ft-dropzone:hover,.ft-dropzone-active{border-color:var(--color-primary);background:#667eea0a;color:var(--color-primary)}.ft-dropzone-text{margin:var(--spacing-md) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ft-loading,.ft-empty{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-secondary)}.ft-empty svg{color:var(--color-gray-300);margin-bottom:var(--spacing-md)}.ft-files-table-wrapper{overflow-x:auto}.ft-files-table{width:100%;border-collapse:collapse}.ft-files-table thead th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--color-gray-200)}.ft-files-table tbody tr{border-bottom:1px solid var(--color-gray-200);transition:background .15s}.ft-files-table tbody tr:hover{background:var(--color-gray-50)}.ft-file-name{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);word-break:break-all}.ft-file-size,.ft-file-date{padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.ft-file-actions{padding:var(--spacing-md);text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-xs)}.ft-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all .15s}.ft-delete-btn:hover{background:var(--color-error-light);color:var(--color-error)}.ft-table-download-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all .15s}.ft-table-download-btn:hover{background:var(--color-primary-light, rgba(59, 130, 246, .1));color:var(--color-primary)}.ft-section{margin-top:var(--spacing-xl)}.ft-section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-md) 0}.ft-download-form{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.ft-download-form h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.ft-download-btn{background:var(--color-bg-primary);color:var(--color-primary);border:1px solid var(--color-primary)}.ft-download-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.ft-download-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.ft-download-card{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-primary);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.ft-download-card:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.ft-download-card-icon{width:48px;height:48px;min-width:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:var(--radius-md)}.ft-download-card-ext{font-size:11px;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px}.ft-download-card-info{flex:1;min-width:0}.ft-download-card-name{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);word-break:break-all}.ft-download-card-desc{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.ft-download-card-meta{display:flex;gap:var(--spacing-md);font-size:11px;color:var(--color-text-tertiary)}.ft-download-card-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);flex-shrink:0}.ft-download-card-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);background:transparent;text-decoration:none;transition:all var(--transition-fast)}.ft-download-card-btn:hover{background:var(--color-primary);color:#fff}@media(max-width:1023px){.nav-menu-item span{display:none}.nav-menu-item{padding:var(--spacing-sm)}.navbar-content{gap:var(--spacing-md)}}@media(max-width:767px){.navbar-hamburger{display:flex;order:-1}.navbar-menu{display:none}.navbar-content{grid-template-columns:auto auto 1fr auto;gap:var(--spacing-xs);padding:0 var(--spacing-sm)}.navbar-logo{order:0}.navbar-actions{order:1;padding-right:var(--spacing-xs);gap:var(--spacing-xs)}.navbar-logo h1{font-size:1.1rem}.navbar{z-index:10000}.navbar-mobile-menu{display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;max-width:100%;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:9999;padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl);transform:translateY(-100%);opacity:0;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;pointer-events:none;overflow-x:hidden;overflow-y:auto;box-sizing:border-box}.navbar-mobile-menu-open{transform:translateY(0);opacity:1;pointer-events:auto}.navbar-mobile-close{align-self:flex-end;margin:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);background:transparent;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.navbar-mobile-close:hover{background:var(--color-gray-50);color:var(--color-text-primary)}.navbar-mobile-backdrop{display:block;position:fixed;inset:0;z-index:9998;background:transparent}}@media(max-width:575px){.navbar-client-info{display:none}}@media(max-width:767px){.ft-header{flex-direction:column;align-items:flex-start}.ft-upload-btn{width:100%;justify-content:center}.ft-file-size,.ft-file-date{display:none}.ft-files-table thead th:nth-child(2),.ft-files-table thead th:nth-child(3){display:none}}
