PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 2.5.1
MxChat – AI Chatbot & Content Generation for WordPress v2.5.1
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
mxchat-basic / css / chat-style.css

chat-style.css in MxChat – AI Chatbot & Content Generation for WordPress 2.5.1, at css/chat-style.css

1,454 lines 31.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
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;
8 }
9
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 {
131 display: none;
132 }
133
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-code-block-container {
294 margin: 16px 0;
295 border-radius: 8px;
296 background: rgba(255, 255, 255, 0.1);
297 border: 1px solid rgba(255, 255, 255, 0.2);
298 overflow: hidden;
299 font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Courier New', monospace;
300 }
301
302 .mxchat-code-header {
303 display: flex;
304 justify-content: space-between;
305 align-items: center;
306 background: rgba(255, 255, 255, 0.15);
307 padding: 8px 12px;
308 border-bottom: 1px solid rgba(255, 255, 255, 0.2);
309 font-size: 11px;
310 min-height: 36px;
311 }
312
313 .mxchat-code-language {
314 color: rgba(255, 255, 255, 0.8);
315 font-weight: 600;
316 text-transform: uppercase;
317 letter-spacing: 0.5px;
318 font-size: 10px;
319 }
320
321 .mxchat-copy-button {
322 background: rgba(255, 255, 255, 0.2);
323 color: white;
324 border: 1px solid rgba(255, 255, 255, 0.3);
325 padding: 4px 8px;
326 border-radius: 4px;
327 font-size: 10px;
328 cursor: pointer;
329 transition: all 0.2s ease;
330 min-height: 24px;
331 line-height: 1;
332 }
333
334 .mxchat-copy-button:hover {
335 background: rgba(255, 255, 255, 0.3);
336 border-color: rgba(255, 255, 255, 0.4);
337 }
338
339 .mxchat-copy-button:active {
340 background: rgba(255, 255, 255, 0.4);
341 }
342
343 .mxchat-code-block {
344 margin: 0;
345 padding: 16px;
346 background: rgba(0, 0, 0, 0.3);
347 overflow-x: auto;
348 font-size: 13px;
349 line-height: 1.4;
350 white-space: pre;
351 border: none;
352 }
353
354 .mxchat-code-block code {
355 font-family: inherit;
356 font-size: inherit;
357 background: none !important;
358 padding: 0 !important;
359 border: none !important;
360 color: rgba(255, 255, 255, 0.95) !important;
361 display: block;
362 }
363
364 .mxchat-inline-code {
365 background: rgba(255, 255, 255, 0.2) !important;
366 padding: 2px 6px !important;
367 border-radius: 3px !important;
368 font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Courier New', monospace !important;
369 font-size: 0.85em !important;
370 color: #81c784 !important;
371 border: 1px solid rgba(255, 255, 255, 0.3) !important;
372 }
373
374 /* ========================================
375 TOOLBAR SYSTEM
376 ======================================== */
377 .active-pdf-container,
378 .active-word-container {
379 display: inline-flex;
380 align-items: center;
381 max-width: 200px;
382 margin: 0;
383 padding: 0;
384 line-height: 13px;
385 }
386
387 .active-pdf-name,
388 .active-word-name {
389 font-size: 11px;
390 white-space: nowrap;
391 overflow: hidden;
392 text-overflow: ellipsis;
393 }
394
395 .remove-pdf-btn,
396 .remove-word-btn,
397 .toolbar-perplexity {
398 background: none;
399 border: none;
400 padding: 2px;
401 margin-left: 4px;
402 cursor: pointer;
403 transition: opacity 0.2s;
404 line-height: 13px;
405 }
406
407 .remove-pdf-btn:hover,
408 .remove-word-btn:hover,
409 .toolbar-perplexity:hover {
410 opacity: 1;
411 background: none;
412 }
413
414 #mxchat-chatbot .chat-toolbar {
415 display: flex;
416 gap: 10px;
417 padding: 8px;
418 background: none;
419 align-items: end;
420 }
421
422 #mxchat-chatbot .toolbar-btn {
423 background: none;
424 border: none;
425 padding: 0;
426 cursor: pointer;
427 width: 16px;
428 height: 16px;
429 align-items: center;
430 justify-content: center;
431 opacity: 0.6;
432 transition: opacity 0.2s;
433 margin: 0;
434 min-width: 0;
435 box-shadow: none;
436 }
437
438 #mxchat-chatbot .toolbar-btn svg {
439 width: 100%;
440 height: 100%;
441 }
442
443 #mxchat-chatbot .toolbar-btn:hover {
444 opacity: 1;
445 background: none;
446 border: none;
447 box-shadow: none;
448 }
449
450 #mxchat-chatbot .toolbar-btn:disabled {
451 opacity: 0.3;
452 cursor: not-allowed;
453 background: none;
454 border: none;
455 }
456
457 .toolbar-btn.active {
458 background-color: rgba(120, 115, 245, 0.2);
459 box-shadow: 0 0 0 2px rgba(120, 115, 245, 0.4);
460 }
461
462 #active-perplexity-container {
463 display: flex;
464 align-items: center;
465 margin-left: 8px;
466 font-size: 12px;
467 }
468
469 #perplexity-search-btn {
470 display: none;
471 }
472
473 #perplexity-search-btn.active {
474 opacity: 1;
475 }
476
477 /* ========================================
478 POPULAR QUESTIONS SYSTEM
479 ======================================== */
480 #mxchat-popular-questions {
481 padding: 0 10px 10px;
482 transition: all 0.3s ease;
483 margin-bottom: 12px;
484 position: relative;
485 }
486
487 .mxchat-popular-questions-title {
488 font-size: 14px;
489 line-height: 24px;
490 font-weight: bold;
491 color: #212121;
492 margin-bottom: 10px;
493 }
494
495 .mxchat-popular-questions-container {
496 position: relative;
497 display: flex;
498 flex-direction: column;
499 max-height: 200px;
500 overflow-y: auto;
501 padding: 0 10px 10px;
502 scrollbar-width: thin;
503 scrollbar-color: #212121 #f1f1f1;
504 transition: all 0.3s ease;
505 gap: 8px;
506 }
507
508 #mxchat-popular-questions.collapsed {
509 padding: 0;
510 margin: 0;
511 }
512
513 #mxchat-popular-questions.collapsed .mxchat-popular-questions-container {
514 flex-direction: row;
515 justify-content: center;
516 align-items: center;
517 padding: 0;
518 max-height: 40px;
519 overflow: visible;
520 }
521
522 #mxchat-popular-questions.collapsed .mxchat-popular-question {
523 display: none;
524 }
525
526 #mxchat-popular-questions.collapsed .questions-collapse-btn {
527 display: none;
528 }
529
530 /* MISSING - These need to be inside the container context: */
531 #mxchat-popular-questions .mxchat-popular-questions-container .questions-toggle-btn {
532 background: none;
533 border: none;
534 padding: 0;
535 margin: 0;
536 cursor: pointer;
537 transition: all 0.2s ease;
538 color: #212121;
539 display: none; /* Hidden by default when open */
540 align-items: center;
541 justify-content: center;
542 width: 32px;
543 height: 32px;
544 box-shadow: none;
545 outline: none;
546 }
547
548 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn {
549 background: none;
550 border: none;
551 padding: 0;
552 margin: 0px; /* Center and add bottom margin */
553 cursor: pointer;
554 transition: all 0.2s ease;
555 color: #212121;
556 display: none; /* Hidden by default */
557 align-items: center;
558 justify-content: center;
559 width: 32px;
560 height: 32px;
561 box-shadow: none;
562 outline: none;
563 align-self: center; /* Center in flex container */
564 order: -1; /* Make sure it appears first */
565 }
566
567 .questions-toggle-btn:hover,
568 .questions-collapse-btn:hover,
569 .questions-toggle-btn:focus,
570 .questions-collapse-btn:focus,
571 .questions-toggle-btn:active,
572 .questions-collapse-btn:active {
573 background: none;
574 border: none;
575 box-shadow: none;
576 outline: none;
577 }
578
579 .questions-toggle-btn svg,
580 .questions-collapse-btn svg {
581 transition: transform 0.2s ease;
582 fill: none;
583 width: 25px;
584 height: 25px;
585 }
586
587 .questions-toggle-btn:hover svg,
588 .questions-collapse-btn:hover svg {
589 opacity: 0.7;
590 }
591
592 #mxchat-popular-questions.collapsed .questions-toggle-btn {
593 display: flex;
594 }
595
596 #mxchat-popular-questions.has-been-collapsed .questions-collapse-btn {
597 display: flex;
598 align-self: center;
599 order: -1;
600 }
601
602 .mxchat-popular-question {
603 padding: 12px 20px;
604 background-color: #f5f5f5;
605 border: 1px solid #bbb;
606 border-radius: 8px;
607 color: #212121;
608 font-size: 14px;
609 line-height: 24px;
610 cursor: pointer;
611 text-align: initial;
612 transition: all 0.3s ease;
613 margin-bottom: 0;
614 box-shadow: none;
615 }
616
617 .mxchat-popular-question:hover {
618 background-color: #eaeaea;
619 border-color: #999;
620 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
621 transform: translateY(-1px);
622 }
623
624 .mxchat-popular-question:focus {
625 outline: none;
626 background-color: #e0e0e0;
627 border-color: #777;
628 box-shadow: 0 0 0 3px rgba(100, 149, 237, 0.5);
629 }
630
631 .mxchat-popular-question:active {
632 background-color: #d8d8d8;
633 border-color: #666;
634 box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
635 transform: translateY(0);
636 }
637
638 .mxchat-popular-questions-container::-webkit-scrollbar {
639 width: 8px;
640 }
641
642 .mxchat-popular-questions-container::-webkit-scrollbar-track {
643 background: #f1f1f1;
644 border-radius: 4px;
645 }
646
647 .mxchat-popular-questions-container::-webkit-scrollbar-thumb {
648 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
649 border-radius: 4px;
650 }
651
652 .mxchat-popular-questions-container::-webkit-scrollbar-thumb:hover {
653 background: linear-gradient(135deg, #d164ce, #6568d8, #2daeb8);
654 }
655
656 /* ========================================
657 CORE CHATBOT UI
658 ======================================== */
659 .invisible {
660 display: none;
661 opacity: 0;
662 pointer-events: none;
663 }
664
665 #mxchat-chatbot {
666 background: #fff;
667 overflow: hidden;
668 position: relative;
669 display: flex;
670 flex-direction: column;
671 height: 500px;
672 box-sizing: border-box;
673 flex-grow: 1;
674 }
675
676 #chat-container {
677 display: flex;
678 flex-direction: column;
679 height: 100%;
680 }
681
682 #chat-box {
683 flex-grow: 1;
684 overflow-y: auto;
685 padding: 10px;
686 margin-bottom: 0;
687 font-size: 1rem;
688 }
689
690 #chat-box::-webkit-scrollbar {
691 width: 5px;
692 }
693
694 #chat-box::-webkit-scrollbar-thumb {
695 background-color: #212121;
696 border-radius: 20px;
697 }
698
699 .bot-message,
700 .user-message {
701 margin-bottom: 15px;
702 padding: 10px;
703 display: inline-block;
704 max-width: 85%;
705 box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
706 font-size: 14px;
707 line-height: 24px;
708 }
709
710 .user-message {
711 background: #fff;
712 color: #212121;
713 text-align: left;
714 float: right;
715 clear: both;
716 border-radius: 18px 0 18px 18px;
717 word-wrap: break-word;
718 border: 1px solid rgba(226, 232, 255, 0.2);
719 }
720
721 .user-message p {
722 margin: 0;
723 }
724
725 #mxchat-chatbot #chat-container #chat-box .bot-message {
726 float: left;
727 clear: both;
728 border: 1px solid rgba(226, 232, 255, 0.2);
729 border-radius: 0 18px 18px;
730 background: #212121;
731 color: #fff;
732 overflow-x: hidden;
733 }
734
735 #mxchat-chatbot #chat-container #chat-box .agent-message {
736 text-align: left;
737 float: left;
738 clear: both;
739 border: 1px solid rgba(226, 232, 255, 0.2);
740 border-radius: 0 18px 18px;
741 background: #212121;
742 color: #fff;
743 overflow-x: hidden;
744 margin-bottom: 15px;
745 padding: 10px;
746 display: inline-block;
747 max-width: 85%;
748 font-size: 14px;
749 line-height: 24px;
750 box-shadow: -2px 2px rgba(250, 115, 230, 0.6), -4px 4px rgba(120, 115, 245, 0.6);
751 }
752
753 .bot-message p {
754 margin: 0 0 1em 0;
755 }
756
757 .bot-message p:last-child {
758 margin-bottom: 0;
759 }
760
761 .bot-message {
762 white-space: pre-line;
763 }
764
765 .bot-message a {
766 color: #ffffff;
767 text-decoration: underline !important;
768 }
769
770 .bot-message a:hover {
771 color: #e0e0e0;
772 text-decoration: underline;
773 }
774
775 .bot-message a:visited {
776 color: #ffffff;
777 }
778
779 .system-message {
780 padding: 8px 12px;
781 margin: 8px 0;
782 background-color: rgba(120, 115, 245, 0.1);
783 border-radius: 8px;
784 color: #555;
785 font-style: italic;
786 font-size: 14px;
787 text-align: center;
788 }
789
790 #mxchat-chatbot-wrapper {
791 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
792 border-radius: 10px;
793 display: flex;
794 flex-direction: column;
795 height: 100%;
796 width: 100%;
797 }
798
799 /* ========================================
800 INPUT & CONTROLS
801 ======================================== */
802 #mxchat-chatbot #chat-container #input-container {
803 position: relative;
804 display: flex;
805 align-items: center;
806 padding-right: 40px;
807 border: 1px solid #ccc;
808 border-radius: 10px;
809 margin: 0 10px 10px;
810 }
811
812 #mxchat-chatbot #chat-container #input-container #chat-input {
813 flex-grow: 1;
814 color: #212121;
815 line-height: 24px;
816 background: transparent;
817 margin-bottom: 0;
818 width: 100%;
819 min-height: 20px;
820 max-height: 65px;
821 resize: none;
822 overflow-y: auto;
823 font-size: 16px;
824 border: none;
825 border-radius: 5px;
826 box-sizing: border-box;
827 padding: 0.4em 0.5em;
828 outline: none;
829 border-radius: 10px;
830 }
831
832 #chat-input::-webkit-scrollbar {
833 width: 8px;
834 }
835
836 #chat-input::-webkit-scrollbar-track {
837 background: #f1f1f1;
838 border-radius: 4px;
839 }
840
841 #chat-input::-webkit-scrollbar-thumb {
842 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
843 border-radius: 4px;
844 }
845
846 #chat-input::-webkit-scrollbar-thumb:hover {
847 background: linear-gradient(135deg, #d164ce, #6568d8, #2daeb8);
848 }
849
850 #chat-input {
851 scrollbar-width: thin;
852 scrollbar-color: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1) #f1f1f1;
853 }
854
855 #mxchat-chatbot #chat-container #input-container #send-button {
856 position: absolute;
857 right: 10px;
858 top: 50%;
859 transform: translateY(-50%);
860 border: none;
861 border-radius: 50%;
862 width: 30px;
863 height: 30px;
864 display: flex;
865 align-items: center;
866 justify-content: center;
867 background: transparent !important;
868 padding: 5px;
869 margin: 0;
870 transition: background-color 0.3s;
871 color: #fff;
872 font-size: 1rem;
873 cursor: pointer;
874 font-weight: 700;
875 }
876
877 #send-button svg {
878 width: 25px;
879 height: 25px;
880 pointer-events: none;
881 }
882
883 #send-button:hover {
884 opacity: 0.8;
885 }
886
887 #mxchat-chatbot .spinner {
888 animation: rotate 2s linear infinite;
889 width: 20px;
890 height: 20px;
891 }
892
893 #mxchat-chatbot .spinner circle {
894 stroke: #212121;
895 stroke-linecap: round;
896 animation: dash 1.5s ease-in-out infinite;
897 }
898
899 @keyframes rotate {
900 100% {
901 transform: rotate(360deg);
902 }
903 }
904
905 @keyframes dash {
906 0% {
907 stroke-dasharray: 1, 150;
908 stroke-dashoffset: 0;
909 }
910 50% {
911 stroke-dasharray: 90, 150;
912 stroke-dashoffset: -35;
913 }
914 100% {
915 stroke-dasharray: 90, 150;
916 stroke-dashoffset: -124;
917 }
918 }
919
920 /* ========================================
921 FLOATING CHATBOT & CONTROLS
922 ======================================== */
923 .chatbot-title-container {
924 display: flex;
925 align-items: center;
926 justify-content: space-between;
927 width: 100%;
928 }
929
930 .chatbot-title-group {
931 display: flex;
932 align-items: center;
933 gap: 8px;
934 }
935
936 .chat-mode-indicator {
937 font-size: 12px;
938 margin-right: 8px;
939 padding: 4px 8px;
940 border-radius: 12px;
941 background: rgba(255, 255, 255, 0.2);
942 color: #ffffff;
943 }
944
945 #floating-chatbot {
946 position: fixed;
947 bottom: 25px;
948 right: 25px;
949 width: 375px;
950 height: 625px;
951 box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
952 border-radius: 20px;
953 overflow: hidden;
954 display: flex;
955 z-index: 100000;
956 transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
957 transform: translateY(20%);
958 opacity: 0;
959 pointer-events: none;
960 }
961
962 #floating-chatbot.visible {
963 transform: translateY(0);
964 opacity: 1;
965 pointer-events: auto;
966 }
967
968 #floating-chatbot-button.hidden,
969 .exit-chat span {
970 display: none !important;
971 }
972
973 .chatbot-top-bar#exit-chat-button button.exit-chat:hover {
974 background: none;
975 }
976 .visible {
977 display: flex;
978 }
979
980 #floating-chatbot-button {
981 transition: opacity 1s ease-in-out;
982 font-size: 1.25rem;
983 position: fixed;
984 bottom: 30px;
985 right: 25px;
986 background-color: #212121;
987 color: #fff;
988 width: 60px;
989 height: 60px;
990 border-radius: 50%;
991 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2) !important;
992 justify-content: center;
993 align-items: center;
994 cursor: pointer;
995 transition: 0.3s;
996 z-index: 100000;
997 display: flex;
998 }
999
1000 #floating-chatbot-button img {
1001 max-width: 100%;
1002 max-height: 100%;
1003 width: auto;
1004 height: auto;
1005 }
1006
1007 .chatbot-top-bar {
1008 background: #212121;
1009 }
1010
1011 #mxchat-chatbot-wrapper .chatbot-top-bar button.exit-chat {
1012 background: transparent;
1013 border: none;
1014 opacity: 0.8;
1015 padding: 0;
1016 min-width: 20px;
1017 }
1018
1019 #mxchat-chatbot-wrapper .chatbot-top-bar {
1020 cursor: pointer;
1021 color: #fff;
1022 padding: 10px;
1023 border-top-left-radius: 10px;
1024 border-top-right-radius: 10px;
1025 display: flex;
1026 justify-content: space-between;
1027 align-items: start;
1028 }
1029
1030 #mxchat-chatbot-wrapper .chatbot-top-bar .chatbot-title {
1031 font-size: 16px;
1032 line-height: 25px;
1033 padding: 10px;
1034 margin: 0;
1035 font-family: 'Plus Jakarta Sans', sans-serif;
1036 font-weight: bold;
1037 }
1038
1039 .exit-chat {
1040 border: none;
1041 background: transparent;
1042 cursor: pointer;
1043 display: flex;
1044 align-items: center;
1045 justify-content: center;
1046 padding: 5px;
1047 margin-left: auto;
1048 opacity: 0.8;
1049 min-width: 20px;
1050 }
1051
1052 .exit-chat svg {
1053 fill: white;
1054 width: 24px;
1055 height: 24px;
1056 transform: rotate(270deg);
1057 }
1058
1059 #mxchat-chatbot-wrapper .chatbot-footer {
1060 text-align: center;
1061 padding-bottom: 10px;
1062 font-size: 0.85em;
1063 }
1064
1065 #mxchat-chatbot-wrapper .chatbot-footer .privacy-notice {
1066 font-size: 12px;
1067 margin: 0;
1068 color: #71717a;
1069 }
1070
1071 #mxchat-chatbot-wrapper .chatbot-footer .privacy-notice a {
1072 color: #0073aa;
1073 text-decoration: underline;
1074 font-size: 12px;
1075 }
1076
1077 #mxchat-chatbot-wrapper .chatbot-footer .powered-by {
1078 text-decoration: none;
1079 color: inherit;
1080 font-weight: 700;
1081 }
1082
1083 #mxchat-chatbot-wrapper .chatbot-footer .powered-by span {
1084 text-decoration: underline;
1085 }
1086
1087 /* ========================================
1088 THINKING DOTS ANIMATION
1089 ======================================== */
1090 #chat-box .bot-message.temporary-message .thinking-dots-container {
1091 display: flex;
1092 justify-content: center;
1093 align-items: center;
1094 overflow: hidden;
1095 height: 20px;
1096 position: relative;
1097 z-index: 1;
1098 flex-shrink: 0;
1099 }
1100
1101 #chat-box .bot-message.temporary-message .thinking-dots {
1102 display: flex;
1103 justify-content: center;
1104 align-items: center;
1105 height: 90%;
1106 gap: 5px;
1107 flex-shrink: 0;
1108 }
1109
1110 #chat-box .bot-message.temporary-message .thinking-dots .dot {
1111 height: 6px;
1112 width: 6px;
1113 margin: 0 3px;
1114 background-color: #fff;
1115 border-radius: 50%;
1116 display: inline-block;
1117 animation: bounce 1.4s ease-in-out infinite both;
1118 vertical-align: middle;
1119 }
1120
1121 #chat-box .bot-message.temporary-message .thinking-dots .dot:first-child {
1122 animation-delay: -0.32s;
1123 }
1124
1125 #chat-box .bot-message.temporary-message .thinking-dots .dot:nth-child(2) {
1126 animation-delay: -0.16s;
1127 }
1128
1129 @keyframes bounce {
1130 0%, 100%, 80% {
1131 transform: scale(1);
1132 }
1133 40% {
1134 transform: scale(1.5);
1135 }
1136 }
1137
1138 /* ========================================
1139 PRE-CHAT MESSAGE
1140 ======================================== */
1141 #pre-chat-message {
1142 position: fixed;
1143 bottom: 85px;
1144 right: 30px;
1145 background-color: #fff;
1146 color: #212121;
1147 padding: 10px;
1148 box-shadow: 0px 0px 10px rgba(150, 150, 150, 0.3);
1149 border-radius: 5px;
1150 z-index: 1000;
1151 cursor: pointer;
1152 max-width: 325px;
1153 font-size: 14px;
1154 display: none;
1155 margin-bottom: 10px;
1156 }
1157
1158 #pre-chat-message .close-pre-chat-message {
1159 position: absolute;
1160 top: -6px;
1161 right: -6px;
1162 background-color: #ccc;
1163 border: none;
1164 color: #212121;
1165 font-size: 14px;
1166 cursor: pointer;
1167 border-radius: 50%;
1168 width: 20px;
1169 min-width: 20px;
1170 min-height: 20px;
1171 height: 20px;
1172 display: flex;
1173 align-items: center;
1174 justify-content: center;
1175 padding: 0;
1176 line-height: 1;
1177 }
1178
1179 /* ========================================
1180 MOBILE RESPONSIVE
1181 ======================================== */
1182 @media screen and (max-width: 782px) {
1183 .mxchat-search-results {
1184 gap: 15px !important;
1185 }
1186
1187 .mxchat-search-intro {
1188 font-size: 15px !important;
1189 }
1190
1191 .mxchat-search-title {
1192 font-size: 15px !important;
1193 }
1194
1195 .mxchat-search-description {
1196 font-size: 13px !important;
1197 }
1198 }
1199
1200 @media (max-width: 550px) {
1201 .questions-toggle-btn,
1202 .questions-collapse-btn {
1203 width: 28px;
1204 height: 28px;
1205 }
1206
1207 .questions-toggle-btn svg,
1208 .questions-collapse-btn svg {
1209 width: 22px;
1210 height: 22px;
1211 }
1212
1213 #pre-chat-message {
1214 bottom: 70px;
1215 right: 15px;
1216 }
1217
1218 #chat-input {
1219 width: calc(100% - 70px);
1220 }
1221
1222 .bot-message,
1223 .user-message {
1224 padding: 10px;
1225 max-width: 95%;
1226 }
1227
1228 #floating-chatbot-button {
1229 bottom: 15px;
1230 right: 10px;
1231 }
1232
1233 #floating-chatbot {
1234 width: 100vw;
1235 height: calc(var(--vh, 1vh) * 100);
1236 margin: 0;
1237 padding: 0;
1238 position: fixed;
1239 bottom: 0;
1240 top: 0;
1241 left: 0;
1242 right: 0;
1243 border-radius: 0;
1244 }
1245
1246 #mxchat-chatbot-wrapper .chatbot-top-bar {
1247 border-top-left-radius: 0;
1248 border-top-right-radius: 0;
1249 }
1250 }
1251
1252
1253
1254 pre {
1255 background-color: #000;
1256 border: 1px solid #ddd;
1257 border-radius: 20px;
1258 border-left: 3px solid #9e7aff;
1259 color: #fff;
1260 page-break-inside: avoid;
1261 font-family: monospace;
1262 font-size: 15px;
1263 line-height: 1.6;
1264 margin-bottom: 1.6em;
1265 max-width: 100%;
1266 overflow: auto;
1267 padding: 1em 1.5em;
1268 display: block;
1269 word-wrap: break-word;
1270 }
1271
1272 .copy-btn {
1273 padding: 10px 20px;
1274 border: none;
1275 border-radius: 4px;
1276 background-color: #9e7aff;
1277 transition: background-color 0.3s;
1278 color: #fff;
1279 font-size: 1rem;
1280 cursor: pointer;
1281 font-weight: 700;
1282 margin-bottom: 10px;
1283 }
1284
1285 .copy-btn:hover {
1286 opacity: 0.8;
1287 }
1288
1289 .mxchat-product-card {
1290 display: flex;
1291 flex-direction: column;
1292 align-items: center;
1293 margin: 10px 0;
1294 padding: 10px;
1295 border-radius: 5px;
1296 background-color: inherit;
1297 }
1298
1299 .mxchat-product-card img.mxchat-product-image {
1300 max-width: 100%;
1301 height: auto;
1302 margin-bottom: 5px;
1303 border-radius: 4px;
1304 }
1305
1306 .mxchat-product-card h3.mxchat-product-name {
1307 font-size: 16px;
1308 font-weight: bold;
1309 margin: 5px 0;
1310 text-align: center;
1311 color: inherit;
1312 }
1313
1314 .mxchat-product-card .mxchat-product-price {
1315 color: inherit;
1316 font-weight: bold;
1317 margin-bottom: 5px;
1318 }
1319
1320 .mxchat-product-card .mxchat-product-description {
1321 font-size: 14px;
1322 text-align: center;
1323 margin-bottom: 10px;
1324 color: inherit;
1325 }
1326
1327 .mxchat-product-card .mxchat-add-to-cart-button {
1328 background-color: #212121;
1329 color: #fff;
1330 padding: 8px 12px;
1331 border: none;
1332 cursor: pointer;
1333 border-radius: 12px;
1334 transition: background-color 0.3s ease;
1335 }
1336
1337 .mxchat-product-card .mxchat-add-to-cart-button:hover {
1338 background-color: #212121;
1339 }
1340
1341 .mxchat-image-gallery {
1342 display: flex;
1343 flex-wrap: wrap;
1344 gap: 10px;
1345 justify-content: center;
1346 }
1347
1348 .mxchat-image-item {
1349 text-align: center;
1350 overflow: hidden;
1351 word-wrap: break-word;
1352 }
1353
1354 .mxchat-image-title {
1355 display: block;
1356 font-size: 14px;
1357 color: inherit;
1358 white-space: nowrap;
1359 overflow: hidden;
1360 text-overflow: ellipsis;
1361 max-width: 100%;
1362 }
1363
1364 .mxchat-image-link {
1365 text-decoration: none;
1366 }
1367
1368 .mxchat-image-thumbnail {
1369 max-width: 100%;
1370 height: auto;
1371 border-radius: 5px;
1372 transition: transform 0.3s;
1373 }
1374
1375 .mxchat-image-thumbnail:hover {
1376 transform: scale(1.05);
1377 }
1378
1379 .mxchat-generated-image {
1380 max-width: 100%;
1381 height: auto;
1382 border-radius: 0 0 8px 8px;
1383 }
1384
1385 #widget_icon, #widget_icon_2, #widget_icon_3, #widget_icon_5, #widget_icon_4, #widget_icon_6, #widget_icon_7 {
1386 padding: 10px;
1387 }
1388
1389 #widget_icon_10 {
1390 fill: #fff;
1391 }
1392
1393
1394 /* This selector with more context - showing the collapse button in certain states */
1395 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn {
1396 background: none;
1397 border: none;
1398 padding: 0;
1399 margin: 0px;
1400 cursor: pointer;
1401 transition: all 0.2s ease;
1402 color: #212121;
1403 display: none; /* Hidden by default */
1404 align-items: center;
1405 justify-content: center;
1406 width: 32px;
1407 height: 32px;
1408 box-shadow: none;
1409 outline: none;
1410 align-self: center; /* THIS IS MISSING */
1411 order: -1; /* THIS IS MISSING */
1412 }
1413
1414 /* ALL hover states - these are MISSING from your new CSS */
1415 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover {
1416 background: none;
1417 border: none;
1418 box-shadow: none;
1419 }
1420
1421 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:focus {
1422 outline: none;
1423 background: none;
1424 border: none;
1425 box-shadow: none;
1426 }
1427
1428 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:active {
1429 background: none;
1430 border: none;
1431 box-shadow: none;
1432 }
1433
1434 /* SVG styles - these are MISSING */
1435 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn svg {
1436 fill: none;
1437 transition: transform 0.2s ease;
1438 width: 25px;
1439 height: 25px;
1440 }
1441
1442 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover svg {
1443 opacity: 0.7;
1444 }
1445
1446 /* THE CRITICAL DISPLAY RULE - this shows when it's been collapsed before */
1447 #mxchat-popular-questions.has-been-collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1448 display: flex;
1449 }
1450
1451 /* Hide when actually collapsed */
1452 #mxchat-popular-questions.collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1453 display: none;
1454 }