/* Fuzzy ChatBot Frontend Styles */
.fuzzy-chatbot-widget { position: fixed; bottom: 20px; right: 20px; z-index: 9999; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
.fuzzy-chatbot-toggle { width: 60px; height: 60px; border-radius: 50%; background: #0073aa; color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 2px 12px rgba(0,0,0,0.15); transition: transform 0.2s; }
.fuzzy-chatbot-toggle:hover { transform: scale(1.05); }
.fuzzy-chatbot-toggle .dashicons { font-size: 28px; width: 28px; height: 28px; }
.fuzzy-chatbot-container { position: absolute; bottom: 70px; right: 0; width: 380px; max-width: calc(100vw - 40px); background: #fff; border-radius: 12px; box-shadow: 0 5px 40px rgba(0,0,0,0.16); overflow: hidden; }
.fuzzy-chatbot-header { background: #0073aa; color: #fff; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; }
.fuzzy-chatbot-title { font-weight: 600; font-size: 16px; }
.fuzzy-chatbot-close { background: none; border: none; color: #fff; font-size: 24px; cursor: pointer; padding: 0; line-height: 1; }
.fuzzy-chatbot-messages { height: 350px; overflow-y: auto; padding: 15px; }
.wai-message { margin-bottom: 12px; display: flex; }
.wai-message-content { max-width: 80%; padding: 10px 14px; border-radius: 18px; line-height: 1.4; font-size: 14px; }
.wai-message-user { justify-content: flex-end; }
.wai-message-user .wai-message-content { background: #0073aa; color: #fff; border-bottom-right-radius: 4px; }
.wai-message-ai .wai-message-content { background: #f0f0f0; color: #333; border-bottom-left-radius: 4px; }
.fuzzy-chatbot-input { display: flex; padding: 10px 15px; border-top: 1px solid #eee; gap: 10px; }
.fuzzy-chatbot-input textarea { flex: 1; border: 1px solid #ddd; border-radius: 20px; padding: 10px 15px; resize: none; font-size: 14px; max-height: 100px; }
.fuzzy-chatbot-input textarea:focus { outline: none; border-color: #0073aa; }
.fuzzy-chatbot-send { width: 40px; height: 40px; border-radius: 50%; background: #0073aa; color: #fff; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.fuzzy-chatbot-send:hover { background: #005a87; }
.fuzzy-chatbot-send:disabled { opacity: 0.5; cursor: not-allowed; }
.wai-typing { display: flex; gap: 4px; padding: 10px 14px; }
.wai-typing span { width: 8px; height: 8px; background: #999; border-radius: 50%; animation: wai-bounce 1.4s infinite ease-in-out both; }
.wai-typing span:nth-child(1) { animation-delay: -0.32s; }
.wai-typing span:nth-child(2) { animation-delay: -0.16s; }
@keyframes wai-bounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }