.quick-replies-container{flex-wrap:wrap;gap:8px;display:flex}.quick-reply-pill{border:1.5px solid var(--brand);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--brand);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);padding:8px 15px;font-size:12.5px;font-weight:700}.quick-reply-pill:hover{background:var(--brand);color:var(--brand-contrast);transform:translateY(-1px)}
.visual-component-container{width:100%;max-width:100%}.rag-sources{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rag-sources-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.rag-source-pill{color:var(--text-secondary);background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-pill);padding:3px 10px;font-size:11px}.recommendation-feedback{color:var(--text-muted);gap:7px;font-size:12px;display:grid}.recommendation-feedback-actions{flex-wrap:wrap;gap:6px;display:flex}.recommendation-feedback-actions button{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-inset);color:var(--text-secondary);font:inherit;cursor:pointer;padding:5px 10px}.recommendation-feedback-actions button:hover,.recommendation-feedback-actions button.is-selected{border-color:var(--primary);color:var(--primary)}.recommendation-feedback-actions button:disabled{cursor:wait;opacity:.65}.recommendation-feedback-error{color:var(--danger)}
.chat-container{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:640px;height:min(720px,100vh - 24px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.chat-header{background:linear-gradient(135deg, var(--brand) 0%, var(--brand-strong) 100%);color:var(--text-invert);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.chat-header h2{letter-spacing:.2px;font-size:15.5px;font-weight:700}.chat-header-link{color:var(--text-invert);border-radius:var(--radius-pill);transition:background var(--transition-fast);border:1px solid #ffffff73;padding:6px 12px;font-size:12.5px;font-weight:600;text-decoration:none}.chat-header-link:hover{background:#ffffff26}.chat-header-actions{align-items:center;gap:8px;display:flex}.chat-header-btn{cursor:pointer;background:0 0}.chat-messages{background:var(--bg-page);flex-direction:column;flex:1;gap:10px;padding:18px 16px;display:flex;overflow-y:auto}.message-wrapper.bot{flex-direction:column;align-items:flex-start;gap:8px;max-width:100%;display:flex}.message-bubble{border-radius:var(--radius-lg);word-break:break-word;max-width:82%;box-shadow:var(--shadow-sm);padding:11px 15px;font-size:14px;line-height:1.5}.message-bubble.user{background:var(--bubble-user-bg);color:var(--bubble-user-text);border-bottom-right-radius:var(--radius-sm);align-self:flex-end}.message-bubble.bot{background:var(--bubble-bot-bg);color:var(--bubble-bot-text);border-bottom-left-radius:var(--radius-sm)}.message-bubble.bot p+p{margin-top:8px}.message-bubble.bot ul,.message-bubble.bot ol{margin:6px 0;padding-left:18px}.message-bubble.bot strong{font-weight:700}.chat-input-area{background:var(--bg-surface);border-top:1px solid var(--border);gap:10px;padding:12px 14px;display:flex}.chat-attach-btn{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg-surface-alt);cursor:pointer;width:42px;transition:border-color var(--transition-fast), background var(--transition-fast);flex-shrink:0;font-size:16px}.chat-attach-btn:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.chat-attach-btn:disabled{opacity:.5;cursor:default}.bubble-image{border-radius:var(--radius-sm);object-fit:cover;max-width:200px;max-height:200px;margin-bottom:6px;display:block}.chat-input-area input[type=text]{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg-surface-alt);color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1;padding:11px 16px;font-size:14px}.chat-input-area input::placeholder{color:var(--text-muted)}.chat-input-area input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.chat-input-area button{border-radius:var(--radius-pill);background:var(--brand);color:var(--brand-contrast);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);border:none;padding:11px 20px;font-size:13.5px;font-weight:700}.chat-input-area button:hover:not(:disabled){background:var(--brand-strong);transform:translateY(-1px)}.chat-input-area button:disabled{opacity:.5;cursor:not-allowed}.typing-indicator-wrapper{align-items:center;gap:10px;display:flex}.typing-hint{color:var(--text-muted);font-size:12px;animation:.4s hint-fade-in}@keyframes hint-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.typing-indicator{background:var(--bubble-bot-bg);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm);align-items:center;gap:5px;padding:12px 16px;display:inline-flex}.typing-indicator span{background:var(--text-muted);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typing-bounce}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}@media (max-width:640px){.chat-page-shell{padding:0}.chat-container{border:none;border-radius:0;max-width:100%;height:100dvh}.message-bubble{max-width:90%}.chat-input-area input{font-size:16px}}
