PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.79
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.79
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 51.1.45 All 40 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.79, at includes/admin/layouts/dashboard-v3/dashboard-v3.css

1,850 lines 36.8 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
599 /* ===== LARGE TRINITY BACKUP BANNER ===== */
600 .ka-v3-trinity-banner {
601 position: relative;
602 display: flex;
603 align-items: center;
604 justify-content: center;
605 background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
606 border-radius: 24px;
607 padding: 40px 48px;
608 margin: 48px 0 24px;
609 overflow: hidden;
610 box-shadow: 0 20px 60px rgba(102, 126, 234, 0.35);
611 }
612
613 .ka-v3-trinity-banner::before {
614 content: '';
615 position: absolute;
616 top: 0;
617 left: 0;
618 right: 0;
619 bottom: 0;
620 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>');
621 background-size: 100px 100px;
622 pointer-events: none;
623 }
624
625 .ka-v3-trinity-banner-content {
626 position: relative;
627 z-index: 1;
628 display: flex;
629 align-items: center;
630 justify-content: space-between;
631 width: 100%;
632 max-width: 1200px;
633 gap: 40px;
634 }
635
636 .ka-v3-trinity-banner-left {
637 display: flex;
638 align-items: center;
639 gap: 24px;
640 flex: 1;
641 }
642
643 .ka-v3-trinity-banner-icon {
644 width: 80px;
645 height: 80px;
646 border-radius: 20px;
647 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
648 flex-shrink: 0;
649 }
650
651 .ka-v3-trinity-banner-text {
652 display: flex;
653 flex-direction: column;
654 gap: 4px;
655 }
656
657 .ka-v3-trinity-banner-label {
658 font-size: 12px;
659 font-weight: 600;
660 text-transform: uppercase;
661 letter-spacing: 1px;
662 color: rgba(255, 255, 255, 0.8);
663 }
664
665 .ka-v3-trinity-banner-title {
666 font-size: 32px;
667 font-weight: 700;
668 color: #fff;
669 margin: 0;
670 line-height: 1.2;
671 }
672
673 .ka-v3-trinity-banner-desc {
674 font-size: 15px;
675 color: rgba(255, 255, 255, 0.9);
676 margin: 4px 0 0;
677 max-width: 400px;
678 line-height: 1.5;
679 }
680
681 .ka-v3-trinity-banner-right {
682 display: flex;
683 flex-direction: column;
684 align-items: flex-end;
685 gap: 16px;
686 flex-shrink: 0;
687 }
688
689 .ka-v3-trinity-banner-features {
690 display: flex;
691 flex-direction: column;
692 gap: 8px;
693 }
694
695 .ka-v3-trinity-banner-feature {
696 display: flex;
697 align-items: center;
698 gap: 8px;
699 font-size: 14px;
700 font-weight: 500;
701 color: #fff;
702 }
703
704 .ka-v3-trinity-banner-feature .dashicons {
705 font-size: 18px;
706 width: 18px;
707 height: 18px;
708 color: #a8ff78;
709 }
710
711 .ka-v3-trinity-banner-btn {
712 position: relative;
713 display: inline-flex;
714 align-items: center;
715 justify-content: center;
716 padding: 14px 32px;
717 background: #fff;
718 color: #667eea;
719 font-size: 15px;
720 font-weight: 600;
721 border: none;
722 border-radius: 50px;
723 cursor: pointer;
724 transition: all 0.3s ease;
725 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
726 min-width: 180px;
727 }
728
729 .ka-v3-trinity-banner-btn:hover {
730 transform: translateY(-2px);
731 box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
732 background: #f8f9ff;
733 }
734
735 .ka-v3-trinity-banner-btn:active {
736 transform: translateY(0);
737 }
738
739 .ka-v3-trinity-banner-btn.loading {
740 pointer-events: none;
741 }
742
743 .ka-v3-trinity-banner-btn.loading .ka-v3-trinity-banner-btn-text {
744 opacity: 0;
745 }
746
747 .ka-v3-trinity-banner-btn-loading {
748 display: none;
749 position: absolute;
750 width: 20px;
751 height: 20px;
752 border: 2px solid rgba(102, 126, 234, 0.3);
753 border-top-color: #667eea;
754 border-radius: 50%;
755 animation: ka-spin 0.8s linear infinite;
756 }
757
758 .ka-v3-trinity-banner-btn.loading .ka-v3-trinity-banner-btn-loading {
759 display: block;
760 }
761
762 .ka-v3-trinity-banner-btn.success {
763 background: #22c55e;
764 color: #fff;
765 }
766
767 .ka-v3-trinity-banner-btn.success .ka-v3-trinity-banner-btn-text::before {
768 content: '✓ ';
769 }
770
771 .ka-v3-trinity-banner-btn.error {
772 background: #ef4444;
773 color: #fff;
774 }
775
776 .ka-v3-trinity-banner-close {
777 position: absolute;
778 top: 16px;
779 right: 16px;
780 width: 32px;
781 height: 32px;
782 display: flex;
783 align-items: center;
784 justify-content: center;
785 background: rgba(255, 255, 255, 0.2);
786 border: none;
787 border-radius: 50%;
788 cursor: pointer;
789 transition: all 0.2s ease;
790 z-index: 2;
791 }
792
793 .ka-v3-trinity-banner-close:hover {
794 background: rgba(255, 255, 255, 0.3);
795 }
796
797 .ka-v3-trinity-banner-close .dashicons {
798 font-size: 20px;
799 width: 20px;
800 height: 20px;
801 color: #fff;
802 }
803
804 /* Banner responsive */
805 @media (max-width: 900px) {
806 .ka-v3-trinity-banner {
807 padding: 32px 24px;
808 }
809
810 .ka-v3-trinity-banner-content {
811 flex-direction: column;
812 text-align: center;
813 gap: 24px;
814 }
815
816 .ka-v3-trinity-banner-left {
817 flex-direction: column;
818 }
819
820 .ka-v3-trinity-banner-right {
821 align-items: center;
822 }
823
824 .ka-v3-trinity-banner-desc {
825 max-width: 100%;
826 }
827
828 .ka-v3-trinity-banner-features {
829 flex-direction: row;
830 flex-wrap: wrap;
831 justify-content: center;
832 gap: 12px 24px;
833 }
834 }
835
836 @media (max-width: 480px) {
837 .ka-v3-trinity-banner-title {
838 font-size: 24px;
839 }
840
841 .ka-v3-trinity-banner-icon {
842 width: 64px;
843 height: 64px;
844 }
845 }
846
847 /* Dark mode for banner */
848 .ka-v3-dark .ka-v3-trinity-banner {
849 background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
850 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
851 }
852
853 .ka-v3-dark .ka-v3-trinity-banner-btn {
854 background: rgba(255, 255, 255, 0.95);
855 }
856
857 .ka-v3-dark .ka-v3-trinity-banner-btn:hover {
858 background: #fff;
859 }
860
861 /* ===== NAVIGATION ===== */
862 .ka-v3-nav {
863 display: flex;
864 justify-content: center;
865 background: rgba(255, 255, 255, 0.72);
866 backdrop-filter: saturate(180%) blur(20px);
867 -webkit-backdrop-filter: saturate(180%) blur(20px);
868 padding: 6px;
869 border-radius: 980px;
870 width: fit-content;
871 margin: 0 auto 48px;
872 position: sticky;
873 top: 32px;
874 z-index: 100;
875 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
876 border: 1px solid rgba(0, 0, 0, 0.04);
877 }
878
879 .ka-v3-nav-item {
880 padding: 12px 28px;
881 border-radius: 980px;
882 border: none;
883 background: transparent;
884 font-size: 15px;
885 font-weight: 500;
886 color: #1d1d1f;
887 cursor: pointer;
888 transition: all 0.3s ease;
889 }
890
891 .ka-v3-nav-item:hover {
892 color: #0071e3;
893 }
894
895 .ka-v3-nav-item.active {
896 background: #1d1d1f;
897 color: #fff;
898 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
899 }
900
901 .ka-v3-nav-badge {
902 display: inline-flex;
903 align-items: center;
904 justify-content: center;
905 min-width: 22px;
906 height: 22px;
907 padding: 0 7px;
908 background: rgba(0, 0, 0, 0.08);
909 border-radius: 11px;
910 font-size: 12px;
911 font-weight: 600;
912 margin-left: 8px;
913 }
914
915 .ka-v3-nav-item.active .ka-v3-nav-badge {
916 background: rgba(255, 255, 255, 0.25);
917 }
918
919 /* ===== PERFORMANCE TIP ===== */
920 .ka-v3-tip {
921 display: flex;
922 align-items: flex-start;
923 gap: 20px;
924 padding: 0;
925 margin-bottom: 48px;
926 position: relative;
927 }
928
929 .ka-v3-tip::before {
930 content: '';
931 position: absolute;
932 left: 0;
933 top: 4px;
934 bottom: 4px;
935 width: 3px;
936 background: linear-gradient(180deg, #0071e3 0%, #34c759 100%);
937 border-radius: 2px;
938 }
939
940 .ka-v3-tip-icon {
941 display: flex;
942 align-items: center;
943 justify-content: center;
944 width: 48px;
945 height: 48px;
946 min-width: 48px;
947 margin-left: 20px;
948 background: linear-gradient(135deg, rgba(0, 113, 227, 0.1) 0%, rgba(52, 199, 89, 0.1) 100%);
949 border-radius: 50%;
950 }
951
952 .ka-v3-tip-icon .dashicons {
953 font-size: 24px;
954 width: 24px;
955 height: 24px;
956 background: linear-gradient(135deg, #0071e3 0%, #34c759 100%);
957 -webkit-background-clip: text;
958 -webkit-text-fill-color: transparent;
959 background-clip: text;
960 }
961
962 .ka-v3-tip-content {
963 display: flex;
964 flex-direction: column;
965 gap: 8px;
966 padding: 4px 0;
967 }
968
969 .ka-v3-tip-content strong {
970 font-size: 17px;
971 font-weight: 600;
972 letter-spacing: -0.01em;
973 color: #1d1d1f;
974 }
975
976 .ka-v3-tip-content span {
977 font-size: 15px;
978 line-height: 1.6;
979 color: #86868b;
980 max-width: 720px;
981 }
982
983 /* Dark mode */
984 .ka-v3-dark .ka-v3-tip-icon {
985 background: linear-gradient(135deg, rgba(0, 113, 227, 0.15) 0%, rgba(52, 199, 89, 0.15) 100%);
986 }
987
988 .ka-v3-dark .ka-v3-tip-content strong {
989 color: #f5f5f7;
990 }
991
992 .ka-v3-dark .ka-v3-tip-content span {
993 color: #a1a1a6;
994 }
995
996 /* ===== CONTROLS BAR ===== */
997 .ka-v3-controls {
998 display: flex;
999 justify-content: space-between;
1000 align-items: center;
1001 margin-bottom: 40px;
1002 gap: 20px;
1003 flex-wrap: wrap;
1004 }
1005
1006 .ka-v3-search {
1007 position: relative;
1008 flex: 1;
1009 max-width: 360px;
1010 }
1011
1012 .ka-v3-search input {
1013 width: 100%;
1014 padding: 14px 20px 14px 48px;
1015 border-radius: 14px;
1016 border: 1px solid rgba(0, 0, 0, 0.08);
1017 background: rgba(255, 255, 255, 0.6);
1018 font-size: 15px;
1019 transition: all 0.25s ease;
1020 color: #1d1d1f;
1021 }
1022
1023 .ka-v3-search input:focus {
1024 background: #fff;
1025 border-color: #0071e3;
1026 outline: none;
1027 box-shadow: 0 0 0 4px rgba(0, 113, 227, 0.12);
1028 }
1029
1030 .ka-v3-search input::placeholder {
1031 color: #86868b;
1032 }
1033
1034 .ka-v3-search .dashicons {
1035 position: absolute;
1036 left: 16px;
1037 top: 50%;
1038 transform: translateY(-50%);
1039 color: #86868b;
1040 font-size: 20px;
1041 width: 20px;
1042 height: 20px;
1043 }
1044
1045 .ka-v3-filters {
1046 display: flex;
1047 gap: 8px;
1048 background: rgba(255, 255, 255, 0.6);
1049 padding: 6px;
1050 border-radius: 14px;
1051 border: 1px solid rgba(0, 0, 0, 0.06);
1052 }
1053
1054 .ka-v3-collapse-all {
1055 display: flex;
1056 gap: 8px;
1057 background: rgba(255, 255, 255, 0.6);
1058 padding: 6px;
1059 border-radius: 14px;
1060 border: 1px solid rgba(0, 0, 0, 0.06);
1061 min-width: 205px
1062 }
1063
1064 .ka-v3-collapse-all .ka-v3-filter-btn {
1065 display: inline-flex;
1066 align-items: center;
1067 gap: 8px;
1068 width: 100%;
1069 }
1070
1071 .ka-v3-collapse-all .dashicons {
1072 font-size: 16px;
1073 width: 16px;
1074 height: 16px;
1075 transition: transform 0.25s ease;
1076 }
1077
1078 /* When everything is collapsed, show "Expand" state (rotate icon down) */
1079 #ka-v3-collapse-toggle[data-state="collapsed"] .dashicons {
1080 transform: rotate(180deg);
1081 }
1082
1083 .ka-v3-filter-btn {
1084 padding: 10px 18px;
1085 border-radius: 10px;
1086 border: none;
1087 background: transparent;
1088 font-size: 14px;
1089 font-weight: 500;
1090 color: #515154;
1091 cursor: pointer;
1092 transition: all 0.2s ease;
1093 }
1094
1095 .ka-v3-filter-btn:hover {
1096 background: rgba(0, 0, 0, 0.04);
1097 color: #1d1d1f;
1098 }
1099
1100 .ka-v3-filter-btn.active {
1101 background: #1d1d1f;
1102 color: #fff;
1103 }
1104
1105 .ka-v3-view-toggle {
1106 display: flex;
1107 align-items: center;
1108 gap: 10px;
1109 padding: 8px 16px;
1110 background: rgba(255, 255, 255, 0.6);
1111 border-radius: 12px;
1112 border: 1px solid rgba(0, 0, 0, 0.06);
1113 }
1114
1115 .ka-v3-view-label {
1116 font-size: 14px;
1117 font-weight: 500;
1118 color: #515154;
1119 }
1120
1121 /* ===== GRID LAYOUT ===== */
1122 .ka-v3-grid {
1123 display: grid;
1124 grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
1125 gap: 24px;
1126 }
1127
1128 /* ===== CATEGORY ===== */
1129 .ka-v3-category {
1130 margin-bottom: 48px;
1131 transition: margin-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1);
1132 }
1133
1134 .ka-v3-category.ka-v3-collapsed {
1135 margin-bottom: 16px;
1136 }
1137
1138 .ka-v3-category-header {
1139 display: flex;
1140 align-items: center;
1141 justify-content: space-between;
1142 margin-bottom: 24px;
1143 padding-bottom: 16px;
1144 border-bottom: 1px solid rgba(0, 0, 0, 0.06);
1145 transition:
1146 margin-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1),
1147 padding-bottom 520ms cubic-bezier(0.25, 1, 0.5, 1);
1148 }
1149
1150 .ka-v3-category.ka-v3-collapsed .ka-v3-category-header {
1151 margin-bottom: 10px;
1152 padding-bottom: 10px;
1153 }
1154
1155 .ka-v3-category-title {
1156 display: flex;
1157 align-items: center;
1158 gap: 12px;
1159 }
1160
1161 .ka-v3-category-title h3 {
1162 font-size: 22px;
1163 font-weight: 600;
1164 color: #1d1d1f;
1165 margin: 0;
1166 }
1167
1168 .ka-v3-category-title .dashicons {
1169 font-size: 22px;
1170 width: 22px;
1171 height: 22px;
1172 color: #0071e3;
1173 }
1174
1175 .ka-v3-category-count {
1176 font-size: 13px;
1177 font-weight: 600;
1178 color: #86868b;
1179 background: rgba(0, 0, 0, 0.06);
1180 padding: 4px 12px;
1181 border-radius: 20px;
1182 }
1183
1184 .ka-v3-category-toggle {
1185 display: flex;
1186 align-items: center;
1187 gap: 12px;
1188 }
1189
1190 .ka-v3-category-collapse {
1191 display: inline-flex;
1192 align-items: center;
1193 justify-content: center;
1194 width: 40px;
1195 height: 36px;
1196 border-radius: 12px;
1197 border: 1px solid rgba(0, 0, 0, 0.06);
1198 background: rgba(0, 0, 0, 0.04);
1199 cursor: pointer;
1200 transition: all 0.25s ease;
1201 }
1202
1203 .ka-v3-category-collapse:hover {
1204 background: rgba(0, 0, 0, 0.08);
1205 }
1206
1207 .ka-v3-category-collapse .dashicons {
1208 font-size: 18px;
1209 width: 18px;
1210 height: 18px;
1211 color: #1d1d1f;
1212 transition: transform 0.25s ease;
1213 }
1214
1215 .ka-v3-category-body {
1216 max-height: 9999px;
1217 opacity: 1;
1218 transform: translateY(0);
1219 transform-origin: top;
1220 will-change: max-height, opacity, transform;
1221 transition:
1222 max-height 520ms cubic-bezier(0.25, 1, 0.5, 1),
1223 opacity 220ms ease,
1224 transform 520ms cubic-bezier(0.25, 1, 0.5, 1);
1225 }
1226
1227 .ka-v3-category.ka-v3-collapsed .ka-v3-category-body {
1228 max-height: 0;
1229 opacity: 0;
1230 transform: translateY(-8px);
1231 pointer-events: none;
1232 }
1233
1234 .ka-v3-category.ka-v3-collapsed .ka-v3-category-collapse .dashicons {
1235 transform: rotate(180deg);
1236 }
1237
1238 @media (prefers-reduced-motion: reduce) {
1239 .ka-v3-category-body {
1240 transition: none;
1241 }
1242
1243 .ka-v3-category,
1244 .ka-v3-category-header {
1245 transition: none;
1246 }
1247 }
1248
1249 /* ===== MODULE CARD ===== */
1250 .ka-v3-card {
1251 background: #fff;
1252 border-radius: 24px;
1253 padding: 28px;
1254 transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
1255 border: 1px solid rgba(0, 0, 0, 0.04);
1256 display: flex;
1257 flex-direction: column;
1258 position: relative;
1259 overflow: hidden;
1260 }
1261
1262 .ka-v3-card:hover {
1263 transform: scale(1.02) translateY(-4px);
1264 box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
1265 z-index: 10;
1266 }
1267
1268 /* Need to think how to style disabled cards better */
1269 .ka-v3-card.disabled .ka-v3-card-icon {
1270 opacity: 0.55;
1271 /* filter: grayscale(1); */
1272 }
1273
1274 .ka-v3-card.disabled:hover {
1275 transform: none;
1276 box-shadow: none;
1277 }
1278
1279 .ka-v3-card-header {
1280 display: flex;
1281 justify-content: space-between;
1282 align-items: flex-start;
1283 margin-bottom: 18px;
1284 }
1285
1286 .ka-v3-card-icon {
1287 width: 56px;
1288 height: 56px;
1289 background: linear-gradient(135deg, #f5f5f7 0%, #e8e8ed 100%);
1290 border-radius: 16px;
1291 display: flex;
1292 align-items: center;
1293 justify-content: center;
1294 transition: transform 0.3s ease;
1295 }
1296
1297 .ka-v3-card:hover .ka-v3-card-icon {
1298 transform: scale(1.05);
1299 }
1300
1301 .ka-v3-card-icon img {
1302 width: 32px;
1303 height: 32px;
1304 }
1305
1306 .ka-v3-card-icon .dashicons {
1307 font-size: 28px;
1308 width: 28px;
1309 height: 28px;
1310 color: #515154;
1311 }
1312
1313 .ka-v3-card-title {
1314 font-size: 18px;
1315 font-weight: 600;
1316 margin: 0 0 8px;
1317 color: #1d1d1f;
1318 line-height: 1.3;
1319 }
1320
1321 .ka-v3-card-desc {
1322 font-size: 14px;
1323 line-height: 1.55;
1324 color: #86868b;
1325 margin: 0;
1326 flex-grow: 1;
1327 }
1328
1329 .ka-v3-card-requirement {
1330 margin: 12px 0 0;
1331 font-size: 13px;
1332 line-height: 1.4;
1333 color: #1d1d1f;
1334 background: #f4f4f6;
1335 padding: 3px 5px;
1336 border-radius: 6px;
1337 }
1338
1339 body.ka-v3-dark .ka-v3-card-requirement {
1340 color: #8e8e93;
1341 background: linear-gradient(135deg, #2c2c2e 0%, #3a3a3c 100%);
1342 }
1343
1344 .ka-v3-card.ka-v3-card-unavailable .ka-v3-toggle {
1345 pointer-events: none;
1346 opacity: 0.6;
1347 }
1348
1349 .ka-v3-card-footer {
1350 margin-top: 20px;
1351 padding-top: 16px;
1352 border-top: 1px solid rgba(0, 0, 0, 0.04);
1353 display: flex;
1354 justify-content: space-between;
1355 align-items: center;
1356 }
1357
1358 .ka-v3-card-link {
1359 font-size: 14px;
1360 font-weight: 500;
1361 color: #0071e3;
1362 text-decoration: none;
1363 display: inline-flex;
1364 align-items: center;
1365 gap: 4px;
1366 transition: color 0.2s ease;
1367 }
1368
1369 .ka-v3-card-link:hover {
1370 color: #0077ed;
1371 }
1372
1373 .ka-v3-card-link .dashicons {
1374 font-size: 16px;
1375 width: 16px;
1376 height: 16px;
1377 }
1378
1379 .ka-v3-card-link.ka-v3-link-disabled {
1380 pointer-events: none;
1381 opacity: 0.55;
1382 }
1383
1384 /* ===== iOS TOGGLE ===== */
1385 .ka-v3-toggle {
1386 position: relative;
1387 display: inline-block;
1388 width: 51px;
1389 height: 31px;
1390 flex-shrink: 0;
1391 }
1392
1393 .ka-v3-toggle input {
1394 opacity: 0 !important;
1395 width: 0;
1396 height: 0;
1397 }
1398
1399 .ka-v3-toggle-slider {
1400 position: absolute;
1401 cursor: pointer;
1402 top: 0;
1403 left: 0;
1404 right: 0;
1405 bottom: 0;
1406 background-color: #e9e9eb;
1407 transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
1408 border-radius: 31px;
1409 }
1410
1411 .ka-v3-toggle-slider:before {
1412 position: absolute;
1413 content: "";
1414 height: 27px;
1415 width: 27px;
1416 left: 2px;
1417 bottom: 2px;
1418 background-color: white;
1419 transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
1420 border-radius: 50%;
1421 box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);
1422 }
1423
1424 input:checked + .ka-v3-toggle-slider {
1425 background-color: #34c759;
1426 }
1427
1428 input:checked + .ka-v3-toggle-slider:before {
1429 transform: translateX(20px);
1430 }
1431
1432 /* ===== STICKY FOOTER ===== */
1433 .ka-v3-footer {
1434 position: fixed;
1435 bottom: 32px;
1436 left: 50%;
1437 transform: translateX(-50%);
1438 background: rgba(255, 255, 255, 0.72);
1439 backdrop-filter: saturate(180%) blur(20px);
1440 -webkit-backdrop-filter: saturate(180%) blur(20px);
1441 padding: 14px 28px;
1442 border-radius: 980px;
1443 display: flex;
1444 gap: 12px;
1445 box-shadow: 0 10px 50px rgba(0, 0, 0, 0.15);
1446 z-index: 1000;
1447 border: 1px solid rgba(0, 0, 0, 0.06);
1448 }
1449
1450 /* ===== TAB CONTENT ===== */
1451 .ka-v3-tab-content {
1452 display: none;
1453 }
1454
1455 .ka-v3-tab-content.active {
1456 display: block;
1457 animation: ka-v3-fadeIn 0.3s ease-out;
1458 }
1459
1460 @keyframes ka-v3-fadeIn {
1461 from {
1462 opacity: 0;
1463 transform: translateY(10px);
1464 }
1465 to {
1466 opacity: 1;
1467 transform: translateY(0);
1468 }
1469 }
1470
1471 /* ===== QUICK ACTIONS ===== */
1472 .ka-v3-quick-actions {
1473 display: flex;
1474 gap: 12px;
1475 margin-bottom: 32px;
1476 flex-wrap: wrap;
1477 display: none; /* Hidden for now */
1478 }
1479
1480 /* ===== STATS ROW (for Features/Extensions tabs) ===== */
1481 .ka-v3-stats-row {
1482 display: grid;
1483 grid-template-columns: repeat(3, 1fr);
1484 gap: 20px;
1485 margin-bottom: 32px;
1486 }
1487
1488 .ka-v3-stat-card {
1489 background: #fff;
1490 border-radius: 20px;
1491 padding: 24px;
1492 display: flex;
1493 align-items: center;
1494 gap: 16px;
1495 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
1496 }
1497
1498 .ka-v3-stat-icon {
1499 width: 52px;
1500 height: 52px;
1501 border-radius: 14px;
1502 display: flex;
1503 align-items: center;
1504 justify-content: center;
1505 }
1506
1507 .ka-v3-stat-icon .dashicons {
1508 font-size: 26px;
1509 width: 26px;
1510 height: 26px;
1511 color: #fff;
1512 }
1513
1514 .ka-v3-stat-icon-blue {
1515 background: linear-gradient(135deg, #0071e3 0%, #40a9ff 100%);
1516 }
1517
1518 .ka-v3-stat-icon-green {
1519 background: linear-gradient(135deg, #34c759 0%, #30d158 100%);
1520 }
1521
1522 .ka-v3-stat-icon-orange {
1523 background: linear-gradient(135deg, #ff9500 0%, #ffcc00 100%);
1524 }
1525
1526 .ka-v3-stat-icon-purple {
1527 background: linear-gradient(135deg, #af52de 0%, #bf5af2 100%);
1528 }
1529
1530 .ka-v3-stat-value {
1531 font-size: 32px;
1532 font-weight: 700;
1533 color: #1d1d1f;
1534 line-height: 1;
1535 }
1536
1537 .ka-v3-stat-label {
1538 font-size: 14px;
1539 color: #86868b;
1540 margin-top: 4px;
1541 }
1542
1543 /* ===== UTILITY ===== */
1544 .ka-v3-hidden {
1545 display: none !important;
1546 }
1547
1548 /* ===== DARK THEME ===== */
1549 body.ka-v3-dark .ka-v3-wrap {
1550 color: #f5f5f7;
1551 }
1552
1553 body.ka-v3-dark .ka-v3-title {
1554 background: linear-gradient(135deg, #f5f5f7 0%, #a1a1a6 100%);
1555 -webkit-background-clip: text;
1556 -webkit-text-fill-color: transparent;
1557 background-clip: text;
1558 }
1559
1560 body.ka-v3-dark .ka-v3-subtitle {
1561 color: #86868b;
1562 }
1563
1564 body.ka-v3-dark .ka-v3-btn-secondary {
1565 background: rgba(255, 255, 255, 0.1);
1566 color: #f5f5f7;
1567 }
1568
1569 body.ka-v3-dark .ka-v3-btn-secondary:hover {
1570 background: rgba(255, 255, 255, 0.18);
1571 color: #fff;
1572 }
1573
1574
1575 body.ka-v3-dark .ka-v3-segmented {
1576 background: rgba(255, 255, 255, 0.1);
1577 border-color: rgba(255, 255, 255, 0.1);
1578 }
1579
1580 body.ka-v3-dark .ka-v3-segmented-indicator {
1581 background: rgba(255, 255, 255, 0.1);
1582 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
1583 }
1584
1585 body.ka-v3-dark .ka-v3-segmented-btn {
1586 color: #f5f5f7;
1587 }
1588
1589 body.ka-v3-dark .ka-v3-segmented-btn[aria-pressed="false"] {
1590 color: rgba(245, 245, 247, 0.72);
1591 }
1592
1593 body.ka-v3-dark .ka-v3-bento-card {
1594 background: #1c1c1e;
1595 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
1596 }
1597
1598 body.ka-v3-dark .ka-v3-bento-value {
1599 background: linear-gradient(135deg, #fff 0%, #a1a1a6 100%);
1600 -webkit-background-clip: text;
1601 -webkit-text-fill-color: transparent;
1602 background-clip: text;
1603 }
1604
1605 body.ka-v3-dark .ka-v3-bento-desc {
1606 color: #f5f5f7;
1607 }
1608
1609 body.ka-v3-dark .ka-v3-nav {
1610 background: rgba(28, 28, 30, 0.72);
1611 border-color: rgba(255, 255, 255, 0.1);
1612 }
1613
1614 body.ka-v3-dark .ka-v3-nav-item {
1615 color: #86868b;
1616 }
1617
1618 body.ka-v3-dark .ka-v3-nav-item:hover {
1619 color: #f5f5f7;
1620 }
1621
1622 body.ka-v3-dark .ka-v3-nav-item.active {
1623 background: #f5f5f7;
1624 color: #000;
1625 }
1626
1627 body.ka-v3-dark .ka-v3-nav-badge {
1628 background: rgba(255, 255, 255, 0.15);
1629 }
1630
1631 body.ka-v3-dark .ka-v3-nav-item.active .ka-v3-nav-badge {
1632 background: rgba(0, 0, 0, 0.15);
1633 }
1634
1635 body.ka-v3-dark .ka-v3-search input {
1636 background: rgba(28, 28, 30, 0.8);
1637 border-color: rgba(255, 255, 255, 0.1);
1638 color: #f5f5f7;
1639 }
1640
1641 body.ka-v3-dark .ka-v3-search input:focus {
1642 background: #1c1c1e;
1643 border-color: #0a84ff;
1644 box-shadow: 0 0 0 4px rgba(10, 132, 255, 0.2);
1645 }
1646
1647 body.ka-v3-dark .ka-v3-search input::placeholder {
1648 color: #636366;
1649 }
1650
1651 body.ka-v3-dark .ka-v3-filters {
1652 background: rgba(28, 28, 30, 0.8);
1653 border-color: rgba(255, 255, 255, 0.1);
1654 }
1655
1656 body.ka-v3-dark .ka-v3-collapse-all {
1657 background: rgba(28, 28, 30, 0.8);
1658 border-color: rgba(255, 255, 255, 0.1);
1659 }
1660
1661 body.ka-v3-dark .ka-v3-filter-btn {
1662 color: #8e8e93;
1663 }
1664
1665 body.ka-v3-dark .ka-v3-filter-btn:hover {
1666 background: rgba(255, 255, 255, 0.08);
1667 color: #f5f5f7;
1668 }
1669
1670 body.ka-v3-dark .ka-v3-filter-btn.active {
1671 background: #f5f5f7;
1672 color: #000;
1673 }
1674
1675 body.ka-v3-dark .ka-v3-view-toggle {
1676 background: rgba(28, 28, 30, 0.8);
1677 border-color: rgba(255, 255, 255, 0.1);
1678 }
1679
1680 body.ka-v3-dark .ka-v3-view-label {
1681 color: #8e8e93;
1682 }
1683
1684 body.ka-v3-dark .ka-v3-category-header {
1685 border-bottom-color: rgba(255, 255, 255, 0.08);
1686 }
1687
1688 body.ka-v3-dark .ka-v3-category-title h3 {
1689 color: #f5f5f7;
1690 }
1691
1692 body.ka-v3-dark .ka-v3-category-title .dashicons {
1693 color: #0a84ff;
1694 }
1695
1696 body.ka-v3-dark .ka-v3-category-count {
1697 background: rgba(255, 255, 255, 0.1);
1698 color: #8e8e93;
1699 }
1700
1701 body.ka-v3-dark .ka-v3-category-collapse {
1702 background: rgba(255, 255, 255, 0.08);
1703 border-color: rgba(255, 255, 255, 0.1);
1704 }
1705
1706 body.ka-v3-dark .ka-v3-category-collapse:hover {
1707 background: rgba(255, 255, 255, 0.14);
1708 }
1709
1710 body.ka-v3-dark .ka-v3-category-collapse .dashicons {
1711 color: #f5f5f7;
1712 }
1713
1714 body.ka-v3-dark .ka-v3-card {
1715 background: #1c1c1e;
1716 border-color: rgba(255, 255, 255, 0.06);
1717 }
1718
1719 body.ka-v3-dark .ka-v3-card:hover {
1720 background: #2c2c2e;
1721 box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
1722 }
1723
1724 body.ka-v3-dark .ka-v3-card-icon {
1725 background: linear-gradient(135deg, #2c2c2e 0%, #3a3a3c 100%);
1726 }
1727
1728 body.ka-v3-dark .ka-v3-card-icon img {
1729 filter: invert(1);
1730 }
1731
1732 body.ka-v3-dark .ka-v3-card-icon .dashicons {
1733 color: #a1a1a6;
1734 }
1735
1736 body.ka-v3-dark .ka-v3-card-title {
1737 color: #f5f5f7;
1738 }
1739
1740 body.ka-v3-dark .ka-v3-card-desc {
1741 color: #8e8e93;
1742 }
1743
1744 body.ka-v3-dark .ka-v3-card-footer {
1745 border-top-color: rgba(255, 255, 255, 0.06);
1746 }
1747
1748 body.ka-v3-dark .ka-v3-card-link {
1749 color: #0a84ff;
1750 }
1751
1752 body.ka-v3-dark .ka-v3-card-link:hover {
1753 color: #409cff;
1754 }
1755
1756 body.ka-v3-dark .ka-v3-toggle-slider {
1757 background-color: #39393d;
1758 }
1759
1760 body.ka-v3-dark input:checked + .ka-v3-toggle-slider {
1761 background-color: #30d158;
1762 }
1763
1764 body.ka-v3-dark .ka-v3-footer {
1765 background: rgba(28, 28, 30, 0.72);
1766 border-color: rgba(255, 255, 255, 0.1);
1767 }
1768
1769 body.ka-v3-dark .ka-v3-stat-card {
1770 background: #1c1c1e;
1771 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
1772 }
1773
1774 body.ka-v3-dark .ka-v3-stat-value {
1775 color: #f5f5f7;
1776 }
1777
1778 body.ka-v3-dark .ka-v3-stat-label {
1779 color: #8e8e93;
1780 }
1781
1782 body.ka-v3-dark .ka-v3-quick-actions .ka-v3-btn-secondary {
1783 background: rgba(255, 255, 255, 0.08);
1784 color: #f5f5f7;
1785 }
1786
1787 body.ka-v3-dark .ka-v3-quick-actions .ka-v3-btn-secondary:hover {
1788 background: rgba(255, 255, 255, 0.14);
1789 }
1790
1791 /* ===== RESPONSIVE ===== */
1792 @media (max-width: 1200px) {
1793 .ka-v3-bento {
1794 grid-template-columns: repeat(2, 1fr);
1795 }
1796
1797 .ka-v3-bento-card.large {
1798 grid-column: span 1;
1799 }
1800
1801 .ka-v3-header {
1802 flex-direction: column;
1803 gap: 24px;
1804 }
1805 }
1806
1807 @media (max-width: 900px) {
1808 .ka-v3-wrap {
1809 padding: 40px 24px;
1810 }
1811
1812 .ka-v3-title {
1813 font-size: 40px;
1814 }
1815
1816 .ka-v3-bento {
1817 grid-template-columns: 1fr;
1818 }
1819
1820 .ka-v3-bento-card.large {
1821 grid-column: span 1;
1822 }
1823
1824 .ka-v3-controls {
1825 flex-direction: column;
1826 align-items: stretch;
1827 }
1828
1829 .ka-v3-search {
1830 max-width: none;
1831 }
1832
1833 .ka-v3-grid {
1834 grid-template-columns: 1fr;
1835 }
1836
1837 .ka-v3-stats-row {
1838 grid-template-columns: 1fr;
1839 }
1840
1841 .ka-v3-footer {
1842 left: 20px;
1843 right: 20px;
1844 transform: none;
1845 border-radius: 20px;
1846 flex-wrap: wrap;
1847 justify-content: center;
1848 }
1849 }
1850