PluginProbe
Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder & Template Kits / 3.2.2
Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder & Template Kits v3.2.2
3.2.2 3.2.3 3.2.1 3.2.0 3.1.9 3.1.8 3.1.7 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.9 trunk 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.3 1.1.4 1.1.5 All 174 releases
master-addons / assets / css / admin / template-library.css

template-library.css in Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder & Template Kits 3.2.2, at assets/css/admin/template-library.css

3,778 lines 120.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 @charset "UTF-8";
2 .jltma-page-import-modal {
3 position: fixed;
4 top: 32px;
5 left: 160px;
6 right: 0;
7 bottom: 0;
8 z-index: 1000;
9 display: flex;
10 align-items: center;
11 justify-content: center;
12 }
13 .folded .jltma-page-import-modal {
14 left: 36px;
15 }
16 @media screen and (max-width: 782px) {
17 .jltma-page-import-modal {
18 top: 46px;
19 left: 0;
20 }
21 }
22 .jltma-page-import-modal .modal-overlay {
23 position: absolute;
24 top: 0;
25 left: 0;
26 width: 100%;
27 height: 100%;
28 background: #fbfbfb;
29 backdrop-filter: blur(2px);
30 z-index: 1;
31 }
32 .jltma-page-import-modal .modal-content {
33 position: relative;
34 background: #ffffff;
35 border-radius: 12px;
36 z-index: 2;
37 box-shadow: 0px 16px 32px -10px rgba(10, 13, 20, 0.1), 0px 3px 8px -5px rgba(10, 13, 20, 0.04);
38 text-align: center;
39 animation: modalFadeIn 0.3s ease;
40 overflow: hidden;
41 }
42 .jltma-page-import-modal .modal-close-btn {
43 position: absolute;
44 top: 12px;
45 right: 12px;
46 z-index: 20;
47 width: 32px;
48 height: 32px;
49 border: none;
50 background: rgba(0, 0, 0, 0.05);
51 border-radius: 50%;
52 cursor: pointer;
53 display: flex;
54 align-items: center;
55 justify-content: center;
56 transition: all 0.2s ease;
57 padding: 0;
58 }
59 .jltma-page-import-modal .modal-close-btn .dashicons {
60 font-size: 18px;
61 width: 18px;
62 height: 18px;
63 color: #6d7882;
64 }
65 .jltma-page-import-modal .modal-close-btn:hover {
66 background: rgba(0, 0, 0, 0.1);
67 }
68 .jltma-page-import-modal .modal-close-btn:hover .dashicons {
69 color: #1d2327;
70 }
71 .jltma-page-import-modal .confetti-container {
72 position: absolute;
73 top: 0;
74 left: 0;
75 width: 100%;
76 height: 100%;
77 overflow: hidden;
78 pointer-events: none;
79 z-index: 10;
80 }
81 .jltma-page-import-modal .confetti-piece {
82 position: absolute;
83 width: 6px;
84 height: 6px;
85 border-radius: 1px;
86 top: -10px;
87 opacity: 0;
88 animation: confettiFall 3.5s ease-in infinite;
89 }
90 @keyframes confettiFall {
91 0% {
92 transform: translateY(0) rotate(0deg);
93 opacity: 1;
94 }
95 100% {
96 transform: translateY(100vh) rotate(720deg);
97 opacity: 0;
98 }
99 }
100 .jltma-page-import-modal .import-plugins-container {
101 padding: 30px;
102 }
103 .jltma-page-import-modal .import-plugins-container .plugins-header {
104 text-align: center;
105 margin-bottom: 30px;
106 }
107 .jltma-page-import-modal .import-plugins-container .plugins-header .header-icon {
108 width: 80px;
109 height: 80px;
110 margin: 0 auto 20px;
111 display: flex;
112 align-items: center;
113 justify-content: center;
114 background: linear-gradient(135deg, #6814cd 0%, #f50a7f 100%);
115 border-radius: 50%;
116 }
117 .jltma-page-import-modal .import-plugins-container .plugins-header .header-icon .dashicons {
118 font-size: 40px;
119 width: 40px;
120 height: 40px;
121 color: #fff;
122 }
123 .jltma-page-import-modal .import-plugins-container .plugins-header h2 {
124 font-size: 24px;
125 font-weight: 600;
126 color: #1d2327;
127 margin: 0 0 10px;
128 }
129 .jltma-page-import-modal .import-plugins-container .plugins-header p {
130 font-size: 14px;
131 color: #6d7882;
132 margin: 0;
133 line-height: 1.6;
134 }
135 .jltma-page-import-modal .import-plugins-container .required-plugins-list {
136 margin-bottom: 30px;
137 }
138 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item {
139 display: flex;
140 align-items: center;
141 justify-content: space-between;
142 padding: 15px;
143 margin-bottom: 10px;
144 background: #f8fafc;
145 border: 1px solid #e2e8f0;
146 border-radius: 6px;
147 transition: all 0.2s ease;
148 }
149 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item:hover {
150 background: #f1f5f9;
151 border-color: #cbd5e0;
152 }
153 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item.active {
154 background: #f0fdf4;
155 border-color: #86efac;
156 }
157 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label {
158 display: flex;
159 align-items: center;
160 gap: 12px;
161 cursor: pointer;
162 flex: 1;
163 }
164 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox] {
165 width: 18px;
166 height: 18px;
167 cursor: pointer;
168 accent-color: #6814cd;
169 }
170 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:disabled {
171 cursor: not-allowed;
172 opacity: 0.5;
173 }
174 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info {
175 display: flex;
176 flex-direction: column;
177 gap: 4px;
178 }
179 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info .plugin-name {
180 font-size: 14px;
181 font-weight: 500;
182 color: #1d2327;
183 }
184 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info .plugin-version {
185 font-size: 12px;
186 color: #8c8f94;
187 }
188 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status {
189 display: flex;
190 align-items: center;
191 font-size: 13px;
192 }
193 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-active {
194 display: flex;
195 align-items: center;
196 gap: 4px;
197 color: #22c55e;
198 font-weight: 500;
199 }
200 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-active .dashicons {
201 font-size: 16px;
202 width: 16px;
203 height: 16px;
204 }
205 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-installed {
206 color: #f59e0b;
207 font-weight: 500;
208 }
209 .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-not-installed {
210 color: #8c8f94;
211 font-weight: 500;
212 }
213 .jltma-page-import-modal .import-plugins-container .plugins-actions {
214 display: flex;
215 gap: 12px;
216 justify-content: flex-end;
217 padding-top: 20px;
218 border-top: 1px solid #e2e8f0;
219 }
220 .jltma-page-import-modal .import-plugins-container .plugins-actions .button {
221 padding: 10px 20px;
222 font-size: 14px;
223 font-weight: 500;
224 border-radius: 6px;
225 cursor: pointer;
226 transition: all 0.2s ease;
227 border: none;
228 }
229 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary {
230 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
231 color: #fff;
232 }
233 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary:hover:not(:disabled) {
234 opacity: 0.9;
235 transform: translateY(-1px);
236 }
237 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary:disabled {
238 opacity: 0.6;
239 cursor: not-allowed;
240 }
241 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary {
242 background: #fff;
243 border: 1px solid #dcdcde;
244 color: #6d7882;
245 }
246 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary:hover:not(:disabled) {
247 border-color: #6814cd;
248 color: #6814cd;
249 }
250 .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary:disabled {
251 opacity: 0.6;
252 cursor: not-allowed;
253 }
254 .jltma-page-import-modal .import-step-container {
255 padding: 20px 0;
256 }
257 .jltma-page-import-modal .import-step-container .step-icon {
258 width: 80px;
259 height: 80px;
260 margin: 0 auto 30px;
261 display: flex;
262 align-items: center;
263 justify-content: center;
264 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
265 border-radius: 50%;
266 }
267 .jltma-page-import-modal .import-step-container .step-icon .dashicons {
268 font-size: 40px;
269 width: 40px;
270 height: 40px;
271 color: #fff;
272 }
273 .jltma-page-import-modal .import-step-container .step-icon .dashicons.spinning {
274 animation: spin 1.5s linear infinite;
275 }
276 .jltma-page-import-modal .import-step-container h2 {
277 font-size: 24px;
278 font-weight: 600;
279 color: #1d2327;
280 margin: 0 0 15px;
281 }
282 .jltma-page-import-modal .import-step-container p {
283 font-size: 15px;
284 color: #6d7882;
285 line-height: 1.6;
286 margin: 0 0 30px;
287 }
288 .jltma-page-import-modal .import-step-container .progress-bar {
289 width: 100%;
290 height: 6px;
291 background: #e0e0e0;
292 border-radius: 3px;
293 overflow: hidden;
294 margin-bottom: 15px;
295 }
296 .jltma-page-import-modal .import-step-container .progress-bar .progress-fill {
297 height: 100%;
298 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
299 transition: width 0.5s ease;
300 }
301 .jltma-page-import-modal .import-step-container .step-indicator {
302 font-size: 13px;
303 color: #8c8f94;
304 font-weight: 500;
305 }
306 .jltma-page-import-modal .import-progress-container {
307 padding: 36px 40px 30px;
308 text-align: center;
309 position: relative;
310 overflow: hidden;
311 }
312 .jltma-page-import-modal .import-progress-container::before {
313 content: "";
314 position: absolute;
315 top: 0;
316 left: 0;
317 right: 0;
318 height: 3px;
319 background: linear-gradient(90deg, #6814cd, #f50a7f, #6814cd);
320 background-size: 200% 100%;
321 animation: jltmaShimmerBar 2.5s ease infinite;
322 }
323 .jltma-page-import-modal .import-progress-container h2 {
324 font-size: 20px;
325 font-weight: 600;
326 color: #1d2327;
327 margin: 0 0 6px 0;
328 letter-spacing: -0.2px;
329 }
330 .jltma-page-import-modal .import-progress-container .import-progress-description {
331 font-size: 13px;
332 color: #9ca3af;
333 margin: 0 0 24px 0;
334 line-height: 1.5;
335 }
336 .jltma-page-import-modal .import-progress-container .vertical-progress-steps {
337 display: flex;
338 flex-direction: column;
339 gap: 8px;
340 margin-bottom: 24px;
341 text-align: left;
342 }
343 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step {
344 display: flex;
345 align-items: center;
346 gap: 14px;
347 padding: 14px 18px;
348 border-radius: 10px;
349 transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
350 animation: jltmaStepReveal 0.4s ease both;
351 }
352 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(1) {
353 animation-delay: 0s;
354 }
355 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(2) {
356 animation-delay: 0.06s;
357 }
358 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(3) {
359 animation-delay: 0.12s;
360 }
361 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(4) {
362 animation-delay: 0.18s;
363 }
364 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(5) {
365 animation-delay: 0.24s;
366 }
367 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(6) {
368 animation-delay: 0.3s;
369 }
370 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon {
371 width: 36px;
372 height: 36px;
373 min-width: 36px;
374 border-radius: 50%;
375 display: flex;
376 align-items: center;
377 justify-content: center;
378 flex-shrink: 0;
379 transition: background 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), border 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
380 position: relative;
381 }
382 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon .dashicons {
383 font-size: 16px;
384 width: 16px;
385 height: 16px;
386 line-height: 1;
387 }
388 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon .step-number {
389 font-size: 13px;
390 font-weight: 600;
391 color: inherit;
392 }
393 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content {
394 flex: 1;
395 min-width: 0;
396 display: flex;
397 flex-direction: column;
398 gap: 1px;
399 }
400 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content .step-title {
401 font-size: 14px;
402 font-weight: 500;
403 color: #1d2327;
404 margin: 0;
405 line-height: 1.3;
406 transition: all 0.3s ease;
407 }
408 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content .step-status {
409 font-size: 12px;
410 color: #9ca3af;
411 margin: 0;
412 line-height: 1.3;
413 font-weight: 500;
414 }
415 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending {
416 opacity: 0.45;
417 }
418 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending .step-indicator-icon {
419 background: #f0f0f3;
420 border: 1.5px dashed #d1d5db;
421 color: #c4c7cc;
422 }
423 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending .step-title {
424 color: #9ca3af;
425 }
426 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current {
427 background: linear-gradient(135deg, rgba(245, 10, 127, 0.05), rgba(104, 20, 205, 0.04));
428 border: none;
429 }
430 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-indicator-icon {
431 background: linear-gradient(135deg, #6814cd, #9d4edd);
432 color: #fff;
433 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.1);
434 animation: none;
435 }
436 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-indicator-icon::after {
437 content: "";
438 position: absolute;
439 top: 18px;
440 left: 18px;
441 right: 8px;
442 bottom: 8px;
443 border: 2.5px solid rgba(255, 255, 255, 0.25);
444 border-top-color: #fff;
445 border-radius: 50%;
446 box-sizing: border-box;
447 animation: spin 0.7s linear infinite;
448 }
449 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-title {
450 color: #1d2327;
451 font-weight: 600;
452 }
453 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-status {
454 color: #f50a7f;
455 font-weight: 500;
456 }
457 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed {
458 background: rgba(104, 20, 205, 0.035);
459 }
460 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-indicator-icon {
461 background: linear-gradient(135deg, #6814cd, #9d4edd);
462 color: #fff;
463 box-shadow: 0 2px 8px rgba(104, 20, 205, 0.2);
464 }
465 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-indicator-icon .checkmark {
466 font-size: 15px;
467 animation: jltmaCheckPop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
468 }
469 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-title {
470 color: #6b7280;
471 }
472 .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-status.completed {
473 color: #6814cd;
474 font-weight: 500;
475 }
476 .jltma-page-import-modal .import-progress-container .import-warning {
477 display: flex;
478 align-items: center;
479 justify-content: center;
480 gap: 8px;
481 padding: 10px 16px;
482 border-radius: 8px;
483 background: linear-gradient(135deg, rgba(104, 20, 205, 0.03), rgba(245, 10, 127, 0.02));
484 border: 1px solid rgba(104, 20, 205, 0.06);
485 color: #9ca3af;
486 font-size: 12px;
487 font-weight: 400;
488 }
489 .jltma-page-import-modal .import-progress-container .import-warning .dashicons {
490 font-size: 14px;
491 width: 14px;
492 height: 14px;
493 color: #b0b4bc;
494 }
495 @keyframes jltmaShimmerBar {
496 0% {
497 background-position: 100% 0;
498 }
499 100% {
500 background-position: -100% 0;
501 }
502 }
503 @keyframes jltmaStepReveal {
504 from {
505 opacity: 0;
506 transform: translateY(6px);
507 }
508 to {
509 opacity: 1;
510 transform: translateY(0);
511 }
512 }
513 @keyframes jltmaCheckPop {
514 0% {
515 opacity: 0;
516 transform: scale(0) rotate(-45deg);
517 }
518 60% {
519 transform: scale(1.2) rotate(0deg);
520 }
521 100% {
522 opacity: 1;
523 transform: scale(1) rotate(0deg);
524 }
525 }
526 .jltma-page-import-modal .import-success-container {
527 text-align: center;
528 padding: 36px 32px 32px;
529 position: relative;
530 }
531 .jltma-page-import-modal .import-success-container h2 {
532 font-size: 22px;
533 font-weight: 700;
534 color: #1d2327;
535 margin: 0 0 8px;
536 letter-spacing: -0.3px;
537 }
538 .jltma-page-import-modal .import-success-container p {
539 font-size: 14px;
540 color: #9ca3af;
541 margin: 0 0 24px;
542 line-height: 1.5;
543 }
544 .jltma-page-import-modal .import-success-container .success-illustration {
545 position: relative;
546 margin-bottom: 28px;
547 }
548 .jltma-page-import-modal .import-success-container .success-illustration svg {
549 width: 100%;
550 max-width: 140px;
551 height: auto;
552 display: block;
553 margin: 0 auto;
554 }
555 .jltma-page-import-modal .import-success-container .success-actions {
556 display: flex;
557 flex-direction: column;
558 gap: 10px;
559 align-items: center;
560 width: 100%;
561 }
562 .jltma-page-import-modal .import-success-container .success-actions .success-actions-wrap {
563 display: flex;
564 gap: 10px;
565 width: 100%;
566 }
567 .jltma-page-import-modal .import-success-container .success-actions .button {
568 padding: 0 20px;
569 height: 42px;
570 font-size: 13px;
571 font-weight: 600;
572 cursor: pointer;
573 transition: all 0.2s ease;
574 border: none;
575 outline: none;
576 text-decoration: none;
577 border-radius: 8px;
578 display: inline-flex;
579 align-items: center;
580 justify-content: center;
581 line-height: 1;
582 white-space: nowrap;
583 letter-spacing: 0.3px;
584 text-transform: uppercase;
585 box-sizing: border-box;
586 flex: 1;
587 }
588 .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor {
589 background: #2d2d3d;
590 color: #fff;
591 gap: 8px;
592 }
593 .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor .elementor-icon-wrapper {
594 display: inline-flex;
595 align-items: center;
596 justify-content: center;
597 flex-shrink: 0;
598 }
599 .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor .elementor-icon-wrapper svg {
600 width: 16px;
601 height: 16px;
602 flex-shrink: 0;
603 }
604 .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor:hover, .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor:focus {
605 background: #1a1a2e;
606 transform: translateY(-1px);
607 box-shadow: 0 4px 12px rgba(45, 45, 61, 0.3);
608 border: none;
609 }
610 .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor:active {
611 transform: translateY(0);
612 }
613 .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page {
614 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
615 color: #fff;
616 }
617 .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page:hover, .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page:focus {
618 opacity: 0.9;
619 transform: translateY(-1px);
620 box-shadow: 0 4px 12px rgba(104, 20, 205, 0.3);
621 border: none;
622 }
623 .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page:active {
624 transform: translateY(0);
625 }
626 .jltma-page-import-modal .import-success-container .success-actions .button.button-link {
627 background: transparent;
628 color: #9ca3af;
629 text-decoration: none;
630 padding: 6px 16px;
631 font-weight: 400;
632 font-size: 12px;
633 text-transform: none;
634 letter-spacing: 0;
635 height: auto;
636 flex: none;
637 width: 100%;
638 }
639 .jltma-page-import-modal .import-success-container .success-actions .button.button-link:hover, .jltma-page-import-modal .import-success-container .success-actions .button.button-link:focus {
640 color: #6814cd;
641 background: transparent;
642 }
643 .jltma-page-import-modal .import-error-container {
644 padding: 20px 0;
645 }
646 .jltma-page-import-modal .import-error-container .error-icon {
647 width: 100px;
648 height: 100px;
649 margin: 0 auto 30px;
650 display: flex;
651 align-items: center;
652 justify-content: center;
653 background: linear-gradient(135deg, #f44336 0%, #e91e63 100%);
654 border-radius: 50%;
655 }
656 .jltma-page-import-modal .import-error-container .error-icon .dashicons {
657 font-size: 50px;
658 width: 50px;
659 height: 50px;
660 color: #fff;
661 }
662 .jltma-page-import-modal .import-error-container h2 {
663 font-size: 24px;
664 font-weight: 600;
665 color: #1d2327;
666 margin: 0 0 15px;
667 }
668 .jltma-page-import-modal .import-error-container p {
669 font-size: 15px;
670 color: #6d7882;
671 margin: 0 0 30px;
672 }
673 .jltma-page-import-modal .import-error-container .error-actions {
674 display: flex;
675 gap: 12px;
676 justify-content: center;
677 }
678 .jltma-page-import-modal .import-error-container .error-actions .button {
679 padding: 12px 24px;
680 font-size: 14px;
681 font-weight: 500;
682 border-radius: 8px;
683 cursor: pointer;
684 transition: all 0.3s ease;
685 display: inline-flex;
686 align-items: center;
687 gap: 8px;
688 border: none;
689 outline: none;
690 background: linear-gradient(135deg, #6814cd 0%, #f50a7f 100%);
691 color: #fff;
692 box-shadow: 0 4px 15px rgba(104, 20, 205, 0.3);
693 }
694 .jltma-page-import-modal .import-error-container .error-actions .button .dashicons {
695 font-size: 18px;
696 width: 18px;
697 height: 18px;
698 }
699 .jltma-page-import-modal .import-error-container .error-actions .button:hover {
700 transform: translateY(-2px);
701 box-shadow: 0 6px 20px rgba(104, 20, 205, 0.4);
702 }
703 .jltma-page-import-modal .import-error-container .error-actions .button:active {
704 transform: translateY(0);
705 }
706 .jltma-page-import-modal .import-error-container .error-actions .button.button-primary {
707 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
708 }
709 @keyframes modalFadeIn {
710 from {
711 opacity: 0;
712 transform: scale(0.95) translateY(-10px);
713 }
714 to {
715 opacity: 1;
716 transform: scale(1) translateY(0);
717 }
718 }
719 @keyframes successPulse {
720 0%, 100% {
721 transform: scale(1);
722 }
723 50% {
724 transform: scale(1.1);
725 }
726 }
727 @keyframes spin {
728 from {
729 transform: rotate(0deg);
730 }
731 to {
732 transform: rotate(360deg);
733 }
734 }
735
736 .toplevel_page_master-addons-settings .wrap,
737 .master-addons_page_jltma-template-library .wrap {
738 margin: 0;
739 }
740
741 .jltma-templates:has(.page-importer-mode) {
742 min-height: auto !important;
743 background: transparent !important;
744 padding-right: 0 !important;
745 }
746 .jltma-templates .loading-placeholder {
747 display: flex;
748 flex-direction: column;
749 align-items: center;
750 justify-content: center;
751 width: 100%;
752 height: 60vh;
753 }
754 .jltma-templates .loading-placeholder .loading-spinner {
755 width: 40px;
756 height: 40px;
757 border: 4px solid #e0e0e0;
758 border-top: 4px solid #6a4bff;
759 border-radius: 50%;
760 animation: jltma-spin-in-place 1s linear infinite;
761 margin-bottom: 20px;
762 }
763 .jltma-templates .loading-placeholder p {
764 color: #666;
765 font-size: 16px;
766 }
767 .jltma-templates .template-library-tabs-wrapper.page-importer-mode {
768 position: fixed;
769 top: 0;
770 left: 0;
771 right: 0;
772 z-index: 999;
773 }
774 .jltma-templates .page-importer-layout {
775 display: flex;
776 gap: 0;
777 min-height: calc(100vh - 60px);
778 }
779 .jltma-templates .page-importer-layout .templates-grid-container {
780 padding: 26px;
781 height: calc(100vh - 110px);
782 }
783 .jltma-templates .page-importer-layout .page-importer-sidebar {
784 width: 300px;
785 flex-shrink: 0;
786 background: #fff;
787 border-right: 1px solid #e8e8e8;
788 padding: 0;
789 overflow-y: auto;
790 height: calc(100vh - 60px);
791 position: fixed;
792 top: 60px;
793 left: 0;
794 z-index: 9;
795 box-shadow: 2px 0 8px rgba(0, 0, 0, 0.03);
796 }
797 .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn {
798 display: flex;
799 align-items: center;
800 gap: 10px;
801 padding: 18px 24px;
802 background: #fff;
803 border-bottom: 1px solid #f0f0f0;
804 color: #1d2327;
805 font-size: 15px;
806 font-weight: 600;
807 cursor: pointer;
808 transition: all 0.3s ease;
809 margin: 0;
810 }
811 .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn .dashicons {
812 font-size: 18px;
813 width: 18px;
814 height: 18px;
815 color: #6814cd;
816 transition: transform 0.3s ease;
817 }
818 .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:hover {
819 background: linear-gradient(135deg, rgba(245, 10, 127, 0.05) 0%, rgba(104, 20, 205, 0.05) 100%);
820 color: #6814cd;
821 }
822 .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:hover .dashicons {
823 transform: translateX(-3px);
824 }
825 .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:active {
826 background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%);
827 }
828 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs {
829 display: flex;
830 align-items: center;
831 gap: 3px;
832 margin-bottom: 16px;
833 font-size: 13px;
834 line-height: 1.5;
835 }
836 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-item {
837 color: #6814cd;
838 font-weight: 500;
839 }
840 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-item.breadcrumb-current {
841 color: #1d2327;
842 font-weight: 600;
843 }
844 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-separator {
845 color: #8892a0;
846 font-size: 12px;
847 display: inline-flex;
848 align-items: center;
849 }
850 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-description {
851 font-size: 14px;
852 line-height: 1.6;
853 color: #5c5f62;
854 margin: 0 0 20px 0;
855 }
856 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper {
857 margin-bottom: 20px;
858 }
859 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .template-selector-label {
860 display: block;
861 font-size: 12px;
862 font-weight: 600;
863 color: #8c8f94;
864 text-transform: uppercase;
865 letter-spacing: 0.8px;
866 margin: 0 0 12px 0;
867 }
868 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector {
869 width: 100%;
870 padding: 8px 16px;
871 padding-right: 40px;
872 border: 2px solid #e0e0e0;
873 border-radius: 8px;
874 font-size: 15px;
875 font-weight: 500;
876 color: #1d2327;
877 background: #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%236814cd" d="M6 9L1 4h10z"/></svg>') no-repeat right 16px center;
878 background-size: 12px;
879 appearance: none;
880 cursor: pointer;
881 transition: all 0.3s ease;
882 outline: none;
883 }
884 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector:hover {
885 border-color: #c3c4c7;
886 }
887 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector:focus {
888 border-color: #6814cd;
889 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
890 }
891 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper {
892 margin-bottom: 20px;
893 }
894 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-label {
895 display: block;
896 font-size: 12px;
897 font-weight: 600;
898 color: #8c8f94;
899 text-transform: uppercase;
900 letter-spacing: 0.8px;
901 margin: 0 0 12px 0;
902 }
903 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input,
904 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text] {
905 width: 100%;
906 padding: 8px 16px;
907 border: 2px solid #e0e0e0;
908 border-radius: 8px;
909 font-size: 15px;
910 font-weight: 500;
911 color: #1d2327;
912 background: #fff;
913 transition: all 0.3s ease;
914 outline: none;
915 }
916 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input::placeholder,
917 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]::placeholder {
918 color: #a7aaad;
919 font-weight: 400;
920 }
921 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input:hover,
922 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]:hover {
923 border-color: #c3c4c7;
924 }
925 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input:focus,
926 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]:focus {
927 border-color: #6814cd;
928 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
929 background: #fff;
930 }
931 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins {
932 padding: 10px 15px;
933 color: #000;
934 margin-bottom: 20px;
935 background: rgba(255, 255, 0, 0.2705882353);
936 }
937 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins .section-title {
938 font-size: 14px;
939 }
940 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins ul {
941 border-radius: 8px;
942 }
943 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins ul li label {
944 font-size: 12px;
945 }
946 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button {
947 width: 100%;
948 padding: 14px 20px;
949 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
950 color: #fff;
951 border: none;
952 border-radius: 8px;
953 font-size: 15px;
954 font-weight: 600;
955 cursor: pointer;
956 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
957 box-shadow: 0 4px 12px rgba(104, 20, 205, 0.25);
958 display: flex;
959 align-items: center;
960 justify-content: center;
961 gap: 8px;
962 }
963 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button .dashicons {
964 font-size: 18px;
965 width: 18px;
966 height: 18px;
967 }
968 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:hover {
969 background: linear-gradient(135deg, #f50a7f 0%, #5610b3 100%);
970 transform: translateY(-2px);
971 box-shadow: 0 6px 20px rgba(104, 20, 205, 0.35);
972 }
973 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:active {
974 transform: translateY(0);
975 box-shadow: 0 2px 8px rgba(104, 20, 205, 0.3);
976 }
977 .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:disabled {
978 background: #e0e0e0;
979 color: #a7aaad;
980 cursor: not-allowed;
981 transform: none;
982 box-shadow: none;
983 }
984 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar {
985 padding: 24px;
986 }
987 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section {
988 margin-bottom: 32px;
989 }
990 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section:last-child {
991 margin-bottom: 0;
992 }
993 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .filter-title {
994 margin: 0 0 16px 0;
995 font-size: 12px;
996 font-weight: 700;
997 color: #1d2327;
998 text-transform: uppercase;
999 letter-spacing: 0.8px;
1000 }
1001 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters {
1002 display: flex;
1003 flex-wrap: wrap;
1004 gap: 10px;
1005 }
1006 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn {
1007 display: inline-flex;
1008 align-items: center;
1009 justify-content: center;
1010 padding: 11px 20px;
1011 border: none;
1012 border-radius: 24px;
1013 background: #f5f5f5;
1014 color: #5c5f62;
1015 font-size: 14px;
1016 font-weight: 500;
1017 cursor: pointer;
1018 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1019 text-transform: capitalize;
1020 white-space: nowrap;
1021 }
1022 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn:hover {
1023 background: linear-gradient(135deg, rgba(245, 10, 127, 0.08) 0%, rgba(104, 20, 205, 0.08) 100%);
1024 color: #6814cd;
1025 transform: translateY(-1px);
1026 }
1027 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.active {
1028 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
1029 color: #fff;
1030 font-weight: 600;
1031 box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25);
1032 }
1033 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.free.active {
1034 background: linear-gradient(135deg, #10b981 0%, #059669 100%);
1035 box-shadow: 0 2px 8px rgba(16, 185, 129, 0.25);
1036 }
1037 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.pro.active {
1038 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
1039 box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25);
1040 }
1041 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills {
1042 display: flex;
1043 flex-wrap: wrap;
1044 gap: 10px;
1045 }
1046 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn {
1047 display: inline-flex;
1048 align-items: center;
1049 justify-content: center;
1050 padding: 11px 20px;
1051 border: none;
1052 border-radius: 24px;
1053 background: #f5f5f5;
1054 color: #5c5f62;
1055 font-size: 14px;
1056 font-weight: 500;
1057 cursor: pointer;
1058 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1059 text-align: center;
1060 white-space: nowrap;
1061 }
1062 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn:hover {
1063 background: linear-gradient(135deg, rgba(245, 10, 127, 0.08) 0%, rgba(104, 20, 205, 0.08) 100%);
1064 color: #6814cd;
1065 transform: translateY(-1px);
1066 }
1067 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn.active {
1068 background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%);
1069 color: #fff;
1070 font-weight: 600;
1071 box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25);
1072 }
1073 .jltma-templates .page-importer-layout .page-importer-content {
1074 flex: 1;
1075 overflow-y: auto;
1076 background: #f1f3f4;
1077 margin-left: 300px;
1078 }
1079 .jltma-templates .template-library-categories {
1080 width: 280px;
1081 }
1082 .jltma-templates .template-library-categories .template-library-select-category {
1083 width: 100%;
1084 padding: 10px 15px;
1085 border-radius: 3px;
1086 background-color: #fff;
1087 display: flex;
1088 justify-content: space-between;
1089 align-items: center;
1090 font-weight: normal;
1091 font-family: "Roboto", Arial, Helvetica, Verdana, sans-serif;
1092 color: #1d2327;
1093 cursor: pointer;
1094 border: 1px solid #e0e0e0;
1095 }
1096 .jltma-templates .template-library-categories .template-library-select-category i {
1097 font-size: 16px;
1098 width: 16px;
1099 height: 16px;
1100 }
1101 .jltma-templates .template-library-categories .categories-list {
1102 position: absolute;
1103 top: auto;
1104 bottom: auto;
1105 width: 700px;
1106 background: #fff;
1107 padding: 10px;
1108 border-radius: 3px;
1109 visibility: hidden;
1110 opacity: 0;
1111 transition: all 0.3s ease-in;
1112 border: 1px solid #e0e0e0;
1113 box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 5px 0px !important;
1114 margin: 0;
1115 z-index: 999;
1116 display: none;
1117 }
1118 .jltma-templates .template-library-categories .categories-list ul {
1119 display: flex;
1120 flex-wrap: wrap;
1121 gap: 6px;
1122 }
1123 .jltma-templates .template-library-categories .categories-list ul li {
1124 width: 24%;
1125 }
1126 .jltma-templates .template-library-categories .categories-list ul li button,
1127 .jltma-templates .template-library-categories .categories-list ul li a {
1128 display: flex;
1129 align-items: center;
1130 justify-content: space-between;
1131 padding: 8px 12px;
1132 cursor: pointer;
1133 width: 100%;
1134 color: #6d7882 !important;
1135 background: #fff !important;
1136 font-size: 13px;
1137 line-height: 1;
1138 border-radius: 3px;
1139 border: 0;
1140 }
1141 .jltma-templates .template-library-categories .categories-list ul li button:hover, .jltma-templates .template-library-categories .categories-list ul li button.active,
1142 .jltma-templates .template-library-categories .categories-list ul li a:hover,
1143 .jltma-templates .template-library-categories .categories-list ul li a.active {
1144 background: #f9f9f9 !important;
1145 color: #222 !important;
1146 }
1147 .jltma-templates .template-library-categories .categories-list.active {
1148 visibility: visible;
1149 opacity: 1;
1150 display: block;
1151 }
1152 .jltma-templates .template-library-categories:has(.categories-list.active) .template-library-select-category {
1153 border-bottom-color: transparent;
1154 border-radius: 3px 3px 0 0;
1155 }
1156 .jltma-templates .template-library-categories:has(.categories-list.active) .categories-list.active {
1157 border-radius: 0 3px 3px 3px;
1158 }
1159 .jltma-templates .template-library-content {
1160 flex: 1;
1161 display: flex;
1162 flex-direction: column;
1163 background: #fff;
1164 }
1165 .jltma-templates .template-library-content .template-tabs {
1166 display: flex;
1167 border-bottom: none;
1168 margin-bottom: 0;
1169 justify-content: center;
1170 gap: 0;
1171 }
1172 .jltma-templates .template-library-content .template-tabs .template-tab {
1173 position: relative;
1174 display: flex;
1175 align-items: center;
1176 gap: 6px;
1177 padding: 18px 20px;
1178 background: transparent;
1179 border: none;
1180 border-bottom: 3px solid transparent;
1181 color: #6d7882;
1182 font-size: 13px;
1183 font-weight: 600;
1184 cursor: pointer;
1185 transition: all 0.2s ease;
1186 line-height: 1;
1187 }
1188 .jltma-templates .template-library-content .template-tabs .template-tab span {
1189 width: max-content;
1190 height: max-content;
1191 }
1192 .jltma-templates .template-library-content .template-tabs .template-tab.active {
1193 color: #3858e9;
1194 border-bottom-color: #3858e9;
1195 }
1196 .jltma-templates .template-library-content .template-tabs .template-tab:hover:not(.active) {
1197 color: #3858e9;
1198 }
1199 .jltma-templates .template-library-content .template-tabs .template-tab .dashicons {
1200 font-size: 16px;
1201 width: 16px;
1202 height: 16px;
1203 }
1204 .jltma-templates .template-library-content .template-tabs .template-tab .tab-count {
1205 font-size: 11px;
1206 font-weight: 600;
1207 padding: 2px 7px;
1208 border-radius: 10px;
1209 min-width: 20px;
1210 height: 18px;
1211 text-align: center;
1212 line-height: 17px;
1213 }
1214 .jltma-templates .template-library-content .content-header {
1215 padding: 0;
1216 margin-top: 0;
1217 border-radius: 0;
1218 }
1219 .jltma-templates .template-library-content .content-header .refresh-btn {
1220 background: #ffffff;
1221 font-weight: 500;
1222 cursor: pointer;
1223 transition: all 0.2s ease;
1224 padding: 0;
1225 border-radius: 8px;
1226 display: inline-flex;
1227 align-items: center;
1228 justify-content: center;
1229 width: 36px;
1230 height: 36px;
1231 border: 1px solid #e2e8f0;
1232 color: #64748b;
1233 }
1234 .jltma-templates .template-library-content .content-header .refresh-btn .dashicons {
1235 font-size: 18px;
1236 width: 18px;
1237 height: 18px;
1238 display: flex;
1239 align-items: center;
1240 justify-content: center;
1241 line-height: 1;
1242 }
1243 .jltma-templates .template-library-content .content-header .refresh-btn:hover {
1244 border-color: #6814cd;
1245 background: rgba(104, 20, 205, 0.04);
1246 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1247 }
1248 .jltma-templates .template-library-content .content-header .refresh-btn:hover span {
1249 color: #6814cd;
1250 }
1251 .jltma-templates .template-library-content .content-header .refresh-btn:disabled {
1252 opacity: 0.6;
1253 cursor: not-allowed;
1254 }
1255 .jltma-templates .template-library-content .content-header .refresh-btn:active {
1256 transform: scale(0.96);
1257 }
1258 .jltma-templates .template-library-content .content-header .refresh-btn .dashicons {
1259 font-size: 18px;
1260 width: 18px;
1261 height: 18px;
1262 color: #64748b;
1263 }
1264 .jltma-templates .template-library-content .content-header .refresh-btn .dashicons.spinning {
1265 animation: jltma-spin-in-place 1s linear infinite;
1266 }
1267 .jltma-templates .template-library-content .content-header .template-library-header .search-container {
1268 position: relative;
1269 width: 400px;
1270 }
1271 .jltma-templates .template-library-content .content-header .template-library-header .search-container input {
1272 width: 100%;
1273 padding: 10px 15px;
1274 border: 1px solid #ddd;
1275 border-radius: 6px;
1276 font-size: 14px;
1277 min-height: auto !important;
1278 line-height: 0 !important;
1279 transition: border-color 0.2s ease;
1280 }
1281 .jltma-templates .template-library-content .content-header .template-library-header .search-container input:focus {
1282 outline: none;
1283 border-color: #6a4bff;
1284 box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1);
1285 }
1286 .jltma-templates .template-library-content .content-header .template-library-header .search-container .search-icon {
1287 position: absolute;
1288 right: 15px;
1289 top: 50%;
1290 transform: translateY(-50%);
1291 color: #999;
1292 font-size: 16px;
1293 width: max-content;
1294 height: max-content;
1295 }
1296 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper {
1297 display: flex;
1298 justify-content: space-between;
1299 align-items: center;
1300 }
1301 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo {
1302 display: flex;
1303 align-items: center;
1304 gap: 8px;
1305 color: #6d7882;
1306 }
1307 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo img {
1308 width: 36px;
1309 height: 36px;
1310 }
1311 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo::after {
1312 content: "Templates Library";
1313 font-size: 24px;
1314 font-weight: 500;
1315 color: #1d2327;
1316 letter-spacing: 0;
1317 line-height: 1;
1318 }
1319 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo.is-widgets::after {
1320 content: "Widgets Library";
1321 }
1322 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode {
1323 margin-bottom: 0;
1324 padding: 0;
1325 height: 60px;
1326 border-block-end: 1px solid #e6e8ea;
1327 background: #fff;
1328 position: relative;
1329 }
1330 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode .template-preview-toolbar-center {
1331 position: absolute;
1332 left: calc(50% + 150px);
1333 transform: translateX(-50%);
1334 display: flex;
1335 justify-content: center;
1336 align-items: center;
1337 z-index: 10;
1338 }
1339 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.kits-mode .template-library-header-logo::after {
1340 display: none;
1341 }
1342 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn {
1343 display: flex;
1344 align-items: center;
1345 gap: 10px;
1346 padding: 12px 20px;
1347 background: transparent;
1348 color: #1d2327;
1349 font-size: 15px;
1350 font-weight: 600;
1351 cursor: pointer;
1352 transition: all 0.3s ease;
1353 border-radius: 6px;
1354 margin: 0;
1355 margin-left: 40px;
1356 border: none;
1357 }
1358 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn .dashicons {
1359 font-size: 18px;
1360 width: 18px;
1361 height: 18px;
1362 color: #6814cd;
1363 transition: transform 0.3s ease;
1364 }
1365 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover {
1366 background: #f2f3f4;
1367 color: #6814cd;
1368 }
1369 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover .dashicons {
1370 transform: translateX(-3px);
1371 }
1372 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:active {
1373 background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%);
1374 }
1375 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-tabs {
1376 display: flex;
1377 gap: 0;
1378 border-bottom: 1px solid #e0e0e0;
1379 }
1380 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible {
1381 position: relative;
1382 display: flex;
1383 align-items: center;
1384 margin-left: auto;
1385 background: transparent;
1386 border-radius: 24px;
1387 overflow: visible;
1388 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1389 }
1390 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input {
1391 width: 0;
1392 opacity: 0;
1393 padding: 0;
1394 border: none;
1395 background: transparent;
1396 font-size: 14px;
1397 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1398 margin-right: 0;
1399 pointer-events: none;
1400 color: #1d2327;
1401 }
1402 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input:focus {
1403 outline: none;
1404 }
1405 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input::placeholder {
1406 color: #8c8f94;
1407 }
1408 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn {
1409 display: inline-flex;
1410 align-items: center;
1411 justify-content: center;
1412 width: 24px;
1413 height: 24px;
1414 padding: 0;
1415 background: transparent;
1416 border: none;
1417 border-radius: 50%;
1418 cursor: pointer;
1419 transition: all 0.2s ease;
1420 flex-shrink: 0;
1421 margin-left: 4px;
1422 }
1423 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn .dashicons {
1424 font-size: 16px;
1425 width: 16px;
1426 height: 16px;
1427 color: #8c8f94;
1428 }
1429 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover {
1430 background: rgba(0, 0, 0, 0.05);
1431 }
1432 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover .dashicons {
1433 color: #d63638;
1434 }
1435 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn {
1436 display: inline-flex;
1437 align-items: center;
1438 justify-content: center;
1439 width: 36px;
1440 height: 36px;
1441 padding: 0;
1442 background: #ffffff;
1443 border: 1px solid #e2e8f0;
1444 border-radius: 8px;
1445 cursor: pointer;
1446 transition: all 0.2s ease;
1447 flex-shrink: 0;
1448 z-index: 2;
1449 }
1450 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons {
1451 font-size: 18px;
1452 width: 18px;
1453 height: 18px;
1454 color: #64748b;
1455 transition: color 0.2s ease;
1456 }
1457 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover {
1458 border-color: #6814cd;
1459 background: rgba(104, 20, 205, 0.04);
1460 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1461 }
1462 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover .dashicons {
1463 color: #6814cd;
1464 }
1465 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:active {
1466 transform: scale(0.96);
1467 }
1468 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.has-value:not(.expanded) .search-toggle-btn {
1469 border-color: #6814cd;
1470 background: rgba(104, 20, 205, 0.04);
1471 }
1472 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.has-value:not(.expanded) .search-toggle-btn .dashicons {
1473 color: #6814cd;
1474 }
1475 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded {
1476 background: #f8f9fa;
1477 border: 1px solid #e0e0e0;
1478 padding-left: 18px;
1479 padding-right: 4px;
1480 border-radius: 24px;
1481 }
1482 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input {
1483 width: 280px;
1484 opacity: 1;
1485 padding: 8px 12px 8px 0;
1486 pointer-events: auto;
1487 box-shadow: none !important;
1488 }
1489 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn {
1490 border-color: #6814cd;
1491 background: rgba(104, 20, 205, 0.08);
1492 border-radius: 50%;
1493 margin-left: 8px;
1494 }
1495 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn .dashicons {
1496 color: #6814cd;
1497 }
1498 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn:hover {
1499 background: rgba(104, 20, 205, 0.12);
1500 }
1501 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded:focus-within {
1502 border-color: #6814cd;
1503 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1504 }
1505 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn {
1506 display: inline-flex;
1507 align-items: center;
1508 justify-content: center;
1509 width: 36px;
1510 height: 36px;
1511 border: 1px solid #e2e8f0;
1512 border-radius: 8px;
1513 background: #ffffff;
1514 color: #64748b;
1515 cursor: pointer;
1516 transition: all 0.2s ease;
1517 }
1518 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn svg {
1519 width: 18px;
1520 height: 18px;
1521 }
1522 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:hover {
1523 border-color: #6814cd;
1524 color: #6814cd;
1525 background: rgba(104, 20, 205, 0.04);
1526 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1527 }
1528 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:active {
1529 transform: scale(0.96);
1530 }
1531 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .refresh-btn {
1532 margin-left: 10px;
1533 }
1534 .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper {
1535 display: flex;
1536 justify-content: space-between;
1537 align-items: center;
1538 gap: 15px !important;
1539 margin-top: 20px !important;
1540 border-radius: 6px !important;
1541 }
1542 .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper .template-library-categories-count {
1543 display: flex;
1544 align-items: center;
1545 gap: 16px;
1546 }
1547 .jltma-templates .template-library-content .content-header .template-kit-header {
1548 display: flex;
1549 align-items: center;
1550 justify-content: space-between;
1551 height: 46px;
1552 }
1553 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo {
1554 position: absolute;
1555 left: 50%;
1556 transform: translateX(-50%);
1557 display: flex;
1558 align-items: center;
1559 gap: 8px;
1560 color: #6d7882;
1561 }
1562 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo img {
1563 width: 36px !important;
1564 height: 36px !important;
1565 }
1566 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo::after {
1567 content: "Template Kits";
1568 font-size: 24px;
1569 font-weight: 500;
1570 color: #1d2327;
1571 letter-spacing: 0;
1572 line-height: 1;
1573 }
1574 .jltma-templates .template-library-content .content-header .template-kit-header .back-btn {
1575 display: flex;
1576 align-items: center;
1577 font-size: 14px;
1578 line-height: 1.4rem;
1579 font-weight: 500;
1580 color: #6d7882;
1581 cursor: pointer;
1582 }
1583 .jltma-templates .template-library-content .content-header .template-kit-header .back-btn span {
1584 width: 20px;
1585 height: 20px;
1586 font-size: 20px;
1587 }
1588 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper {
1589 display: flex;
1590 align-items: center;
1591 gap: 10px;
1592 }
1593 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn {
1594 display: inline-flex;
1595 align-items: center;
1596 justify-content: center;
1597 cursor: pointer;
1598 height: 36px;
1599 width: 36px;
1600 color: #64748b;
1601 background: #ffffff;
1602 border: 1px solid #e2e8f0;
1603 border-radius: 8px;
1604 transition: all 0.2s ease;
1605 }
1606 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:hover {
1607 border-color: #6814cd;
1608 color: #6814cd;
1609 background: rgba(104, 20, 205, 0.04);
1610 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1611 }
1612 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:active {
1613 transform: scale(0.96);
1614 }
1615 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon {
1616 width: 18px;
1617 height: 18px;
1618 display: flex;
1619 align-items: center;
1620 justify-content: center;
1621 }
1622 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon svg {
1623 width: 18px;
1624 height: 18px;
1625 }
1626 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn {
1627 display: inline-flex;
1628 align-items: center;
1629 justify-content: center;
1630 width: 36px;
1631 height: 36px;
1632 border: 1px solid #e2e8f0;
1633 border-radius: 8px;
1634 background: #ffffff;
1635 color: #64748b;
1636 cursor: pointer;
1637 transition: all 0.2s ease;
1638 }
1639 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn svg {
1640 width: 18px;
1641 height: 18px;
1642 }
1643 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:hover {
1644 border-color: #6814cd;
1645 color: #6814cd;
1646 background: rgba(104, 20, 205, 0.04);
1647 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1648 }
1649 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:active {
1650 transform: scale(0.96);
1651 }
1652 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .refresh-btn .dashicons {
1653 padding: 0;
1654 width: 18px;
1655 height: 18px;
1656 font-size: 18px;
1657 line-height: 1;
1658 display: flex;
1659 align-items: center;
1660 justify-content: center;
1661 }
1662 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container {
1663 position: relative;
1664 display: flex;
1665 align-items: center;
1666 margin-left: auto;
1667 background: transparent;
1668 border-radius: 24px;
1669 overflow: visible;
1670 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1671 }
1672 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container input {
1673 width: 0;
1674 opacity: 0;
1675 padding: 0;
1676 border: none;
1677 background: transparent;
1678 font-size: 14px;
1679 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1680 margin-right: 0;
1681 pointer-events: none;
1682 color: #1d2327;
1683 outline: none;
1684 }
1685 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn {
1686 justify-content: center;
1687 width: 36px;
1688 height: 36px;
1689 padding: 0;
1690 background: #ffffff;
1691 border: 1px solid #e2e8f0;
1692 border-radius: 8px;
1693 cursor: pointer;
1694 transition: all 0.2s ease;
1695 flex-shrink: 0;
1696 z-index: 2;
1697 }
1698 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn span {
1699 font-size: 18px;
1700 width: 18px;
1701 height: 18px;
1702 color: #64748b;
1703 transition: color 0.2s ease;
1704 }
1705 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover {
1706 border-color: #6814cd;
1707 background: rgba(104, 20, 205, 0.04);
1708 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1709 }
1710 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover span {
1711 color: #6814cd;
1712 }
1713 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:active {
1714 transform: scale(0.96);
1715 }
1716 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded {
1717 background: #f8f9fa;
1718 border: 1px solid #e0e0e0;
1719 padding-left: 18px;
1720 padding-right: 4px;
1721 border-radius: 24px;
1722 }
1723 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded input {
1724 width: 280px;
1725 opacity: 1;
1726 padding: 8px 12px 8px 0;
1727 pointer-events: auto;
1728 box-shadow: none !important;
1729 }
1730 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn {
1731 border-color: #6814cd;
1732 background: rgba(104, 20, 205, 0.08);
1733 border-radius: 50%;
1734 margin-left: 8px;
1735 }
1736 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn span {
1737 color: #6814cd;
1738 }
1739 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn:hover {
1740 background: rgba(104, 20, 205, 0.12);
1741 }
1742 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded:focus-within {
1743 border-color: #6814cd;
1744 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1745 }
1746 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra {
1747 margin-right: 8px;
1748 }
1749 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button {
1750 position: relative;
1751 margin-left: auto;
1752 height: 32px;
1753 padding: 6px 8px;
1754 border-radius: 4px;
1755 cursor: pointer;
1756 border: 1px solid rgb(220, 53, 69);
1757 color: rgb(220, 53, 69);
1758 background-color: #fff;
1759 transition: none;
1760 }
1761 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button span {
1762 font-size: 18px;
1763 width: 18px;
1764 height: 18px;
1765 transition: none;
1766 }
1767 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::before {
1768 content: "";
1769 position: absolute;
1770 top: 32px;
1771 left: 50%;
1772 transform: translateX(-50%) translateY(0);
1773 border: 5px solid transparent;
1774 border-bottom-color: rgb(220, 53, 69);
1775 opacity: 0;
1776 visibility: hidden;
1777 pointer-events: none;
1778 transition: opacity 0.2s ease, transform 0.2s ease;
1779 z-index: 1000;
1780 }
1781 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::after {
1782 content: "Delete this kits";
1783 position: absolute;
1784 top: 42px;
1785 left: 50%;
1786 transform: translateX(-50%) translateY(0);
1787 padding: 6px 12px;
1788 background: rgb(220, 53, 69);
1789 color: #fff;
1790 font-size: 12px;
1791 font-weight: 500;
1792 white-space: nowrap;
1793 border-radius: 4px;
1794 opacity: 0;
1795 visibility: hidden;
1796 pointer-events: none;
1797 transition: opacity 0.2s ease, transform 0.2s ease;
1798 z-index: 1000;
1799 line-height: 1.4;
1800 }
1801 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button {
1802 /* Hover effect */
1803 }
1804 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button:hover {
1805 color: #fff !important;
1806 background-color: rgb(220, 53, 69);
1807 }
1808 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button:hover::before, .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button:hover::after {
1809 opacity: 1;
1810 visibility: visible;
1811 }
1812 .jltma-templates .template-library-content .templates-grid-container {
1813 flex: 1;
1814 position: relative;
1815 }
1816 .jltma-templates .template-library-content .templates-grid-container .required-plugins {
1817 border-radius: 8px;
1818 padding: 15px 20px;
1819 margin-bottom: 30px;
1820 background: #ffecdb;
1821 box-shadow: 0 1px 0 rgba(239, 133, 57, 0.4);
1822 color: #ef8539;
1823 }
1824 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header {
1825 margin-bottom: 0;
1826 display: flex;
1827 justify-content: space-between;
1828 align-items: center;
1829 gap: 32px;
1830 transition: all 0.3s ease-in-out;
1831 }
1832 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left {
1833 margin: 0;
1834 font-size: 16px;
1835 font-weight: 400;
1836 color: #ef8539;
1837 }
1838 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left p {
1839 margin: 0;
1840 color: #757575;
1841 font-size: 14px;
1842 }
1843 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right {
1844 display: flex;
1845 flex-direction: column;
1846 gap: 16px;
1847 }
1848 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button {
1849 color: #ef8539;
1850 }
1851 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement {
1852 padding: 0 12px;
1853 display: flex;
1854 justify-content: center;
1855 align-items: center;
1856 background: #fff;
1857 border: 1px solid #ef8539;
1858 height: 36px;
1859 border-radius: 4px;
1860 transition: none;
1861 }
1862 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement span {
1863 width: 20px;
1864 height: 16px;
1865 font-size: 16px;
1866 margin-right: 4px;
1867 transition: none !important;
1868 }
1869 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement:hover {
1870 background: #ef8539;
1871 color: #fff;
1872 cursor: pointer;
1873 }
1874 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice {
1875 display: flex;
1876 align-items: center;
1877 gap: 10px;
1878 margin-top: 16px;
1879 padding: 12px;
1880 background: #fff3cd;
1881 border: 1px solid #ffc107;
1882 border-radius: 4px;
1883 color: #856404;
1884 font-size: 14px;
1885 }
1886 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice .dashicons {
1887 color: #ffc107;
1888 font-size: 20px;
1889 }
1890 @media (max-width: 768px) {
1891 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugin-item {
1892 flex-direction: column;
1893 align-items: flex-start;
1894 gap: 10px;
1895 }
1896 .jltma-templates .template-library-content .templates-grid-container .required-plugins .plugin-status {
1897 width: 100%;
1898 }
1899 .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.install-plugin,
1900 .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.activate-plugin {
1901 width: 100%;
1902 }
1903 }
1904 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugins-list {
1905 display: flex;
1906 flex-direction: column;
1907 gap: 12px;
1908 overflow: hidden;
1909 margin-bottom: 30px;
1910 transition: height 0.4s ease-in-out;
1911 }
1912 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item {
1913 display: flex;
1914 justify-content: space-between;
1915 align-items: center;
1916 background: #f8f9fa;
1917 padding: 12px 16px;
1918 border-radius: 6px;
1919 border: 1px solid #e2e4e7;
1920 transition: all 0.2s ease;
1921 gap: 30px;
1922 }
1923 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item:hover {
1924 border-color: #c3c4c7;
1925 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1926 }
1927 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item.active {
1928 background: #f0f8ff;
1929 border-color: #2271b1;
1930 }
1931 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal label.plugin-checkbox-label {
1932 display: flex;
1933 gap: 12px;
1934 justify-content: flex-start;
1935 align-items: center;
1936 }
1937 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-info {
1938 display: flex;
1939 align-items: center;
1940 gap: 10px;
1941 margin-top: -6px;
1942 }
1943 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-name {
1944 font-weight: 500;
1945 color: #1e1e1e;
1946 font-size: 14px;
1947 }
1948 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-required-badge {
1949 background: #ff6b6b;
1950 color: white;
1951 padding: 2px 8px;
1952 border-radius: 3px;
1953 font-size: 11px;
1954 font-weight: 500;
1955 text-transform: uppercase;
1956 }
1957 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-version {
1958 color: #757575;
1959 font-size: 12px;
1960 }
1961 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-status {
1962 display: flex;
1963 align-items: center;
1964 }
1965 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active {
1966 display: flex;
1967 align-items: center;
1968 gap: 5px;
1969 color: #00a32a;
1970 font-weight: 500;
1971 font-size: 14px;
1972 }
1973 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active .dashicons {
1974 font-size: 20px;
1975 width: 20px;
1976 height: 20px;
1977 }
1978 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button.install-selected-btn,
1979 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .button.activate-plugin {
1980 min-width: 140px;
1981 display: flex;
1982 align-items: center;
1983 justify-content: center;
1984 gap: 5px;
1985 }
1986 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button .spinner {
1987 margin: 0;
1988 float: none;
1989 }
1990 .jltma-templates .template-library-content .templates-grid-container .templates-grid {
1991 display: grid;
1992 grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
1993 row-gap: 32px;
1994 column-gap: 24px;
1995 }
1996 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item {
1997 background: #fff;
1998 border-radius: 8px;
1999 overflow: hidden;
2000 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
2001 border: 1px solid #f1f1f2;
2002 transition: all 0.3s ease;
2003 }
2004 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview {
2005 position: relative;
2006 height: 200px;
2007 overflow: hidden;
2008 cursor: pointer;
2009 display: block;
2010 }
2011 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview:before {
2012 content: "";
2013 background: #000;
2014 position: absolute;
2015 top: 0;
2016 bottom: 0;
2017 left: 0;
2018 right: 0;
2019 opacity: 0.02;
2020 display: block;
2021 z-index: 7;
2022 transition: opacity 0.2s ease-out;
2023 }
2024 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image {
2025 width: 100%;
2026 height: auto;
2027 min-height: 100%;
2028 object-fit: cover;
2029 object-position: top center;
2030 display: block;
2031 transform: translateY(0);
2032 transition: transform 4s linear;
2033 will-change: transform;
2034 border-radius: 0;
2035 }
2036 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering {
2037 transform: translateY(var(--translate-y, 0));
2038 }
2039 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering:hover {
2040 transition: transform 4s linear;
2041 }
2042 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .scroll-icon {
2043 z-index: 9;
2044 display: block;
2045 position: absolute;
2046 top: 50%;
2047 right: -25px;
2048 transform: translate(-50%, -50%);
2049 height: 40px;
2050 width: 40px;
2051 opacity: 0.5;
2052 color: #8b8b8b;
2053 animation: floatUpDown 3s ease-in-out infinite;
2054 transition: opacity 0.2s ease-out;
2055 }
2056 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info {
2057 padding: 16px;
2058 }
2059 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title {
2060 display: flex;
2061 justify-content: space-between;
2062 align-items: flex-start;
2063 }
2064 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title h3 {
2065 display: flex;
2066 align-items: self-start;
2067 margin: 0 8px 0 0;
2068 font-size: 14px;
2069 font-weight: 600;
2070 color: #333;
2071 line-height: 1.3;
2072 min-height: 40px;
2073 }
2074 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge,
2075 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge,
2076 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge,
2077 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge {
2078 display: inline-block;
2079 font-size: 10px;
2080 font-weight: 700;
2081 padding: 0 7px;
2082 border-radius: 4px;
2083 text-transform: uppercase;
2084 border: 1px solid transparent;
2085 }
2086 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge {
2087 background: rgba(255, 107, 107, 0.1);
2088 color: #ff6b6b;
2089 border: 1px solid rgba(255, 107, 107, 0.2);
2090 }
2091 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge {
2092 background: rgba(245, 158, 11, 0.1);
2093 color: #ea580c;
2094 border: 1px solid rgba(234, 88, 12, 0.2);
2095 }
2096 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge {
2097 background: rgba(203, 203, 252, 0.49);
2098 color: #5f5ff6;
2099 border: 1px solid rgba(152, 152, 244, 0.5);
2100 }
2101 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title {
2102 /* Imported = kit already in the local library (purchased or
2103 uploaded). Green, the "ready-to-use" confirmation color. */
2104 }
2105 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge {
2106 background: rgba(22, 163, 74, 0.1);
2107 color: #15803d;
2108 border: 1px solid rgba(22, 163, 74, 0.25);
2109 display: inline-flex;
2110 align-items: center;
2111 gap: 4px;
2112 }
2113 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge::before {
2114 content: "";
2115 display: inline-block;
2116 width: 8px;
2117 height: 8px;
2118 background: currentColor;
2119 border-radius: 50%;
2120 mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/contain no-repeat;
2121 -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/contain no-repeat;
2122 }
2123 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions {
2124 display: flex;
2125 gap: 8px;
2126 }
2127 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button {
2128 display: flex;
2129 justify-content: center;
2130 align-items: center;
2131 flex: 1;
2132 padding: 0 12px;
2133 font-size: 12px;
2134 font-weight: 400;
2135 line-height: 20px;
2136 min-height: 36px;
2137 border-radius: 6px;
2138 border: 1px solid transparent;
2139 cursor: pointer;
2140 transition: all 0.2s ease;
2141 }
2142 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button span {
2143 font-size: 16px;
2144 height: 16px;
2145 transition: none;
2146 margin-right: 4px;
2147 }
2148 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn {
2149 background: transparent;
2150 color: #0e0e2c;
2151 border-color: #0e0e2c;
2152 }
2153 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn:hover {
2154 background: #0e0e2c;
2155 color: #fff;
2156 }
2157 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-view-btn, .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-import-btn {
2158 background: #0e0e2c;
2159 color: #fff;
2160 border-color: #0e0e2c;
2161 }
2162 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-view-btn:hover, .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-import-btn:hover {
2163 background: #1a1a44;
2164 border-color: #1a1a44;
2165 }
2166 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn {
2167 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2168 color: #fff;
2169 font-weight: 700;
2170 border-color: transparent;
2171 }
2172 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn:hover {
2173 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2174 border-color: transparent;
2175 }
2176 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview .scroll-icon {
2177 opacity: 0;
2178 }
2179 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview::before {
2180 opacity: 0;
2181 }
2182 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro {
2183 display: flex;
2184 align-items: center;
2185 gap: 8px;
2186 padding: 8px 16px;
2187 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2188 color: #fff;
2189 border: none;
2190 border-radius: 6px;
2191 font-size: 14px;
2192 font-weight: 500;
2193 cursor: pointer;
2194 transition: all 0.2s ease;
2195 }
2196 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:hover:not(:disabled) {
2197 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2198 transform: translateY(-1px);
2199 }
2200 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:disabled {
2201 opacity: 0.6;
2202 cursor: not-allowed;
2203 }
2204 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons {
2205 font-size: 16px;
2206 width: 16px;
2207 height: 16px;
2208 }
2209 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons.spinning {
2210 animation: jltma-spin-in-place 1s linear infinite;
2211 }
2212 .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins,
2213 .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins {
2214 background: #f0f0f0 !important;
2215 color: #999 !important;
2216 cursor: not-allowed !important;
2217 opacity: 0.7;
2218 }
2219 .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins:hover,
2220 .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins:hover {
2221 background: #f0f0f0 !important;
2222 color: #999 !important;
2223 }
2224 .jltma-templates .template-library-content .templates-grid-container .loading-templates {
2225 position: absolute;
2226 top: 0;
2227 left: 0;
2228 width: 100%;
2229 height: 100%;
2230 display: flex;
2231 justify-content: center;
2232 align-items: center;
2233 flex-direction: column;
2234 gap: 20px;
2235 background: #ffffff;
2236 }
2237 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo {
2238 width: 80px;
2239 height: 80px;
2240 display: flex;
2241 align-items: center;
2242 justify-content: center;
2243 animation: pulse 2s ease-in-out infinite;
2244 }
2245 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo img {
2246 width: 100%;
2247 height: auto;
2248 filter: drop-shadow(0 4px 12px rgba(104, 20, 205, 0.3));
2249 }
2250 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-title {
2251 font-size: 16px;
2252 font-weight: 500;
2253 color: #6814cd;
2254 }
2255 .jltma-templates .template-library-content .templates-grid-container .no-templates {
2256 position: absolute;
2257 top: 0;
2258 left: 0;
2259 width: 100%;
2260 height: 100%;
2261 display: flex;
2262 flex-direction: column;
2263 justify-content: center;
2264 text-align: center;
2265 color: #666;
2266 }
2267 .jltma-templates .template-library-content .templates-grid-container .no-templates h3 {
2268 margin: 0 0 10px 0;
2269 font-size: 18px;
2270 color: #333;
2271 }
2272 .jltma-templates .template-library-content .templates-grid-container .no-templates p {
2273 margin: 0;
2274 font-size: 14px;
2275 }
2276 .jltma-templates .template-library-content .template-pagination {
2277 position: relative;
2278 display: flex;
2279 justify-content: center;
2280 align-items: center;
2281 gap: 20px;
2282 padding: 20px;
2283 border-top: 1px solid #e0e0e0;
2284 }
2285 .jltma-templates .template-library-content .template-pagination .pagination-info .pagination-text {
2286 color: #666;
2287 font-size: 14px;
2288 }
2289 .jltma-templates .template-library-content .template-pagination .pagination-controls {
2290 display: flex;
2291 align-items: center;
2292 gap: 10px;
2293 }
2294 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn {
2295 display: flex;
2296 align-items: center;
2297 gap: 6px;
2298 padding: 8px 16px;
2299 background: #fff;
2300 border: 1px solid #ddd;
2301 border-radius: 6px;
2302 color: #333;
2303 font-size: 14px;
2304 font-weight: 500;
2305 cursor: pointer;
2306 transition: all 0.2s ease;
2307 }
2308 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:hover:not(.disabled):not(:disabled) {
2309 background: #f8f9fa;
2310 border-color: #6a4bff;
2311 color: #6a4bff;
2312 }
2313 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn.disabled, .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:disabled {
2314 opacity: 0.5;
2315 cursor: not-allowed;
2316 }
2317 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn .dashicons {
2318 font-size: 14px;
2319 width: 14px;
2320 height: 14px;
2321 }
2322 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers {
2323 display: flex;
2324 align-items: center;
2325 gap: 6px;
2326 margin: 0 10px;
2327 }
2328 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number {
2329 display: flex;
2330 align-items: center;
2331 justify-content: center;
2332 min-width: 36px;
2333 height: 36px;
2334 padding: 0 8px;
2335 background: #fff;
2336 border: 1px solid #ddd;
2337 border-radius: 6px;
2338 color: #333;
2339 font-size: 14px;
2340 font-weight: 500;
2341 cursor: pointer;
2342 transition: all 0.2s ease;
2343 }
2344 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:hover:not(:disabled) {
2345 background: #f8f9fa;
2346 border-color: #6a4bff;
2347 color: #6a4bff;
2348 }
2349 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number.active {
2350 background: #6a4bff;
2351 border-color: #6a4bff;
2352 color: #fff;
2353 }
2354 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:disabled {
2355 opacity: 0.5;
2356 cursor: not-allowed;
2357 }
2358 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-ellipsis {
2359 display: flex;
2360 align-items: center;
2361 justify-content: center;
2362 min-width: 36px;
2363 height: 36px;
2364 color: #666;
2365 font-weight: bold;
2366 }
2367 .jltma-templates .template-library-content .template-pagination .pagination-loading {
2368 position: absolute;
2369 top: 0;
2370 left: 0;
2371 right: 0;
2372 bottom: 0;
2373 background: rgba(255, 255, 255, 0.9);
2374 display: flex;
2375 align-items: center;
2376 justify-content: center;
2377 border-radius: 8px;
2378 }
2379 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner {
2380 display: flex;
2381 align-items: center;
2382 gap: 10px;
2383 padding: 15px 20px;
2384 background: #fff;
2385 border-radius: 8px;
2386 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
2387 }
2388 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons {
2389 font-size: 18px;
2390 color: #6a4bff;
2391 }
2392 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons.spinning {
2393 animation: jltma-spin-in-place 1s linear infinite;
2394 }
2395 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .loading-text {
2396 color: #333;
2397 font-size: 14px;
2398 font-weight: 500;
2399 }
2400 .jltma-templates .template-library-content .infinite-scroll-sentinel {
2401 width: 100%;
2402 min-height: 40px;
2403 display: flex;
2404 justify-content: center;
2405 align-items: center;
2406 padding: 20px 0 10px;
2407 }
2408 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates {
2409 display: flex;
2410 align-items: center;
2411 justify-content: center;
2412 gap: 10px;
2413 color: #666;
2414 font-size: 14px;
2415 font-weight: 500;
2416 line-height: 1;
2417 }
2418 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates img {
2419 flex: 0 0 auto;
2420 display: block;
2421 align-self: center;
2422 }
2423 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates span {
2424 display: inline-block;
2425 line-height: 1;
2426 }
2427 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates .spinning {
2428 animation: jltma-spin-in-place 1s linear infinite;
2429 }
2430 .jltma-templates .template-library-content .kit-template-grid-footer {
2431 display: flex;
2432 flex-direction: row;
2433 justify-content: space-between;
2434 gap: 20px;
2435 align-items: center;
2436 position: sticky;
2437 bottom: 0;
2438 height: 70px;
2439 padding: 0 20px;
2440 border-top: 1px solid #e0e0e0;
2441 }
2442 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro {
2443 display: flex;
2444 align-items: center;
2445 gap: 8px;
2446 padding: 8px 16px;
2447 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2448 color: #fff;
2449 border: none;
2450 border-radius: 6px;
2451 font-size: 14px;
2452 font-weight: 500;
2453 cursor: pointer;
2454 transition: all 0.2s ease;
2455 }
2456 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:hover:not(:disabled) {
2457 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2458 transform: translateY(-1px);
2459 }
2460 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:disabled {
2461 opacity: 0.6;
2462 cursor: not-allowed;
2463 }
2464 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons {
2465 font-size: 16px;
2466 width: 16px;
2467 height: 16px;
2468 }
2469 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons.spinning {
2470 animation: jltma-spin-in-place 1s linear infinite;
2471 }
2472 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn {
2473 display: flex;
2474 align-items: center;
2475 gap: 8px;
2476 padding: 8px 16px;
2477 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2478 color: #fff;
2479 border: none;
2480 border-radius: 6px;
2481 font-size: 14px;
2482 font-weight: 700;
2483 cursor: pointer;
2484 transition: all 0.2s ease;
2485 }
2486 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:hover:not(:disabled) {
2487 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2488 }
2489 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:disabled {
2490 opacity: 0.6;
2491 cursor: not-allowed;
2492 }
2493 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons {
2494 font-size: 16px;
2495 width: 16px;
2496 height: 16px;
2497 }
2498 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons.spinning {
2499 animation: jltma-spin-in-place 1s linear infinite;
2500 }
2501 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn {
2502 display: flex;
2503 align-items: center;
2504 gap: 8px;
2505 padding: 8px 16px;
2506 background: #6a4bff;
2507 color: #fff;
2508 border: none;
2509 border-radius: 6px;
2510 font-size: 14px;
2511 font-weight: 500;
2512 cursor: pointer;
2513 transition: all 0.2s ease;
2514 }
2515 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:hover:not(:disabled) {
2516 background: #5a3bef;
2517 transform: translateY(-1px);
2518 }
2519 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:disabled {
2520 opacity: 0.6;
2521 cursor: not-allowed;
2522 }
2523 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons {
2524 font-size: 16px;
2525 width: 16px;
2526 height: 16px;
2527 }
2528 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons.spinning {
2529 animation: jltma-spin-in-place 1s linear infinite;
2530 }
2531 .jltma-templates .template-library-content .kit-template-grid-footer {
2532 /* Disabled state for buttons when plugins are missing */
2533 }
2534 .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins,
2535 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins {
2536 background: #f0f0f0 !important;
2537 color: #999 !important;
2538 cursor: not-allowed !important;
2539 opacity: 0.7;
2540 }
2541 .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins:hover,
2542 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins:hover {
2543 background: #f0f0f0 !important;
2544 color: #999 !important;
2545 }
2546 .jltma-templates .template-library-content .kit-template-grid-footer .footer-message-section {
2547 display: flex;
2548 flex-direction: row;
2549 gap: 24px;
2550 align-items: center;
2551 justify-content: center;
2552 }
2553 @media (max-width: 1200px) {
2554 .jltma-templates .template-library-sidebar {
2555 width: 250px;
2556 }
2557 .jltma-templates .templates-grid {
2558 grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
2559 gap: 20px !important;
2560 }
2561 }
2562 @media (max-width: 768px) {
2563 .jltma-templates {
2564 flex-direction: column;
2565 }
2566 .jltma-templates .page-importer-layout {
2567 flex-direction: column;
2568 min-height: auto;
2569 }
2570 .jltma-templates .page-importer-layout .page-importer-sidebar {
2571 width: 100%;
2572 height: auto;
2573 position: relative;
2574 border-right: none;
2575 border-bottom: 1px solid #dcdcde;
2576 padding: 20px;
2577 }
2578 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section {
2579 margin-bottom: 20px;
2580 }
2581 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .filter-title {
2582 font-size: 12px;
2583 }
2584 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters {
2585 gap: 6px;
2586 }
2587 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn {
2588 padding: 8px 14px;
2589 font-size: 12px;
2590 }
2591 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills {
2592 gap: 6px;
2593 }
2594 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn {
2595 padding: 8px 14px;
2596 font-size: 12px;
2597 }
2598 .jltma-templates .page-importer-layout .page-importer-content {
2599 padding: 20px;
2600 }
2601 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input {
2602 width: 180px;
2603 }
2604 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn {
2605 width: 32px;
2606 height: 32px;
2607 }
2608 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons {
2609 font-size: 16px;
2610 width: 16px;
2611 height: 16px;
2612 }
2613 .jltma-templates .template-library-sidebar {
2614 width: 100%;
2615 max-height: 200px;
2616 order: 2;
2617 }
2618 .jltma-templates .template-library-sidebar .categories-list {
2619 display: flex;
2620 overflow-x: auto;
2621 padding: 0 10px;
2622 }
2623 .jltma-templates .template-library-sidebar .categories-list li {
2624 min-width: 120px;
2625 }
2626 .jltma-templates .template-library-sidebar .categories-list li a,
2627 .jltma-templates .template-library-sidebar .categories-list li button {
2628 padding: 10px 15px;
2629 white-space: nowrap;
2630 }
2631 .jltma-templates .template-library-content {
2632 order: 1;
2633 }
2634 .jltma-templates .template-library-content .templates-grid-container {
2635 padding: 20px;
2636 }
2637 .jltma-templates .template-library-content .templates-grid-container .templates-grid {
2638 grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
2639 }
2640 .jltma-templates .template-library-content .templates-grid-container .template-pagination {
2641 flex-direction: column;
2642 gap: 15px;
2643 }
2644 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers {
2645 margin: 0 5px;
2646 }
2647 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers .pagination-number {
2648 min-width: 32px;
2649 height: 32px;
2650 font-size: 13px;
2651 }
2652 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-btn {
2653 padding: 6px 12px;
2654 font-size: 13px;
2655 }
2656 }
2657 @media (max-width: 480px) {
2658 .jltma-templates .templates-grid {
2659 grid-template-columns: 1fr !important;
2660 }
2661 }
2662 .jltma-templates .kit-template-importer .kit-template-uploader {
2663 border: 1.5px dashed hsl(214.3, 31.8%, 91.4%);
2664 background: hsl(210, 40%, 98.5%);
2665 border-radius: 10px;
2666 padding: 40px 24px;
2667 cursor: pointer;
2668 transition: all 0.2s ease;
2669 text-align: center;
2670 }
2671 .jltma-templates .kit-template-importer .kit-template-uploader:hover, .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging {
2672 border-color: hsla(222.2, 84%, 4.9%, 0.3);
2673 background: hsl(210, 40%, 97%);
2674 }
2675 .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging {
2676 border-color: hsla(222.2, 84%, 4.9%, 0.5);
2677 background: hsl(210, 40%, 96%);
2678 }
2679 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay {
2680 display: flex;
2681 flex-direction: column;
2682 align-items: center;
2683 gap: 0;
2684 }
2685 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-icon-circle {
2686 width: 48px;
2687 height: 48px;
2688 border-radius: 50%;
2689 border: 1px solid hsl(214.3, 31.8%, 91.4%);
2690 background: #ffffff;
2691 display: flex;
2692 align-items: center;
2693 justify-content: center;
2694 color: hsl(215.4, 16.3%, 46.9%);
2695 margin-bottom: 16px;
2696 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
2697 }
2698 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-title {
2699 margin: 0;
2700 font-size: 14px;
2701 font-weight: 600;
2702 color: hsl(222.2, 84%, 4.9%);
2703 letter-spacing: -0.01em;
2704 }
2705 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-subtitle {
2706 margin: 4px 0 0;
2707 font-size: 13px;
2708 color: hsl(215.4, 16.3%, 46.9%);
2709 }
2710 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn {
2711 margin-top: 16px;
2712 padding: 8px 16px;
2713 font-size: 13px;
2714 font-weight: 500;
2715 color: hsl(222.2, 84%, 4.9%);
2716 background: #ffffff;
2717 border: 1px solid hsl(214.3, 31.8%, 91.4%);
2718 border-radius: 6px;
2719 cursor: pointer;
2720 transition: all 0.15s ease;
2721 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
2722 }
2723 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn:hover {
2724 background: hsl(210, 40%, 96.1%);
2725 border-color: hsl(214.3, 31.8%, 85%);
2726 }
2727 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-hint {
2728 margin: 12px 0 0;
2729 font-size: 12px;
2730 color: hsl(215.4, 16.3%, 60%);
2731 }
2732 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay {
2733 /* In-place confirmation step (replaces the dropzone content while
2734 a file is staged but not yet uploaded). Buttons match the
2735 shared common/dialog.js button sizing so the visual language
2736 stays consistent between modal and inline confirmations. */
2737 }
2738 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-confirm-actions {
2739 display: flex;
2740 justify-content: center;
2741 gap: 10px;
2742 margin-top: 16px;
2743 flex-wrap: wrap;
2744 }
2745 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn {
2746 appearance: none;
2747 display: inline-flex;
2748 align-items: center;
2749 justify-content: center;
2750 height: 36px;
2751 padding: 0 18px;
2752 border: 1px solid transparent;
2753 border-radius: 8px;
2754 font-size: 13px;
2755 font-weight: 600;
2756 line-height: 1;
2757 cursor: pointer;
2758 transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
2759 font-family: inherit;
2760 }
2761 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn:focus-visible {
2762 outline: 2px solid rgba(104, 20, 205, 0.45);
2763 outline-offset: 2px;
2764 }
2765 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary {
2766 background: #ffffff;
2767 border-color: hsl(214.3, 31.8%, 91.4%);
2768 color: hsl(222.2, 84%, 4.9%);
2769 }
2770 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary:hover {
2771 background: hsl(210, 40%, 96.1%);
2772 border-color: hsl(214.3, 31.8%, 85%);
2773 }
2774 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary {
2775 background: #6814cd;
2776 color: #ffffff;
2777 }
2778 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary:hover {
2779 opacity: 0.9;
2780 }
2781 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .upload-error {
2782 display: inline-flex;
2783 align-items: center;
2784 gap: 6px;
2785 margin-top: 12px;
2786 padding: 6px 12px;
2787 font-size: 13px;
2788 color: hsl(0, 84%, 60%);
2789 background: hsla(0, 84%, 60%, 0.08);
2790 border-radius: 6px;
2791 }
2792 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading {
2793 cursor: default;
2794 align-items: stretch;
2795 text-align: left;
2796 padding: 8px 4px;
2797 }
2798 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-title {
2799 text-align: center;
2800 font-size: 17px;
2801 font-weight: 600;
2802 letter-spacing: -0.01em;
2803 margin: 0 0 8px;
2804 }
2805 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-subtitle {
2806 text-align: center;
2807 font-size: 13px;
2808 color: hsl(215.4, 16.3%, 46.9%);
2809 /* Generous breathing room before the stepper so the block
2810 reads as grouped content rather than a wall of text. */
2811 margin: 0 auto 32px;
2812 max-width: 320px;
2813 line-height: 1.55;
2814 }
2815 .jltma-templates .kit-template-importer .kit-template-uploader {
2816 /* Info notice at the bottom of the import stepper. Matches the
2817 "Please do not close this window or refresh the page." banner
2818 pattern used in KitImportModal so both surfaces read the same. */
2819 }
2820 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice {
2821 display: flex;
2822 align-items: center;
2823 gap: 10px;
2824 margin: 28px auto 0;
2825 padding: 12px 16px;
2826 width: 100%;
2827 max-width: 380px;
2828 background: hsl(282, 60%, 97.5%);
2829 border: 1px solid hsl(282, 40%, 90%);
2830 border-radius: 10px;
2831 box-sizing: border-box;
2832 }
2833 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__icon {
2834 display: inline-flex;
2835 align-items: center;
2836 justify-content: center;
2837 flex-shrink: 0;
2838 color: hsl(215.4, 16.3%, 46.9%);
2839 }
2840 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__text {
2841 font-size: 12px;
2842 line-height: 1.45;
2843 color: hsl(215.4, 16.3%, 40%);
2844 }
2845 .jltma-templates .kit-template-importer .kit-template-uploader {
2846 /* Currently-importing card. Horizontal layout: spinner anchors
2847 the eye on the left, text column (eyebrow + filename) reads
2848 right of it. Typography hierarchy makes the filename the
2849 hero — it's the one bit of info the user actually cares
2850 about. Compact vertical rhythm (14px block padding) keeps
2851 the card visually dense so it doesn't feel empty. */
2852 }
2853 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file {
2854 display: flex;
2855 align-items: center;
2856 gap: 14px;
2857 margin: 20px auto 0;
2858 padding: 14px 18px;
2859 width: 100%;
2860 max-width: 380px;
2861 background: linear-gradient(90deg, hsl(282, 100%, 98.5%), hsl(0, 100%, 99%));
2862 border: 1px solid hsl(282, 40%, 90%);
2863 border-radius: 10px;
2864 box-sizing: border-box;
2865 }
2866 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__spinner {
2867 flex-shrink: 0;
2868 width: 32px;
2869 height: 32px;
2870 border-radius: 50%;
2871 border: 3px solid hsl(282, 40%, 90%);
2872 border-top-color: #6814cd;
2873 animation: jltma-uploader-spin 0.8s linear infinite;
2874 }
2875 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__text {
2876 display: flex;
2877 flex-direction: column;
2878 gap: 3px;
2879 min-width: 0; /* let text truncate instead of overflowing */
2880 flex: 1;
2881 }
2882 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__label {
2883 font-size: 10px;
2884 font-weight: 700;
2885 text-transform: uppercase;
2886 letter-spacing: 0.08em;
2887 color: hsl(215.4, 16.3%, 46.9%);
2888 }
2889 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__name {
2890 font-size: 15px;
2891 font-weight: 600;
2892 color: hsl(222.2, 84%, 4.9%);
2893 line-height: 1.3;
2894 overflow: hidden;
2895 text-overflow: ellipsis;
2896 white-space: nowrap;
2897 }
2898 .jltma-templates .kit-template-importer .kit-template-uploader {
2899 /* Stepper inside the upload modal. Mirrors the language of
2900 KitImportModal's vertical-progress-steps so the visual
2901 continues seamlessly after onUploadComplete hands off. */
2902 }
2903 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-steps {
2904 list-style: none;
2905 margin: 0 auto;
2906 padding: 0;
2907 width: 100%;
2908 max-width: 380px;
2909 display: flex;
2910 flex-direction: column;
2911 gap: 12px;
2912 }
2913 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step {
2914 display: flex;
2915 align-items: center;
2916 gap: 14px;
2917 padding: 14px 16px;
2918 border-radius: 10px;
2919 background: hsl(210, 40%, 98.5%);
2920 transition: background 0.2s ease;
2921 }
2922 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active {
2923 background: linear-gradient(90deg, hsl(282, 100%, 97%), hsl(0, 100%, 98%));
2924 }
2925 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-complete {
2926 background: hsl(282, 60%, 97%);
2927 }
2928 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending {
2929 background: hsl(210, 40%, 98.5%);
2930 opacity: 0.7;
2931 }
2932 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__indicator {
2933 width: 28px;
2934 height: 28px;
2935 border-radius: 50%;
2936 display: inline-flex;
2937 align-items: center;
2938 justify-content: center;
2939 flex-shrink: 0;
2940 background: #6814cd;
2941 color: #ffffff;
2942 }
2943 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__indicator {
2944 background: hsl(214.3, 31.8%, 91.4%);
2945 color: hsl(215.4, 16.3%, 46.9%);
2946 }
2947 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__dot {
2948 width: 6px;
2949 height: 6px;
2950 border-radius: 50%;
2951 background: currentColor;
2952 }
2953 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__body {
2954 display: flex;
2955 flex-direction: column;
2956 gap: 2px;
2957 }
2958 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__title {
2959 font-size: 13px;
2960 font-weight: 600;
2961 color: hsl(222.2, 84%, 4.9%);
2962 }
2963 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__title {
2964 color: hsl(215.4, 16.3%, 46.9%);
2965 }
2966 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__status {
2967 font-size: 12px;
2968 font-weight: 500;
2969 color: #6814cd;
2970 }
2971 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active .uploader-step__status {
2972 color: #d91b5c;
2973 }
2974 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__status {
2975 color: hsl(215.4, 16.3%, 60%);
2976 }
2977 .jltma-templates .kit-template-importer .kit-template-uploader {
2978 /* Spinner (shared between loader icon-circle and step indicators) */
2979 }
2980 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-spinner {
2981 width: 14px;
2982 height: 14px;
2983 border-radius: 50%;
2984 border: 2px solid rgba(255, 255, 255, 0.35);
2985 border-top-color: #ffffff;
2986 animation: jltma-uploader-spin 0.8s linear infinite;
2987 }
2988 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading {
2989 position: relative;
2990 border-color: hsl(214.3, 31.8%, 91.4%);
2991 }
2992 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading .uploader-spinner {
2993 width: 22px;
2994 height: 22px;
2995 border: 2px solid hsl(214.3, 31.8%, 91.4%);
2996 border-top-color: hsl(222.2, 84%, 4.9%);
2997 }
2998 @keyframes jltma-uploader-spin {
2999 to {
3000 transform: rotate(360deg);
3001 }
3002 }
3003 .jltma-templates .kit-template-importer .kit-upload-success {
3004 display: flex;
3005 align-items: center;
3006 gap: 12px;
3007 margin-top: 16px;
3008 padding: 12px 16px;
3009 background: hsla(142, 76%, 36%, 0.08);
3010 border: 1px solid hsla(142, 76%, 36%, 0.2);
3011 border-radius: 8px;
3012 }
3013 .jltma-templates .kit-template-importer .kit-upload-success .success-icon {
3014 flex-shrink: 0;
3015 color: hsl(142, 76%, 36%);
3016 }
3017 .jltma-templates .kit-template-importer .kit-upload-success .success-info h4 {
3018 margin: 0;
3019 font-size: 13px;
3020 font-weight: 600;
3021 color: hsl(222.2, 84%, 4.9%);
3022 }
3023 .jltma-templates .kit-template-importer .kit-upload-success .success-info p {
3024 margin: 2px 0 0;
3025 font-size: 12px;
3026 color: hsl(215.4, 16.3%, 46.9%);
3027 }
3028 .jltma-templates .kit-template-importer .kit-template-grid {
3029 padding: 0 20px 20px;
3030 }
3031 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info {
3032 background: #fff;
3033 border: 1px solid #e0e0e0;
3034 border-radius: 8px;
3035 padding: 20px;
3036 }
3037 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info h4 {
3038 margin: 0 0 10px 0;
3039 color: #333;
3040 font-size: 18px;
3041 }
3042 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info p {
3043 margin: 0;
3044 color: #666;
3045 font-size: 14px;
3046 }
3047
3048 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates,
3049 #jltma-widgets-library-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates,
3050 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates {
3051 background: #f1f3f4;
3052 padding-right: 20px;
3053 }
3054 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content,
3055 #jltma-widgets-library-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content,
3056 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content {
3057 margin: 20px 0;
3058 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
3059 border-radius: 12px;
3060 overflow: hidden;
3061 overflow: clip;
3062 overflow-clip-margin: 72px;
3063 min-height: calc(100vh - 72px);
3064 }
3065 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header,
3066 #jltma-widgets-library-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header,
3067 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header {
3068 padding: 20px;
3069 border-bottom: 1px solid #f1f1f2;
3070 background: #fff;
3071 }
3072 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs,
3073 #jltma-widgets-library-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs,
3074 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs {
3075 display: flex;
3076 gap: 0;
3077 border-bottom: 1px solid #e0e0e0;
3078 }
3079 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container,
3080 #jltma-widgets-library-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container,
3081 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container {
3082 padding: 20px;
3083 }
3084
3085 .jltma-page-importer-btn-active .jltma-template-page-importer .template-library-header-logo {
3086 margin-left: 20px;
3087 }
3088 .jltma-page-importer-btn-active .jltma-template-page-importer .template-tabs {
3089 position: absolute;
3090 left: 50%;
3091 transform: translateX(-50%);
3092 }
3093
3094 .swal2-container.fade.in {
3095 z-index: 9999999;
3096 }
3097
3098 .template-preview-wrapper {
3099 display: flex;
3100 flex-direction: column;
3101 height: 100%;
3102 background: #f1f3f4;
3103 }
3104
3105 .template-preview-toolbar {
3106 display: flex;
3107 align-items: center;
3108 justify-content: space-between;
3109 padding: 12px 24px;
3110 background: #0c0d0e;
3111 border-radius: 8px 8px 0 0;
3112 min-height: 60px;
3113 position: relative;
3114 }
3115 .template-preview-toolbar .template-preview-toolbar-left {
3116 flex: 0 0 auto;
3117 min-width: 200px;
3118 }
3119 .template-preview-toolbar .template-preview-toolbar-left .template-preview-title {
3120 font-size: 16px;
3121 font-weight: 600;
3122 color: #fff;
3123 line-height: 1.5;
3124 }
3125 .template-preview-toolbar .template-preview-toolbar-center {
3126 position: absolute;
3127 left: 50%;
3128 transform: translateX(-50%);
3129 display: flex;
3130 justify-content: center;
3131 align-items: center;
3132 }
3133 .template-preview-toolbar .template-preview-toolbar-right {
3134 flex: 0 0 auto;
3135 }
3136
3137 .template-preview-devices {
3138 display: flex;
3139 align-items: center;
3140 gap: 8px;
3141 background: rgba(255, 255, 255, 0.05);
3142 padding: 4px;
3143 border-radius: 6px;
3144 }
3145
3146 .template-preview-device-btn {
3147 display: inline-flex;
3148 justify-content: center;
3149 align-items: center;
3150 width: 40px;
3151 height: 40px;
3152 padding: 0;
3153 border-radius: 4px;
3154 border: none;
3155 background: transparent;
3156 cursor: pointer;
3157 transition: all 0.3s ease;
3158 color: #8892a0;
3159 }
3160 .template-preview-device-btn svg {
3161 width: 20px;
3162 height: 20px;
3163 pointer-events: none;
3164 transition: all 0.3s ease;
3165 }
3166 .template-preview-device-btn:hover {
3167 background: rgba(104, 20, 205, 0.15);
3168 color: #6814cd;
3169 transform: translateY(-1px);
3170 }
3171 .template-preview-device-btn:hover svg {
3172 stroke: #6814cd;
3173 }
3174 .template-preview-device-btn.active {
3175 background: #6814cd;
3176 color: #fff;
3177 }
3178 .template-preview-device-btn.active svg {
3179 stroke: #fff;
3180 }
3181 .template-preview-device-btn.active:hover {
3182 background: #5610a8;
3183 color: #fff;
3184 }
3185 .template-preview-device-btn.active:hover svg {
3186 stroke: #fff;
3187 }
3188
3189 .template-preview-container {
3190 flex: 1;
3191 display: flex;
3192 justify-content: center;
3193 overflow-x: hidden;
3194 transition: all 0.3s;
3195 }
3196
3197 .template-preview-loading {
3198 display: flex;
3199 flex-direction: column;
3200 align-items: center;
3201 justify-content: center;
3202 gap: 16px;
3203 }
3204 .template-preview-loading .spinner {
3205 margin: 0;
3206 }
3207 .template-preview-loading p {
3208 margin: 0;
3209 color: #666;
3210 font-size: 14px;
3211 }
3212
3213 .folded .jltma-template-library {
3214 margin-left: -20px;
3215 }
3216
3217 #wpbody .jltma-template-library {
3218 margin-top: 0;
3219 }
3220
3221 .master-addons_page_jltma-template-library .notice:not([class*=jltma-]),
3222 .master-addons_page_jltma-template-library .error:not([class*=jltma-]),
3223 .master-addons_page_jltma-template-library .updated:not([class*=jltma-]),
3224 .master-addons_page_jltma-widgets-library .notice:not([class*=jltma-]),
3225 .master-addons_page_jltma-widgets-library .error:not([class*=jltma-]),
3226 .master-addons_page_jltma-widgets-library .updated:not([class*=jltma-]),
3227 .master-addons_page_jltma-template-kits .notice:not([class*=jltma-]),
3228 .master-addons_page_jltma-template-kits .error:not([class*=jltma-]),
3229 .master-addons_page_jltma-template-kits .updated:not([class*=jltma-]) {
3230 display: none !important;
3231 }
3232 .master-addons_page_jltma-template-library .wrap,
3233 .master-addons_page_jltma-widgets-library .wrap,
3234 .master-addons_page_jltma-template-kits .wrap {
3235 margin: 0 !important;
3236 }
3237 .master-addons_page_jltma-template-library #wpbody-content,
3238 .master-addons_page_jltma-widgets-library #wpbody-content,
3239 .master-addons_page_jltma-template-kits #wpbody-content {
3240 padding-bottom: 0;
3241 }
3242 .master-addons_page_jltma-template-library #wpfooter,
3243 .master-addons_page_jltma-widgets-library #wpfooter,
3244 .master-addons_page_jltma-template-kits #wpfooter {
3245 display: none;
3246 }
3247
3248 .favorites-section {
3249 margin-bottom: 24px !important;
3250 }
3251 .favorites-section .favorites-filter-btn {
3252 width: 100%;
3253 display: flex;
3254 align-items: center;
3255 gap: 12px;
3256 padding: 12px 16px;
3257 background: #f8f9fa;
3258 border: 1px solid #e0e0e0;
3259 border-radius: 8px;
3260 cursor: pointer;
3261 transition: all 0.3s ease;
3262 font-size: 15px;
3263 font-weight: 500;
3264 color: #1d2327;
3265 }
3266 .favorites-section .favorites-filter-btn .eicon-heart-o {
3267 font-size: 18px;
3268 color: #6814cd;
3269 }
3270 .favorites-section .favorites-filter-btn .favorites-label {
3271 flex: 1;
3272 text-align: left;
3273 }
3274 .favorites-section .favorites-filter-btn .favorites-label .favorites-count {
3275 font-weight: 600;
3276 color: #6814cd;
3277 margin-left: 4px;
3278 }
3279 .favorites-section .favorites-filter-btn:hover {
3280 background: #f0f4ff;
3281 border-color: #6814cd;
3282 }
3283 .favorites-section .favorites-filter-btn.active {
3284 background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%);
3285 }
3286 .favorites-section .favorites-filter-btn.active .eicon-heart-o {
3287 color: #f50a7f;
3288 }
3289 .favorites-section .favorites-filter-btn.active .favorites-label {
3290 color: #6814cd;
3291 }
3292
3293 .template-favorite-btn {
3294 display: inline-flex;
3295 align-items: center;
3296 justify-content: center;
3297 background: transparent;
3298 border: none;
3299 cursor: pointer;
3300 padding: 4px;
3301 margin-left: 8px;
3302 border-radius: 50%;
3303 transition: all 0.2s ease;
3304 vertical-align: middle;
3305 }
3306 .template-favorite-btn .eicon-heart-o,
3307 .template-favorite-btn .eicon-heart {
3308 font-size: 16px;
3309 color: #6d7882;
3310 transition: all 0.2s ease;
3311 margin-top: -2.5px;
3312 }
3313 .template-favorite-btn:hover {
3314 background: rgba(104, 20, 205, 0.08);
3315 }
3316 .template-favorite-btn:hover .eicon-heart-o,
3317 .template-favorite-btn:hover .eicon-heart {
3318 color: #6814cd;
3319 }
3320 .template-favorite-btn.is-favorite .eicon-heart {
3321 color: #f50a7f;
3322 animation: heartbeat 0.3s ease;
3323 }
3324 .template-favorite-btn.is-favorite:hover .eicon-heart {
3325 color: #d00970;
3326 }
3327
3328 .has-tooltip {
3329 position: relative;
3330 }
3331 .has-tooltip::after {
3332 content: attr(data-tooltip);
3333 position: absolute;
3334 bottom: 100%;
3335 left: 50%;
3336 transform: translateX(-50%) translateY(-8px);
3337 padding: 6px 12px;
3338 background: rgba(0, 0, 0, 0.9);
3339 color: #fff;
3340 font-size: 12px;
3341 font-weight: 500;
3342 white-space: nowrap;
3343 border-radius: 4px;
3344 opacity: 0;
3345 visibility: hidden;
3346 pointer-events: none;
3347 transition: all 0.2s ease;
3348 z-index: 1000;
3349 line-height: 1.4;
3350 }
3351 .has-tooltip::before {
3352 content: "";
3353 position: absolute;
3354 bottom: 100%;
3355 left: 50%;
3356 transform: translateX(-50%) translateY(2px);
3357 border: 5px solid transparent;
3358 border-top-color: rgba(0, 0, 0, 0.9);
3359 opacity: 0;
3360 visibility: hidden;
3361 pointer-events: none;
3362 transition: all 0.2s ease;
3363 z-index: 1000;
3364 }
3365 .has-tooltip:hover::after, .has-tooltip:hover::before {
3366 opacity: 1;
3367 visibility: visible;
3368 }
3369 .has-tooltip:hover::after {
3370 transform: translateX(-50%) translateY(-12px);
3371 }
3372 .has-tooltip:hover::before {
3373 transform: translateX(-50%) translateY(-2px);
3374 }
3375
3376 .content-header .has-tooltip::after {
3377 white-space: normal;
3378 width: 130px;
3379 text-align: center;
3380 left: auto;
3381 right: 0;
3382 transform: translateY(-8px);
3383 }
3384 .content-header .has-tooltip:hover::after {
3385 transform: translateY(-12px);
3386 }
3387
3388 .swal2-modal button {
3389 outline: none;
3390 }
3391 .swal2-modal .confetti-container {
3392 position: absolute;
3393 top: 0;
3394 left: 0;
3395 width: 100%;
3396 height: 100%;
3397 overflow: hidden;
3398 pointer-events: none;
3399 }
3400 .swal2-modal .confetti-container .confetti-piece {
3401 position: absolute;
3402 top: -10%;
3403 width: 10px;
3404 height: 10px;
3405 transform-origin: bottom;
3406 animation: fall 3s ease-in forwards;
3407 }
3408 .swal2-modal .jltma-uploading-wrapper {
3409 position: relative;
3410 display: flex;
3411 flex-direction: column;
3412 align-items: center;
3413 margin-top: 10px;
3414 }
3415 .swal2-modal .jltma-uploading-wrapper .swal2-loader {
3416 border: 4px solid #f3f3f3;
3417 border-top: 4px solid #3085d6;
3418 border-radius: 50%;
3419 width: 50px;
3420 height: 50px;
3421 animation: jltma-spin-in-place 1s linear infinite;
3422 }
3423 .swal2-modal .jltma-uploading-wrapper h2 {
3424 font-size: 32px;
3425 font-weight: 700;
3426 color: #1d2327;
3427 letter-spacing: -0.5px;
3428 }
3429 .swal2-modal .jltma-uploading-wrapper p {
3430 font-size: 16px;
3431 color: #6d7882;
3432 line-height: 1.5;
3433 margin: 0 0 40px 0;
3434 }
3435 .swal2-modal:has(.jltma-uploading-wrapper) h2 {
3436 width: max-content !important;
3437 }
3438 .swal2-modal:has(.confetti-container) {
3439 position: relative;
3440 }
3441 .swal2-modal:has(.confetti-container) .swal2-content {
3442 position: static;
3443 }
3444
3445 @keyframes spin {
3446 0% {
3447 transform: rotate(0deg);
3448 }
3449 100% {
3450 transform: rotate(360deg);
3451 }
3452 }
3453 @keyframes jltma-spin-in-place {
3454 0% {
3455 transform: rotate(0deg);
3456 }
3457 100% {
3458 transform: rotate(360deg);
3459 }
3460 }
3461 @keyframes floatUpDown {
3462 0% {
3463 transform: translate(-50%, -50%) translateY(0);
3464 }
3465 50% {
3466 transform: translate(-50%, -50%) translateY(-10px);
3467 }
3468 100% {
3469 transform: translate(-50%, -50%) translateY(0);
3470 }
3471 }
3472 @keyframes fadeInSmooth {
3473 0% {
3474 opacity: 0;
3475 }
3476 100% {
3477 opacity: 1;
3478 }
3479 }
3480 @keyframes fadeOutSmooth {
3481 0% {
3482 opacity: 1;
3483 }
3484 100% {
3485 opacity: 0;
3486 }
3487 }
3488 @keyframes heartbeat {
3489 0%, 100% {
3490 transform: scale(1);
3491 }
3492 25% {
3493 transform: scale(1.2);
3494 }
3495 50% {
3496 transform: scale(1.1);
3497 }
3498 75% {
3499 transform: scale(1.15);
3500 }
3501 }
3502 @keyframes fall {
3503 0% {
3504 transform: translateY(0) rotateZ(0deg);
3505 opacity: 1;
3506 }
3507 100% {
3508 transform: translateY(100vh) rotateZ(360deg);
3509 opacity: 0;
3510 }
3511 }
3512 .template-library-react-app .wp-components-button.is-primary {
3513 background-color: #6a4bff;
3514 border-color: #6a4bff;
3515 }
3516 .template-library-react-app .wp-components-button.is-primary:hover:not(:disabled) {
3517 background-color: #5130ef;
3518 border-color: #5130ef;
3519 }
3520 .template-library-react-app .components-search-control .components-search-control__input {
3521 border-color: #ddd;
3522 }
3523 .template-library-react-app .components-search-control .components-search-control__input:focus {
3524 border-color: #6a4bff;
3525 box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1);
3526 }
3527
3528 .template-importer-modal {
3529 position: fixed;
3530 top: 0;
3531 left: 0;
3532 right: 0;
3533 bottom: 0;
3534 z-index: 999999;
3535 display: flex;
3536 justify-content: center;
3537 align-items: center;
3538 }
3539 .template-importer-modal .modal-overlay {
3540 position: absolute;
3541 top: 0;
3542 left: 0;
3543 right: 0;
3544 bottom: 0;
3545 background: rgba(0, 0, 0, 0.8);
3546 }
3547 .template-importer-modal .modal-content {
3548 position: relative;
3549 max-width: 600px;
3550 width: 90%;
3551 max-height: 80vh;
3552 overflow: hidden;
3553 z-index: 10001;
3554 }
3555 .template-importer-modal .modal-content .modal-header {
3556 display: flex;
3557 align-items: center;
3558 justify-content: space-between;
3559 padding: 22px 32px;
3560 }
3561 .template-importer-modal .modal-content .modal-header h3 {
3562 margin: 0;
3563 font-size: 18px;
3564 font-weight: 600;
3565 }
3566 .template-importer-modal .modal-content .modal-header .modal-close {
3567 background: none;
3568 border: none;
3569 padding: 8px;
3570 cursor: pointer;
3571 border-radius: 4px;
3572 display: flex;
3573 align-items: center;
3574 justify-content: center;
3575 transition: background-color 0.2s;
3576 background: transparent;
3577 }
3578 .template-importer-modal .modal-content .modal-header .modal-close .dashicons {
3579 font-size: 20px;
3580 width: 20px;
3581 height: 20px;
3582 }
3583 .template-importer-modal .modal-content .modal-body {
3584 padding: 32px;
3585 }
3586 .template-importer-modal.template-kit .modal-overlay {
3587 background: rgba(0, 0, 0, 0.5);
3588 backdrop-filter: blur(4px);
3589 }
3590 .template-importer-modal.template-kit .modal-content {
3591 background: #ffffff;
3592 border: 1px solid hsl(214.3, 31.8%, 91.4%);
3593 border-radius: 12px;
3594 box-shadow: 0 16px 70px -12px rgba(0, 0, 0, 0.25);
3595 max-width: 520px;
3596 }
3597 .template-importer-modal.template-kit .modal-content .modal-header {
3598 border-bottom: 1px solid hsl(220, 13%, 91%);
3599 padding: 16px;
3600 }
3601 .template-importer-modal.template-kit .modal-content .modal-header h3 {
3602 color: hsl(222.2, 84%, 4.9%);
3603 font-size: 16px;
3604 font-weight: 600;
3605 letter-spacing: -0.025em;
3606 }
3607 .template-importer-modal.template-kit .modal-content .modal-header .modal-close {
3608 color: hsl(215.4, 16.3%, 46.9%);
3609 border-radius: 6px;
3610 width: 32px;
3611 height: 32px;
3612 }
3613 .template-importer-modal.template-kit .modal-content .modal-header .modal-close:hover {
3614 background: hsl(210, 40%, 96.1%);
3615 color: hsl(222.2, 84%, 4.9%);
3616 }
3617 .template-importer-modal.template-kit .modal-content .modal-body {
3618 padding: 16px;
3619 }
3620 .template-importer-modal.required-plugins-modal .modal-content {
3621 border-radius: 12px;
3622 background: #fff;
3623 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
3624 }
3625 .template-importer-modal.required-plugins-modal .modal-content .modal-header {
3626 border-bottom: 1px solid #e2e8f0;
3627 background: #f8fafc;
3628 }
3629 .template-importer-modal.required-plugins-modal .modal-content .modal-header h3 {
3630 color: #1a202c;
3631 }
3632 .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close {
3633 color: #64748b;
3634 }
3635 .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close:hover {
3636 background: #e2e8f0;
3637 }
3638 .template-importer-modal.required-plugins-modal .modal-body p {
3639 margin-top: 0;
3640 }
3641 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item {
3642 color: #d9534f;
3643 background: linear-gradient(180deg, rgba(217, 83, 79, 0.06), rgba(217, 83, 79, 0.03));
3644 border: 1px solid rgba(217, 83, 79, 0.15);
3645 }
3646 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label {
3647 display: flex;
3648 align-items: center;
3649 gap: 12px;
3650 }
3651 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info {
3652 margin: 0;
3653 }
3654 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox] {
3655 margin: 0;
3656 appearance: none;
3657 width: 16px;
3658 height: 16px;
3659 border: 1.5px solid #cbd5e1;
3660 border-radius: 50px;
3661 position: relative;
3662 cursor: pointer;
3663 outline: none;
3664 transition: all 0.2s ease;
3665 background: #fff;
3666 outline: none;
3667 }
3668 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:focus {
3669 box-shadow: none;
3670 }
3671 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked {
3672 border-color: #4caf50;
3673 background-color: #4caf50;
3674 }
3675 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked::after {
3676 content: "";
3677 position: absolute;
3678 top: 2px;
3679 left: 5px;
3680 width: 3px;
3681 height: 7px;
3682 border: solid white;
3683 border-width: 0 2px 2px 0;
3684 transform: rotate(45deg);
3685 }
3686 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item:has(input[type=checkbox]:checked) {
3687 background: #f0f8ff;
3688 border-color: #2271b1;
3689 }
3690 .template-importer-modal.required-plugins-modal .modal-body .install-selected-btn {
3691 transition: all 0.5s ease-in;
3692 }
3693
3694 .jltma-video-modal-overlay {
3695 position: fixed;
3696 top: 0;
3697 left: 0;
3698 right: 0;
3699 bottom: 0;
3700 z-index: 999999;
3701 display: flex;
3702 align-items: center;
3703 justify-content: center;
3704 background: rgba(0, 0, 0, 0.6);
3705 backdrop-filter: blur(4px);
3706 animation: jltmaVideoFadeIn 0.2s ease;
3707 }
3708
3709 @keyframes jltmaVideoFadeIn {
3710 from {
3711 opacity: 0;
3712 }
3713 to {
3714 opacity: 1;
3715 }
3716 }
3717 .jltma-video-modal-content {
3718 position: relative;
3719 width: 90%;
3720 max-width: 860px;
3721 background: #000;
3722 border-radius: 12px;
3723 overflow: visible;
3724 box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4);
3725 animation: modalSlideUp 0.3s ease;
3726 }
3727
3728 .jltma-video-modal-close {
3729 position: absolute;
3730 top: -44px;
3731 right: 0;
3732 width: 34px;
3733 height: 34px;
3734 display: flex;
3735 align-items: center;
3736 justify-content: center;
3737 background: rgba(255, 255, 255, 0.15);
3738 border: 1px solid rgba(255, 255, 255, 0.2);
3739 border-radius: 50%;
3740 color: #fff;
3741 cursor: pointer;
3742 transition: all 0.2s ease;
3743 z-index: 10;
3744 }
3745 .jltma-video-modal-close .dashicons {
3746 font-size: 18px;
3747 width: 18px;
3748 height: 18px;
3749 }
3750 .jltma-video-modal-close:hover {
3751 background: rgba(255, 255, 255, 0.3);
3752 transform: scale(1.1);
3753 }
3754
3755 .jltma-video-wrapper {
3756 position: relative;
3757 padding-bottom: 56.25%;
3758 height: 0;
3759 }
3760 .jltma-video-wrapper iframe {
3761 position: absolute;
3762 top: 0;
3763 left: 0;
3764 width: 100%;
3765 height: 100%;
3766 border: none;
3767 }
3768
3769 @keyframes modalSlideUp {
3770 from {
3771 opacity: 0;
3772 transform: translateY(20px) scale(0.97);
3773 }
3774 to {
3775 opacity: 1;
3776 transform: translateY(0) scale(1);
3777 }
3778 }