PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.87
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.87
51.1.87 51.1.86 51.1.84 51.1.85 51.1.83 51.1.82 51.1.81 51.1.79 51.1.78 51.1.77 51.1.76 51.1.74 51.1.75 51.1.65 51.1.64 51.1.63 trunk 51.1.14 51.1.2 51.1.35 51.1.36 51.1.37 51.1.38 51.1.39 51.1.44 All 41 releases
king-addons / includes / admin / layouts / dashboard-v3 / dashboard-v3.css

dashboard-v3.css in King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder 51.1.87, at includes/admin/layouts/dashboard-v3/dashboard-v3.css

1,856 lines 36.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * Dashboard V3 Styles - Premium style inspired "Pro" UI
3 *
4 * Modern, premium design with glassmorphism, bento grids, and iOS aesthetics.
5 * Inspired by high-end product pages like apple.com/iphone-17-pro
6 *
7 * @package King_Addons
8 */
9
10 @font-face {
11 font-family: 'Inter';
12 font-style: normal;
13 font-weight: 100 900;
14 font-display: swap;
15 src: url('../../fonts/Inter.woff2') format('woff2');
16 }
17
18 /* ===== RESET & BASE ===== */
19 body.king-addons_page_king-addons-dashboard-v3,
20 body.toplevel_page_king-addons {
21 background: #f5f5f7 !important;
22 }
23
24 body.king-addons_page_king-addons-dashboard-v3.ka-v3-dark,
25 body.toplevel_page_king-addons.ka-v3-dark {
26 background: #000000 !important;
27 }
28
29 body.king-addons_page_king-addons-dashboard-v3 #wpcontent,
30 body.king-addons_page_king-addons-dashboard-v3 #wpbody,
31 body.king-addons_page_king-addons-dashboard-v3 #wpbody-content,
32 body.toplevel_page_king-addons #wpcontent,
33 body.toplevel_page_king-addons #wpbody,
34 body.toplevel_page_king-addons #wpbody-content {
35 background: #f5f5f7 !important;
36 padding: 0 !important;
37 }
38
39 body.king-addons_page_king-addons-dashboard-v3.ka-v3-dark #wpcontent,
40 body.king-addons_page_king-addons-dashboard-v3.ka-v3-dark #wpbody,
41 body.king-addons_page_king-addons-dashboard-v3.ka-v3-dark #wpbody-content,
42 body.toplevel_page_king-addons.ka-v3-dark #wpcontent,
43 body.toplevel_page_king-addons.ka-v3-dark #wpbody,
44 body.toplevel_page_king-addons.ka-v3-dark #wpbody-content {
45 background: #000000 !important;
46 }
47
48 .ka-v3-wrap {
49 font-family: 'Inter', -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
50 max-width: 1400px;
51 margin: 0 auto;
52 padding: 60px 40px 120px 40px;
53 color: #1d1d1f;
54 transition: color 0.3s ease;
55 }
56
57 .ka-v3-wrap * {
58 box-sizing: border-box;
59 }
60
61 /* ===== TYPOGRAPHY ===== */
62 .ka-v3-title {
63 font-size: 56px;
64 font-weight: 700;
65 letter-spacing: -0.015em;
66 margin: 0 0 12px;
67 line-height: 1.05;
68 background: linear-gradient(135deg, #1d1d1f 0%, #515154 100%);
69 -webkit-background-clip: text;
70 -webkit-text-fill-color: transparent;
71 background-clip: text;
72 padding: 0 10px 4px 0;
73 }
74
75 .ka-v3-title em {
76 font-family: "EB Garamond", serif;
77 }
78
79 .ka-v3-subtitle {
80 font-size: 21px;
81 font-weight: 400;
82 color: #86868b;
83 margin: 0 0 48px;
84 line-height: 1.5;
85 }
86
87 /* ===== HEADER ===== */
88 .ka-v3-header {
89 display: flex;
90 justify-content: space-between;
91 align-items: flex-start;
92 margin-bottom: 32px;
93 }
94
95 .ka-v3-header-actions {
96 display: flex;
97 gap: 12px;
98 align-items: center;
99 }
100
101
102 .ka-v3-segmented {
103 position: relative;
104 display: grid;
105 grid-template-columns: 1fr 1fr 1fr;
106 align-items: center;
107 padding: 2px;
108 border-radius: 980px;
109 background: rgba(0, 0, 0, 0.06);
110 border: 1px solid rgba(0, 0, 0, 0.06);
111 min-width: 240px;
112 height: 40px;
113 overflow: hidden;
114 }
115
116 .ka-v3-segmented-indicator {
117 position: absolute;
118 top: 2px;
119 bottom: 2px;
120 left: 2px;
121 width: calc(33.333% - 2px);
122 border-radius: 980px;
123 background: rgba(255, 255, 255, 0.92);
124 box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
125 transform: translateX(0);
126 transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1);
127 z-index: 0;
128 }
129
130 .ka-v3-segmented[data-active="dark"] .ka-v3-segmented-indicator {
131 transform: translateX(100%);
132 }
133
134 .ka-v3-segmented[data-active="auto"] .ka-v3-segmented-indicator {
135 transform: translateX(200%);
136 }
137
138 .ka-v3-segmented-btn {
139 position: relative;
140 z-index: 1;
141 height: 36px;
142 border: none;
143 background: transparent;
144 border-radius: 980px;
145 padding: 0 12px;
146 display: inline-flex;
147 align-items: center;
148 justify-content: center;
149 gap: 8px;
150 font-size: 13px;
151 font-weight: 500;
152 color: #1d1d1f;
153 cursor: pointer;
154 transition: color 0.25s ease, transform 0.25s ease;
155 user-select: none;
156 white-space: nowrap;
157 }
158
159 .ka-v3-segmented-btn:active {
160 transform: scale(0.98);
161 }
162
163 .ka-v3-segmented-icon {
164 font-size: 14px;
165 line-height: 1;
166 opacity: 0.9;
167 }
168
169 .ka-v3-segmented-btn[aria-pressed="false"] {
170 color: rgba(29, 29, 31, 0.7);
171 }
172
173 /* ===== FOOTER ===== */
174 #wpfooter {
175 visibility: visible;
176 }
177
178
179 /* ===== BUTTONS ===== */
180 .ka-v3-btn {
181 display: inline-flex;
182 align-items: center;
183 gap: 8px;
184 padding: 12px 24px;
185 border-radius: 980px;
186 font-size: 15px;
187 font-weight: 400;
188 text-decoration: none;
189 transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
190 cursor: pointer;
191 border: none;
192 white-space: nowrap;
193 }
194
195 .ka-v3-btn-secondary {
196 background: rgba(0, 0, 0, 0.06);
197 color: #1d1d1f;
198 }
199
200 .ka-v3-btn-secondary:hover {
201 background: rgba(0, 0, 0, 0.12);
202 color: #1d1d1f;
203 }
204
205 .ka-v3-btn-primary {
206 background: #0071e3;
207 color: #fff;
208 }
209
210 .ka-v3-btn-primary:hover {
211 background: #0077ed;
212 color: #fff;
213 transform: scale(1.02);
214 }
215
216 .ka-v3-btn .dashicons {
217 font-size: 18px;
218 width: 18px;
219 height: 18px;
220 }
221
222 /* ===== BENTO GRID STATS ===== */
223 .ka-v3-bento {
224 display: grid;
225 grid-template-columns: repeat(4, 1fr);
226 gap: 20px;
227 margin-bottom: 60px;
228 }
229
230 .ka-v3-bento-card {
231 background: #fff;
232 border-radius: 28px;
233 padding: 28px;
234 display: flex;
235 flex-direction: column;
236 justify-content: space-between;
237 min-height: 180px;
238 box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04);
239 transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
240 position: relative;
241 overflow: hidden;
242 }
243
244 .ka-v3-bento-card:hover {
245 transform: scale(1.02) translateY(-4px);
246 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.1);
247 }
248
249 .ka-v3-bento-card.large {
250 grid-column: span 2;
251 }
252
253 .ka-v3-bento-label {
254 font-size: 13px;
255 font-weight: 600;
256 color: #86868b;
257 text-transform: uppercase;
258 letter-spacing: 0.06em;
259 z-index: 2;
260 }
261
262 .ka-v3-bento-value {
263 font-size: 64px;
264 font-weight: 700;
265 letter-spacing: -0.025em;
266 line-height: 1;
267 z-index: 2;
268 background: linear-gradient(135deg, #1d1d1f 0%, #515154 100%);
269 -webkit-background-clip: text;
270 -webkit-text-fill-color: transparent;
271 background-clip: text;
272 }
273
274 .ka-v3-bento-desc {
275 font-size: 17px;
276 font-weight: 500;
277 color: #1d1d1f;
278 margin-top: 6px;
279 z-index: 2;
280 }
281
282 .ka-v3-bento-bg {
283 position: absolute;
284 border-radius: 50%;
285 filter: blur(80px);
286 opacity: 0.35;
287 z-index: 1;
288 pointer-events: none;
289 }
290
291 /* ===== PROMO CARD (Trinity Backup) ===== */
292 .ka-v3-promo-card {
293 background: linear-gradient(145deg, #667eea 0%, #764ba2 100%);
294 border: none;
295 cursor: default;
296 padding: 24px;
297 gap: 16px;
298 }
299
300 .ka-v3-promo-card:hover {
301 transform: scale(1.02) translateY(-4px);
302 box-shadow: 0 12px 40px rgba(102, 126, 234, 0.3);
303 }
304
305 .ka-v3-promo-icon {
306 width: 52px;
307 height: 52px;
308 border-radius: 14px;
309 box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
310 flex-shrink: 0;
311 }
312
313 .ka-v3-promo-text {
314 display: flex;
315 flex-direction: column;
316 gap: 2px;
317 flex: 1;
318 }
319
320 .ka-v3-promo-label {
321 font-size: 10px;
322 font-weight: 600;
323 color: rgba(255, 255, 255, 0.6);
324 text-transform: uppercase;
325 letter-spacing: 0.1em;
326 }
327
328 .ka-v3-promo-title {
329 font-size: 17px;
330 font-weight: 700;
331 color: #fff;
332 letter-spacing: -0.02em;
333 }
334
335 .ka-v3-promo-desc {
336 font-size: 12px;
337 color: rgba(255, 255, 255, 0.75);
338 line-height: 1.3;
339 }
340
341 .ka-v3-promo-btn {
342 display: inline-flex;
343 align-items: center;
344 justify-content: center;
345 gap: 8px;
346 padding: 10px 20px;
347 background: #fff;
348 color: #667eea;
349 font-size: 13px;
350 font-weight: 600;
351 border: none;
352 border-radius: 980px;
353 cursor: pointer;
354 transition: all 0.2s ease;
355 min-width: 110px;
356 position: relative;
357 }
358
359 .ka-v3-promo-btn:hover {
360 background: rgba(255, 255, 255, 0.9);
361 transform: scale(1.03);
362 }
363
364 .ka-v3-promo-btn.loading .ka-v3-promo-btn-text {
365 opacity: 0;
366 }
367
368 .ka-v3-promo-btn.loading .ka-v3-promo-btn-loading {
369 display: block;
370 }
371
372 .ka-v3-promo-btn-loading {
373 display: none;
374 position: absolute;
375 width: 16px;
376 height: 16px;
377 border: 2px solid rgba(102, 126, 234, 0.3);
378 border-top-color: #667eea;
379 border-radius: 50%;
380 animation: ka-spin 0.8s linear infinite;
381 }
382
383 @keyframes ka-spin {
384 to { transform: rotate(360deg); }
385 }
386
387 .ka-v3-promo-btn.success {
388 background: #34c759;
389 color: #fff;
390 pointer-events: none;
391 }
392
393 .ka-v3-promo-btn.success .ka-v3-promo-btn-text::before {
394 content: '\2713\0020';
395 }
396
397 .ka-v3-promo-btn.error {
398 background: #ff3b30;
399 color: #fff;
400 }
401
402 /* Hide promo card when dismissed */
403 .ka-v3-promo-card.hidden {
404 display: none;
405 }
406
407 /* ===== TRINITY BACKUP SLIM BANNER (Apple Style) ===== */
408 .ka-v3-trinity-slim {
409 display: flex;
410 align-items: center;
411 justify-content: space-between;
412 background: #1d1d1f;
413 border-radius: 18px;
414 padding: 20px 28px;
415 margin: 32px 0;
416 transition: all 0.3s ease;
417 margin-top: -20px;
418 }
419
420 .ka-v3-trinity-slim-left {
421 display: flex;
422 align-items: center;
423 gap: 16px;
424 }
425
426 .ka-v3-trinity-slim-icon {
427 width: 48px;
428 height: 48px;
429 border-radius: 12px;
430 flex-shrink: 0;
431 object-fit: cover;
432 }
433
434 .ka-v3-trinity-slim-text {
435 display: flex;
436 flex-direction: column;
437 gap: 4px;
438 }
439
440 .ka-v3-trinity-slim-title {
441 font-size: 17px;
442 font-weight: 600;
443 color: #f5f5f7;
444 letter-spacing: -0.01em;
445 }
446
447 .ka-v3-trinity-slim-desc {
448 font-size: 14px;
449 font-weight: 400;
450 color: #86868b;
451 letter-spacing: -0.01em;
452 }
453
454 .ka-v3-trinity-slim-btn {
455 display: inline-flex;
456 align-items: center;
457 gap: 6px;
458 padding: 12px 22px;
459 background: #fff;
460 color: #1d1d1f;
461 font-size: 14px;
462 font-weight: 400;
463 letter-spacing: -0.01em;
464 border: none;
465 border-radius: 980px;
466 cursor: pointer;
467 transition: all 0.2s ease;
468 position: relative;
469 }
470
471 .ka-v3-trinity-slim-btn:hover {
472 background: #f5f5f7;
473 }
474
475 .ka-v3-trinity-slim-btn-arrow {
476 width: 14px;
477 height: 14px;
478 color: #1d1d1f;
479 transition: transform 0.2s ease;
480 }
481
482 .ka-v3-trinity-slim-btn:hover .ka-v3-trinity-slim-btn-arrow {
483 transform: translateX(2px);
484 }
485
486 .ka-v3-trinity-slim-btn.loading .ka-v3-trinity-slim-btn-text,
487 .ka-v3-trinity-slim-btn.loading .ka-v3-trinity-slim-btn-arrow {
488 opacity: 0;
489 }
490
491 .ka-v3-trinity-slim-btn-loading {
492 display: none;
493 position: absolute;
494 top: 50%;
495 left: 50%;
496 margin-top: -8px;
497 margin-left: -8px;
498 width: 16px;
499 height: 16px;
500 border: 2px solid rgba(0, 0, 0, 0.15);
501 border-top-color: #1d1d1f;
502 border-radius: 50%;
503 animation: ka-spin 0.8s linear infinite;
504 }
505
506 .ka-v3-trinity-slim-btn.loading .ka-v3-trinity-slim-btn-loading {
507 display: block;
508 }
509
510 .ka-v3-trinity-slim-btn.success {
511 background: #30d158;
512 }
513
514 .ka-v3-trinity-slim-btn.success .ka-v3-trinity-slim-btn-text::before {
515 content: '✓ ';
516 }
517
518 .ka-v3-trinity-slim-btn.error {
519 background: #ff453a;
520 }
521
522 /* Light mode override for slim banner */
523 .ka-v3-trinity-slim {
524 background: #fff;
525 box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04);
526 }
527
528 .ka-v3-trinity-slim-title {
529 color: #1d1d1f;
530 }
531
532 .ka-v3-trinity-slim-desc {
533 color: #6e6e73;
534 }
535
536 .ka-v3-trinity-slim-btn {
537 background: #1d1d1f;
538 color: #fff;
539 }
540
541 .ka-v3-trinity-slim-btn:hover {
542 background: #3a3a3c;
543 }
544
545 .ka-v3-trinity-slim-btn-arrow {
546 color: #fff;
547 }
548
549 .ka-v3-trinity-slim-btn-loading {
550 border-color: rgba(255, 255, 255, 0.3);
551 border-top-color: #fff;
552 }
553
554 /* Dark mode */
555 .ka-v3-dark .ka-v3-trinity-slim {
556 background: #1d1d1f;
557 }
558
559 .ka-v3-dark .ka-v3-trinity-slim-title {
560 color: #f5f5f7;
561 }
562
563 .ka-v3-dark .ka-v3-trinity-slim-desc {
564 color: #a1a1a6;
565 }
566
567 .ka-v3-dark .ka-v3-trinity-slim-btn {
568 background: #fff;
569 color: #1d1d1f;
570 }
571
572 .ka-v3-dark .ka-v3-trinity-slim-btn:hover {
573 background: #f5f5f7;
574 }
575
576 .ka-v3-dark .ka-v3-trinity-slim-btn-arrow {
577 color: #1d1d1f;
578 }
579
580 .ka-v3-dark .ka-v3-trinity-slim-btn-loading {
581 border-color: rgba(0, 0, 0, 0.15);
582 border-top-color: #1d1d1f;
583 }
584
585 /* Responsive */
586 @media (max-width: 600px) {
587 .ka-v3-trinity-slim {
588 flex-direction: column;
589 text-align: center;
590 gap: 16px;
591 padding: 20px;
592 }
593
594 .ka-v3-trinity-slim-left {
595 flex-direction: column;
596 }
597
598 .ka-v3-segmented {
599 min-width: 0;
600 width: 100%;
601 max-width: 100%;
602 }
603 }
604
605 /* ===== LARGE TRINITY BACKUP BANNER ===== */
606 .ka-v3-trinity-banner {
607 position: relative;
608 display: flex;
609 align-items: center;
610 justify-content: center;
611 background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
612 border-radius: 24px;
613 padding: 40px 48px;
614 margin: 48px 0 24px;
615 overflow: hidden;
616 box-shadow: 0 20px 60px rgba(102, 126, 234, 0.35);
617 }
618
619 .ka-v3-trinity-banner::before {
620 content: '';
621 position: absolute;
622 top: 0;
623 left: 0;
624 right: 0;
625 bottom: 0;
626 background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="3" fill="rgba(255,255,255,0.08)"/><circle cx="40" cy="70" r="2.5" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="80" r="2" fill="rgba(255,255,255,0.06)"/></svg>');
627 background-size: 100px 100px;
628 pointer-events: none;
629 }
630
631 .ka-v3-trinity-banner-content {
632 position: relative;
633 z-index: 1;
634 display: flex;
635 align-items: center;
636 justify-content: space-between;
637 width: 100%;
638 max-width: 1200px;
639 gap: 40px;
640 }
641
642 .ka-v3-trinity-banner-left {
643 display: flex;
644 align-items: center;
645 gap: 24px;
646 flex: 1;
647 }
648
649 .ka-v3-trinity-banner-icon {
650 width: 80px;
651 height: 80px;
652 border-radius: 20px;
653 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
654 flex-shrink: 0;
655 }
656
657 .ka-v3-trinity-banner-text {
658 display: flex;
659 flex-direction: column;
660 gap: 4px;
661 }
662
663 .ka-v3-trinity-banner-label {
664 font-size: 12px;
665 font-weight: 600;
666 text-transform: uppercase;
667 letter-spacing: 1px;
668 color: rgba(255, 255, 255, 0.8);
669 }
670
671 .ka-v3-trinity-banner-title {
672 font-size: 32px;
673 font-weight: 700;
674 color: #fff;
675 margin: 0;
676 line-height: 1.2;
677 }
678
679 .ka-v3-trinity-banner-desc {
680 font-size: 15px;
681 color: rgba(255, 255, 255, 0.9);
682 margin: 4px 0 0;
683 max-width: 400px;
684 line-height: 1.5;
685 }
686
687 .ka-v3-trinity-banner-right {
688 display: flex;
689 flex-direction: column;
690 align-items: flex-end;
691 gap: 16px;
692 flex-shrink: 0;
693 }
694
695 .ka-v3-trinity-banner-features {
696 display: flex;
697 flex-direction: column;
698 gap: 8px;
699 }
700
701 .ka-v3-trinity-banner-feature {
702 display: flex;
703 align-items: center;
704 gap: 8px;
705 font-size: 14px;
706 font-weight: 500;
707 color: #fff;
708 }
709
710 .ka-v3-trinity-banner-feature .dashicons {
711 font-size: 18px;
712 width: 18px;
713 height: 18px;
714 color: #a8ff78;
715 }
716
717 .ka-v3-trinity-banner-btn {
718 position: relative;
719 display: inline-flex;
720 align-items: center;
721 justify-content: center;
722 padding: 14px 32px;
723 background: #fff;
724 color: #667eea;
725 font-size: 15px;
726 font-weight: 600;
727 border: none;
728 border-radius: 50px;
729 cursor: pointer;
730 transition: all 0.3s ease;
731 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
732 min-width: 180px;
733 }
734
735 .ka-v3-trinity-banner-btn:hover {
736 transform: translateY(-2px);
737 box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
738 background: #f8f9ff;
739 }
740
741 .ka-v3-trinity-banner-btn:active {
742 transform: translateY(0);
743 }
744
745 .ka-v3-trinity-banner-btn.loading {
746 pointer-events: none;
747 }
748
749 .ka-v3-trinity-banner-btn.loading .ka-v3-trinity-banner-btn-text {
750 opacity: 0;
751 }
752
753 .ka-v3-trinity-banner-btn-loading {
754 display: none;
755 position: absolute;
756 width: 20px;
757 height: 20px;
758 border: 2px solid rgba(102, 126, 234, 0.3);
759 border-top-color: #667eea;
760 border-radius: 50%;
761 animation: ka-spin 0.8s linear infinite;
762 }
763
764 .ka-v3-trinity-banner-btn.loading .ka-v3-trinity-banner-btn-loading {
765 display: block;
766 }
767
768 .ka-v3-trinity-banner-btn.success {
769 background: #22c55e;
770 color: #fff;
771 }
772
773 .ka-v3-trinity-banner-btn.success .ka-v3-trinity-banner-btn-text::before {
774 content: '✓ ';
775 }
776
777 .ka-v3-trinity-banner-btn.error {
778 background: #ef4444;
779 color: #fff;
780 }
781
782 .ka-v3-trinity-banner-close {
783 position: absolute;
784 top: 16px;
785 right: 16px;
786 width: 32px;
787 height: 32px;
788 display: flex;
789 align-items: center;
790 justify-content: center;
791 background: rgba(255, 255, 255, 0.2);
792 border: none;
793 border-radius: 50%;
794 cursor: pointer;
795 transition: all 0.2s ease;
796 z-index: 2;
797 }
798
799 .ka-v3-trinity-banner-close:hover {
800 background: rgba(255, 255, 255, 0.3);
801 }
802
803 .ka-v3-trinity-banner-close .dashicons {
804 font-size: 20px;
805 width: 20px;
806 height: 20px;
807 color: #fff;
808 }
809
810 /* Banner responsive */
811 @media (max-width: 900px) {
812 .ka-v3-trinity-banner {
813 padding: 32px 24px;
814 }
815
816 .ka-v3-trinity-banner-content {
817 flex-direction: column;
818 text-align: center;
819 gap: 24px;
820 }
821
822 .ka-v3-trinity-banner-left {
823 flex-direction: column;
824 }
825
826 .ka-v3-trinity-banner-right {
827 align-items: center;
828 }
829
830 .ka-v3-trinity-banner-desc {
831 max-width: 100%;
832 }
833
834 .ka-v3-trinity-banner-features {
835 flex-direction: row;
836 flex-wrap: wrap;
837 justify-content: center;
838 gap: 12px 24px;
839 }
840 }
841
842 @media (max-width: 480px) {
843 .ka-v3-trinity-banner-title {
844 font-size: 24px;
845 }
846
847 .ka-v3-trinity-banner-icon {
848 width: 64px;
849 height: 64px;
850 }
851 }
852
853 /* Dark mode for banner */
854 .ka-v3-dark .ka-v3-trinity-banner {
855 background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
856 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
857 }
858
859 .ka-v3-dark .ka-v3-trinity-banner-btn {
860 background: rgba(255, 255, 255, 0.95);
861 }
862
863 .ka-v3-dark .ka-v3-trinity-banner-btn:hover {
864 background: #fff;
865 }
866
867 /* ===== NAVIGATION ===== */
868 .ka-v3-nav {
869 display: flex;
870 justify-content: center;
871 background: rgba(255, 255, 255, 0.72);
872 backdrop-filter: saturate(180%) blur(20px);
873 -webkit-backdrop-filter: saturate(180%) blur(20px);
874 padding: 6px;
875 border-radius: 980px;
876 width: fit-content;
877 margin: 0 auto 48px;
878 position: sticky;
879 top: 32px;
880 z-index: 100;
881 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
882 border: 1px solid rgba(0, 0, 0, 0.04);
883 }
884
885 .ka-v3-nav-item {
886 padding: 12px 28px;
887 border-radius: 980px;
888 border: none;
889 background: transparent;
890 font-size: 15px;
891 font-weight: 500;
892 color: #1d1d1f;
893 cursor: pointer;
894 transition: all 0.3s ease;
895 }
896
897 .ka-v3-nav-item:hover {
898 color: #0071e3;
899 }
900
901 .ka-v3-nav-item.active {
902 background: #1d1d1f;
903 color: #fff;
904 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
905 }
906
907 .ka-v3-nav-badge {
908 display: inline-flex;
909 align-items: center;
910 justify-content: center;
911 min-width: 22px;
912 height: 22px;
913 padding: 0 7px;
914 background: rgba(0, 0, 0, 0.08);
915 border-radius: 11px;
916 font-size: 12px;
917 font-weight: 600;
918 margin-left: 8px;
919 }
920
921 .ka-v3-nav-item.active .ka-v3-nav-badge {
922 background: rgba(255, 255, 255, 0.25);
923 }
924
925 /* ===== PERFORMANCE TIP ===== */
926 .ka-v3-tip {
927 display: flex;
928 align-items: flex-start;
929 gap: 20px;
930 padding: 0;
931 margin-bottom: 48px;
932 position: relative;
933 }
934
935 .ka-v3-tip::before {
936 content: '';
937 position: absolute;
938 left: 0;
939 top: 4px;
940 bottom: 4px;
941 width: 3px;
942 background: linear-gradient(180deg, #0071e3 0%, #34c759 100%);
943 border-radius: 2px;
944 }
945
946 .ka-v3-tip-icon {
947 display: flex;
948 align-items: center;
949 justify-content: center;
950 width: 48px;
951 height: 48px;
952 min-width: 48px;
953 margin-left: 20px;
954 background: linear-gradient(135deg, rgba(0, 113, 227, 0.1) 0%, rgba(52, 199, 89, 0.1) 100%);
955 border-radius: 50%;
956 }
957
958 .ka-v3-tip-icon .dashicons {
959 font-size: 24px;
960 width: 24px;
961 height: 24px;
962 background: linear-gradient(135deg, #0071e3 0%, #34c759 100%);
963 -webkit-background-clip: text;
964 -webkit-text-fill-color: transparent;
965 background-clip: text;
966 }
967
968 .ka-v3-tip-content {
969 display: flex;
970 flex-direction: column;
971 gap: 8px;
972 padding: 4px 0;
973 }
974
975 .ka-v3-tip-content strong {
976 font-size: 17px;
977 font-weight: 600;
978 letter-spacing: -0.01em;
979 color: #1d1d1f;
980 }
981
982 .ka-v3-tip-content span {
983 font-size: 15px;
984 line-height: 1.6;
985 color: #86868b;
986 max-width: 720px;
987 }
988
989 /* Dark mode */
990 .ka-v3-dark .ka-v3-tip-icon {
991 background: linear-gradient(135deg, rgba(0, 113, 227, 0.15) 0%, rgba(52, 199, 89, 0.15) 100%);
992 }
993
994 .ka-v3-dark .ka-v3-tip-content strong {
995 color: #f5f5f7;
996 }
997
998 .ka-v3-dark .ka-v3-tip-content span {
999 color: #a1a1a6;
1000 }
1001
1002 /* ===== CONTROLS BAR ===== */
1003 .ka-v3-controls {
1004 display: flex;
1005 justify-content: space-between;
1006 align-items: center;
1007 margin-bottom: 40px;
1008 gap: 20px;
1009 flex-wrap: wrap;
1010 }
1011
1012 .ka-v3-search {
1013 position: relative;
1014 flex: 1;
1015 max-width: 360px;
1016 }
1017
1018 .ka-v3-search input {
1019 width: 100%;
1020 padding: 14px 20px 14px 48px;
1021 border-radius: 14px;
1022 border: 1px solid rgba(0, 0, 0, 0.08);
1023 background: rgba(255, 255, 255, 0.6);
1024 font-size: 15px;
1025 transition: all 0.25s ease;
1026 color: #1d1d1f;
1027 }
1028
1029 .ka-v3-search input:focus {
1030 background: #fff;
1031 border-color: #0071e3;
1032 outline: none;
1033 box-shadow: 0 0 0 4px rgba(0, 113, 227, 0.12);
1034 }
1035
1036 .ka-v3-search input::placeholder {
1037 color: #86868b;
1038 }
1039
1040 .ka-v3-search .dashicons {
1041 position: absolute;
1042 left: 16px;
1043 top: 50%;
1044 transform: translateY(-50%);
1045 color: #86868b;
1046 font-size: 20px;
1047 width: 20px;
1048 height: 20px;
1049 }
1050
1051 .ka-v3-filters {
1052 display: flex;
1053 gap: 8px;
1054 background: rgba(255, 255, 255, 0.6);
1055 padding: 6px;
1056 border-radius: 14px;
1057 border: 1px solid rgba(0, 0, 0, 0.06);
1058 }
1059
1060 .ka-v3-collapse-all {
1061 display: flex;
1062 gap: 8px;
1063 background: rgba(255, 255, 255, 0.6);
1064 padding: 6px;
1065 border-radius: 14px;
1066 border: 1px solid rgba(0, 0, 0, 0.06);
1067 min-width: 205px
1068 }
1069
1070 .ka-v3-collapse-all .ka-v3-filter-btn {
1071 display: inline-flex;
1072 align-items: center;
1073 gap: 8px;
1074 width: 100%;
1075 }
1076
1077 .ka-v3-collapse-all .dashicons {
1078 font-size: 16px;
1079 width: 16px;
1080 height: 16px;
1081 transition: transform 0.25s ease;
1082 }
1083
1084 /* When everything is collapsed, show "Expand" state (rotate icon down) */
1085 #ka-v3-collapse-toggle[data-state="collapsed"] .dashicons {
1086 transform: rotate(180deg);
1087 }
1088
1089 .ka-v3-filter-btn {
1090 padding: 10px 18px;
1091 border-radius: 10px;
1092 border: none;
1093 background: transparent;
1094 font-size: 14px;
1095 font-weight: 500;
1096 color: #515154;
1097 cursor: pointer;
1098 transition: all 0.2s ease;
1099 }
1100
1101 .ka-v3-filter-btn:hover {
1102 background: rgba(0, 0, 0, 0.04);
1103 color: #1d1d1f;
1104 }
1105
1106 .ka-v3-filter-btn.active {
1107 background: #1d1d1f;
1108 color: #fff;
1109 }
1110
1111 .ka-v3-view-toggle {
1112 display: flex;
1113 align-items: center;
1114 gap: 10px;
1115 padding: 8px 16px;
1116 background: rgba(255, 255, 255, 0.6);
1117 border-radius: 12px;
1118 border: 1px solid rgba(0, 0, 0, 0.06);
1119 }
1120
1121 .ka-v3-view-label {
1122 font-size: 14px;
1123 font-weight: 500;
1124 color: #515154;
1125 }
1126
1127 /* ===== GRID LAYOUT ===== */
1128 .ka-v3-grid {
1129 display: grid;
1130 grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
1131 gap: 24px;
1132 }
1133
1134 /* ===== CATEGORY ===== */
1135 .ka-v3-category {
1136 margin-bottom: 48px;
1137 transition: margin-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1);
1138 }
1139
1140 .ka-v3-category.ka-v3-collapsed {
1141 margin-bottom: 16px;
1142 }
1143
1144 .ka-v3-category-header {
1145 display: flex;
1146 align-items: center;
1147 justify-content: space-between;
1148 margin-bottom: 24px;
1149 padding-bottom: 16px;
1150 border-bottom: 1px solid rgba(0, 0, 0, 0.06);
1151 transition:
1152 margin-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1),
1153 padding-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1);
1154 }
1155
1156 .ka-v3-category.ka-v3-collapsed .ka-v3-category-header {
1157 margin-bottom: 10px;
1158 padding-bottom: 10px;
1159 }
1160
1161 .ka-v3-category-title {
1162 display: flex;
1163 align-items: center;
1164 gap: 12px;
1165 }
1166
1167 .ka-v3-category-title h3 {
1168 font-size: 22px;
1169 font-weight: 600;
1170 color: #1d1d1f;
1171 margin: 0;
1172 }
1173
1174 .ka-v3-category-title .dashicons {
1175 font-size: 22px;
1176 width: 22px;
1177 height: 22px;
1178 color: #0071e3;
1179 }
1180
1181 .ka-v3-category-count {
1182 font-size: 13px;
1183 font-weight: 600;
1184 color: #86868b;
1185 background: rgba(0, 0, 0, 0.06);
1186 padding: 4px 12px;
1187 border-radius: 20px;
1188 }
1189
1190 .ka-v3-category-toggle {
1191 display: flex;
1192 align-items: center;
1193 gap: 12px;
1194 }
1195
1196 .ka-v3-category-collapse {
1197 display: inline-flex;
1198 align-items: center;
1199 justify-content: center;
1200 width: 40px;
1201 height: 36px;
1202 border-radius: 12px;
1203 border: 1px solid rgba(0, 0, 0, 0.06);
1204 background: rgba(0, 0, 0, 0.04);
1205 cursor: pointer;
1206 transition: all 0.25s ease;
1207 }
1208
1209 .ka-v3-category-collapse:hover {
1210 background: rgba(0, 0, 0, 0.08);
1211 }
1212
1213 .ka-v3-category-collapse .dashicons {
1214 font-size: 18px;
1215 width: 18px;
1216 height: 18px;
1217 color: #1d1d1f;
1218 transition: transform 0.25s ease;
1219 }
1220
1221 .ka-v3-category-body {
1222 max-height: 9999px;
1223 opacity: 1;
1224 transform: translateY(0);
1225 transform-origin: top;
1226 will-change: max-height, opacity, transform;
1227 transition:
1228 max-height 520ms cubic-bezier(0.25, 1, 0.5, 1),
1229 opacity 220ms ease,
1230 transform 520ms cubic-bezier(0.25, 1, 0.5, 1);
1231 }
1232
1233 .ka-v3-category.ka-v3-collapsed .ka-v3-category-body {
1234 max-height: 0;
1235 opacity: 0;
1236 transform: translateY(-8px);
1237 pointer-events: none;
1238 }
1239
1240 .ka-v3-category.ka-v3-collapsed .ka-v3-category-collapse .dashicons {
1241 transform: rotate(180deg);
1242 }
1243
1244 @media (prefers-reduced-motion: reduce) {
1245 .ka-v3-category-body {
1246 transition: none;
1247 }
1248
1249 .ka-v3-category,
1250 .ka-v3-category-header {
1251 transition: none;
1252 }
1253 }
1254
1255 /* ===== MODULE CARD ===== */
1256 .ka-v3-card {
1257 background: #fff;
1258 border-radius: 24px;
1259 padding: 28px;
1260 transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
1261 border: 1px solid rgba(0, 0, 0, 0.04);
1262 display: flex;
1263 flex-direction: column;
1264 position: relative;
1265 overflow: hidden;
1266 }
1267
1268 .ka-v3-card:hover {
1269 transform: scale(1.02) translateY(-4px);
1270 box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
1271 z-index: 10;
1272 }
1273
1274 /* Need to think how to style disabled cards better */
1275 .ka-v3-card.disabled .ka-v3-card-icon {
1276 opacity: 0.55;
1277 /* filter: grayscale(1); */
1278 }
1279
1280 .ka-v3-card.disabled:hover {
1281 transform: none;
1282 box-shadow: none;
1283 }
1284
1285 .ka-v3-card-header {
1286 display: flex;
1287 justify-content: space-between;
1288 align-items: flex-start;
1289 margin-bottom: 18px;
1290 }
1291
1292 .ka-v3-card-icon {
1293 width: 56px;
1294 height: 56px;
1295 background: linear-gradient(135deg, #f5f5f7 0%, #e8e8ed 100%);
1296 border-radius: 16px;
1297 display: flex;
1298 align-items: center;
1299 justify-content: center;
1300 transition: transform 0.3s ease;
1301 }
1302
1303 .ka-v3-card:hover .ka-v3-card-icon {
1304 transform: scale(1.05);
1305 }
1306
1307 .ka-v3-card-icon img {
1308 width: 32px;
1309 height: 32px;
1310 }
1311
1312 .ka-v3-card-icon .dashicons {
1313 font-size: 28px;
1314 width: 28px;
1315 height: 28px;
1316 color: #515154;
1317 }
1318
1319 .ka-v3-card-title {
1320 font-size: 18px;
1321 font-weight: 600;
1322 margin: 0 0 8px;
1323 color: #1d1d1f;
1324 line-height: 1.3;
1325 }
1326
1327 .ka-v3-card-desc {
1328 font-size: 14px;
1329 line-height: 1.55;
1330 color: #86868b;
1331 margin: 0;
1332 flex-grow: 1;
1333 }
1334
1335 .ka-v3-card-requirement {
1336 margin: 12px 0 0;
1337 font-size: 13px;
1338 line-height: 1.4;
1339 color: #1d1d1f;
1340 background: #f4f4f6;
1341 padding: 3px 5px;
1342 border-radius: 6px;
1343 }
1344
1345 body.ka-v3-dark .ka-v3-card-requirement {
1346 color: #8e8e93;
1347 background: linear-gradient(135deg, #2c2c2e 0%, #3a3a3c 100%);
1348 }
1349
1350 .ka-v3-card.ka-v3-card-unavailable .ka-v3-toggle {
1351 pointer-events: none;
1352 opacity: 0.6;
1353 }
1354
1355 .ka-v3-card-footer {
1356 margin-top: 20px;
1357 padding-top: 16px;
1358 border-top: 1px solid rgba(0, 0, 0, 0.04);
1359 display: flex;
1360 justify-content: space-between;
1361 align-items: center;
1362 }
1363
1364 .ka-v3-card-link {
1365 font-size: 14px;
1366 font-weight: 500;
1367 color: #0071e3;
1368 text-decoration: none;
1369 display: inline-flex;
1370 align-items: center;
1371 gap: 4px;
1372 transition: color 0.2s ease;
1373 }
1374
1375 .ka-v3-card-link:hover {
1376 color: #0077ed;
1377 }
1378
1379 .ka-v3-card-link .dashicons {
1380 font-size: 16px;
1381 width: 16px;
1382 height: 16px;
1383 }
1384
1385 .ka-v3-card-link.ka-v3-link-disabled {
1386 pointer-events: none;
1387 opacity: 0.55;
1388 }
1389
1390 /* ===== iOS TOGGLE ===== */
1391 .ka-v3-toggle {
1392 position: relative;
1393 display: inline-block;
1394 width: 51px;
1395 height: 31px;
1396 flex-shrink: 0;
1397 }
1398
1399 .ka-v3-toggle input {
1400 opacity: 0 !important;
1401 width: 0;
1402 height: 0;
1403 }
1404
1405 .ka-v3-toggle-slider {
1406 position: absolute;
1407 cursor: pointer;
1408 top: 0;
1409 left: 0;
1410 right: 0;
1411 bottom: 0;
1412 background-color: #e9e9eb;
1413 transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
1414 border-radius: 31px;
1415 }
1416
1417 .ka-v3-toggle-slider:before {
1418 position: absolute;
1419 content: "";
1420 height: 27px;
1421 width: 27px;
1422 left: 2px;
1423 bottom: 2px;
1424 background-color: white;
1425 transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
1426 border-radius: 50%;
1427 box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);
1428 }
1429
1430 input:checked + .ka-v3-toggle-slider {
1431 background-color: #34c759;
1432 }
1433
1434 input:checked + .ka-v3-toggle-slider:before {
1435 transform: translateX(20px);
1436 }
1437
1438 /* ===== STICKY FOOTER ===== */
1439 .ka-v3-footer {
1440 position: fixed;
1441 bottom: 32px;
1442 left: 50%;
1443 transform: translateX(-50%);
1444 background: rgba(255, 255, 255, 0.72);
1445 backdrop-filter: saturate(180%) blur(20px);
1446 -webkit-backdrop-filter: saturate(180%) blur(20px);
1447 padding: 14px 28px;
1448 border-radius: 980px;
1449 display: flex;
1450 gap: 12px;
1451 box-shadow: 0 10px 50px rgba(0, 0, 0, 0.15);
1452 z-index: 1000;
1453 border: 1px solid rgba(0, 0, 0, 0.06);
1454 }
1455
1456 /* ===== TAB CONTENT ===== */
1457 .ka-v3-tab-content {
1458 display: none;
1459 }
1460
1461 .ka-v3-tab-content.active {
1462 display: block;
1463 animation: ka-v3-fadeIn 0.3s ease-out;
1464 }
1465
1466 @keyframes ka-v3-fadeIn {
1467 from {
1468 opacity: 0;
1469 transform: translateY(10px);
1470 }
1471 to {
1472 opacity: 1;
1473 transform: translateY(0);
1474 }
1475 }
1476
1477 /* ===== QUICK ACTIONS ===== */
1478 .ka-v3-quick-actions {
1479 display: flex;
1480 gap: 12px;
1481 margin-bottom: 32px;
1482 flex-wrap: wrap;
1483 display: none; /* Hidden for now */
1484 }
1485
1486 /* ===== STATS ROW (for Features/Extensions tabs) ===== */
1487 .ka-v3-stats-row {
1488 display: grid;
1489 grid-template-columns: repeat(3, 1fr);
1490 gap: 20px;
1491 margin-bottom: 32px;
1492 }
1493
1494 .ka-v3-stat-card {
1495 background: #fff;
1496 border-radius: 20px;
1497 padding: 24px;
1498 display: flex;
1499 align-items: center;
1500 gap: 16px;
1501 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
1502 }
1503
1504 .ka-v3-stat-icon {
1505 width: 52px;
1506 height: 52px;
1507 border-radius: 14px;
1508 display: flex;
1509 align-items: center;
1510 justify-content: center;
1511 }
1512
1513 .ka-v3-stat-icon .dashicons {
1514 font-size: 26px;
1515 width: 26px;
1516 height: 26px;
1517 color: #fff;
1518 }
1519
1520 .ka-v3-stat-icon-blue {
1521 background: linear-gradient(135deg, #0071e3 0%, #40a9ff 100%);
1522 }
1523
1524 .ka-v3-stat-icon-green {
1525 background: linear-gradient(135deg, #34c759 0%, #30d158 100%);
1526 }
1527
1528 .ka-v3-stat-icon-orange {
1529 background: linear-gradient(135deg, #ff9500 0%, #ffcc00 100%);
1530 }
1531
1532 .ka-v3-stat-icon-purple {
1533 background: linear-gradient(135deg, #af52de 0%, #bf5af2 100%);
1534 }
1535
1536 .ka-v3-stat-value {
1537 font-size: 32px;
1538 font-weight: 700;
1539 color: #1d1d1f;
1540 line-height: 1;
1541 }
1542
1543 .ka-v3-stat-label {
1544 font-size: 14px;
1545 color: #86868b;
1546 margin-top: 4px;
1547 }
1548
1549 /* ===== UTILITY ===== */
1550 .ka-v3-hidden {
1551 display: none !important;
1552 }
1553
1554 /* ===== DARK THEME ===== */
1555 body.ka-v3-dark .ka-v3-wrap {
1556 color: #f5f5f7;
1557 }
1558
1559 body.ka-v3-dark .ka-v3-title {
1560 background: linear-gradient(135deg, #f5f5f7 0%, #a1a1a6 100%);
1561 -webkit-background-clip: text;
1562 -webkit-text-fill-color: transparent;
1563 background-clip: text;
1564 }
1565
1566 body.ka-v3-dark .ka-v3-subtitle {
1567 color: #86868b;
1568 }
1569
1570 body.ka-v3-dark .ka-v3-btn-secondary {
1571 background: rgba(255, 255, 255, 0.1);
1572 color: #f5f5f7;
1573 }
1574
1575 body.ka-v3-dark .ka-v3-btn-secondary:hover {
1576 background: rgba(255, 255, 255, 0.18);
1577 color: #fff;
1578 }
1579
1580
1581 body.ka-v3-dark .ka-v3-segmented {
1582 background: rgba(255, 255, 255, 0.1);
1583 border-color: rgba(255, 255, 255, 0.1);
1584 }
1585
1586 body.ka-v3-dark .ka-v3-segmented-indicator {
1587 background: rgba(255, 255, 255, 0.1);
1588 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
1589 }
1590
1591 body.ka-v3-dark .ka-v3-segmented-btn {
1592 color: #f5f5f7;
1593 }
1594
1595 body.ka-v3-dark .ka-v3-segmented-btn[aria-pressed="false"] {
1596 color: rgba(245, 245, 247, 0.72);
1597 }
1598
1599 body.ka-v3-dark .ka-v3-bento-card {
1600 background: #1c1c1e;
1601 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
1602 }
1603
1604 body.ka-v3-dark .ka-v3-bento-value {
1605 background: linear-gradient(135deg, #fff 0%, #a1a1a6 100%);
1606 -webkit-background-clip: text;
1607 -webkit-text-fill-color: transparent;
1608 background-clip: text;
1609 }
1610
1611 body.ka-v3-dark .ka-v3-bento-desc {
1612 color: #f5f5f7;
1613 }
1614
1615 body.ka-v3-dark .ka-v3-nav {
1616 background: rgba(28, 28, 30, 0.72);
1617 border-color: rgba(255, 255, 255, 0.1);
1618 }
1619
1620 body.ka-v3-dark .ka-v3-nav-item {
1621 color: #86868b;
1622 }
1623
1624 body.ka-v3-dark .ka-v3-nav-item:hover {
1625 color: #f5f5f7;
1626 }
1627
1628 body.ka-v3-dark .ka-v3-nav-item.active {
1629 background: #f5f5f7;
1630 color: #000;
1631 }
1632
1633 body.ka-v3-dark .ka-v3-nav-badge {
1634 background: rgba(255, 255, 255, 0.15);
1635 }
1636
1637 body.ka-v3-dark .ka-v3-nav-item.active .ka-v3-nav-badge {
1638 background: rgba(0, 0, 0, 0.15);
1639 }
1640
1641 body.ka-v3-dark .ka-v3-search input {
1642 background: rgba(28, 28, 30, 0.8);
1643 border-color: rgba(255, 255, 255, 0.1);
1644 color: #f5f5f7;
1645 }
1646
1647 body.ka-v3-dark .ka-v3-search input:focus {
1648 background: #1c1c1e;
1649 border-color: #0a84ff;
1650 box-shadow: 0 0 0 4px rgba(10, 132, 255, 0.2);
1651 }
1652
1653 body.ka-v3-dark .ka-v3-search input::placeholder {
1654 color: #636366;
1655 }
1656
1657 body.ka-v3-dark .ka-v3-filters {
1658 background: rgba(28, 28, 30, 0.8);
1659 border-color: rgba(255, 255, 255, 0.1);
1660 }
1661
1662 body.ka-v3-dark .ka-v3-collapse-all {
1663 background: rgba(28, 28, 30, 0.8);
1664 border-color: rgba(255, 255, 255, 0.1);
1665 }
1666
1667 body.ka-v3-dark .ka-v3-filter-btn {
1668 color: #8e8e93;
1669 }
1670
1671 body.ka-v3-dark .ka-v3-filter-btn:hover {
1672 background: rgba(255, 255, 255, 0.08);
1673 color: #f5f5f7;
1674 }
1675
1676 body.ka-v3-dark .ka-v3-filter-btn.active {
1677 background: #f5f5f7;
1678 color: #000;
1679 }
1680
1681 body.ka-v3-dark .ka-v3-view-toggle {
1682 background: rgba(28, 28, 30, 0.8);
1683 border-color: rgba(255, 255, 255, 0.1);
1684 }
1685
1686 body.ka-v3-dark .ka-v3-view-label {
1687 color: #8e8e93;
1688 }
1689
1690 body.ka-v3-dark .ka-v3-category-header {
1691 border-bottom-color: rgba(255, 255, 255, 0.08);
1692 }
1693
1694 body.ka-v3-dark .ka-v3-category-title h3 {
1695 color: #f5f5f7;
1696 }
1697
1698 body.ka-v3-dark .ka-v3-category-title .dashicons {
1699 color: #0a84ff;
1700 }
1701
1702 body.ka-v3-dark .ka-v3-category-count {
1703 background: rgba(255, 255, 255, 0.1);
1704 color: #8e8e93;
1705 }
1706
1707 body.ka-v3-dark .ka-v3-category-collapse {
1708 background: rgba(255, 255, 255, 0.08);
1709 border-color: rgba(255, 255, 255, 0.1);
1710 }
1711
1712 body.ka-v3-dark .ka-v3-category-collapse:hover {
1713 background: rgba(255, 255, 255, 0.14);
1714 }
1715
1716 body.ka-v3-dark .ka-v3-category-collapse .dashicons {
1717 color: #f5f5f7;
1718 }
1719
1720 body.ka-v3-dark .ka-v3-card {
1721 background: #1c1c1e;
1722 border-color: rgba(255, 255, 255, 0.06);
1723 }
1724
1725 body.ka-v3-dark .ka-v3-card:hover {
1726 background: #2c2c2e;
1727 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
1728 }
1729
1730 body.ka-v3-dark .ka-v3-card-icon {
1731 background: linear-gradient(135deg, #2c2c2e 0%, #3a3a3c 100%);
1732 }
1733
1734 body.ka-v3-dark .ka-v3-card-icon img {
1735 filter: invert(1);
1736 }
1737
1738 body.ka-v3-dark .ka-v3-card-icon .dashicons {
1739 color: #a1a1a6;
1740 }
1741
1742 body.ka-v3-dark .ka-v3-card-title {
1743 color: #f5f5f7;
1744 }
1745
1746 body.ka-v3-dark .ka-v3-card-desc {
1747 color: #8e8e93;
1748 }
1749
1750 body.ka-v3-dark .ka-v3-card-footer {
1751 border-top-color: rgba(255, 255, 255, 0.06);
1752 }
1753
1754 body.ka-v3-dark .ka-v3-card-link {
1755 color: #0a84ff;
1756 }
1757
1758 body.ka-v3-dark .ka-v3-card-link:hover {
1759 color: #409cff;
1760 }
1761
1762 body.ka-v3-dark .ka-v3-toggle-slider {
1763 background-color: #39393d;
1764 }
1765
1766 body.ka-v3-dark input:checked + .ka-v3-toggle-slider {
1767 background-color: #30d158;
1768 }
1769
1770 body.ka-v3-dark .ka-v3-footer {
1771 background: rgba(28, 28, 30, 0.72);
1772 border-color: rgba(255, 255, 255, 0.1);
1773 }
1774
1775 body.ka-v3-dark .ka-v3-stat-card {
1776 background: #1c1c1e;
1777 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
1778 }
1779
1780 body.ka-v3-dark .ka-v3-stat-value {
1781 color: #f5f5f7;
1782 }
1783
1784 body.ka-v3-dark .ka-v3-stat-label {
1785 color: #8e8e93;
1786 }
1787
1788 body.ka-v3-dark .ka-v3-quick-actions .ka-v3-btn-secondary {
1789 background: rgba(255, 255, 255, 0.08);
1790 color: #f5f5f7;
1791 }
1792
1793 body.ka-v3-dark .ka-v3-quick-actions .ka-v3-btn-secondary:hover {
1794 background: rgba(255, 255, 255, 0.14);
1795 }
1796
1797 /* ===== RESPONSIVE ===== */
1798 @media (max-width: 1200px) {
1799 .ka-v3-bento {
1800 grid-template-columns: repeat(2, 1fr);
1801 }
1802
1803 .ka-v3-bento-card.large {
1804 grid-column: span 1;
1805 }
1806
1807 .ka-v3-header {
1808 flex-direction: column;
1809 gap: 24px;
1810 }
1811 }
1812
1813 @media (max-width: 900px) {
1814 .ka-v3-wrap {
1815 padding: 40px 24px;
1816 }
1817
1818 .ka-v3-title {
1819 font-size: 40px;
1820 }
1821
1822 .ka-v3-bento {
1823 grid-template-columns: 1fr;
1824 }
1825
1826 .ka-v3-bento-card.large {
1827 grid-column: span 1;
1828 }
1829
1830 .ka-v3-controls {
1831 flex-direction: column;
1832 align-items: stretch;
1833 }
1834
1835 .ka-v3-search {
1836 max-width: none;
1837 }
1838
1839 .ka-v3-grid {
1840 grid-template-columns: 1fr;
1841 }
1842
1843 .ka-v3-stats-row {
1844 grid-template-columns: 1fr;
1845 }
1846
1847 .ka-v3-footer {
1848 left: 20px;
1849 right: 20px;
1850 transform: none;
1851 border-radius: 20px;
1852 flex-wrap: wrap;
1853 justify-content: center;
1854 }
1855 }
1856