PluginProbe
Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder & Template Kits / 3.1.2
Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder & Template Kits v3.1.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.1.2, at assets/css/admin/template-library.css

3,721 lines 118.6 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: spin 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 }
1239 .jltma-templates .template-library-content .content-header .refresh-btn:hover {
1240 border-color: #6814cd;
1241 background: rgba(104, 20, 205, 0.04);
1242 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1243 }
1244 .jltma-templates .template-library-content .content-header .refresh-btn:hover span {
1245 color: #6814cd;
1246 }
1247 .jltma-templates .template-library-content .content-header .refresh-btn:disabled {
1248 opacity: 0.6;
1249 cursor: not-allowed;
1250 }
1251 .jltma-templates .template-library-content .content-header .refresh-btn:active {
1252 transform: scale(0.96);
1253 }
1254 .jltma-templates .template-library-content .content-header .refresh-btn .dashicons {
1255 font-size: 18px;
1256 width: 18px;
1257 height: 18px;
1258 color: #64748b;
1259 }
1260 .jltma-templates .template-library-content .content-header .refresh-btn .dashicons.spinning {
1261 animation: spin 1s linear infinite;
1262 }
1263 .jltma-templates .template-library-content .content-header .template-library-header .search-container {
1264 position: relative;
1265 width: 400px;
1266 }
1267 .jltma-templates .template-library-content .content-header .template-library-header .search-container input {
1268 width: 100%;
1269 padding: 10px 15px;
1270 border: 1px solid #ddd;
1271 border-radius: 6px;
1272 font-size: 14px;
1273 min-height: auto !important;
1274 line-height: 0 !important;
1275 transition: border-color 0.2s ease;
1276 }
1277 .jltma-templates .template-library-content .content-header .template-library-header .search-container input:focus {
1278 outline: none;
1279 border-color: #6a4bff;
1280 box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1);
1281 }
1282 .jltma-templates .template-library-content .content-header .template-library-header .search-container .search-icon {
1283 position: absolute;
1284 right: 15px;
1285 top: 50%;
1286 transform: translateY(-50%);
1287 color: #999;
1288 font-size: 16px;
1289 width: max-content;
1290 height: max-content;
1291 }
1292 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper {
1293 display: flex;
1294 justify-content: space-between;
1295 align-items: center;
1296 }
1297 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo {
1298 display: flex;
1299 align-items: center;
1300 gap: 8px;
1301 color: #6d7882;
1302 }
1303 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo img {
1304 width: 36px;
1305 height: 36px;
1306 }
1307 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo::after {
1308 content: "Templates Library";
1309 font-size: 24px;
1310 font-weight: 500;
1311 color: #1d2327;
1312 letter-spacing: 0;
1313 line-height: 1;
1314 }
1315 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode {
1316 margin-bottom: 0;
1317 padding: 0;
1318 height: 60px;
1319 border-block-end: 1px solid #e6e8ea;
1320 background: #fff;
1321 position: relative;
1322 }
1323 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode .template-preview-toolbar-center {
1324 position: absolute;
1325 left: calc(50% + 150px);
1326 transform: translateX(-50%);
1327 display: flex;
1328 justify-content: center;
1329 align-items: center;
1330 z-index: 10;
1331 }
1332 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.kits-mode .template-library-header-logo::after {
1333 display: none;
1334 }
1335 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn {
1336 display: flex;
1337 align-items: center;
1338 gap: 10px;
1339 padding: 12px 20px;
1340 background: transparent;
1341 color: #1d2327;
1342 font-size: 15px;
1343 font-weight: 600;
1344 cursor: pointer;
1345 transition: all 0.3s ease;
1346 border-radius: 6px;
1347 margin: 0;
1348 margin-left: 40px;
1349 border: none;
1350 }
1351 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn .dashicons {
1352 font-size: 18px;
1353 width: 18px;
1354 height: 18px;
1355 color: #6814cd;
1356 transition: transform 0.3s ease;
1357 }
1358 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover {
1359 background: #f2f3f4;
1360 color: #6814cd;
1361 }
1362 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover .dashicons {
1363 transform: translateX(-3px);
1364 }
1365 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:active {
1366 background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%);
1367 }
1368 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-tabs {
1369 display: flex;
1370 gap: 0;
1371 border-bottom: 1px solid #e0e0e0;
1372 }
1373 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible {
1374 position: relative;
1375 display: flex;
1376 align-items: center;
1377 margin-left: auto;
1378 background: transparent;
1379 border-radius: 24px;
1380 overflow: visible;
1381 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1382 }
1383 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input {
1384 width: 0;
1385 opacity: 0;
1386 padding: 0;
1387 border: none;
1388 background: transparent;
1389 font-size: 14px;
1390 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1391 margin-right: 0;
1392 pointer-events: none;
1393 color: #1d2327;
1394 }
1395 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input:focus {
1396 outline: none;
1397 }
1398 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input::placeholder {
1399 color: #8c8f94;
1400 }
1401 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn {
1402 display: inline-flex;
1403 align-items: center;
1404 justify-content: center;
1405 width: 24px;
1406 height: 24px;
1407 padding: 0;
1408 background: transparent;
1409 border: none;
1410 border-radius: 50%;
1411 cursor: pointer;
1412 transition: all 0.2s ease;
1413 flex-shrink: 0;
1414 margin-left: 4px;
1415 }
1416 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn .dashicons {
1417 font-size: 16px;
1418 width: 16px;
1419 height: 16px;
1420 color: #8c8f94;
1421 }
1422 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover {
1423 background: rgba(0, 0, 0, 0.05);
1424 }
1425 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover .dashicons {
1426 color: #d63638;
1427 }
1428 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn {
1429 display: inline-flex;
1430 align-items: center;
1431 justify-content: center;
1432 width: 36px;
1433 height: 36px;
1434 padding: 0;
1435 background: #ffffff;
1436 border: 1px solid #e2e8f0;
1437 border-radius: 8px;
1438 cursor: pointer;
1439 transition: all 0.2s ease;
1440 flex-shrink: 0;
1441 z-index: 2;
1442 }
1443 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons {
1444 font-size: 18px;
1445 width: 18px;
1446 height: 18px;
1447 color: #64748b;
1448 transition: color 0.2s ease;
1449 }
1450 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover {
1451 border-color: #6814cd;
1452 background: rgba(104, 20, 205, 0.04);
1453 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1454 }
1455 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover .dashicons {
1456 color: #6814cd;
1457 }
1458 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:active {
1459 transform: scale(0.96);
1460 }
1461 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.has-value:not(.expanded) .search-toggle-btn {
1462 border-color: #6814cd;
1463 background: rgba(104, 20, 205, 0.04);
1464 }
1465 .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 {
1466 color: #6814cd;
1467 }
1468 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded {
1469 background: #f8f9fa;
1470 border: 1px solid #e0e0e0;
1471 padding-left: 18px;
1472 padding-right: 4px;
1473 border-radius: 24px;
1474 }
1475 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input {
1476 width: 280px;
1477 opacity: 1;
1478 padding: 8px 12px 8px 0;
1479 pointer-events: auto;
1480 box-shadow: none !important;
1481 }
1482 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn {
1483 border-color: #6814cd;
1484 background: rgba(104, 20, 205, 0.08);
1485 border-radius: 50%;
1486 margin-left: 8px;
1487 }
1488 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn .dashicons {
1489 color: #6814cd;
1490 }
1491 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn:hover {
1492 background: rgba(104, 20, 205, 0.12);
1493 }
1494 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded:focus-within {
1495 border-color: #6814cd;
1496 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1497 }
1498 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn {
1499 display: inline-flex;
1500 align-items: center;
1501 justify-content: center;
1502 width: 36px;
1503 height: 36px;
1504 border: 1px solid #e2e8f0;
1505 border-radius: 8px;
1506 background: #ffffff;
1507 color: #64748b;
1508 cursor: pointer;
1509 transition: all 0.2s ease;
1510 }
1511 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn svg {
1512 width: 18px;
1513 height: 18px;
1514 }
1515 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:hover {
1516 border-color: #6814cd;
1517 color: #6814cd;
1518 background: rgba(104, 20, 205, 0.04);
1519 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1520 }
1521 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:active {
1522 transform: scale(0.96);
1523 }
1524 .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .refresh-btn {
1525 margin-left: 10px;
1526 }
1527 .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper {
1528 display: flex;
1529 justify-content: space-between;
1530 align-items: center;
1531 gap: 15px !important;
1532 margin-top: 20px !important;
1533 border-radius: 6px !important;
1534 }
1535 .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper .template-library-categories-count {
1536 display: flex;
1537 align-items: center;
1538 gap: 16px;
1539 }
1540 .jltma-templates .template-library-content .content-header .template-kit-header {
1541 display: flex;
1542 align-items: center;
1543 justify-content: space-between;
1544 height: 46px;
1545 }
1546 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo {
1547 position: absolute;
1548 left: 50%;
1549 transform: translateX(-50%);
1550 display: flex;
1551 align-items: center;
1552 gap: 8px;
1553 color: #6d7882;
1554 }
1555 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo img {
1556 width: 36px !important;
1557 height: 36px !important;
1558 }
1559 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo::after {
1560 content: "Template Kits";
1561 font-size: 24px;
1562 font-weight: 500;
1563 color: #1d2327;
1564 letter-spacing: 0;
1565 line-height: 1;
1566 }
1567 .jltma-templates .template-library-content .content-header .template-kit-header .back-btn {
1568 display: flex;
1569 align-items: center;
1570 font-size: 14px;
1571 line-height: 1.4rem;
1572 font-weight: 500;
1573 color: #6d7882;
1574 cursor: pointer;
1575 }
1576 .jltma-templates .template-library-content .content-header .template-kit-header .back-btn span {
1577 width: 20px;
1578 height: 20px;
1579 font-size: 20px;
1580 }
1581 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper {
1582 display: flex;
1583 align-items: center;
1584 gap: 10px;
1585 }
1586 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn {
1587 display: inline-flex;
1588 align-items: center;
1589 justify-content: center;
1590 cursor: pointer;
1591 height: 36px;
1592 width: 36px;
1593 color: #64748b;
1594 background: #ffffff;
1595 border: 1px solid #e2e8f0;
1596 border-radius: 8px;
1597 transition: all 0.2s ease;
1598 }
1599 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:hover {
1600 border-color: #6814cd;
1601 color: #6814cd;
1602 background: rgba(104, 20, 205, 0.04);
1603 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1604 }
1605 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:active {
1606 transform: scale(0.96);
1607 }
1608 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon {
1609 width: 18px;
1610 height: 18px;
1611 display: flex;
1612 align-items: center;
1613 justify-content: center;
1614 }
1615 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon svg {
1616 width: 18px;
1617 height: 18px;
1618 }
1619 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn {
1620 display: inline-flex;
1621 align-items: center;
1622 justify-content: center;
1623 width: 36px;
1624 height: 36px;
1625 border: 1px solid #e2e8f0;
1626 border-radius: 8px;
1627 background: #ffffff;
1628 color: #64748b;
1629 cursor: pointer;
1630 transition: all 0.2s ease;
1631 }
1632 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn svg {
1633 width: 18px;
1634 height: 18px;
1635 }
1636 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:hover {
1637 border-color: #6814cd;
1638 color: #6814cd;
1639 background: rgba(104, 20, 205, 0.04);
1640 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1641 }
1642 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:active {
1643 transform: scale(0.96);
1644 }
1645 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .refresh-btn .dashicons {
1646 padding: 0;
1647 width: 18px;
1648 height: 18px;
1649 font-size: 18px;
1650 line-height: 1;
1651 }
1652 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container {
1653 position: relative;
1654 display: flex;
1655 align-items: center;
1656 margin-left: auto;
1657 background: transparent;
1658 border-radius: 24px;
1659 overflow: visible;
1660 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1661 }
1662 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container input {
1663 width: 0;
1664 opacity: 0;
1665 padding: 0;
1666 border: none;
1667 background: transparent;
1668 font-size: 14px;
1669 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1670 margin-right: 0;
1671 pointer-events: none;
1672 color: #1d2327;
1673 outline: none;
1674 }
1675 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn {
1676 justify-content: center;
1677 width: 36px;
1678 height: 36px;
1679 padding: 0;
1680 background: #ffffff;
1681 border: 1px solid #e2e8f0;
1682 border-radius: 8px;
1683 cursor: pointer;
1684 transition: all 0.2s ease;
1685 flex-shrink: 0;
1686 z-index: 2;
1687 }
1688 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn span {
1689 font-size: 18px;
1690 width: 18px;
1691 height: 18px;
1692 color: #64748b;
1693 transition: color 0.2s ease;
1694 }
1695 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover {
1696 border-color: #6814cd;
1697 background: rgba(104, 20, 205, 0.04);
1698 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1699 }
1700 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover span {
1701 color: #6814cd;
1702 }
1703 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:active {
1704 transform: scale(0.96);
1705 }
1706 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded {
1707 background: #f8f9fa;
1708 border: 1px solid #e0e0e0;
1709 padding-left: 18px;
1710 padding-right: 4px;
1711 border-radius: 24px;
1712 }
1713 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded input {
1714 width: 280px;
1715 opacity: 1;
1716 padding: 8px 12px 8px 0;
1717 pointer-events: auto;
1718 box-shadow: none !important;
1719 }
1720 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn {
1721 border-color: #6814cd;
1722 background: rgba(104, 20, 205, 0.08);
1723 border-radius: 50%;
1724 margin-left: 8px;
1725 }
1726 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn span {
1727 color: #6814cd;
1728 }
1729 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn:hover {
1730 background: rgba(104, 20, 205, 0.12);
1731 }
1732 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded:focus-within {
1733 border-color: #6814cd;
1734 box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08);
1735 }
1736 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra {
1737 margin-right: 8px;
1738 }
1739 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button {
1740 position: relative;
1741 margin-left: auto;
1742 height: 32px;
1743 padding: 6px 8px;
1744 border-radius: 4px;
1745 cursor: pointer;
1746 border: 1px solid rgb(220, 53, 69);
1747 color: rgb(220, 53, 69);
1748 background-color: #fff;
1749 transition: none;
1750 }
1751 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button span {
1752 font-size: 18px;
1753 width: 18px;
1754 height: 18px;
1755 transition: none;
1756 }
1757 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::before {
1758 content: "";
1759 position: absolute;
1760 top: 32px;
1761 left: 50%;
1762 transform: translateX(-50%) translateY(0);
1763 border: 5px solid transparent;
1764 border-bottom-color: rgb(220, 53, 69);
1765 opacity: 0;
1766 visibility: hidden;
1767 pointer-events: none;
1768 transition: opacity 0.2s ease, transform 0.2s ease;
1769 z-index: 1000;
1770 }
1771 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::after {
1772 content: "Delete this kits";
1773 position: absolute;
1774 top: 42px;
1775 left: 50%;
1776 transform: translateX(-50%) translateY(0);
1777 padding: 6px 12px;
1778 background: rgb(220, 53, 69);
1779 color: #fff;
1780 font-size: 12px;
1781 font-weight: 500;
1782 white-space: nowrap;
1783 border-radius: 4px;
1784 opacity: 0;
1785 visibility: hidden;
1786 pointer-events: none;
1787 transition: opacity 0.2s ease, transform 0.2s ease;
1788 z-index: 1000;
1789 line-height: 1.4;
1790 }
1791 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button {
1792 /* Hover effect */
1793 }
1794 .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button:hover {
1795 color: #fff !important;
1796 background-color: rgb(220, 53, 69);
1797 }
1798 .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 {
1799 opacity: 1;
1800 visibility: visible;
1801 }
1802 .jltma-templates .template-library-content .templates-grid-container {
1803 flex: 1;
1804 position: relative;
1805 }
1806 .jltma-templates .template-library-content .templates-grid-container .required-plugins {
1807 border-radius: 8px;
1808 padding: 15px 20px;
1809 margin-bottom: 30px;
1810 background: #ffecdb;
1811 box-shadow: 0 1px 0 rgba(239, 133, 57, 0.4);
1812 color: #ef8539;
1813 }
1814 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header {
1815 margin-bottom: 0;
1816 display: flex;
1817 justify-content: space-between;
1818 align-items: center;
1819 gap: 32px;
1820 transition: all 0.3s ease-in-out;
1821 }
1822 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left {
1823 margin: 0;
1824 font-size: 16px;
1825 font-weight: 400;
1826 color: #ef8539;
1827 }
1828 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left p {
1829 margin: 0;
1830 color: #757575;
1831 font-size: 14px;
1832 }
1833 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right {
1834 display: flex;
1835 flex-direction: column;
1836 gap: 16px;
1837 }
1838 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button {
1839 color: #ef8539;
1840 }
1841 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement {
1842 padding: 0 12px;
1843 display: flex;
1844 justify-content: center;
1845 align-items: center;
1846 background: #fff;
1847 border: 1px solid #ef8539;
1848 height: 36px;
1849 border-radius: 4px;
1850 transition: none;
1851 }
1852 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement span {
1853 width: 20px;
1854 height: 16px;
1855 font-size: 16px;
1856 margin-right: 4px;
1857 transition: none !important;
1858 }
1859 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement:hover {
1860 background: #ef8539;
1861 color: #fff;
1862 cursor: pointer;
1863 }
1864 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice {
1865 display: flex;
1866 align-items: center;
1867 gap: 10px;
1868 margin-top: 16px;
1869 padding: 12px;
1870 background: #fff3cd;
1871 border: 1px solid #ffc107;
1872 border-radius: 4px;
1873 color: #856404;
1874 font-size: 14px;
1875 }
1876 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice .dashicons {
1877 color: #ffc107;
1878 font-size: 20px;
1879 }
1880 @media (max-width: 768px) {
1881 .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugin-item {
1882 flex-direction: column;
1883 align-items: flex-start;
1884 gap: 10px;
1885 }
1886 .jltma-templates .template-library-content .templates-grid-container .required-plugins .plugin-status {
1887 width: 100%;
1888 }
1889 .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.install-plugin,
1890 .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.activate-plugin {
1891 width: 100%;
1892 }
1893 }
1894 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugins-list {
1895 display: flex;
1896 flex-direction: column;
1897 gap: 12px;
1898 overflow: hidden;
1899 margin-bottom: 30px;
1900 transition: height 0.4s ease-in-out;
1901 }
1902 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item {
1903 display: flex;
1904 justify-content: space-between;
1905 align-items: center;
1906 background: #f8f9fa;
1907 padding: 12px 16px;
1908 border-radius: 6px;
1909 border: 1px solid #e2e4e7;
1910 transition: all 0.2s ease;
1911 gap: 30px;
1912 }
1913 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item:hover {
1914 border-color: #c3c4c7;
1915 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
1916 }
1917 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item.active {
1918 background: #f0f8ff;
1919 border-color: #2271b1;
1920 }
1921 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal label.plugin-checkbox-label {
1922 display: flex;
1923 gap: 12px;
1924 justify-content: flex-start;
1925 align-items: center;
1926 }
1927 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-info {
1928 display: flex;
1929 align-items: center;
1930 gap: 10px;
1931 margin-top: -6px;
1932 }
1933 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-name {
1934 font-weight: 500;
1935 color: #1e1e1e;
1936 font-size: 14px;
1937 }
1938 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-required-badge {
1939 background: #ff6b6b;
1940 color: white;
1941 padding: 2px 8px;
1942 border-radius: 3px;
1943 font-size: 11px;
1944 font-weight: 500;
1945 text-transform: uppercase;
1946 }
1947 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-version {
1948 color: #757575;
1949 font-size: 12px;
1950 }
1951 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-status {
1952 display: flex;
1953 align-items: center;
1954 }
1955 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active {
1956 display: flex;
1957 align-items: center;
1958 gap: 5px;
1959 color: #00a32a;
1960 font-weight: 500;
1961 font-size: 14px;
1962 }
1963 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active .dashicons {
1964 font-size: 20px;
1965 width: 20px;
1966 height: 20px;
1967 }
1968 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button.install-selected-btn,
1969 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .button.activate-plugin {
1970 min-width: 140px;
1971 display: flex;
1972 align-items: center;
1973 justify-content: center;
1974 gap: 5px;
1975 }
1976 .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button .spinner {
1977 margin: 0;
1978 float: none;
1979 }
1980 .jltma-templates .template-library-content .templates-grid-container .templates-grid {
1981 display: grid;
1982 grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
1983 row-gap: 32px;
1984 column-gap: 24px;
1985 }
1986 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item {
1987 background: #fff;
1988 border-radius: 8px;
1989 overflow: hidden;
1990 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
1991 border: 1px solid #f1f1f2;
1992 transition: all 0.3s ease;
1993 }
1994 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview {
1995 position: relative;
1996 height: 200px;
1997 overflow: hidden;
1998 cursor: pointer;
1999 display: block;
2000 }
2001 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview:before {
2002 content: "";
2003 background: #000;
2004 position: absolute;
2005 top: 0;
2006 bottom: 0;
2007 left: 0;
2008 right: 0;
2009 opacity: 0.02;
2010 display: block;
2011 z-index: 7;
2012 transition: opacity 0.2s ease-out;
2013 }
2014 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image {
2015 width: 100%;
2016 height: auto;
2017 display: block;
2018 transform: translateY(0);
2019 transition: transform 4s linear;
2020 will-change: transform;
2021 border-radius: 0;
2022 }
2023 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering {
2024 transform: translateY(var(--translate-y, 0));
2025 }
2026 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering:hover {
2027 transition: transform 4s linear;
2028 }
2029 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .scroll-icon {
2030 z-index: 9;
2031 display: block;
2032 position: absolute;
2033 top: 50%;
2034 right: -25px;
2035 transform: translate(-50%, -50%);
2036 height: 40px;
2037 width: 40px;
2038 opacity: 0.5;
2039 color: #8b8b8b;
2040 animation: floatUpDown 3s ease-in-out infinite;
2041 transition: opacity 0.2s ease-out;
2042 }
2043 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info {
2044 padding: 16px;
2045 }
2046 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title {
2047 display: flex;
2048 justify-content: space-between;
2049 align-items: flex-start;
2050 }
2051 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title h3 {
2052 display: flex;
2053 align-items: self-start;
2054 margin: 0 8px 0 0;
2055 font-size: 14px;
2056 font-weight: 600;
2057 color: #333;
2058 line-height: 1.3;
2059 min-height: 40px;
2060 }
2061 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge,
2062 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge,
2063 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge,
2064 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge {
2065 display: inline-block;
2066 font-size: 10px;
2067 font-weight: 700;
2068 padding: 0 7px;
2069 border-radius: 4px;
2070 text-transform: uppercase;
2071 border: 1px solid transparent;
2072 }
2073 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge {
2074 background: rgba(255, 107, 107, 0.1);
2075 color: #ff6b6b;
2076 border: 1px solid rgba(255, 107, 107, 0.2);
2077 }
2078 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge {
2079 background: rgba(245, 158, 11, 0.1);
2080 color: #ea580c;
2081 border: 1px solid rgba(234, 88, 12, 0.2);
2082 }
2083 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge {
2084 background: rgba(203, 203, 252, 0.49);
2085 color: #5f5ff6;
2086 border: 1px solid rgba(152, 152, 244, 0.5);
2087 }
2088 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title {
2089 /* Imported = kit already in the local library (purchased or
2090 uploaded). Green, the "ready-to-use" confirmation color. */
2091 }
2092 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge {
2093 background: rgba(22, 163, 74, 0.1);
2094 color: #15803d;
2095 border: 1px solid rgba(22, 163, 74, 0.25);
2096 display: inline-flex;
2097 align-items: center;
2098 gap: 4px;
2099 }
2100 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge::before {
2101 content: "";
2102 display: inline-block;
2103 width: 8px;
2104 height: 8px;
2105 background: currentColor;
2106 border-radius: 50%;
2107 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;
2108 -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;
2109 }
2110 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions {
2111 display: flex;
2112 gap: 8px;
2113 }
2114 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button {
2115 display: flex;
2116 justify-content: center;
2117 align-items: center;
2118 flex: 1;
2119 padding: 0 12px;
2120 font-size: 12px;
2121 font-weight: 400;
2122 line-height: 20px;
2123 min-height: 36px;
2124 border-radius: 6px;
2125 border: 1px solid transparent;
2126 cursor: pointer;
2127 transition: all 0.2s ease;
2128 }
2129 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button span {
2130 font-size: 16px;
2131 height: 16px;
2132 transition: none;
2133 margin-right: 4px;
2134 }
2135 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn {
2136 background: transparent;
2137 color: #0e0e2c;
2138 border-color: #0e0e2c;
2139 }
2140 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn:hover {
2141 background: #0e0e2c;
2142 color: #fff;
2143 }
2144 .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 {
2145 background: #0e0e2c;
2146 color: #fff;
2147 border-color: #0e0e2c;
2148 }
2149 .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 {
2150 background: #1a1a44;
2151 border-color: #1a1a44;
2152 }
2153 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn {
2154 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2155 color: #fff;
2156 font-weight: 700;
2157 border-color: transparent;
2158 }
2159 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn:hover {
2160 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2161 border-color: transparent;
2162 }
2163 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview .scroll-icon {
2164 opacity: 0;
2165 }
2166 .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview::before {
2167 opacity: 0;
2168 }
2169 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro {
2170 display: flex;
2171 align-items: center;
2172 gap: 8px;
2173 padding: 8px 16px;
2174 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2175 color: #fff;
2176 border: none;
2177 border-radius: 6px;
2178 font-size: 14px;
2179 font-weight: 500;
2180 cursor: pointer;
2181 transition: all 0.2s ease;
2182 }
2183 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:hover:not(:disabled) {
2184 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2185 transform: translateY(-1px);
2186 }
2187 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:disabled {
2188 opacity: 0.6;
2189 cursor: not-allowed;
2190 }
2191 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons {
2192 font-size: 16px;
2193 width: 16px;
2194 height: 16px;
2195 }
2196 .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons.spinning {
2197 animation: spin 1s linear infinite;
2198 }
2199 .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins,
2200 .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins {
2201 background: #f0f0f0 !important;
2202 color: #999 !important;
2203 cursor: not-allowed !important;
2204 opacity: 0.7;
2205 }
2206 .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins:hover,
2207 .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins:hover {
2208 background: #f0f0f0 !important;
2209 color: #999 !important;
2210 }
2211 .jltma-templates .template-library-content .templates-grid-container .loading-templates {
2212 position: absolute;
2213 top: 0;
2214 left: 0;
2215 width: 100%;
2216 height: 100%;
2217 display: flex;
2218 justify-content: center;
2219 align-items: center;
2220 flex-direction: column;
2221 gap: 20px;
2222 background: #ffffff;
2223 }
2224 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo {
2225 width: 80px;
2226 height: 80px;
2227 display: flex;
2228 align-items: center;
2229 justify-content: center;
2230 animation: pulse 2s ease-in-out infinite;
2231 }
2232 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo img {
2233 width: 100%;
2234 height: auto;
2235 filter: drop-shadow(0 4px 12px rgba(104, 20, 205, 0.3));
2236 }
2237 .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-title {
2238 font-size: 16px;
2239 font-weight: 500;
2240 color: #6814cd;
2241 }
2242 .jltma-templates .template-library-content .templates-grid-container .no-templates {
2243 position: absolute;
2244 top: 0;
2245 left: 0;
2246 width: 100%;
2247 height: 100%;
2248 display: flex;
2249 flex-direction: column;
2250 justify-content: center;
2251 text-align: center;
2252 color: #666;
2253 }
2254 .jltma-templates .template-library-content .templates-grid-container .no-templates h3 {
2255 margin: 0 0 10px 0;
2256 font-size: 18px;
2257 color: #333;
2258 }
2259 .jltma-templates .template-library-content .templates-grid-container .no-templates p {
2260 margin: 0;
2261 font-size: 14px;
2262 }
2263 .jltma-templates .template-library-content .template-pagination {
2264 position: relative;
2265 display: flex;
2266 justify-content: center;
2267 align-items: center;
2268 gap: 20px;
2269 padding: 20px;
2270 border-top: 1px solid #e0e0e0;
2271 }
2272 .jltma-templates .template-library-content .template-pagination .pagination-info .pagination-text {
2273 color: #666;
2274 font-size: 14px;
2275 }
2276 .jltma-templates .template-library-content .template-pagination .pagination-controls {
2277 display: flex;
2278 align-items: center;
2279 gap: 10px;
2280 }
2281 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn {
2282 display: flex;
2283 align-items: center;
2284 gap: 6px;
2285 padding: 8px 16px;
2286 background: #fff;
2287 border: 1px solid #ddd;
2288 border-radius: 6px;
2289 color: #333;
2290 font-size: 14px;
2291 font-weight: 500;
2292 cursor: pointer;
2293 transition: all 0.2s ease;
2294 }
2295 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:hover:not(.disabled):not(:disabled) {
2296 background: #f8f9fa;
2297 border-color: #6a4bff;
2298 color: #6a4bff;
2299 }
2300 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn.disabled, .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:disabled {
2301 opacity: 0.5;
2302 cursor: not-allowed;
2303 }
2304 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn .dashicons {
2305 font-size: 14px;
2306 width: 14px;
2307 height: 14px;
2308 }
2309 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers {
2310 display: flex;
2311 align-items: center;
2312 gap: 6px;
2313 margin: 0 10px;
2314 }
2315 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number {
2316 display: flex;
2317 align-items: center;
2318 justify-content: center;
2319 min-width: 36px;
2320 height: 36px;
2321 padding: 0 8px;
2322 background: #fff;
2323 border: 1px solid #ddd;
2324 border-radius: 6px;
2325 color: #333;
2326 font-size: 14px;
2327 font-weight: 500;
2328 cursor: pointer;
2329 transition: all 0.2s ease;
2330 }
2331 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:hover:not(:disabled) {
2332 background: #f8f9fa;
2333 border-color: #6a4bff;
2334 color: #6a4bff;
2335 }
2336 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number.active {
2337 background: #6a4bff;
2338 border-color: #6a4bff;
2339 color: #fff;
2340 }
2341 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:disabled {
2342 opacity: 0.5;
2343 cursor: not-allowed;
2344 }
2345 .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-ellipsis {
2346 display: flex;
2347 align-items: center;
2348 justify-content: center;
2349 min-width: 36px;
2350 height: 36px;
2351 color: #666;
2352 font-weight: bold;
2353 }
2354 .jltma-templates .template-library-content .template-pagination .pagination-loading {
2355 position: absolute;
2356 top: 0;
2357 left: 0;
2358 right: 0;
2359 bottom: 0;
2360 background: rgba(255, 255, 255, 0.9);
2361 display: flex;
2362 align-items: center;
2363 justify-content: center;
2364 border-radius: 8px;
2365 }
2366 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner {
2367 display: flex;
2368 align-items: center;
2369 gap: 10px;
2370 padding: 15px 20px;
2371 background: #fff;
2372 border-radius: 8px;
2373 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
2374 }
2375 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons {
2376 font-size: 18px;
2377 color: #6a4bff;
2378 }
2379 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons.spinning {
2380 animation: spin 1s linear infinite;
2381 }
2382 .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .loading-text {
2383 color: #333;
2384 font-size: 14px;
2385 font-weight: 500;
2386 }
2387 .jltma-templates .template-library-content .infinite-scroll-sentinel {
2388 width: 100%;
2389 min-height: 40px;
2390 display: flex;
2391 justify-content: center;
2392 align-items: center;
2393 padding: 20px 0 10px;
2394 }
2395 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates {
2396 display: flex;
2397 align-items: center;
2398 justify-content: center;
2399 gap: 10px;
2400 color: #666;
2401 font-size: 14px;
2402 font-weight: 500;
2403 }
2404 .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates .spinning {
2405 animation: spin 1s linear infinite;
2406 }
2407 .jltma-templates .template-library-content .kit-template-grid-footer {
2408 display: flex;
2409 flex-direction: row;
2410 justify-content: space-between;
2411 gap: 20px;
2412 align-items: center;
2413 position: sticky;
2414 bottom: 0;
2415 height: 70px;
2416 padding: 0 20px;
2417 border-top: 1px solid #e0e0e0;
2418 }
2419 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro {
2420 display: flex;
2421 align-items: center;
2422 gap: 8px;
2423 padding: 8px 16px;
2424 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2425 color: #fff;
2426 border: none;
2427 border-radius: 6px;
2428 font-size: 14px;
2429 font-weight: 500;
2430 cursor: pointer;
2431 transition: all 0.2s ease;
2432 }
2433 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:hover:not(:disabled) {
2434 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2435 transform: translateY(-1px);
2436 }
2437 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:disabled {
2438 opacity: 0.6;
2439 cursor: not-allowed;
2440 }
2441 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons {
2442 font-size: 16px;
2443 width: 16px;
2444 height: 16px;
2445 }
2446 .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons.spinning {
2447 animation: spin 1s linear infinite;
2448 }
2449 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn {
2450 display: flex;
2451 align-items: center;
2452 gap: 8px;
2453 padding: 8px 16px;
2454 background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
2455 color: #fff;
2456 border: none;
2457 border-radius: 6px;
2458 font-size: 14px;
2459 font-weight: 700;
2460 cursor: pointer;
2461 transition: all 0.2s ease;
2462 }
2463 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:hover:not(:disabled) {
2464 background: linear-gradient(135deg, #d97706 0%, #c2410c 100%);
2465 }
2466 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:disabled {
2467 opacity: 0.6;
2468 cursor: not-allowed;
2469 }
2470 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons {
2471 font-size: 16px;
2472 width: 16px;
2473 height: 16px;
2474 }
2475 .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons.spinning {
2476 animation: spin 1s linear infinite;
2477 }
2478 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn {
2479 display: flex;
2480 align-items: center;
2481 gap: 8px;
2482 padding: 8px 16px;
2483 background: #6a4bff;
2484 color: #fff;
2485 border: none;
2486 border-radius: 6px;
2487 font-size: 14px;
2488 font-weight: 500;
2489 cursor: pointer;
2490 transition: all 0.2s ease;
2491 }
2492 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:hover:not(:disabled) {
2493 background: #5a3bef;
2494 transform: translateY(-1px);
2495 }
2496 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:disabled {
2497 opacity: 0.6;
2498 cursor: not-allowed;
2499 }
2500 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons {
2501 font-size: 16px;
2502 width: 16px;
2503 height: 16px;
2504 }
2505 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons.spinning {
2506 animation: spin 1s linear infinite;
2507 }
2508 .jltma-templates .template-library-content .kit-template-grid-footer {
2509 /* Disabled state for buttons when plugins are missing */
2510 }
2511 .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins,
2512 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins {
2513 background: #f0f0f0 !important;
2514 color: #999 !important;
2515 cursor: not-allowed !important;
2516 opacity: 0.7;
2517 }
2518 .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins:hover,
2519 .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins:hover {
2520 background: #f0f0f0 !important;
2521 color: #999 !important;
2522 }
2523 .jltma-templates .template-library-content .kit-template-grid-footer .footer-message-section {
2524 display: flex;
2525 flex-direction: row;
2526 gap: 24px;
2527 align-items: center;
2528 justify-content: center;
2529 }
2530 @media (max-width: 1200px) {
2531 .jltma-templates .template-library-sidebar {
2532 width: 250px;
2533 }
2534 .jltma-templates .templates-grid {
2535 grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
2536 gap: 20px !important;
2537 }
2538 }
2539 @media (max-width: 768px) {
2540 .jltma-templates {
2541 flex-direction: column;
2542 }
2543 .jltma-templates .page-importer-layout {
2544 flex-direction: column;
2545 min-height: auto;
2546 }
2547 .jltma-templates .page-importer-layout .page-importer-sidebar {
2548 width: 100%;
2549 height: auto;
2550 position: relative;
2551 border-right: none;
2552 border-bottom: 1px solid #dcdcde;
2553 padding: 20px;
2554 }
2555 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section {
2556 margin-bottom: 20px;
2557 }
2558 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .filter-title {
2559 font-size: 12px;
2560 }
2561 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters {
2562 gap: 6px;
2563 }
2564 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn {
2565 padding: 8px 14px;
2566 font-size: 12px;
2567 }
2568 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills {
2569 gap: 6px;
2570 }
2571 .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn {
2572 padding: 8px 14px;
2573 font-size: 12px;
2574 }
2575 .jltma-templates .page-importer-layout .page-importer-content {
2576 padding: 20px;
2577 }
2578 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input {
2579 width: 180px;
2580 }
2581 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn {
2582 width: 32px;
2583 height: 32px;
2584 }
2585 .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons {
2586 font-size: 16px;
2587 width: 16px;
2588 height: 16px;
2589 }
2590 .jltma-templates .template-library-sidebar {
2591 width: 100%;
2592 max-height: 200px;
2593 order: 2;
2594 }
2595 .jltma-templates .template-library-sidebar .categories-list {
2596 display: flex;
2597 overflow-x: auto;
2598 padding: 0 10px;
2599 }
2600 .jltma-templates .template-library-sidebar .categories-list li {
2601 min-width: 120px;
2602 }
2603 .jltma-templates .template-library-sidebar .categories-list li a,
2604 .jltma-templates .template-library-sidebar .categories-list li button {
2605 padding: 10px 15px;
2606 white-space: nowrap;
2607 }
2608 .jltma-templates .template-library-content {
2609 order: 1;
2610 }
2611 .jltma-templates .template-library-content .templates-grid-container {
2612 padding: 20px;
2613 }
2614 .jltma-templates .template-library-content .templates-grid-container .templates-grid {
2615 grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
2616 }
2617 .jltma-templates .template-library-content .templates-grid-container .template-pagination {
2618 flex-direction: column;
2619 gap: 15px;
2620 }
2621 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers {
2622 margin: 0 5px;
2623 }
2624 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers .pagination-number {
2625 min-width: 32px;
2626 height: 32px;
2627 font-size: 13px;
2628 }
2629 .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-btn {
2630 padding: 6px 12px;
2631 font-size: 13px;
2632 }
2633 }
2634 @media (max-width: 480px) {
2635 .jltma-templates .templates-grid {
2636 grid-template-columns: 1fr !important;
2637 }
2638 }
2639 .jltma-templates .kit-template-importer .kit-template-uploader {
2640 border: 1.5px dashed hsl(214.3, 31.8%, 91.4%);
2641 background: hsl(210, 40%, 98.5%);
2642 border-radius: 10px;
2643 padding: 40px 24px;
2644 cursor: pointer;
2645 transition: all 0.2s ease;
2646 text-align: center;
2647 }
2648 .jltma-templates .kit-template-importer .kit-template-uploader:hover, .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging {
2649 border-color: hsla(222.2, 84%, 4.9%, 0.3);
2650 background: hsl(210, 40%, 97%);
2651 }
2652 .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging {
2653 border-color: hsla(222.2, 84%, 4.9%, 0.5);
2654 background: hsl(210, 40%, 96%);
2655 }
2656 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay {
2657 display: flex;
2658 flex-direction: column;
2659 align-items: center;
2660 gap: 0;
2661 }
2662 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-icon-circle {
2663 width: 48px;
2664 height: 48px;
2665 border-radius: 50%;
2666 border: 1px solid hsl(214.3, 31.8%, 91.4%);
2667 background: #ffffff;
2668 display: flex;
2669 align-items: center;
2670 justify-content: center;
2671 color: hsl(215.4, 16.3%, 46.9%);
2672 margin-bottom: 16px;
2673 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
2674 }
2675 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-title {
2676 margin: 0;
2677 font-size: 14px;
2678 font-weight: 600;
2679 color: hsl(222.2, 84%, 4.9%);
2680 letter-spacing: -0.01em;
2681 }
2682 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-subtitle {
2683 margin: 4px 0 0;
2684 font-size: 13px;
2685 color: hsl(215.4, 16.3%, 46.9%);
2686 }
2687 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn {
2688 margin-top: 16px;
2689 padding: 8px 16px;
2690 font-size: 13px;
2691 font-weight: 500;
2692 color: hsl(222.2, 84%, 4.9%);
2693 background: #ffffff;
2694 border: 1px solid hsl(214.3, 31.8%, 91.4%);
2695 border-radius: 6px;
2696 cursor: pointer;
2697 transition: all 0.15s ease;
2698 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
2699 }
2700 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn:hover {
2701 background: hsl(210, 40%, 96.1%);
2702 border-color: hsl(214.3, 31.8%, 85%);
2703 }
2704 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-hint {
2705 margin: 12px 0 0;
2706 font-size: 12px;
2707 color: hsl(215.4, 16.3%, 60%);
2708 }
2709 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay {
2710 /* In-place confirmation step (replaces the dropzone content while
2711 a file is staged but not yet uploaded). Buttons match the
2712 shared common/dialog.js button sizing so the visual language
2713 stays consistent between modal and inline confirmations. */
2714 }
2715 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-confirm-actions {
2716 display: flex;
2717 justify-content: center;
2718 gap: 10px;
2719 margin-top: 16px;
2720 flex-wrap: wrap;
2721 }
2722 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn {
2723 appearance: none;
2724 display: inline-flex;
2725 align-items: center;
2726 justify-content: center;
2727 height: 36px;
2728 padding: 0 18px;
2729 border: 1px solid transparent;
2730 border-radius: 8px;
2731 font-size: 13px;
2732 font-weight: 600;
2733 line-height: 1;
2734 cursor: pointer;
2735 transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
2736 font-family: inherit;
2737 }
2738 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn:focus-visible {
2739 outline: 2px solid rgba(104, 20, 205, 0.45);
2740 outline-offset: 2px;
2741 }
2742 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary {
2743 background: #ffffff;
2744 border-color: hsl(214.3, 31.8%, 91.4%);
2745 color: hsl(222.2, 84%, 4.9%);
2746 }
2747 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary:hover {
2748 background: hsl(210, 40%, 96.1%);
2749 border-color: hsl(214.3, 31.8%, 85%);
2750 }
2751 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary {
2752 background: #6814cd;
2753 color: #ffffff;
2754 }
2755 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary:hover {
2756 opacity: 0.9;
2757 }
2758 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .upload-error {
2759 display: inline-flex;
2760 align-items: center;
2761 gap: 6px;
2762 margin-top: 12px;
2763 padding: 6px 12px;
2764 font-size: 13px;
2765 color: hsl(0, 84%, 60%);
2766 background: hsla(0, 84%, 60%, 0.08);
2767 border-radius: 6px;
2768 }
2769 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading {
2770 cursor: default;
2771 align-items: stretch;
2772 text-align: left;
2773 padding: 8px 4px;
2774 }
2775 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-title {
2776 text-align: center;
2777 font-size: 17px;
2778 font-weight: 600;
2779 letter-spacing: -0.01em;
2780 margin: 0 0 8px;
2781 }
2782 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-subtitle {
2783 text-align: center;
2784 font-size: 13px;
2785 color: hsl(215.4, 16.3%, 46.9%);
2786 /* Generous breathing room before the stepper so the block
2787 reads as grouped content rather than a wall of text. */
2788 margin: 0 auto 32px;
2789 max-width: 320px;
2790 line-height: 1.55;
2791 }
2792 .jltma-templates .kit-template-importer .kit-template-uploader {
2793 /* Info notice at the bottom of the import stepper. Matches the
2794 "Please do not close this window or refresh the page." banner
2795 pattern used in KitImportModal so both surfaces read the same. */
2796 }
2797 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice {
2798 display: flex;
2799 align-items: center;
2800 gap: 10px;
2801 margin: 28px auto 0;
2802 padding: 12px 16px;
2803 width: 100%;
2804 max-width: 380px;
2805 background: hsl(282, 60%, 97.5%);
2806 border: 1px solid hsl(282, 40%, 90%);
2807 border-radius: 10px;
2808 box-sizing: border-box;
2809 }
2810 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__icon {
2811 display: inline-flex;
2812 align-items: center;
2813 justify-content: center;
2814 flex-shrink: 0;
2815 color: hsl(215.4, 16.3%, 46.9%);
2816 }
2817 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__text {
2818 font-size: 12px;
2819 line-height: 1.45;
2820 color: hsl(215.4, 16.3%, 40%);
2821 }
2822 .jltma-templates .kit-template-importer .kit-template-uploader {
2823 /* Currently-importing card. Horizontal layout: spinner anchors
2824 the eye on the left, text column (eyebrow + filename) reads
2825 right of it. Typography hierarchy makes the filename the
2826 hero — it's the one bit of info the user actually cares
2827 about. Compact vertical rhythm (14px block padding) keeps
2828 the card visually dense so it doesn't feel empty. */
2829 }
2830 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file {
2831 display: flex;
2832 align-items: center;
2833 gap: 14px;
2834 margin: 20px auto 0;
2835 padding: 14px 18px;
2836 width: 100%;
2837 max-width: 380px;
2838 background: linear-gradient(90deg, hsl(282, 100%, 98.5%), hsl(0, 100%, 99%));
2839 border: 1px solid hsl(282, 40%, 90%);
2840 border-radius: 10px;
2841 box-sizing: border-box;
2842 }
2843 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__spinner {
2844 flex-shrink: 0;
2845 width: 32px;
2846 height: 32px;
2847 border-radius: 50%;
2848 border: 3px solid hsl(282, 40%, 90%);
2849 border-top-color: #6814cd;
2850 animation: jltma-uploader-spin 0.8s linear infinite;
2851 }
2852 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__text {
2853 display: flex;
2854 flex-direction: column;
2855 gap: 3px;
2856 min-width: 0; /* let text truncate instead of overflowing */
2857 flex: 1;
2858 }
2859 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__label {
2860 font-size: 10px;
2861 font-weight: 700;
2862 text-transform: uppercase;
2863 letter-spacing: 0.08em;
2864 color: hsl(215.4, 16.3%, 46.9%);
2865 }
2866 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__name {
2867 font-size: 15px;
2868 font-weight: 600;
2869 color: hsl(222.2, 84%, 4.9%);
2870 line-height: 1.3;
2871 overflow: hidden;
2872 text-overflow: ellipsis;
2873 white-space: nowrap;
2874 }
2875 .jltma-templates .kit-template-importer .kit-template-uploader {
2876 /* Stepper inside the upload modal. Mirrors the language of
2877 KitImportModal's vertical-progress-steps so the visual
2878 continues seamlessly after onUploadComplete hands off. */
2879 }
2880 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-steps {
2881 list-style: none;
2882 margin: 0 auto;
2883 padding: 0;
2884 width: 100%;
2885 max-width: 380px;
2886 display: flex;
2887 flex-direction: column;
2888 gap: 12px;
2889 }
2890 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step {
2891 display: flex;
2892 align-items: center;
2893 gap: 14px;
2894 padding: 14px 16px;
2895 border-radius: 10px;
2896 background: hsl(210, 40%, 98.5%);
2897 transition: background 0.2s ease;
2898 }
2899 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active {
2900 background: linear-gradient(90deg, hsl(282, 100%, 97%), hsl(0, 100%, 98%));
2901 }
2902 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-complete {
2903 background: hsl(282, 60%, 97%);
2904 }
2905 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending {
2906 background: hsl(210, 40%, 98.5%);
2907 opacity: 0.7;
2908 }
2909 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__indicator {
2910 width: 28px;
2911 height: 28px;
2912 border-radius: 50%;
2913 display: inline-flex;
2914 align-items: center;
2915 justify-content: center;
2916 flex-shrink: 0;
2917 background: #6814cd;
2918 color: #ffffff;
2919 }
2920 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__indicator {
2921 background: hsl(214.3, 31.8%, 91.4%);
2922 color: hsl(215.4, 16.3%, 46.9%);
2923 }
2924 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__dot {
2925 width: 6px;
2926 height: 6px;
2927 border-radius: 50%;
2928 background: currentColor;
2929 }
2930 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__body {
2931 display: flex;
2932 flex-direction: column;
2933 gap: 2px;
2934 }
2935 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__title {
2936 font-size: 13px;
2937 font-weight: 600;
2938 color: hsl(222.2, 84%, 4.9%);
2939 }
2940 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__title {
2941 color: hsl(215.4, 16.3%, 46.9%);
2942 }
2943 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__status {
2944 font-size: 12px;
2945 font-weight: 500;
2946 color: #6814cd;
2947 }
2948 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active .uploader-step__status {
2949 color: #d91b5c;
2950 }
2951 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__status {
2952 color: hsl(215.4, 16.3%, 60%);
2953 }
2954 .jltma-templates .kit-template-importer .kit-template-uploader {
2955 /* Spinner (shared between loader icon-circle and step indicators) */
2956 }
2957 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-spinner {
2958 width: 14px;
2959 height: 14px;
2960 border-radius: 50%;
2961 border: 2px solid rgba(255, 255, 255, 0.35);
2962 border-top-color: #ffffff;
2963 animation: jltma-uploader-spin 0.8s linear infinite;
2964 }
2965 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading {
2966 position: relative;
2967 border-color: hsl(214.3, 31.8%, 91.4%);
2968 }
2969 .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading .uploader-spinner {
2970 width: 22px;
2971 height: 22px;
2972 border: 2px solid hsl(214.3, 31.8%, 91.4%);
2973 border-top-color: hsl(222.2, 84%, 4.9%);
2974 }
2975 @keyframes jltma-uploader-spin {
2976 to {
2977 transform: rotate(360deg);
2978 }
2979 }
2980 .jltma-templates .kit-template-importer .kit-upload-success {
2981 display: flex;
2982 align-items: center;
2983 gap: 12px;
2984 margin-top: 16px;
2985 padding: 12px 16px;
2986 background: hsla(142, 76%, 36%, 0.08);
2987 border: 1px solid hsla(142, 76%, 36%, 0.2);
2988 border-radius: 8px;
2989 }
2990 .jltma-templates .kit-template-importer .kit-upload-success .success-icon {
2991 flex-shrink: 0;
2992 color: hsl(142, 76%, 36%);
2993 }
2994 .jltma-templates .kit-template-importer .kit-upload-success .success-info h4 {
2995 margin: 0;
2996 font-size: 13px;
2997 font-weight: 600;
2998 color: hsl(222.2, 84%, 4.9%);
2999 }
3000 .jltma-templates .kit-template-importer .kit-upload-success .success-info p {
3001 margin: 2px 0 0;
3002 font-size: 12px;
3003 color: hsl(215.4, 16.3%, 46.9%);
3004 }
3005 .jltma-templates .kit-template-importer .kit-template-grid {
3006 padding: 0 20px 20px;
3007 }
3008 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info {
3009 background: #fff;
3010 border: 1px solid #e0e0e0;
3011 border-radius: 8px;
3012 padding: 20px;
3013 }
3014 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info h4 {
3015 margin: 0 0 10px 0;
3016 color: #333;
3017 font-size: 18px;
3018 }
3019 .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info p {
3020 margin: 0;
3021 color: #666;
3022 font-size: 14px;
3023 }
3024
3025 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates,
3026 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates {
3027 background: #f1f3f4;
3028 padding-right: 20px;
3029 }
3030 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content,
3031 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content {
3032 margin: 20px 0;
3033 box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
3034 border-radius: 12px;
3035 overflow: hidden;
3036 min-height: calc(100vh - 72px);
3037 }
3038 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header,
3039 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header {
3040 padding: 20px;
3041 border-bottom: 1px solid #f1f1f2;
3042 background: #fff;
3043 }
3044 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs,
3045 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs {
3046 display: flex;
3047 gap: 0;
3048 border-bottom: 1px solid #e0e0e0;
3049 }
3050 #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container,
3051 #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container {
3052 padding: 20px;
3053 }
3054
3055 .jltma-page-importer-btn-active .jltma-template-page-importer .template-library-header-logo {
3056 margin-left: 20px;
3057 }
3058 .jltma-page-importer-btn-active .jltma-template-page-importer .template-tabs {
3059 position: absolute;
3060 left: 50%;
3061 transform: translateX(-50%);
3062 }
3063
3064 .swal2-container.fade.in {
3065 z-index: 9999999;
3066 }
3067
3068 .template-preview-wrapper {
3069 display: flex;
3070 flex-direction: column;
3071 height: 100%;
3072 background: #f1f3f4;
3073 }
3074
3075 .template-preview-toolbar {
3076 display: flex;
3077 align-items: center;
3078 justify-content: space-between;
3079 padding: 12px 24px;
3080 background: #0c0d0e;
3081 border-radius: 8px 8px 0 0;
3082 min-height: 60px;
3083 position: relative;
3084 }
3085 .template-preview-toolbar .template-preview-toolbar-left {
3086 flex: 0 0 auto;
3087 min-width: 200px;
3088 }
3089 .template-preview-toolbar .template-preview-toolbar-left .template-preview-title {
3090 font-size: 16px;
3091 font-weight: 600;
3092 color: #fff;
3093 line-height: 1.5;
3094 }
3095 .template-preview-toolbar .template-preview-toolbar-center {
3096 position: absolute;
3097 left: 50%;
3098 transform: translateX(-50%);
3099 display: flex;
3100 justify-content: center;
3101 align-items: center;
3102 }
3103 .template-preview-toolbar .template-preview-toolbar-right {
3104 flex: 0 0 auto;
3105 }
3106
3107 .template-preview-devices {
3108 display: flex;
3109 align-items: center;
3110 gap: 8px;
3111 background: rgba(255, 255, 255, 0.05);
3112 padding: 4px;
3113 border-radius: 6px;
3114 }
3115
3116 .template-preview-device-btn {
3117 display: inline-flex;
3118 justify-content: center;
3119 align-items: center;
3120 width: 40px;
3121 height: 40px;
3122 padding: 0;
3123 border-radius: 4px;
3124 border: none;
3125 background: transparent;
3126 cursor: pointer;
3127 transition: all 0.3s ease;
3128 color: #8892a0;
3129 }
3130 .template-preview-device-btn svg {
3131 width: 20px;
3132 height: 20px;
3133 pointer-events: none;
3134 transition: all 0.3s ease;
3135 }
3136 .template-preview-device-btn:hover {
3137 background: rgba(104, 20, 205, 0.15);
3138 color: #6814cd;
3139 transform: translateY(-1px);
3140 }
3141 .template-preview-device-btn:hover svg {
3142 stroke: #6814cd;
3143 }
3144 .template-preview-device-btn.active {
3145 background: #6814cd;
3146 color: #fff;
3147 }
3148 .template-preview-device-btn.active svg {
3149 stroke: #fff;
3150 }
3151 .template-preview-device-btn.active:hover {
3152 background: #5610a8;
3153 color: #fff;
3154 }
3155 .template-preview-device-btn.active:hover svg {
3156 stroke: #fff;
3157 }
3158
3159 .template-preview-container {
3160 flex: 1;
3161 display: flex;
3162 justify-content: center;
3163 overflow-x: hidden;
3164 transition: all 0.3s;
3165 }
3166
3167 .template-preview-loading {
3168 display: flex;
3169 flex-direction: column;
3170 align-items: center;
3171 justify-content: center;
3172 gap: 16px;
3173 }
3174 .template-preview-loading .spinner {
3175 margin: 0;
3176 }
3177 .template-preview-loading p {
3178 margin: 0;
3179 color: #666;
3180 font-size: 14px;
3181 }
3182
3183 .folded .jltma-template-library {
3184 margin-left: -20px;
3185 }
3186
3187 #wpbody .jltma-template-library {
3188 margin-top: 0;
3189 }
3190
3191 .master-addons_page_jltma-template-library .notice:not([class*=jltma-]),
3192 .master-addons_page_jltma-template-library .error:not([class*=jltma-]),
3193 .master-addons_page_jltma-template-library .updated:not([class*=jltma-]),
3194 .master-addons_page_jltma-template-kits .notice:not([class*=jltma-]),
3195 .master-addons_page_jltma-template-kits .error:not([class*=jltma-]),
3196 .master-addons_page_jltma-template-kits .updated:not([class*=jltma-]) {
3197 display: none !important;
3198 }
3199 .master-addons_page_jltma-template-library .wrap,
3200 .master-addons_page_jltma-template-kits .wrap {
3201 margin: 0 !important;
3202 }
3203 .master-addons_page_jltma-template-library #wpbody-content,
3204 .master-addons_page_jltma-template-kits #wpbody-content {
3205 padding-bottom: 0;
3206 }
3207 .master-addons_page_jltma-template-library #wpfooter,
3208 .master-addons_page_jltma-template-kits #wpfooter {
3209 display: none;
3210 }
3211
3212 .favorites-section {
3213 margin-bottom: 24px !important;
3214 }
3215 .favorites-section .favorites-filter-btn {
3216 width: 100%;
3217 display: flex;
3218 align-items: center;
3219 gap: 12px;
3220 padding: 12px 16px;
3221 background: #f8f9fa;
3222 border: 1px solid #e0e0e0;
3223 border-radius: 8px;
3224 cursor: pointer;
3225 transition: all 0.3s ease;
3226 font-size: 15px;
3227 font-weight: 500;
3228 color: #1d2327;
3229 }
3230 .favorites-section .favorites-filter-btn .eicon-heart-o {
3231 font-size: 18px;
3232 color: #6814cd;
3233 }
3234 .favorites-section .favorites-filter-btn .favorites-label {
3235 flex: 1;
3236 text-align: left;
3237 }
3238 .favorites-section .favorites-filter-btn .favorites-label .favorites-count {
3239 font-weight: 600;
3240 color: #6814cd;
3241 margin-left: 4px;
3242 }
3243 .favorites-section .favorites-filter-btn:hover {
3244 background: #f0f4ff;
3245 border-color: #6814cd;
3246 }
3247 .favorites-section .favorites-filter-btn.active {
3248 background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%);
3249 }
3250 .favorites-section .favorites-filter-btn.active .eicon-heart-o {
3251 color: #f50a7f;
3252 }
3253 .favorites-section .favorites-filter-btn.active .favorites-label {
3254 color: #6814cd;
3255 }
3256
3257 .template-favorite-btn {
3258 display: inline-flex;
3259 align-items: center;
3260 justify-content: center;
3261 background: transparent;
3262 border: none;
3263 cursor: pointer;
3264 padding: 4px;
3265 margin-left: 8px;
3266 border-radius: 50%;
3267 transition: all 0.2s ease;
3268 vertical-align: middle;
3269 }
3270 .template-favorite-btn .eicon-heart-o,
3271 .template-favorite-btn .eicon-heart {
3272 font-size: 16px;
3273 color: #6d7882;
3274 transition: all 0.2s ease;
3275 margin-top: -2.5px;
3276 }
3277 .template-favorite-btn:hover {
3278 background: rgba(104, 20, 205, 0.08);
3279 }
3280 .template-favorite-btn:hover .eicon-heart-o,
3281 .template-favorite-btn:hover .eicon-heart {
3282 color: #6814cd;
3283 }
3284 .template-favorite-btn.is-favorite .eicon-heart {
3285 color: #f50a7f;
3286 animation: heartbeat 0.3s ease;
3287 }
3288 .template-favorite-btn.is-favorite:hover .eicon-heart {
3289 color: #d00970;
3290 }
3291 .template-favorite-btn.has-tooltip {
3292 position: relative;
3293 }
3294 .template-favorite-btn.has-tooltip::after {
3295 content: attr(data-tooltip);
3296 position: absolute;
3297 bottom: 100%;
3298 left: 50%;
3299 transform: translateX(-50%) translateY(-8px);
3300 padding: 6px 12px;
3301 background: rgba(0, 0, 0, 0.9);
3302 color: #fff;
3303 font-size: 12px;
3304 font-weight: 500;
3305 white-space: nowrap;
3306 border-radius: 4px;
3307 opacity: 0;
3308 visibility: hidden;
3309 pointer-events: none;
3310 transition: all 0.2s ease;
3311 z-index: 1000;
3312 line-height: 1.4;
3313 }
3314 .template-favorite-btn.has-tooltip::before {
3315 content: "";
3316 position: absolute;
3317 bottom: 100%;
3318 left: 50%;
3319 transform: translateX(-50%) translateY(2px);
3320 border: 5px solid transparent;
3321 border-top-color: rgba(0, 0, 0, 0.9);
3322 opacity: 0;
3323 visibility: hidden;
3324 pointer-events: none;
3325 transition: all 0.2s ease;
3326 z-index: 1000;
3327 }
3328 .template-favorite-btn.has-tooltip:hover::after, .template-favorite-btn.has-tooltip:hover::before {
3329 opacity: 1;
3330 visibility: visible;
3331 }
3332 .template-favorite-btn.has-tooltip:hover::after {
3333 transform: translateX(-50%) translateY(-12px);
3334 }
3335 .template-favorite-btn.has-tooltip:hover::before {
3336 transform: translateX(-50%) translateY(-2px);
3337 }
3338
3339 .swal2-modal button {
3340 outline: none;
3341 }
3342 .swal2-modal .confetti-container {
3343 position: absolute;
3344 top: 0;
3345 left: 0;
3346 width: 100%;
3347 height: 100%;
3348 overflow: hidden;
3349 pointer-events: none;
3350 }
3351 .swal2-modal .confetti-container .confetti-piece {
3352 position: absolute;
3353 top: -10%;
3354 width: 10px;
3355 height: 10px;
3356 transform-origin: bottom;
3357 animation: fall 3s ease-in forwards;
3358 }
3359 .swal2-modal .jltma-uploading-wrapper {
3360 position: relative;
3361 display: flex;
3362 flex-direction: column;
3363 align-items: center;
3364 margin-top: 10px;
3365 }
3366 .swal2-modal .jltma-uploading-wrapper .swal2-loader {
3367 border: 4px solid #f3f3f3;
3368 border-top: 4px solid #3085d6;
3369 border-radius: 50%;
3370 width: 50px;
3371 height: 50px;
3372 animation: spin 1s linear infinite;
3373 }
3374 .swal2-modal .jltma-uploading-wrapper h2 {
3375 font-size: 32px;
3376 font-weight: 700;
3377 color: #1d2327;
3378 letter-spacing: -0.5px;
3379 }
3380 .swal2-modal .jltma-uploading-wrapper p {
3381 font-size: 16px;
3382 color: #6d7882;
3383 line-height: 1.5;
3384 margin: 0 0 40px 0;
3385 }
3386 .swal2-modal:has(.jltma-uploading-wrapper) h2 {
3387 width: max-content !important;
3388 }
3389 .swal2-modal:has(.confetti-container) {
3390 position: relative;
3391 }
3392 .swal2-modal:has(.confetti-container) .swal2-content {
3393 position: static;
3394 }
3395
3396 @keyframes spin {
3397 0% {
3398 transform: rotate(0deg);
3399 }
3400 100% {
3401 transform: rotate(360deg);
3402 }
3403 }
3404 @keyframes floatUpDown {
3405 0% {
3406 transform: translate(-50%, -50%) translateY(0);
3407 }
3408 50% {
3409 transform: translate(-50%, -50%) translateY(-10px);
3410 }
3411 100% {
3412 transform: translate(-50%, -50%) translateY(0);
3413 }
3414 }
3415 @keyframes fadeInSmooth {
3416 0% {
3417 opacity: 0;
3418 }
3419 100% {
3420 opacity: 1;
3421 }
3422 }
3423 @keyframes fadeOutSmooth {
3424 0% {
3425 opacity: 1;
3426 }
3427 100% {
3428 opacity: 0;
3429 }
3430 }
3431 @keyframes heartbeat {
3432 0%, 100% {
3433 transform: scale(1);
3434 }
3435 25% {
3436 transform: scale(1.2);
3437 }
3438 50% {
3439 transform: scale(1.1);
3440 }
3441 75% {
3442 transform: scale(1.15);
3443 }
3444 }
3445 @keyframes fall {
3446 0% {
3447 transform: translateY(0) rotateZ(0deg);
3448 opacity: 1;
3449 }
3450 100% {
3451 transform: translateY(100vh) rotateZ(360deg);
3452 opacity: 0;
3453 }
3454 }
3455 .template-library-react-app .wp-components-button.is-primary {
3456 background-color: #6a4bff;
3457 border-color: #6a4bff;
3458 }
3459 .template-library-react-app .wp-components-button.is-primary:hover:not(:disabled) {
3460 background-color: #5130ef;
3461 border-color: #5130ef;
3462 }
3463 .template-library-react-app .components-search-control .components-search-control__input {
3464 border-color: #ddd;
3465 }
3466 .template-library-react-app .components-search-control .components-search-control__input:focus {
3467 border-color: #6a4bff;
3468 box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1);
3469 }
3470
3471 .template-importer-modal {
3472 position: fixed;
3473 top: 0;
3474 left: 0;
3475 right: 0;
3476 bottom: 0;
3477 z-index: 999999;
3478 display: flex;
3479 justify-content: center;
3480 align-items: center;
3481 }
3482 .template-importer-modal .modal-overlay {
3483 position: absolute;
3484 top: 0;
3485 left: 0;
3486 right: 0;
3487 bottom: 0;
3488 background: rgba(0, 0, 0, 0.8);
3489 }
3490 .template-importer-modal .modal-content {
3491 position: relative;
3492 max-width: 600px;
3493 width: 90%;
3494 max-height: 80vh;
3495 overflow: hidden;
3496 z-index: 10001;
3497 }
3498 .template-importer-modal .modal-content .modal-header {
3499 display: flex;
3500 align-items: center;
3501 justify-content: space-between;
3502 padding: 22px 32px;
3503 }
3504 .template-importer-modal .modal-content .modal-header h3 {
3505 margin: 0;
3506 font-size: 18px;
3507 font-weight: 600;
3508 }
3509 .template-importer-modal .modal-content .modal-header .modal-close {
3510 background: none;
3511 border: none;
3512 padding: 8px;
3513 cursor: pointer;
3514 border-radius: 4px;
3515 display: flex;
3516 align-items: center;
3517 justify-content: center;
3518 transition: background-color 0.2s;
3519 background: transparent;
3520 }
3521 .template-importer-modal .modal-content .modal-header .modal-close .dashicons {
3522 font-size: 20px;
3523 width: 20px;
3524 height: 20px;
3525 }
3526 .template-importer-modal .modal-content .modal-body {
3527 padding: 32px;
3528 }
3529 .template-importer-modal.template-kit .modal-overlay {
3530 background: rgba(0, 0, 0, 0.5);
3531 backdrop-filter: blur(4px);
3532 }
3533 .template-importer-modal.template-kit .modal-content {
3534 background: #ffffff;
3535 border: 1px solid hsl(214.3, 31.8%, 91.4%);
3536 border-radius: 12px;
3537 box-shadow: 0 16px 70px -12px rgba(0, 0, 0, 0.25);
3538 max-width: 520px;
3539 }
3540 .template-importer-modal.template-kit .modal-content .modal-header {
3541 border-bottom: 1px solid hsl(220, 13%, 91%);
3542 padding: 16px;
3543 }
3544 .template-importer-modal.template-kit .modal-content .modal-header h3 {
3545 color: hsl(222.2, 84%, 4.9%);
3546 font-size: 16px;
3547 font-weight: 600;
3548 letter-spacing: -0.025em;
3549 }
3550 .template-importer-modal.template-kit .modal-content .modal-header .modal-close {
3551 color: hsl(215.4, 16.3%, 46.9%);
3552 border-radius: 6px;
3553 width: 32px;
3554 height: 32px;
3555 }
3556 .template-importer-modal.template-kit .modal-content .modal-header .modal-close:hover {
3557 background: hsl(210, 40%, 96.1%);
3558 color: hsl(222.2, 84%, 4.9%);
3559 }
3560 .template-importer-modal.template-kit .modal-content .modal-body {
3561 padding: 16px;
3562 }
3563 .template-importer-modal.required-plugins-modal .modal-content {
3564 border-radius: 12px;
3565 background: #fff;
3566 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
3567 }
3568 .template-importer-modal.required-plugins-modal .modal-content .modal-header {
3569 border-bottom: 1px solid #e2e8f0;
3570 background: #f8fafc;
3571 }
3572 .template-importer-modal.required-plugins-modal .modal-content .modal-header h3 {
3573 color: #1a202c;
3574 }
3575 .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close {
3576 color: #64748b;
3577 }
3578 .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close:hover {
3579 background: #e2e8f0;
3580 }
3581 .template-importer-modal.required-plugins-modal .modal-body p {
3582 margin-top: 0;
3583 }
3584 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item {
3585 color: #d9534f;
3586 background: linear-gradient(180deg, rgba(217, 83, 79, 0.06), rgba(217, 83, 79, 0.03));
3587 border: 1px solid rgba(217, 83, 79, 0.15);
3588 }
3589 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label {
3590 display: flex;
3591 align-items: center;
3592 gap: 12px;
3593 }
3594 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info {
3595 margin: 0;
3596 }
3597 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox] {
3598 margin: 0;
3599 appearance: none;
3600 width: 16px;
3601 height: 16px;
3602 border: 1.5px solid #cbd5e1;
3603 border-radius: 50px;
3604 position: relative;
3605 cursor: pointer;
3606 outline: none;
3607 transition: all 0.2s ease;
3608 background: #fff;
3609 outline: none;
3610 }
3611 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:focus {
3612 box-shadow: none;
3613 }
3614 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked {
3615 border-color: #4caf50;
3616 background-color: #4caf50;
3617 }
3618 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked::after {
3619 content: "";
3620 position: absolute;
3621 top: 2px;
3622 left: 5px;
3623 width: 3px;
3624 height: 7px;
3625 border: solid white;
3626 border-width: 0 2px 2px 0;
3627 transform: rotate(45deg);
3628 }
3629 .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item:has(input[type=checkbox]:checked) {
3630 background: #f0f8ff;
3631 border-color: #2271b1;
3632 }
3633 .template-importer-modal.required-plugins-modal .modal-body .install-selected-btn {
3634 transition: all 0.5s ease-in;
3635 }
3636
3637 .jltma-video-modal-overlay {
3638 position: fixed;
3639 top: 0;
3640 left: 0;
3641 right: 0;
3642 bottom: 0;
3643 z-index: 999999;
3644 display: flex;
3645 align-items: center;
3646 justify-content: center;
3647 background: rgba(0, 0, 0, 0.6);
3648 backdrop-filter: blur(4px);
3649 animation: jltmaVideoFadeIn 0.2s ease;
3650 }
3651
3652 @keyframes jltmaVideoFadeIn {
3653 from {
3654 opacity: 0;
3655 }
3656 to {
3657 opacity: 1;
3658 }
3659 }
3660 .jltma-video-modal-content {
3661 position: relative;
3662 width: 90%;
3663 max-width: 860px;
3664 background: #000;
3665 border-radius: 12px;
3666 overflow: visible;
3667 box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4);
3668 animation: modalSlideUp 0.3s ease;
3669 }
3670
3671 .jltma-video-modal-close {
3672 position: absolute;
3673 top: -44px;
3674 right: 0;
3675 width: 34px;
3676 height: 34px;
3677 display: flex;
3678 align-items: center;
3679 justify-content: center;
3680 background: rgba(255, 255, 255, 0.15);
3681 border: 1px solid rgba(255, 255, 255, 0.2);
3682 border-radius: 50%;
3683 color: #fff;
3684 cursor: pointer;
3685 transition: all 0.2s ease;
3686 z-index: 10;
3687 }
3688 .jltma-video-modal-close .dashicons {
3689 font-size: 18px;
3690 width: 18px;
3691 height: 18px;
3692 }
3693 .jltma-video-modal-close:hover {
3694 background: rgba(255, 255, 255, 0.3);
3695 transform: scale(1.1);
3696 }
3697
3698 .jltma-video-wrapper {
3699 position: relative;
3700 padding-bottom: 56.25%;
3701 height: 0;
3702 }
3703 .jltma-video-wrapper iframe {
3704 position: absolute;
3705 top: 0;
3706 left: 0;
3707 width: 100%;
3708 height: 100%;
3709 border: none;
3710 }
3711
3712 @keyframes modalSlideUp {
3713 from {
3714 opacity: 0;
3715 transform: translateY(20px) scale(0.97);
3716 }
3717 to {
3718 opacity: 1;
3719 transform: translateY(0) scale(1);
3720 }
3721 }