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 / widgets / Dynamic_Posts_Grid / style.css

style.css in King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder 51.1.87, at includes/widgets/Dynamic_Posts_Grid/style.css

689 lines 16.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * Dynamic Posts Grid Widget Styles
3 * King Addons for Elementor
4 */
5
6 /* Wrapper */
7 .king-addons-dpg-wrapper {
8 width: 100%;
9 position: relative;
10 }
11
12 /* Elementor Editor Wrapper Fixes */
13 /* .elementor-editor-active .king-addons-dpg-wrapper {
14 width: 100% !important;
15 max-width: 100% !important;
16 overflow: visible !important;
17 }
18
19 .elementor-editor-active .elementor-widget-king-addons-dynamic-posts-grid {
20 width: 100% !important;
21 }
22
23 .elementor-editor-active .elementor-widget-king-addons-dynamic-posts-grid .elementor-widget-container {
24 width: 100% !important;
25 overflow: visible !important;
26 } */
27
28 /* Filter Bar Styles */
29 .king-addons-dpg-filter-bar {
30 /* Margin controlled by Elementor - see Filter Section Spacing */
31 }
32
33 .king-addons-dpg-filter-header {
34 /* Margin controlled by Elementor - see Filter Section Spacing */
35 }
36
37 .king-addons-dpg-filter-title {
38 /* Styles controlled by Elementor - see Filter Title style section */
39 }
40
41 .king-addons-dpg-filter-controls {
42 display: flex;
43 align-items: center;
44 /* Gap controlled by Elementor - see Filter Section Spacing */
45 flex-wrap: wrap;
46 }
47
48 .king-addons-dpg-filter-dropdown {
49 position: relative;
50 }
51
52 .king-addons-dpg-posts-filter {
53 /* Main styles controlled by Elementor - see Filter Controls style section */
54 cursor: pointer;
55 min-width: 200px;
56 appearance: none;
57 background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
58 background-position: right 12px center;
59 background-repeat: no-repeat;
60 background-size: 16px;
61 transition: all 0.3s ease;
62 }
63
64 .king-addons-dpg-posts-filter:focus {
65 outline: none;
66 border-color: #D1D5DB;
67 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
68 }
69
70 /* Custom dropdown icon */
71 .king-addons-dpg-filter-dropdown .dropdown-icon {
72 position: absolute;
73 top: 50%;
74 right: 12px;
75 transform: translateY(-50%);
76 pointer-events: none;
77 display: flex;
78 align-items: center;
79 justify-content: center;
80 color: #6B7280;
81 }
82
83 .king-addons-dpg-filter-dropdown .dropdown-icon svg,
84 .king-addons-dpg-filter-dropdown .dropdown-icon i {
85 color: currentColor;
86 fill: currentColor;
87 }
88
89 /* Custom dropdown image */
90 .king-addons-dpg-filter-dropdown .dropdown-image {
91 position: absolute;
92 top: 50%;
93 right: 12px;
94 transform: translateY(-50%);
95 pointer-events: none;
96 display: flex;
97 align-items: center;
98 justify-content: center;
99 width: 16px; /* Default size, overridden by Elementor */
100 height: 16px; /* Default size, overridden by Elementor */
101 flex-shrink: 0;
102 }
103
104 .king-addons-dpg-filter-dropdown .dropdown-image img {
105 object-fit: contain;
106 opacity: 0.8;
107 max-width: 100%;
108 max-height: 100%;
109 transition: opacity 0.3s ease;
110 }
111
112 /* Hide default arrow when using custom icon or image */
113 .king-addons-dpg-filter-dropdown.has-custom-icon .king-addons-dpg-posts-filter {
114 background-image: none;
115 }
116
117 /* Search Input */
118 .king-addons-dpg-search-input {
119 /* Main styles controlled by Elementor - see Filter Controls style section */
120 position: relative;
121 display: flex;
122 align-items: center;
123 overflow: hidden;
124 transition: all 0.3s ease;
125 min-width: 350px;
126 }
127
128 .king-addons-dpg-search-input:focus-within {
129 border-color: #D1D5DB;
130 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1), 0 1px 2px rgba(0, 0, 0, 0.05);
131 }
132
133 .king-addons-dpg-posts-search {
134 /* Main styles controlled by Elementor - see Filter Controls style section */
135 border: none;
136 background: transparent;
137 flex: 1;
138 min-width: 280px;
139 }
140
141 .king-addons-dpg-posts-search:focus {
142 outline: none;
143 }
144
145 .king-addons-dpg-posts-search::placeholder {
146 /* Placeholder color controlled by Elementor */
147 font-weight: 400;
148 }
149
150 .king-addons-dpg-search-btn {
151 /* Styles controlled by Elementor - see Filter Controls > Search Button section */
152 cursor: pointer;
153 display: flex;
154 align-items: center;
155 justify-content: center;
156 border: none;
157 border-radius: 0;
158 }
159
160 .king-addons-dpg-search-btn:hover {
161 /* Hover styles controlled by Elementor - see Filter Controls > Search Button section */
162 }
163
164 .king-addons-dpg-search-btn svg {
165 fill: currentColor;
166 width: 18px;
167 height: 18px;
168 }
169
170 .king-addons-dpg-search-btn i {
171 /* Icon styles controlled by Elementor - see Filter Controls > Search Button Icon section */
172 font-size: 18px;
173 color: currentColor;
174 }
175
176 /* Grid Styles */
177 .king-addons-dpg-grid {
178 display: grid;
179 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
180 gap: 24px;
181 /* Margin controlled by Elementor - see Grid Spacing section */
182 }
183
184 /* Elementor Editor Compatibility */
185 /* .elementor-editor-active .king-addons-dpg-grid {
186 display: grid !important;
187 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
188 gap: 24px !important;
189 } */
190
191 /* Elementor Preview Mode */
192 .elementor-device-desktop .king-addons-dpg-grid {
193 grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
194 }
195
196 .elementor-device-tablet .king-addons-dpg-grid {
197 grid-template-columns: repeat(2, 1fr);
198 gap: 20px;
199 }
200
201 .elementor-device-mobile .king-addons-dpg-grid {
202 grid-template-columns: 1fr;
203 gap: 16px;
204 }
205
206 /* Force Grid Layout in Editor (override Isotope) */
207 /* .elementor-editor-active .king-addons-dpg-grid .king-addons-dpg-item {
208 position: static !important;
209 transform: none !important;
210 width: auto !important;
211 height: auto !important;
212 left: auto !important;
213 top: auto !important;
214 }
215
216 /* Disable Isotope animations in editor */
217 /* .elementor-editor-active .king-addons-dpg-grid {
218 height: auto !important;
219 }
220
221 .elementor-editor-active .king-addons-dpg-grid .king-addons-dpg-card {
222 position: static !important;
223 transform: none !important;
224 } */
225
226 /* Grid Item (Card) Styles */
227 .king-addons-dpg-card {
228 /* Main styles controlled by Elementor - see Cards style section */
229 overflow: hidden;
230 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
231 position: relative;
232 display: flex;
233 flex-direction: column;
234 /* height:100% + Isotope masonry measures the parent and explodes card height. */
235 height: auto;
236 max-height: none;
237 }
238
239 /* Elementor Editor Card Fixes */
240 /* .elementor-editor-active .king-addons-dpg-card {
241 display: flex !important;
242 flex-direction: column !important;
243 height: 100% !important;
244 width: 100% !important;
245 box-sizing: border-box !important;
246 }
247
248 .elementor-editor-active .king-addons-dpg-item {
249 width: 100% !important;
250 display: block !important;
251 }
252
253 /* Fix content distribution in editor */
254 /* .elementor-editor-active .king-addons-dpg-content {
255 flex: 1 !important;
256 display: flex !important;
257 flex-direction: column !important;
258 }
259
260 .elementor-editor-active .king-addons-dpg-cta {
261 margin-top: auto !important;
262 } */
263
264 .king-addons-dpg-card:hover {
265 /* Hover styles controlled by Elementor - see Card Hover Effects section */
266 }
267
268 /* Card clickable styles */
269 .king-addons-dpg-cards-clickable .king-addons-dpg-card {
270 cursor: pointer;
271 }
272
273 .king-addons-dpg-cards-clickable .king-addons-dpg-card:hover {
274 /* Enhanced interaction feedback when clickable */
275 }
276
277 /* Ensure buttons and links inside clickable cards still have proper cursor */
278 .king-addons-dpg-cards-clickable .king-addons-dpg-card a,
279 .king-addons-dpg-cards-clickable .king-addons-dpg-card button {
280 cursor: pointer;
281 }
282
283 /* Post Type Header */
284 .king-addons-dpg-header {
285 /* Padding controlled by Elementor - see Card Header style section */
286 display: flex;
287 align-items: center;
288 justify-content: space-between;
289 }
290
291 /* Icon Position - Left (default) */
292 .king-addons-icon-left .king-addons-dpg-header {
293 justify-content: flex-start;
294 gap: 12px;
295 }
296
297 /* Icon Position - Right */
298 .king-addons-icon-right .king-addons-dpg-header {
299 justify-content: space-between;
300 flex-direction: row-reverse;
301 gap: 12px;
302 }
303
304 .king-addons-dpg-icon {
305 /* Styles controlled by Elementor - see Card Header style section */
306 display: flex;
307 align-items: center;
308 justify-content: center;
309 flex-shrink: 0;
310 position: relative;
311 }
312
313 .king-addons-dpg-icon svg {
314 /* Size and color controlled by Elementor */
315 opacity: 0.8;
316 }
317
318 .king-addons-dpg-icon i {
319 /* Size and color controlled by Elementor */
320 opacity: 0.8;
321 }
322
323 .king-addons-dpg-icon img {
324 /* Size controlled by Elementor */
325 object-fit: contain;
326 }
327
328 /* Category icon and image styles */
329 .king-addons-dpg-icon .category-icon {
330 /* Icon styles controlled by Elementor - see Card Header style section */
331 opacity: 0.8;
332 }
333
334 .king-addons-dpg-icon .category-image {
335 /* Image styles controlled by Elementor - see Card Header style section */
336 object-fit: contain;
337 border-radius: 2px;
338 }
339
340 .king-addons-dpg-label {
341 /* Typography and color controlled by Elementor - see Card Header style section */
342 opacity: 0.9;
343 }
344
345 /* Category Color Variations - Dynamic styles set via Elementor controls */
346 .king-addons-dpg-category-default {
347 background: #F8F9FA;
348 border-left: 4px solid #DEE2E6;
349 }
350
351 .king-addons-dpg-category-default .king-addons-dpg-header {
352 background: #E9ECEF;
353 }
354
355 .king-addons-dpg-category-default .king-addons-dpg-icon,
356 .king-addons-dpg-category-default .king-addons-dpg-label {
357 color: #6C757D;
358 }
359
360 /* Common Category Colors (fallback if Elementor colors not applied) */
361 .king-addons-dpg-card.king-addons-dpg-category-uncategorized,
362 .king-addons-dpg-card.filter-uncategorized {
363 background: #F3F4F6;
364 }
365
366 .king-addons-dpg-card.king-addons-dpg-category-surfing,
367 .king-addons-dpg-card.filter-surfing {
368 background: #DBEAFE;
369 }
370
371 .king-addons-dpg-card.king-addons-dpg-category-diving-experience,
372 .king-addons-dpg-card.filter-diving-experience {
373 background: #FEF3C7;
374 }
375
376 .king-addons-dpg-card.king-addons-dpg-category-events,
377 .king-addons-dpg-card.filter-events {
378 background: #FBCFE8;
379 }
380
381 .king-addons-dpg-card.king-addons-dpg-category-surfing-tips,
382 .king-addons-dpg-card.filter-surfing-tips {
383 background: #FEE2E2;
384 }
385
386 .king-addons-dpg-card.king-addons-dpg-category-kayaking,
387 .king-addons-dpg-card.filter-kayaking {
388 background: #FEF3C7;
389 }
390
391 .king-addons-dpg-card.king-addons-dpg-category-diving-tips,
392 .king-addons-dpg-card.filter-diving-tips {
393 background: #DBEAFE;
394 }
395
396 /* Dynamic category classes will be generated with inline styles via selectors */
397
398 /* Post Content */
399 .king-addons-dpg-content {
400 /* Padding and alignment controlled by Elementor - see Card Content style section */
401 flex: 1;
402 display: flex;
403 flex-direction: column;
404 }
405
406 .king-addons-dpg-title {
407 /* Typography controlled by Elementor - see Card Content style section */
408 margin: 0 0 0 0;
409 }
410
411 /* Excerpt - controlled by PHP conditional rendering */
412 .king-addons-dpg-excerpt {
413 /* Styles controlled by Elementor - see Card Content > Excerpt section */
414 }
415
416 .king-addons-dpg-title a {
417 /* Color controlled by Elementor - see Card Content style section */
418 text-decoration: none;
419 transition: color 0.3s ease;
420 display: block;
421 }
422
423 .king-addons-dpg-title a:hover {
424 /* Hover color controlled by Elementor */
425 }
426
427 .king-addons-dpg-excerpt {
428 color: #64748B;
429 font-size: 14px;
430 line-height: 1.5;
431 margin-bottom: 24px;
432 display: none; /* Hidden in this design */
433 }
434
435 /* CTA Button */
436 .king-addons-dpg-cta {
437 /* Padding controlled by Elementor - see Card Button style section */
438 margin-top: auto;
439 }
440
441 .king-addons-dpg-button {
442 /* All styles controlled by Elementor - see Card Button style section */
443 display: inline-block;
444 text-decoration: none;
445 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
446 backdrop-filter: blur(8px);
447 }
448
449 .king-addons-dpg-button:hover {
450 /* Hover styles controlled by Elementor */
451 transform: translateY(-1px);
452 }
453
454 /* Load More Section */
455 .king-addons-dpg-pagination {
456 text-align: center;
457 /* Margin controlled by Elementor - see Pagination section */
458 }
459
460 .king-addons-dpg-load-more-btn {
461 /* All styles controlled by Elementor - see Load More Button style section */
462 display: inline-block;
463 border: none;
464 cursor: pointer;
465 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
466 position: relative;
467 overflow: hidden;
468 }
469
470 .king-addons-dpg-load-more-btn:hover {
471 /* Hover styles controlled by Elementor */
472 transform: translateY(-2px);
473 }
474
475 .king-addons-dpg-load-more-btn:active {
476 transform: translateY(0);
477 }
478
479 .king-addons-dpg-load-more-btn:disabled {
480 opacity: 0.6;
481 cursor: not-allowed;
482 transform: none;
483 }
484
485 .king-addons-dpg-pagination-loading {
486 /* Color controlled by Elementor - see Pagination section */
487 font-style: italic;
488 margin: 20px 0;
489 }
490
491 .king-addons-dpg-pagination-finish {
492 /* Styles controlled by Elementor - see Pagination section */
493 text-align: center;
494 }
495
496 .king-addons-dpg-current-count,
497 .king-addons-dpg-total-count {
498 /* Color controlled by Elementor - see Pagination section */
499 font-weight: 600;
500 }
501
502 .king-addons-dpg-pagination-info {
503 /* Styles controlled by Elementor - see Pagination section */
504 text-align: center;
505 }
506
507 /* No Posts Message */
508 .king-addons-dpg-no-posts {
509 /* All styles controlled by Elementor - see Messages section */
510 text-align: center;
511 }
512
513 /* Error Message */
514 .king-addons-dpg-error-message {
515 /* All styles controlled by Elementor - see Messages section */
516 }
517
518 /* Animation Classes */
519 .king-addons-dpg-zero-opacity {
520 opacity: 0;
521 transition: opacity 0.3s ease;
522 }
523
524 .king-addons-dpg-fade-in {
525 animation: kingAddonsDpgFadeIn 0.6s ease-out;
526 }
527
528 @keyframes kingAddonsDpgFadeIn {
529 from {
530 opacity: 0;
531 transform: translateY(20px);
532 }
533 to {
534 opacity: 1;
535 transform: translateY(0);
536 }
537 }
538
539 /* Loading Animation */
540 .king-addons-dpg-loading-spinner {
541 display: inline-block;
542 width: 20px;
543 height: 20px;
544 border: 3px solid #f3f3f3;
545 border-top: 3px solid #6c5ce7;
546 border-radius: 50%;
547 animation: kingAddonsSpinner 1s linear infinite;
548 margin-right: 10px;
549 }
550
551 @keyframes kingAddonsSpinner {
552 0% { transform: rotate(0deg); }
553 100% { transform: rotate(360deg); }
554 }
555
556 /* Responsive Design */
557 @media (max-width: 1200px) {
558 .king-addons-dpg-grid {
559 grid-template-columns: repeat(2, 1fr);
560 gap: 20px;
561 }
562 }
563
564 @media (max-width: 768px) {
565 .king-addons-dpg-grid {
566 grid-template-columns: 1fr;
567 gap: 16px;
568 }
569
570 .king-addons-dpg-filter-title {
571 font-size: 28px;
572 }
573
574 .king-addons-dpg-filter-controls {
575 flex-direction: column;
576 gap: 16px;
577 align-items: stretch;
578 }
579
580 .king-addons-dpg-posts-filter,
581 .king-addons-dpg-search-input {
582 min-width: auto;
583 width: 100%;
584 }
585
586 .king-addons-dpg-posts-search {
587 min-width: auto;
588 }
589
590 .king-addons-dpg-title {
591 font-size: 17px;
592 }
593
594 .king-addons-dpg-card {
595 min-height: 240px;
596 }
597
598 .king-addons-dpg-content {
599 padding: 0 20px 20px 20px;
600 }
601
602 .king-addons-dpg-cta {
603 padding: 0 20px 20px 20px;
604 }
605
606 .king-addons-dpg-header {
607 padding: 16px 20px 12px 20px;
608 }
609
610 .king-addons-dpg-search-input {
611 min-width: 100%;
612 }
613
614 .king-addons-dpg-posts-filter {
615 min-width: 100%;
616 }
617 }
618
619 @media (max-width: 480px) {
620 .king-addons-dpg-filter-title {
621 font-size: 24px;
622 margin-bottom: 16px;
623 }
624
625 .king-addons-dpg-grid {
626 gap: 12px;
627 margin-bottom: 30px;
628 }
629
630 .king-addons-dpg-card {
631 min-height: 240px;
632 }
633
634 .king-addons-dpg-title {
635 font-size: 16px;
636 }
637
638 .king-addons-dpg-load-more-btn {
639 padding: 14px 32px;
640 font-size: 13px;
641 }
642
643 .king-addons-dpg-pagination-info {
644 font-size: 13px;
645 margin-bottom: 24px;
646 }
647 }
648
649 /* RTL Support */
650 [dir="rtl"] .king-addons-dpg-header {
651 flex-direction: row-reverse;
652 }
653
654 [dir="rtl"] .king-addons-dpg-posts-filter {
655 background-position: left 10px center;
656 padding: 10px 15px 10px 40px;
657 }
658
659 /* High Contrast Mode */
660 @media (prefers-contrast: high) {
661 .king-addons-dpg-card {
662 border-width: 2px;
663 }
664
665 .king-addons-dpg-title a {
666 color: #000;
667 }
668
669 .king-addons-dpg-button {
670 border-width: 3px;
671 }
672 }
673
674 /* Reduced Motion */
675 /* @media (prefers-reduced-motion: reduce) {
676 .king-addons-dpg-card,
677 .king-addons-dpg-button,
678 .king-addons-dpg-load-more-btn {
679 transition: none;
680 }
681
682 .king-addons-dpg-card:hover {
683 transform: none !important;
684 }
685
686 .king-addons-dpg-fade-in {
687 animation: none;
688 }
689 } */