PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 2.4.0
MxChat – AI Chatbot & Content Generation for WordPress v2.4.0
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 / test-panel.css

test-panel.css in MxChat – AI Chatbot & Content Generation for WordPress 2.4.0, at css/test-panel.css

694 lines 15.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* MxChat Testing Panel Styles */
2 .mxchat-test-panel {
3 position: fixed;
4 top: 0;
5 left: -400px; /* Hidden by default */
6 width: 400px;
7 height: 100vh;
8 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
9 box-shadow: 4px 0 20px rgba(0, 0, 0, 0.15);
10 z-index: 999999;
11 transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);
12 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
13 font-size: 14px;
14 overflow: hidden;
15 display: flex;
16 flex-direction: column;
17 }
18
19 .mxchat-test-panel.open {
20 left: 0;
21 }
22
23 /* Test Panel Tab */
24 .mxchat-test-tab {
25 position: fixed;
26 top: 50%;
27 left: 0;
28 transform: translateY(-50%);
29 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
30 color: white;
31 padding: 16px 10px;
32 border-radius: 0 12px 12px 0;
33 cursor: pointer;
34 z-index: 999998;
35 font-weight: 700;
36 font-size: 11px;
37 writing-mode: vertical-rl;
38 text-orientation: mixed;
39 box-shadow: 4px 0 15px rgba(0, 0, 0, 0.2);
40 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
41 border: 1px solid rgba(255, 255, 255, 0.2);
42 letter-spacing: 1px;
43 }
44
45 .mxchat-test-tab:hover {
46 background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%);
47 box-shadow: 6px 0 20px rgba(0, 0, 0, 0.3);
48 transform: translateY(-50%) translateX(2px);
49 }
50
51 /* Panel Header */
52 .mxchat-test-header {
53 background: rgba(255, 255, 255, 0.95);
54 backdrop-filter: blur(10px);
55 padding: 24px;
56 border-bottom: 1px solid rgba(255, 255, 255, 0.2);
57 position: relative;
58 box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
59 }
60
61 .mxchat-test-header h3 {
62 margin: 0 0 8px 0;
63 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
64 -webkit-background-clip: text;
65 -webkit-text-fill-color: transparent;
66 background-clip: text;
67 font-size: 18px;
68 font-weight: 700;
69 letter-spacing: -0.5px;
70 }
71
72 .mxchat-test-header p {
73 margin: 0;
74 color: #64748b;
75 font-size: 13px;
76 line-height: 1.5;
77 font-weight: 400;
78 }
79
80 /* Close Button */
81 .mxchat-test-close {
82 position: absolute;
83 top: 20px;
84 right: 20px;
85 background: rgba(255, 255, 255, 0.1);
86 border: 1px solid rgba(255, 255, 255, 0.2);
87 border-radius: 8px;
88 font-size: 18px;
89 color: #64748b;
90 cursor: pointer;
91 padding: 8px;
92 transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
93 width: 32px;
94 height: 32px;
95 display: flex;
96 align-items: center;
97 justify-content: center;
98 }
99
100 .mxchat-test-close:hover {
101 background: rgba(244, 67, 54, 0.1);
102 border-color: rgba(244, 67, 54, 0.3);
103 color: #f44336;
104 transform: scale(1.05);
105 }
106
107 /* Panel Content */
108 .mxchat-test-content {
109 flex: 1;
110 padding: 20px;
111 overflow-y: auto;
112 background: rgba(255, 255, 255, 0.95);
113 backdrop-filter: blur(10px);
114 }
115
116 /* Test Section */
117 .mxchat-test-section {
118 margin-bottom: 28px;
119 padding: 20px;
120 background: white;
121 border-radius: 12px;
122 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
123 border: 1px solid rgba(255, 255, 255, 0.8);
124 }
125
126 .mxchat-test-section:last-child {
127 margin-bottom: 0;
128 }
129
130 .mxchat-test-section h4 {
131 margin: 0 0 16px 0;
132 color: #1e293b;
133 font-size: 16px;
134 font-weight: 600;
135 letter-spacing: -0.3px;
136 display: flex;
137 align-items: center;
138 gap: 8px;
139 }
140
141 .mxchat-test-section h4::before {
142 content: '';
143 width: 4px;
144 height: 16px;
145 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
146 border-radius: 2px;
147 }
148
149 /* Action Buttons */
150 .mxchat-test-btn {
151 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
152 color: white;
153 border: none;
154 padding: 10px 18px;
155 border-radius: 8px;
156 cursor: pointer;
157 font-size: 13px;
158 font-weight: 600;
159 transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
160 margin-right: 10px;
161 margin-bottom: 10px;
162 box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
163 letter-spacing: 0.3px;
164 }
165
166 .mxchat-test-btn:hover {
167 transform: translateY(-2px);
168 box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
169 }
170
171 .mxchat-test-btn.danger {
172 background: linear-gradient(135deg, #ff6b6b 0%, #ee5a52 100%);
173 box-shadow: 0 2px 8px rgba(255, 107, 107, 0.3);
174 }
175
176 .mxchat-test-btn.danger:hover {
177 box-shadow: 0 4px 12px rgba(255, 107, 107, 0.4);
178 }
179
180 .mxchat-test-btn.secondary {
181 background: linear-gradient(135deg, #64748b 0%, #475569 100%);
182 box-shadow: 0 2px 8px rgba(100, 116, 139, 0.3);
183 }
184
185 .mxchat-test-btn.secondary:hover {
186 box-shadow: 0 4px 12px rgba(100, 116, 139, 0.4);
187 }
188
189 /* Info Display */
190 .mxchat-test-info {
191 background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
192 border: 1px solid #e2e8f0;
193 border-radius: 8px;
194 padding: 16px;
195 margin-top: 12px;
196 font-size: 13px;
197 line-height: 1.5;
198 }
199
200 .mxchat-test-info strong {
201 color: #1e293b;
202 display: block;
203 margin-bottom: 8px;
204 font-weight: 600;
205 font-size: 12px;
206 text-transform: uppercase;
207 letter-spacing: 0.5px;
208 }
209
210 .mxchat-test-info code {
211 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
212 color: white;
213 padding: 4px 8px;
214 border-radius: 4px;
215 font-family: 'SF Mono', Monaco, 'Cascadia Code', monospace;
216 font-size: 11px;
217 font-weight: 600;
218 }
219
220 /* Query Display */
221 .query-display {
222 font-style: italic;
223 color: #64748b;
224 background: #f8fafc;
225 padding: 12px 16px;
226 border-radius: 8px;
227 margin-top: 8px;
228 border-left: 4px solid #667eea;
229 font-weight: 500;
230 }
231
232 /* Similarity Container */
233 .similarity-container {
234 max-height: 400px;
235 overflow-y: auto;
236 margin-top: 12px;
237 border-radius: 10px;
238 padding: 0;
239 }
240
241 /* No Data Message */
242 .no-data-message {
243 color: #64748b;
244 font-style: italic;
245 padding: 24px;
246 text-align: center;
247 background: #f8fafc;
248 border-radius: 8px;
249 }
250
251 /* Matches Header */
252 .matches-header {
253 font-size: 13px;
254 margin-bottom: 12px;
255 padding: 12px 16px;
256 background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
257 border-radius: 8px;
258 border-left: 4px solid #667eea;
259 font-weight: 600;
260 color: #1e293b;
261 }
262
263 /* Match Cards */
264 .match-card {
265 margin-bottom: 12px;
266 border-radius: 10px;
267 overflow: hidden;
268 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
269 transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
270 border: 1px solid #e2e8f0;
271 }
272
273 .match-card:hover {
274 transform: translateY(-1px);
275 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
276 }
277
278 .match-card.above-threshold {
279 border-left: 4px solid #10b981;
280 background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%);
281 }
282
283 .match-card.below-threshold {
284 border-left: 4px solid #ef4444;
285 background: linear-gradient(135deg, #fef2f2 0%, #fef7f7 100%);
286 }
287
288 /* Match Header */
289 .match-header {
290 display: flex;
291 justify-content: space-between;
292 align-items: center;
293 padding: 12px 16px;
294 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
295 }
296
297 .match-card.above-threshold .match-header {
298 background: rgba(16, 185, 129, 0.1);
299 }
300
301 .match-card.below-threshold .match-header {
302 background: rgba(239, 68, 68, 0.1);
303 }
304
305 /* Match Title */
306 .match-title {
307 font-weight: 600;
308 font-size: 14px;
309 display: flex;
310 align-items: center;
311 gap: 8px;
312 }
313
314 .status-icon {
315 font-size: 14px;
316 }
317
318 .match-card.above-threshold .status-icon {
319 color: #10b981;
320 }
321
322 .match-card.below-threshold .status-icon {
323 color: #ef4444;
324 }
325
326 .doc-id {
327 color: #64748b;
328 font-weight: 500;
329 }
330
331 .similarity-score {
332 font-size: 16px;
333 font-weight: 700;
334 margin-left: 8px;
335 }
336
337 .match-card.above-threshold .similarity-score {
338 color: #10b981;
339 }
340
341 .match-card.below-threshold .similarity-score {
342 color: #ef4444;
343 }
344
345 /* Context Label */
346 .context-label {
347 font-size: 11px;
348 font-weight: 600;
349 padding: 4px 10px;
350 border-radius: 12px;
351 text-transform: uppercase;
352 letter-spacing: 0.5px;
353 }
354
355 .match-card.above-threshold .context-label {
356 color: #047857;
357 }
358
359 .match-card.below-threshold .context-label {
360 color: #dc2626;
361 }
362
363 /* Match Source */
364 .match-source {
365 padding: 12px 16px;
366 font-size: 12px;
367 color: #475569;
368 line-height: 1.4;
369 word-break: break-word;
370 display: flex;
371 align-items: flex-start;
372 gap: 8px;
373 }
374
375 .source-icon {
376 font-size: 14px;
377 margin-top: 1px;
378 flex-shrink: 0;
379 }
380
381 .link-icon {
382 color: #667eea;
383 }
384
385 .doc-icon {
386 color: #64748b;
387 }
388
389 /* System Prompt Container */
390 .system-prompt-container {
391 max-height: 150px;
392 overflow-y: auto;
393 background: #f8fafc;
394 border: 1px solid #e2e8f0;
395 border-radius: 8px;
396 padding: 12px;
397 margin-top: 8px;
398 font-size: 12px;
399 font-family: 'SF Mono', Monaco, 'Cascadia Code', monospace;
400 line-height: 1.4;
401 }
402
403 /* Debug Console */
404 .debug-console-container {
405 max-height: 200px;
406 overflow-y: auto;
407 background: #1e293b;
408 border: 1px solid #334155;
409 border-radius: 8px;
410 padding: 12px;
411 margin-top: 8px;
412 font-size: 12px;
413 font-family: 'SF Mono', Monaco, 'Cascadia Code', monospace;
414 color: #e2e8f0;
415 }
416
417 .debug-entry {
418 margin-bottom: 4px;
419 line-height: 1.4;
420 }
421
422 .debug-timestamp {
423 color: #64748b;
424 font-weight: 500;
425 }
426
427 .debug-placeholder {
428 color: #64748b;
429 font-style: italic;
430 }
431
432 /* Status Indicators */
433 .mxchat-test-status {
434 display: inline-block;
435 padding: 4px 10px;
436 border-radius: 12px;
437 font-size: 11px;
438 font-weight: 600;
439 margin-left: 10px;
440 text-transform: uppercase;
441 letter-spacing: 0.5px;
442 }
443
444 .mxchat-test-status.active {
445 background: linear-gradient(135deg, #10b981 0%, #059669 100%);
446 color: white;
447 box-shadow: 0 2px 4px rgba(16, 185, 129, 0.3);
448 }
449
450 .mxchat-test-status.inactive {
451 background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
452 color: white;
453 box-shadow: 0 2px 4px rgba(245, 158, 11, 0.3);
454 }
455
456 /* Error and Success Text */
457 .error-text {
458 color: #ef4444;
459 font-weight: 500;
460 }
461
462 .success-text {
463 color: #10b981;
464 font-weight: 500;
465 }
466
467 /* Toggle Switch */
468 .mxchat-test-toggle {
469 display: flex;
470 align-items: center;
471 gap: 12px;
472 margin-bottom: 12px;
473 padding: 12px;
474 background: #f8fafc;
475 border-radius: 8px;
476 border: 1px solid #e2e8f0;
477 }
478
479 .mxchat-test-switch {
480 position: relative;
481 width: 48px;
482 height: 24px;
483 background: #cbd5e1;
484 border-radius: 24px;
485 cursor: pointer;
486 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
487 box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
488 }
489
490 .mxchat-test-switch.active {
491 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
492 box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.2);
493 }
494
495 .mxchat-test-switch::after {
496 content: '';
497 position: absolute;
498 top: 2px;
499 left: 2px;
500 width: 20px;
501 height: 20px;
502 background: white;
503 border-radius: 50%;
504 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
505 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
506 }
507
508 .mxchat-test-switch.active::after {
509 transform: translateX(24px);
510 }
511
512 .mxchat-test-toggle label {
513 font-size: 13px;
514 color: #475569;
515 cursor: pointer;
516 font-weight: 500;
517 }
518
519 /* Responsive */
520 @media (max-width: 768px) {
521 .mxchat-test-panel {
522 width: 100vw;
523 left: -100vw;
524 }
525 }
526
527 /* Scrollbar Styling */
528 .mxchat-test-content::-webkit-scrollbar,
529 .similarity-container::-webkit-scrollbar,
530 .system-prompt-container::-webkit-scrollbar,
531 .debug-console-container::-webkit-scrollbar {
532 width: 6px;
533 }
534
535 .mxchat-test-content::-webkit-scrollbar-track,
536 .similarity-container::-webkit-scrollbar-track,
537 .system-prompt-container::-webkit-scrollbar-track {
538 background: #f1f5f9;
539 border-radius: 3px;
540 }
541
542 .debug-console-container::-webkit-scrollbar-track {
543 background: #334155;
544 }
545
546 .mxchat-test-content::-webkit-scrollbar-thumb,
547 .similarity-container::-webkit-scrollbar-thumb,
548 .system-prompt-container::-webkit-scrollbar-thumb {
549 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
550 border-radius: 3px;
551 }
552
553 .debug-console-container::-webkit-scrollbar-thumb {
554 background: #64748b;
555 border-radius: 3px;
556 }
557
558 .mxchat-test-content::-webkit-scrollbar-thumb:hover,
559 .similarity-container::-webkit-scrollbar-thumb:hover,
560 .system-prompt-container::-webkit-scrollbar-thumb:hover,
561 .debug-console-container::-webkit-scrollbar-thumb:hover {
562 background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%);
563 }
564
565 /* Animation for opening */
566 @keyframes slideIn {
567 from {
568 opacity: 0;
569 transform: translateX(-20px);
570 }
571 to {
572 opacity: 1;
573 transform: translateX(0);
574 }
575 }
576
577 .mxchat-test-section {
578 animation: slideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);
579 }
580
581 .mxchat-test-section:nth-child(2) { animation-delay: 0.1s; }
582 .mxchat-test-section:nth-child(3) { animation-delay: 0.2s; }
583 .mxchat-test-section:nth-child(4) { animation-delay: 0.3s; }
584
585
586
587 /* Compact Stacked Action Cards */
588 .actions-container {
589 max-height: 300px;
590 overflow-y: auto;
591 border-radius: 4px;
592 padding: 6px;
593 }
594
595 .actions-header {
596 margin-bottom: 6px;
597 padding-bottom: 4px;
598 border-bottom: 1px solid #e0e0e0;
599 font-size: 12px;
600 }
601
602 .action-card {
603 margin-bottom: 4px;
604 padding: 6px 8px;
605 border-radius: 3px;
606 border-left: 3px solid #ccc;
607 background: white;
608 width: 100%;
609 }
610
611 .action-card.action-triggered {
612 border-left-color: #28a745;
613 background: #f8fff9;
614 }
615
616 .action-card.action-above-threshold {
617 border-left-color: #ffc107;
618 background: #fffdf5;
619 }
620
621 .action-card.action-below-threshold {
622 border-left-color: #dc3545;
623 background: #fff5f5;
624 }
625
626 .action-line {
627 display: flex;
628 align-items: center;
629 justify-content: space-between;
630 gap: 6px;
631 margin-bottom: 3px;
632 }
633
634 .action-icon {
635 font-size: 12px;
636 flex-shrink: 0;
637 }
638
639 .action-name {
640 font-weight: 600;
641 font-size: 11px;
642 color: #333;
643 flex: 1;
644 white-space: nowrap;
645 overflow: hidden;
646 text-overflow: ellipsis;
647 }
648
649 .action-score {
650 font-weight: bold;
651 font-size: 11px;
652 color: #333;
653 background: #f0f0f0;
654 padding: 1px 4px;
655 border-radius: 2px;
656 flex-shrink: 0;
657 }
658
659 .action-details {
660 display: flex;
661 justify-content: space-between;
662 align-items: center;
663 font-size: 9px;
664 color: #666;
665 gap: 6px;
666 }
667
668 .action-status {
669 font-weight: 600;
670 text-transform: uppercase;
671 padding: 1px 3px;
672 border-radius: 2px;
673 flex-shrink: 0;
674 }
675
676 .action-triggered .action-status {
677 background: #28a745;
678 color: white;
679 }
680
681 .action-above-threshold .action-status {
682 background: #ffc107;
683 color: #333;
684 }
685
686 .action-below-threshold .action-status {
687 background: #dc3545;
688 color: white;
689 }
690
691 .action-threshold {
692 font-size: 9px;
693 color: #666;
694 }