PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 2.4.5
MxChat – AI Chatbot & Content Generation for WordPress v2.4.5
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.4.5, at css/chat-style.css

1,451 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 .visible {
974 display: flex;
975 }
976
977 #floating-chatbot-button {
978 transition: opacity 1s ease-in-out;
979 font-size: 1.25rem;
980 position: fixed;
981 bottom: 30px;
982 right: 25px;
983 background-color: #212121;
984 color: #fff;
985 width: 60px;
986 height: 60px;
987 border-radius: 50%;
988 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2) !important;
989 justify-content: center;
990 align-items: center;
991 cursor: pointer;
992 transition: 0.3s;
993 z-index: 100000;
994 display: flex;
995 }
996
997 #floating-chatbot-button img {
998 max-width: 100%;
999 max-height: 100%;
1000 width: auto;
1001 height: auto;
1002 }
1003
1004 .chatbot-top-bar {
1005 background: #212121;
1006 }
1007
1008 #mxchat-chatbot-wrapper .chatbot-top-bar button.exit-chat {
1009 background: transparent;
1010 border: none;
1011 opacity: 0.8;
1012 padding: 0;
1013 min-width: 20px;
1014 }
1015
1016 #mxchat-chatbot-wrapper .chatbot-top-bar {
1017 cursor: pointer;
1018 color: #fff;
1019 padding: 10px;
1020 border-top-left-radius: 10px;
1021 border-top-right-radius: 10px;
1022 display: flex;
1023 justify-content: space-between;
1024 align-items: start;
1025 }
1026
1027 #mxchat-chatbot-wrapper .chatbot-top-bar .chatbot-title {
1028 font-size: 16px;
1029 line-height: 25px;
1030 padding: 10px;
1031 margin: 0;
1032 font-family: 'Plus Jakarta Sans', sans-serif;
1033 font-weight: bold;
1034 }
1035
1036 .exit-chat {
1037 border: none;
1038 background: transparent;
1039 cursor: pointer;
1040 display: flex;
1041 align-items: center;
1042 justify-content: center;
1043 padding: 5px;
1044 margin-left: auto;
1045 opacity: 0.8;
1046 min-width: 20px;
1047 }
1048
1049 .exit-chat svg {
1050 fill: white;
1051 width: 24px;
1052 height: 24px;
1053 transform: rotate(270deg);
1054 }
1055
1056 #mxchat-chatbot-wrapper .chatbot-footer {
1057 text-align: center;
1058 padding-bottom: 10px;
1059 font-size: 0.85em;
1060 }
1061
1062 #mxchat-chatbot-wrapper .chatbot-footer .privacy-notice {
1063 font-size: 12px;
1064 margin: 0;
1065 color: #71717a;
1066 }
1067
1068 #mxchat-chatbot-wrapper .chatbot-footer .privacy-notice a {
1069 color: #0073aa;
1070 text-decoration: underline;
1071 font-size: 12px;
1072 }
1073
1074 #mxchat-chatbot-wrapper .chatbot-footer .powered-by {
1075 text-decoration: none;
1076 color: inherit;
1077 font-weight: 700;
1078 }
1079
1080 #mxchat-chatbot-wrapper .chatbot-footer .powered-by span {
1081 text-decoration: underline;
1082 }
1083
1084 /* ========================================
1085 THINKING DOTS ANIMATION
1086 ======================================== */
1087 #chat-box .bot-message.temporary-message .thinking-dots-container {
1088 display: flex;
1089 justify-content: center;
1090 align-items: center;
1091 overflow: hidden;
1092 height: 20px;
1093 position: relative;
1094 z-index: 1;
1095 flex-shrink: 0;
1096 }
1097
1098 #chat-box .bot-message.temporary-message .thinking-dots {
1099 display: flex;
1100 justify-content: center;
1101 align-items: center;
1102 height: 90%;
1103 gap: 5px;
1104 flex-shrink: 0;
1105 }
1106
1107 #chat-box .bot-message.temporary-message .thinking-dots .dot {
1108 height: 6px;
1109 width: 6px;
1110 margin: 0 3px;
1111 background-color: #fff;
1112 border-radius: 50%;
1113 display: inline-block;
1114 animation: bounce 1.4s ease-in-out infinite both;
1115 vertical-align: middle;
1116 }
1117
1118 #chat-box .bot-message.temporary-message .thinking-dots .dot:first-child {
1119 animation-delay: -0.32s;
1120 }
1121
1122 #chat-box .bot-message.temporary-message .thinking-dots .dot:nth-child(2) {
1123 animation-delay: -0.16s;
1124 }
1125
1126 @keyframes bounce {
1127 0%, 100%, 80% {
1128 transform: scale(1);
1129 }
1130 40% {
1131 transform: scale(1.5);
1132 }
1133 }
1134
1135 /* ========================================
1136 PRE-CHAT MESSAGE
1137 ======================================== */
1138 #pre-chat-message {
1139 position: fixed;
1140 bottom: 85px;
1141 right: 30px;
1142 background-color: #fff;
1143 color: #212121;
1144 padding: 10px;
1145 box-shadow: 0px 0px 10px rgba(150, 150, 150, 0.3);
1146 border-radius: 5px;
1147 z-index: 1000;
1148 cursor: pointer;
1149 max-width: 325px;
1150 font-size: 14px;
1151 display: none;
1152 margin-bottom: 10px;
1153 }
1154
1155 #pre-chat-message .close-pre-chat-message {
1156 position: absolute;
1157 top: -6px;
1158 right: -6px;
1159 background-color: #ccc;
1160 border: none;
1161 color: #212121;
1162 font-size: 14px;
1163 cursor: pointer;
1164 border-radius: 50%;
1165 width: 20px;
1166 min-width: 20px;
1167 min-height: 20px;
1168 height: 20px;
1169 display: flex;
1170 align-items: center;
1171 justify-content: center;
1172 padding: 0;
1173 line-height: 1;
1174 }
1175
1176 /* ========================================
1177 MOBILE RESPONSIVE
1178 ======================================== */
1179 @media screen and (max-width: 782px) {
1180 .mxchat-search-results {
1181 gap: 15px !important;
1182 }
1183
1184 .mxchat-search-intro {
1185 font-size: 15px !important;
1186 }
1187
1188 .mxchat-search-title {
1189 font-size: 15px !important;
1190 }
1191
1192 .mxchat-search-description {
1193 font-size: 13px !important;
1194 }
1195 }
1196
1197 @media (max-width: 550px) {
1198 .questions-toggle-btn,
1199 .questions-collapse-btn {
1200 width: 28px;
1201 height: 28px;
1202 }
1203
1204 .questions-toggle-btn svg,
1205 .questions-collapse-btn svg {
1206 width: 22px;
1207 height: 22px;
1208 }
1209
1210 #pre-chat-message {
1211 bottom: 70px;
1212 right: 15px;
1213 }
1214
1215 #chat-input {
1216 width: calc(100% - 70px);
1217 }
1218
1219 .bot-message,
1220 .user-message {
1221 padding: 10px;
1222 max-width: 95%;
1223 }
1224
1225 #floating-chatbot-button {
1226 bottom: 15px;
1227 right: 10px;
1228 }
1229
1230 #floating-chatbot {
1231 width: 100vw;
1232 height: calc(var(--vh, 1vh) * 100);
1233 margin: 0;
1234 padding: 0;
1235 position: fixed;
1236 bottom: 0;
1237 top: 0;
1238 left: 0;
1239 right: 0;
1240 border-radius: 0;
1241 }
1242
1243 #mxchat-chatbot-wrapper .chatbot-top-bar {
1244 border-top-left-radius: 0;
1245 border-top-right-radius: 0;
1246 }
1247 }
1248
1249
1250
1251 pre {
1252 background-color: #000;
1253 border: 1px solid #ddd;
1254 border-radius: 20px;
1255 border-left: 3px solid #9e7aff;
1256 color: #fff;
1257 page-break-inside: avoid;
1258 font-family: monospace;
1259 font-size: 15px;
1260 line-height: 1.6;
1261 margin-bottom: 1.6em;
1262 max-width: 100%;
1263 overflow: auto;
1264 padding: 1em 1.5em;
1265 display: block;
1266 word-wrap: break-word;
1267 }
1268
1269 .copy-btn {
1270 padding: 10px 20px;
1271 border: none;
1272 border-radius: 4px;
1273 background-color: #9e7aff;
1274 transition: background-color 0.3s;
1275 color: #fff;
1276 font-size: 1rem;
1277 cursor: pointer;
1278 font-weight: 700;
1279 margin-bottom: 10px;
1280 }
1281
1282 .copy-btn:hover {
1283 opacity: 0.8;
1284 }
1285
1286 .mxchat-product-card {
1287 display: flex;
1288 flex-direction: column;
1289 align-items: center;
1290 margin: 10px 0;
1291 padding: 10px;
1292 border-radius: 5px;
1293 background-color: inherit;
1294 }
1295
1296 .mxchat-product-card img.mxchat-product-image {
1297 max-width: 100%;
1298 height: auto;
1299 margin-bottom: 5px;
1300 border-radius: 4px;
1301 }
1302
1303 .mxchat-product-card h3.mxchat-product-name {
1304 font-size: 16px;
1305 font-weight: bold;
1306 margin: 5px 0;
1307 text-align: center;
1308 color: inherit;
1309 }
1310
1311 .mxchat-product-card .mxchat-product-price {
1312 color: inherit;
1313 font-weight: bold;
1314 margin-bottom: 5px;
1315 }
1316
1317 .mxchat-product-card .mxchat-product-description {
1318 font-size: 14px;
1319 text-align: center;
1320 margin-bottom: 10px;
1321 color: inherit;
1322 }
1323
1324 .mxchat-product-card .mxchat-add-to-cart-button {
1325 background-color: #212121;
1326 color: #fff;
1327 padding: 8px 12px;
1328 border: none;
1329 cursor: pointer;
1330 border-radius: 12px;
1331 transition: background-color 0.3s ease;
1332 }
1333
1334 .mxchat-product-card .mxchat-add-to-cart-button:hover {
1335 background-color: #212121;
1336 }
1337
1338 .mxchat-image-gallery {
1339 display: flex;
1340 flex-wrap: wrap;
1341 gap: 10px;
1342 justify-content: center;
1343 }
1344
1345 .mxchat-image-item {
1346 text-align: center;
1347 overflow: hidden;
1348 word-wrap: break-word;
1349 }
1350
1351 .mxchat-image-title {
1352 display: block;
1353 font-size: 14px;
1354 color: inherit;
1355 white-space: nowrap;
1356 overflow: hidden;
1357 text-overflow: ellipsis;
1358 max-width: 100%;
1359 }
1360
1361 .mxchat-image-link {
1362 text-decoration: none;
1363 }
1364
1365 .mxchat-image-thumbnail {
1366 max-width: 100%;
1367 height: auto;
1368 border-radius: 5px;
1369 transition: transform 0.3s;
1370 }
1371
1372 .mxchat-image-thumbnail:hover {
1373 transform: scale(1.05);
1374 }
1375
1376 .mxchat-generated-image {
1377 max-width: 100%;
1378 height: auto;
1379 border-radius: 0 0 8px 8px;
1380 }
1381
1382 #widget_icon, #widget_icon_2, #widget_icon_3, #widget_icon_5, #widget_icon_4, #widget_icon_6, #widget_icon_7 {
1383 padding: 10px;
1384 }
1385
1386 #widget_icon_10 {
1387 fill: #fff;
1388 }
1389
1390
1391 /* This selector with more context - showing the collapse button in certain states */
1392 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn {
1393 background: none;
1394 border: none;
1395 padding: 0;
1396 margin: 0px;
1397 cursor: pointer;
1398 transition: all 0.2s ease;
1399 color: #212121;
1400 display: none; /* Hidden by default */
1401 align-items: center;
1402 justify-content: center;
1403 width: 32px;
1404 height: 32px;
1405 box-shadow: none;
1406 outline: none;
1407 align-self: center; /* THIS IS MISSING */
1408 order: -1; /* THIS IS MISSING */
1409 }
1410
1411 /* ALL hover states - these are MISSING from your new CSS */
1412 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover {
1413 background: none;
1414 border: none;
1415 box-shadow: none;
1416 }
1417
1418 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:focus {
1419 outline: none;
1420 background: none;
1421 border: none;
1422 box-shadow: none;
1423 }
1424
1425 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:active {
1426 background: none;
1427 border: none;
1428 box-shadow: none;
1429 }
1430
1431 /* SVG styles - these are MISSING */
1432 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn svg {
1433 fill: none;
1434 transition: transform 0.2s ease;
1435 width: 25px;
1436 height: 25px;
1437 }
1438
1439 #mxchat-popular-questions .mxchat-popular-questions-container .questions-collapse-btn:hover svg {
1440 opacity: 0.7;
1441 }
1442
1443 /* THE CRITICAL DISPLAY RULE - this shows when it's been collapsed before */
1444 #mxchat-popular-questions.has-been-collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1445 display: flex;
1446 }
1447
1448 /* Hide when actually collapsed */
1449 #mxchat-popular-questions.collapsed .mxchat-popular-questions-container .questions-collapse-btn {
1450 display: none;
1451 }