PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 2.2.1
MxChat – AI Chatbot & Content Generation for WordPress v2.2.1
3.2.21 3.2.20 3.2.19 3.2.18 3.2.17 3.2.16 3.2.15 3.2.14 3.2.12 3.2.13 3.2.11 3.2.10 3.2.9 3.2.8 3.2.7 3.2.6 3.2.5 3.2.4 3.2.3 3.2.2 3.2.1 2.0.3 2.0.4 2.0.5 2.0.6 All 152 releases
mxchat-basic / css / knowledge-style.css

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

2,496 lines 47.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /*
2 * MxChat Knowledge Base Styles
3 * Consolidated stylesheet for the Knowledge Base Manager
4 */
5
6 #wpcontent, .auto-fold #wpcontent {
7 padding: 0px;
8 }
9 .mxchat-kb-header-note {
10 font-size: 12px;
11 font-weight: normal;
12 color: #666;
13 font-style: italic;
14 }
15 /* ===== Core Layout ===== */
16 .mxchat-wrapper, .mxchat-admin-activation {
17 width: 100%;
18 margin: 0px;
19 padding: 0;
20 background-color: #f8f9ff;
21 min-height: 100vh;
22 }
23
24 /* ===== Hero Section ===== */
25 .mxchat-hero {
26 text-align: center;
27 padding: 3.5rem 2rem;
28 position: relative;
29 background: #212121;
30 border-bottom: 4px solid transparent;
31 border-image: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
32 border-image-slice: 1;
33 }
34
35 .mxchat-hero::before {
36 content: '';
37 position: absolute;
38 top: 0;
39 left: 0;
40 width: 100%;
41 height: 100%;
42 background: radial-gradient(
43 circle at center,
44 rgba(250, 115, 230, 0.08) 0%,
45 rgba(120, 115, 245, 0.08) 50%,
46 rgba(58, 201, 209, 0.08) 100%
47 );
48 z-index: 1;
49 }
50
51 div.mxchat-hero h1.mxchat-main-title {
52 font-size: 3.5rem;
53 margin: 0 0 1.5rem;
54 line-height: 1.2;
55 color: white;
56 position: relative;
57 z-index: 2;
58 }
59
60 .mxchat-gradient-text {
61 background: linear-gradient(135deg, #fa73e6, #7873f5, #3ac9d1);
62 -webkit-background-clip: text;
63 -webkit-text-fill-color: transparent;
64 display: inline-block;
65 font-weight: 700;
66 }
67
68 .mxchat-hero-subtitle {
69 font-size: 1.25rem;
70 color: rgba(255, 255, 255, 0.9);
71 max-width: 800px;
72 margin: 0 auto;
73 position: relative;
74 z-index: 2;
75 line-height: 1.6;
76 }
77
78 /* ===== Content Area ===== */
79 .mxchat-content {
80 padding: 2rem;
81 max-width: 1400px;
82 margin: 0 auto;
83 width: 100%;
84 box-sizing: border-box;
85 }
86
87 /* ===== Card Styles ===== */
88 .mxchat-card {
89 background: #fff;
90 border-radius: 16px;
91 box-shadow: 0 4px 20px rgba(120, 115, 245, 0.08);
92 padding: 30px;
93 margin: 30px auto;
94 transition: all 0.3s ease;
95 }
96
97 .mxchat-card:hover {
98 transform: translateY(-2px);
99 box-shadow: 0 6px 25px rgba(120, 115, 245, 0.12);
100 }
101
102 .mxchat-card h2 {
103 margin: 0 0 1.5rem;
104 color: #333;
105 font-size: 1.5rem;
106 }
107
108 .mxchat-card-header {
109 display: flex;
110 justify-content: space-between;
111 align-items: center;
112 margin-bottom: 20px;
113 }
114
115 .mxchat-header-actions {
116 display: flex;
117 gap: 16px;
118 align-items: center;
119 }
120
121 /* ===== Knowledge Warning ===== */
122 .mxchat-knowledge-warning {
123 padding: 15px;
124 border-radius: 8px;
125 margin-bottom: 20px;
126 }
127
128 .mxchat-knowledge-warning.success {
129 background-color: #eefbe8;
130 border-left: 4px solid #4caf50;
131 }
132
133 .mxchat-knowledge-warning.warning {
134 background-color: #fff9e6;
135 border-left: 4px solid #ff9800;
136 }
137
138 .mxchat-knowledge-warning p {
139 align-items: center;
140 margin: 0;
141 color: #333;
142 }
143
144 .mxchat-knowledge-warning .dashicons {
145 margin-right: 10px;
146 font-size: 20px;
147 }
148
149 .mxchat-knowledge-warning .dashicons-yes-alt {
150 color: #4caf50;
151 }
152
153 .mxchat-knowledge-warning .dashicons-warning {
154 color: #ff9800;
155 }
156
157 /* ===== Import Section ===== */
158 .mxchat-import-section {
159 margin-top: 30px;
160 }
161
162 .mxchat-import-section h3 {
163 margin-top: 0;
164 margin-bottom: 20px;
165 font-size: 18px;
166 color: #333;
167 }
168
169 /* Import Options */
170 .mxchat-import-options {
171 display: grid;
172 grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
173 gap: 16px;
174 margin-bottom: 24px;
175 }
176
177 /* Import Box Styling */
178 .mxchat-import-box {
179 display: flex;
180 align-items: flex-start;
181 padding: 0;
182 background: #fff;
183 border: 1px solid #e5e5e5;
184 border-radius: 10px;
185 cursor: pointer;
186 transition: all 0.2s ease;
187 position: relative;
188 overflow: hidden;
189 text-align: left;
190 width: 100%;
191 }
192
193 .mxchat-import-box:hover {
194 border-color: #7873f5;
195 box-shadow: 0 4px 12px rgba(120, 115, 245, 0.1);
196 transform: translateY(-4px);
197 }
198
199 .mxchat-import-wordpress {
200 border: 2px solid #7873f5;
201 background-color: #f8f9ff;
202 }
203
204 .mxchat-import-icon {
205 width: 48px;
206 height: 48px;
207 display: flex;
208 align-items: center;
209 justify-content: center;
210 background-color: #f0f0f0;
211 border-radius: 8px;
212 margin: 16px;
213 flex-shrink: 0;
214 }
215
216 .mxchat-import-wordpress .mxchat-import-icon {
217 background-color: #f0e6ff;
218 }
219
220 .mxchat-import-icon .dashicons {
221 font-size: 24px;
222 color: #7873f5;
223 }
224
225 .mxchat-import-content {
226 flex: 1;
227 padding: 18px 18px 18px 0;
228 }
229
230 .mxchat-import-content h4 {
231 margin: 0 0 8px;
232 font-size: 16px;
233 color: #333;
234 }
235
236 .mxchat-import-content p {
237 margin: 0;
238 font-size: 14px;
239 color: #666;
240 line-height: 1.5;
241 }
242
243 .mxchat-recommended-tag {
244 position: absolute;
245 top: 0;
246 right: 0;
247 background-color: #7873f5;
248 color: white;
249 padding: 4px 10px;
250 font-size: 10px;
251 border-bottom-left-radius: 8px;
252 }
253
254 /* Import Input Areas */
255 .mxchat-import-input-area {
256 background-color: #f9f9fd;
257 border-radius: 10px;
258 padding: 24px;
259 margin-bottom: 24px;
260 border: 1px solid #e5e5e5;
261 text-align: center;
262 }
263
264 .mxchat-url-input-group {
265 display: flex;
266 gap: 12px;
267 max-width: 800px;
268 margin: 0 auto;
269 }
270
271 .mxchat-url-input-group input {
272 flex: 1;
273 padding: 12px 16px;
274 border: 1px solid #ddd;
275 border-radius: 8px;
276 font-size: 14px;
277 }
278
279 .mxchat-url-input-group input:focus {
280 border-color: #7873f5;
281 box-shadow: 0 0 0 2px rgba(120, 115, 245, 0.1);
282 outline: none;
283 }
284
285 .mxchat-url-description {
286 font-size: 14px;
287 color: #666;
288 margin-top: 16px;
289 font-style: italic;
290 }
291
292 .mxchat-content-input-group {
293 max-width: 800px;
294 margin: 0 auto;
295 }
296
297 .mxchat-content-input-group textarea {
298 width: 100%;
299 min-height: 150px;
300 padding: 12px 16px;
301 border: 1px solid #ddd;
302 border-radius: 8px;
303 margin-bottom: 16px;
304 font-size: 14px;
305 resize: vertical;
306 }
307
308 .mxchat-content-input-group textarea:focus {
309 border-color: #7873f5;
310 box-shadow: 0 0 0 2px rgba(120, 115, 245, 0.1);
311 outline: none;
312 }
313
314 /* Primary Import Card */
315 .mxchat-primary-import-card {
316 background-color: #fff;
317 border: 2px solid #7873f5;
318 border-radius: 8px;
319 box-shadow: 0 4px 12px rgba(120, 115, 245, 0.1);
320 margin-bottom: 30px;
321 overflow: hidden;
322 transition: all 0.3s ease;
323 }
324
325 .mxchat-primary-import-card:hover {
326 box-shadow: 0 6px 16px rgba(120, 115, 245, 0.2);
327 transform: translateY(-2px);
328 }
329
330 .mxchat-card-header {
331 padding: 15px 20px;
332 display: flex;
333 align-items: center;
334 justify-content: space-between;
335 border-bottom: 1px solid #e2d9ff;
336 }
337
338 .mxchat-card-header h3 {
339 margin: 0;
340 color: #7873f5;
341 font-size: 18px;
342 font-weight: 600;
343 }
344
345 .mxchat-recommended-badge {
346 background-color: #7873f5;
347 color: white;
348 font-size: 12px;
349 padding: 4px 10px;
350 border-radius: 12px;
351 font-weight: 500;
352 }
353
354 .mxchat-card-content {
355 padding: 20px;
356 }
357
358 .mxchat-method-description {
359 font-size: 15px;
360 line-height: 1.5;
361 color: #555;
362 margin-bottom: 20px;
363 }
364
365 .mxchat-card-actions {
366 text-align: center;
367 }
368
369 .mxchat-featured-button {
370 background: linear-gradient(135deg, #fa73e6, #7873f5) !important;
371 color: white !important;
372 font-size: 15px !important;
373 padding: 10px 20px !important;
374 border: none !important;
375 box-shadow: 0 4px 8px rgba(120, 115, 245, 0.2) !important;
376 transition: all 0.3s ease !important;
377 display: inline-flex !important;
378 align-items: center !important;
379 gap: 8px !important;
380 }
381
382 .mxchat-featured-button:hover {
383 background: linear-gradient(135deg, #e56dd6, #6b67db) !important;
384 box-shadow: 0 6px 12px rgba(120, 115, 245, 0.3) !important;
385 transform: translateY(-2px) !important;
386 }
387
388 /* Alternative Import Methods */
389 .mxchat-alternative-imports {
390 background-color: #fff;
391 border: 1px solid #e5e5e5;
392 border-radius: 8px;
393 padding: 20px;
394 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
395 }
396
397 .mxchat-alt-header {
398 font-size: 16px;
399 color: #666;
400 margin-top: 0;
401 margin-bottom: 15px;
402 padding-bottom: 10px;
403 border-bottom: 1px solid #eee;
404 }
405
406 .mxchat-import-methods-grid {
407 display: grid;
408 grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
409 gap: 20px;
410 margin-bottom: 25px;
411 }
412
413 /* ===== Import Methods ===== */
414 .mxchat-import-methods {
415 display: grid;
416 grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
417 gap: 20px;
418 margin: 30px 0;
419 }
420
421 .mxchat-method-card {
422 background-color: #f9f9f9;
423 border: 1px solid #eee;
424 border-radius: 8px;
425 padding: 15px;
426 transition: all 0.2s ease;
427 height: 100%;
428 }
429
430 .mxchat-method-card:hover {
431 background-color: #f5f5f5;
432 border-color: #ddd;
433 }
434
435 .mxchat-method-icon {
436 display: flex;
437 justify-content: center;
438 margin-bottom: 10px;
439 }
440
441 .mxchat-method-icon .dashicons {
442 font-size: 24px;
443 width: 24px;
444 height: 24px;
445 color: #666;
446 }
447
448 .mxchat-method-card h4,
449 .mxchat-method-card h5 {
450 margin: 0 0 10px 0;
451 font-size: 15px;
452 text-align: center;
453 color: #444;
454 }
455
456 .mxchat-method-card p {
457 margin: 0;
458 font-size: 13px;
459 color: #666;
460 text-align: center;
461 }
462
463 .mxchat-note,
464 .red-warning {
465 color: #ff5722;
466 font-weight: 500;
467 }
468
469 /* Legacy Import Form */
470 .mxchat-legacy-import-form {
471 margin-top: 20px;
472 padding-top: 20px;
473 border-top: 1px dashed #ddd;
474 }
475
476 /* ===== Settings Section ===== */
477 .mxchat-settings-section {
478 margin-bottom: 30px;
479 }
480
481 .mxchat-settings-section h3 {
482 margin-top: 0;
483 margin-bottom: 12px;
484 color: #333;
485 font-size: 1.3rem;
486 }
487
488 .mxchat-description {
489 color: #666;
490 font-size: 14px;
491 margin-bottom: 20px;
492 }
493
494 .mxchat-section-content {
495 margin-top: 15px;
496 }
497
498 /* ===== Tabs ===== */
499 .mxchat-tabs {
500 border-bottom: 1px solid rgba(120, 115, 245, 0.1);
501 margin-bottom: 20px;
502 display: flex;
503 gap: 2px;
504 }
505
506 .mxchat-tab-button {
507 padding: 12px 24px;
508 background: none;
509 border: none;
510 border-bottom: 2px solid transparent;
511 color: #666;
512 cursor: pointer;
513 font-size: 14px;
514 transition: all 0.2s ease;
515 }
516
517 .mxchat-tab-button:hover {
518 color: #7873f5;
519 }
520
521 .mxchat-tab-button.active {
522 color: #7873f5;
523 border-bottom-color: #7873f5;
524 }
525
526 .mxchat-tab-contents {
527 margin-top: 20px;
528 }
529
530 .mxchat-tab-content {
531 display: none;
532 }
533
534 .mxchat-tab-content.active {
535 display: block;
536 }
537
538 /* ===== Toggle Switches ===== */
539 .mxchat-toggle-group {
540 display: flex;
541 flex-direction: column;
542 gap: 15px;
543 margin: 20px 0;
544 }
545
546 .mxchat-toggle-container {
547 display: flex;
548 align-items: center;
549 gap: 12px;
550 }
551
552 .mxchat-toggle-switch {
553 position: relative;
554 display: inline-block;
555 width: 50px;
556 height: 24px;
557 }
558
559 .mxchat-toggle-switch input {
560 opacity: 0;
561 width: 0;
562 height: 0;
563 }
564
565 .mxchat-toggle-slider {
566 position: absolute;
567 cursor: pointer;
568 top: 0;
569 left: 0;
570 right: 0;
571 bottom: 0;
572 background-color: #ccc;
573 transition: .4s;
574 border-radius: 34px;
575 }
576
577 .mxchat-toggle-slider:before {
578 position: absolute;
579 content: "";
580 height: 20px;
581 width: 20px;
582 left: 2px;
583 bottom: 2px;
584 background-color: white;
585 transition: .4s;
586 border-radius: 50%;
587 }
588
589 input:checked + .mxchat-toggle-slider {
590 background: linear-gradient(135deg, #fa73e6, #7873f5);
591 }
592
593 input:checked + .mxchat-toggle-slider:before {
594 transform: translateX(26px);
595 }
596
597 .mxchat-toggle-label {
598 font-size: 14px;
599 color: #333;
600 }
601
602 /* ===== Custom Post Types ===== */
603 .mxchat-custom-post-types-header {
604 margin-top: 20px;
605 }
606
607 .mxchat-custom-post-types-container {
608 margin-top: 15px;
609 padding: 15px;
610 background-color: #f8f9ff;
611 border-radius: 8px;
612 border: 1px solid rgba(120, 115, 245, 0.1);
613 }
614
615 .mxchat-toggle-icon {
616 margin-left: 5px;
617 font-size: 12px;
618 }
619
620 /* ===== Form Elements ===== */
621 .mxchat-form-group {
622 margin-bottom: 20px;
623 }
624
625 .mxchat-form-group label {
626 display: block;
627 margin-bottom: 8px;
628 font-weight: 500;
629 color: #333;
630 }
631
632 .mxchat-form-group input[type="text"],
633 .mxchat-form-group input[type="url"],
634 .mxchat-form-group input[type="search"],
635 .mxchat-form-group textarea {
636 width: 100%;
637 padding: 12px 15px;
638 border: 2px solid rgba(120, 115, 245, 0.2);
639 border-radius: 8px;
640 font-size: 14px;
641 transition: all 0.3s ease;
642 }
643
644 .mxchat-form-group textarea {
645 min-height: 120px;
646 resize: vertical;
647 }
648
649 .mxchat-form-group input:focus,
650 .mxchat-form-group textarea:focus {
651 border-color: #7873f5;
652 box-shadow: 0 0 0 3px rgba(120, 115, 245, 0.1);
653 outline: none;
654 }
655
656 /* ===== Search ===== */
657 .mxchat-search-form {
658 position: relative;
659 }
660
661 .mxchat-search-group {
662 position: relative;
663 display: flex;
664 align-items: center;
665 }
666
667 .mxchat-search-group .dashicons {
668 position: absolute;
669 left: 12px;
670 color: #666;
671 }
672
673 .mxchat-search-group input {
674 padding-left: 40px;
675 width: 300px;
676 }
677
678 /* ===== Buttons ===== */
679 .mxchat-button-primary {
680 background: linear-gradient(135deg, #fa73e6, #7873f5);
681 border: none;
682 color: white;
683 padding: 10px 20px;
684 border-radius: 8px;
685 font-weight: 600;
686 cursor: pointer;
687 transition: all 0.3s ease;
688 }
689
690 .mxchat-button-primary:hover {
691 transform: translateY(-1px);
692 box-shadow: 0 4px 12px rgba(120, 115, 245, 0.2);
693 }
694
695 .mxchat-button-primary:disabled {
696 background: #a7a7a7;
697 cursor: not-allowed;
698 transform: none;
699 box-shadow: none;
700 }
701
702 .mxchat-button-secondary {
703 background: #f8f9ff;
704 border: 1px solid rgba(120, 115, 245, 0.2);
705 color: #666;
706 padding: 10px 20px;
707 border-radius: 8px;
708 cursor: pointer;
709 transition: all 0.2s ease;
710 }
711
712 .mxchat-button-secondary:hover {
713 background: #eef0ff;
714 }
715
716 .mxchat-button-danger {
717 color: #ff4d4d;
718 background: transparent;
719 border: none;
720 padding: 10px 20px;
721 border-radius: 8px;
722 cursor: pointer;
723 transition: all 0.2s ease;
724 display: flex;
725 align-items: center;
726 gap: 8px;
727 }
728
729 .mxchat-button-danger:hover {
730 background: #fff5f5;
731 }
732
733 .mxchat-button-icon {
734 padding: 8px;
735 border: none;
736 background: transparent;
737 border-radius: 6px;
738 cursor: pointer;
739 transition: all 0.2s ease;
740 color: #666;
741 }
742
743 .mxchat-button-icon:hover {
744 background: #f8f9ff;
745 color: #7873f5;
746 }
747
748 /* ===== Status Cards ===== */
749 .mxchat-status-card {
750 background: #f8f9ff;
751 border-radius: 10px;
752 padding: 20px;
753 margin-top: 20px;
754 border: 1px solid rgba(120, 115, 245, 0.1);
755 }
756
757 .mxchat-status-header {
758 display: flex;
759 justify-content: space-between;
760 align-items: center;
761 margin-bottom: 15px;
762 }
763
764 .mxchat-status-details {
765 margin-top: 10px;
766 color: #666;
767 }
768
769 .mxchat-status-badge {
770 display: inline-block;
771 padding: 3px 8px;
772 border-radius: 3px;
773 font-size: 12px;
774 font-weight: 500;
775 text-transform: uppercase;
776 margin-left: 10px;
777 }
778
779 .mxchat-status-failed {
780 background-color: #f44336;
781 color: white;
782 }
783
784 .mxchat-status-success {
785 background-color: #4caf50;
786 color: white;
787 }
788
789 .mxchat-error-notice {
790 margin-top: 15px;
791 padding: 10px;
792 background-color: #fff5f5;
793 border-left: 3px solid #f44336;
794 color: #d32f2f;
795 border-radius: 4px;
796 }
797
798 .mxchat-failed-urls {
799 margin-top: 15px;
800 }
801
802 .mxchat-failed-urls h5 {
803 margin-top: 0;
804 margin-bottom: 10px;
805 color: #333;
806 }
807
808 .mxchat-failed-urls-list {
809 max-height: 200px;
810 overflow-y: auto;
811 }
812
813 /* ===== Progress Bar ===== */
814 .mxchat-progress-bar {
815 height: 8px;
816 background: rgba(120, 115, 245, 0.1);
817 border-radius: 4px;
818 overflow: hidden;
819 margin: 15px 0;
820 }
821
822 .mxchat-progress-fill {
823 height: 100%;
824 background: linear-gradient(135deg, #fa73e6, #7873f5);
825 transition: width 0.3s ease;
826 }
827
828 /* ===== Table Styles ===== */
829 .mxchat-table-wrapper {
830 overflow-x: auto;
831 margin: 20px 0;
832 }
833
834 .mxchat-records-table {
835 width: 100%;
836 border-collapse: separate;
837 border-spacing: 0;
838 }
839
840 .mxchat-records-table th {
841 background: #f8f9ff;
842 padding: 15px;
843 font-weight: 600;
844 color: #333;
845 text-align: left;
846 border-bottom: 2px solid rgba(120, 115, 245, 0.1);
847 }
848
849 .mxchat-records-table td {
850 padding: 15px;
851 border-top: 1px solid rgba(120, 115, 245, 0.1);
852 vertical-align: top;
853 }
854
855 .mxchat-records-table tr:hover {
856 background: rgba(120, 115, 245, 0.03);
857 }
858
859 .mxchat-content-cell {
860 max-width: 400px;
861 }
862
863 .mxchat-url-cell a {
864 color: #7873f5;
865 text-decoration: none;
866 display: flex;
867 align-items: center;
868 gap: 4px;
869 }
870
871 .mxchat-url-cell a:hover {
872 color: #fa73e6;
873 }
874
875 .mxchat-actions-cell {
876 white-space: nowrap;
877 display: flex;
878 gap: 8px;
879 }
880
881 .content-view {
882 font-size: 14px;
883 line-height: 1.5;
884 }
885
886 .content-edit {
887 width: 100%;
888 min-height: 100px;
889 border: 1px solid #ddd;
890 border-radius: 4px;
891 padding: 10px;
892 }
893
894 .url-view a {
895 color: #7873f5;
896 text-decoration: none;
897 }
898
899 .url-edit {
900 width: 100%;
901 }
902
903 /* ===== Pagination ===== */
904 .mxchat-pagination {
905 margin-top: 20px;
906 padding-top: 20px;
907 text-align: center;
908 border-top: 1px solid rgba(120, 115, 245, 0.1);
909 }
910
911 .mxchat-pagination .page-numbers {
912 display: inline-flex;
913 align-items: center;
914 justify-content: center;
915 min-width: 32px;
916 height: 32px;
917 padding: 0 8px;
918 margin: 0 4px;
919 border-radius: 6px;
920 background: white;
921 border: 1px solid rgba(120, 115, 245, 0.2);
922 color: #333;
923 text-decoration: none;
924 transition: all 0.2s ease;
925 }
926
927 .mxchat-pagination .page-numbers.current {
928 background: linear-gradient(135deg, #fa73e6, #7873f5);
929 color: white;
930 border: none;
931 }
932
933 /* ===== Notifications ===== */
934 .mxchat-notification {
935 margin: 15px 20px 0;
936 padding: 10px 15px;
937 border-radius: 4px;
938 font-size: 14px;
939 }
940
941 .mxchat-notification.success {
942 background-color: #d4edda;
943 color: #155724;
944 border: 1px solid #c3e6cb;
945 }
946
947 .mxchat-notification.error {
948 background-color: #f8d7da;
949 color: #721c24;
950 border: 1px solid #f5c6cb;
951 }
952
953 /* ===== Responsive Design ===== */
954 @media (max-width: 768px) {
955 .mxchat-hero h1.mxchat-main-title {
956 font-size: 2.5rem;
957 }
958
959 .mxchat-card {
960 padding: 20px;
961 }
962
963 .mxchat-import-options {
964 grid-template-columns: 1fr;
965 }
966
967 .mxchat-url-input-group {
968 flex-direction: column;
969 }
970
971 .mxchat-url-input-group input,
972 .mxchat-url-input-group button {
973 width: 100%;
974 }
975
976 .mxchat-content-input-group textarea {
977 min-height: 120px;
978 }
979
980 .mxchat-status-header {
981 flex-direction: column;
982 align-items: flex-start;
983 gap: 10px;
984 }
985
986 .mxchat-records-table {
987 display: block;
988 overflow-x: auto;
989 }
990
991 .mxchat-stop-form button {
992 width: 100%;
993 }
994 }
995
996 @media (max-width: 480px) {
997 .mxchat-card {
998 padding: 15px;
999 }
1000
1001 .mxchat-import-box {
1002 flex-direction: column;
1003 align-items: center;
1004 text-align: center;
1005 }
1006
1007 .mxchat-import-icon {
1008 margin: 16px 16px 0 16px;
1009 }
1010
1011 .mxchat-import-content {
1012 padding: 16px;
1013 }
1014
1015 .mxchat-recommended-tag {
1016 border-radius: 0 0 0 8px;
1017 }
1018 }
1019
1020 /* RTL Support */
1021 .rtl .mxchat-knowledge-warning {
1022 border-left: none;
1023 border-right: 4px solid;
1024 }
1025
1026 .rtl .mxchat-knowledge-warning .dashicons {
1027 margin-right: 0;
1028 margin-left: 10px;
1029 }
1030
1031 .rtl .mxchat-import-box {
1032 flex-direction: row-reverse;
1033 }
1034
1035 .rtl .mxchat-import-content {
1036 padding: 16px 0 16px 16px;
1037 }
1038
1039 .rtl .mxchat-import-icon {
1040 margin: 16px;
1041 }
1042
1043 .rtl .mxchat-recommended-tag {
1044 right: auto;
1045 left: 0;
1046 border-bottom-left-radius: 0;
1047 border-bottom-right-radius: 8px;
1048 }
1049
1050 .rtl .mxchat-toggle-container {
1051 flex-direction: row-reverse;
1052 }
1053
1054 .rtl .mxchat-toggle-slider:before {
1055 left: auto;
1056 right: 2px;
1057 }
1058
1059 .rtl input:checked + .mxchat-toggle-slider:before {
1060 transform: translateX(-26px);
1061 }
1062
1063 .rtl .mxchat-error-notice {
1064 border-left: none;
1065 border-right: 3px solid #f44336;
1066 }
1067
1068 .rtl .mxchat-records-table th,
1069 .rtl .mxchat-records-table td {
1070 text-align: right;
1071 }
1072
1073 .rtl .mxchat-search-group .dashicons {
1074 left: auto;
1075 right: 12px;
1076 }
1077
1078 .rtl .mxchat-search-group input {
1079 padding-left: 12px;
1080 padding-right: 40px;
1081 }
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110 /* ===== Modal Styles ===== */
1111 .mxchat-kb-modal {
1112 display: none;
1113 position: fixed;
1114 top: 0;
1115 left: 0;
1116 width: 100%;
1117 height: 100%;
1118 background-color: rgba(0, 0, 0, 0.7);
1119 z-index: 999999;
1120 overflow: auto;
1121 justify-content: center;
1122 align-items: center;
1123 }
1124
1125 .mxchat-kb-modal.active {
1126 display: flex;
1127 }
1128
1129 .mxchat-kb-modal-content {
1130 position: relative;
1131 background-color: #fff;
1132 margin: 50px auto;
1133 padding: 0;
1134 border-radius: 8px;
1135 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
1136 width: 90%;
1137 max-width: 1000px;
1138 max-height: 85vh;
1139 display: flex;
1140 flex-direction: column;
1141 animation: mxchat-kb-modal-appear 0.3s ease-out;
1142 }
1143
1144 @keyframes mxchat-kb-modal-appear {
1145 from {
1146 opacity: 0;
1147 transform: translateY(-30px);
1148 }
1149 to {
1150 opacity: 1;
1151 transform: translateY(0);
1152 }
1153 }
1154
1155 .mxchat-kb-modal-header {
1156 display: flex;
1157 align-items: center;
1158 justify-content: space-between;
1159 padding: 20px;
1160 border-bottom: 1px solid #e5e5e5;
1161 background-color: #f8f9fa;
1162 border-radius: 8px 8px 0 0;
1163 }
1164
1165 .mxchat-kb-modal-header h3 {
1166 margin: 0;
1167 font-size: 20px;
1168 font-weight: 600;
1169 color: #23282d;
1170 }
1171
1172 .mxchat-kb-modal-close {
1173 font-size: 28px;
1174 font-weight: bold;
1175 cursor: pointer;
1176 color: #666;
1177 line-height: 1;
1178 transition: color 0.2s;
1179 }
1180
1181 .mxchat-kb-modal-close:hover {
1182 color: #d63638;
1183 }
1184
1185 .mxchat-kb-modal-filters {
1186 padding: 15px 20px;
1187 background-color: #f8f9fa;
1188 display: flex;
1189 align-items: center;
1190 justify-content: space-between;
1191 border-bottom: 1px solid #e5e5e5;
1192 flex-wrap: wrap;
1193 gap: 10px;
1194 }
1195
1196 .mxchat-kb-search-group {
1197 position: relative;
1198 flex: 1;
1199 min-width: 200px;
1200 max-width: 400px;
1201 }
1202
1203 .mxchat-kb-search-group input {
1204 width: 100%;
1205 padding: 8px 12px 8px 35px;
1206 border-radius: 4px;
1207 border: 1px solid #ddd;
1208 font-size: 14px;
1209 transition: border-color 0.2s;
1210 }
1211
1212 .mxchat-kb-search-group input:focus {
1213 border-color: #7873f5;
1214 outline: none;
1215 box-shadow: 0 0 0 1px #7873f5;
1216 }
1217
1218 .mxchat-kb-search-group::before {
1219 content: "\f179";
1220 font-family: dashicons;
1221 position: absolute;
1222 left: 10px;
1223 top: 50%;
1224 transform: translateY(-50%);
1225 color: #666;
1226 }
1227
1228 .mxchat-kb-filter-group {
1229 display: flex;
1230 gap: 10px;
1231 flex-wrap: wrap;
1232 }
1233
1234 .mxchat-kb-filter-group select {
1235 padding: 8px 12px;
1236 border-radius: 4px;
1237 border: 1px solid #ddd;
1238 font-size: 14px;
1239 background-color: white;
1240 min-width: 150px;
1241 appearance: none;
1242 background-repeat: no-repeat;
1243 background-position: right 10px center;
1244 padding-right: 30px;
1245 }
1246
1247 .mxchat-kb-filter-group select:focus {
1248 border-color: #7873f5;
1249 outline: none;
1250 box-shadow: 0 0 0 1px #7873f5;
1251 }
1252
1253 /* Special style for the "processed" filter */
1254 #mxchat-kb-processed-filter {
1255 border-left: 3px solid #1e88e5;
1256 }
1257
1258 .mxchat-kb-content-selection {
1259 overflow-y: auto;
1260 flex: 1;
1261 min-height: 300px;
1262 max-height: calc(85vh - 200px);
1263 }
1264
1265 .mxchat-kb-selection-header {
1266 display: flex;
1267 justify-content: space-between;
1268 align-items: center;
1269 padding: 15px 20px;
1270 background-color: #f8f9fa;
1271 border-bottom: 1px solid #eee;
1272 position: sticky;
1273 top: 0;
1274 z-index: 10;
1275 }
1276
1277 .mxchat-kb-selection-header label {
1278 display: flex;
1279 align-items: center;
1280 gap: 8px;
1281 font-weight: 500;
1282 }
1283
1284 .mxchat-kb-selection-count {
1285 font-size: 14px;
1286 color: #666;
1287 font-weight: 500;
1288 }
1289
1290 .mxchat-kb-content-list {
1291 padding: 0;
1292 }
1293
1294 .mxchat-kb-content-item {
1295 display: flex;
1296 padding: 15px 20px;
1297 border-bottom: 1px solid #eee;
1298 transition: background-color 0.2s;
1299 }
1300
1301 .mxchat-kb-content-item:hover {
1302 background-color: #f0f7ff;
1303 }
1304
1305 /* Improved visibility for processed items */
1306 .mxchat-kb-content-item.processed {
1307 background-color: #f0f8ff;
1308 border-left: 3px solid #1e88e5;
1309 }
1310
1311 .mxchat-kb-content-item.processed:hover {
1312 background-color: #e3f2fd;
1313 }
1314
1315 .mxchat-kb-content-checkbox {
1316 margin-right: 15px;
1317 display: flex;
1318 align-items: flex-start;
1319 padding-top: 3px;
1320 }
1321
1322 .mxchat-kb-content-checkbox input[type="checkbox"] {
1323 width: 18px;
1324 height: 18px;
1325 border: 1px solid #8c8f94;
1326 border-radius: 3px;
1327 background: #fff;
1328 margin: 0;
1329 }
1330
1331 .mxchat-kb-content-checkbox input[type="checkbox"]:checked {
1332 border-color: #7873f5;
1333 }
1334
1335 .mxchat-kb-content-details {
1336 flex: 1;
1337 }
1338
1339 .mxchat-kb-content-title {
1340 font-size: 16px;
1341 font-weight: 600;
1342 margin-bottom: 8px;
1343 display: flex;
1344 align-items: center;
1345 flex-wrap: wrap;
1346 gap: 8px;
1347 }
1348
1349 .mxchat-kb-content-title a {
1350 color: #7873f5;
1351 text-decoration: none;
1352 }
1353
1354 .mxchat-kb-content-title a:hover {
1355 color: #fa73e6;
1356 text-decoration: underline;
1357 }
1358
1359 /* Style for processed badge */
1360 .mxchat-kb-processed-badge {
1361 display: inline-block;
1362 background-color: #1e88e5;
1363 color: white;
1364 font-size: 11px;
1365 padding: 2px 8px;
1366 border-radius: 10px;
1367 font-weight: normal;
1368 }
1369
1370 /* Style for unprocessed badge */
1371 .mxchat-kb-unprocessed-badge {
1372 display: inline-block;
1373 background-color: #607d8b;
1374 color: white;
1375 font-size: 11px;
1376 padding: 2px 8px;
1377 border-radius: 10px;
1378 font-weight: normal;
1379 }
1380
1381 /* Last updated timestamp */
1382 .mxchat-kb-last-updated {
1383 font-size: 11px;
1384 color: #666;
1385 font-style: italic;
1386 margin-left: 8px;
1387 }
1388
1389 .mxchat-kb-content-meta {
1390 display: flex;
1391 flex-wrap: wrap;
1392 gap: 15px;
1393 color: #666;
1394 font-size: 13px;
1395 margin-bottom: 8px;
1396 }
1397
1398 .mxchat-kb-content-excerpt {
1399 color: #555;
1400 font-size: 14px;
1401 line-height: 1.5;
1402 }
1403
1404 .mxchat-kb-modal-footer {
1405 padding: 15px 20px;
1406 border-top: 1px solid #e5e5e5;
1407 display: flex;
1408 justify-content: flex-end;
1409 gap: 10px;
1410 background-color: #f8f9fa;
1411 border-radius: 0 0 8px 8px;
1412 }
1413
1414 .mxchat-kb-button-primary,
1415 .mxchat-kb-button-secondary {
1416 padding: 8px 15px;
1417 border-radius: 4px;
1418 font-size: 14px;
1419 cursor: pointer;
1420 font-weight: 500;
1421 text-align: center;
1422 transition: all 0.2s;
1423 }
1424
1425 .mxchat-kb-button-primary {
1426 background: linear-gradient(135deg, #fa73e6, #7873f5);
1427 color: white;
1428 border: none;
1429 }
1430
1431 .mxchat-kb-button-primary:hover {
1432 background: linear-gradient(135deg, #e56dd6, #6b67db);
1433 }
1434
1435 .mxchat-kb-button-primary:disabled {
1436 background-color: #a7a7a7;
1437 cursor: not-allowed;
1438 }
1439
1440 /* Update mode for the process button */
1441 #mxchat-kb-process-selected.update-mode {
1442 background-color: #ff9800;
1443 }
1444
1445 #mxchat-kb-process-selected.update-mode:hover {
1446 background-color: #f57c00;
1447 }
1448
1449 /* Mixed mode for the process button */
1450 #mxchat-kb-process-selected.mixed-mode {
1451 background-color: #9c27b0;
1452 }
1453
1454 #mxchat-kb-process-selected.mixed-mode:hover {
1455 background-color: #7b1fa2;
1456 }
1457
1458 .mxchat-kb-button-secondary {
1459 background-color: #f6f7f7;
1460 color: #2c3338;
1461 border: 1px solid #ddd;
1462 }
1463
1464 .mxchat-kb-button-secondary:hover {
1465 background-color: #f0f0f0;
1466 border-color: #c3c4c7;
1467 }
1468
1469 .mxchat-kb-pagination {
1470 padding: 15px 20px;
1471 border-top: 1px solid #eee;
1472 text-align: center;
1473 }
1474
1475 .mxchat-kb-pagination-links {
1476 display: flex;
1477 justify-content: center;
1478 align-items: center;
1479 gap: 5px;
1480 flex-wrap: wrap;
1481 }
1482
1483 .mxchat-kb-page-link {
1484 padding: 5px 10px;
1485 text-decoration: none;
1486 border: 1px solid #ddd;
1487 color: #7873f5;
1488 border-radius: 3px;
1489 transition: all 0.2s;
1490 }
1491
1492 .mxchat-kb-page-link:hover {
1493 background-color: #f0f0f0;
1494 color: #fa73e6;
1495 border-color: #c3c4c7;
1496 }
1497
1498 .mxchat-kb-page-current {
1499 padding: 5px 10px;
1500 background: linear-gradient(135deg, #fa73e6, #7873f5);
1501 color: white;
1502 border-radius: 3px;
1503 font-weight: 500;
1504 }
1505
1506 /* ===== Loading and Error States ===== */
1507 .mxchat-kb-no-results,
1508 .mxchat-kb-error {
1509 padding: 30px;
1510 text-align: center;
1511 color: #666;
1512 font-size: 14px;
1513 }
1514
1515 .mxchat-kb-error {
1516 color: #d63638;
1517 }
1518
1519 .mxchat-kb-loading {
1520 display: flex;
1521 flex-direction: column;
1522 align-items: center;
1523 justify-content: center;
1524 padding: 50px;
1525 color: #666;
1526 }
1527
1528 .mxchat-kb-spinner {
1529 display: inline-block;
1530 width: 50px;
1531 height: 50px;
1532 border: 5px solid #f3f3f3;
1533 border-top: 5px solid #7873f5;
1534 border-radius: 50%;
1535 animation: mxchat-kb-spin 1s linear infinite;
1536 margin: 0 0 10px 0;
1537 }
1538
1539 @keyframes mxchat-kb-spin {
1540 0% { transform: rotate(0deg); }
1541 100% { transform: rotate(360deg); }
1542 }
1543
1544 .mxchat-kb-progress-bar {
1545 height: 8px;
1546 background-color: #f0f0f0;
1547 border-radius: 4px;
1548 margin: 10px 0 15px;
1549 overflow: hidden;
1550 }
1551
1552 .mxchat-kb-progress-fill {
1553 height: 100%;
1554 background: linear-gradient(135deg, #fa73e6, #7873f5);
1555 transition: width 0.3s ease;
1556 }
1557
1558 .mxchat-kb-current-item {
1559 font-size: 14px;
1560 color: #555;
1561 margin: 10px 0 0;
1562 font-style: italic;
1563 }
1564
1565 .mxchat-kb-results-details {
1566 margin-top: 15px;
1567 text-align: left;
1568 max-height: 200px;
1569 overflow-y: auto;
1570 padding: 10px;
1571 border-radius: 4px;
1572 }
1573
1574 .mxchat-kb-results-details h5 {
1575 margin-top: 0;
1576 margin-bottom: 10px;
1577 color: #d63638;
1578 }
1579
1580 .mxchat-kb-results-details ul {
1581 margin: 0;
1582 padding-left: 20px;
1583 }
1584
1585 .mxchat-kb-results-details li {
1586 margin-bottom: 5px;
1587 }
1588
1589 /* ===== Processing Overlay ===== */
1590 .mxchat-kb-processing-overlay {
1591 position: fixed;
1592 top: 0;
1593 left: 0;
1594 width: 100%;
1595 height: 100%;
1596 background-color: rgba(0, 0, 0, 0.7);
1597 z-index: 9999999;
1598 display: flex;
1599 justify-content: center;
1600 align-items: center;
1601 }
1602
1603 .mxchat-kb-processing-content {
1604 background-color: white;
1605 padding: 30px;
1606 border-radius: 8px;
1607 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
1608 text-align: center;
1609 max-width: 500px;
1610 width: 90%;
1611 }
1612
1613 .mxchat-kb-processing-content h3 {
1614 margin-top: 0;
1615 margin-bottom: 15px;
1616 font-size: 20px;
1617 color: #7873f5;
1618 }
1619
1620 .mxchat-kb-processing-status {
1621 color: #555;
1622 margin-bottom: 20px;
1623 }
1624
1625 /* ===== Utility Classes ===== */
1626 .mxchat-na {
1627 color: #999;
1628 font-style: italic;
1629 }
1630
1631 .mxchat-no-records {
1632 text-align: center;
1633 color: #666;
1634 padding: 40px !important;
1635 }
1636
1637 /* ===== Responsive Design ===== */
1638 @media screen and (max-width: 782px) {
1639 /* Hero section */
1640 div.mxchat-hero h1.mxchat-main-title {
1641 font-size: 2.5rem;
1642 }
1643
1644 .mxchat-content {
1645 padding: 1rem;
1646 }
1647
1648 .mxchat-card {
1649 padding: 20px;
1650 }
1651
1652 .mxchat-card-header {
1653 flex-direction: column;
1654 gap: 16px;
1655 }
1656
1657 .mxchat-header-actions {
1658 flex-direction: column;
1659 width: 100%;
1660 }
1661
1662 .mxchat-search-group input {
1663 width: 100%;
1664 }
1665
1666 .mxchat-url-input-group {
1667 flex-direction: column;
1668 }
1669
1670 .mxchat-records-table {
1671 display: block;
1672 overflow-x: auto;
1673 }
1674
1675 .mxchat-content-cell {
1676 max-width: 200px;
1677 }
1678
1679 /* Modal responsive adjustments */
1680 .mxchat-kb-modal-content {
1681 width: 95%;
1682 max-height: 90vh;
1683 margin: 20px auto;
1684 }
1685
1686 .mxchat-kb-modal-filters {
1687 flex-direction: column;
1688 align-items: stretch;
1689 }
1690
1691 .mxchat-kb-search-group {
1692 max-width: none;
1693 }
1694
1695 .mxchat-kb-filter-group {
1696 flex-direction: column;
1697 }
1698
1699 .mxchat-kb-content-selection {
1700 max-height: calc(90vh - 250px);
1701 }
1702
1703 .mxchat-kb-selection-header {
1704 flex-direction: column;
1705 align-items: flex-start;
1706 gap: 10px;
1707 }
1708
1709 .mxchat-kb-modal-footer {
1710 flex-direction: column;
1711 }
1712
1713 .mxchat-kb-button-primary,
1714 .mxchat-kb-button-secondary {
1715 width: 100%;
1716 }
1717
1718 /* Import methods grid */
1719 .mxchat-import-methods-grid {
1720 grid-template-columns: 1fr;
1721 }
1722
1723 /* Primary import card */
1724 .mxchat-featured-button {
1725 width: 100%;
1726 }
1727 }
1728
1729 /* ===== Notification Styles ===== */
1730
1731 /* Base notification style */
1732 .mxchat-kb-notification {
1733 margin: 15px 20px 15px;
1734 padding: 15px;
1735 border-radius: 6px;
1736 border-left: 4px solid;
1737 position: relative;
1738 animation: mxchat-kb-notification-appear 0.3s ease-out;
1739 }
1740
1741 @keyframes mxchat-kb-notification-appear {
1742 from {
1743 opacity: 0;
1744 transform: translateY(-10px);
1745 }
1746 to {
1747 opacity: 1;
1748 transform: translateY(0);
1749 }
1750 }
1751
1752 /* Success notification */
1753 .mxchat-kb-notification.success {
1754 background-color: #f0f9eb;
1755 border-color: #67c23a;
1756 color: #3c763d;
1757 }
1758
1759 .mxchat-kb-notification.success h4 {
1760 color: #67c23a;
1761 margin: 0 0 5px;
1762 font-size: 16px;
1763 font-weight: 600;
1764 }
1765
1766 .mxchat-kb-notification.success::before {
1767 content: "\f147";
1768 font-family: dashicons;
1769 position: absolute;
1770 right: 15px;
1771 top: 15px;
1772 color: #67c23a;
1773 font-size: 20px;
1774 }
1775
1776 /* Error notification */
1777 .mxchat-kb-notification.error {
1778 background-color: #fef0f0;
1779 border-color: #d63638;
1780 color: #a94442;
1781 }
1782
1783 .mxchat-kb-notification.error h4 {
1784 color: #d63638;
1785 margin: 0 0 5px;
1786 font-size: 16px;
1787 font-weight: 600;
1788 }
1789
1790 .mxchat-kb-notification.error::before {
1791 content: "\f335";
1792 font-family: dashicons;
1793 position: absolute;
1794 right: 15px;
1795 top: 15px;
1796 color: #d63638;
1797 font-size: 20px;
1798 }
1799
1800 /* Warning notification */
1801 .mxchat-kb-notification.warning {
1802 background-color: #fdf6ec;
1803 border-color: #ff9800;
1804 color: #8a6d3b;
1805 }
1806
1807 .mxchat-kb-notification.warning h4 {
1808 color: #ff9800;
1809 margin: 0 0 5px;
1810 font-size: 16px;
1811 font-weight: 600;
1812 }
1813
1814 .mxchat-kb-notification.warning::before {
1815 content: "\f534";
1816 font-family: dashicons;
1817 position: absolute;
1818 right: 15px;
1819 top: 15px;
1820 color: #ff9800;
1821 font-size: 20px;
1822 }
1823
1824 /* Info notification */
1825 .mxchat-kb-notification.info {
1826 background-color: #f4f4fd;
1827 border-color: #7873f5;
1828 color: #31708f;
1829 }
1830
1831 .mxchat-kb-notification.info h4 {
1832 color: #7873f5;
1833 margin: 0 0 5px;
1834 font-size: 16px;
1835 font-weight: 600;
1836 }
1837
1838 .mxchat-kb-notification.info::before {
1839 content: "\f348";
1840 font-family: dashicons;
1841 position: absolute;
1842 right: 15px;
1843 top: 15px;
1844 color: #7873f5;
1845 font-size: 20px;
1846 }
1847
1848 /* Close button for notifications */
1849 .mxchat-kb-notification-close {
1850 position: absolute;
1851 top: 10px;
1852 right: 10px;
1853 cursor: pointer;
1854 color: inherit;
1855 opacity: 0.7;
1856 font-size: 16px;
1857 line-height: 1;
1858 transition: opacity 0.2s;
1859 }
1860
1861 .mxchat-kb-notification-close:hover {
1862 opacity: 1;
1863 }
1864
1865 /* Results details section */
1866 .mxchat-kb-results-details {
1867 margin-top: 12px;
1868 padding: 12px;
1869 border-radius: 4px;
1870 font-size: 13px;
1871 line-height: 1.5;
1872 }
1873
1874 .mxchat-kb-notification.success .mxchat-kb-results-details {
1875 background-color: rgba(103, 194, 58, 0.05);
1876 border: 1px solid rgba(103, 194, 58, 0.2);
1877 }
1878
1879 .mxchat-kb-notification.error .mxchat-kb-results-details {
1880
1881 }
1882
1883 .mxchat-kb-notification.warning .mxchat-kb-results-details {
1884 background-color: rgba(255, 152, 0, 0.05);
1885 border: 1px solid rgba(255, 152, 0, 0.2);
1886 }
1887
1888 .mxchat-kb-notification.info .mxchat-kb-results-details {
1889 background-color: rgba(120, 115, 245, 0.05);
1890 border: 1px solid rgba(120, 115, 245, 0.2);
1891 }
1892
1893 /* Results details title */
1894 .mxchat-kb-results-details h5 {
1895 margin: 0 0 10px;
1896 font-size: 14px;
1897 font-weight: 600;
1898 }
1899
1900 .mxchat-kb-notification.success .mxchat-kb-results-details h5 {
1901 color: #3c763d;
1902 }
1903
1904 .mxchat-kb-notification.error .mxchat-kb-results-details h5 {
1905 color: #a94442;
1906 }
1907
1908 .mxchat-kb-notification.warning .mxchat-kb-results-details h5 {
1909 color: #8a6d3b;
1910 }
1911
1912 .mxchat-kb-notification.info .mxchat-kb-results-details h5 {
1913 color: #31708f;
1914 }
1915
1916 /* List items in results details */
1917 .mxchat-kb-results-details ul {
1918 margin: 0;
1919 padding-left: 20px;
1920 list-style-type: disc;
1921 }
1922
1923 .mxchat-kb-results-details li {
1924 margin-bottom: 8px;
1925 padding-left: 3px;
1926 }
1927
1928 .mxchat-kb-results-details li:last-child {
1929 margin-bottom: 0;
1930 }
1931
1932 .mxchat-kb-results-details li strong {
1933 font-weight: 600;
1934 }
1935
1936 /* Failed items specific styling */
1937 .mxchat-kb-results-details li.failed-item {
1938 color: #d63638;
1939 }
1940
1941 /* Success items specific styling */
1942 .mxchat-kb-results-details li.success-item {
1943 color: #67c23a;
1944 }
1945
1946 /* Updated items specific styling */
1947 .mxchat-kb-results-details li.updated-item {
1948 color: #1e88e5;
1949 }
1950
1951 /* Processing summary information */
1952 .mxchat-kb-processing-summary {
1953 display: flex;
1954 flex-wrap: wrap;
1955 gap: 15px;
1956 margin-top: 10px;
1957 font-size: 14px;
1958 }
1959
1960 .mxchat-kb-summary-item {
1961 display: flex;
1962 align-items: center;
1963 gap: 5px;
1964 }
1965
1966 .mxchat-kb-summary-item .dashicons {
1967 font-size: 18px;
1968 }
1969
1970 .mxchat-kb-summary-item.processed .dashicons {
1971 color: #67c23a;
1972 }
1973
1974 .mxchat-kb-summary-item.updated .dashicons {
1975 color: #1e88e5;
1976 }
1977
1978 .mxchat-kb-summary-item.failed .dashicons {
1979 color: #d63638;
1980 }
1981
1982 /* Show more/less toggle for details */
1983 .mxchat-kb-show-details {
1984 display: inline-block;
1985 margin-top: 8px;
1986 color: #7873f5;
1987 cursor: pointer;
1988 font-size: 13px;
1989 font-weight: 500;
1990 }
1991
1992 .mxchat-kb-show-details:hover {
1993 text-decoration: underline;
1994 }
1995
1996 .mxchat-kb-show-details .dashicons {
1997 font-size: 16px;
1998 vertical-align: middle;
1999 margin-right: 2px;
2000 }
2001
2002 /* Collapsible details section */
2003 .mxchat-kb-results-details.collapsed {
2004 display: none;
2005 }
2006
2007 /* Responsive styles for notifications */
2008 @media screen and (max-width: 782px) {
2009 .mxchat-kb-notification {
2010 margin: 10px 15px 0;
2011 padding: 12px;
2012 }
2013
2014 .mxchat-kb-notification::before {
2015 display: none;
2016 }
2017
2018 .mxchat-kb-processing-summary {
2019 flex-direction: column;
2020 gap: 8px;
2021 }
2022 }
2023
2024
2025
2026
2027
2028 /* Tab Navigation */
2029 .mxchat-kb-tabs-nav {
2030 display: flex;
2031 margin-bottom: 20px;
2032 border-bottom: 1px solid #ccc;
2033 }
2034
2035 .mxchat-kb-tab-button {
2036 padding: 10px 15px;
2037 background: #f1f1f1;
2038 border: 1px solid #ccc;
2039 border-bottom: none;
2040 margin-right: 5px;
2041 cursor: pointer;
2042 font-weight: 500;
2043 border-radius: 5px 5px 0 0;
2044 }
2045
2046 .mxchat-kb-tab-button.active {
2047 background: #fff;
2048 border-bottom: 2px solid #fff;
2049 position: relative;
2050 bottom: -1px;
2051 color: #2271b1;
2052 }
2053
2054 /* Tab Content */
2055 .mxchat-kb-tab-content {
2056 display: none;
2057 }
2058
2059 .mxchat-kb-tab-content.active {
2060 display: block;
2061 }
2062
2063 /* Make the first card in tabs not have top margin */
2064 .mxchat-kb-tab-content .mxchat-card:first-child {
2065 margin-top: 0;
2066 }
2067
2068
2069
2070
2071
2072
2073 /* Pinecone Settings Tab Styles */
2074 .mxchat-pinecone-info-box {
2075 background: #f8f9ff;
2076 border: 1px solid rgba(120, 115, 245, 0.2);
2077 border-radius: 10px;
2078 padding: 20px;
2079 margin: 20px 0;
2080 display: flex;
2081 align-items: flex-start;
2082 gap: 15px;
2083 }
2084
2085 .mxchat-info-icon {
2086 flex-shrink: 0;
2087 }
2088
2089 .mxchat-info-icon .dashicons {
2090 color: #7873f5;
2091 font-size: 24px;
2092 width: 24px;
2093 height: 24px;
2094 }
2095
2096 .mxchat-info-content {
2097 flex: 1;
2098 }
2099
2100 .mxchat-info-content h4 {
2101 margin: 0 0 10px 0;
2102 color: #333;
2103 font-size: 16px;
2104 }
2105
2106 .mxchat-info-content p {
2107 margin: 0 0 8px 0;
2108 color: #666;
2109 font-size: 14px;
2110 line-height: 1.5;
2111 }
2112
2113 .mxchat-info-content p:last-child {
2114 margin-bottom: 0;
2115 }
2116
2117 .mxchat-info-content a {
2118 color: #7873f5;
2119 text-decoration: none;
2120 font-weight: 500;
2121 }
2122
2123 .mxchat-info-content a:hover {
2124 text-decoration: underline;
2125 }
2126
2127 /* Database Settings Form */
2128 .mxchat-database-settings-form {
2129 margin-top: 25px;
2130 }
2131
2132 /* Toggle Container */
2133 .mxchat-toggle-container {
2134 display: flex;
2135 align-items: center;
2136 gap: 12px;
2137 margin: 20px 0;
2138 padding: 15px 0;
2139 border-bottom: 1px solid rgba(120, 115, 245, 0.1);
2140 }
2141
2142 .mxchat-toggle-switch {
2143 position: relative;
2144 display: inline-block;
2145 width: 50px;
2146 height: 26px;
2147 }
2148
2149 .mxchat-toggle-switch input {
2150 opacity: 0;
2151 width: 0;
2152 height: 0;
2153 }
2154
2155 .mxchat-toggle-slider {
2156 position: absolute;
2157 cursor: pointer;
2158 top: 0;
2159 left: 0;
2160 right: 0;
2161 bottom: 0;
2162 background-color: #ddd;
2163 transition: 0.3s;
2164 border-radius: 26px;
2165 }
2166
2167 .mxchat-toggle-slider:before {
2168 position: absolute;
2169 content: "";
2170 height: 20px;
2171 width: 20px;
2172 left: 3px;
2173 bottom: 3px;
2174 background-color: white;
2175 transition: 0.3s;
2176 border-radius: 50%;
2177 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
2178 }
2179
2180 input:checked + .mxchat-toggle-slider {
2181 background: linear-gradient(135deg, #fa73e6, #7873f5);
2182 }
2183
2184 input:checked + .mxchat-toggle-slider:before {
2185 transform: translateX(24px);
2186 }
2187
2188 .mxchat-toggle-label {
2189 font-weight: 500;
2190 color: #333;
2191 font-size: 15px;
2192 }
2193
2194 /* Pinecone Settings Section */
2195 .mxchat-pinecone-settings {
2196 background: #f8f9ff;
2197 border: 1px solid rgba(120, 115, 245, 0.2);
2198 border-radius: 10px;
2199 padding: 25px;
2200 margin: 20px 0;
2201 }
2202
2203 /* Knowledge Warning (Success State) */
2204 .mxchat-knowledge-warning.success {
2205 background: #edfaef;
2206 border-left: 4px solid #46b450;
2207 padding: 15px;
2208 margin: 0 0 20px 0;
2209 border-radius: 4px;
2210 }
2211
2212 .mxchat-knowledge-warning.success p {
2213 margin: 0;
2214 color: #2a4f30;
2215 align-items: center;
2216 gap: 8px;
2217 }
2218
2219 .mxchat-knowledge-warning.success .dashicons {
2220 color: #46b450;
2221 }
2222
2223 /* Form Groups */
2224 .mxchat-form-group {
2225 margin-bottom: 20px;
2226 }
2227
2228 .mxchat-form-group label {
2229 display: block;
2230 margin-bottom: 8px;
2231 color: #333;
2232 font-weight: 500;
2233 font-size: 14px;
2234 }
2235
2236 .mxchat-form-group label .required {
2237 color: #dc3232;
2238 margin-left: 4px;
2239 }
2240
2241 .mxchat-form-group input[type="text"],
2242 .mxchat-form-group input[type="password"] {
2243 width: 100%;
2244 max-width: 400px;
2245 padding: 10px 12px;
2246 border: 1px solid rgba(120, 115, 245, 0.2);
2247 border-radius: 6px;
2248 background: white;
2249 font-size: 14px;
2250 transition: border-color 0.2s ease, box-shadow 0.2s ease;
2251 }
2252
2253 .mxchat-form-group input[type="text"]:focus,
2254 .mxchat-form-group input[type="password"]:focus {
2255 border-color: #7873f5;
2256 outline: none;
2257 box-shadow: 0 0 0 2px rgba(120, 115, 245, 0.1);
2258 }
2259
2260 .mxchat-form-group .description {
2261 margin: 8px 0 0 0;
2262 color: #666;
2263 font-size: 13px;
2264 line-height: 1.4;
2265 }
2266
2267 .mxchat-form-group .description a {
2268 color: #7873f5;
2269 text-decoration: none;
2270 font-weight: 500;
2271 }
2272
2273 .mxchat-form-group .description a:hover {
2274 text-decoration: underline;
2275 }
2276
2277 /* Setup Help Section */
2278 .mxchat-pinecone-setup-help {
2279 background: white;
2280 border: 1px solid rgba(120, 115, 245, 0.1);
2281 border-radius: 8px;
2282 padding: 20px;
2283 margin-top: 25px;
2284 }
2285
2286 .mxchat-pinecone-setup-help h3 {
2287 margin: 0 0 15px 0;
2288 color: #333;
2289 font-size: 16px;
2290 }
2291
2292 .mxchat-pinecone-setup-help ol {
2293 margin: 0;
2294 padding-left: 20px;
2295 }
2296
2297 .mxchat-pinecone-setup-help li {
2298 margin-bottom: 12px;
2299 color: #666;
2300 line-height: 1.5;
2301 }
2302
2303 .mxchat-pinecone-setup-help li:last-child {
2304 margin-bottom: 0;
2305 }
2306
2307 .mxchat-pinecone-setup-help ul {
2308 margin: 8px 0;
2309 padding-left: 20px;
2310 }
2311
2312 .mxchat-pinecone-setup-help ul li {
2313 margin-bottom: 6px;
2314 font-size: 13px;
2315 }
2316
2317 .mxchat-pinecone-setup-help a {
2318 color: #7873f5;
2319 text-decoration: none;
2320 font-weight: 500;
2321 }
2322
2323 .mxchat-pinecone-setup-help a:hover {
2324 text-decoration: underline;
2325 }
2326
2327 /* Connection Status Section */
2328 .mxchat-pinecone-status-section {
2329 background: white;
2330 border: 1px solid rgba(120, 115, 245, 0.1);
2331 border-radius: 8px;
2332 padding: 20px;
2333 margin-top: 25px;
2334 }
2335
2336 .mxchat-pinecone-status-section h3 {
2337 margin: 0 0 15px 0;
2338 color: #333;
2339 font-size: 16px;
2340 }
2341
2342 #mxchat-pinecone-test-connection {
2343 margin-bottom: 15px;
2344 }
2345
2346 #test-pinecone-connection {
2347 background: linear-gradient(135deg, #fa73e6, #7873f5);
2348 color: white;
2349 border: none;
2350 padding: 10px 20px;
2351 border-radius: 6px;
2352 cursor: pointer;
2353 font-size: 14px;
2354 font-weight: 500;
2355 transition: all 0.2s ease;
2356 }
2357
2358 #test-pinecone-connection:hover:not(:disabled) {
2359 transform: translateY(-1px);
2360 box-shadow: 0 4px 12px rgba(120, 115, 245, 0.3);
2361 }
2362
2363 #test-pinecone-connection:disabled {
2364 opacity: 0.6;
2365 cursor: not-allowed;
2366 transform: none;
2367 }
2368
2369 /* Test Result Styles */
2370 .mxchat-test-result {
2371 margin-top: 15px;
2372 }
2373
2374 .mxchat-test-result .notice {
2375 margin: 0;
2376 padding: 12px 15px;
2377 border-radius: 6px;
2378 display: flex;
2379 align-items: center;
2380 gap: 8px;
2381 }
2382
2383 .mxchat-test-result .notice-success {
2384 background: #edfaef;
2385 border-left: 4px solid #46b450;
2386 color: #2a4f30;
2387 }
2388
2389 .mxchat-test-result .notice-error {
2390 background: #fbeaea;
2391 border-left: 4px solid #dc3232;
2392 color: #721c24;
2393 }
2394
2395 .mxchat-test-result .notice .dashicons {
2396 flex-shrink: 0;
2397 }
2398
2399 .mxchat-test-result .notice p {
2400 margin: 0;
2401 font-size: 14px;
2402 }
2403
2404 /* Compatibility Notice */
2405 .mxchat-pinecone-compatibility-notice {
2406 background: #e8f4ff;
2407 border-left: 4px solid #2196f3;
2408 padding: 15px;
2409 margin: 0 0 20px 0;
2410 border-radius: 4px;
2411 }
2412
2413 .mxchat-pinecone-compatibility-notice p {
2414 margin: 0;
2415 color: #1565c0;
2416 font-size: 14px;
2417 line-height: 1.5;
2418 }
2419
2420 /* Responsive Design */
2421 @media screen and (max-width: 782px) {
2422 .mxchat-pinecone-info-box {
2423 flex-direction: column;
2424 gap: 10px;
2425 }
2426
2427 .mxchat-toggle-container {
2428 flex-direction: column;
2429 align-items: flex-start;
2430 gap: 8px;
2431 }
2432
2433 .mxchat-form-group input[type="text"],
2434 .mxchat-form-group input[type="password"] {
2435 max-width: 100%;
2436 }
2437
2438 .mxchat-pinecone-settings {
2439 padding: 15px;
2440 }
2441
2442 .mxchat-pinecone-setup-help,
2443 .mxchat-pinecone-status-section {
2444 padding: 15px;
2445 }
2446 }
2447
2448
2449 /* Setup Steps */
2450 .mxchat-setup-steps {
2451 margin: 30px 0;
2452 padding: 20px;
2453 background: #fff;
2454 border-radius: 10px;
2455 }
2456
2457 .mxchat-setup-step {
2458 display: flex;
2459 align-items: flex-start;
2460 margin-bottom: 20px;
2461 }
2462
2463 .step-number {
2464 background: linear-gradient(135deg, #fa73e6, #7873f5);
2465 color: white;
2466 width: 28px;
2467 height: 28px;
2468 border-radius: 50%;
2469 display: flex;
2470 align-items: center;
2471 justify-content: center;
2472 font-weight: bold;
2473 margin-right: 15px;
2474 flex-shrink: 0;
2475 }
2476
2477 .step-content {
2478 flex: 1;
2479 }
2480
2481 .step-content h4 {
2482 margin: 0 0 5px 0;
2483 }
2484
2485 .step-content p {
2486 margin: 0;
2487 color: #666;
2488 }
2489
2490 .step-content ul {
2491 margin-top: 5px;
2492 margin-bottom: 0;
2493 color: #666;
2494 }
2495
2496