PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.63
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.63
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 / extensions / Cookie_Consent / assets / style.css

style.css in King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder 51.1.63, at includes/extensions/Cookie_Consent/assets/style.css

644 lines 16.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * King Addons Cookie / Consent Bar Styles
3 * GDPR/CCPA compliant cookie consent banner
4 */
5
6 /* ========== CSS Variables ========== */
7 .king-addons-cookie-consent {
8 --ka-bg: #111827;
9 --ka-text: #f9fafb;
10 --ka-link: #60a5fa;
11 --ka-primary-bg: #2563eb;
12 --ka-primary-text: #ffffff;
13 --ka-secondary-bg: #374151;
14 --ka-secondary-text: #ffffff;
15 --ka-border: #374151;
16 --ka-radius: 12px;
17 --ka-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
18 position: fixed;
19 inset: 0;
20 pointer-events: none;
21 z-index: 999999;
22 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
23 }
24
25 /* ========== Banner Base ========== */
26 .king-addons-cookie-consent__banner,
27 .king-addons-cookie-consent__modal {
28 pointer-events: auto;
29 color: var(--ka-text);
30 box-sizing: border-box;
31 }
32
33 .king-addons-cookie-consent__banner *,
34 .king-addons-cookie-consent__modal * {
35 box-sizing: border-box;
36 }
37
38 .king-addons-cookie-consent__banner {
39 position: fixed;
40 background: var(--ka-bg);
41 border: 1px solid var(--ka-border);
42 border-radius: var(--ka-radius);
43 box-shadow: var(--ka-shadow);
44 padding: 20px 24px;
45 opacity: 0;
46 visibility: hidden;
47 transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
48 }
49
50 .king-addons-cookie-consent__banner.is-visible {
51 opacity: 1;
52 visibility: visible;
53 }
54
55 /* ========== Layout Variants ========== */
56
57 /* Bottom Bar (Default) */
58 .king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner {
59 left: 50%;
60 bottom: 20px;
61 transform: translateX(-50%) translateY(20px);
62 width: min(960px, calc(100vw - 40px));
63 }
64
65 .king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner.is-visible {
66 transform: translateX(-50%) translateY(0);
67 }
68
69 /* Top Bar */
70 .king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner {
71 left: 50%;
72 top: 20px;
73 transform: translateX(-50%) translateY(-20px);
74 width: min(960px, calc(100vw - 40px));
75 }
76
77 .king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner.is-visible {
78 transform: translateX(-50%) translateY(0);
79 }
80
81 /* Bottom Left Box */
82 .king-addons-cookie-consent--bottom-left .king-addons-cookie-consent__banner {
83 left: 20px;
84 bottom: 20px;
85 transform: translateX(-20px);
86 width: min(400px, calc(100vw - 40px));
87 }
88
89 .king-addons-cookie-consent--bottom-left .king-addons-cookie-consent__banner.is-visible {
90 transform: translateX(0);
91 }
92
93 /* Bottom Right Box */
94 .king-addons-cookie-consent--bottom-right .king-addons-cookie-consent__banner {
95 right: 20px;
96 bottom: 20px;
97 left: auto;
98 transform: translateX(20px);
99 width: min(400px, calc(100vw - 40px));
100 }
101
102 .king-addons-cookie-consent--bottom-right .king-addons-cookie-consent__banner.is-visible {
103 transform: translateX(0);
104 }
105
106 /* Center Modal */
107 .king-addons-cookie-consent--modal .king-addons-cookie-consent__banner {
108 left: 50%;
109 top: 50%;
110 transform: translate(-50%, -50%) scale(0.95);
111 width: min(520px, calc(100vw - 40px));
112 }
113
114 .king-addons-cookie-consent--modal .king-addons-cookie-consent__banner.is-visible {
115 transform: translate(-50%, -50%) scale(1);
116 }
117
118 /* ========== Banner Body ========== */
119 .king-addons-cookie-consent__body {
120 display: flex;
121 flex-direction: column;
122 gap: 14px;
123 }
124
125 .king-addons-cookie-consent__title {
126 margin: 0;
127 font-size: 18px;
128 font-weight: 700;
129 line-height: 1.3;
130 }
131
132 .king-addons-cookie-consent__text {
133 margin: 0;
134 font-size: 14px;
135 line-height: 1.6;
136 opacity: 0.9;
137 }
138
139 .king-addons-cookie-consent__links {
140 display: flex;
141 flex-wrap: wrap;
142 gap: 8px 16px;
143 }
144
145 .king-addons-cookie-consent__links a {
146 color: var(--ka-link);
147 text-decoration: none;
148 font-size: 13px;
149 font-weight: 600;
150 transition: opacity 0.2s;
151 }
152
153 .king-addons-cookie-consent__links a:hover {
154 text-decoration: underline;
155 opacity: 0.8;
156 }
157
158 /* ========== Buttons ========== */
159 .king-addons-cookie-consent__actions {
160 display: flex;
161 flex-wrap: wrap;
162 gap: 10px;
163 margin-top: 4px;
164 }
165
166 .king-addons-cookie-consent__btn {
167 display: inline-flex;
168 align-items: center;
169 justify-content: center;
170 padding: 11px 18px;
171 font-size: 14px;
172 font-weight: 600;
173 border-radius: 8px;
174 border: 1px solid transparent;
175 cursor: pointer;
176 transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
177 white-space: nowrap;
178 }
179
180 .king-addons-cookie-consent__btn:hover {
181 transform: translateY(-1px);
182 }
183
184 .king-addons-cookie-consent__btn:active {
185 transform: translateY(0);
186 }
187
188 .king-addons-cookie-consent__btn--primary {
189 background: var(--ka-primary-bg);
190 color: var(--ka-primary-text);
191 border-color: var(--ka-primary-bg);
192 }
193
194 .king-addons-cookie-consent__btn--primary:hover {
195 box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
196 }
197
198 .king-addons-cookie-consent__btn--secondary {
199 background: var(--ka-secondary-bg);
200 color: var(--ka-secondary-text);
201 border-color: var(--ka-border);
202 }
203
204 .king-addons-cookie-consent__btn--secondary:hover {
205 background: rgba(255, 255, 255, 0.1);
206 }
207
208 /* ========== Modal Overlay ========== */
209 .king-addons-cookie-consent__modal {
210 position: fixed;
211 inset: 0;
212 background: rgba(0, 0, 0, 0.6);
213 backdrop-filter: blur(4px);
214 display: flex;
215 align-items: center;
216 justify-content: center;
217 padding: 20px;
218 opacity: 0;
219 visibility: hidden;
220 transition: opacity 0.25s ease, visibility 0.25s;
221 }
222
223 .king-addons-cookie-consent__modal.is-visible {
224 opacity: 1;
225 visibility: visible;
226 }
227
228 .king-addons-cookie-consent__modal-inner {
229 background: var(--ka-bg);
230 border: 1px solid var(--ka-border);
231 border-radius: var(--ka-radius);
232 width: min(560px, calc(100vw - 40px));
233 max-height: calc(100vh - 80px);
234 overflow: hidden;
235 display: flex;
236 flex-direction: column;
237 box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
238 transform: scale(0.95) translateY(10px);
239 transition: transform 0.25s ease;
240 }
241
242 .king-addons-cookie-consent__modal.is-visible .king-addons-cookie-consent__modal-inner {
243 transform: scale(1) translateY(0);
244 }
245
246 /* ========== Modal Header ========== */
247 .king-addons-cookie-consent__modal-header {
248 display: flex;
249 justify-content: space-between;
250 align-items: center;
251 padding: 18px 20px;
252 border-bottom: 1px solid var(--ka-border);
253 flex-shrink: 0;
254 }
255
256 .king-addons-cookie-consent__modal-title {
257 margin: 0;
258 font-size: 18px;
259 font-weight: 700;
260 }
261
262 .king-addons-cookie-consent__close {
263 background: none;
264 border: none;
265 color: var(--ka-text);
266 font-size: 24px;
267 line-height: 1;
268 cursor: pointer;
269 opacity: 0.6;
270 padding: 4px;
271 transition: opacity 0.2s;
272 }
273
274 .king-addons-cookie-consent__close:hover {
275 opacity: 1;
276 }
277
278 /* ========== Modal Body ========== */
279 .king-addons-cookie-consent__modal-body {
280 padding: 16px 20px;
281 overflow-y: auto;
282 flex: 1;
283 }
284
285 .king-addons-cookie-consent__modal-text {
286 font-size: 14px;
287 line-height: 1.6;
288 margin: 0 0 16px;
289 opacity: 0.9;
290 }
291
292 .king-addons-cookie-consent__modal-links {
293 display: flex;
294 flex-wrap: wrap;
295 gap: 8px 16px;
296 margin-bottom: 16px;
297 }
298
299 .king-addons-cookie-consent__modal-links a {
300 color: var(--ka-link);
301 text-decoration: none;
302 font-size: 13px;
303 font-weight: 600;
304 }
305
306 .king-addons-cookie-consent__modal-links a:hover {
307 text-decoration: underline;
308 }
309
310 /* ========== Categories ========== */
311 .king-addons-cookie-consent__categories {
312 display: flex;
313 flex-direction: column;
314 gap: 12px;
315 }
316
317 .king-addons-cookie-consent__category {
318 background: rgba(255, 255, 255, 0.03);
319 border: 1px solid var(--ka-border);
320 border-radius: 10px;
321 padding: 14px 16px;
322 transition: border-color 0.2s;
323 }
324
325 .king-addons-cookie-consent__category:hover {
326 border-color: rgba(255, 255, 255, 0.15);
327 }
328
329 .king-addons-cookie-consent__category-header {
330 display: flex;
331 justify-content: space-between;
332 align-items: center;
333 gap: 12px;
334 }
335
336 .king-addons-cookie-consent__category h4 {
337 margin: 0;
338 font-size: 15px;
339 font-weight: 600;
340 }
341
342 .king-addons-cookie-consent__category p {
343 margin: 8px 0 0;
344 font-size: 13px;
345 line-height: 1.5;
346 opacity: 0.75;
347 }
348
349 /* ========== Toggle Switch ========== */
350 .king-addons-cookie-consent__toggle {
351 position: relative;
352 width: 46px;
353 height: 26px;
354 flex-shrink: 0;
355 }
356
357 .king-addons-cookie-consent__toggle input {
358 position: absolute;
359 opacity: 0;
360 width: 0;
361 height: 0;
362 }
363
364 .king-addons-cookie-consent__toggle-slider {
365 position: absolute;
366 cursor: pointer;
367 inset: 0;
368 background: rgba(255, 255, 255, 0.15);
369 border-radius: 13px;
370 transition: background 0.2s;
371 }
372
373 .king-addons-cookie-consent__toggle-slider::after {
374 content: '';
375 position: absolute;
376 width: 20px;
377 height: 20px;
378 left: 3px;
379 top: 3px;
380 background: #fff;
381 border-radius: 50%;
382 transition: transform 0.2s;
383 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
384 }
385
386 .king-addons-cookie-consent__toggle input:checked + .king-addons-cookie-consent__toggle-slider {
387 background: var(--ka-primary-bg);
388 }
389
390 .king-addons-cookie-consent__toggle input:checked + .king-addons-cookie-consent__toggle-slider::after {
391 transform: translateX(20px);
392 }
393
394 .king-addons-cookie-consent__toggle input:disabled + .king-addons-cookie-consent__toggle-slider {
395 opacity: 0.5;
396 cursor: not-allowed;
397 }
398
399 /* Required badge */
400 .king-addons-cookie-consent__required-badge {
401 display: inline-block;
402 background: rgba(255, 255, 255, 0.1);
403 color: var(--ka-text);
404 font-size: 10px;
405 font-weight: 600;
406 padding: 3px 8px;
407 border-radius: 4px;
408 text-transform: uppercase;
409 letter-spacing: 0.5px;
410 }
411
412 /* ========== Modal Footer ========== */
413 .king-addons-cookie-consent__footer {
414 display: flex;
415 justify-content: space-between;
416 align-items: center;
417 gap: 10px;
418 padding: 16px 20px;
419 border-top: 1px solid var(--ka-border);
420 flex-shrink: 0;
421 flex-wrap: wrap;
422 }
423
424 .king-addons-cookie-consent__footer-actions {
425 display: flex;
426 gap: 10px;
427 flex-wrap: wrap;
428 }
429
430 /* ========== Presets ========== */
431
432 /* Light preset */
433 .king-addons-cookie-consent--preset-light {
434 --ka-bg: #ffffff;
435 --ka-text: #1f2937;
436 --ka-link: #2563eb;
437 --ka-primary-bg: #2563eb;
438 --ka-primary-text: #ffffff;
439 --ka-secondary-bg: #f3f4f6;
440 --ka-secondary-text: #374151;
441 --ka-border: #e5e7eb;
442 --ka-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
443 }
444
445 /* Dark preset (default) */
446 .king-addons-cookie-consent--preset-dark {
447 --ka-bg: #111827;
448 --ka-text: #f9fafb;
449 --ka-link: #60a5fa;
450 --ka-primary-bg: #2563eb;
451 --ka-primary-text: #ffffff;
452 --ka-secondary-bg: #374151;
453 --ka-secondary-text: #ffffff;
454 --ka-border: #374151;
455 }
456
457 /* Minimal preset */
458 .king-addons-cookie-consent--preset-minimal {
459 --ka-bg: #fafafa;
460 --ka-text: #18181b;
461 --ka-link: #3b82f6;
462 --ka-primary-bg: #18181b;
463 --ka-primary-text: #ffffff;
464 --ka-secondary-bg: #f4f4f5;
465 --ka-secondary-text: #18181b;
466 --ka-border: #e4e4e7;
467 --ka-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
468 --ka-radius: 8px;
469 }
470
471 /* Gradient preset (Pro) */
472 .king-addons-cookie-consent--preset-gradient {
473 --ka-bg: linear-gradient(135deg, #1e3a5f 0%, #0f172a 100%);
474 --ka-text: #f1f5f9;
475 --ka-link: #38bdf8;
476 --ka-primary-bg: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);
477 --ka-primary-text: #ffffff;
478 --ka-secondary-bg: rgba(255, 255, 255, 0.1);
479 --ka-secondary-text: #ffffff;
480 --ka-border: rgba(255, 255, 255, 0.1);
481 }
482
483 .king-addons-cookie-consent--preset-gradient .king-addons-cookie-consent__banner,
484 .king-addons-cookie-consent--preset-gradient .king-addons-cookie-consent__modal-inner {
485 background: linear-gradient(135deg, #1e3a5f 0%, #0f172a 100%);
486 }
487
488 .king-addons-cookie-consent--preset-gradient .king-addons-cookie-consent__btn--primary {
489 background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);
490 border: none;
491 }
492
493 /* Glass preset (Pro) */
494 .king-addons-cookie-consent--preset-glass {
495 --ka-bg: rgba(17, 24, 39, 0.85);
496 --ka-text: #f9fafb;
497 --ka-link: #60a5fa;
498 --ka-primary-bg: rgba(37, 99, 235, 0.9);
499 --ka-primary-text: #ffffff;
500 --ka-secondary-bg: rgba(255, 255, 255, 0.1);
501 --ka-secondary-text: #ffffff;
502 --ka-border: rgba(255, 255, 255, 0.1);
503 }
504
505 .king-addons-cookie-consent--preset-glass .king-addons-cookie-consent__banner,
506 .king-addons-cookie-consent--preset-glass .king-addons-cookie-consent__modal-inner {
507 backdrop-filter: blur(20px);
508 -webkit-backdrop-filter: blur(20px);
509 }
510
511 /* ========== Animations ========== */
512
513 /* Fade animation */
514 .king-addons-cookie-consent--anim-fade .king-addons-cookie-consent__banner {
515 transform: none !important;
516 }
517
518 .king-addons-cookie-consent--anim-fade.king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner,
519 .king-addons-cookie-consent--anim-fade.king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner {
520 transform: translateX(-50%) !important;
521 }
522
523 /* Slide up animation */
524 .king-addons-cookie-consent--anim-slide-up .king-addons-cookie-consent__banner {
525 transform: translateY(100%);
526 }
527
528 .king-addons-cookie-consent--anim-slide-up .king-addons-cookie-consent__banner.is-visible {
529 transform: translateY(0);
530 }
531
532 .king-addons-cookie-consent--anim-slide-up.king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner.is-visible,
533 .king-addons-cookie-consent--anim-slide-up.king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner.is-visible {
534 transform: translateX(-50%) translateY(0);
535 }
536
537 /* Slide down animation */
538 .king-addons-cookie-consent--anim-slide-down .king-addons-cookie-consent__banner {
539 transform: translateY(-100%);
540 }
541
542 .king-addons-cookie-consent--anim-slide-down .king-addons-cookie-consent__banner.is-visible {
543 transform: translateY(0);
544 }
545
546 .king-addons-cookie-consent--anim-slide-down.king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner.is-visible,
547 .king-addons-cookie-consent--anim-slide-down.king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner.is-visible {
548 transform: translateX(-50%) translateY(0);
549 }
550
551 /* ========== Manage Button ========== */
552 .king-addons-cookie-manage {
553 display: inline-flex;
554 align-items: center;
555 gap: 6px;
556 padding: 8px 14px;
557 background: var(--ka-secondary-bg, #374151);
558 color: var(--ka-secondary-text, #fff);
559 border: 1px solid var(--ka-border, #374151);
560 border-radius: 6px;
561 font-size: 13px;
562 font-weight: 500;
563 cursor: pointer;
564 transition: background 0.2s;
565 }
566
567 .king-addons-cookie-manage:hover {
568 background: rgba(255, 255, 255, 0.15);
569 }
570
571 /* ========== Responsive ========== */
572 @media (max-width: 640px) {
573 .king-addons-cookie-consent__banner {
574 padding: 16px 18px;
575 }
576
577 .king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner,
578 .king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner {
579 width: calc(100vw - 24px);
580 left: 12px;
581 transform: none;
582 }
583
584 .king-addons-cookie-consent--bottom-bar .king-addons-cookie-consent__banner.is-visible,
585 .king-addons-cookie-consent--top-bar .king-addons-cookie-consent__banner.is-visible {
586 transform: none;
587 }
588
589 .king-addons-cookie-consent--bottom-left .king-addons-cookie-consent__banner,
590 .king-addons-cookie-consent--bottom-right .king-addons-cookie-consent__banner {
591 width: calc(100vw - 24px);
592 left: 12px;
593 right: auto;
594 }
595
596 .king-addons-cookie-consent__actions {
597 flex-direction: column;
598 }
599
600 .king-addons-cookie-consent__btn {
601 width: 100%;
602 justify-content: center;
603 }
604
605 .king-addons-cookie-consent__footer {
606 flex-direction: column;
607 }
608
609 .king-addons-cookie-consent__footer-actions {
610 width: 100%;
611 }
612
613 .king-addons-cookie-consent__footer .king-addons-cookie-consent__btn {
614 flex: 1;
615 }
616 }
617
618 /* ========== Accessibility ========== */
619 @media (prefers-reduced-motion: reduce) {
620 .king-addons-cookie-consent__banner,
621 .king-addons-cookie-consent__modal,
622 .king-addons-cookie-consent__modal-inner,
623 .king-addons-cookie-consent__btn,
624 .king-addons-cookie-consent__toggle-slider,
625 .king-addons-cookie-consent__toggle-slider::after {
626 transition: none !important;
627 }
628 }
629
630 /* Focus styles for accessibility */
631 .king-addons-cookie-consent__btn:focus-visible,
632 .king-addons-cookie-consent__close:focus-visible,
633 .king-addons-cookie-consent__toggle input:focus-visible + .king-addons-cookie-consent__toggle-slider {
634 outline: 2px solid var(--ka-link);
635 outline-offset: 2px;
636 }
637
638 /* ========== Portal container ========== */
639 .king-addons-cookie-consent__portal {
640 position: fixed;
641 z-index: 999998;
642 pointer-events: none;
643 }
644