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

3,094 lines 61.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 .wp-core-ui .notice.is-dismissible {
2 z-index: 10000;
3 }
4
5 #system_prompt_instructions {
6 transition: height 0.3s ease;
7 }
8 .red-warning {
9 color: red;
10 }
11
12 .mxchat-form-intent {
13 background-color: rgba(240, 240, 245, 0.5);
14 }
15
16 .mxchat-badge {
17 display: inline-block;
18 padding: 2px 8px;
19 border-radius: 12px;
20 background: #7873f5;
21 color: white;
22 font-size: 12px;
23 margin-left: 8px;
24 }
25
26 .mxchat-threshold-readonly {
27 padding: 8px;
28 background: rgba(120, 115, 245, 0.1);
29 border-radius: 4px;
30 text-align: center;
31 }
32
33 .mxchat-form-intent .mxchat-button-secondary {
34 background: #7873f5;
35 color: white;
36 border: none;
37 padding: 6px 12px;
38 border-radius: 4px;
39 text-decoration: none;
40 display: inline-block;
41 }
42
43 .mxchat-form-intent .mxchat-button-secondary:hover {
44 background: #6863e5;
45 }
46
47 /* Tab Navigation */
48 .mxchat-tabs {
49 border-bottom: 1px solid #ccc;
50 margin-bottom: 20px;
51 padding-bottom: 0;
52 }
53
54 .mxchat-default-db-h2 {
55 text-align: center;
56 margin: 0px;
57 padding: 0px;
58 }
59
60 .mxchat-tab-button {
61 background: #f1f1f1;
62 border: 1px solid #ccc;
63 border-bottom: none;
64 color: #555;
65 cursor: pointer;
66 font-size: 14px;
67 margin: 0 5px -1px 0;
68 padding: 10px 15px;
69 transition: all 0.3s ease;
70 }
71
72 .mxchat-tab-button.active {
73 background: #fff;
74 border-bottom: 1px solid #fff;
75 color: #000;
76 }
77
78 #default-db.mxchat-tab-content, #pinecone-db.mxchat-tab-content {
79 border: none;
80 box-shadow: none;
81 padding: 0px;
82 }
83
84 .mxchat-tab-content.active {
85 display: block;
86 }
87
88 @keyframes fadeIn {
89 from { opacity: 0; }
90 to { opacity: 1; }
91 }
92
93 .mxchat-tab-content.active {
94 display: block;
95 }
96
97 /* Pinecone Settings Styling */
98 .mxchat-input-group {
99 margin-bottom: 20px;
100 }
101
102 .mxchat-input-group label {
103 display: block;
104 font-weight: 600;
105 margin-bottom: 5px;
106 }
107
108 .mxchat-input-group .description {
109 color: #666;
110 font-style: italic;
111 margin-top: 5px;
112 }
113
114
115 .mxchat-sync-settings {
116 background: #fff;
117 border-radius: 5px;
118 }
119
120 .mxchat-toggle-container {
121 margin-bottom: 15px;
122 }
123
124 .mxchat-toggle-switch {
125 position: relative;
126 display: inline-block;
127 width: 60px;
128 height: 34px;
129 }
130
131 .mxchat-toggle-switch input {
132 opacity: 0;
133 width: 0;
134 height: 0;
135 }
136
137 .mxchat-toggle-slider {
138 position: absolute;
139 cursor: pointer;
140 top: 0;
141 left: 0;
142 right: 0;
143 bottom: 0;
144 background-color: #ccc;
145 transition: .4s;
146 border-radius: 34px;
147 }
148
149 .mxchat-toggle-slider:before {
150 position: absolute;
151 content: "";
152 height: 26px;
153 width: 26px;
154 left: 4px;
155 bottom: 4px;
156 background-color: white;
157 transition: .4s;
158 border-radius: 50%;
159 }
160
161 input:checked + .mxchat-toggle-slider {
162 background-color: #2196F3;
163 }
164
165 input:checked + .mxchat-toggle-slider:before {
166 transform: translateX(26px);
167 }
168
169 .mxchat-toggle-label {
170 vertical-align: super;
171 font-weight: 500;
172 }
173 .mxchat-knowledge-container {
174 display: flex;
175 flex-direction: column;
176 gap: 1rem;
177 margin: 1.5rem 0;
178 padding: 1rem;
179 background: #fff;
180 border-radius: 10px;
181 border: 1px solid #ddd;
182 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
183 }
184
185 /* Left Column */
186 .mxchat-knowledge-controls {
187 flex: 1;
188 display: flex;
189 gap: 1rem;
190 justify-content: space-between;
191 align-items: center;
192 }
193
194 .mxchat-controls-header {
195 display: flex;
196 justify-content: space-between;
197 align-items: center;
198 }
199
200 .displaying-num {
201 color: #666;
202 font-size: 0.9rem;
203 }
204
205 .mxchat-delete-all {
206 color: #dc3545;
207 border-color: #dc3545;
208 }
209
210 .mxchat-delete-all:hover {
211 background: #dc3545;
212 color: #fff;
213 }
214
215 .mxchat-pagination .page-numbers {
216 padding: 0.25rem 0.5rem;
217 margin: 0 0.25rem;
218 border: 1px solid #ddd;
219 border-radius: 4px;
220 text-decoration: none;
221 }
222
223 .mxchat-pagination .current {
224 background: #2271b1;
225 color: #fff;
226 border-color: #2271b1;
227 }
228
229 /* Right Column */
230 .mxchat-knowledge-search {
231 flex: 1;
232 }
233 .search-input {
234 flex: 1;
235 padding: 0.5rem;
236 border: 1px solid #ddd;
237 border-radius: 4px;
238 }
239
240 .search-button {
241 display: flex;
242 align-items: center;
243 gap: 0.5rem;
244 padding: 0.5rem 1rem;
245 }
246
247 /* Mobile Responsiveness */
248 @media screen and (max-width: 782px) {
249 .mxchat-knowledge-controls {
250 flex-direction: column;
251 }
252
253 .mxchat-grid-container {
254 display: grid;
255 /* Add these properties */
256 max-width: 100%; /* Constrain to parent width */
257 width: 100%;
258 overflow-x: hidden; /* Prevent horizontal scrolling */
259 grid-template-columns: 1fr; /* Single column layout */
260 grid-gap: 20px;
261 }
262
263 .mxchat-controls-header {
264 flex-direction: column;
265 gap: 1rem;
266 align-items: flex-start;
267 }
268
269 .mxchat-search-group {
270 flex-direction: column;
271 }
272
273 }
274
275
276
277
278
279
280
281
282
283
284 .mxchat-modal {
285 display: none;
286 position: fixed;
287 z-index: 1000;
288 left: 0;
289 top: 0;
290 width: 100%;
291 height: 100%;
292 background-color: rgba(0,0,0,0.4);
293 }
294
295 .mxchat-modal-content {
296 background-color: #fefefe;
297 margin: 15% auto;
298 padding: 20px;
299 border: 1px solid #ddd;
300 width: 70%;
301 max-width: 600px;
302 border-radius: 4px;
303 }
304
305 .mxchat-modal-close {
306 color: #aaa;
307 float: right;
308 font-size: 28px;
309 font-weight: bold;
310 cursor: pointer;
311 }
312
313 .mxchat-modal-close:hover {
314 color: black;
315 }
316
317
318
319
320 .mxchat-admin .button.button-secondary.mxchat-edit-button {
321 background: #3498db;
322 color: #fff;
323 border-radius: 20px;
324 padding: 0px 20px !important;
325 font-size: 1rem;
326 font-weight: 700;
327 text-decoration: none;
328 transition: all .2s;
329 justify-content: center;
330 align-items: center;
331 box-shadow: 4px 4px #2980b9;
332 cursor: pointer;
333 margin-top: 10px;
334 border: none;
335 width: 100%;
336 }
337
338
339 .mxchat-admin .mxchat-intents-table .mxchat-delete-all {
340 width: 100%;
341 }
342
343 .mxchat-admin .mxchat-intents-table .mxchat-save-button {
344 max-width: 100% !important;
345 width: 100% !important;
346 }
347
348 .mxchat-agents-banner {
349 background-color: #fff;
350 margin-bottom: 20px;
351 border-radius: 4px;
352 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
353 position: relative;
354 margin-left: auto;
355 margin-right: auto;
356 padding: 0px 15px;
357 }
358
359 .mxchat-agents-banner::before {
360 content: '';
361 position: absolute;
362 top: 0;
363 left: 0px;
364 width: 10px; /* Matches border-left width */
365 height: 100%;
366 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1); /* Gradient */
367 border-radius: 4px 0 0 4px; /* Match overall border radius */
368 }
369
370 .mxchat-agents-banner p {
371 font-size: 14px;
372 line-height: 1.6;
373 color: #444; /* Dark gray text */
374 margin: 0;
375 padding: 15px 10px;
376 }
377
378 .mxchat-agents-banner a {
379 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1); /* Gradient text */
380 -webkit-background-clip: text;
381 -webkit-text-fill-color: transparent; /* Makes gradient visible */
382 font-weight: bold;
383 text-decoration: none;
384 transition: opacity 0.2s ease;
385 }
386
387 .mxchat-agents-banner a:hover {
388 opacity: 0.8; /* Subtle fade on hover */
389 text-decoration: underline; /* Underline for accessibility */
390 }
391
392
393
394 .mxchat-timestamp {
395 font-size: 10px;
396 color: #8c8f94;
397 margin-top: 2px;
398 padding: 0 8px;
399 }
400
401 .mxchat-messages::-webkit-scrollbar {
402 width: 6px;
403 }
404
405 .mxchat-messages::-webkit-scrollbar-track {
406 background: #f1f1f1;
407 }
408
409 .mxchat-messages::-webkit-scrollbar-thumb {
410 background: #888;
411 border-radius: 3px;
412 }
413
414
415
416
417
418
419
420
421
422 .mxchat-process-status {
423 margin-top: 20px;
424 padding: 15px;
425 background: #fff;
426 border: 1px solid #ddd;
427 border-radius: 4px;
428 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
429 }
430
431 .mxchat-process-status h3 {
432 margin: 0 0 15px 0;
433 color: #23282d;
434 font-size: 14px;
435 font-weight: 600;
436 }
437
438 .mxchat-process-status p {
439 margin: 8px 0;
440 color: #555;
441 font-size: 13px;
442 }
443
444 .mxchat-process-status .status-complete {
445 color: #46b450;
446 font-weight: 500;
447 }
448
449 .mxchat-process-status.complete {
450 border-color: #46b450;
451 }
452
453
454
455
456
457 /* Toggle Switch Styles */
458 .mxchat-switch {
459 position: relative;
460 display: inline-block;
461 width: 60px;
462 height: 34px;
463 margin-right: 10px;
464 }
465
466 .mxchat-switch input {
467 opacity: 0;
468 width: 0;
469 height: 0;
470 }
471
472 .mxchat-slider {
473 position: absolute;
474 cursor: pointer;
475 top: 0;
476 left: 0;
477 right: 0;
478 bottom: 0;
479 background-color: #ccc;
480 transition: .4s;
481 border-radius: 34px;
482 }
483
484 .mxchat-slider:before {
485 position: absolute;
486 content: "";
487 height: 26px;
488 width: 26px;
489 left: 4px;
490 bottom: 4px;
491 background-color: white;
492 transition: .4s;
493 border-radius: 50%;
494 }
495
496 input:checked + .mxchat-slider {
497 background-color: #2196F3;
498 }
499
500 input:disabled + .mxchat-slider {
501 opacity: 0.5;
502 cursor: not-allowed;
503 }
504
505 input:checked + .mxchat-slider:before {
506 transform: translateX(26px);
507 }
508
509 .mxchat-status-label {
510 display: inline-block;
511 vertical-align: middle;
512 margin-left: 10px;
513 }
514
515 .status-text {
516 font-weight: 500;
517 }
518
519
520
521
522 .mxchat-question-row {
523 margin-bottom: 10px;
524 }
525
526 .mxchat-similarity-threshold .mxchat-slider-container {
527 display: flex;
528 align-items: center;
529 gap: 15px;
530 margin-top: 10px;
531 }
532
533 .mxchat-similarity-threshold input[type="range"] {
534 flex: 1;
535 margin: 0;
536 }
537
538 .mxchat-similarity-threshold .button-primary {
539 white-space: nowrap;
540 }
541
542 .mxchat-similarity-threshold label {
543 font-weight: bold;
544 display: block;
545 margin-bottom: 5px;
546 }
547
548 .mxchat-similarity-threshold {
549 max-width: 600px;
550 }
551
552 #threshold_value_display {
553 font-weight: normal;
554 margin-left: 10px;
555 color: #0073aa;
556 }
557
558 .mxchat-form-group {
559 margin-bottom: 20px;
560 }
561
562 .mxchat-form-group input[type="range"] {
563 width: 100%;
564 margin-top: 10px;
565 }
566
567 .mxchat-form-group label {
568 font-weight: bold;
569 display: block;
570 margin-bottom: 5px;
571 }
572
573 .mxchat-form-group .description {
574 font-size: 0.9em;
575 color: #666;
576 }
577
578 #threshold_value_display {
579 font-weight: normal;
580 margin-left: 10px;
581 color: #0073aa;
582 }
583
584
585
586
587 .mxchat-product-image, .mxchat-generated-image, .mxchat-image-thumbnail {
588 max-width: 100%;
589 }
590 .description {
591 margin-top: -10px;
592 }
593
594 .tablenav .tablenav-pages {
595 display: flex;
596 align-items: center;
597 margin-left: 20px;
598 gap: 5px;
599 }
600
601 /* General Styles */
602 .mxchat-admin body, .mxchat-admin html {
603 font-family: Arial, sans-serif;
604 background-color: #fff;
605 color: #212121;
606 margin: 0;
607 padding: 0;
608 }
609
610 /* Main Wrapper */
611 .mxchat-admin .wrap {
612 max-width: 1200px;
613 margin: 0 auto;
614 padding: 20px;
615 background: #f9f9f9;
616 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
617 }
618 /* Header */
619 .mxchat-admin .wrap h2 {
620 border-bottom: 2px solid #ddd;
621 padding-bottom: 10px;
622 margin-bottom: 20px;
623 color: #212121;
624 }
625
626 .wrap.mxchat-admin .admin-title {
627 text-shadow: 0 2px 0 #c6c6c6;
628 font-weight: bold;
629 letter-spacing: 5px;
630 color: #212121;
631 font-size: 2.5rem;
632 }
633
634 .mxchat-admin .admin-emphasis {
635 color: white;
636 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;
637 font-weight: bold;
638 letter-spacing: 5px;
639 font-size: 2.5rem;
640 }
641 /* Grid Layout */
642 .mxchat-admin .mxchat-grid-container {
643 display: grid;
644 grid-template-columns: repeat(2, 1fr);
645 grid-gap: 20px;
646 }
647
648 .mxchat-admin .mxchat-grid-item {
649 background: #fff;
650 border: 1px solid #ddd;
651 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
652 padding: 20px;
653 border-radius: 10px;
654 }
655
656 /* Full Width for Submit Content */
657 .mxchat-admin .mxchat-grid-item.full-width {
658 grid-column: span 2;
659 }
660
661 /* Form Styles */
662 .mxchat-admin .mxchat-form-group {
663 display: flex;
664 flex-direction: column;
665 margin-bottom: 20px;
666 }
667
668 .mxchat-admin .mxchat-form-group label {
669 margin-bottom: 10px;
670 font-weight: bold;
671 color: #212121;
672 }
673
674 .mxchat-admin .mxchat-form-group input[type="url"],
675 .mxchat-admin .mxchat-form-group input[type="text"],
676 .mxchat-admin .mxchat-form-group input[type="password"],
677 .mxchat-admin .mxchat-form-group textarea {
678 padding: 10px;
679 border: 1px solid #ddd;
680 border-radius: 4px;
681 font-size: 1rem;
682 width: 100%;
683 box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
684 }
685
686 /* Larger Textarea for Content Submission */
687 .mxchat-admin .mxchat-form-group textarea {
688 min-height: 200px;
689 }
690
691 /* Button Styles */
692 .mxchat-admin .button.button-primary {
693 color: #fff;
694 background: #212121;
695 border-radius: 20px;
696 padding: 0px 30px;
697 font-size: 1rem;
698 font-weight: 700;
699 text-decoration: none;
700 transition: all .2s;
701 display: inline-flex;
702 justify-content: center;
703 align-items: center;
704 max-width: 200px;
705 width: auto;
706 box-shadow: 4px 4px #14141499;
707 border: none;
708 cursor: pointer;
709 }
710
711 .mxchat-search-group .button.button-primary.search-button {
712 box-shadow: none;
713 border-radius: 0px 20px 20px 0px;
714 margin-bottom: 0px;
715 padding: 0px 15px;
716 }
717
718 .mxchat-search-group .button.button-primary.search-button:hover {
719 opacity: .8px;
720 }
721
722 .mxchat-admin .button.button-primary:hover,
723 .mxchat-admin .button.button-primary:active {
724 background: #444;
725 }
726
727 .submit-content-button {
728 margin-top: 10px !important;
729 }
730
731 /* Search and Sitemap Group */
732 .mxchat-admin .mxchat-search-group {
733 display: flex;
734 gap: 0px;
735 max-width: 800px;
736 margin: auto;
737 margin-top: 20px;
738 align-items: stretch;
739 flex-direction: row;
740 }
741
742 .mxchat-admin .mxchat-search-group input[type="text"],
743 .mxchat-admin .mxchat-search-group input[type="url"] {
744 flex-grow: 1;
745 border-radius: 20px 0px 0px 20px;
746 padding: 8px;
747 }
748
749 .mxchat-search-group #mxchat-intent-search {
750 border-radius: 0px 0px 0px 0px;
751 }
752
753 .mxchat-admin .mxchat-search-group input[type="submit"] {
754 background: #212121;
755 color: #fff;
756 border-radius: 20px;
757 padding: 0px 30px;
758 font-size: 1rem;
759 font-weight: 700;
760 box-shadow: 4px 4px #14141499;
761 border: none;
762 transition: background-color .2s;
763 cursor: pointer;
764 }
765
766 .mxchat-admin .mxchat-search-group input[type="submit"]:hover {
767 background-color: #444;
768 }
769
770 .mxchat-admin .mxchat-delete-all, .button.button-link-delete.mxchat-delete-all {
771 background: #e74c3c;
772 color: #fff;
773 border-radius: 20px;
774 padding: 0px 15px !important;
775 font-size: 1rem;
776 font-weight: 700;
777 text-decoration: none;
778 transition: all .2s;
779 justify-content: center;
780 align-items: center;
781 box-shadow: 4px 4px #c0392b;
782 cursor: pointer;
783 margin-bottom: 10px;
784 border: none;
785 }
786
787 .mxchat-admin .mxchat-delete-all:hover {
788 color: #fff;
789 background-color: #c0392b;
790 box-shadow: 4px 4px #a93226
791 }
792
793 .mxchat-admin .mxchat-intents-table .mxchat-delete-all {
794 background: #e74c3c;
795 color: #fff;
796 border-radius: 20px;
797 padding: 0px 20px !important;
798 font-size: 1rem;
799 font-weight: 700;
800 text-decoration: none;
801 transition: all .2s;
802 justify-content: center;
803 align-items: center;
804 box-shadow: 4px 4px #c0392b;
805 cursor: pointer;
806 margin-top: 10px;
807 border: none;
808 }
809
810 .mxchat-admin .mxchat-intents-table .mxchat-delete-all:hover {
811 color: #fff;
812 background-color: #c0392b;
813 box-shadow: 4px 4px #a93226;
814 }
815
816
817
818 /* Table Styles */
819 .mxchat-admin .wp-list-table {
820 width: 100%;
821 margin-top: 20px;
822 border-collapse: collapse;
823 background: #fff;
824 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
825 }
826
827 .mxchat-admin .wp-list-table th,
828 .mxchat-admin .wp-list-table td {
829 padding: 15px;
830 border-bottom: 1px solid #ddd;
831 text-align: left;
832 }
833
834 .mxchat-admin .wp-list-table th {
835 background: #f0f2f5;
836 color: #212121;
837 }
838
839 .mxchat-admin .wp-list-table tr:nth-child(even) {
840 background: #f9f9f9;
841 }
842
843 .mxchat-admin .mxchat-pro-banner {
844 background-color: #fff;
845 padding: 0px 15px;
846 margin-bottom: 20px;
847 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
848 position: relative; /* Required for the ::before pseudo-element */
849 }
850
851 .mxchat-admin .mxchat-pro-banner::before {
852 content: '';
853 position: absolute;
854 top: 0;
855 left: 0px;
856 width: 10px; /* Matches the border-left width in your original CSS */
857 height: 100%;
858 background-color: #212121; /* Dark bar color */
859 border-radius: 4px 0 0 4px; /* Rounded corners on the left */
860 }
861
862
863 .mxchat-admin .mxchat-pro-banner p {
864 margin: 0;
865 font-size: 16px;
866 color: #212121;
867 padding: 15px 10px;
868 }
869
870 .mxchat-admin .mxchat-pro-banner a {
871 color: #212121;
872 text-decoration: none;
873 font-weight: bold;
874 }
875
876 .mxchat-admin .mxchat-pro-banner a:hover {
877 text-decoration: underline;
878 }
879
880 /* Toggle Switch Styles */
881 .mxchat-admin .toggle-switch {
882 position: relative;
883 display: inline-block;
884 width: 60px;
885 height: 34px;
886 }
887
888 .mxchat-admin .toggle-switch input {
889 opacity: 0;
890 width: 0;
891 height: 0;
892 }
893
894 .mxchat-admin .slider {
895 position: absolute;
896 cursor: pointer;
897 top: 0;
898 left: 0;
899 right: 0;
900 bottom: 0;
901 background-color: #ccc;
902 transition: .4s;
903 border-radius: 34px;
904 }
905
906 .mxchat-admin .slider:before {
907 position: absolute;
908 content: "";
909 height: 26px;
910 width: 26px;
911 left: 4px;
912 bottom: 4px;
913 background-color: white;
914 transition: .4s;
915 border-radius: 50%;
916 }
917
918 .mxchat-admin input:checked + .slider {
919 background-color: #212121;
920 }
921
922 .mxchat-admin input:checked + .slider:before {
923 transform: translateX(26px);
924 }
925
926 /* Toggle Switch Label */
927 .mxchat-admin .toggle-switch-label {
928 display: flex;
929 align-items: center;
930 font-weight: 600;
931 color: #212121;
932 margin-bottom: 20px;
933 }
934
935 .mxchat-loading-text {
936 display: none;
937 margin-top: 10px;
938 color: #333;
939 }
940
941 .mxchat-spinner {
942 border: 8px solid #f3f3f3;
943 border-top: 8px solid #333;
944 border-radius: 50%;
945 width: 30px;
946 height: 30px;
947 animation: mxchat-spin 1s linear infinite;
948 display: flex;
949 justify-content: center;
950 align-items: center;
951 }
952
953 #mxchat-content-loading-text {
954 display: none;
955 margin-top: 10px;
956 color: #333;
957 }
958
959 .mxchat-content-spinner {
960 border: 8px solid #f3f3f3;
961 border-top: 8px solid #333;
962 border-radius: 50%;
963 width: 30px;
964 height: 30px;
965 animation: mxchat-spin 1s linear infinite;
966 display: flex;
967 justify-content: center;
968 align-items: center;
969 }
970
971
972 #mxchat-activation-spinner {
973 border: 4px solid #f3f3f3;
974 border-top: 4px solid #007cba; /* Match the WordPress primary button color */
975 border-radius: 50%;
976 width: 20px;
977 height: 20px;
978 animation: mxchat-spin 1s linear infinite;
979 display: inline-block;
980 vertical-align: middle;
981 margin-left: 10px;
982 }
983
984 @keyframes mxchat-spin {
985 0% { transform: rotate(0deg); }
986 100% { transform: rotate(360deg); }
987 }
988
989
990
991 .pro-feature-wrapper.active select,
992 .pro-feature-wrapper.active textarea {
993 opacity: 1; /* Fully opaque when active */
994 }
995
996 .pro-feature-wrapper.inactive select,
997 .pro-feature-wrapper.inactive textarea {
998 opacity: 0.5; /* Grayed out when inactive */
999 }
1000
1001 .pro-feature-overlay {
1002 position: absolute;
1003 top: 0;
1004 left: 0;
1005 width: 100%;
1006 height: 100%;
1007 display: flex;
1008 justify-content: center;
1009 align-items: center;
1010 pointer-events: none;
1011 }
1012
1013 .pro-feature-overlay img {
1014 max-width: 100px;
1015 pointer-events: auto; /* Allow clicking the image */
1016 }
1017
1018 .pro-feature-wrapper a {
1019 text-decoration: none;
1020 position: absolute;
1021 top: 0;
1022 left: 0;
1023 width: 100%;
1024 height: 100%;
1025 z-index: 10; /* Ensure the link is above everything else */
1026 }
1027
1028
1029 .mxchat-admin .chat-session {
1030 border: 1px solid #ddd;
1031 padding: 15px;
1032 width: calc(33.333% - 20px);
1033 box-sizing: border-box;
1034 background-color: #f9f9f9;
1035 display: flex;
1036 flex-direction: column;
1037 max-height: 500px;
1038 overflow: auto;
1039 }
1040
1041 .mxchat-admin .chat-message {
1042 border-bottom: 1px solid #eee;
1043 padding-bottom: 10px;
1044 margin-bottom: 10px;
1045 }
1046
1047 .mxchat-admin .chat-session h4 {
1048 margin-bottom: 15px;
1049 font-size: 1.1em;
1050 font-weight: 700;
1051 }
1052
1053 .mxchat-controls {
1054 display: flex;
1055 align-items: center;
1056 margin-bottom: 15px;
1057 }
1058
1059 .mxchat-select-all-label {
1060 margin-right: 15px;
1061 display: flex;
1062 align-items: center;
1063 }
1064
1065 .mxchat-select-all-label input[type="checkbox"] {
1066 margin-right: 5px;
1067 }
1068
1069 .mxchat-controls .delete-chats-button.button {
1070 padding: 6px 12px;
1071 font-size: 14px;
1072 background: #e74c3c;
1073 color: #fff;
1074 border-radius: 20px;
1075 font-weight: 700;
1076 text-decoration: none;
1077 transition: all .2s;
1078 justify-content: center;
1079 align-items: center;
1080 cursor: pointer;
1081 border: none;
1082 line-height: 1;
1083 }
1084
1085
1086 .mxchat-controls .delete-chats-button.button:hover {
1087 color: #fff;
1088 background-color: #c0392b;
1089 box-shadow: 4px 4px #a93226
1090 }
1091
1092
1093 .mxchat-license-status.active {
1094 color: green;
1095 font-weight: bold;
1096 }
1097
1098 .mxchat-license-status.inactive {
1099 color: red;
1100 font-weight: bold;
1101 }
1102 .mxchat-nav-tab-wrapper {
1103 margin: 0px 0px;
1104 padding: 0px 0px;
1105 display: flex;
1106 padding-left: 20px;
1107 }
1108
1109 .mxchat-nav-tab {
1110 font-size: 14px;
1111 padding: 10px 20px;
1112 margin-right: 10px;
1113 background: #f1f1f1;
1114 border: 1px solid #ddd;
1115 border-bottom: none;
1116 cursor: pointer;
1117 box-shadow: none;
1118 color: #333;
1119 text-decoration: none;
1120 }
1121
1122 .mxchat-nav-tab:hover, .mxchat-nav-tab:focus {
1123 background: #fff;
1124 color: #0073aa;
1125 box-shadow: none;
1126 }
1127
1128 .mxchat-nav-tab-active {
1129 background: #fff;
1130 border-bottom: 1px solid #fff;
1131 color: #0073aa;
1132 }
1133
1134
1135
1136 .mxchat-tab-content.active {
1137 display: block;
1138 }
1139
1140
1141 .mxchat-settings-section {
1142 padding: 20px 0;
1143 }
1144
1145 .mxchat-settings-section h2 {
1146 font-size: 1.2em;
1147 margin-bottom: 10px;
1148 color: #333;
1149 font-weight: bold;
1150 }
1151
1152 .section-divider {
1153 width: 95%;
1154 height: 2px;
1155 background-color: #e0e0e0;
1156 margin: 20px auto;
1157 border-radius: 1px;
1158 }
1159
1160 .form-table th {
1161 padding: 10px 0;
1162 vertical-align: top;
1163 width: 220px;
1164 }
1165
1166 .form-table td {
1167 padding: 10px 0;
1168 }
1169
1170
1171
1172
1173 .mxchat-table {
1174 width: 100%;
1175 table-layout: fixed;
1176 border-collapse: collapse;
1177 border: 1px solid #ccc; /* Adds a border around the table */
1178 }
1179
1180 /* Header styling to match theme */
1181 .mxchat-table th {
1182 background-color: #212121; /* Dark gray/black background */
1183 color: #fff; /* White text */
1184 font-weight: bold;
1185 padding: 10px;
1186 border-bottom: 3px solid #ccc; /* Thicker divider for the header */
1187 }
1188
1189 /* General cell styling */
1190 .mxchat-table th, .mxchat-table td {
1191 padding: 8px 10px;
1192 text-align: left;
1193 vertical-align: top; /* Aligns content to the top of the cell */
1194 border-bottom: 2px solid #ddd; /* Adds prominent dividers between rows */
1195 }
1196
1197 /* Alternate row background for better readability */
1198 .mxchat-table tbody tr:nth-child(odd) {
1199 background-color: #f9f9f9;
1200 }
1201
1202 .mxchat-table tbody tr:nth-child(even) {
1203 background-color: #fff;
1204 }
1205
1206 /* ID column should be small */
1207 .mxchat-table td:nth-child(1),
1208 .mxchat-table th:nth-child(1) {
1209 width: 15%; /* ID column */
1210 text-align: center;
1211 }
1212
1213 /* Content column should be wide */
1214 .mxchat-table td:nth-child(2),
1215 .mxchat-table th:nth-child(2) {
1216 width: 50%; /* Content column */
1217 }
1218
1219 /* URL column */
1220 .mxchat-table td:nth-child(3),
1221 .mxchat-table th:nth-child(3) {
1222 width: 20%; /* URL column */
1223 text-align: left;
1224 overflow-x: auto; /* Allow the URL to scroll horizontally if it's too long */
1225 white-space: nowrap;
1226 }
1227
1228 /* Actions column */
1229 .mxchat-table td:nth-child(4),
1230 .mxchat-table th:nth-child(4) {
1231 width: 15%; /* Edit/Delete column */
1232 text-align: center;
1233 }
1234
1235 .mxchat-intents-table {
1236 width: 100%;
1237 table-layout: fixed;
1238 border-collapse: collapse;
1239 border: 1px solid #ccc;
1240 }
1241
1242 .mxchat-intents-table th {
1243 background-color: #212121;
1244 color: #fff;
1245 font-weight: bold;
1246 padding: 10px;
1247 border-bottom: 3px solid #ccc;
1248 }
1249
1250 .mxchat-intents-table th,
1251 .mxchat-intents-table td {
1252 padding: 8px 10px;
1253 text-align: left;
1254 vertical-align: top;
1255 border-bottom: 2px solid #ddd;
1256 }
1257
1258 .mxchat-intents-table tbody tr:nth-child(odd) {
1259 background-color: #f9f9f9;
1260 }
1261
1262 .mxchat-intents-table tbody tr:nth-child(even) {
1263 background-color: #fff;
1264 }
1265
1266 /* Intent Label column */
1267 .mxchat-intents-table td:nth-child(1),
1268 .mxchat-intents-table th:nth-child(1) {
1269 width: 20%;
1270 }
1271
1272 /* Phrases column */
1273 .mxchat-intents-table td:nth-child(2),
1274 .mxchat-intents-table th:nth-child(2) {
1275 width: 30%;
1276 overflow-x: auto;
1277 }
1278
1279 /* Callback Function column */
1280 .mxchat-intents-table td:nth-child(3),
1281 .mxchat-intents-table th:nth-child(3) {
1282 width: 20%;
1283 }
1284
1285 /* Similarity Threshold column */
1286 .mxchat-intents-table td:nth-child(4),
1287 .mxchat-intents-table th:nth-child(4) {
1288 width: 15%;
1289 text-align: center;
1290 }
1291
1292 /* Actions column */
1293 .mxchat-intents-table td:nth-child(5),
1294 .mxchat-intents-table th:nth-child(5) {
1295 width: 15%;
1296 text-align: center;
1297 }
1298
1299 /* Style the threshold range slider */
1300 .mxchat-intents-threshold-form input[type="range"] {
1301 width: 100%;
1302 margin: 5px 0;
1303 }
1304
1305 .mxchat-intents-threshold-form button {
1306 margin-top: 5px;
1307 }
1308
1309
1310
1311 /* Edit content textarea styling */
1312 .content-edit {
1313 width: 100%; /* Make textarea fill the column */
1314 height: 100px; /* Adjust height as needed */
1315 box-sizing: border-box; /* Ensure padding and border are included in the width/height */
1316 }
1317
1318 /* Button styling to match theme */
1319 .mxchat-table td .button {
1320 display: inline-block;
1321 margin-right: 5px;
1322 background-color: #212121;
1323 color: #fff;
1324 border: none;
1325 padding: 5px 10px;
1326 text-decoration: none;
1327 border-radius: 3px;
1328 cursor: pointer;
1329 box-shadow: 4px 4px #14141499;
1330 }
1331
1332 /* Hover state */
1333 .mxchat-table td .button:hover {
1334 display: inline-block;
1335 margin-right: 5px;
1336 background-color: #444;
1337 color: #fff;
1338 border: none;
1339 padding: 5px 10px;
1340 text-decoration: none;
1341 border-radius: 3px;
1342 cursor: pointer;
1343 box-shadow: 4px 4px #14141499;
1344 }
1345
1346 /* Active state */
1347 .mxchat-table td .button:active {
1348 display: inline-block;
1349 margin-right: 5px;
1350 background-color: #444;
1351 color: #fff;
1352 border: none;
1353 padding: 5px 10px;
1354 text-decoration: none;
1355 border-radius: 3px;
1356 cursor: pointer;
1357 box-shadow: 4px 4px #14141499;
1358 }
1359
1360 /* Focus state */
1361 .mxchat-table td .button:focus {
1362 display: inline-block;
1363 margin-right: 5px;
1364 background-color: #444;
1365 color: #fff;
1366 border: none;
1367 padding: 5px 10px;
1368 text-decoration: none;
1369 border-radius: 3px;
1370 cursor: pointer;
1371 box-shadow: 4px 4px #14141499;
1372 outline: none; /* Removes default outline */
1373 }
1374
1375
1376
1377 /* Responsive Design */
1378 @media (max-width: 1024px) {
1379 .mxchat-admin .mxchat-grid-container {
1380 grid-template-columns: 1fr;
1381 }
1382
1383 .mxchat-admin .mxchat-grid-item.full-width {
1384 grid-column: span 1;
1385 }
1386
1387 .mxchat-admin .chat-session {
1388 width: calc(100% - 0px);
1389 }
1390
1391 .mxchat-nav-tab {
1392 padding: 10px 12px;
1393 }
1394
1395 .mxchat-admin .mxchat-nav-tab-wrapper,
1396 .mxchat-admin .wrap h2.mxchat-nav-tab-wrapper,
1397 .mxchat-admin h1.mxchat-nav-tab-wrapper {
1398 border-bottom: 0;
1399 justify-content: space-evenly;
1400 display: flex;
1401 }
1402
1403 .mxchat-admin .mxchat-nav-tab-wrapper .mxchat-nav-tab {
1404 margin: 0;
1405 }
1406 .mxchat-nav-tab-wrapper {
1407 padding-left: 0px;
1408 }
1409
1410 .mxchat-session {
1411 width: 100%;
1412 }
1413
1414
1415 }
1416
1417
1418 /* Basic responsive table styles */
1419 @media screen and (max-width: 782px) {
1420 .mxchat-intents-table {
1421 display: block;
1422 width: 100%;
1423 }
1424
1425 .mxchat-intents-table thead {
1426 display: none; /* Hide header on mobile */
1427 }
1428
1429 .mxchat-intents-table tbody,
1430 .mxchat-intents-table tr,
1431 .mxchat-intents-table td {
1432 display: block;
1433 width: 100%;
1434 }
1435
1436 .mxchat-intents-table tr {
1437 margin-bottom: 1.5rem;
1438 background: #fff;
1439 padding: 1rem;
1440 border-radius: 8px;
1441 box-shadow: 0 1px 3px rgba(0,0,0,0.1);
1442 max-width: 300px;
1443 }
1444
1445 /* Add labels before content */
1446 .mxchat-intents-table td:before {
1447 content: attr(data-label);
1448 font-weight: 600;
1449 display: block;
1450 margin-bottom: 0.5rem;
1451 color: #1d2327;
1452 }
1453
1454 /* Spacing between cells */
1455 .mxchat-intents-table td {
1456 padding: 0.5rem 0;
1457 border: none;
1458 }
1459
1460 /* Handle the slider container */
1461 .mxchat-intents-table td:nth-child(4) {
1462 margin: 1rem 0;
1463 }
1464
1465 /* Style the range input */
1466 .mxchat-intents-table input[type="range"] {
1467 width: 100%;
1468 margin: 0.5rem 0;
1469 }
1470
1471 /* Style the actions column */
1472 .mxchat-intents-table td:last-child {
1473 display: flex;
1474 flex-direction: column;
1475 gap: 0.5rem;
1476 margin-top: 1rem;
1477 }
1478
1479 /* Make buttons full width on mobile */
1480 .mxchat-intents-table .mxchat-save-button,
1481 .mxchat-intents-table .mxchat-edit-button,
1482 .mxchat-intents-table .mxchat-delete-all {
1483 width: 100%;
1484 margin: 0;
1485 }
1486
1487 /* Adjust output display */
1488 .mxchat-intents-table output {
1489 display: block;
1490 text-align: center;
1491 margin-top: 0.25rem;
1492 }
1493
1494 /* Additional spacing for forms */
1495 .mxchat-intents-table form {
1496 margin: 0;
1497 }
1498 }
1499
1500 /* Stats Grid */
1501 .mxchat-stats-grid {
1502 display: grid;
1503 grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
1504 gap: 20px;
1505 margin-bottom: 30px;
1506 margin-top: 20px;
1507 }
1508
1509 .mxchat-stat-card {
1510 background: white;
1511 padding: 20px;
1512 border-radius: 10px;
1513 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1514 display: flex;
1515 align-items: center;
1516 gap: 15px;
1517 }
1518
1519 .stat-icon {
1520 font-size: 24px;
1521 background: #f0f0f1;
1522 width: 50px;
1523 height: 50px;
1524 display: flex;
1525 align-items: center;
1526 justify-content: center;
1527 border-radius: 10px;
1528 }
1529
1530 .stat-content {
1531 display: flex;
1532 flex-direction: column;
1533 }
1534
1535 .stat-value {
1536 font-size: 24px;
1537 font-weight: bold;
1538 color: #1d2327;
1539 }
1540
1541 .stat-label {
1542 color: #50575e;
1543 font-size: 14px;
1544 }
1545
1546 /* Controls Section */
1547 .mxchat-controls-wrapper {
1548 background: white;
1549 padding: 20px;
1550 border-radius: 10px;
1551 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1552 margin-bottom: 20px;
1553 display: flex;
1554 justify-content: space-between;
1555 align-items: center;
1556 flex-wrap: wrap;
1557 gap: 15px;
1558 }
1559
1560 .mxchat-controls {
1561 display: flex;
1562 gap: 15px;
1563 align-items: center;
1564 }
1565
1566 .mxchat-search-box input {
1567 padding: 8px 12px;
1568 border-radius: 5px;
1569 border: 1px solid #dcdcde;
1570 width: 300px;
1571 }
1572
1573 /* Select/Delete Buttons */
1574 .mxchat-select-button {
1575 display: flex;
1576 align-items: center;
1577 gap: 8px;
1578 padding: 8px 16px;
1579 background: #fff;
1580 border: 1px solid #0073aa;
1581 border-radius: 4px;
1582 color: #0073aa;
1583 cursor: pointer;
1584 transition: all 0.2s ease;
1585 }
1586
1587 .mxchat-select-button:hover {
1588 background: #f0f7ff;
1589 }
1590
1591 .mxchat-select-button.selected {
1592 background: #0073aa;
1593 color: #fff;
1594 }
1595
1596 .mxchat-select-button .dashicons {
1597 font-size: 18px;
1598 width: 18px;
1599 height: 18px;
1600 transition: transform 0.2s ease;
1601 }
1602
1603 .mxchat-select-button.selected .dashicons {
1604 transform: scale(1.2);
1605 }
1606
1607 .delete-chats-button {
1608 display: flex !important;
1609 align-items: center;
1610 gap: 8px;
1611 background: #dc3232 !important;
1612 color: #fff !important;
1613 border: none !important;
1614 padding: 8px 16px !important;
1615 border-radius: 4px !important;
1616 cursor: pointer;
1617 transition: all 0.2s ease !important;
1618 }
1619
1620 .delete-chats-button:hover {
1621 background: #b32d2e !important;
1622 }
1623
1624 .delete-chats-button .dashicons {
1625 font-size: 18px;
1626 width: 18px;
1627 height: 18px;
1628 }
1629
1630 /* Transcript Grid */
1631 .mxchat-transcript {
1632 display: grid;
1633 grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
1634 gap: 20px;
1635 }
1636
1637 /* Session Cards */
1638 .mxchat-session {
1639 background: white;
1640 border-radius: 10px;
1641 box-shadow: 0 2px 4px rgba(0,0,0,0.1);
1642 overflow: hidden;
1643 border: 1px solid #dcdcde;
1644 display: flex;
1645 flex-direction: column;
1646 }
1647
1648 .mxchat-session-header {
1649 background: #f0f0f1;
1650 padding: 15px;
1651 border-bottom: 1px solid #dcdcde;
1652 }
1653
1654 .mxchat-messages {
1655 padding: 15px;
1656 max-height: 400px;
1657 overflow-y: auto;
1658 flex-grow: 1;
1659 overflow-x: hidden;
1660 }
1661
1662 /* Message Styling */
1663 .mxchat-message {
1664 margin-bottom: 15px;
1665 max-width: 85%;
1666 }
1667
1668 .mxchat-message.user-message {
1669 margin-left: auto;
1670 }
1671
1672 .mxchat-message-content {
1673 padding: 10px 15px;
1674 border-radius: 15px;
1675 margin: 5px 0;
1676 }
1677
1678 .user-message .mxchat-message-content {
1679 background: #0073aa;
1680 color: white;
1681 border-radius: 18px 0 18px 18px;
1682 }
1683
1684 .bot-message .mxchat-message-content {
1685 background: #f0f0f1;
1686 border-radius: 0 18px 18px;
1687 }
1688
1689 .mxchat-timestamp {
1690 font-size: 12px;
1691 color: #50575e;
1692 }
1693
1694 /* Responsive Design */
1695 @media (max-width: 782px) {
1696 .mxchat-controls-wrapper {
1697 flex-direction: column;
1698 align-items: stretch;
1699 }
1700
1701 .mxchat-controls {
1702 flex-direction: column;
1703 width: 100%;
1704 }
1705
1706 .mxchat-search-box input {
1707 width: 100%;
1708 }
1709
1710 .mxchat-transcript {
1711 grid-template-columns: 1fr;
1712 }
1713
1714 .mxchat-select-button,
1715 .delete-chats-button {
1716 width: 100%;
1717 justify-content: center;
1718 }
1719 }
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736 /* Form Table Layout */
1737 .form-table {
1738 border-collapse: separate;
1739 border-spacing: 0 20px;
1740 margin-top: -20px; /* Compensate for border-spacing */
1741 width: 100%;
1742 }
1743
1744 .form-table th {
1745 padding: 20px 10px 20px 0;
1746 width: 200px;
1747 vertical-align: top;
1748 font-weight: 600;
1749 color: #1d2327;
1750 }
1751
1752 .form-table td {
1753 padding: 15px 10px;
1754 vertical-align: top;
1755 }
1756
1757 /* Input Styling */
1758 .form-table input[type="text"],
1759 .form-table input[type="password"],
1760 .form-table textarea,
1761 .form-table select {
1762 width: 100%;
1763 max-width: 500px;
1764 padding: 8px 12px;
1765 border: 1px solid #dcdcde;
1766 border-radius: 4px;
1767 background-color: #fff;
1768 transition: all 0.2s ease;
1769 }
1770
1771 .form-table input[type="text"]:focus,
1772 .form-table input[type="password"]:focus,
1773 .form-table textarea:focus,
1774 .form-table select:focus {
1775 border-color: #2271b1;
1776 box-shadow: 0 0 0 1px #2271b1;
1777 outline: none;
1778 }
1779
1780 /* Range Input Styling */
1781 input[type="range"] {
1782 -webkit-appearance: none;
1783 width: 200px;
1784 height: 4px;
1785 background: #dcdcde;
1786 border-radius: 2px;
1787 vertical-align: middle;
1788 }
1789
1790 input[type="range"]::-webkit-slider-thumb {
1791 -webkit-appearance: none;
1792 height: 16px;
1793 width: 16px;
1794 border-radius: 50%;
1795 background: #2271b1;
1796 cursor: pointer;
1797 transition: all 0.2s ease;
1798 }
1799
1800 input[type="range"]::-webkit-slider-thumb:hover {
1801 transform: scale(1.1);
1802 }
1803
1804 #mxchat_threshold_value {
1805 display: inline-block;
1806 padding: 4px 8px;
1807 background: #2271b1;
1808 color: white;
1809 border-radius: 4px;
1810 margin-left: 10px;
1811 font-size: 12px;
1812 min-width: 30px;
1813 text-align: center;
1814 }
1815
1816 /* Toggle Switch */
1817 .toggle-switch {
1818 position: relative;
1819 display: inline-block;
1820 width: 50px;
1821 height: 24px;
1822 }
1823
1824 .toggle-switch input {
1825 opacity: 0;
1826 width: 0;
1827 height: 0;
1828 }
1829
1830 .slider {
1831 position: absolute;
1832 cursor: pointer;
1833 top: 0;
1834 left: 0;
1835 right: 0;
1836 bottom: 0;
1837 background-color: #ccc;
1838 transition: .4s;
1839 border-radius: 24px;
1840 }
1841
1842 .slider:before {
1843 position: absolute;
1844 content: "";
1845 height: 18px;
1846 width: 18px;
1847 left: 3px;
1848 bottom: 3px;
1849 background-color: white;
1850 transition: .4s;
1851 border-radius: 50%;
1852 }
1853
1854 input:checked + .slider {
1855 background-color: #2271b1;
1856 }
1857
1858 input:checked + .slider:before {
1859 transform: translateX(26px);
1860 }
1861
1862 /* Description Text */
1863 .description {
1864 margin-top: 8px;
1865 color: #646970;
1866 font-style: italic;
1867 font-size: 13px;
1868 }
1869
1870 /* Show/Hide Password Button */
1871 button[id^="toggleApiKey"],
1872 button[id^="toggleXaiKey"],
1873 button[id^="toggleClaudeKey"] {
1874 margin-left: 10px;
1875 padding: 4px 12px;
1876 background: #f0f0f1;
1877 border: 1px solid #c3c4c7;
1878 border-radius: 3px;
1879 cursor: pointer;
1880 transition: all 0.2s ease;
1881 }
1882
1883 button[id^="toggleApiKey"]:hover,
1884 button[id^="toggleXaiKey"]:hover,
1885 button[id^="toggleClaudeKey"]:hover {
1886 background: #e5e5e5;
1887 }
1888
1889 /* Additional Questions Section */
1890 .mxchat-question-row {
1891 display: flex;
1892 gap: 10px;
1893 margin-bottom: 10px;
1894 align-items: center;
1895 }
1896
1897 .mxchat-question-row input {
1898 flex: 1;
1899 }
1900
1901 .mxchat-remove-question,
1902 .mxchat-add-question {
1903 padding: 4px 12px !important;
1904 height: auto !important;
1905 }
1906
1907 .mxchat-remove-question {
1908 background: #dc3232 !important;
1909 color: white !important;
1910 border: none !important;
1911 }
1912
1913 .mxchat-add-question {
1914 background: #2271b1 !important;
1915 color: white !important;
1916 border: none !important;
1917 margin-top: 10px;
1918 }
1919
1920 /* Pro Feature Wrapper */
1921 .pro-feature-wrapper {
1922 position: relative;
1923 }
1924
1925 .pro-feature-wrapper.inactive {
1926 opacity: 0.7;
1927 }
1928
1929 /* Responsive Design */
1930 @media screen and (max-width: 782px) {
1931 .form-table td {
1932 padding-left: 0;
1933 }
1934
1935 .form-table input[type="text"],
1936 .form-table input[type="password"],
1937 .form-table textarea,
1938 .form-table select {
1939 max-width: 100%;
1940 }
1941
1942 .form-table th {
1943 padding-bottom: 5px;
1944 }
1945
1946 .mxchat-question-row {
1947 flex-direction: column;
1948 gap: 5px;
1949 }
1950
1951 input[type="range"] {
1952 width: 100%;
1953 max-width: 300px;
1954 }
1955 }
1956
1957 /* Section Headers */
1958 .mxchat-tab-content h2 {
1959 font-size: 1.5em;
1960 padding-bottom: 15px;
1961 margin-bottom: 25px;
1962 border-bottom: 2px solid #f0f0f1;
1963 color: #1d2327;
1964 }
1965
1966 /* Grouped Settings */
1967 .form-table tr:not(:last-child) {
1968 border-bottom: 1px solid #f0f0f1;
1969 }
1970
1971 /* Show/Hide Button - Universal Selector for all toggle buttons */
1972 button[id^="toggle"] {
1973 padding: 8px 16px;
1974 background: #f0f0f1;
1975 border: 1px solid #dcdcde;
1976 border-radius: 4px;
1977 cursor: pointer;
1978 color: #1d2327;
1979 font-size: 13px;
1980 font-weight: 500;
1981 transition: all 0.2s ease;
1982 white-space: nowrap;
1983 height: 36px;
1984 min-width: 80px;
1985 margin-left: 10px;
1986 }
1987
1988 /* Specific selectors for backward compatibility */
1989 button[id^="toggleApiKey"],
1990 button[id^="toggleXaiApiKey"],
1991 button[id^="toggleClaudeApiKey"],
1992 button[id^="toggleWooCommerceSecretVisibility"],
1993 button[id^="toggleBraveApiKeyVisibility"],
1994 button[id^="toggleLoopsApiKeyVisibility"],
1995 button[id^="toggleWebhookUrlVisibility"],
1996 button[id^="toggleSecretKeyVisibility"],
1997 button[id^="toggleBotTokenVisibility"] {
1998 padding: 8px 16px;
1999 background: #f0f0f1;
2000 border: 1px solid #dcdcde;
2001 border-radius: 4px;
2002 cursor: pointer;
2003 color: #1d2327;
2004 font-size: 13px;
2005 font-weight: 500;
2006 transition: all 0.2s ease;
2007 white-space: nowrap;
2008 height: 36px;
2009 min-width: 80px;
2010 margin-left: 10px;
2011 }
2012
2013 /* Hover state for all toggle buttons */
2014 button[id^="toggle"]:hover {
2015 background: #e5e5e5;
2016 border-color: #c3c4c7;
2017 }
2018
2019 /* Active state for all toggle buttons */
2020 button[id^="toggle"]:active {
2021 background: #dcdcde;
2022 border-color: #c3c4c7;
2023 transform: translateY(1px);
2024 }
2025
2026 /* Responsive Design */
2027 @media screen and (max-width: 782px) {
2028 .pro-feature-wrapper {
2029 flex-wrap: wrap;
2030 }
2031
2032 /* Make all toggle buttons full width on mobile */
2033 button[id^="toggle"] {
2034 width: 100%;
2035 margin-left: 0;
2036 margin-top: 10px;
2037 }
2038 .mxchat-remove-question {
2039 width: 100%;
2040 }
2041 }
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053 .mxchat-flex-section h2 {
2054 margin: 0 0 1rem;
2055 padding-bottom: 0.5rem;
2056 border-bottom: 1px solid #eee;
2057 }
2058
2059 .mxchat-sync-settings,
2060 .mxchat-import-section {
2061 flex: 1;
2062 }
2063
2064 .mxchat-toggle-group {
2065 display: flex;
2066 flex-direction: column;
2067 gap: 0.75rem;
2068 }
2069
2070 .mxchat-toggle-container {
2071 display: flex;
2072 align-items: center;
2073 gap: 0.75rem;
2074 }
2075
2076 .mxchat-toggle-switch {
2077 position: relative;
2078 display: inline-block;
2079 width: 44px;
2080 height: 22px;
2081 }
2082
2083 .mxchat-toggle-slider {
2084 position: absolute;
2085 cursor: pointer;
2086 top: 0;
2087 left: 0;
2088 right: 0;
2089 bottom: 0;
2090 background-color: #ccc;
2091 transition: .4s;
2092 border-radius: 22px;
2093 }
2094
2095 .mxchat-toggle-slider:before {
2096 position: absolute;
2097 content: "";
2098 height: 18px;
2099 width: 18px;
2100 left: 2px;
2101 bottom: 2px;
2102 background-color: white;
2103 transition: .4s;
2104 border-radius: 50%;
2105 }
2106
2107 input:checked + .mxchat-toggle-slider {
2108 background-color: #2196F3;
2109 }
2110
2111 input:checked + .mxchat-toggle-slider:before {
2112 transform: translateX(22px);
2113 }
2114
2115 .mxchat-url-input-group {
2116 display: flex;
2117 gap: 0.5rem;
2118 }
2119
2120 .mxchat-url-input-group input[type="url"] {
2121 flex: 1;
2122 }
2123
2124 .mxchat-status-section {
2125 margin-top: 1rem;
2126 padding-top: 1rem;
2127 border-top: 1px solid #eee;
2128 }
2129
2130 .mxchat-process-status {
2131 background: #f8f9fa;
2132 border-radius: 4px;
2133 padding: 1rem;
2134 margin-bottom: 1rem;
2135 }
2136
2137 .status-header {
2138 display: flex;
2139 justify-content: space-between;
2140 align-items: center;
2141 margin-bottom: 0.5rem;
2142 }
2143
2144 .status-header h4 {
2145 margin: 0;
2146 }
2147
2148 .progress-bar {
2149 background: #eee;
2150 border-radius: 4px;
2151 height: 8px;
2152 margin-bottom: 0.5rem;
2153 }
2154
2155 .progress {
2156 background: #2196F3;
2157 height: 100%;
2158 border-radius: 4px;
2159 transition: width 0.3s ease;
2160 }
2161
2162 .status-details {
2163 display: flex;
2164 justify-content: space-between;
2165 font-size: 0.9em;
2166 color: #666;
2167 }
2168
2169 .save-button-settings {
2170 background: #3498db !important;
2171 color: #fff !important;
2172 border-radius: 20px !important;
2173 padding: 0px 20px !important;
2174 font-size: 1rem !important;
2175 font-weight: 700 !important;
2176 text-decoration: none !important;
2177 transition: all .2s !important;
2178 box-shadow: 4px 4px #2980b9 !important;
2179 cursor: pointer !important;
2180 margin-top: 10px !important;
2181 border: none !important;
2182 margin-bottom: 10px !important;
2183 }
2184
2185 .mxchat-import-description {
2186 margin-bottom: 1rem;
2187 }
2188
2189 .description-text {
2190 margin: 0 0 0.5rem;
2191 color: #666;
2192 }
2193
2194 .import-options {
2195 margin: 0 0 1rem;
2196 padding-left: 1.5rem;
2197 }
2198
2199 .import-options li {
2200 margin-bottom: 0.25rem;
2201 color: #666;
2202 }
2203
2204 .import-options strong {
2205 color: #333;
2206 }
2207
2208 .import-section {
2209 margin-top: 50px;
2210 }
2211
2212
2213 /* Mobile Responsiveness */
2214 @media screen and (max-width: 782px) {
2215 .mxchat-settings-row {
2216 flex-direction: column;
2217 }
2218 .mxchat-url-input-group input[type="submit"] {
2219 width: 100%;
2220 }
2221 }
2222
2223
2224
2225
2226
2227 /* Feedback container for saving indicator */
2228 .feedback-container {
2229 display: inline-flex;
2230 align-items: right;
2231 margin-left: 10px;
2232 position: relative;
2233 z-index: 2;
2234 }
2235
2236 /* Spinner animation */
2237 .saving-spinner {
2238 width: 16px;
2239 height: 16px;
2240 border: 2px solid #ccc;
2241 border-top-color: #007cba; /* WordPress blue */
2242 border-radius: 50%;
2243 animation: spin 0.6s linear infinite;
2244 }
2245
2246 /* Checkmark icon */
2247 .success-icon {
2248 display: none;
2249 color: #28a745; /* Green for success */
2250 font-size: 16px;
2251 font-weight: bold;
2252 margin-left: 5px;
2253 animation: fadeInOut 1.5s ease-in-out forwards;
2254 }
2255
2256 /* Spinner animation keyframes */
2257 @keyframes spin {
2258 to {
2259 transform: rotate(360deg);
2260 }
2261 }
2262
2263 /* Success icon fade animation */
2264 @keyframes fadeInOut {
2265 0% {
2266 opacity: 0;
2267 }
2268 20% {
2269 opacity: 1;
2270 }
2271 80% {
2272 opacity: 1;
2273 }
2274 100% {
2275 opacity: 0;
2276 }
2277 }
2278
2279
2280 .slider-container {
2281 display: flex;
2282 align-items: center;
2283 gap: 10px;
2284 margin-bottom: 10px;
2285 }
2286
2287 .range-slider {
2288 flex-grow: 1;
2289 max-width: 300px;
2290 }
2291
2292 .range-value {
2293 min-width: 30px;
2294 text-align: center;
2295 }
2296
2297 /* Optional: Style the range input */
2298 input[type="range"] {
2299 -webkit-appearance: none;
2300 width: 100%;
2301 height: 8px;
2302 background: #ddd;
2303 border-radius: 4px;
2304 outline: none;
2305 }
2306
2307 input[type="range"]::-webkit-slider-thumb {
2308 -webkit-appearance: none;
2309 width: 16px;
2310 height: 16px;
2311 background: #2271b1;
2312 border-radius: 50%;
2313 cursor: pointer;
2314 }
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332 /* Container Styles */
2333 .mxchat-import-container {
2334 background: #fff;
2335 padding: 20px;
2336 border: 1px solid #e1e1e1;
2337 border-radius: 10px;
2338 box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
2339 }
2340
2341
2342
2343 /* Tabs Navigation */
2344 .mxchat-tabs {
2345 display: flex;
2346 border-bottom: 2px solid #e1e1e1;
2347 margin-bottom: 20px;
2348 }
2349 .mxchat-tab-button {
2350 padding: 10px 20px;
2351 cursor: pointer;
2352 background: transparent;
2353 border: none;
2354 border-bottom: 2px solid transparent;
2355 transition: all 0.3s ease;
2356 font-size: 16px;
2357 color: #333;
2358 }
2359 .mxchat-tab-button:hover,
2360 .mxchat-tab-button:focus {
2361 background: #f9f9f9;
2362 }
2363 .mxchat-tab-button.active {
2364 border-bottom: 2px solid #0073aa;
2365 font-weight: bold;
2366 color: #0073aa;
2367 }
2368
2369
2370
2371 /* Flex Container for Default DB Tab */
2372 .mxchat-flex-container {
2373 display: flex;
2374 gap: 20px;
2375 flex-wrap: wrap;
2376 }
2377 .mxchat-sync-column,
2378 .mxchat-import-column {
2379 flex: 1;
2380 min-width: 300px;
2381 }
2382
2383 /* Section Headings and Descriptions */
2384 .mxchat-section h3 {
2385 font-size: 18px;
2386 margin-bottom: 10px;
2387 color: #0073aa;
2388 }
2389 .mxchat-description {
2390 font-size: 14px;
2391 margin-bottom: 15px;
2392 color: #555;
2393 }
2394
2395 /* Toggle Switches */
2396 .mxchat-toggle-container {
2397 display: flex;
2398 align-items: center;
2399 margin-bottom: 15px;
2400 }
2401 .mxchat-toggle-switch {
2402 position: relative;
2403 display: inline-block;
2404 width: 50px;
2405 height: 24px;
2406 margin-right: 10px;
2407 }
2408 .mxchat-toggle-switch input {
2409 opacity: 0;
2410 width: 0;
2411 height: 0;
2412 }
2413 .mxchat-toggle-slider {
2414 position: absolute;
2415 cursor: pointer;
2416 top: 0;
2417 left: 0;
2418 right: 0;
2419 bottom: 0;
2420 background-color: #ccc;
2421 transition: 0.4s;
2422 border-radius: 24px;
2423 }
2424 .mxchat-toggle-switch input:checked + .mxchat-toggle-slider {
2425 background-color: #212121;
2426 }
2427 .mxchat-toggle-slider:before {
2428 position: absolute;
2429 content: "";
2430 height: 18px;
2431 width: 18px;
2432 left: 3px;
2433 bottom: 3px;
2434 background-color: white;
2435 transition: 0.4s;
2436 border-radius: 50%;
2437 }
2438 .mxchat-toggle-switch input:checked + .mxchat-toggle-slider:before {
2439 transform: translateX(26px);
2440 }
2441 .mxchat-toggle-label {
2442 font-size: 14px;
2443 color: #333;
2444 }
2445
2446 /* Form Groups */
2447 .mxchat-form-group {
2448 margin-bottom: 15px;
2449 }
2450 .mxchat-form-group label {
2451 display: block;
2452 margin-bottom: 5px;
2453 font-weight: bold;
2454 color: #333;
2455 }
2456
2457 .mxchat-form-group .description {
2458 font-size: 12px;
2459 color: #777;
2460 }
2461
2462 /* URL and Pinecone Input Groups */
2463 .mxchat-url-input-group,
2464 .mxchat-pinecone-input-group {
2465 display: flex;
2466 gap: 0px;
2467 margin-bottom: 15px;
2468 }
2469 .mxchat-url-input-group input[type="url"],
2470 .mxchat-pinecone-input-group input[type="url"] {
2471 flex: 1;
2472 padding: 8px;
2473 border: 1px solid #ccc;
2474 border-radius: 4px 0px 0px 4px;
2475 }
2476 .mxchat-url-input-group input[type="submit"],
2477 .mxchat-pinecone-input-group input[type="submit"] {
2478 padding: 8px 16px;
2479 background-color: #0073aa;
2480 color: #fff;
2481 border: none;
2482 border-radius: 4px;
2483 cursor: pointer;
2484 transition: background-color 0.3s ease;
2485 }
2486 .mxchat-url-input-group input[type="submit"]:hover,
2487 .mxchat-pinecone-input-group input[type="submit"]:hover {
2488 background-color: #005177;
2489 }
2490
2491 /* Submit Wrapper */
2492 .mxchat-submit-wrapper {
2493 margin-top: 20px;
2494 }
2495
2496 /* Import & Pinecone Options List */
2497 .import-options,
2498 .pinecone-options {
2499 margin: 10px 0 15px 20px;
2500 color: #555;
2501 }
2502 .import-options li,
2503 .pinecone-options li {
2504 margin-bottom: 5px;
2505 }
2506
2507 /* Spinner Styles */
2508 .mxchat-spinner,
2509 .mxchat-pinecone-spinner {
2510 border: 4px solid #f3f3f3;
2511 border-top: 4px solid #0073aa;
2512 border-radius: 50%;
2513 width: 30px;
2514 height: 30px;
2515 animation: spin 1s linear infinite;
2516 margin: 10px auto;
2517 }
2518 @keyframes spin {
2519 0% { transform: rotate(0deg); }
2520 100% { transform: rotate(360deg); }
2521 }
2522
2523 /* Processing Status Messages */
2524 .mxchat-process-status,
2525 .mxchat-pinecone-status {
2526 border: 1px solid #0073aa;
2527 background-color: #f1f8ff;
2528 padding: 10px;
2529 border-radius: 4px;
2530 margin-top: 15px;
2531 }
2532 .mxchat-process-status h3,
2533 .mxchat-pinecone-status h3 {
2534 margin-top: 0;
2535 font-size: 16px;
2536 color: #0073aa;
2537 }
2538 .mxchat-process-status p,
2539 .mxchat-pinecone-status p {
2540 margin: 5px 0;
2541 font-size: 14px;
2542 color: #333;
2543 }
2544
2545 /* Responsive Adjustments */
2546 @media (max-width: 768px) {
2547 .mxchat-flex-container {
2548 flex-direction: column;
2549 }
2550 }
2551
2552
2553
2554 .button.button-primary.pinecone-submit {
2555 box-shadow: none;
2556 border-radius: 0px 4px 4px 0px;
2557 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
2558 margin-bottom: 0px;
2559 }
2560
2561 .button.button-primary.pinecone-submit:hover {
2562 opacity: .8;
2563 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
2564
2565 }
2566
2567 /* Pro Hero Section */
2568 body.wp-admin .mxchat-pro-hero {
2569 text-align: center;
2570 padding: 3.5rem 2rem;
2571 position: relative;
2572 background: #212121;
2573 border-bottom: 4px solid transparent;
2574 border-image: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
2575 border-image-slice: 1;
2576 }
2577
2578 body.wp-admin .mxchat-pro-hero::before {
2579 content: '';
2580 position: absolute;
2581 top: 0;
2582 left: 0;
2583 width: 100%;
2584 height: 100%;
2585 background: radial-gradient(
2586 circle at center,
2587 rgba(250, 115, 230, 0.08) 0%,
2588 rgba(120, 115, 245, 0.08) 50%,
2589 rgba(58, 201, 209, 0.08) 100%
2590 );
2591 z-index: 1;
2592 }
2593
2594 body.wp-admin .mxchat-pro-hero::after {
2595 content: '';
2596 position: absolute;
2597 bottom: -20px;
2598 left: 0;
2599 width: 100%;
2600 height: 20px;
2601 background: linear-gradient(180deg, rgba(33, 33, 33, 0.2) 0%, transparent 100%);
2602 z-index: 2;
2603 }
2604
2605 body.wp-admin .pro-title {
2606 font-size: 3.5rem;
2607 margin: 0 0 1.5rem;
2608 line-height: 1.2;
2609 color: white;
2610 position: relative;
2611 z-index: 2;
2612 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
2613 }
2614
2615 body.wp-admin .pro-gradient-text {
2616 font-weight: 700;
2617 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
2618 -webkit-background-clip: text;
2619 -webkit-text-fill-color: transparent;
2620 display: inline-block;
2621 }
2622
2623 body.wp-admin .pro-subtitle {
2624 font-size: 1.25rem;
2625 color: rgba(255, 255, 255, 0.9);
2626 max-width: 600px;
2627 margin: 0 auto;
2628 position: relative;
2629 z-index: 2;
2630 line-height: 1.6;
2631 }
2632
2633 /* Responsive Design */
2634 @media (max-width: 768px) {
2635 body.wp-admin .pro-title {
2636 font-size: 2.1rem;
2637 margin-bottom: 1rem;
2638 }
2639
2640 body.wp-admin .mxchat-pro-hero {
2641 padding: 2.5rem 1.5rem;
2642 }
2643
2644 body.wp-admin .pro-subtitle {
2645 font-size: 1.1rem;
2646 }
2647 }
2648
2649
2650 /* Form Container Styles */
2651 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-form-container {
2652 max-width: 600px;
2653 margin: 2rem auto;
2654 background: white;
2655 padding: 2rem;
2656 border-radius: 12px;
2657 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
2658 }
2659
2660 /* Form Table Styles */
2661 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-form .form-table {
2662 margin: 0;
2663 border-collapse: separate;
2664 border-spacing: 0 1rem;
2665 }
2666
2667 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-form .form-table th {
2668 padding: 0 1rem 0 0;
2669 width: 140px;
2670 font-weight: 600;
2671 color: #212121;
2672 font-size: 15px;
2673 vertical-align: middle;
2674 }
2675
2676 /* Input Field Styles */
2677 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-input {
2678 width: 100%;
2679 padding: 10px 16px;
2680 border: 2px solid #e0e0e0;
2681 border-radius: 8px;
2682 font-size: 15px;
2683 transition: all 0.3s ease;
2684 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
2685 }
2686
2687 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-input:focus {
2688 border-color: #7873f5;
2689 box-shadow: 0 0 0 3px rgba(120, 115, 245, 0.1);
2690 outline: none;
2691 }
2692
2693 /* Button Container and Button Styles */
2694 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-button-container {
2695 margin-top: 2rem;
2696 text-align: right;
2697 display: flex;
2698 align-items: center;
2699 justify-content: flex-end;
2700 gap: 1rem;
2701 }
2702
2703 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-button {
2704 background: linear-gradient(135deg, #fa73e6, #7873f5);
2705 border: none;
2706 padding: 12px 24px;
2707 border-radius: 8px;
2708 color: white;
2709 font-weight: 600;
2710 font-size: 15px;
2711 cursor: pointer;
2712 transition: all 0.3s ease;
2713 text-shadow: none;
2714 box-shadow: 0 4px 12px rgba(120, 115, 245, 0.2);
2715 height: auto;
2716 line-height: 1.4;
2717 }
2718
2719 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-button:hover {
2720 transform: translateY(-2px);
2721 box-shadow: 0 6px 16px rgba(120, 115, 245, 0.3);
2722 }
2723
2724 /* Error Notice Styles */
2725 body.wp-admin .wrap.mxchat-admin-activation .error.notice {
2726 margin: 2rem auto;
2727 max-width: 600px;
2728 border-left-color: #dc3232;
2729 background: #fff;
2730 border-radius: 4px;
2731 box-shadow: 0 2px 8px rgba(220, 50, 50, 0.1);
2732 }
2733
2734 /* License Status Styles */
2735 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-status {
2736 max-width: 600px;
2737 margin: 2rem;
2738 padding: 1.5rem;
2739 background: white;
2740 border-radius: 12px;
2741 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
2742 }
2743
2744 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-status h3 {
2745 margin: 0;
2746 font-size: 15px;
2747 color: #212121;
2748 display: flex;
2749 align-items: center;
2750 gap: 0.5rem;
2751 }
2752
2753 body.wp-admin .wrap.mxchat-admin-activation .mxchat-status-badge {
2754 padding: 6px 12px;
2755 border-radius: 20px;
2756 font-size: 13px;
2757 font-weight: 600;
2758 }
2759
2760 body.wp-admin .wrap.mxchat-admin-activation .mxchat-status-badge.active {
2761 background: #e8f5e9;
2762 color: #2e7d32;
2763 }
2764
2765 body.wp-admin .wrap.mxchat-admin-activation .mxchat-status-badge.inactive {
2766 background: #fff3e0;
2767 color: #ef6c00;
2768 }
2769
2770 /* Spinner Styles */
2771 body.wp-admin .wrap.mxchat-admin-activation .mxchat-activation-spinner {
2772 width: 20px;
2773 height: 20px;
2774 border: 2px solid rgba(120, 115, 245, 0.3);
2775 border-radius: 50%;
2776 border-top-color: #7873f5;
2777 animation: spin 1s linear infinite;
2778 }
2779
2780 @keyframes spin {
2781 to {
2782 transform: rotate(360deg);
2783 }
2784 }
2785
2786 /* Responsive Adjustments */
2787 @media (max-width: 782px) {
2788 body.wp-admin .wrap.mxchat-admin-activation .mxchat-pro-form .form-table th {
2789 padding-bottom: 0.5rem;
2790 }
2791
2792 body.wp-admin .wrap.mxchat-admin-activation .form-table,
2793 body.wp-admin .wrap.mxchat-admin-activation .form-table tbody,
2794 body.wp-admin .wrap.mxchat-admin-activation .form-table tr,
2795 body.wp-admin .wrap.mxchat-admin-activation .form-table th,
2796 body.wp-admin .wrap.mxchat-admin-activation .form-table td {
2797 display: block;
2798 width: 100%;
2799 padding: 0;
2800 }
2801
2802 body.wp-admin .wrap.mxchat-admin-activation .form-table td {
2803 margin-bottom: 1.5rem;
2804 }
2805 }
2806
2807
2808 .video-tutorials-section {
2809 max-width: 1200px;
2810 margin: 0 auto;
2811 padding: 2rem 0;
2812 }
2813
2814 .section-intro {
2815 text-align: center;
2816 margin-bottom: 2rem;
2817 font-size: 1.1rem;
2818 }
2819
2820 .tutorial-grid {
2821 display: grid;
2822 grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
2823 gap: 2rem;
2824 margin-bottom: 3rem;
2825 }
2826
2827 .tutorial-item {
2828 border: 1px solid #e0e0e0;
2829 border-radius: 8px;
2830 padding: 1.5rem;
2831 box-shadow: 0 2px 5px rgba(0,0,0,0.05);
2832 transition: transform 0.3s ease, box-shadow 0.3s ease;
2833 background-color: #fff;
2834 }
2835
2836 .tutorial-item:hover {
2837 transform: translateY(-5px);
2838 box-shadow: 0 5px 15px rgba(0,0,0,0.1);
2839 }
2840
2841 .tutorial-item h3 {
2842 margin-top: 0;
2843 font-size: 1.2rem;
2844 color: #333;
2845 border-bottom: 2px solid #f0f0f0;
2846 padding-bottom: 0.75rem;
2847 margin-bottom: 1rem;
2848 }
2849
2850 .video-description p {
2851 margin-bottom: 1rem;
2852 color: #555;
2853 }
2854
2855 .video-description small {
2856 color: #888;
2857 font-style: italic;
2858 }
2859
2860 .video-link {
2861 display: inline-flex;
2862 align-items: center;
2863 text-decoration: none;
2864 color: #0073aa;
2865 font-weight: 500;
2866 margin-top: 0.5rem;
2867 padding: 0.5rem 1rem;
2868 border-radius: 4px;
2869 background-color: #f7f7f7;
2870 transition: background-color 0.2s ease;
2871 }
2872
2873 .video-link:hover {
2874 background-color: #e6f3fa;
2875 color: #004d74;
2876 }
2877
2878 .video-icon {
2879 margin-right: 0.5rem;
2880 display: inline-flex;
2881 color: #e62117;
2882 }
2883
2884 .support-section {
2885 margin-top: 3rem;
2886 padding-top: 2rem;
2887 border-top: 1px solid #e0e0e0;
2888 text-align: center;
2889 }
2890
2891 .support-content {
2892 max-width: 800px;
2893 margin: 0 auto;
2894 background-color: #f9f9f9;
2895 padding: 2rem;
2896 border-radius: 8px;
2897 }
2898
2899 .support-content p {
2900 margin-bottom: 1rem;
2901 font-size: 1.1rem;
2902 line-height: 1.6;
2903 }
2904
2905 .support-content a {
2906 color: #0073aa;
2907 font-weight: 500;
2908 text-decoration: none;
2909 padding: 0.2rem 0.4rem;
2910 border-radius: 3px;
2911 transition: background-color 0.2s;
2912 }
2913
2914 .support-content a:hover {
2915 background-color: #e6f3fa;
2916 text-decoration: underline;
2917 }
2918
2919 .api-info-item h4 {
2920 margin-top: 0;
2921 color: #333;
2922 margin-bottom: 1rem;
2923 }
2924
2925 @media (max-width: 768px) {
2926 .tutorial-grid {
2927 grid-template-columns: 1fr;
2928 }
2929
2930 .tutorial-item {
2931 padding: 1rem;
2932 }
2933
2934 .support-content {
2935 padding: 1.5rem;
2936 }
2937 }
2938
2939 /* Additional CSS for the main admin page */
2940
2941 /* Pro and Add-on notice messages */
2942 .mxchat-pro-notice,
2943 .mxchat-addon-notice {
2944 margin: 0;
2945 line-height: 1.6;
2946 color: #333;
2947 }
2948
2949 .mxchat-pro-notice a,
2950 .mxchat-addon-notice a {
2951 color: #7873f5;
2952 text-decoration: none;
2953 font-weight: 600;
2954 transition: color 0.2s ease;
2955 }
2956
2957 .mxchat-pro-notice a:hover,
2958 .mxchat-addon-notice a:hover {
2959 color: #fa73e6;
2960 text-decoration: underline;
2961 }
2962
2963 /* Tutorial Grid & Items */
2964 .tutorial-grid {
2965 display: grid;
2966 grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
2967 gap: 24px;
2968 margin-top: 20px;
2969 }
2970
2971 .tutorial-item {
2972 background: #f8f9ff;
2973 border-radius: 12px;
2974 padding: 24px;
2975 transition: all 0.3s ease;
2976 border: 1px solid rgba(120, 115, 245, 0.1);
2977 }
2978
2979 .tutorial-item:hover {
2980 transform: translateY(-3px);
2981 box-shadow: 0 6px 20px rgba(120, 115, 245, 0.12);
2982 }
2983
2984 .tutorial-item h3 {
2985 margin-top: 0;
2986 margin-bottom: 16px;
2987 color: #333;
2988 font-size: 1.2rem;
2989 }
2990
2991 .video-description p {
2992 color: #666;
2993 font-size: 0.95rem;
2994 margin-bottom: 16px;
2995 }
2996
2997 .video-description small {
2998 color: #888;
2999 font-size: 0.85rem;
3000 font-style: italic;
3001 }
3002
3003 .video-link {
3004 display: inline-flex;
3005 align-items: center;
3006 gap: 8px;
3007 padding: 8px 16px;
3008 background: white;
3009 border-radius: 8px;
3010 text-decoration: none;
3011 color: #7873f5;
3012 font-weight: 600;
3013 font-size: 0.9rem;
3014 border: 1px solid rgba(120, 115, 245, 0.2);
3015 transition: all 0.2s ease;
3016 }
3017
3018 .video-link:hover {
3019 background: #eef0ff;
3020 color: #fa73e6;
3021 }
3022
3023 .video-icon {
3024 display: flex;
3025 align-items: center;
3026 justify-content: center;
3027 }
3028
3029 /* Support Section */
3030 .support-section {
3031 margin-top: 40px;
3032 padding: 24px;
3033 background: #f8f9ff;
3034 border-radius: 12px;
3035 border: 1px solid rgba(120, 115, 245, 0.1);
3036 }
3037
3038 .support-section h3 {
3039 margin-top: 0;
3040 color: #333;
3041 }
3042
3043 .support-content p {
3044 color: #666;
3045 margin-bottom: 12px;
3046 }
3047
3048 .support-content a {
3049 color: #7873f5;
3050 text-decoration: none;
3051 font-weight: 600;
3052 }
3053
3054 .support-content a:hover {
3055 color: #fa73e6;
3056 text-decoration: underline;
3057 }
3058
3059 /* Updated tab navigation */
3060 .mxchat-tabs {
3061 display: flex;
3062 gap: 2px;
3063 margin-bottom: 20px;
3064 border-bottom: 1px solid rgba(120, 115, 245, 0.1);
3065 }
3066
3067 .mxchat-tab-button {
3068 padding: 12px 24px;
3069 background: none;
3070 border: none;
3071 border-bottom: 2px solid transparent;
3072 color: #666;
3073 cursor: pointer;
3074 font-size: 14px;
3075 transition: all 0.2s ease;
3076 }
3077
3078 .mxchat-tab-button:hover {
3079 color: #7873f5;
3080 }
3081
3082 .mxchat-tab-button.active {
3083 color: #7873f5;
3084 border-bottom-color: #7873f5;
3085 }
3086
3087 /* Tab content */
3088 .mxchat-tab-content {
3089 display: none;
3090 }
3091
3092 .mxchat-tab-content.active {
3093 display: block;
3094 }