PluginProbe
King Addons for Elementor – 80+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce, Mega Menu, Popup Builder / 51.1.49
King Addons for Elementor – 80+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce, Mega Menu, Popup Builder v51.1.49
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 51.1.46 51.1.47 51.1.49 All 37 releases
king-addons / includes / widgets / Age_Gate / style.css

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

318 lines 7.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * King Addons Age Gate Frontend Styles
3 */
4
5 /* ========== Base Container ========== */
6 .king-addons-age-gate {
7 position: fixed;
8 inset: 0;
9 z-index: 999999;
10 display: none;
11 align-items: center;
12 justify-content: center;
13 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
14 }
15
16 .king-addons-age-gate--visible {
17 display: flex;
18 }
19
20 /* ========== Overlay ========== */
21 .king-addons-age-gate__overlay {
22 position: absolute;
23 inset: 0;
24 background: var(--ka-age-overlay, #0d0d0d);
25 opacity: var(--ka-age-overlay-opacity, 0.7);
26 transition: opacity 0.25s ease;
27 }
28
29 /* ========== Card ========== */
30 .king-addons-age-gate__card {
31 position: relative;
32 background: var(--ka-age-card-bg, #ffffff);
33 width: calc(100% - 32px);
34 max-width: var(--ka-age-card-width, 520px);
35 padding: 32px;
36 border-radius: 20px;
37 box-shadow: 0 25px 80px rgba(0, 0, 0, 0.2);
38 z-index: 1;
39 color: var(--ka-age-text, #111827);
40 display: flex;
41 flex-direction: column;
42 gap: 16px;
43 text-align: center;
44 }
45
46 .king-addons-age-gate__card--bottom {
47 align-self: flex-end;
48 margin-bottom: 32px;
49 }
50
51 /* ========== Content ========== */
52 .king-addons-age-gate__content {
53 display: flex;
54 flex-direction: column;
55 gap: 16px;
56 }
57
58 /* ========== Logo ========== */
59 .king-addons-age-gate__logo {
60 max-height: 50px;
61 width: auto;
62 margin: 0 auto 8px;
63 object-fit: contain;
64 }
65
66 /* ========== Typography ========== */
67 .king-addons-age-gate__title {
68 margin: 0;
69 font-size: var(--ka-age-title-size, 26px);
70 font-weight: var(--ka-age-title-weight, 700);
71 line-height: 1.2;
72 color: inherit;
73 }
74
75 .king-addons-age-gate__subtitle {
76 margin: 0;
77 font-size: var(--ka-age-body-size, 16px);
78 font-weight: var(--ka-age-body-weight, 400);
79 line-height: 1.6;
80 opacity: 0.85;
81 }
82
83 /* ========== Buttons ========== */
84 .king-addons-age-gate__buttons {
85 display: flex;
86 flex-wrap: wrap;
87 gap: 12px;
88 margin-top: 8px;
89 justify-content: center;
90 }
91
92 .king-addons-age-gate__button {
93 flex: 1 1 140px;
94 max-width: 200px;
95 padding: 14px 24px;
96 border-radius: 12px;
97 border: none;
98 font-size: 15px;
99 font-weight: 600;
100 cursor: pointer;
101 transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.2s ease, color 0.2s ease;
102 }
103
104 .king-addons-age-gate__button:focus-visible {
105 outline: 2px solid #2563eb;
106 outline-offset: 3px;
107 }
108
109 .king-addons-age-gate__button:active {
110 transform: scale(0.98);
111 }
112
113 /* Allow button */
114 .king-addons-age-gate__button--allow {
115 color: var(--ka-age-btn-yes-color, #ffffff);
116 background: var(--ka-age-btn-yes-bg, #10b981);
117 box-shadow: 0 8px 25px rgba(16, 185, 129, 0.3);
118 }
119
120 .king-addons-age-gate__button--allow:hover {
121 background: var(--ka-age-btn-yes-hover-bg, var(--ka-age-btn-yes-bg, #0f9c75));
122 color: var(--ka-age-btn-yes-hover-color, var(--ka-age-btn-yes-color, #ffffff));
123 transform: translateY(-2px);
124 box-shadow: 0 12px 30px rgba(16, 185, 129, 0.35);
125 }
126
127 /* Deny button */
128 .king-addons-age-gate__button--deny {
129 color: var(--ka-age-btn-no-color, #ffffff);
130 background: var(--ka-age-btn-no-bg, #ef4444);
131 box-shadow: 0 8px 25px rgba(239, 68, 68, 0.25);
132 }
133
134 .king-addons-age-gate__button--deny:hover {
135 background: var(--ka-age-btn-no-hover-bg, var(--ka-age-btn-no-bg, #d92d20));
136 color: var(--ka-age-btn-no-hover-color, var(--ka-age-btn-no-color, #ffffff));
137 transform: translateY(-2px);
138 box-shadow: 0 12px 30px rgba(239, 68, 68, 0.3);
139 }
140
141 /* ========== Message ========== */
142 .king-addons-age-gate__message {
143 padding: 16px 20px;
144 border-radius: 12px;
145 background: rgba(239, 68, 68, 0.08);
146 color: #b91c1c;
147 font-weight: 600;
148 font-size: 14px;
149 line-height: 1.5;
150 text-align: center;
151 }
152
153 /* ========== Form Fields ========== */
154 .king-addons-age-gate__field-grid {
155 display: grid;
156 grid-template-columns: repeat(3, 1fr);
157 gap: 12px;
158 max-width: 320px;
159 margin: 0 auto;
160 }
161
162 .king-addons-age-gate__input,
163 .king-addons-age-gate__select {
164 width: 100%;
165 padding: 12px 14px;
166 border-radius: 10px;
167 border: 2px solid #e5e7eb;
168 font-size: 16px;
169 background: #fff;
170 text-align: center;
171 transition: border-color 0.2s, box-shadow 0.2s;
172 }
173
174 .king-addons-age-gate__input:focus,
175 .king-addons-age-gate__select:focus {
176 outline: none;
177 border-color: #2563eb;
178 box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);
179 }
180
181 .king-addons-age-gate__input::placeholder {
182 color: #9ca3af;
183 }
184
185 /* ========== Consent Checkbox ========== */
186 .king-addons-age-gate__consent {
187 display: flex;
188 align-items: center;
189 justify-content: center;
190 gap: 10px;
191 font-size: 14px;
192 }
193
194 .king-addons-age-gate__consent input[type="checkbox"] {
195 width: 18px;
196 height: 18px;
197 accent-color: #2563eb;
198 }
199
200 /* ========== Elementor Template ========== */
201 .king-addons-age-gate__template {
202 margin-bottom: 12px;
203 }
204
205 /* ========== Background Image ========== */
206 .king-addons-age-gate__background {
207 position: absolute;
208 inset: 0;
209 border-radius: 20px;
210 background-size: cover;
211 background-position: center;
212 opacity: 0.1;
213 z-index: 0;
214 }
215
216 /* ========== Animations ========== */
217 .king-addons-age-gate--animate-fade .king-addons-age-gate__card {
218 animation: ka-age-fade 0.35s ease-out;
219 }
220
221 .king-addons-age-gate--animate-slide-up .king-addons-age-gate__card {
222 animation: ka-age-slide-up 0.4s ease-out;
223 }
224
225 .king-addons-age-gate--animate-slide-down .king-addons-age-gate__card {
226 animation: ka-age-slide-down 0.4s ease-out;
227 }
228
229 .king-addons-age-gate--animate-zoom .king-addons-age-gate__card {
230 animation: ka-age-zoom 0.35s ease-out;
231 }
232
233 @keyframes ka-age-fade {
234 from {
235 opacity: 0;
236 transform: translateY(10px);
237 }
238 to {
239 opacity: 1;
240 transform: translateY(0);
241 }
242 }
243
244 @keyframes ka-age-slide-up {
245 from {
246 opacity: 0;
247 transform: translateY(30px);
248 }
249 to {
250 opacity: 1;
251 transform: translateY(0);
252 }
253 }
254
255 @keyframes ka-age-slide-down {
256 from {
257 opacity: 0;
258 transform: translateY(-30px);
259 }
260 to {
261 opacity: 1;
262 transform: translateY(0);
263 }
264 }
265
266 @keyframes ka-age-zoom {
267 from {
268 opacity: 0;
269 transform: scale(0.9);
270 }
271 to {
272 opacity: 1;
273 transform: scale(1);
274 }
275 }
276
277 /* ========== Accessibility ========== */
278 @media (prefers-reduced-motion: reduce) {
279 .king-addons-age-gate__card,
280 .king-addons-age-gate__overlay,
281 .king-addons-age-gate__button {
282 animation: none !important;
283 transition: none !important;
284 }
285 }
286
287 /* ========== Responsive ========== */
288 @media (max-width: 600px) {
289 .king-addons-age-gate__card {
290 padding: 24px 20px;
291 border-radius: 16px;
292 }
293
294 .king-addons-age-gate__title {
295 font-size: calc(var(--ka-age-title-size, 26px) * 0.85);
296 }
297
298 .king-addons-age-gate__buttons {
299 flex-direction: column;
300 }
301
302 .king-addons-age-gate__button {
303 max-width: none;
304 width: 100%;
305 }
306
307 .king-addons-age-gate__field-grid {
308 max-width: none;
309 }
310 }
311
312 /* ========== Portal Container ========== */
313 .king-addons-age-gate__portal {
314 position: fixed;
315 z-index: 999998;
316 pointer-events: none;
317 }
318