/* Ensure shortcode widget (chat_mini/chat_window without fullpage) does not exceed container */
.chat-llm-window-root, .chat-llm-clean.chat-llm-widget {
  max-width: 100%;
  max-height: 100%;
  overflow: hidden;
}
.chat-llm-widget .chat-llm-window { max-height: 100%; }
.chat-llm-window-md3 { font-family: 'Roboto', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; border: 1px solid #e0e0e0; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; width: 100%; height: 100%; box-sizing: border-box; }
.chat-llm-conversation { flex: 1; min-height: 0; overflow: auto; background: #fafafa; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.chat-llm-composer { display: flex; gap: 10px; align-items: flex-end; padding: 12px; background: #fff; border-top: 1px solid #e0e0e0; }
.chat-llm-composer .composer-input { flex: 1; resize: none; border-radius: 16px; border: 1px solid #e0e0e0; padding: 10px 12px; max-height: 200px; }
.chat-llm-composer .composer-send { border: none; background: #0b57d0; color: #fff; padding: 10px 14px; border-radius: 20px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.chat-llm-composer .composer-send .material-symbols-outlined { font-size: 20px; line-height: 1; }
.chat-llm-bubble { padding: 10px 12px; border-radius: 12px; max-width: 80%; }
.chat-llm-bubble.user { align-self: flex-end; background: rgba(11,87,208,0.12); }
.chat-llm-bubble.assistant { align-self: flex-start; background: #ffffff; border: 1px solid #e0e0e0; }
.chat-llm-bubble.error { align-self: center; background: #fdecea; color: #b00020; }

@media (max-width: 600px) {
  .chat-llm-window-md3 { height: 100%; }
}

.chat-llm-disclaimer { padding: 8px 12px; border-top: 1px dashed #e0e0e0; background: #fff; font-size: 12px; color: #777; text-align: center; }


