PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 1.6.3
MxChat – AI Chatbot & Content Generation for WordPress v1.6.3
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 / admin-style.css

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

2,257 lines 41.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 .mxchat-sync-settings {
2 background: #fff;
3 border-radius: 5px;
4 }
5
6 .mxchat-toggle-container {
7 margin-bottom: 15px;
8 }
9
10 .mxchat-toggle-switch {
11 position: relative;
12 display: inline-block;
13 width: 60px;
14 height: 34px;
15 }
16
17 .mxchat-toggle-switch input {
18 opacity: 0;
19 width: 0;
20 height: 0;
21 }
22
23 .mxchat-toggle-slider {
24 position: absolute;
25 cursor: pointer;
26 top: 0;
27 left: 0;
28 right: 0;
29 bottom: 0;
30 background-color: #ccc;
31 transition: .4s;
32 border-radius: 34px;
33 }
34
35 .mxchat-toggle-slider:before {
36 position: absolute;
37 content: "";
38 height: 26px;
39 width: 26px;
40 left: 4px;
41 bottom: 4px;
42 background-color: white;
43 transition: .4s;
44 border-radius: 50%;
45 }
46
47 input:checked + .mxchat-toggle-slider {
48 background-color: #2196F3;
49 }
50
51 input:checked + .mxchat-toggle-slider:before {
52 transform: translateX(26px);
53 }
54
55 .mxchat-toggle-label {
56 vertical-align: super;
57 font-weight: 500;
58 }
59 .mxchat-knowledge-container {
60 display: flex;
61 flex-direction: column-reverse;
62 gap: 2rem;
63 margin: 1.5rem 0;
64 padding: 1rem;
65 background: #fff;
66 border-radius: 8px;
67 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
68 }
69
70 /* Left Column */
71 .mxchat-knowledge-controls {
72 flex: 1;
73 display: flex;
74 gap: 1rem;
75 justify-content: space-between;
76 align-items: center;
77 }
78
79 .mxchat-controls-header {
80 display: flex;
81 justify-content: space-between;
82 align-items: center;
83 }
84
85 .displaying-num {
86 color: #666;
87 font-size: 0.9rem;
88 }
89
90 .mxchat-delete-all {
91 color: #dc3545;
92 border-color: #dc3545;
93 }
94
95 .mxchat-delete-all:hover {
96 background: #dc3545;
97 color: #fff;
98 }
99
100 .mxchat-pagination .page-numbers {
101 padding: 0.25rem 0.5rem;
102 margin: 0 0.25rem;
103 border: 1px solid #ddd;
104 border-radius: 4px;
105 text-decoration: none;
106 }
107
108 .mxchat-pagination .current {
109 background: #2271b1;
110 color: #fff;
111 border-color: #2271b1;
112 }
113
114 /* Right Column */
115 .mxchat-knowledge-search {
116 flex: 1;
117 }
118
119 .mxchat-search-group {
120 display: flex;
121 gap: 0.5rem;
122 }
123
124 .search-input {
125 flex: 1;
126 padding: 0.5rem;
127 border: 1px solid #ddd;
128 border-radius: 4px;
129 }
130
131 .search-button {
132 display: flex;
133 align-items: center;
134 gap: 0.5rem;
135 padding: 0.5rem 1rem;
136 }
137
138 .search-button .dashicons {
139 font-size: 1.2rem;
140 }
141
142 /* Mobile Responsiveness */
143 @media screen and (max-width: 782px) {
144 .mxchat-knowledge-container {
145 flex-direction: column;
146 }
147
148 .mxchat-knowledge-search {
149 order: -1; /* Moves search to top on mobile */
150 }
151
152 .mxchat-controls-header {
153 flex-direction: column;
154 gap: 1rem;
155 align-items: flex-start;
156 }
157
158 .mxchat-search-group {
159 flex-direction: column;
160 }
161
162 .search-input {
163 width: 100%;
164 }
165
166 .search-button {
167 width: 100%;
168 justify-content: center;
169 }
170 }
171
172
173
174
175
176
177
178
179
180
181 .mxchat-modal {
182 display: none;
183 position: fixed;
184 z-index: 1000;
185 left: 0;
186 top: 0;
187 width: 100%;
188 height: 100%;
189 background-color: rgba(0,0,0,0.4);
190 }
191
192 .mxchat-modal-content {
193 background-color: #fefefe;
194 margin: 15% auto;
195 padding: 20px;
196 border: 1px solid #ddd;
197 width: 70%;
198 max-width: 600px;
199 border-radius: 4px;
200 }
201
202 .mxchat-modal-close {
203 color: #aaa;
204 float: right;
205 font-size: 28px;
206 font-weight: bold;
207 cursor: pointer;
208 }
209
210 .mxchat-modal-close:hover {
211 color: black;
212 }
213
214
215
216
217 .mxchat-admin .button.button-secondary.mxchat-edit-button {
218 background: #3498db;
219 color: #fff;
220 border-radius: 20px;
221 padding: 0px 20px !important;
222 font-size: 1rem;
223 font-weight: 700;
224 text-decoration: none;
225 transition: all .2s;
226 justify-content: center;
227 align-items: center;
228 box-shadow: 4px 4px #2980b9;
229 cursor: pointer;
230 margin-top: 10px;
231 border: none;
232 width: 100%;
233 }
234
235
236 .mxchat-admin .mxchat-intents-table .mxchat-delete-all {
237 width: 100%;
238 }
239
240 .mxchat-admin .mxchat-intents-table .mxchat-save-button {
241 max-width: 100% !important;
242 width: 100% !important;
243 }
244
245 .mxchat-agents-banner {
246 background-color: #fff;
247 margin-bottom: 20px;
248 border-radius: 4px;
249 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
250 position: relative;
251 margin-left: auto;
252 margin-right: auto;
253 padding: 0px 15px;
254 }
255
256 .mxchat-agents-banner::before {
257 content: '';
258 position: absolute;
259 top: 0;
260 left: 0px;
261 width: 10px; /* Matches border-left width */
262 height: 100%;
263 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1); /* Gradient */
264 border-radius: 4px 0 0 4px; /* Match overall border radius */
265 }
266
267 .mxchat-agents-banner p {
268 font-size: 14px;
269 line-height: 1.6;
270 color: #444; /* Dark gray text */
271 margin: 0;
272 padding: 15px 10px;
273 }
274
275 .mxchat-agents-banner a {
276 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1); /* Gradient text */
277 -webkit-background-clip: text;
278 -webkit-text-fill-color: transparent; /* Makes gradient visible */
279 font-weight: bold;
280 text-decoration: none;
281 transition: opacity 0.2s ease;
282 }
283
284 .mxchat-agents-banner a:hover {
285 opacity: 0.8; /* Subtle fade on hover */
286 text-decoration: underline; /* Underline for accessibility */
287 }
288
289
290
291 .mxchat-timestamp {
292 font-size: 10px;
293 color: #8c8f94;
294 margin-top: 2px;
295 padding: 0 8px;
296 }
297
298 .mxchat-messages::-webkit-scrollbar {
299 width: 6px;
300 }
301
302 .mxchat-messages::-webkit-scrollbar-track {
303 background: #f1f1f1;
304 }
305
306 .mxchat-messages::-webkit-scrollbar-thumb {
307 background: #888;
308 border-radius: 3px;
309 }
310
311
312
313
314
315
316
317
318
319 .mxchat-process-status {
320 margin-top: 20px;
321 padding: 15px;
322 background: #fff;
323 border: 1px solid #ddd;
324 border-radius: 4px;
325 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
326 }
327
328 .mxchat-process-status h3 {
329 margin: 0 0 15px 0;
330 color: #23282d;
331 font-size: 14px;
332 font-weight: 600;
333 }
334
335 .mxchat-process-status p {
336 margin: 8px 0;
337 color: #555;
338 font-size: 13px;
339 }
340
341 .mxchat-process-status .status-complete {
342 color: #46b450;
343 font-weight: 500;
344 }
345
346 .mxchat-process-status.complete {
347 border-color: #46b450;
348 }
349
350
351
352
353
354 /* Toggle Switch Styles */
355 .mxchat-switch {
356 position: relative;
357 display: inline-block;
358 width: 60px;
359 height: 34px;
360 margin-right: 10px;
361 }
362
363 .mxchat-switch input {
364 opacity: 0;
365 width: 0;
366 height: 0;
367 }
368
369 .mxchat-slider {
370 position: absolute;
371 cursor: pointer;
372 top: 0;
373 left: 0;
374 right: 0;
375 bottom: 0;
376 background-color: #ccc;
377 transition: .4s;
378 border-radius: 34px;
379 }
380
381 .mxchat-slider:before {
382 position: absolute;
383 content: "";
384 height: 26px;
385 width: 26px;
386 left: 4px;
387 bottom: 4px;
388 background-color: white;
389 transition: .4s;
390 border-radius: 50%;
391 }
392
393 input:checked + .mxchat-slider {
394 background-color: #2196F3;
395 }
396
397 input:disabled + .mxchat-slider {
398 opacity: 0.5;
399 cursor: not-allowed;
400 }
401
402 input:checked + .mxchat-slider:before {
403 transform: translateX(26px);
404 }
405
406 .mxchat-status-label {
407 display: inline-block;
408 vertical-align: middle;
409 margin-left: 10px;
410 }
411
412 .status-text {
413 font-weight: 500;
414 }
415
416
417
418
419 .mxchat-question-row {
420 margin-bottom: 10px;
421 }
422
423 .mxchat-similarity-threshold .mxchat-slider-container {
424 display: flex;
425 align-items: center;
426 gap: 15px;
427 margin-top: 10px;
428 }
429
430 .mxchat-similarity-threshold input[type="range"] {
431 flex: 1;
432 margin: 0;
433 }
434
435 .mxchat-similarity-threshold .button-primary {
436 white-space: nowrap;
437 }
438
439 .mxchat-similarity-threshold label {
440 font-weight: bold;
441 display: block;
442 margin-bottom: 5px;
443 }
444
445 .mxchat-similarity-threshold {
446 max-width: 600px;
447 }
448
449 #threshold_value_display {
450 font-weight: normal;
451 margin-left: 10px;
452 color: #0073aa;
453 }
454
455 .mxchat-form-group {
456 margin-bottom: 20px;
457 }
458
459 .mxchat-form-group input[type="range"] {
460 width: 100%;
461 margin-top: 10px;
462 }
463
464 .mxchat-form-group label {
465 font-weight: bold;
466 display: block;
467 margin-bottom: 5px;
468 }
469
470 .mxchat-form-group .description {
471 font-size: 0.9em;
472 color: #666;
473 }
474
475 #threshold_value_display {
476 font-weight: normal;
477 margin-left: 10px;
478 color: #0073aa;
479 }
480
481
482
483
484 .mxchat-product-image, .mxchat-generated-image, .mxchat-image-thumbnail {
485 max-width: 100%;
486 }
487 .description {
488 margin-top: -10px;
489 }
490 .mxchat-search-group {
491 margin-top: 20px;
492 }
493
494 .tablenav .tablenav-pages {
495 display: flex;
496 align-items: center;
497 margin-left: 20px;
498 gap: 5px;
499 }
500
501 /* General Styles */
502 .mxchat-admin body, .mxchat-admin html {
503 font-family: Arial, sans-serif;
504 background-color: #fff;
505 color: #212121;
506 margin: 0;
507 padding: 0;
508 }
509
510 /* Main Wrapper */
511 .mxchat-admin .wrap {
512 max-width: 1200px;
513 margin: 0 auto;
514 padding: 20px;
515 background: #f9f9f9;
516 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
517 }
518
519 /* Header */
520 .mxchat-admin .wrap h2 {
521 border-bottom: 2px solid #ddd;
522 padding-bottom: 10px;
523 margin-bottom: 20px;
524 color: #212121;
525 }
526
527 .wrap.mxchat-admin .admin-title {
528 text-shadow: 0 2px 0 #c6c6c6;
529 font-weight: bold;
530 letter-spacing: 5px;
531 color: #212121;
532 font-size: 2.5rem;
533 }
534
535 .mxchat-admin .admin-emphasis {
536 color: white;
537 text-shadow: 2px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 0 0 #000, 4px 0 0 #000, 0 0px 0 #000, 0 0px 0 #000;
538 font-weight: bold;
539 letter-spacing: 5px;
540 font-size: 2.5rem;
541 }
542 /* Grid Layout */
543 .mxchat-admin .mxchat-grid-container {
544 display: grid;
545 grid-template-columns: repeat(2, 1fr);
546 grid-gap: 20px;
547 }
548
549 .mxchat-admin .mxchat-grid-item {
550 background: #fff;
551 border: 1px solid #ddd;
552 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
553 padding: 20px;
554 }
555
556 /* Full Width for Submit Content */
557 .mxchat-admin .mxchat-grid-item.full-width {
558 grid-column: span 2;
559 }
560
561 /* Form Styles */
562 .mxchat-admin .mxchat-form-group {
563 display: flex;
564 flex-direction: column;
565 margin-bottom: 20px;
566 }
567
568 .mxchat-admin .mxchat-form-group label {
569 margin-bottom: 10px;
570 font-weight: bold;
571 color: #212121;
572 }
573
574 .mxchat-admin .mxchat-form-group input[type="url"],
575 .mxchat-admin .mxchat-form-group input[type="text"],
576 .mxchat-admin .mxchat-form-group textarea {
577 padding: 10px;
578 border: 1px solid #ddd;
579 border-radius: 4px;
580 font-size: 1rem;
581 width: 100%;
582 box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
583 }
584
585 /* Larger Textarea for Content Submission */
586 .mxchat-admin .mxchat-form-group textarea {
587 min-height: 200px;
588 }
589
590 /* Button Styles */
591 .mxchat-admin .button.button-primary {
592 color: #fff;
593 background: #212121;
594 border-radius: 20px;
595 padding: 0px 30px;
596 font-size: 1rem;
597 font-weight: 700;
598 text-decoration: none;
599 transition: all .2s;
600 display: inline-flex;
601 justify-content: center;
602 align-items: center;
603 max-width: 200px;
604 width: auto;
605 box-shadow: 4px 4px #14141499;
606 border: none;
607 cursor: pointer;
608 }
609
610 .mxchat-admin .button.button-primary:hover,
611 .mxchat-admin .button.button-primary:active {
612 background: #444;
613 }
614
615 .submit-content-button {
616 margin-top: 10px !important;
617 }
618
619 /* Search and Sitemap Group */
620 .mxchat-admin .mxchat-search-group {
621 display: flex;
622 align-items: center;
623 gap: 10px;
624 }
625
626 .mxchat-admin .mxchat-search-group input[type="text"],
627 .mxchat-admin .mxchat-search-group input[type="url"] {
628 flex-grow: 1;
629 }
630
631 .mxchat-admin .mxchat-search-group input[type="submit"] {
632 background: #212121;
633 color: #fff;
634 border-radius: 20px;
635 padding: 0px 30px;
636 font-size: 1rem;
637 font-weight: 700;
638 box-shadow: 4px 4px #14141499;
639 border: none;
640 transition: background-color .2s;
641 cursor: pointer;
642 }
643
644 .mxchat-admin .mxchat-search-group input[type="submit"]:hover {
645 background-color: #444;
646 }
647
648 .mxchat-admin .mxchat-delete-all {
649 background: #e74c3c;
650 color: #fff;
651 border-radius: 20px;
652 padding: 0px 15px !important;
653 font-size: 1rem;
654 font-weight: 700;
655 text-decoration: none;
656 transition: all .2s;
657 justify-content: center;
658 align-items: center;
659 box-shadow: 4px 4px #c0392b;
660 cursor: pointer;
661 margin-bottom: 10px;
662 border: none;
663 }
664
665 .mxchat-admin .mxchat-delete-all:hover {
666 color: #fff;
667 background-color: #c0392b;
668 box-shadow: 4px 4px #a93226
669 }
670
671 .mxchat-admin .mxchat-intents-table .mxchat-delete-all {
672 background: #e74c3c;
673 color: #fff;
674 border-radius: 20px;
675 padding: 0px 20px !important;
676 font-size: 1rem;
677 font-weight: 700;
678 text-decoration: none;
679 transition: all .2s;
680 justify-content: center;
681 align-items: center;
682 box-shadow: 4px 4px #c0392b;
683 cursor: pointer;
684 margin-top: 10px;
685 border: none;
686 }
687
688 .mxchat-admin .mxchat-intents-table .mxchat-delete-all:hover {
689 color: #fff;
690 background-color: #c0392b;
691 box-shadow: 4px 4px #a93226;
692 }
693
694
695
696 /* Table Styles */
697 .mxchat-admin .wp-list-table {
698 width: 100%;
699 margin-top: 20px;
700 border-collapse: collapse;
701 background: #fff;
702 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
703 }
704
705 .mxchat-admin .wp-list-table th,
706 .mxchat-admin .wp-list-table td {
707 padding: 15px;
708 border-bottom: 1px solid #ddd;
709 text-align: left;
710 }
711
712 .mxchat-admin .wp-list-table th {
713 background: #f0f2f5;
714 color: #212121;
715 }
716
717 .mxchat-admin .wp-list-table tr:nth-child(even) {
718 background: #f9f9f9;
719 }
720
721 .mxchat-admin .mxchat-pro-banner {
722 background-color: #fff;
723 padding: 0px 15px;
724 margin-bottom: 20px;
725 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
726 position: relative; /* Required for the ::before pseudo-element */
727 }
728
729 .mxchat-admin .mxchat-pro-banner::before {
730 content: '';
731 position: absolute;
732 top: 0;
733 left: 0px;
734 width: 10px; /* Matches the border-left width in your original CSS */
735 height: 100%;
736 background-color: #212121; /* Dark bar color */
737 border-radius: 4px 0 0 4px; /* Rounded corners on the left */
738 }
739
740
741 .mxchat-admin .mxchat-pro-banner p {
742 margin: 0;
743 font-size: 16px;
744 color: #212121;
745 padding: 15px 10px;
746 }
747
748 .mxchat-admin .mxchat-pro-banner a {
749 color: #212121;
750 text-decoration: none;
751 font-weight: bold;
752 }
753
754 .mxchat-admin .mxchat-pro-banner a:hover {
755 text-decoration: underline;
756 }
757
758 /* Toggle Switch Styles */
759 .mxchat-admin .toggle-switch {
760 position: relative;
761 display: inline-block;
762 width: 60px;
763 height: 34px;
764 }
765
766 .mxchat-admin .toggle-switch input {
767 opacity: 0;
768 width: 0;
769 height: 0;
770 }
771
772 .mxchat-admin .slider {
773 position: absolute;
774 cursor: pointer;
775 top: 0;
776 left: 0;
777 right: 0;
778 bottom: 0;
779 background-color: #ccc;
780 transition: .4s;
781 border-radius: 34px;
782 }
783
784 .mxchat-admin .slider:before {
785 position: absolute;
786 content: "";
787 height: 26px;
788 width: 26px;
789 left: 4px;
790 bottom: 4px;
791 background-color: white;
792 transition: .4s;
793 border-radius: 50%;
794 }
795
796 .mxchat-admin input:checked + .slider {
797 background-color: #212121;
798 }
799
800 .mxchat-admin input:checked + .slider:before {
801 transform: translateX(26px);
802 }
803
804 /* Toggle Switch Label */
805 .mxchat-admin .toggle-switch-label {
806 display: flex;
807 align-items: center;
808 font-weight: 600;
809 color: #212121;
810 margin-bottom: 20px;
811 }
812
813 .mxchat-loading-text {
814 display: none;
815 margin-top: 10px;
816 color: #333;
817 }
818
819 .mxchat-spinner {
820 border: 8px solid #f3f3f3;
821 border-top: 8px solid #333;
822 border-radius: 50%;
823 width: 30px;
824 height: 30px;
825 animation: mxchat-spin 1s linear infinite;
826 display: flex;
827 justify-content: center;
828 align-items: center;
829 }
830
831 #mxchat-content-loading-text {
832 display: none;
833 margin-top: 10px;
834 color: #333;
835 }
836
837 .mxchat-content-spinner {
838 border: 8px solid #f3f3f3;
839 border-top: 8px solid #333;
840 border-radius: 50%;
841 width: 30px;
842 height: 30px;
843 animation: mxchat-spin 1s linear infinite;
844 display: flex;
845 justify-content: center;
846 align-items: center;
847 }
848
849 #mxchat-intent-loading {
850 border: 8px solid #f3f3f3;
851 border-top: 8px solid #333;
852 border-radius: 50%;
853 width: 30px;
854 height: 30px;
855 animation: mxchat-spin 1s linear infinite;
856 display: inline-block; /* Display as inline for better alignment */
857 margin-left: 10px;
858 vertical-align: middle;
859 }
860
861 #mxchat-intent-loading-text {
862 display: none;
863 margin-top: 10px;
864 color: #333;
865 }
866
867 #mxchat-activation-spinner {
868 border: 4px solid #f3f3f3;
869 border-top: 4px solid #007cba; /* Match the WordPress primary button color */
870 border-radius: 50%;
871 width: 20px;
872 height: 20px;
873 animation: mxchat-spin 1s linear infinite;
874 display: inline-block;
875 vertical-align: middle;
876 margin-left: 10px;
877 }
878
879 @keyframes mxchat-spin {
880 0% { transform: rotate(0deg); }
881 100% { transform: rotate(360deg); }
882 }
883
884
885
886 .pro-feature-wrapper.active select,
887 .pro-feature-wrapper.active textarea {
888 opacity: 1; /* Fully opaque when active */
889 }
890
891 .pro-feature-wrapper.inactive select,
892 .pro-feature-wrapper.inactive textarea {
893 opacity: 0.5; /* Grayed out when inactive */
894 }
895
896 .pro-feature-overlay {
897 position: absolute;
898 top: 0;
899 left: 0;
900 width: 100%;
901 height: 100%;
902 display: flex;
903 justify-content: center;
904 align-items: center;
905 pointer-events: none;
906 }
907
908 .pro-feature-overlay img {
909 max-width: 100px;
910 pointer-events: auto; /* Allow clicking the image */
911 }
912
913 .pro-feature-wrapper a {
914 text-decoration: none;
915 position: absolute;
916 top: 0;
917 left: 0;
918 width: 100%;
919 height: 100%;
920 z-index: 10; /* Ensure the link is above everything else */
921 }
922
923
924 .mxchat-admin .chat-session {
925 border: 1px solid #ddd;
926 padding: 15px;
927 width: calc(33.333% - 20px);
928 box-sizing: border-box;
929 background-color: #f9f9f9;
930 display: flex;
931 flex-direction: column;
932 max-height: 500px;
933 overflow: auto;
934 }
935
936 .mxchat-admin .chat-message {
937 border-bottom: 1px solid #eee;
938 padding-bottom: 10px;
939 margin-bottom: 10px;
940 }
941
942 .mxchat-admin .chat-session h4 {
943 margin-bottom: 15px;
944 font-size: 1.1em;
945 font-weight: 700;
946 }
947
948 .mxchat-controls {
949 display: flex;
950 align-items: center;
951 margin-bottom: 15px;
952 }
953
954 .mxchat-select-all-label {
955 margin-right: 15px;
956 display: flex;
957 align-items: center;
958 }
959
960 .mxchat-select-all-label input[type="checkbox"] {
961 margin-right: 5px;
962 }
963
964 .mxchat-controls .delete-chats-button.button {
965 padding: 6px 12px;
966 font-size: 14px;
967 background: #e74c3c;
968 color: #fff;
969 border-radius: 20px;
970 font-weight: 700;
971 text-decoration: none;
972 transition: all .2s;
973 justify-content: center;
974 align-items: center;
975 cursor: pointer;
976 border: none;
977 line-height: 1;
978 }
979
980
981 .mxchat-controls .delete-chats-button.button:hover {
982 color: #fff;
983 background-color: #c0392b;
984 box-shadow: 4px 4px #a93226
985 }
986
987
988 .mxchat-license-status.active {
989 color: green;
990 font-weight: bold;
991 }
992
993 .mxchat-license-status.inactive {
994 color: red;
995 font-weight: bold;
996 }
997 .mxchat-nav-tab-wrapper {
998 margin: 0px 0px;
999 padding: 0px 0px;
1000 display: flex;
1001 padding-left: 20px;
1002 }
1003
1004 .mxchat-nav-tab {
1005 font-size: 14px;
1006 padding: 10px 20px;
1007 margin-right: 10px;
1008 background: #f1f1f1;
1009 border: 1px solid #ddd;
1010 border-bottom: none;
1011 cursor: pointer;
1012 box-shadow: none;
1013 color: #333;
1014 text-decoration: none;
1015 }
1016
1017 .mxchat-nav-tab:hover, .mxchat-nav-tab:focus {
1018 background: #fff;
1019 color: #0073aa;
1020 box-shadow: none;
1021 }
1022
1023 .mxchat-nav-tab-active {
1024 background: #fff;
1025 border-bottom: 1px solid #fff;
1026 color: #0073aa;
1027 }
1028
1029 .mxchat-tab-content {
1030 display: none;
1031 padding: 20px;
1032 background: #fff;
1033 border: 1px solid #ddd;
1034 }
1035
1036 .mxchat-tab-content.active {
1037 display: block;
1038 }
1039
1040
1041 .mxchat-settings-section {
1042 padding: 20px 0;
1043 }
1044
1045 .mxchat-settings-section h2 {
1046 font-size: 1.2em;
1047 margin-bottom: 10px;
1048 color: #333;
1049 font-weight: bold;
1050 }
1051
1052 .section-divider {
1053 width: 95%;
1054 height: 2px;
1055 background-color: #e0e0e0;
1056 margin: 20px auto;
1057 border-radius: 1px;
1058 }
1059
1060 .form-table th {
1061 padding: 10px 0;
1062 vertical-align: top;
1063 width: 220px;
1064 }
1065
1066 .form-table td {
1067 padding: 10px 0;
1068 }
1069
1070
1071
1072
1073 .mxchat-table {
1074 width: 100%;
1075 table-layout: fixed;
1076 border-collapse: collapse;
1077 border: 1px solid #ccc; /* Adds a border around the table */
1078 }
1079
1080 /* Header styling to match theme */
1081 .mxchat-table th {
1082 background-color: #212121; /* Dark gray/black background */
1083 color: #fff; /* White text */
1084 font-weight: bold;
1085 padding: 10px;
1086 border-bottom: 3px solid #ccc; /* Thicker divider for the header */
1087 }
1088
1089 /* General cell styling */
1090 .mxchat-table th, .mxchat-table td {
1091 padding: 8px 10px;
1092 text-align: left;
1093 vertical-align: top; /* Aligns content to the top of the cell */
1094 border-bottom: 2px solid #ddd; /* Adds prominent dividers between rows */
1095 }
1096
1097 /* Alternate row background for better readability */
1098 .mxchat-table tbody tr:nth-child(odd) {
1099 background-color: #f9f9f9;
1100 }
1101
1102 .mxchat-table tbody tr:nth-child(even) {
1103 background-color: #fff;
1104 }
1105
1106 /* ID column should be small */
1107 .mxchat-table td:nth-child(1),
1108 .mxchat-table th:nth-child(1) {
1109 width: 15%; /* ID column */
1110 text-align: center;
1111 }
1112
1113 /* Content column should be wide */
1114 .mxchat-table td:nth-child(2),
1115 .mxchat-table th:nth-child(2) {
1116 width: 50%; /* Content column */
1117 }
1118
1119 /* URL column */
1120 .mxchat-table td:nth-child(3),
1121 .mxchat-table th:nth-child(3) {
1122 width: 20%; /* URL column */
1123 text-align: left;
1124 overflow-x: auto; /* Allow the URL to scroll horizontally if it's too long */
1125 white-space: nowrap;
1126 }
1127
1128 /* Actions column */
1129 .mxchat-table td:nth-child(4),
1130 .mxchat-table th:nth-child(4) {
1131 width: 15%; /* Edit/Delete column */
1132 text-align: center;
1133 }
1134
1135 .mxchat-intents-table {
1136 width: 100%;
1137 table-layout: fixed;
1138 border-collapse: collapse;
1139 border: 1px solid #ccc;
1140 }
1141
1142 .mxchat-intents-table th {
1143 background-color: #212121;
1144 color: #fff;
1145 font-weight: bold;
1146 padding: 10px;
1147 border-bottom: 3px solid #ccc;
1148 }
1149
1150 .mxchat-intents-table th,
1151 .mxchat-intents-table td {
1152 padding: 8px 10px;
1153 text-align: left;
1154 vertical-align: top;
1155 border-bottom: 2px solid #ddd;
1156 }
1157
1158 .mxchat-intents-table tbody tr:nth-child(odd) {
1159 background-color: #f9f9f9;
1160 }
1161
1162 .mxchat-intents-table tbody tr:nth-child(even) {
1163 background-color: #fff;
1164 }
1165
1166 /* Intent Label column */
1167 .mxchat-intents-table td:nth-child(1),
1168 .mxchat-intents-table th:nth-child(1) {
1169 width: 20%;
1170 }
1171
1172 /* Phrases column */
1173 .mxchat-intents-table td:nth-child(2),
1174 .mxchat-intents-table th:nth-child(2) {
1175 width: 30%;
1176 overflow-x: auto;
1177 }
1178
1179 /* Callback Function column */
1180 .mxchat-intents-table td:nth-child(3),
1181 .mxchat-intents-table th:nth-child(3) {
1182 width: 20%;
1183 }
1184
1185 /* Similarity Threshold column */
1186 .mxchat-intents-table td:nth-child(4),
1187 .mxchat-intents-table th:nth-child(4) {
1188 width: 15%;
1189 text-align: center;
1190 }
1191
1192 /* Actions column */
1193 .mxchat-intents-table td:nth-child(5),
1194 .mxchat-intents-table th:nth-child(5) {
1195 width: 15%;
1196 text-align: center;
1197 }
1198
1199 /* Style the threshold range slider */
1200 .mxchat-intents-threshold-form input[type="range"] {
1201 width: 100%;
1202 margin: 5px 0;
1203 }
1204
1205 .mxchat-intents-threshold-form button {
1206 margin-top: 5px;
1207 }
1208
1209
1210
1211 /* Edit content textarea styling */
1212 .content-edit {
1213 width: 100%; /* Make textarea fill the column */
1214 height: 100px; /* Adjust height as needed */
1215 box-sizing: border-box; /* Ensure padding and border are included in the width/height */
1216 }
1217
1218 /* Button styling to match theme */
1219 .mxchat-table td .button {
1220 display: inline-block;
1221 margin-right: 5px;
1222 background-color: #212121;
1223 color: #fff;
1224 border: none;
1225 padding: 5px 10px;
1226 text-decoration: none;
1227 border-radius: 3px;
1228 cursor: pointer;
1229 box-shadow: 4px 4px #14141499;
1230 }
1231
1232 /* Hover state */
1233 .mxchat-table td .button:hover {
1234 display: inline-block;
1235 margin-right: 5px;
1236 background-color: #444;
1237 color: #fff;
1238 border: none;
1239 padding: 5px 10px;
1240 text-decoration: none;
1241 border-radius: 3px;
1242 cursor: pointer;
1243 box-shadow: 4px 4px #14141499;
1244 }
1245
1246 /* Active state */
1247 .mxchat-table td .button:active {
1248 display: inline-block;
1249 margin-right: 5px;
1250 background-color: #444;
1251 color: #fff;
1252 border: none;
1253 padding: 5px 10px;
1254 text-decoration: none;
1255 border-radius: 3px;
1256 cursor: pointer;
1257 box-shadow: 4px 4px #14141499;
1258 }
1259
1260 /* Focus state */
1261 .mxchat-table td .button:focus {
1262 display: inline-block;
1263 margin-right: 5px;
1264 background-color: #444;
1265 color: #fff;
1266 border: none;
1267 padding: 5px 10px;
1268 text-decoration: none;
1269 border-radius: 3px;
1270 cursor: pointer;
1271 box-shadow: 4px 4px #14141499;
1272 outline: none; /* Removes default outline */
1273 }
1274
1275
1276
1277 /* Responsive Design */
1278 @media (max-width: 1024px) {
1279 .mxchat-admin .mxchat-grid-container {
1280 grid-template-columns: 1fr;
1281 }
1282
1283 .mxchat-admin .mxchat-grid-item.full-width {
1284 grid-column: span 1;
1285 }
1286
1287 .mxchat-admin .chat-session {
1288 width: calc(100% - 0px);
1289 }
1290
1291 .mxchat-nav-tab {
1292 padding: 10px 12px;
1293 }
1294
1295 /* Search and Sitemap Group */
1296 .mxchat-admin .mxchat-search-group {
1297 align-items: normal;
1298 flex-direction: column;
1299 }
1300
1301 .mxchat-admin .mxchat-nav-tab-wrapper,
1302 .mxchat-admin .wrap h2.mxchat-nav-tab-wrapper,
1303 .mxchat-admin h1.mxchat-nav-tab-wrapper {
1304 border-bottom: 0;
1305 justify-content: space-evenly;
1306 display: flex;
1307 }
1308
1309 .mxchat-admin .mxchat-nav-tab-wrapper .mxchat-nav-tab {
1310 margin: 0;
1311 }
1312 .mxchat-nav-tab-wrapper {
1313 padding-left: 0px;
1314 }
1315
1316 .mxchat-session {
1317 width: 100%;
1318 }
1319
1320
1321 }
1322
1323
1324 /* Basic responsive table styles */
1325 @media screen and (max-width: 782px) {
1326 .mxchat-intents-table {
1327 display: block;
1328 width: 100%;
1329 }
1330
1331 .mxchat-intents-table thead {
1332 display: none; /* Hide header on mobile */
1333 }
1334
1335 .mxchat-intents-table tbody,
1336 .mxchat-intents-table tr,
1337 .mxchat-intents-table td {
1338 display: block;
1339 width: 100%;
1340 }
1341
1342 .mxchat-intents-table tr {
1343 margin-bottom: 1.5rem;
1344 background: #fff;
1345 padding: 1rem;
1346 border-radius: 8px;
1347 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
1348 max-width: 300px;
1349 }
1350
1351 /* Add labels before content */
1352 .mxchat-intents-table td:before {
1353 content: attr(data-label);
1354 font-weight: 600;
1355 display: block;
1356 margin-bottom: 0.5rem;
1357 color: #1d2327;
1358 }
1359
1360 /* Spacing between cells */
1361 .mxchat-intents-table td {
1362 padding: 0.5rem 0;
1363 border: none;
1364 }
1365
1366 /* Handle the slider container */
1367 .mxchat-intents-table td:nth-child(4) {
1368 margin: 1rem 0;
1369 }
1370
1371 /* Style the range input */
1372 .mxchat-intents-table input[type="range"] {
1373 width: 100%;
1374 margin: 0.5rem 0;
1375 }
1376
1377 /* Style the actions column */
1378 .mxchat-intents-table td:last-child {
1379 display: flex;
1380 flex-direction: column;
1381 gap: 0.5rem;
1382 margin-top: 1rem;
1383 }
1384
1385 /* Make buttons full width on mobile */
1386 .mxchat-intents-table .mxchat-save-button,
1387 .mxchat-intents-table .mxchat-edit-button,
1388 .mxchat-intents-table .mxchat-delete-all {
1389 width: 100%;
1390 margin: 0;
1391 }
1392
1393 /* Adjust output display */
1394 .mxchat-intents-table output {
1395 display: block;
1396 text-align: center;
1397 margin-top: 0.25rem;
1398 }
1399
1400 /* Additional spacing for forms */
1401 .mxchat-intents-table form {
1402 margin: 0;
1403 }
1404 }
1405
1406 /* Filter section responsive styles */
1407 @media screen and (max-width: 782px) {
1408 .mxchat-search-group {
1409 display: flex;
1410 flex-direction: column;
1411 gap: 0.5rem;
1412 }
1413
1414 .mxchat-search-group input,
1415 .mxchat-search-group select,
1416 .mxchat-search-group button {
1417 width: 100%;
1418 margin: 0;
1419 }
1420 }
1421
1422
1423 /* Stats Grid */
1424 .mxchat-stats-grid {
1425 display: grid;
1426 grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
1427 gap: 20px;
1428 margin-bottom: 30px;
1429 margin-top: 20px;
1430 }
1431
1432 .mxchat-stat-card {
1433 background: white;
1434 padding: 20px;
1435 border-radius: 10px;
1436 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1437 display: flex;
1438 align-items: center;
1439 gap: 15px;
1440 }
1441
1442 .stat-icon {
1443 font-size: 24px;
1444 background: #f0f0f1;
1445 width: 50px;
1446 height: 50px;
1447 display: flex;
1448 align-items: center;
1449 justify-content: center;
1450 border-radius: 10px;
1451 }
1452
1453 .stat-content {
1454 display: flex;
1455 flex-direction: column;
1456 }
1457
1458 .stat-value {
1459 font-size: 24px;
1460 font-weight: bold;
1461 color: #1d2327;
1462 }
1463
1464 .stat-label {
1465 color: #50575e;
1466 font-size: 14px;
1467 }
1468
1469 /* Controls Section */
1470 .mxchat-controls-wrapper {
1471 background: white;
1472 padding: 20px;
1473 border-radius: 10px;
1474 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1475 margin-bottom: 20px;
1476 display: flex;
1477 justify-content: space-between;
1478 align-items: center;
1479 flex-wrap: wrap;
1480 gap: 15px;
1481 }
1482
1483 .mxchat-controls {
1484 display: flex;
1485 gap: 15px;
1486 align-items: center;
1487 }
1488
1489 .mxchat-search-box input {
1490 padding: 8px 12px;
1491 border-radius: 5px;
1492 border: 1px solid #dcdcde;
1493 width: 300px;
1494 }
1495
1496 /* Select/Delete Buttons */
1497 .mxchat-select-button {
1498 display: flex;
1499 align-items: center;
1500 gap: 8px;
1501 padding: 8px 16px;
1502 background: #fff;
1503 border: 1px solid #0073aa;
1504 border-radius: 4px;
1505 color: #0073aa;
1506 cursor: pointer;
1507 transition: all 0.2s ease;
1508 }
1509
1510 .mxchat-select-button:hover {
1511 background: #f0f7ff;
1512 }
1513
1514 .mxchat-select-button.selected {
1515 background: #0073aa;
1516 color: #fff;
1517 }
1518
1519 .mxchat-select-button .dashicons {
1520 font-size: 18px;
1521 width: 18px;
1522 height: 18px;
1523 transition: transform 0.2s ease;
1524 }
1525
1526 .mxchat-select-button.selected .dashicons {
1527 transform: scale(1.2);
1528 }
1529
1530 .delete-chats-button {
1531 display: flex !important;
1532 align-items: center;
1533 gap: 8px;
1534 background: #dc3232 !important;
1535 color: #fff !important;
1536 border: none !important;
1537 padding: 8px 16px !important;
1538 border-radius: 4px !important;
1539 cursor: pointer;
1540 transition: all 0.2s ease !important;
1541 }
1542
1543 .delete-chats-button:hover {
1544 background: #b32d2e !important;
1545 }
1546
1547 .delete-chats-button .dashicons {
1548 font-size: 18px;
1549 width: 18px;
1550 height: 18px;
1551 }
1552
1553 /* Transcript Grid */
1554 .mxchat-transcript {
1555 display: grid;
1556 grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
1557 gap: 20px;
1558 }
1559
1560 /* Session Cards */
1561 .mxchat-session {
1562 background: white;
1563 border-radius: 10px;
1564 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1565 overflow: hidden;
1566 border: 1px solid #dcdcde;
1567 display: flex;
1568 flex-direction: column;
1569 }
1570
1571 .mxchat-session-header {
1572 background: #f0f0f1;
1573 padding: 15px;
1574 border-bottom: 1px solid #dcdcde;
1575 }
1576
1577 .mxchat-messages {
1578 padding: 15px;
1579 max-height: 400px;
1580 overflow-y: auto;
1581 flex-grow: 1;
1582 overflow-x: hidden;
1583 }
1584
1585 /* Message Styling */
1586 .mxchat-message {
1587 margin-bottom: 15px;
1588 max-width: 85%;
1589 }
1590
1591 .mxchat-message.user-message {
1592 margin-left: auto;
1593 }
1594
1595 .mxchat-message-content {
1596 padding: 10px 15px;
1597 border-radius: 15px;
1598 margin: 5px 0;
1599 }
1600
1601 .user-message .mxchat-message-content {
1602 background: #0073aa;
1603 color: white;
1604 border-radius: 18px 0 18px 18px;
1605 }
1606
1607 .bot-message .mxchat-message-content {
1608 background: #f0f0f1;
1609 border-radius: 0 18px 18px;
1610 }
1611
1612 .mxchat-timestamp {
1613 font-size: 12px;
1614 color: #50575e;
1615 }
1616
1617 /* Responsive Design */
1618 @media (max-width: 782px) {
1619 .mxchat-controls-wrapper {
1620 flex-direction: column;
1621 align-items: stretch;
1622 }
1623
1624 .mxchat-controls {
1625 flex-direction: column;
1626 width: 100%;
1627 }
1628
1629 .mxchat-search-box input {
1630 width: 100%;
1631 }
1632
1633 .mxchat-transcript {
1634 grid-template-columns: 1fr;
1635 }
1636
1637 .mxchat-select-button,
1638 .delete-chats-button {
1639 width: 100%;
1640 justify-content: center;
1641 }
1642 }
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658 /* Settings Page Container */
1659 .mxchat-tab-content {
1660 background: white;
1661 padding: 25px;
1662 border-radius: 10px;
1663 box-shadow: 0 2px 15px rgba(0,0,0,0.05);
1664 }
1665
1666 /* Form Table Layout */
1667 .form-table {
1668 border-collapse: separate;
1669 border-spacing: 0 20px;
1670 margin-top: -20px; /* Compensate for border-spacing */
1671 width: 100%;
1672 }
1673
1674 .form-table th {
1675 padding: 20px 10px 20px 0;
1676 width: 200px;
1677 vertical-align: top;
1678 font-weight: 600;
1679 color: #1d2327;
1680 }
1681
1682 .form-table td {
1683 padding: 15px 10px;
1684 vertical-align: top;
1685 }
1686
1687 /* Input Styling */
1688 .form-table input[type="text"],
1689 .form-table input[type="password"],
1690 .form-table textarea,
1691 .form-table select {
1692 width: 100%;
1693 max-width: 500px;
1694 padding: 8px 12px;
1695 border: 1px solid #dcdcde;
1696 border-radius: 4px;
1697 background-color: #fff;
1698 transition: all 0.2s ease;
1699 }
1700
1701 .form-table input[type="text"]:focus,
1702 .form-table input[type="password"]:focus,
1703 .form-table textarea:focus,
1704 .form-table select:focus {
1705 border-color: #2271b1;
1706 box-shadow: 0 0 0 1px #2271b1;
1707 outline: none;
1708 }
1709
1710 /* Range Input Styling */
1711 input[type="range"] {
1712 -webkit-appearance: none;
1713 width: 200px;
1714 height: 4px;
1715 background: #dcdcde;
1716 border-radius: 2px;
1717 vertical-align: middle;
1718 }
1719
1720 input[type="range"]::-webkit-slider-thumb {
1721 -webkit-appearance: none;
1722 height: 16px;
1723 width: 16px;
1724 border-radius: 50%;
1725 background: #2271b1;
1726 cursor: pointer;
1727 transition: all 0.2s ease;
1728 }
1729
1730 input[type="range"]::-webkit-slider-thumb:hover {
1731 transform: scale(1.1);
1732 }
1733
1734 #mxchat_threshold_value {
1735 display: inline-block;
1736 padding: 4px 8px;
1737 background: #2271b1;
1738 color: white;
1739 border-radius: 4px;
1740 margin-left: 10px;
1741 font-size: 12px;
1742 min-width: 30px;
1743 text-align: center;
1744 }
1745
1746 /* Toggle Switch */
1747 .toggle-switch {
1748 position: relative;
1749 display: inline-block;
1750 width: 50px;
1751 height: 24px;
1752 }
1753
1754 .toggle-switch input {
1755 opacity: 0;
1756 width: 0;
1757 height: 0;
1758 }
1759
1760 .slider {
1761 position: absolute;
1762 cursor: pointer;
1763 top: 0;
1764 left: 0;
1765 right: 0;
1766 bottom: 0;
1767 background-color: #ccc;
1768 transition: .4s;
1769 border-radius: 24px;
1770 }
1771
1772 .slider:before {
1773 position: absolute;
1774 content: "";
1775 height: 18px;
1776 width: 18px;
1777 left: 3px;
1778 bottom: 3px;
1779 background-color: white;
1780 transition: .4s;
1781 border-radius: 50%;
1782 }
1783
1784 input:checked + .slider {
1785 background-color: #2271b1;
1786 }
1787
1788 input:checked + .slider:before {
1789 transform: translateX(26px);
1790 }
1791
1792 /* Description Text */
1793 .description {
1794 margin-top: 8px;
1795 color: #646970;
1796 font-style: italic;
1797 font-size: 13px;
1798 }
1799
1800 /* Show/Hide Password Button */
1801 button[id^="toggleApiKey"],
1802 button[id^="toggleXaiKey"],
1803 button[id^="toggleClaudeKey"] {
1804 margin-left: 10px;
1805 padding: 4px 12px;
1806 background: #f0f0f1;
1807 border: 1px solid #c3c4c7;
1808 border-radius: 3px;
1809 cursor: pointer;
1810 transition: all 0.2s ease;
1811 }
1812
1813 button[id^="toggleApiKey"]:hover,
1814 button[id^="toggleXaiKey"]:hover,
1815 button[id^="toggleClaudeKey"]:hover {
1816 background: #e5e5e5;
1817 }
1818
1819 /* Additional Questions Section */
1820 .mxchat-question-row {
1821 display: flex;
1822 gap: 10px;
1823 margin-bottom: 10px;
1824 align-items: center;
1825 }
1826
1827 .mxchat-question-row input {
1828 flex: 1;
1829 }
1830
1831 .mxchat-remove-question,
1832 .mxchat-add-question {
1833 padding: 4px 12px !important;
1834 height: auto !important;
1835 }
1836
1837 .mxchat-remove-question {
1838 background: #dc3232 !important;
1839 color: white !important;
1840 border: none !important;
1841 }
1842
1843 .mxchat-add-question {
1844 background: #2271b1 !important;
1845 color: white !important;
1846 border: none !important;
1847 margin-top: 10px;
1848 }
1849
1850 /* Pro Feature Wrapper */
1851 .pro-feature-wrapper {
1852 position: relative;
1853 }
1854
1855 .pro-feature-wrapper.inactive {
1856 opacity: 0.7;
1857 }
1858
1859 /* Responsive Design */
1860 @media screen and (max-width: 782px) {
1861 .form-table td {
1862 padding-left: 0;
1863 }
1864
1865 .form-table input[type="text"],
1866 .form-table input[type="password"],
1867 .form-table textarea,
1868 .form-table select {
1869 max-width: 100%;
1870 }
1871
1872 .form-table th {
1873 padding-bottom: 5px;
1874 }
1875
1876 .mxchat-question-row {
1877 flex-direction: column;
1878 gap: 5px;
1879 }
1880
1881 input[type="range"] {
1882 width: 100%;
1883 max-width: 300px;
1884 }
1885 }
1886
1887 /* Section Headers */
1888 .mxchat-tab-content h2 {
1889 font-size: 1.5em;
1890 padding-bottom: 15px;
1891 margin-bottom: 25px;
1892 border-bottom: 2px solid #f0f0f1;
1893 color: #1d2327;
1894 }
1895
1896 /* Grouped Settings */
1897 .form-table tr:not(:last-child) {
1898 border-bottom: 1px solid #f0f0f1;
1899 }
1900
1901 /* Show/Hide Button - Universal Selector for all toggle buttons */
1902 button[id^="toggle"] {
1903 padding: 8px 16px;
1904 background: #f0f0f1;
1905 border: 1px solid #dcdcde;
1906 border-radius: 4px;
1907 cursor: pointer;
1908 color: #1d2327;
1909 font-size: 13px;
1910 font-weight: 500;
1911 transition: all 0.2s ease;
1912 white-space: nowrap;
1913 height: 36px;
1914 min-width: 80px;
1915 margin-left: 10px;
1916 }
1917
1918 /* Specific selectors for backward compatibility */
1919 button[id^="toggleApiKey"],
1920 button[id^="toggleXaiApiKey"],
1921 button[id^="toggleClaudeApiKey"],
1922 button[id^="toggleWooCommerceSecretVisibility"],
1923 button[id^="toggleBraveApiKeyVisibility"],
1924 button[id^="toggleLoopsApiKeyVisibility"],
1925 button[id^="toggleWebhookUrlVisibility"],
1926 button[id^="toggleSecretKeyVisibility"],
1927 button[id^="toggleBotTokenVisibility"] {
1928 padding: 8px 16px;
1929 background: #f0f0f1;
1930 border: 1px solid #dcdcde;
1931 border-radius: 4px;
1932 cursor: pointer;
1933 color: #1d2327;
1934 font-size: 13px;
1935 font-weight: 500;
1936 transition: all 0.2s ease;
1937 white-space: nowrap;
1938 height: 36px;
1939 min-width: 80px;
1940 margin-left: 10px;
1941 }
1942
1943 /* Hover state for all toggle buttons */
1944 button[id^="toggle"]:hover {
1945 background: #e5e5e5;
1946 border-color: #c3c4c7;
1947 }
1948
1949 /* Active state for all toggle buttons */
1950 button[id^="toggle"]:active {
1951 background: #dcdcde;
1952 border-color: #c3c4c7;
1953 transform: translateY(1px);
1954 }
1955
1956 /* Responsive Design */
1957 @media screen and (max-width: 782px) {
1958 .pro-feature-wrapper {
1959 flex-wrap: wrap;
1960 }
1961
1962 /* Make all toggle buttons full width on mobile */
1963 button[id^="toggle"] {
1964 width: 100%;
1965 margin-left: 0;
1966 margin-top: 10px;
1967 }
1968 .mxchat-remove-question {
1969 width: 100%;
1970 }
1971 }
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983 .mxchat-import-container {
1984 background: #fff;
1985 border-radius: 8px;
1986 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
1987 margin-bottom: 1rem;
1988 padding: 1.5rem;
1989 }
1990
1991 .mxchat-flex-section h2 {
1992 margin: 0 0 1rem;
1993 padding-bottom: 0.5rem;
1994 border-bottom: 1px solid #eee;
1995 }
1996
1997 .mxchat-sync-settings,
1998 .mxchat-import-section {
1999 flex: 1;
2000 }
2001
2002 .mxchat-toggle-group {
2003 display: flex;
2004 flex-direction: column;
2005 gap: 0.75rem;
2006 }
2007
2008 .mxchat-toggle-container {
2009 display: flex;
2010 align-items: center;
2011 gap: 0.75rem;
2012 }
2013
2014 .mxchat-toggle-switch {
2015 position: relative;
2016 display: inline-block;
2017 width: 44px;
2018 height: 22px;
2019 }
2020
2021 .mxchat-toggle-slider {
2022 position: absolute;
2023 cursor: pointer;
2024 top: 0;
2025 left: 0;
2026 right: 0;
2027 bottom: 0;
2028 background-color: #ccc;
2029 transition: .4s;
2030 border-radius: 22px;
2031 }
2032
2033 .mxchat-toggle-slider:before {
2034 position: absolute;
2035 content: "";
2036 height: 18px;
2037 width: 18px;
2038 left: 2px;
2039 bottom: 2px;
2040 background-color: white;
2041 transition: .4s;
2042 border-radius: 50%;
2043 }
2044
2045 input:checked + .mxchat-toggle-slider {
2046 background-color: #2196F3;
2047 }
2048
2049 input:checked + .mxchat-toggle-slider:before {
2050 transform: translateX(22px);
2051 }
2052
2053 .mxchat-url-input-group {
2054 display: flex;
2055 gap: 0.5rem;
2056 }
2057
2058 .mxchat-url-input-group input[type="url"] {
2059 flex: 1;
2060 }
2061
2062 .mxchat-status-section {
2063 margin-top: 1rem;
2064 padding-top: 1rem;
2065 border-top: 1px solid #eee;
2066 }
2067
2068 .mxchat-process-status {
2069 background: #f8f9fa;
2070 border-radius: 4px;
2071 padding: 1rem;
2072 margin-bottom: 1rem;
2073 }
2074
2075 .status-header {
2076 display: flex;
2077 justify-content: space-between;
2078 align-items: center;
2079 margin-bottom: 0.5rem;
2080 }
2081
2082 .status-header h4 {
2083 margin: 0;
2084 }
2085
2086 .progress-bar {
2087 background: #eee;
2088 border-radius: 4px;
2089 height: 8px;
2090 margin-bottom: 0.5rem;
2091 }
2092
2093 .progress {
2094 background: #2196F3;
2095 height: 100%;
2096 border-radius: 4px;
2097 transition: width 0.3s ease;
2098 }
2099
2100 .status-details {
2101 display: flex;
2102 justify-content: space-between;
2103 font-size: 0.9em;
2104 color: #666;
2105 }
2106
2107 .save-button-settings {
2108 background: #3498db !important;
2109 color: #fff !important;
2110 border-radius: 20px !important;
2111 padding: 0px 20px !important;
2112 font-size: 1rem !important;
2113 font-weight: 700 !important;
2114 text-decoration: none !important;
2115 transition: all .2s !important;
2116 box-shadow: 4px 4px #2980b9 !important;
2117 cursor: pointer !important;
2118 margin-top: 10px !important;
2119 border: none !important;
2120 margin-bottom: 10px !important;
2121 }
2122
2123 .mxchat-import-description {
2124 margin-bottom: 1rem;
2125 }
2126
2127 .description-text {
2128 margin: 0 0 0.5rem;
2129 color: #666;
2130 }
2131
2132 .import-options {
2133 margin: 0 0 1rem;
2134 padding-left: 1.5rem;
2135 }
2136
2137 .import-options li {
2138 margin-bottom: 0.25rem;
2139 color: #666;
2140 }
2141
2142 .import-options strong {
2143 color: #333;
2144 }
2145
2146 .import-section {
2147 margin-top: 50px;
2148 }
2149
2150
2151 /* Mobile Responsiveness */
2152 @media screen and (max-width: 782px) {
2153 .mxchat-settings-row {
2154 flex-direction: column;
2155 }
2156
2157 .mxchat-url-input-group {
2158 flex-direction: column;
2159 }
2160
2161 .mxchat-url-input-group input[type="submit"] {
2162 width: 100%;
2163 }
2164 }
2165
2166
2167
2168
2169
2170 /* Feedback container for saving indicator */
2171 .feedback-container {
2172 display: inline-flex;
2173 align-items: center;
2174 margin-left: 10px;
2175 position: relative;
2176 }
2177
2178 /* Spinner animation */
2179 .saving-spinner {
2180 width: 16px;
2181 height: 16px;
2182 border: 2px solid #ccc;
2183 border-top-color: #007cba; /* WordPress blue */
2184 border-radius: 50%;
2185 animation: spin 0.6s linear infinite;
2186 }
2187
2188 /* Checkmark icon */
2189 .success-icon {
2190 display: none;
2191 color: #28a745; /* Green for success */
2192 font-size: 16px;
2193 font-weight: bold;
2194 margin-left: 5px;
2195 animation: fadeInOut 1.5s ease-in-out forwards;
2196 }
2197
2198 /* Spinner animation keyframes */
2199 @keyframes spin {
2200 to {
2201 transform: rotate(360deg);
2202 }
2203 }
2204
2205 /* Success icon fade animation */
2206 @keyframes fadeInOut {
2207 0% {
2208 opacity: 0;
2209 }
2210 20% {
2211 opacity: 1;
2212 }
2213 80% {
2214 opacity: 1;
2215 }
2216 100% {
2217 opacity: 0;
2218 }
2219 }
2220
2221
2222 .slider-container {
2223 display: flex;
2224 align-items: center;
2225 gap: 10px;
2226 margin-bottom: 10px;
2227 }
2228
2229 .range-slider {
2230 flex-grow: 1;
2231 max-width: 300px;
2232 }
2233
2234 .range-value {
2235 min-width: 30px;
2236 text-align: center;
2237 }
2238
2239 /* Optional: Style the range input */
2240 input[type="range"] {
2241 -webkit-appearance: none;
2242 width: 100%;
2243 height: 8px;
2244 background: #ddd;
2245 border-radius: 4px;
2246 outline: none;
2247 }
2248
2249 input[type="range"]::-webkit-slider-thumb {
2250 -webkit-appearance: none;
2251 width: 16px;
2252 height: 16px;
2253 background: #2271b1;
2254 border-radius: 50%;
2255 cursor: pointer;
2256 }
2257