.backoffice-container{padding:2rem;max-width:1200px;margin:0 auto;font-family:Inter,system-ui,-apple-system,sans-serif;color:#333;height:100vh;overflow-y:auto}.backoffice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.backoffice-header h1{font-size:2rem;font-weight:700;color:#1a1a1a}.btn{padding:.6rem 1.2rem;cursor:pointer;border:none;border-radius:6px;font-weight:500;transition:all .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-secondary{background-color:#e0e0e0;color:#333}.btn-secondary:hover{background-color:#d4d4d4}.btn:disabled{cursor:not-allowed;opacity:.6}.alert{padding:1rem;margin-bottom:1.5rem;border-radius:6px;font-weight:500}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.section-card{margin-bottom:2rem;padding:1.5rem;border:1px solid #e1e4e8;border-radius:8px;background-color:#fff;box-shadow:0 1px 3px #0000001a}.section-card h3{margin-top:0;margin-bottom:1rem;font-size:1.25rem}.upload-controls{display:flex;gap:1rem;align-items:center;margin-top:1rem}.upload-controls input[type=file]{flex-grow:1;padding:.5rem;border:1px solid #ddd;border-radius:4px}.table-container{overflow-x:auto}.product-table{width:100%;border-collapse:collapse;text-align:left}.product-table th{padding:.8rem;border-bottom:2px solid #e1e4e8;background-color:#f8f9fa;font-weight:600}.product-table td{padding:.8rem;border-bottom:1px solid #eee;vertical-align:middle}.category-badge{background-color:#e9ecef;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;color:#495057}.action-link{background:none;border:none;cursor:pointer;font-weight:500;padding:.2rem .4rem;transition:opacity .2s}.action-link:hover{opacity:.7}.action-edit{color:#007bff;margin-right:.5rem}.action-delete{color:#dc3545}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background-color:#fff;padding:2rem;border-radius:12px;width:100%;max-width:650px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-content h2{margin-top:0;margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9rem;color:#444}.form-control{width:100%;padding:.6rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.rtl{direction:rtl}.change-disclaimer-popup{display:flex;align-items:flex-start;gap:8px}@media (max-width: 768px){.backoffice-container{padding:1rem}.backoffice-header h1{font-size:1.4rem}.backoffice-header .btn{width:auto!important;min-width:0!important;white-space:nowrap;font-size:.75rem;padding:.5rem .6rem}.upload-controls{flex-direction:column;align-items:stretch}.upload-controls input[type=file]{width:100%}.upload-controls .btn{width:100%!important}.section-card>div:first-child{flex-wrap:wrap;gap:.5rem}.section-card>div:first-child h2{font-size:1.1rem;margin:0}.section-card .btn-danger{width:auto!important;min-width:0!important;white-space:nowrap}.product-table thead{display:none}.product-table tbody tr{display:block;border:1px solid #e1e4e8;border-radius:8px;margin-bottom:.75rem;padding:.75rem;background:#fff}.product-table td{display:flex;justify-content:space-between;align-items:flex-start;padding:.4rem .25rem;border:none;font-size:.9rem}.product-table td:before{content:attr(data-label);font-weight:600;color:#555;font-size:.8rem;flex-shrink:0;margin-right:.75rem;padding-top:2px}.product-table td:last-child{justify-content:flex-end;gap:.5rem;padding-top:.5rem;border-top:1px solid #f0f0f0;margin-top:.25rem}.product-table td:last-child:before{display:none}.action-link{width:auto!important;min-width:0!important}.modal-content{padding:1.25rem;width:95%;max-height:95vh}}.session-table tr.clickable-row{cursor:pointer;transition:background-color .15s}.session-table tr.clickable-row:hover{background-color:#f0f4ff}.status-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.ended{background-color:#e9ecef;color:#495057}.status-badge.escalated{background-color:#fff3cd;color:#856404}.summary-indicator{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:4px}.summary-indicator.has-summary{background-color:#28a745}.summary-indicator.no-summary{background-color:#ccc}.session-detail-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.session-meta{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.9rem;color:#555}.session-meta dt{font-weight:600;color:#333;margin-bottom:2px}.session-meta dd{margin:0 0 .5rem}.conversation-container{max-height:60vh;overflow-y:auto;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e1e4e8}.explorer-message{display:flex;gap:.75rem;margin-bottom:1rem;align-items:flex-start}.explorer-message.user{flex-direction:row-reverse}.explorer-bubble{max-width:70%;padding:.75rem 1rem;border-radius:12px;font-size:.9rem;line-height:1.5;word-break:break-word}.explorer-bubble p{margin:0 0 .5rem}.explorer-bubble p:last-child{margin-bottom:0}.explorer-message.user .explorer-bubble{background-color:#007bff;color:#fff;border-bottom-right-radius:4px}.explorer-message.agent .explorer-bubble{background-color:#fff;color:#333;border:1px solid #e1e4e8;border-bottom-left-radius:4px}.explorer-role-label{font-size:.7rem;font-weight:600;text-transform:uppercase;color:#888;margin-top:4px;flex-shrink:0}.explorer-timestamp{font-size:.7rem;color:#999;margin-top:4px}.summary-card{margin-top:1.5rem;padding:1.25rem;border-left:4px solid #007bff;background-color:#f0f4ff;border-radius:0 8px 8px 0}.summary-card h3{margin:0 0 .75rem;font-size:1.1rem;color:#333}.summary-card .summary-text{margin-bottom:1rem;line-height:1.6;color:#444}.summary-topics{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.topic-chip{background-color:#e1ecf4;color:#0366d6;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.summary-meta{display:flex;gap:1.5rem;font-size:.85rem;color:#666;margin-top:.5rem}.summary-meta span{display:flex;align-items:center;gap:.3rem}.empty-state{text-align:center;padding:3rem;color:#888}.empty-state p{margin:0;font-size:1rem}@media (max-width: 768px){.backoffice-container{padding:1rem}.backoffice-header h1{font-size:1.4rem}.backoffice-header>div{display:flex;gap:.5rem}.backoffice-header .btn{font-size:.75rem;padding:.5rem .6rem;white-space:nowrap;width:auto!important;min-width:0!important}.section-card{padding:1rem}.session-table thead{display:none}.session-table tbody tr{display:block;border:1px solid #e1e4e8;border-radius:8px;margin-bottom:.75rem;padding:.75rem;background:#fff}.session-table tbody tr.clickable-row:hover{background-color:#f0f4ff}.session-table td{display:flex;justify-content:space-between;align-items:center;padding:.35rem .25rem;border:none;font-size:.9rem}.session-table td:before{content:attr(data-label);font-weight:600;color:#555;font-size:.8rem;flex-shrink:0;margin-right:.5rem}.explorer-bubble{max-width:85%}.summary-meta{flex-direction:column;gap:.4rem}.session-meta{flex-direction:column;gap:.5rem}.session-detail-header{flex-direction:column;align-items:flex-start}}.dashboard-time-range{display:flex;gap:.5rem;flex-wrap:wrap}.dashboard-time-range button{padding:.4rem .9rem;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#555;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.dashboard-time-range button:hover{background:#f0f4ff;border-color:#007bff;color:#007bff}.dashboard-time-range button.active{background:#007bff;color:#fff;border-color:#007bff}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}.dashboard-time-range button,.backoffice-header .btn{width:auto!important;min-width:0!important;white-space:nowrap}.backoffice-header .btn{font-size:.75rem;padding:.5rem .6rem}}.dashboard-panel{padding:1.5rem;border:1px solid #e1e4e8;border-radius:10px;background:#fff;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column}.dashboard-panel h3{margin:0 0 .75rem;font-size:.9rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.03em}.stat-big-number{font-size:3rem;font-weight:700;color:#007bff;line-height:1;margin-bottom:.75rem}.sparkline-container{flex:1;min-height:60px}.sparkline-container svg{width:100%;height:100%}.gauge-container{display:flex;flex-direction:column;align-items:center;padding:1rem 0}.gauge-value{font-size:2rem;font-weight:700;margin-top:.5rem}.gauge-subtitle{font-size:.8rem;color:#888;margin-top:.25rem}.line-chart-container{flex:1;min-height:180px}.line-chart-container svg{width:100%;height:100%}.donut-container{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 0;flex-wrap:wrap}.donut-chart{width:150px;height:150px;border-radius:50%;position:relative}.donut-hole{position:absolute;top:25%;left:25%;width:50%;height:50%;border-radius:50%;background:#fff}.donut-legend{display:flex;flex-direction:column;gap:.5rem}.donut-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#444}.donut-legend-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:200px;color:#888;font-size:1rem}.dashboard-error{color:#dc3545;padding:1rem;text-align:center}.rt-big-number{font-size:2.2rem;font-weight:700;color:#333;margin-bottom:.5rem}:root{--primary-gradient: linear-gradient(135deg, #A35CFF 0%, #5C7CFF 100%);--background-color: #F5F7FB;--card-background: #FFFFFF;--text-primary: #1F2430;--text-secondary: #5A6170;--text-accent: #3558FF;--border-color: #E4E7EE;--shadow-color: rgba(92, 124, 255, .15);--user-message-bg: #5C7CFF;--user-message-text: white;--agent-message-bg: var(--card-background);--agent-message-text: var(--text-primary);--button-primary-bg: var(--primary-gradient);--button-primary-text: white;--button-secondary-bg: #E8EDFF;--button-secondary-text: #3558FF}html,body{height:100%;overflow:hidden;margin:0}#root{height:100%;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-primary)}.login-page-container{display:flex;width:100%;height:100%}.login-branding-panel{width:50%;background:var(--primary-gradient);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:3rem;text-align:center}.logo-large{width:150px;margin-bottom:2rem}.login-branding-panel h1{font-size:3rem;font-weight:700;margin:0}.login-branding-panel p{font-size:1.2rem;color:#fffc;margin-top:1rem}.login-form-panel{width:50%;display:flex;justify-content:center;align-items:center;background-color:var(--card-background)}.login-form-content{width:70%;max-width:400px}.login-form-content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.subtitle{color:var(--text-secondary);margin-bottom:3rem}.input-group{position:relative;margin-bottom:2rem}.input-group input:-webkit-autofill,.input-group input:-webkit-autofill:hover,.input-group input:-webkit-autofill:focus,.input-group input:-webkit-autofill:active{-webkit-text-fill-color:var(--text-primary)!important;-webkit-box-shadow:0 0 0 30px var(--card-background) inset!important;box-shadow:0 0 0 30px var(--card-background) inset!important;background-clip:content-box!important}.input-group input{width:100%;padding:1rem .5rem;border:none;border-bottom:2px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:1rem;outline:none}.input-group label{position:absolute;top:1rem;left:.5rem;color:var(--text-secondary);pointer-events:none;transition:.3s ease-out}.input-group input:focus+label,.input-group input:not(:placeholder-shown)+label{top:-.5rem;left:0;font-size:.8rem;color:var(--text-accent)}.password-toggle-icon{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:0;width:auto}.login-form-content .submit-btn,.modal-content .submit-btn,.sidebar .submit-btn{width:100%;padding:1rem;background:var(--button-primary-bg);color:var(--button-primary-text);border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .3s,box-shadow .3s}.login-form-content .submit-btn:hover,.modal-content .submit-btn:hover,.sidebar .submit-btn:hover{filter:brightness(1.1);box-shadow:0 5px 15px var(--shadow-color)}.error-message{color:#ff6b6b;margin-top:1.5rem}.page-container{display:flex;width:100%;height:100vh;overflow:hidden}.sidebar{width:260px;background:var(--card-background);display:flex;flex-direction:column;padding:1rem;border-right:1px solid var(--border-color)}.new-chat-btn{width:100%;display:flex;align-items:center;gap:.6rem;background:transparent;color:var(--text-primary);border:none;border-radius:10px;padding:.6rem .4rem;font-size:1rem;font-weight:600;cursor:pointer;margin-bottom:1rem;transition:background-color .2s,filter .3s}.new-chat-btn:hover{background-color:#0000000a}.new-chat-icon{width:28px;height:28px;min-width:28px;border-radius:50%;background:var(--button-primary-bg);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;line-height:1;font-weight:700;box-shadow:0 6px 14px var(--shadow-color)}.new-chat-label{font-size:.95rem;font-weight:600}.chat-history{flex-grow:1;overflow-y:auto}.history-item{padding:.75rem 1rem;border-radius:8px;cursor:pointer;margin-bottom:.5rem;transition:background-color .3s;display:flex;justify-content:space-between;align-items:center}.history-item:hover{background-color:#f0f0f5}.history-item.active{background-color:var(--button-secondary-bg);font-weight:500;color:var(--text-accent)}.delete-chat-btn{background:none;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;opacity:0;transition:opacity .3s,color .3s}.history-item:hover .delete-chat-btn{opacity:1}.delete-chat-btn:hover{color:#ff6b6b}.chat-container{flex-grow:1;height:100%;min-height:0;background:var(--background-color);display:flex;flex-direction:column}.chat-header{padding:1rem;border-bottom:1px solid var(--border-color);text-align:center;background:var(--card-background);display:flex;justify-content:space-between;align-items:center}.chat-header h2{margin:0;font-size:1.5rem;flex-grow:1}.notification-bell{position:relative;cursor:pointer;color:var(--text-secondary);transition:all .3s;width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%}.notification-bell.active{background-color:#e5e7eb;color:#1f2430;box-shadow:0 0 0 2px #0000000d}.notification-bell:hover{color:var(--text-primary);background-color:#f0f0f5}.notification-badge{position:absolute;top:2px;right:2px;width:10px;height:10px;background-color:#ff6b6b;border-radius:50%;border:2px solid var(--card-background)}.header-placeholder{width:24px}.chat-body{display:flex;flex-grow:1;overflow-y:auto;min-width:0;min-height:0}.chat-messages{flex-grow:1;padding:1.5rem;min-width:0;max-width:840px;margin:0 auto;width:100%}.chat-message{margin-bottom:1.5rem;display:flex;align-items:flex-start}.icon{width:40px;height:40px;border-radius:50%;margin-right:1rem}.chat-message.user{justify-content:flex-end}.chat-message.user .icon{order:2;margin-left:1rem;margin-right:0}.message-bubble{padding:1rem;border-radius:12px;max-width:100%;line-height:1.6;word-break:break-word;box-shadow:0 4px 12px var(--shadow-color);border:1px solid transparent}.chat-message.user .message-bubble{background:var(--user-message-bg);color:var(--user-message-text)}.chat-message.agent .message-bubble{background:var(--agent-message-bg);color:var(--agent-message-text);border-color:var(--border-color)}.message-wrapper{display:flex;flex-direction:column;max-width:85%;width:100%}.chat-message.agent .message-wrapper{align-items:flex-start}.chat-message.user .message-wrapper{align-items:flex-end}.message-timestamp{font-size:.7rem;color:var(--text-secondary);opacity:.8;letter-spacing:.02em}.message-bubble .attached-image{display:block;max-width:260px;max-height:260px;width:auto;height:auto;background:var(--background-color)}.message-bubble strong{color:var(--text-accent)}.message-bubble ul{padding-left:1.5rem;margin:.5rem 0 0}.message-bubble table{width:100%;border-collapse:collapse;margin-top:1rem}.message-bubble th,.message-bubble td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}.message-bubble th{font-weight:600;color:var(--text-accent)}.message-bubble tr:last-child td{border-bottom:none}.chat-body::-webkit-scrollbar,.chat-history::-webkit-scrollbar{width:8px}.chat-body::-webkit-scrollbar-track,.chat-history::-webkit-scrollbar-track{background:transparent;margin-block:.5rem}.chat-body::-webkit-scrollbar-thumb,.chat-history::-webkit-scrollbar-thumb{background:#5C7CFF;border-radius:10px}.chat-body::-webkit-scrollbar-thumb:hover,.chat-history::-webkit-scrollbar-thumb:hover{background:#4a6de5}.notifications-sidebar{width:320px;min-width:320px;background:#eef2f7;border-left:1px solid var(--border-color);padding:1.5rem;overflow-y:auto;transition:width .3s ease-in-out;flex-shrink:0;position:sticky;top:0;max-height:100vh}.notifications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.notifications-sidebar h3{margin:0;font-size:1.3rem;color:var(--text-primary)}.automate-all-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .3s}.automate-all-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.automate-all-btn:disabled{opacity:.6;cursor:not-allowed}.notification-item{background:#ffffff;padding:1rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid var(--text-accent);box-shadow:0 6px 18px #0000000f}.notification-item h4{margin:0 0 .5rem;color:var(--text-accent)}.notification-item p{margin:.25rem 0;font-size:.9rem;color:var(--text-secondary)}.notification-item p strong{color:var(--text-primary)}.notification-hint{background-color:#4a90e21a;border:1px solid rgba(74,144,226,.3);border-radius:4px;padding:8px;margin-top:8px;font-size:11px;color:#74b9ff!important;font-style:italic}.notification-hint.success{background-color:#28a7451a;border:1px solid rgba(40,167,69,.3);color:#28a745!important}.automation-status{margin:.75rem 0;padding:.5rem;border-radius:6px;font-size:.85rem;font-weight:500}.automation-status.processing{background-color:#ffc1071a;border:1px solid rgba(255,193,7,.3);color:#ffc107}.automation-status.completed{background-color:#28a7451a;border:1px solid rgba(40,167,69,.3);color:#28a745}.automation-status.no_vendors,.automation-status.failed{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#dc3545}.automation-message{margin:.25rem 0 0;font-size:.75rem;opacity:.8}.requisition-info{margin:.25rem 0 0;font-size:.75rem;opacity:.8;font-family:monospace}.automate-single-btn{background:linear-gradient(135deg,#28a745 0%,#20c997 100%);color:#fff;border:none;padding:.4rem .8rem;border-radius:4px;font-size:.75rem;cursor:pointer;margin-top:.5rem;transition:all .3s;width:100%}.automate-single-btn:hover{transform:translateY(-1px);box-shadow:0 3px 8px #28a74566}.typing-indicator{display:flex;align-items:center}.typing-indicator span{height:8px;width:8px;background-color:var(--text-secondary);border-radius:50%;margin:0 2px;animation:bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-area{padding:1rem 1.5rem 1.5rem;border-top:none;background:transparent;max-width:900px;margin:0 auto;width:100%;box-sizing:border-box}.chat-input-wrapper{display:flex;align-items:center;flex-grow:1;background:var(--card-background);border-radius:28px;padding:.5rem;border:1px solid var(--border-color);box-shadow:0 4px 12px var(--shadow-color);min-width:0}.chat-container.with-right-sidebar .chat-input-area{padding-right:340px}.chat-input-area textarea{flex-grow:1;padding:.75rem;border:none;background:transparent;color:var(--text-primary);font-size:1rem;margin:0 .5rem;resize:none;max-height:120px;overflow-y:auto;font-family:inherit;box-sizing:border-box}.chat-input-area textarea:focus{outline:none}.chat-input-area .send-btn{background-color:#5c7cff!important;color:#fff;border:none;border-radius:50%;font-weight:700;cursor:pointer;transition:filter .3s;width:40px;height:40px;min-width:40px;padding:0!important;display:inline-flex;align-items:center;justify-content:center}.chat-input-area .send-btn svg{transform:rotate(45deg)}.chat-input-area button:hover{filter:brightness(1.1)}.chat-input-row{display:flex;align-items:center;gap:10px}.mic-btn{background:#5C7CFF;color:#fff;border:1px solid #5C7CFF;border-radius:50%;width:54px;height:54px;flex-shrink:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px var(--shadow-color);transition:background-color .2s,color .2s,box-shadow .2s}.mic-btn:hover{color:#fff;background:#4a6ae8;border-color:#4a6ae8}.mic-btn.recording{background-color:#e53e3e;border-color:#e53e3e;color:#fff;animation:mic-pulse 1s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 #e53e3e66}50%{box-shadow:0 0 0 8px #e53e3e00}}.recording-ui{flex-grow:1;display:flex;align-items:center;gap:10px;padding:0 .5rem;min-height:42px;overflow:hidden}.rec-dot{width:10px;height:10px;border-radius:50%;background:#e53e3e;flex-shrink:0;animation:rec-blink 1s ease-in-out infinite}@keyframes rec-blink{0%,to{opacity:1}50%{opacity:.2}}.rec-timer{font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0;min-width:32px}.waveform-canvas{flex-grow:1;height:42px;display:block;min-width:0}.chat-input-actions{display:flex;align-items:center;gap:.5rem;margin-right:.75rem}.chat-input-area .attach-image-btn{width:40px;height:40px;min-width:40px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;background-color:transparent!important;border:none!important;border-radius:50%;color:var(--text-secondary)}.chat-input-area .attach-image-btn:hover{background-color:#0000000f!important}.chat-input-area .attach-image-btn svg{width:22px;height:22px;display:block}.chat-input-area .attach-image-btn svg path{stroke:currentColor}.image-preview{position:relative;width:72px;height:72px;border-radius:12px;overflow:hidden;border:1px solid var(--border-color)}.image-preview img{width:100%;height:100%;object-fit:cover;display:block}.image-preview-btn{position:absolute;top:6px;width:20px!important;height:20px!important;padding:0!important;border-radius:50%!important;background:#000000!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;display:inline-flex;align-items:center;justify-content:center;line-height:1}.image-preview-btn.attach{left:6px}.image-preview-btn.close{right:6px;font-weight:700}.attached-preview{display:inline-flex;align-items:center;gap:.35rem;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.3rem .5rem;border-radius:6px;background:var(--agent-message-bg);border:1px solid var(--border-color)}.attached-preview .file-name{font-size:.85rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.clear-image-btn{padding:.15rem .45rem;background:var(--border-color);border-radius:4px;font-size:.8rem}.tendering-page-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#19192ecc;z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px}.tendering-page{background-color:var(--background-color);border-radius:12px;width:95%;max-width:1200px;height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000026}.tendering-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--primary-gradient)}.header-left h2{margin:0;color:#fff;font-size:1.8rem;font-weight:700}.header-subtitle{margin:4px 0 0;color:#fffc;font-size:.9rem}.close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-btn:hover{background-color:#ffffff1a}.tendering-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.tendering-filters{display:flex;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border-color);background-color:var(--card-background)}.search-box{flex:1;max-width:300px}.search-input{width:100%;padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--card-background);color:var(--text-primary);font-size:.9rem}.search-input:focus{outline:none;border-color:var(--text-accent);box-shadow:0 0 0 3px var(--shadow-color)}.status-filter{padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--card-background);color:var(--text-primary);font-size:.9rem;cursor:pointer}.tender-count{color:var(--text-secondary);font-size:.9rem;font-weight:500}.sample-data-btn{padding:8px 16px;background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.sample-data-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.tender-notification{display:flex;align-items:flex-start;gap:16px;padding:20px;background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);border-radius:12px;border:1px solid rgba(79,70,229,.3);margin-bottom:16px}.tender-notification-icon{font-size:2rem;flex-shrink:0;margin-top:4px}.tender-notification-content{flex:1}.tender-notification-content h4{margin:0 0 8px;color:#fff;font-size:1.1rem;font-weight:600}.tender-notification-content p{margin:0 0 16px;color:#e0e7ff;font-size:.9rem;line-height:1.4}.view-tenders-btn{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.view-tenders-btn:hover{background:rgba(255,255,255,.3);border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.tender-list{flex:1;overflow-y:auto;padding:20px 24px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-secondary)}.empty-icon{font-size:4rem;margin-bottom:16px}.empty-state h3{margin:0 0 8px;color:var(--text-primary);font-size:1.2rem}.empty-state p{margin:0;font-size:.9rem;max-width:400px}.tender-card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:20px;margin-bottom:16px;cursor:pointer;transition:all .2s ease}.tender-card:hover{border-color:var(--text-accent);box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.tender-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tender-status{display:flex;align-items:center;gap:8px}.tender-status-inline{margin-top:8px}.tender-card-meta-top{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.tender-card-meta-section{flex:1}.tender-card-status-section{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.meta-item{padding-inline:4px;line-height:1.2}.meta-id{font-size:1rem;font-weight:600;color:var(--text-primary)}.meta-product{font-size:1.05rem;font-weight:500;color:var(--text-secondary)}.meta-label{color:var(--text-primary);margin-right:4px}.meta-value{color:var(--text-secondary)}.status-icon{font-size:1.2rem}.status-text{font-weight:500;text-transform:capitalize}.tender-date{color:var(--text-secondary);font-size:.85rem}.detail-meta{display:flex;flex-direction:column;gap:4px}.detail-meta-top{flex-direction:column;align-items:flex-start;gap:2px}.detail-meta-bottom{display:flex;flex-direction:column;gap:4px}.detail-meta-item{font-size:.9rem;color:inherit}.detail-meta-id{font-size:1.05rem;font-weight:600;color:var(--text-primary)}.detail-meta-product{font-size:1rem;font-weight:500;color:var(--text-primary)}.tender-card-body{margin-bottom:16px}.tender-metrics{display:flex;gap:24px;margin-bottom:12px}.metric{display:flex;flex-direction:column;align-items:center;gap:4px}.metric-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.2rem;font-weight:700;color:var(--text-accent)}.recommended-vendor{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;background-color:#10b9811a;border-radius:6px;border:1px solid rgba(16,185,129,.2)}.vendor-label{font-size:.85rem;color:#10b981;font-weight:500}.vendor-name{font-weight:700;color:#10b981}.tender-summary{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.tender-card-actions{display:flex;justify-content:space-between;align-items:center}.view-btn{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.view-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-color)}.delete-btn{background:none;border:none;color:#ef4444;font-size:1.2rem;cursor:pointer;padding:8px;border-radius:6px;transition:background-color .2s}.delete-btn:hover{background-color:#ef44441a}.tender-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#19192ecc;z-index:1100;display:flex;justify-content:center;align-items:center;padding:20px}.tender-detail-modal{background-color:var(--background-color);border-radius:12px;width:95%;max-width:1000px;height:90vh;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000026}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--primary-gradient)}.detail-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.detail-title{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.detail-title h3{margin:0 0 8px;color:#fff;font-size:1.5rem;font-weight:700}.detail-main-info{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;width:100%;color:#fff;font-size:.9rem}.detail-main-info .label-text{font-weight:700;color:#e5e7eb}.detail-main-info .value-text{color:#fff}.detail-date{color:#fff;font-size:.9rem;margin-left:0}.detail-status{display:flex;align-items:center;gap:6px;font-weight:500;font-size:.9rem}.close-detail-btn{background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer;padding:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-detail-btn:hover{background-color:#ffffff1a}.detail-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:24px;max-width:100%;display:flex;flex-direction:column;gap:20px;align-items:stretch}.detail-title,.detail-meta,.detail-summary,.detail-analysis{text-align:left}.detail-summary{margin-bottom:24px;padding:20px;background-color:var(--card-background);border-radius:12px;border:1px solid var(--border-color)}.summary-metrics{display:flex;gap:32px;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start}.summary-metric{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.summary-metric .metric-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-metric .metric-value{font-size:1.4rem;font-weight:700;color:var(--text-accent)}.summary-metric .metric-value.recommended{color:#10b981}.detail-analysis{background-color:var(--card-background);border-radius:12px;padding:24px;border:1px solid var(--border-color);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-align:left}.detail-analysis h1,.detail-analysis h2,.detail-analysis h3{color:var(--text-primary);margin-top:2rem;margin-bottom:1rem;word-wrap:break-word;overflow-wrap:break-word;text-align:left}.detail-analysis h1:first-child,.detail-analysis h2:first-child,.detail-analysis h3:first-child{margin-top:0}.detail-analysis p,.detail-analysis li,.detail-analysis th,.detail-analysis td{text-align:left}.detail-analysis table{width:100%;border-collapse:collapse;margin:1rem 0;background-color:#fff;border-radius:8px;overflow:hidden;table-layout:fixed}.detail-analysis th,.detail-analysis td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;vertical-align:top}.detail-analysis th{background-color:#f3f4f6;font-weight:600;color:var(--text-primary)}.detail-analysis tr:last-child td{border-bottom:none}.detail-analysis tbody tr:nth-child(odd){background-color:#fff}.detail-analysis tbody tr:nth-child(2n){background-color:#f9fafb}.detail-analysis ul,.detail-analysis ol{margin:1rem 0;padding-left:2rem}.detail-analysis li{margin-bottom:.5rem;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.detail-analysis p{line-height:1.6;margin-bottom:1rem;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.detail-analysis strong{color:var(--text-primary);font-weight:600;word-wrap:break-word;overflow-wrap:break-word}.purchase-confirm-card{margin-top:24px;background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.purchase-confirm-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.purchase-confirm-header h4{margin:0 0 4px;color:var(--text-primary)}.purchase-confirm-header p{margin:0;color:var(--text-secondary);font-size:.95rem}.purchase-requisition-pill{background:#3b33b4;border:1px solid #2f2990;color:#fff;padding:6px 10px;border-radius:9999px;font-size:.9rem;white-space:nowrap}.purchase-vendor-options{display:flex;flex-direction:column;gap:10px}.purchase-vendor-option{display:flex;gap:12px;align-items:flex-start;background:var(--background-color);border:1px solid var(--border-color);padding:12px;border-radius:10px;cursor:pointer;transition:border-color .2s,transform .1s}.purchase-vendor-option:hover{border-color:var(--text-accent);transform:translateY(-1px)}.purchase-vendor-option input[type=radio]{margin-top:4px}.purchase-vendor-option-text{display:flex;flex-direction:column;gap:4px}.purchase-vendor-label{color:var(--text-primary);font-weight:600}.purchase-vendor-meta{color:var(--text-secondary);font-size:.9rem}.purchase-acknowledge{display:flex;gap:10px;align-items:flex-start;color:var(--text-secondary);line-height:1.4;flex-direction:column}.purchase-acknowledge input[type=checkbox]{margin-top:2px}.purchase-field-group{display:flex;flex-direction:column;gap:6px;width:100%}.purchase-field-label{color:var(--text-accent);font-weight:600;font-size:.95rem}.purchase-input{background:#f0f4ff;border:1px solid var(--border-color);color:var(--text-primary);padding:10px 12px;border-radius:8px;font-size:1rem}.purchase-input:focus{outline:none;border-color:var(--text-accent);box-shadow:0 0 0 2px var(--shadow-color)}.purchase-help{color:var(--text-secondary);font-size:.85rem}.purchase-divider{width:100%;border:0;border-top:1px solid var(--border-color);margin:12px 0}.purchase-confirm-alert{padding:12px;border-radius:10px;font-weight:600}.purchase-confirm-alert.error{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.4);color:#991b1b}.purchase-confirm-alert.success{background:rgba(16,185,129,.12);border:1px solid #059669;color:#064e3b}.purchase-confirm-actions{display:flex;justify-content:flex-end}.purchase-confirm-btn{background:linear-gradient(135deg,#4f46e5 0%,#6366f1 100%);border:none;color:#fff;padding:12px 18px;border-radius:10px;font-weight:700;cursor:pointer;transition:opacity .2s,transform .1s;min-width:170px}.purchase-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.purchase-confirm-btn:not(:disabled):hover{transform:translateY(-1px)}.purchase-confirm-empty{background:var(--agent-message-bg);border:1px dashed var(--border-color);border-radius:10px;padding:14px;color:var(--text-secondary);text-align:center}.detail-analysis code{background-color:var(--agent-message-bg);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;word-wrap:break-word;overflow-wrap:break-word}.detail-analysis blockquote{border-left:4px solid var(--text-accent);padding-left:1rem;margin:1rem 0;font-style:italic;color:var(--text-secondary);word-wrap:break-word;overflow-wrap:break-word}.detail-analysis pre{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;overflow-x:auto;background-color:var(--agent-message-bg);padding:1rem;border-radius:6px;margin:1rem 0}.detail-analysis td:first-child{width:30%;font-weight:500}.detail-analysis td:nth-child(2),.detail-analysis td:nth-child(3){width:35%}@media (max-width: 768px){.detail-analysis table,.detail-analysis thead,.detail-analysis tbody,.detail-analysis th,.detail-analysis td,.detail-analysis tr{display:block}.detail-analysis thead tr{position:absolute;top:-9999px;left:-9999px}.detail-analysis tr{border:1px solid var(--border-color);margin-bottom:10px;padding:10px;border-radius:6px}.detail-analysis td{border:none;position:relative;padding-left:50%!important;padding-top:10px;padding-bottom:10px}.detail-analysis td:before{content:attr(data-label) ": ";position:absolute;left:6px;width:45%;padding-right:10px;white-space:nowrap;font-weight:700;color:var(--text-primary)}}@media (max-width: 768px){.tendering-page{width:100%;height:100vh;border-radius:0}.tendering-filters{flex-direction:column;gap:12px;align-items:stretch}.search-box{max-width:none}.tender-metrics,.summary-metrics{justify-content:center}.tender-detail-modal{width:100%;height:100vh;border-radius:0}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#1f243066;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background-color:#fff;padding:3rem;border-radius:16px;box-shadow:0 20px 60px #0003;border:1px solid var(--border-color);max-width:450px;width:90%;position:relative;animation:slideUp .3s ease-out;display:flex;flex-direction:column}.modal-content h2{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary)}.modal-content p{color:var(--text-secondary);margin-bottom:2rem}.modal-content .input-group{margin-bottom:1.5rem}.modal-content .submit-btn{margin-top:1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{to{transform:translateY(0);opacity:1}}.user-profile-container{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 0;box-sizing:border-box}.user-profile-left{display:flex;align-items:center;gap:.8rem;flex-grow:1;min-width:0;margin-right:.5rem}.user-avatar{width:38px;height:38px;border-radius:50%;background-color:#000;color:#fff;display:flex;justify-content:center;align-items:center;font-weight:600;font-size:.9rem;flex-shrink:0}.user-info{display:flex;flex-direction:column;overflow:hidden}.user-name{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-badge{font-size:.75rem;color:var(--text-secondary)}.logout-pill-btn{background:var(--button-primary-bg)!important;border:none;border-radius:20px;padding:.4rem 1rem;font-size:.8rem;font-weight:600;color:#fff!important;cursor:pointer;transition:all .2s;white-space:nowrap;box-shadow:0 4px 10px #5c7cff33}.logout-pill-btn:hover{filter:brightness(1.1);box-shadow:0 6px 14px #5c7cff4d}:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#1c2733}*{box-sizing:border-box}body{margin:0;padding:0;min-height:100vh;width:100%;overflow-x:hidden;background:linear-gradient(160deg,#eef7ff,#ddeeff)}.page{min-height:100vh;width:100%;display:grid;place-items:center;padding:16px}.card{width:100%;max-width:420px;margin:auto;background:#fff;border-radius:16px;padding:32px;box-shadow:0 12px 30px #0f233c1f;display:grid;gap:16px;min-width:0}@media (max-width: 480px){.page{padding:8px}.card{padding:24px 16px;border-radius:12px}input,button{width:100%;min-width:0}}.card.wide{width:min(700px,100%)}h1{margin:0;font-size:1.6rem}label{display:grid;gap:6px;font-weight:600}input{border:1px solid #c3d3e5;border-radius:10px;padding:10px 12px;font-size:1rem}button{border:0;border-radius:10px;padding:10px 14px;font-weight:600;background:#1f6feb;color:#fff;cursor:pointer}button:disabled{opacity:.65;cursor:not-allowed}.error{color:#b2002a;font-weight:600;margin:0}.admin-box{display:grid;gap:8px;padding-top:8px}.session-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid #d1d5db;border-radius:6px;padding:5px 10px;cursor:pointer;font-size:.78rem;color:#6b7280}.session-btn:hover{border-color:#9ca3af}.session-popover{display:none;position:absolute;top:calc(100% + 8px);bottom:unset;left:50%;transform:translate(-50%);background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;width:180px;box-shadow:0 4px 16px #0000001a;font-size:.8rem;color:#374151;line-height:1.5;z-index:11}.session-popover.open{display:block}.session-popover-arrow{top:-5px;bottom:unset;border-left:1px solid #e5e7eb;border-top:1px solid #e5e7eb;border-right:none;border-bottom:none;position:absolute;left:50%;transform:translate(-50%) rotate(45deg);width:9px;height:9px;background:#fff}.session-wrapper{position:relative;display:inline-block}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;background:none;border:none;border-radius:8px;cursor:pointer;padding:6px;flex-shrink:0;color:var(--text-primary)}.hamburger-btn span{display:block;width:20px;height:2px;background-color:currentColor;border-radius:2px}.hamburger-btn:hover{background-color:#0000000d}.sidebar-close-btn{display:none;position:absolute;top:12px;right:12px;background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--text-secondary);width:32px;height:32px;border-radius:50%;padding:0;line-height:1}.sidebar-close-btn:hover{background-color:#0000000f;color:var(--text-primary)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;z-index:99}.hamburger-btn,.sidebar-backdrop,.sidebar-close-btn,.session-btn{touch-action:manipulation}@media (max-width: 768px){.sidebar{position:fixed;top:0;left:0;height:100%;width:260px;transform:translate(-260px);transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:100;overflow-y:auto}.sidebar.sidebar--open{transform:translate(0)}.admin-box{padding-top:48px}.sidebar-close-btn{display:flex;justify-content:center;align-items:center}.hamburger-btn{display:flex}.chat-container{width:100%}.chat-header{padding:.75rem}.chat-header h2{font-size:1.2rem}.chat-messages{padding:1rem .75rem}.chat-input-area{padding:.75rem}.session-wrapper{position:static}.session-popover{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;transform:none;border-radius:12px 12px 0 0;border-bottom:none;box-shadow:0 -4px 20px #0000001f;z-index:200;padding:16px;font-size:.85rem}.session-popover-arrow{display:none}.hamburger-btn,.sidebar-close-btn{width:36px!important;min-width:36px!important}}
