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