#aicp-bubble { position: fixed !important; bottom: 20px; right: 20px; background: #0073aa; color: #fff; width: 60px; height: 60px; line-height: 60px; text-align: center; border-radius: 50%; cursor: pointer; z-index: 999999; font-size: 28px; box-shadow: 0 4px 15px rgba(0,0,0,0.3); transition: transform 0.2s ease; }
#aicp-bubble:hover { transform: scale(1.05); }
#aicp-chat { display: none; position: fixed; bottom: 95px; right: 20px; width: 350px; height: 500px; background: #fff; border-radius: 12px; display: flex; flex-direction: column; overflow: hidden; z-index: 999999; box-shadow: 0 10px 30px rgba(0,0,0,0.2); }
#aicp-welcome-prompt { position: fixed; bottom: 95px; right: 25px; background: #fff; color: #333; padding: 12px 18px; border-radius: 15px; border-bottom-right-radius: 2px; box-shadow: 0 5px 15px rgba(0,0,0,0.2); z-index: 999998; font-size: 14px; font-weight: 500; pointer-events: none; }
#aicp-header { background: #0073aa; color: #fff; padding: 15px; font-weight: bold; display: flex; justify-content: space-between; align-items: center; user-select: none; }
#aicp-controls { display: flex; gap: 8px; }
#aicp-close, #aicp-min { background: rgba(0,0,0,0.3); color: #fff; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 16px; transition: background 0.2s; }
#aicp-close:hover, #aicp-min:hover { background: rgba(0,0,0,0.5); }
#aicp-messages { flex: 1; padding: 15px; overflow-y: auto; background: #f9f9f9; display: flex; flex-direction: column; gap: 10px; }
.msg { padding: 10px 15px; border-radius: 15px; max-width: 85%; font-size: 14px; line-height: 1.4; word-wrap: break-word; }
.msg.user { align-self: flex-end; background: #0073aa; color: #fff; border-bottom-right-radius: 2px; }
.msg.ai { align-self: flex-start; background: #eee; color: #333; border-bottom-left-radius: 2px; }

/* Thinking Animation */
.msg.aicp-loading { font-style: italic; color: #888; animation: aicp-pulse 1.5s infinite ease-in-out; }
@keyframes aicp-pulse { 0% { opacity: 0.4; } 50% { opacity: 1; } 100% { opacity: 0.4; } }

#aicp-footer { padding: 10px; border-top: 1px solid #eee; background: #fff; }
.aicp-input-wrapper { display: flex; align-items: center; background: #fff; border: 1px solid #ddd; border-radius: 25px; padding: 2px 15px; transition: border-color 0.2s; }
.aicp-input-wrapper:focus-within { border-color: #0073aa; }
#aicp-input { border: none !important; flex: 1; font-size: 14px; outline: none !important; box-shadow: none !important; height: 38px; }
#aicp-send-btn { background: none; border: none; cursor: pointer; color: #0073aa; padding: 0; display: flex; align-items: center; }
#aicp-lead-form input { width: 100%; padding: 10px; margin-bottom: 8px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; }
#aicp-lead-form button { width: 100%; padding: 10px; background: #0073aa; color: #fff; border: none; border-radius: 4px; font-weight: bold; cursor: pointer; }
@media screen and (max-width: 767px) { #aicp-chat { width: 92vw; height: 70vh; bottom: 100px; right: 4vw; } }