/* AI Legal Assistant Chatbot Styles (scoped for .ai-chat-content) */
.ai-chat-content .chat-container { max-width: 480px; margin: 0 auto; background: var(--card-bg, #fff); border-radius: 1.2em; box-shadow: 0 2px 16px rgba(0,0,0,0.08); padding: 2em 1.5em; }
.ai-chat-content .chat-header { text-align: center; margin-bottom: 1em; }
.ai-chat-content .chat-header h1 { font-size: 1.5em; margin-bottom: 0.2em; }
.ai-chat-content .chat-header p { color: #666; font-size: 1em; margin-bottom: 0.5em; }
.ai-chat-content .ai-status { font-size: 0.95em; margin-bottom: 0.5em; }
.ai-chat-content .chat-controls { display: flex; gap: 1em; margin-bottom: 1em; flex-wrap: wrap; }
.ai-chat-content .user-info, .ai-chat-content .ai-selector { flex: 1; min-width: 120px; }
.ai-chat-content label { font-size: 0.95em; color: #333; }
.ai-chat-content input, .ai-chat-content select { width: 100%; padding: 0.5em; border-radius: 0.5em; border: 1px solid #ccc; margin-top: 0.2em; font-size: 1em; }
.ai-chat-content .chat-messages { min-height: 120px; max-height: 220px; overflow-y: auto; background: #f9f9f9; border-radius: 0.7em; margin-bottom: 1em; padding: 0.7em; }
.ai-chat-content .msg { margin-bottom: 0.7em; padding: 0.5em 0.7em; border-radius: 0.7em; background: #e9f1ff; }
.ai-chat-content .msg.me { background: #d1ffe9; text-align: right; }
.ai-chat-content .msg.bot { background: #fffbe9; }
.ai-chat-content .sender { font-weight: bold; font-size: 0.95em; margin-bottom: 0.1em; }
.ai-chat-content .content { font-size: 1em; margin-bottom: 0.1em; }
.ai-chat-content .meta { font-size: 0.8em; color: #888; text-align: right; }
.ai-chat-content .chat-input { display: flex; gap: 0.5em; }
.ai-chat-content .chat-input input { flex: 1; }
.ai-chat-content .send-button { background: #0057b8; color: #fff; border: none; border-radius: 0.5em; padding: 0.5em 1.2em; font-size: 1em; cursor: pointer; display: flex; align-items: center; gap: 0.3em; }
.ai-chat-content .send-button:disabled { background: #ccc; cursor: not-allowed; }
.ai-chat-content .ai-loading { text-align: center; margin-top: 1em; }
.ai-chat-content .loading-animation { display: flex; flex-direction: column; align-items: center; gap: 0.3em; }
.ai-chat-content .ai-icon { font-size: 1.5em; }
.ai-chat-content .loading-text { font-size: 1em; color: #888; }
.ai-chat-content .loading-dots span { display: inline-block; width: 0.5em; height: 0.5em; background: #0057b8; border-radius: 50%; margin: 0 0.1em; animation: ai-dot 1s infinite alternate; }
@keyframes ai-dot { 0% { opacity: 0.3; } 100% { opacity: 1; } }
/* Dark mode support */
body.dark .ai-chat-content .chat-container { background: #222; color: #eee; }
body.dark .ai-chat-content .chat-messages { background: #222; }
body.dark .ai-chat-content .msg { background: #2a2a2a; }
body.dark .ai-chat-content .msg.me { background: #1e3a2a; }
body.dark .ai-chat-content .msg.bot { background: #3a2a1e; }
body.dark .ai-chat-content input, body.dark .ai-chat-content select { background: #222; color: #eee; border: 1px solid #444; }
body.dark .ai-chat-content .send-button { background: #0057b8; color: #fff; }
