PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 1.0.8
MxChat – AI Chatbot & Content Generation for WordPress v1.0.8
3.2.21 3.2.20 3.2.19 3.2.18 3.2.17 3.2.16 3.2.15 3.2.14 3.2.12 3.2.13 3.2.11 3.2.10 3.2.9 3.2.8 3.2.7 3.2.6 3.2.5 3.2.4 3.2.3 3.2.2 3.2.1 2.0.3 2.0.4 2.0.5 2.0.6 All 152 releases
← All changes | css/chat-style.css +180 -1650 3.2.51.0.8 View file →
@@ -1,895 +1,115 @@
1 -/* ========================================
2 - NOTIFICATION SYSTEM
3 - ======================================== */
4 -.chat-notification-badge {
5 - animation: notification-pulse 2s infinite;
6 - box-shadow: 0 0 0 rgba(255, 68, 68, 0.4);
7 - transition: all 0.3s ease;
1 +#widget_icon, #widget_icon_2, #widget_icon_3, #widget_icon_5, #widget_icon_4, #widget_icon_6, #widget_icon_7 {
2 + padding: 10px;
8 3 }
9 4
10 -@keyframes notification-pulse {
11 - 0% {
12 - transform: scale(1);
13 - box-shadow: 0 0 0 0 rgba(255, 68, 68, 0.4);
14 - }
15 - 70% {
16 - transform: scale(1.1);
17 - box-shadow: 0 0 0 10px rgba(255, 68, 68, 0);
18 - }
19 - 100% {
20 - transform: scale(1);
21 - box-shadow: 0 0 0 0 rgba(255, 68, 68, 0);
22 - }
23 -}
24 -
25 -/* ========================================
26 - EMAIL COLLECTION SYSTEM
27 - ======================================== */
28 -.email-blocker {
29 - display: flex;
30 - flex-direction: column;
31 - align-items: center;
32 - justify-content: center;
33 - border-radius: 12px;
34 - padding: 30px 20px;
35 - max-width: 100%;
36 - margin: auto;
37 - text-align: center;
38 - animation: fadeIn 0.5s ease-in-out;
39 -}
40 -
41 -.email-blocker-header {
42 - margin-bottom: 20px;
43 -}
44 -
45 -.email-blocker-logo {
46 - max-width: 80px;
47 - margin-bottom: 10px;
48 -}
49 -
50 -.email-blocker h2 {
51 - font-size: 24px;
52 - font-weight: bold;
53 - color: #333333;
54 - margin-bottom: 10px;
55 -}
56 -
57 -.email-blocker p {
58 - font-size: 16px;
59 - color: #555555;
60 - margin-bottom: 20px;
61 -}
62 -
63 -.email-blocker input[type="email"],
64 -.email-blocker .mxchat-name-input {
65 - width: 100%;
66 - padding: 12px;
67 - margin-bottom: 15px;
68 - border: 1px solid #ddd;
69 - border-radius: 8px;
70 - font-size: 16px;
71 - color: #333333;
72 - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
73 - transition: border-color 0.3s, box-shadow 0.3s;
74 -}
75 -
76 -.email-blocker input[type="email"]:focus,
77 -.email-blocker .mxchat-name-input:focus {
78 - border-color: #0073aa;
79 - box-shadow: 0 0 8px rgba(0, 115, 170, 0.3);
80 - outline: none;
81 -}
82 -
83 -.email-blocker button {
84 - background-color: #0073aa;
85 - color: #ffffff;
86 - padding: 12px 20px;
87 - border: none;
88 - border-radius: 8px;
89 - font-size: 16px;
90 - font-weight: bold;
91 - cursor: pointer;
92 - width: 100%;
93 - transition: background-color 0.3s, transform 0.2s;
94 -}
95 -
96 -.email-blocker button:hover {
97 - background-color: #005177;
98 - transform: translateY(-2px);
99 -}
100 -
101 -.email-blocker-footer {
102 - margin-top: 20px;
103 - font-size: 12px;
104 - color: #888888;
105 -}
106 -
107 -.sr-only {
108 - position: absolute;
109 - width: 1px;
110 - height: 1px;
111 - padding: 0;
112 - margin: -1px;
113 - overflow: hidden;
114 - clip: rect(0, 0, 0, 0);
115 - white-space: nowrap;
116 - border: 0;
117 -}
118 -
119 -@keyframes fadeIn {
120 - from {
121 - opacity: 0;
122 - transform: translateY(-10px);
123 - }
124 - to {
125 - opacity: 1;
126 - transform: translateY(0);
127 - }
128 -}
129 -
130 -.mxchat-chatbot-wrapper {
5 +.invisible {
131 6 display: none;
7 + opacity: 0;
8 + pointer-events: none;
132 9 }
133 10
134 -/* ========================================
135 - SEARCH RESULTS SYSTEM
136 - ======================================== */
137 -.chatbot-title-icon {
138 - width: 24px;
139 - height: 24px;
140 - object-fit: contain;
141 -}
142 -
143 -.wp-admin .mxchat-search-results,
144 -.wp-content .mxchat-search-results,
145 -.site-content .mxchat-search-results,
146 -.mxchat-search-results {
147 - display: flex;
148 - flex-direction: column;
149 - gap: 20px;
150 - margin: 15px 0;
151 - font-size: 14px !important;
152 -}
153 -
154 -.mxchat-search-intro {
155 - font-size: 16px !important;
156 - margin: 0 0 15px 0 !important;
157 - line-height: 1.4 !important;
158 - font-weight: normal !important;
159 -}
160 -
161 -.mxchat-search-item {
162 - padding: 15px !important;
163 - border-radius: 8px !important;
164 - background: #ffffff !important;
165 - border: 1px solid rgba(0, 0, 0, 0.1) !important;
166 -}
167 -
168 -.mxchat-search-header {
169 - display: flex !important;
170 - align-items: center !important;
171 - gap: 8px !important;
172 - margin-bottom: 8px !important;
173 -}
174 -
175 -.mxchat-site-icon {
176 - width: 16px !important;
177 - height: 16px !important;
178 - flex-shrink: 0 !important;
179 -}
180 -
181 -.mxchat-site-url {
182 - font-size: 13px !important;
183 - color: #555 !important;
184 - line-height: 1 !important;
185 -}
186 -
187 -.mxchat-search-content {
188 - display: flex !important;
189 - flex-direction: column !important;
190 - gap: 10px !important;
191 -}
192 -
193 -.mxchat-search-title {
194 - font-size: 16px !important;
195 - line-height: 1.4 !important;
196 - margin: 0 !important;
197 - padding: 0 !important;
198 - font-weight: 600 !important;
199 -}
200 -
201 -.mxchat-search-title a {
202 - text-decoration: none !important;
203 - color: #000 !important;
204 -}
205 -
206 -.mxchat-search-title a:hover {
207 - text-decoration: underline !important;
208 -}
209 -
210 -.mxchat-search-thumbnail {
211 - max-width: 200px !important;
212 - margin: 10px 0 !important;
213 -}
214 -
215 -.mxchat-search-thumbnail img {
216 - max-width: 100% !important;
217 - height: auto !important;
218 - border-radius: 4px !important;
219 -}
220 -
221 -.mxchat-search-description {
222 - font-size: 14px !important;
223 - line-height: 1.6 !important;
224 - color: #333 !important;
225 - margin: 0 !important;
226 - padding: 0 !important;
227 -}
228 -
229 -/* ========================================
230 - ENHANCED HEADINGS & TEXT STYLING
231 - ======================================== */
232 -.bot-message .chat-heading {
233 - color: inherit;
234 - margin: 16px 0 12px 0 !important;
235 - font-weight: bold !important;
236 - line-height: 1.3 !important;
237 -}
238 -
239 -.bot-message h1.chat-heading,
240 -.chat-heading-1 {
241 - font-size: 1.5em !important;
242 - border-bottom: 2px solid rgba(255, 255, 255, 0.3) !important;
243 - padding-bottom: 8px !important;
244 -}
245 -
246 -.bot-message h2.chat-heading,
247 -.chat-heading-2 {
248 - font-size: 1.25em !important;
249 - border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
250 - padding-bottom: 6px !important;
251 -}
252 -
253 -.bot-message h3.chat-heading,
254 -.chat-heading-3 {
255 - font-size: 1.125em !important;
256 -}
257 -
258 -.bot-message h4.chat-heading,
259 -.chat-heading-4 {
260 - font-size: 1em !important;
261 -}
262 -
263 -.bot-message h5.chat-heading,
264 -.chat-heading-5 {
265 - font-size: 0.875em !important;
266 - text-transform: uppercase !important;
267 - letter-spacing: 0.5px !important;
268 -}
269 -
270 -.bot-message h6.chat-heading,
271 -.chat-heading-6 {
272 - font-size: 0.75em !important;
273 - text-transform: uppercase !important;
274 - letter-spacing: 0.5px !important;
275 -}
276 -
277 -.bot-message strong {
278 - font-weight: bold !important;
279 -}
280 -
281 -.bot-message em {
282 - font-style: italic !important;
283 -}
284 -
285 -.bot-message del {
286 - text-decoration: line-through !important;
287 - opacity: 0.7;
288 -}
289 -
290 -/* ========================================
291 - CODE BLOCKS & INLINE CODE
292 - ======================================== */
293 -.mxchat-table-wrapper {
294 - overflow-x: auto;
295 - margin: 12px 0;
296 - -webkit-overflow-scrolling: touch;
297 -}
298 -
299 -.mxchat-table {
300 - width: 100%;
301 - border-collapse: collapse;
302 - font-size: 0.9em;
303 - line-height: 1.4;
304 -}
305 -
306 -.mxchat-table th,
307 -.mxchat-table td {
308 - padding: 8px 12px;
309 - border: 1px solid rgba(128, 128, 128, 0.3);
310 - word-break: break-word;
311 -}
312 -
313 -.mxchat-table thead th {
314 - font-weight: 600;
315 - background: rgba(128, 128, 128, 0.15);
316 -}
317 -
318 -.mxchat-table tbody tr:nth-child(even) {
319 - background: rgba(128, 128, 128, 0.05);
320 -}
321 -
322 -.mxchat-code-block-container {
323 - margin: 16px 0;
324 - border-radius: 8px;
325 - background: rgba(255, 255, 255, 0.1);
326 - border: 1px solid rgba(255, 255, 255, 0.2);
327 - overflow: hidden;
328 - font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Courier New', monospace;
329 -}
330 -
331 -.mxchat-code-header {
332 - display: flex;
333 - justify-content: space-between;
334 - align-items: center;
335 - background: rgba(255, 255, 255, 0.15);
336 - padding: 8px 12px;
337 - border-bottom: 1px solid rgba(255, 255, 255, 0.2);
338 - font-size: 11px;
339 - min-height: 36px;
340 -}
341 -
342 -.mxchat-code-language {
343 - color: rgba(255, 255, 255, 0.8);
344 - font-weight: 600;
345 - text-transform: uppercase;
346 - letter-spacing: 0.5px;
347 - font-size: 10px;
348 -}
349 -
350 -.mxchat-copy-button {
351 - background: rgba(255, 255, 255, 0.2);
352 - color: white;
353 - border: 1px solid rgba(255, 255, 255, 0.3);
354 - padding: 4px 8px;
355 - border-radius: 4px;
356 - font-size: 10px;
11 +#mxchat-chatbot #chat-container #input-container #send-button, .copy-btn {
12 + transition: background-color .3s;
13 + color: #fff;
14 + font-size: 1rem;
357 15 cursor: pointer;
358 - transition: all 0.2s ease;
359 - min-height: 24px;
360 - line-height: 1;
16 + font-weight: 700;
361 17 }
362 18
363 -.mxchat-copy-button:hover {
364 - background: rgba(255, 255, 255, 0.3);
365 - border-color: rgba(255, 255, 255, 0.4);
366 -}
367 -
368 -.mxchat-copy-button:active {
369 - background: rgba(255, 255, 255, 0.4);
370 -}
371 -
372 -.mxchat-code-block {
373 - margin: 0;
374 - padding: 16px;
375 - background: rgba(0, 0, 0, 0.3);
376 - overflow-x: auto;
377 - font-size: 13px;
378 - line-height: 1.4;
379 - white-space: pre;
380 - border: none;
381 -}
382 -
383 -.mxchat-code-block code {
384 - font-family: inherit;
385 - font-size: inherit;
386 - background: none !important;
387 - padding: 0 !important;
388 - border: none !important;
389 - color: rgba(255, 255, 255, 0.95) !important;
390 - display: block;
391 -}
392 -
393 -.mxchat-inline-code {
394 - background: rgba(255, 255, 255, 0.2) !important;
395 - padding: 2px 6px !important;
396 - border-radius: 3px !important;
397 - font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Courier New', monospace !important;
398 - font-size: 0.85em !important;
399 - color: #81c784 !important;
400 - border: 1px solid rgba(255, 255, 255, 0.3) !important;
401 -}
402 -
403 -/* ========================================
404 - TOOLBAR SYSTEM
405 - ======================================== */
406 -.active-pdf-container,
407 -.active-word-container {
408 - display: inline-flex;
409 - align-items: center;
410 - max-width: 200px;
411 - margin: 0;
412 - padding: 0;
413 - line-height: 13px;
414 -}
415 -
416 -.active-pdf-name,
417 -.active-word-name {
418 - font-size: 11px;
419 - white-space: nowrap;
19 +#mxchat-chatbot {
20 + max-width: 800px;
420 21 overflow: hidden;
421 - text-overflow: ellipsis;
422 -}
423 -
424 -.remove-pdf-btn,
425 -.remove-word-btn,
426 -.toolbar-perplexity {
427 - background: none;
428 - border: none;
429 - padding: 2px;
430 - margin-left: 4px;
431 - cursor: pointer;
432 - transition: opacity 0.2s;
433 - line-height: 13px;
434 -}
435 -
436 -.remove-pdf-btn:hover,
437 -.remove-word-btn:hover,
438 -.toolbar-perplexity:hover {
439 - opacity: 1;
440 - background: none;
441 -}
442 -
443 -.mxchat-chatbot .chat-toolbar {
444 - display: flex;
445 - gap: 10px;
446 - padding: 8px;
447 - background: none;
448 - align-items: end;
449 -}
450 -
451 -.mxchat-chatbot .toolbar-btn {
452 - background: none;
453 - border: none;
454 - padding: 0;
455 - cursor: pointer;
456 - width: 16px;
457 - height: 16px;
458 - align-items: center;
459 - justify-content: center;
460 - opacity: 0.6;
461 - transition: opacity 0.2s;
462 - margin: 0;
463 - min-width: 0;
464 - box-shadow: none;
465 -}
466 -
467 -.mxchat-chatbot .toolbar-btn svg {
468 - width: 100%;
469 - height: 100%;
470 -}
471 -
472 -.mxchat-chatbot .toolbar-btn:hover {
473 - opacity: 1;
474 - background: none;
475 - border: none;
476 - box-shadow: none;
477 -}
478 -
479 -.mxchat-chatbot .toolbar-btn:disabled {
480 - opacity: 0.3;
481 - cursor: not-allowed;
482 - background: none;
483 - border: none;
484 -}
485 -
486 -.toolbar-btn.active {
487 - background-color: rgba(120, 115, 245, 0.2);
488 - box-shadow: 0 0 0 2px rgba(120, 115, 245, 0.4);
489 -}
490 -
491 -.active-perplexity-container {
492 - display: flex;
493 - align-items: center;
494 - margin-left: 8px;
495 - font-size: 12px;
496 -}
497 -
498 -.perplexity-search-btn {
499 - display: none;
500 -}
501 -
502 -.perplexity-search-btn.active {
503 - opacity: 1;
504 -}
505 -
506 -/* ========================================
507 - POPULAR QUESTIONS SYSTEM
508 - ======================================== */
509 -.mxchat-popular-questions {
510 - padding: 0 10px 10px;
511 - transition: all 0.3s ease;
512 - margin-bottom: 12px;
513 22 position: relative;
514 -}
515 -
516 -.mxchat-popular-questions-title {
517 - font-size: 14px;
518 - line-height: 24px;
519 - font-weight: bold;
520 - color: #212121;
521 - margin-bottom: 10px;
522 -}
523 -
524 -.mxchat-popular-questions-container {
525 - position: relative;
526 23 display: flex;
527 24 flex-direction: column;
528 - max-height: 200px;
529 - overflow-y: auto;
530 - padding: 0 10px 10px;
531 - scrollbar-width: thin;
532 - scrollbar-color: #212121 #f1f1f1;
533 - transition: all 0.3s ease;
534 - gap: 8px;
535 -}
536 -
537 -.mxchat-popular-questions.collapsed {
538 - padding: 0;
539 - margin: 0;
540 -}
541 -
542 -.mxchat-popular-questions.collapsed .mxchat-popular-questions-container {
543 - flex-direction: row;
544 - justify-content: center;
545 - align-items: center;
546 - padding: 0;
547 - max-height: 40px;
548 - overflow: visible;
549 -}
550 -
551 -.mxchat-popular-questions.collapsed .mxchat-popular-question {
552 - display: none;
553 -}
554 -
555 -.mxchat-popular-questions.collapsed .questions-collapse-btn {
556 - display: none;
557 -}
558 -
559 -/* MISSING - These need to be inside the container context: */
560 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-toggle-btn {
561 - background: none;
562 - border: none;
563 - padding: 0;
564 - margin: 0;
565 - cursor: pointer;
566 - transition: all 0.2s ease;
567 - color: #212121;
568 - display: none; /* Hidden by default when open */
569 - align-items: center;
570 - justify-content: center;
571 - width: 32px;
572 - height: 32px;
573 - box-shadow: none;
574 - outline: none;
575 -}
576 -
577 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn {
578 - background: none;
579 - border: none;
580 - padding: 0;
581 - margin: 0px; /* Center and add bottom margin */
582 - cursor: pointer;
583 - transition: all 0.2s ease;
584 - color: #212121;
585 - display: none; /* Hidden by default */
586 - align-items: center;
587 - justify-content: center;
588 - width: 32px;
589 - height: 32px;
590 - box-shadow: none;
591 - outline: none;
592 - align-self: center; /* Center in flex container */
593 - order: -1; /* Make sure it appears first */
594 -}
595 -
596 -.questions-toggle-btn:hover,
597 -.questions-collapse-btn:hover,
598 -.questions-toggle-btn:focus,
599 -.questions-collapse-btn:focus,
600 -.questions-toggle-btn:active,
601 -.questions-collapse-btn:active {
602 - background: none;
603 - border: none;
604 - box-shadow: none;
605 - outline: none;
606 -}
607 -
608 -.questions-toggle-btn svg,
609 -.questions-collapse-btn svg {
610 - transition: transform 0.2s ease;
611 - fill: none;
612 - stroke: #212121;
613 - width: 25px;
614 - height: 25px;
615 -}
616 -
617 -.questions-toggle-btn:hover svg,
618 -.questions-collapse-btn:hover svg {
619 - opacity: 0.7;
620 -}
621 -
622 -.mxchat-popular-questions.collapsed .questions-toggle-btn {
623 - display: flex;
624 -}
625 -
626 -.mxchat-popular-questions.has-been-collapsed .questions-collapse-btn {
627 - display: flex;
628 - align-self: center;
629 - order: -1;
630 -}
631 -
632 -.mxchat-popular-question {
633 - padding: 12px 20px;
634 - background-color: #f5f5f5;
635 - border: 1px solid #bbb;
636 - border-radius: 8px;
637 - color: #212121;
638 - font-size: 14px;
639 - line-height: 24px;
640 - cursor: pointer;
641 - text-align: initial;
642 - transition: all 0.3s ease;
643 - margin-bottom: 0;
644 - box-shadow: none;
645 -}
646 -
647 -.mxchat-popular-question:hover {
648 - background-color: #eaeaea;
649 - border-color: #999;
650 - box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
651 - transform: translateY(-1px);
652 -}
653 -
654 -.mxchat-popular-question:focus {
655 - outline: none;
656 - background-color: #e0e0e0;
657 - border-color: #777;
658 - box-shadow: 0 0 0 3px rgba(100, 149, 237, 0.5);
659 -}
660 -
661 -.mxchat-popular-question:active {
662 - background-color: #d8d8d8;
663 - border-color: #666;
664 - box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
665 - transform: translateY(0);
666 -}
667 -
668 -.mxchat-popular-questions-container::-webkit-scrollbar {
669 - width: 8px;
670 -}
671 -
672 -.mxchat-popular-questions-container::-webkit-scrollbar-track {
673 - background: #f1f1f1;
674 - border-radius: 4px;
675 -}
676 -
677 -.mxchat-popular-questions-container::-webkit-scrollbar-thumb {
678 - background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
679 - border-radius: 4px;
680 -}
681 -
682 -.mxchat-popular-questions-container::-webkit-scrollbar-thumb:hover {
683 - background: linear-gradient(135deg, #d164ce, #6568d8, #2daeb8);
684 -}
685 -
686 -/* ========================================
687 - CORE CHATBOT UI
688 - ======================================== */
689 -.invisible {
690 - display: none;
691 - opacity: 0;
692 - pointer-events: none;
693 -}
694 -
695 -.mxchat-chatbot{
696 - background: #fff;
697 - overflow: hidden;
698 - position: relative;
699 - display: flex;
700 - flex-direction: column;
25 + height: 500px;
26 + box-sizing: border-box;
701 27 flex-grow: 1;
702 - min-height: 0; /* Allow flex shrinking */
703 - box-sizing: border-box;
704 28 }
705 29
706 -.chat-container {
30 +#chat-container {
707 31 display: flex;
708 32 flex-direction: column;
709 - flex-grow: 1;
710 - min-height: 0; /* Critical for flex overflow scrolling */
711 33 height: 100%;
712 34 }
713 35
714 -.chat-box {
36 +#chat-box {
715 37 flex-grow: 1;
716 38 overflow-y: auto;
717 39 padding: 10px;
718 40 margin-bottom: 0;
719 41 font-size: 1rem;
720 - min-height: 0; /* Critical for flex overflow scrolling */
721 42 }
722 43
723 -.chat-box::-webkit-scrollbar {
44 +#chat-box::-webkit-scrollbar {
724 45 width: 5px;
725 46 }
726 47
727 -.chat-box::-webkit-scrollbar-thumb {
728 - background-color: #212121;
48 +#chat-box::-webkit-scrollbar-thumb {
49 + background-color: #333;
729 50 border-radius: 20px;
730 51 }
731 52
732 -.bot-message,
733 -.user-message {
53 +.bot-message, .user-message {
734 54 margin-bottom: 15px;
735 55 padding: 10px;
736 56 display: inline-block;
737 57 max-width: 85%;
738 - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
739 - font-size: 14px;
740 - line-height: 24px;
58 + box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
741 59 }
742 60
743 61 .user-message {
744 - background: #fff;
745 - color: #212121;
746 - text-align: left;
747 - float: right;
748 - clear: both;
749 - border-radius: 18px 0 18px 18px;
750 - word-wrap: break-word;
751 - border: 1px solid rgba(226, 232, 255, 0.2);
62 + background: #fff;
63 + color: #212121;
64 + text-align: left;
65 + float: right;
66 + clear: both;
67 + border-radius: 18px 0 18px 18px;
68 + border: solid 1px #212121;
752 69 }
753 70
754 -.user-message p {
755 - margin: 0;
71 +#mxchat-chatbot #chat-container #chat-box .bot-message {
72 + text-align: left;
73 + float: left;
74 + clear: both;
75 + border: 1px solid rgba(226, 232, 255, .2);
76 + border-radius: 0 18px 18px;
77 + background: #212121;
78 + color: #fff;
756 79 }
757 80
758 -.mxchat-chatbot .chat-container .chat-box .bot-message {
759 - float: left;
760 - clear: both;
761 - border: 1px solid rgba(226, 232, 255, 0.2);
762 - border-radius: 0 18px 18px;
763 - background: #212121;
764 - color: #fff;
765 - overflow-x: hidden;
766 -}
767 -
768 -.mxchat-chatbot .chat-container .chat-box .agent-message {
769 - text-align: left;
770 - float: left;
771 - clear: both;
772 - border: 1px solid rgba(226, 232, 255, 0.2);
773 - border-radius: 0 18px 18px;
774 - background: #212121;
775 - color: #fff;
776 - overflow-x: hidden;
777 - margin-bottom: 15px;
778 - padding: 10px;
779 - display: inline-block;
780 - max-width: 85%;
781 - font-size: 14px;
782 - line-height: 24px;
783 - box-shadow: -2px 2px rgba(250, 115, 230, 0.6), -4px 4px rgba(120, 115, 245, 0.6);
784 -}
785 -
786 -.bot-message p {
787 - margin: 0 0 1em 0;
788 -}
789 -
790 -.bot-message p:last-child {
791 - margin-bottom: 0;
792 -}
793 -
794 -.bot-message {
795 - white-space: pre-line;
796 -}
797 -
798 -.bot-message a {
799 - color: #ffffff;
800 - text-decoration: underline !important;
801 -}
802 -
803 -.bot-message a:hover {
804 - color: #e0e0e0;
805 - text-decoration: underline;
806 -}
807 -
808 -.bot-message a:visited {
809 - color: #ffffff;
810 -}
811 -
812 -.system-message {
813 - padding: 8px 12px;
814 - margin: 8px 0;
815 - background-color: rgba(120, 115, 245, 0.1);
816 - border-radius: 8px;
817 - color: #555;
818 - font-style: italic;
819 - font-size: 14px;
820 - text-align: center;
821 -}
822 -
823 -.mxchat-chatbot-wrapper {
824 - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
81 +#mxchat-chatbot-wrapper {
82 + box-shadow: 0 4px 8px rgba(0, 0, 0, .1);
825 83 border-radius: 10px;
826 84 display: flex;
827 85 flex-direction: column;
828 86 height: 100%;
829 87 width: 100%;
830 - min-height: 0; /* Allow flex shrinking */
831 - overflow: hidden;
832 88 }
833 89
834 -/* ========================================
835 - INPUT & CONTROLS
836 - ======================================== */
837 -.mxchat-chatbot .chat-container .input-container {
90 +#mxchat-chatbot #chat-container #input-container {
838 91 position: relative;
839 92 display: flex;
840 93 align-items: center;
841 - padding-right: 40px;
842 - border: 1px solid #ccc;
843 - border-radius: 10px;
844 - margin: 0 10px 10px;
94 + padding: 10px;
845 95 }
846 96
847 -.mxchat-chatbot .chat-container .input-container .chat-input {
97 +#mxchat-chatbot #chat-container #input-container #chat-input {
848 98 flex-grow: 1;
99 + padding: .5rem 2.5rem .5rem .5rem;
100 + border-radius: 10px;
101 + border: 1px solid #212121;
849 102 color: #212121;
850 - line-height: 24px;
851 - background: transparent;
852 - margin-bottom: 0;
853 - width: 100%;
854 - min-height: 20px;
855 - max-height: 65px;
856 - resize: none;
857 - overflow-y: auto;
858 - font-size: 16px;
859 - border: none;
860 - border-radius: 5px;
861 - box-sizing: border-box;
862 - padding: 0.4em 0.5em;
863 - outline: none;
864 - border-radius: 10px;
103 + font-size: 1rem;
104 + background: 0 0;
105 + width: calc(100% - 30px);
106 + margin-bottom: 0px;
107 + height: 100%;
865 108 }
866 109
867 -.chat-input::-webkit-scrollbar {
868 - width: 8px;
869 -}
870 -
871 -.chat-input::-webkit-scrollbar-track {
872 - background: #f1f1f1;
873 - border-radius: 4px;
874 -}
875 -
876 -.chat-input::-webkit-scrollbar-thumb {
877 - background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
878 - border-radius: 4px;
879 -}
880 -
881 -.chat-input::-webkit-scrollbar-thumb:hover {
882 - background: linear-gradient(135deg, #d164ce, #6568d8, #2daeb8);
883 -}
884 -
885 -.chat-input {
886 - scrollbar-width: thin;
887 - scrollbar-color: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1) #f1f1f1;
888 -}
889 -
890 -.mxchat-chatbot .chat-container .input-container .send-button {
891 - position: absolute;
110 +#mxchat-chatbot #chat-container #input-container #send-button {
111 + position:absolute;
892 112 right: 10px;
893 113 top: 50%;
894 114 transform: translateY(-50%);
895 115 border: none;
@@ -898,342 +118,223 @@
898 118 height: 30px;
899 119 display: flex;
900 120 align-items: center;
901 121 justify-content: center;
902 - background: transparent !important;
903 - padding: 5px;
904 - margin: 0;
905 - transition: background-color 0.3s;
906 - color: #fff;
907 - font-size: 1rem;
908 - cursor: pointer;
909 - font-weight: 700;
122 + background: 0 0!important;
910 123 }
911 124
912 -.send-button svg {
913 - width: 25px;
914 - height: 25px;
915 - pointer-events: none;
125 +#mxchat-chatbot #chat-container #input-container #send-button .fa-paper-plane {
126 + font-size: 1.3rem;
916 127 }
917 128
918 -.send-button:hover {
919 - opacity: 0.8;
129 +#send-button:hover, .copy-btn:hover {
130 + opacity: .8;
920 131 }
921 132
922 -.mxchat-chatbot .spinner {
923 - animation: rotate 2s linear infinite;
924 - width: 20px;
925 - height: 20px;
133 +#mxchat-chatbot:after {
134 + content: "";
135 + display: table;
136 + clear: both;
926 137 }
927 138
928 -.mxchat-chatbot .spinner circle {
929 - stroke: #212121;
930 - stroke-linecap: round;
931 - animation: dash 1.5s ease-in-out infinite;
139 +pre {
140 + background-color: #000;
141 + border: 1px solid #ddd;
142 + border-radius: 20px;
143 + border-left: 3px solid #9e7aff;
144 + color: #fff;
145 + page-break-inside: avoid;
146 + font-family: monospace;
147 + font-size: 15px;
148 + line-height: 1.6;
149 + margin-bottom: 1.6em;
150 + max-width: 100%;
151 + overflow: auto;
152 + padding: 1em 1.5em;
153 + display: block;
154 + word-wrap: break-word;
932 155 }
933 156
934 -@keyframes rotate {
935 - 100% {
936 - transform: rotate(360deg);
937 - }
157 +.copy-btn {
158 + padding: 10px 20px;
159 + border: none;
160 + border-radius: 4px;
161 + background-color: #9e7aff;
938 162 }
939 163
940 -@keyframes dash {
941 - 0% {
942 - stroke-dasharray: 1, 150;
943 - stroke-dashoffset: 0;
944 - }
945 - 50% {
946 - stroke-dasharray: 90, 150;
947 - stroke-dashoffset: -35;
948 - }
949 - 100% {
950 - stroke-dasharray: 90, 150;
951 - stroke-dashoffset: -124;
952 - }
953 -}
954 -
955 -/* ========================================
956 - FLOATING CHATBOT & CONTROLS
957 - ======================================== */
958 -.chatbot-title-container {
959 - display: flex;
960 - align-items: center;
961 - justify-content: space-between;
962 - gap: 10px;
963 - flex: 1 1 auto;
964 - min-width: 0;
965 -}
966 -
967 -.chatbot-title-group {
968 - display: flex;
969 - align-items: center;
970 - gap: 8px;
971 -}
972 -
973 -.chat-mode-indicator {
974 - font-size: 12px;
975 - line-height: 1;
976 - margin-right: 0;
977 - padding: 4px 9px;
978 - border-radius: 999px;
979 - background: rgba(255, 255, 255, 0.18);
980 - color: #ffffff;
981 - display: inline-flex;
982 - align-items: center;
983 - height: 22px;
984 - white-space: nowrap;
985 - flex: 0 0 auto;
986 -}
987 -
988 -.floating-chatbot {
164 +#floating-chatbot {
989 165 position: fixed;
990 166 bottom: 25px;
991 167 right: 25px;
992 168 width: 375px;
993 - /* Use viewport-aware height with fallbacks */
994 - height: min(625px, calc(100vh - 50px)); /* 50px = 25px top + 25px bottom margin */
995 - height: min(625px, calc(100dvh - 50px)); /* Dynamic viewport height for mobile browsers */
996 - max-height: calc(100vh - 50px);
997 - max-height: calc(100dvh - 50px); /* Fallback for browsers supporting dvh */
998 - box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
169 + height: 625px;
170 + box-shadow: 0 0 10px rgba(0, 0, 0, .25);
999 171 border-radius: 20px;
1000 172 overflow: hidden;
1001 173 display: flex;
1002 - flex-direction: column;
1003 174 z-index: 100000;
1004 - transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
175 + transition: transform .3s ease-in-out, opacity .3s ease-in-out;
1005 176 transform: translateY(20%);
1006 177 opacity: 0;
1007 178 pointer-events: none;
1008 179 }
1009 180
1010 -.floating-chatbot.visible {
181 +#floating-chatbot.visible {
1011 182 transform: translateY(0);
1012 183 opacity: 1;
1013 184 pointer-events: auto;
1014 185 }
1015 186
1016 -/* ========================================
1017 - EMBEDDED CHATBOT (Shortcode)
1018 - ======================================== */
1019 -/* Embedded chatbots are NOT inside .floating-chatbot wrapper */
1020 -/* Apply fixed height like floating widget so quick questions overlay properly */
1021 -.mxchat-chatbot-wrapper:not(.floating-chatbot .mxchat-chatbot-wrapper) {
1022 - height: 500px;
1023 - max-height: 500px;
187 +#floating-chatbot-button.hidden, .exit-chat span {
188 + display: none!important;
1024 189 }
1025 190
1026 -/* Hide the minimize/exit button for embedded chatbots - it doesn't make sense */
1027 -.mxchat-chatbot-wrapper:not(.floating-chatbot .mxchat-chatbot-wrapper) .exit-chat {
1028 - display: none !important;
1029 -}
1030 -
1031 -.floating-chatbot-button.hidden,
1032 -.exit-chat span {
1033 - display: none !important;
1034 -}
1035 -
1036 -.chatbot-top-bar button.exit-chat:hover {
1037 - background: rgba(255, 255, 255, 0.12);
1038 -}
1039 191 .visible {
1040 192 display: flex;
1041 193 }
1042 194
1043 -.floating-chatbot-button {
195 +#floating-chatbot-button {
1044 196 transition: opacity 1s ease-in-out;
1045 197 font-size: 1.25rem;
1046 198 position: fixed;
1047 199 bottom: 30px;
1048 200 right: 25px;
1049 - background-color: #212121;
201 + background-color: #d63638;
1050 202 color: #fff;
1051 203 width: 60px;
1052 204 height: 60px;
1053 205 border-radius: 50%;
1054 - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2) !important;
206 + box-shadow: 0 4px 8px rgba(0, 0, 0, .2)!important;
1055 207 justify-content: center;
1056 208 align-items: center;
1057 209 cursor: pointer;
1058 - transition: 0.3s;
210 + transition: .3s;
1059 211 z-index: 100000;
1060 - display: flex;
212 + display: flex;
1061 213 }
1062 214
1063 -.floating-chatbot-button img {
215 +#floating-chatbot-button img {
1064 216 max-width: 100%;
1065 217 max-height: 100%;
218 + padding: 10px;
1066 219 width: auto;
1067 220 height: auto;
1068 221 }
1069 222
1070 -.chatbot-top-bar {
1071 - background: #212121;
223 +#mxchat-chatbot-wrapper.active+#floating-chatbot-button {
224 + bottom: 530px;
225 + width: 100%;
1072 226 }
1073 227
1074 -.mxchat-chatbot-wrapper .chatbot-top-bar button.exit-chat {
1075 - background: transparent;
228 +.chatbot-close-button {
229 + position: absolute;
230 + top: 5px;
231 + right: 5px;
1076 232 border: none;
1077 - opacity: 0.8;
1078 - padding: 0;
1079 - width: 32px;
1080 - height: 32px;
1081 - min-width: 32px;
1082 - flex: 0 0 auto;
1083 - border-radius: 6px;
1084 - transition: opacity 0.15s ease, background 0.15s ease;
233 + background: 0 0;
234 + cursor: pointer;
235 + font-size: 20px;
236 + color: #f0f0f1;
1085 237 }
1086 238
1087 -.mxchat-chatbot-wrapper .chatbot-top-bar {
239 +#mxchat-chatbot-wrapper .chatbot-top-bar {
1088 240 cursor: pointer;
1089 241 color: #fff;
1090 - padding: 8px 12px;
1091 - min-height: 48px;
1092 - gap: 8px;
242 + padding: 10px;
1093 243 border-top-left-radius: 10px;
1094 244 border-top-right-radius: 10px;
1095 245 display: flex;
1096 246 justify-content: space-between;
1097 - align-items: center;
247 + align-items: baseline;
1098 248 }
1099 249
1100 -.mxchat-chatbot-wrapper .chatbot-top-bar .chatbot-title {
1101 - font-size: 15px;
1102 - line-height: 1.2;
1103 - padding: 0;
250 +#mxchat-chatbot-wrapper .chatbot-top-bar .chatbot-title {
251 + font-size: 1rem;
252 + line-height: 25px;
253 + padding: 10px;
1104 254 margin: 0;
1105 255 font-family: 'Plus Jakarta Sans', sans-serif;
1106 - font-weight: 600;
256 + font-weight: bold;
1107 257 }
1108 258
259 +#mxchat-chatbot-wrapper .chatbot-top-bar .chatbot-title span {
260 + font-weight: 700;
261 +}
262 +
263 +#mxchat-chatbot-wrapper .chatbot-top-bar button.exit-chat {
264 + background: 0 0;
265 + border: none;
266 + opacity: .8;
267 +}
268 +
1109 269 .exit-chat {
1110 270 border: none;
1111 - background: transparent;
271 + background: 0 0;
1112 272 cursor: pointer;
1113 - display: inline-flex;
273 + display: flex;
1114 274 align-items: center;
1115 275 justify-content: center;
1116 - padding: 0;
276 + padding: 5px;
1117 277 margin-left: auto;
1118 - opacity: 0.8;
1119 - width: 32px;
1120 - height: 32px;
1121 - min-width: 32px;
1122 - flex: 0 0 auto;
1123 278 }
1124 279
1125 280 .exit-chat svg {
1126 - width: 18px;
1127 - height: 18px;
1128 - fill: none;
1129 - stroke: currentColor;
281 + fill: white;
282 + width: 24px;
283 + height: 24px;
284 + transform: rotate(270deg);
1130 285 }
1131 286
1132 -.mxchat-chatbot-wrapper .chatbot-footer {
287 +#mxchat-chatbot-wrapper .chatbot-footer {
1133 288 text-align: center;
1134 289 padding-bottom: 10px;
1135 - font-size: 0.85em;
290 + font-size: .85em;
1136 291 }
1137 292
1138 -.mxchat-chatbot-wrapper .chatbot-footer .privacy-notice {
1139 - font-size: 12px;
1140 - margin: 0;
1141 - color: #71717a;
1142 -}
1143 -
1144 -.mxchat-chatbot-wrapper .chatbot-footer .privacy-notice a {
1145 - color: #0073aa;
1146 - text-decoration: underline;
1147 - font-size: 12px;
1148 -}
1149 -
1150 -.mxchat-chatbot-wrapper .chatbot-footer .powered-by {
293 +#mxchat-chatbot-wrapper .chatbot-footer .powered-by {
1151 294 text-decoration: none;
1152 295 color: inherit;
1153 296 font-weight: 700;
1154 297 }
1155 298
1156 -.mxchat-chatbot-wrapper .chatbot-footer .powered-by span {
299 +#mxchat-chatbot-wrapper .chatbot-footer .powered-by span {
1157 300 text-decoration: underline;
1158 301 }
1159 302
1160 -/* ========================================
1161 - INIT LOADER (shown while chat initializes)
1162 - ======================================== */
1163 -.mxchat-init-loader {
303 +.thinking-dots-container {
1164 304 display: flex;
1165 - align-items: center;
1166 305 justify-content: center;
1167 - flex-grow: 1;
1168 - min-height: 0;
1169 - animation: fadeIn 0.3s ease-in-out;
1170 -}
1171 -
1172 -.mxchat-init-loader-dots {
1173 - display: flex;
1174 - gap: 8px;
1175 -}
1176 -
1177 -.mxchat-init-loader-dots .dot {
1178 - width: 8px;
1179 - height: 8px;
1180 - border-radius: 50%;
1181 - background-color: #888;
1182 - animation: mxchat-dot-bounce 1.4s ease-in-out infinite both;
1183 -}
1184 -
1185 -.mxchat-init-loader-dots .dot:nth-child(1) {
1186 - animation-delay: -0.32s;
1187 -}
1188 -
1189 -.mxchat-init-loader-dots .dot:nth-child(2) {
1190 - animation-delay: -0.16s;
1191 -}
1192 -
1193 -/* ========================================
1194 - THINKING DOTS ANIMATION
1195 - ======================================== */
1196 -.chat-box .bot-message.temporary-message .thinking-dots-container {
1197 - display: flex;
1198 - justify-content: center;
1199 306 align-items: center;
1200 307 overflow: hidden;
1201 - height: 20px;
1202 - position: relative;
1203 - z-index: 1;
1204 - flex-shrink: 0;
308 + height: 20px; /* Adjust as needed */
1205 309 }
1206 310
1207 -.chat-box .bot-message.temporary-message .thinking-dots {
311 +.thinking-dots {
1208 312 display: flex;
1209 313 justify-content: center;
1210 314 align-items: center;
1211 315 height: 90%;
1212 - gap: 5px;
1213 - flex-shrink: 0;
1214 316 }
1215 317
1216 -.chat-box .bot-message.temporary-message .thinking-dots .dot {
1217 - height: 6px;
1218 - width: 6px;
318 +.dot {
319 + height: 8px;
320 + width: 8px;
1219 321 margin: 0 3px;
1220 322 background-color: #fff;
1221 323 border-radius: 50%;
1222 324 display: inline-block;
1223 - animation: mxchat-dot-bounce 1.4s ease-in-out infinite both;
1224 - vertical-align: middle;
325 + animation: bounce 1.4s ease-in-out infinite both;
1225 326 }
1226 327
1227 -.chat-box .bot-message.temporary-message .thinking-dots .dot:first-child {
1228 - animation-delay: -0.32s;
328 +.dot:first-child {
329 + animation-delay: -.32s;
1229 330 }
1230 331
1231 -.chat-box .bot-message.temporary-message .thinking-dots .dot:nth-child(2) {
1232 - animation-delay: -0.16s;
332 +.dot:nth-child(2) {
333 + animation-delay: -.16s;
1233 334 }
1234 335
1235 -@keyframes mxchat-dot-bounce {
336 +@keyframes bounce {
1236 337 0%, 100%, 80% {
1237 338 transform: scale(1);
1238 339 }
1239 340 40% {
@@ -1240,41 +341,39 @@
1240 341 transform: scale(1.5);
1241 342 }
1242 343 }
1243 344
1244 -/* ========================================
1245 - PRE-CHAT MESSAGE
1246 - ======================================== */
1247 -.pre-chat-message {
345 +
346 +
347 +#pre-chat-message {
1248 348 position: fixed;
1249 - bottom: 85px;
1250 - right: 30px;
349 + bottom: 85px;
350 + right: 30px;
1251 351 background-color: #fff;
1252 - color: #212121;
352 + color: #333;
1253 353 padding: 10px;
1254 - box-shadow: 0px 0px 10px rgba(150, 150, 150, 0.3);
354 + box-shadow: rgba(150, 150, 150, 0.2) 0px 10px 30px 0px, rgba(150, 150, 150, 0.2) 0px 0px 0px 1px;
1255 355 border-radius: 5px;
1256 356 z-index: 1000;
1257 - cursor: pointer;
1258 - max-width: 325px;
357 + cursor: pointer;
358 + max-width: 70vw;
1259 359 font-size: 14px;
1260 - display: none;
360 + display: none;
361 + background: #fff;
1261 362 margin-bottom: 10px;
1262 363 }
1263 364
1264 -.pre-chat-message .close-pre-chat-message {
365 +#pre-chat-message .close-pre-chat-message {
1265 366 position: absolute;
1266 367 top: -6px;
1267 368 right: -6px;
1268 369 background-color: #ccc;
1269 370 border: none;
1270 - color: #212121;
371 + color: #333;
1271 372 font-size: 14px;
1272 373 cursor: pointer;
1273 374 border-radius: 50%;
1274 375 width: 20px;
1275 - min-width: 20px;
1276 - min-height: 20px;
1277 376 height: 20px;
1278 377 display: flex;
1279 378 align-items: center;
1280 379 justify-content: center;
@@ -1279,613 +378,44 @@
1279 378 align-items: center;
1280 379 justify-content: center;
1281 380 padding: 0;
1282 381 line-height: 1;
382 + display: flex; /* Show the close button on hover */
1283 383 }
1284 384
1285 -/* ========================================
1286 - VIEWPORT HEIGHT CONSTRAINTS
1287 - Handles bookmarks bar, browser zoom, and smaller screens
1288 - ======================================== */
1289 -@media screen and (max-height: 700px) {
1290 - .floating-chatbot {
1291 - bottom: 15px;
1292 - height: calc(100vh - 30px);
1293 - height: calc(100dvh - 30px);
1294 - max-height: calc(100vh - 30px);
1295 - max-height: calc(100dvh - 30px);
1296 - }
1297 385
1298 - .floating-chatbot-button {
1299 - bottom: 20px;
1300 - }
1301 386
1302 - .pre-chat-message {
1303 - bottom: 75px;
1304 - }
1305 -}
1306 -
1307 -@media screen and (max-height: 550px) {
1308 - .floating-chatbot {
1309 - bottom: 10px;
1310 - height: calc(100vh - 20px);
1311 - height: calc(100dvh - 20px);
1312 - max-height: calc(100vh - 20px);
1313 - max-height: calc(100dvh - 20px);
1314 - }
1315 -
1316 - /* Reduce padding in tight spaces */
1317 - .mxchat-popular-questions {
1318 - padding: 0 8px 5px;
1319 - margin-bottom: 8px;
1320 - }
1321 -
1322 - .mxchat-popular-question {
1323 - padding: 8px 12px;
1324 - font-size: 13px;
1325 - line-height: 20px;
1326 - }
1327 -
1328 - .mxchat-chatbot .chat-container .input-container {
1329 - margin: 0 8px 8px;
1330 - }
1331 -
1332 - .mxchat-chatbot-wrapper .chatbot-footer {
1333 - padding-bottom: 5px;
1334 - }
1335 -}
1336 -
1337 -/* ========================================
1338 - MOBILE RESPONSIVE
1339 - ======================================== */
1340 -@media screen and (max-width: 782px) {
1341 - .mxchat-search-results {
1342 - gap: 15px !important;
1343 - }
1344 -
1345 - .mxchat-search-intro {
1346 - font-size: 15px !important;
1347 - }
1348 -
1349 - .mxchat-search-title {
1350 - font-size: 15px !important;
1351 - }
1352 -
1353 - .mxchat-search-description {
1354 - font-size: 13px !important;
1355 - }
1356 -}
1357 -
1358 387 @media (max-width: 550px) {
1359 - .questions-toggle-btn,
1360 - .questions-collapse-btn {
1361 - width: 28px;
1362 - height: 28px;
388 +
389 + #pre-chat-message {
390 + bottom: 70px; /* Adjust this value as needed */
391 + right: 15px; /* Adjust this value as needed */
1363 392 }
1364 -
1365 - .questions-toggle-btn svg,
1366 - .questions-collapse-btn svg {
1367 - width: 22px;
1368 - height: 22px;
1369 - }
1370 -
1371 - .pre-chat-message {
1372 - bottom: 70px;
1373 - right: 15px;
1374 - }
1375 -
1376 - .chat-input {
393 +
394 + #chat-input {
1377 395 width: calc(100% - 70px);
1378 396 }
1379 -
1380 - .bot-message,
1381 - .user-message {
397 + .bot-message, .user-message {
1382 398 padding: 10px;
1383 399 max-width: 95%;
1384 400 }
1385 -
1386 - .floating-chatbot-button {
401 + #floating-chatbot-button {
1387 402 bottom: 15px;
1388 403 right: 10px;
1389 404 }
1390 -
1391 - .floating-chatbot {
1392 - width: calc(100vw - 16px);
1393 - /* Use multiple fallbacks for maximum browser compatibility */
1394 - height: calc(100vh - 16px); /* Fallback */
1395 - height: calc(var(--vh, 1vh) * 100 - 16px); /* JS-set custom property fallback */
1396 - height: calc(100dvh - 16px); /* Modern dynamic viewport height */
1397 - max-height: calc(100vh - 16px);
1398 - max-height: calc(100dvh - 16px);
405 + #floating-chatbot {
406 + width: 100vw;
407 + height: calc(var(--vh, 1vh) * 100);
1399 408 margin: 0;
1400 409 padding: 0;
1401 410 position: fixed;
1402 - bottom: 8px;
1403 - top: auto;
1404 - left: 8px;
1405 - right: 8px;
1406 - border-radius: 16px;
1407 - box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
411 + bottom: 0;
412 + top: 0;
413 + left: 0;
414 + right: 0;
415 + border-radius: 0;
1408 416 }
1409 -
1410 - .floating-chatbot .mxchat-chatbot-wrapper {
1411 - border-radius: 16px;
1412 - overflow: hidden;
417 + #mxchat-chatbot-wrapper .chatbot-top-bar {
418 + border-top-left-radius: 0;
419 + border-top-right-radius: 0;
1413 420 }
1414 -
1415 - .mxchat-chatbot-wrapper .chatbot-top-bar {
1416 - border-top-left-radius: 16px;
1417 - border-top-right-radius: 16px;
1418 - }
1419 421 }
1420 -
1421 -
1422 -
1423 -pre {
1424 - background-color: #000;
1425 - border: 1px solid #ddd;
1426 - border-radius: 20px;
1427 - border-left: 3px solid #9e7aff;
1428 - color: #fff;
1429 - page-break-inside: avoid;
1430 - font-family: monospace;
1431 - font-size: 15px;
1432 - line-height: 1.6;
1433 - margin-bottom: 1.6em;
1434 - max-width: 100%;
1435 - overflow: auto;
1436 - padding: 1em 1.5em;
1437 - display: block;
1438 - word-wrap: break-word;
1439 -}
1440 -
1441 -.copy-btn {
1442 - padding: 10px 20px;
1443 - border: none;
1444 - border-radius: 4px;
1445 - background-color: #9e7aff;
1446 - transition: background-color 0.3s;
1447 - color: #fff;
1448 - font-size: 1rem;
1449 - cursor: pointer;
1450 - font-weight: 700;
1451 - margin-bottom: 10px;
1452 -}
1453 -
1454 -.copy-btn:hover {
1455 - opacity: 0.8;
1456 -}
1457 -
1458 -.mxchat-product-card {
1459 - display: flex;
1460 - flex-direction: column;
1461 - align-items: center;
1462 - margin: 10px 0;
1463 - padding: 10px;
1464 - border-radius: 5px;
1465 - background-color: inherit;
1466 -}
1467 -
1468 -.mxchat-product-card img.mxchat-product-image {
1469 - max-width: 100%;
1470 - height: auto;
1471 - margin-bottom: 5px;
1472 - border-radius: 4px;
1473 -}
1474 -
1475 -.mxchat-product-card h3.mxchat-product-name {
1476 - font-size: 16px;
1477 - font-weight: bold;
1478 - margin: 5px 0;
1479 - text-align: center;
1480 - color: inherit;
1481 -}
1482 -
1483 -.mxchat-product-card .mxchat-product-price {
1484 - color: inherit;
1485 - font-weight: bold;
1486 - margin-bottom: 5px;
1487 -}
1488 -
1489 -.mxchat-product-card .mxchat-product-description {
1490 - font-size: 14px;
1491 - text-align: center;
1492 - margin-bottom: 10px;
1493 - color: inherit;
1494 -}
1495 -
1496 -.mxchat-product-card .mxchat-add-to-cart-button {
1497 - background-color: #212121;
1498 - color: #fff;
1499 - padding: 8px 12px;
1500 - border: none;
1501 - cursor: pointer;
1502 - border-radius: 12px;
1503 - transition: background-color 0.3s ease;
1504 -}
1505 -
1506 -.mxchat-product-card .mxchat-add-to-cart-button:hover {
1507 - background-color: #212121;
1508 -}
1509 -
1510 -.mxchat-image-gallery {
1511 - display: flex;
1512 - flex-wrap: wrap;
1513 - gap: 10px;
1514 - justify-content: center;
1515 -}
1516 -
1517 -.mxchat-image-item {
1518 - text-align: center;
1519 - overflow: hidden;
1520 - word-wrap: break-word;
1521 -}
1522 -
1523 -.mxchat-image-title {
1524 - display: block;
1525 - font-size: 14px;
1526 - color: inherit;
1527 - white-space: nowrap;
1528 - overflow: hidden;
1529 - text-overflow: ellipsis;
1530 - max-width: 100%;
1531 -}
1532 -
1533 -.mxchat-image-link {
1534 - text-decoration: none;
1535 -}
1536 -
1537 -.mxchat-image-thumbnail {
1538 - max-width: 100%;
1539 - height: auto;
1540 - border-radius: 5px;
1541 - transition: transform 0.3s;
1542 -}
1543 -
1544 -.mxchat-image-thumbnail:hover {
1545 - transform: scale(1.05);
1546 -}
1547 -
1548 -.mxchat-generated-image {
1549 - max-width: 100%;
1550 - height: auto;
1551 - border-radius: 0 0 8px 8px;
1552 -}
1553 -
1554 -#widget_icon, #widget_icon_2, #widget_icon_3, #widget_icon_5, #widget_icon_4, #widget_icon_6, #widget_icon_7 {
1555 - padding: 10px;
1556 -}
1557 -
1558 -#widget_icon_10 {
1559 - fill: #fff;
1560 -}
1561 -
1562 -
1563 -/* This selector with more context - showing the collapse button in certain states */
1564 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn {
1565 - background: none;
1566 - border: none;
1567 - padding: 0;
1568 - margin: 0px;
1569 - cursor: pointer;
1570 - transition: all 0.2s ease;
1571 - color: #212121;
1572 - display: none; /* Hidden by default */
1573 - align-items: center;
1574 - justify-content: center;
1575 - width: 32px;
1576 - height: 32px;
1577 - box-shadow: none;
1578 - outline: none;
1579 - align-self: center; /* THIS IS MISSING */
1580 - order: -1; /* THIS IS MISSING */
1581 -}
1582 -
1583 -/* ALL hover states - these are MISSING from your new CSS */
1584 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover {
1585 - background: none;
1586 - border: none;
1587 - box-shadow: none;
1588 -}
1589 -
1590 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:focus {
1591 - outline: none;
1592 - background: none;
1593 - border: none;
1594 - box-shadow: none;
1595 -}
1596 -
1597 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:active {
1598 - background: none;
1599 - border: none;
1600 - box-shadow: none;
1601 -}
1602 -
1603 -/* SVG styles - these are MISSING */
1604 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn svg {
1605 - fill: none;
1606 - stroke: #212121;
1607 - transition: transform 0.2s ease;
1608 - width: 25px;
1609 - height: 25px;
1610 -}
1611 -
1612 -.mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover svg {
1613 - opacity: 0.7;
1614 -}
1615 -
1616 -/* THE CRITICAL DISPLAY RULE - this shows when it's been collapsed before */
1617 -.mxchat-popular-questions.has-been-collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1618 - display: flex;
1619 -}
1620 -
1621 -/* Hide when actually collapsed */
1622 -.mxchat-popular-questions.collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1623 - display: none;
1624 -}
1625 -
1626 -/* ============================================================
1627 - Header overflow menu — 3-dot kebab + dropdown (v3.2.9 / v3.2.10)
1628 - Lives in .chatbot-top-bar to the LEFT of .exit-chat. Visual treatment
1629 - mirrors .exit-chat: transparent, white-on-dark, 0.8 opacity, 5px pad.
1630 -
1631 - v3.2.10: explicit `order` rules pin the visual order
1632 - title (0) | kebab (1) | down-arrow (2)
1633 - so the down-arrow is always the rightmost icon regardless of source
1634 - order or which sibling has margin-left:auto.
1635 - ============================================================ */
1636 -.mxchat-chatbot-wrapper .chatbot-top-bar > .chatbot-title-container { order: 0; }
1637 -.mxchat-chatbot-wrapper .chatbot-top-bar > .mxchat-header-menu-wrap { order: 1; }
1638 -.mxchat-chatbot-wrapper .chatbot-top-bar > .exit-chat { order: 2; }
1639 -
1640 -.mxchat-header-menu-wrap {
1641 - position: relative;
1642 - display: inline-flex;
1643 - align-items: center;
1644 - margin-left: auto; /* push kebab + arrow group to the right edge */
1645 -}
1646 -.mxchat-chatbot-wrapper .chatbot-top-bar .mxchat-header-menu-wrap ~ .exit-chat,
1647 -.mxchat-chatbot-wrapper .chatbot-top-bar .mxchat-header-menu-wrap + .exit-chat {
1648 - margin-left: 4px; /* even, snug gap between kebab and close */
1649 -}
1650 -.mxchat-chatbot-wrapper .chatbot-top-bar > .exit-chat:focus {
1651 - background: rgba(255, 255, 255, 0.12);
1652 - opacity: 1;
1653 - outline: none;
1654 -}
1655 -.mxchat-header-btn {
1656 - border: none;
1657 - background: transparent;
1658 - cursor: pointer;
1659 - display: inline-flex;
1660 - align-items: center;
1661 - justify-content: center;
1662 - padding: 0;
1663 - opacity: 0.8;
1664 - color: #fff;
1665 - transition: opacity 0.15s ease, background 0.15s ease;
1666 - border-radius: 6px;
1667 - line-height: 0;
1668 - width: 32px;
1669 - height: 32px;
1670 - min-width: 32px;
1671 - flex: 0 0 auto;
1672 -}
1673 -.mxchat-header-btn:hover,
1674 -.mxchat-header-btn:focus {
1675 - opacity: 1;
1676 - background: rgba(255, 255, 255, 0.12);
1677 - outline: none;
1678 -}
1679 -.mxchat-header-btn[aria-expanded="true"] {
1680 - opacity: 1;
1681 - background: rgba(255, 255, 255, 0.12);
1682 -}
1683 -.mxchat-menu-trigger svg {
1684 - width: 18px;
1685 - height: 18px;
1686 -}
1687 -
1688 -.mxchat-header-menu {
1689 - position: absolute;
1690 - top: calc(100% + 6px);
1691 - right: 0;
1692 - min-width: 220px;
1693 - background: var(--mxchat-menu-bg, #ffffff);
1694 - color: var(--mxchat-menu-fg, #1a1a1a);
1695 - border: 1px solid rgba(127, 127, 127, 0.20);
1696 - border-radius: 10px;
1697 - box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18), 0 2px 6px rgba(0, 0, 0, 0.10);
1698 - padding: 4px;
1699 - z-index: 5;
1700 - opacity: 0;
1701 - transform: translateY(-4px);
1702 - pointer-events: none;
1703 - transition: opacity 0.12s ease, transform 0.12s ease;
1704 -}
1705 -.mxchat-header-menu.is-open {
1706 - opacity: 1;
1707 - transform: translateY(0);
1708 - pointer-events: auto;
1709 -}
1710 -.mxchat-header-menu[hidden] {
1711 - display: none;
1712 -}
1713 -.mxchat-menu-item {
1714 - display: flex;
1715 - align-items: center;
1716 - gap: 10px;
1717 - width: 100%;
1718 - padding: 8px 12px;
1719 - min-height: 40px;
1720 - border: none;
1721 - background: transparent;
1722 - color: inherit;
1723 - font-size: 14px;
1724 - line-height: 1.3;
1725 - text-align: left;
1726 - cursor: pointer;
1727 - border-radius: 6px;
1728 - transition: background 0.12s ease;
1729 - text-decoration: none;
1730 - box-sizing: border-box;
1731 -}
1732 -.mxchat-menu-item:hover,
1733 -.mxchat-menu-item:focus {
1734 - background: rgba(127, 127, 127, 0.18);
1735 - outline: none;
1736 -}
1737 -.mxchat-menu-item-icon {
1738 - display: inline-flex;
1739 - align-items: center;
1740 - justify-content: center;
1741 - width: 16px;
1742 - height: 16px;
1743 - color: inherit;
1744 - opacity: 0.85;
1745 - flex-shrink: 0;
1746 -}
1747 -.mxchat-menu-item-icon svg {
1748 - width: 16px;
1749 - height: 16px;
1750 - display: block;
1751 -}
1752 -.mxchat-menu-item-label {
1753 - flex: 1;
1754 - color: inherit;
1755 -}
1756 -
1757 -/* RTL — flip the dropdown anchor edge */
1758 -[dir="rtl"] .mxchat-header-menu,
1759 -.mxchat-chatbot-wrapper[dir="rtl"] .mxchat-header-menu {
1760 - right: auto;
1761 - left: 0;
1762 -}
1763 -
1764 -/* ============================================================
1765 - Print stylesheet — clean conversation export (v3.2.9 rebuild)
1766 - Goal: full-page-width transcript, no right-edge clipping, all chrome hidden.
1767 - ============================================================ */
1768 -@media print {
1769 - body * {
1770 - visibility: hidden !important;
1771 - }
1772 - .mxchat-conversation-print-root,
1773 - .mxchat-conversation-print-root * {
1774 - visibility: visible !important;
1775 - }
1776 - .mxchat-conversation-print-root {
1777 - position: absolute !important;
1778 - left: 0 !important;
1779 - top: 0 !important;
1780 - right: 0 !important;
1781 - width: 100% !important;
1782 - max-width: 100% !important;
1783 - height: auto !important;
1784 - min-height: 0 !important;
1785 - max-height: none !important;
1786 - overflow: visible !important;
1787 - background: #fff !important;
1788 - color: #000 !important;
1789 - padding: 24px 32px !important;
1790 - margin: 0 !important;
1791 - box-shadow: none !important;
1792 - border: none !important;
1793 - transform: none !important;
1794 - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
1795 - direction: inherit;
1796 - box-sizing: border-box !important;
1797 - }
1798 - .mxchat-conversation-print-root::before {
1799 - content: attr(data-print-title);
1800 - display: block;
1801 - font-size: 16px;
1802 - font-weight: 600;
1803 - color: #000;
1804 - border-bottom: 1px solid #000;
1805 - padding-bottom: 8px;
1806 - margin-bottom: 16px;
1807 - }
1808 - .mxchat-conversation-print-root .user-message,
1809 - .mxchat-conversation-print-root .bot-message,
1810 - .mxchat-conversation-print-root .agent-message {
1811 - display: block !important;
1812 - position: static !important;
1813 - float: none !important;
1814 - width: 100% !important;
1815 - max-width: 100% !important;
1816 - min-width: 0 !important;
1817 - background: transparent !important;
1818 - color: #000 !important;
1819 - border: none !important;
1820 - border-radius: 0 !important;
1821 - box-shadow: none !important;
1822 - padding: 8px 0 !important;
1823 - margin: 0 0 12px 0 !important;
1824 - page-break-inside: avoid;
1825 - overflow-wrap: anywhere;
1826 - word-break: break-word;
1827 - box-sizing: border-box !important;
1828 - }
1829 - .mxchat-conversation-print-root .user-message *,
1830 - .mxchat-conversation-print-root .bot-message *,
1831 - .mxchat-conversation-print-root .agent-message * {
1832 - max-width: 100% !important;
1833 - box-sizing: border-box !important;
1834 - color: #000 !important;
1835 - }
1836 - .mxchat-conversation-print-root .user-message::before {
1837 - content: "You: ";
1838 - font-weight: 600;
1839 - color: #000;
1840 - }
1841 - .mxchat-conversation-print-root .bot-message::before {
1842 - content: "Bot: ";
1843 - font-weight: 600;
1844 - color: #000;
1845 - }
1846 - .mxchat-conversation-print-root .agent-message::before {
1847 - content: "Agent: ";
1848 - font-weight: 600;
1849 - color: #000;
1850 - }
1851 - .mxchat-conversation-print-root pre,
1852 - .mxchat-conversation-print-root code {
1853 - background: #f4f4f4 !important;
1854 - color: #000 !important;
1855 - border: 1px solid #ddd !important;
1856 - white-space: pre-wrap !important;
1857 - word-wrap: break-word !important;
1858 - overflow-wrap: anywhere !important;
1859 - max-width: 100% !important;
1860 - box-sizing: border-box !important;
1861 - }
1862 - .mxchat-conversation-print-root img,
1863 - .mxchat-conversation-print-root .image-gallery img {
1864 - max-width: 100% !important;
1865 - height: auto !important;
1866 - }
1867 - .mxchat-conversation-print-root a {
1868 - color: #000 !important;
1869 - text-decoration: underline;
1870 - word-break: break-all;
1871 - }
1872 - /* Hide widget chrome inside the transcript */
1873 - .mxchat-conversation-print-root .mxchat-copy-button,
1874 - .mxchat-conversation-print-root .thinking-dots,
1875 - .mxchat-conversation-print-root .temporary-message,
1876 - .mxchat-conversation-print-root .mxchat-product-card button,
1877 - .mxchat-conversation-print-root .mxchat-popular-questions,
1878 - .mxchat-conversation-print-root .mxchat-input-container,
1879 - .mxchat-conversation-print-root .mxchat-top-bar,
1880 - .mxchat-conversation-print-root .mxchat-toolbar,
1881 - .mxchat-conversation-print-root .mxchat-header-menu-wrap,
1882 - .mxchat-conversation-print-root .mxchat-header-menu,
1883 - .mxchat-conversation-print-root .mxchat-menu-trigger {
1884 - display: none !important;
1885 - }
1886 - /* Page setup */
1887 - @page {
1888 - margin: 0.5in;
1889 - size: auto;
1890 - }
1891 -}