@charset "UTF-8"; .jltma-page-import-modal { position: fixed; top: 32px; left: 160px; right: 0; bottom: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; } .folded .jltma-page-import-modal { left: 36px; } @media screen and (max-width: 782px) { .jltma-page-import-modal { top: 46px; left: 0; } } .jltma-page-import-modal .modal-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fbfbfb; backdrop-filter: blur(2px); z-index: 1; } .jltma-page-import-modal .modal-content { position: relative; background: #ffffff; border-radius: 12px; z-index: 2; box-shadow: 0px 16px 32px -10px rgba(10, 13, 20, 0.1), 0px 3px 8px -5px rgba(10, 13, 20, 0.04); text-align: center; animation: modalFadeIn 0.3s ease; overflow: hidden; } .jltma-page-import-modal .modal-close-btn { position: absolute; top: 12px; right: 12px; z-index: 20; width: 32px; height: 32px; border: none; background: rgba(0, 0, 0, 0.05); border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s ease; padding: 0; } .jltma-page-import-modal .modal-close-btn .dashicons { font-size: 18px; width: 18px; height: 18px; color: #6d7882; } .jltma-page-import-modal .modal-close-btn:hover { background: rgba(0, 0, 0, 0.1); } .jltma-page-import-modal .modal-close-btn:hover .dashicons { color: #1d2327; } .jltma-page-import-modal .confetti-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; pointer-events: none; z-index: 10; } .jltma-page-import-modal .confetti-piece { position: absolute; width: 6px; height: 6px; border-radius: 1px; top: -10px; opacity: 0; animation: confettiFall 3.5s ease-in infinite; } @keyframes confettiFall { 0% { transform: translateY(0) rotate(0deg); opacity: 1; } 100% { transform: translateY(100vh) rotate(720deg); opacity: 0; } } .jltma-page-import-modal .import-plugins-container { padding: 30px; } .jltma-page-import-modal .import-plugins-container .plugins-header { text-align: center; margin-bottom: 30px; } .jltma-page-import-modal .import-plugins-container .plugins-header .header-icon { width: 80px; height: 80px; margin: 0 auto 20px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #6814cd 0%, #f50a7f 100%); border-radius: 50%; } .jltma-page-import-modal .import-plugins-container .plugins-header .header-icon .dashicons { font-size: 40px; width: 40px; height: 40px; color: #fff; } .jltma-page-import-modal .import-plugins-container .plugins-header h2 { font-size: 24px; font-weight: 600; color: #1d2327; margin: 0 0 10px; } .jltma-page-import-modal .import-plugins-container .plugins-header p { font-size: 14px; color: #6d7882; margin: 0; line-height: 1.6; } .jltma-page-import-modal .import-plugins-container .required-plugins-list { margin-bottom: 30px; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item { display: flex; align-items: center; justify-content: space-between; padding: 15px; margin-bottom: 10px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 6px; transition: all 0.2s ease; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item:hover { background: #f1f5f9; border-color: #cbd5e0; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item.active { background: #f0fdf4; border-color: #86efac; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label { display: flex; align-items: center; gap: 12px; cursor: pointer; flex: 1; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox] { width: 18px; height: 18px; cursor: pointer; accent-color: #6814cd; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:disabled { cursor: not-allowed; opacity: 0.5; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info { display: flex; flex-direction: column; gap: 4px; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info .plugin-name { font-size: 14px; font-weight: 500; color: #1d2327; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info .plugin-version { font-size: 12px; color: #8c8f94; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status { display: flex; align-items: center; font-size: 13px; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-active { display: flex; align-items: center; gap: 4px; color: #22c55e; font-weight: 500; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-active .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-installed { color: #f59e0b; font-weight: 500; } .jltma-page-import-modal .import-plugins-container .required-plugins-list .required-plugin-item .plugin-status .status-not-installed { color: #8c8f94; font-weight: 500; } .jltma-page-import-modal .import-plugins-container .plugins-actions { display: flex; gap: 12px; justify-content: flex-end; padding-top: 20px; border-top: 1px solid #e2e8f0; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button { padding: 10px 20px; font-size: 14px; font-weight: 500; border-radius: 6px; cursor: pointer; transition: all 0.2s ease; border: none; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); color: #fff; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary:hover:not(:disabled) { opacity: 0.9; transform: translateY(-1px); } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-primary:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary { background: #fff; border: 1px solid #dcdcde; color: #6d7882; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary:hover:not(:disabled) { border-color: #6814cd; color: #6814cd; } .jltma-page-import-modal .import-plugins-container .plugins-actions .button.button-secondary:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-page-import-modal .import-step-container { padding: 20px 0; } .jltma-page-import-modal .import-step-container .step-icon { width: 80px; height: 80px; margin: 0 auto 30px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); border-radius: 50%; } .jltma-page-import-modal .import-step-container .step-icon .dashicons { font-size: 40px; width: 40px; height: 40px; color: #fff; } .jltma-page-import-modal .import-step-container .step-icon .dashicons.spinning { animation: spin 1.5s linear infinite; } .jltma-page-import-modal .import-step-container h2 { font-size: 24px; font-weight: 600; color: #1d2327; margin: 0 0 15px; } .jltma-page-import-modal .import-step-container p { font-size: 15px; color: #6d7882; line-height: 1.6; margin: 0 0 30px; } .jltma-page-import-modal .import-step-container .progress-bar { width: 100%; height: 6px; background: #e0e0e0; border-radius: 3px; overflow: hidden; margin-bottom: 15px; } .jltma-page-import-modal .import-step-container .progress-bar .progress-fill { height: 100%; background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); transition: width 0.5s ease; } .jltma-page-import-modal .import-step-container .step-indicator { font-size: 13px; color: #8c8f94; font-weight: 500; } .jltma-page-import-modal .import-progress-container { padding: 36px 40px 30px; text-align: center; position: relative; overflow: hidden; } .jltma-page-import-modal .import-progress-container::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, #6814cd, #f50a7f, #6814cd); background-size: 200% 100%; animation: jltmaShimmerBar 2.5s ease infinite; } .jltma-page-import-modal .import-progress-container h2 { font-size: 20px; font-weight: 600; color: #1d2327; margin: 0 0 6px 0; letter-spacing: -0.2px; } .jltma-page-import-modal .import-progress-container .import-progress-description { font-size: 13px; color: #9ca3af; margin: 0 0 24px 0; line-height: 1.5; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps { display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px; text-align: left; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-radius: 10px; transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1); animation: jltmaStepReveal 0.4s ease both; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(1) { animation-delay: 0s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(2) { animation-delay: 0.06s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(3) { animation-delay: 0.12s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(4) { animation-delay: 0.18s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(5) { animation-delay: 0.24s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step:nth-child(6) { animation-delay: 0.3s; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon { width: 36px; height: 36px; min-width: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; 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); position: relative; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon .dashicons { font-size: 16px; width: 16px; height: 16px; line-height: 1; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-indicator-icon .step-number { font-size: 13px; font-weight: 600; color: inherit; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content .step-title { font-size: 14px; font-weight: 500; color: #1d2327; margin: 0; line-height: 1.3; transition: all 0.3s ease; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step .step-content .step-status { font-size: 12px; color: #9ca3af; margin: 0; line-height: 1.3; font-weight: 500; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending { opacity: 0.45; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending .step-indicator-icon { background: #f0f0f3; border: 1.5px dashed #d1d5db; color: #c4c7cc; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.pending .step-title { color: #9ca3af; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current { background: linear-gradient(135deg, rgba(245, 10, 127, 0.05), rgba(104, 20, 205, 0.04)); border: none; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-indicator-icon { background: linear-gradient(135deg, #6814cd, #9d4edd); color: #fff; box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.1); animation: none; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-indicator-icon::after { content: ""; position: absolute; top: 18px; left: 18px; right: 8px; bottom: 8px; border: 2.5px solid rgba(255, 255, 255, 0.25); border-top-color: #fff; border-radius: 50%; box-sizing: border-box; animation: spin 0.7s linear infinite; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-title { color: #1d2327; font-weight: 600; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.current .step-status { color: #f50a7f; font-weight: 500; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed { background: rgba(104, 20, 205, 0.035); } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-indicator-icon { background: linear-gradient(135deg, #6814cd, #9d4edd); color: #fff; box-shadow: 0 2px 8px rgba(104, 20, 205, 0.2); } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-indicator-icon .checkmark { font-size: 15px; animation: jltmaCheckPop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-title { color: #6b7280; } .jltma-page-import-modal .import-progress-container .vertical-progress-steps .progress-step.completed .step-status.completed { color: #6814cd; font-weight: 500; } .jltma-page-import-modal .import-progress-container .import-warning { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 16px; border-radius: 8px; background: linear-gradient(135deg, rgba(104, 20, 205, 0.03), rgba(245, 10, 127, 0.02)); border: 1px solid rgba(104, 20, 205, 0.06); color: #9ca3af; font-size: 12px; font-weight: 400; } .jltma-page-import-modal .import-progress-container .import-warning .dashicons { font-size: 14px; width: 14px; height: 14px; color: #b0b4bc; } @keyframes jltmaShimmerBar { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } } @keyframes jltmaStepReveal { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } } @keyframes jltmaCheckPop { 0% { opacity: 0; transform: scale(0) rotate(-45deg); } 60% { transform: scale(1.2) rotate(0deg); } 100% { opacity: 1; transform: scale(1) rotate(0deg); } } .jltma-page-import-modal .import-success-container { text-align: center; padding: 36px 32px 32px; position: relative; } .jltma-page-import-modal .import-success-container h2 { font-size: 22px; font-weight: 700; color: #1d2327; margin: 0 0 8px; letter-spacing: -0.3px; } .jltma-page-import-modal .import-success-container p { font-size: 14px; color: #9ca3af; margin: 0 0 24px; line-height: 1.5; } .jltma-page-import-modal .import-success-container .success-illustration { position: relative; margin-bottom: 28px; } .jltma-page-import-modal .import-success-container .success-illustration svg { width: 100%; max-width: 140px; height: auto; display: block; margin: 0 auto; } .jltma-page-import-modal .import-success-container .success-actions { display: flex; flex-direction: column; gap: 10px; align-items: center; width: 100%; } .jltma-page-import-modal .import-success-container .success-actions .success-actions-wrap { display: flex; gap: 10px; width: 100%; } .jltma-page-import-modal .import-success-container .success-actions .button { padding: 0 20px; height: 42px; font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; border: none; outline: none; text-decoration: none; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; line-height: 1; white-space: nowrap; letter-spacing: 0.3px; text-transform: uppercase; box-sizing: border-box; flex: 1; } .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor { background: #2d2d3d; color: #fff; gap: 8px; } .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor .elementor-icon-wrapper { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; } .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor .elementor-icon-wrapper svg { width: 16px; height: 16px; flex-shrink: 0; } .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 { background: #1a1a2e; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(45, 45, 61, 0.3); border: none; } .jltma-page-import-modal .import-success-container .success-actions .button.button-edit-elementor:active { transform: translateY(0); } .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); color: #fff; } .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 { opacity: 0.9; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(104, 20, 205, 0.3); border: none; } .jltma-page-import-modal .import-success-container .success-actions .button.button-go-page:active { transform: translateY(0); } .jltma-page-import-modal .import-success-container .success-actions .button.button-link { background: transparent; color: #9ca3af; text-decoration: none; padding: 6px 16px; font-weight: 400; font-size: 12px; text-transform: none; letter-spacing: 0; height: auto; flex: none; width: 100%; } .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 { color: #6814cd; background: transparent; } .jltma-page-import-modal .import-error-container { padding: 20px 0; } .jltma-page-import-modal .import-error-container .error-icon { width: 100px; height: 100px; margin: 0 auto 30px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #f44336 0%, #e91e63 100%); border-radius: 50%; } .jltma-page-import-modal .import-error-container .error-icon .dashicons { font-size: 50px; width: 50px; height: 50px; color: #fff; } .jltma-page-import-modal .import-error-container h2 { font-size: 24px; font-weight: 600; color: #1d2327; margin: 0 0 15px; } .jltma-page-import-modal .import-error-container p { font-size: 15px; color: #6d7882; margin: 0 0 30px; } .jltma-page-import-modal .import-error-container .error-actions { display: flex; gap: 12px; justify-content: center; } .jltma-page-import-modal .import-error-container .error-actions .button { padding: 12px 24px; font-size: 14px; font-weight: 500; border-radius: 8px; cursor: pointer; transition: all 0.3s ease; display: inline-flex; align-items: center; gap: 8px; border: none; outline: none; background: linear-gradient(135deg, #6814cd 0%, #f50a7f 100%); color: #fff; box-shadow: 0 4px 15px rgba(104, 20, 205, 0.3); } .jltma-page-import-modal .import-error-container .error-actions .button .dashicons { font-size: 18px; width: 18px; height: 18px; } .jltma-page-import-modal .import-error-container .error-actions .button:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(104, 20, 205, 0.4); } .jltma-page-import-modal .import-error-container .error-actions .button:active { transform: translateY(0); } .jltma-page-import-modal .import-error-container .error-actions .button.button-primary { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); } @keyframes modalFadeIn { from { opacity: 0; transform: scale(0.95) translateY(-10px); } to { opacity: 1; transform: scale(1) translateY(0); } } @keyframes successPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .toplevel_page_master-addons-settings .wrap, .master-addons_page_jltma-template-library .wrap { margin: 0; } .jltma-templates:has(.page-importer-mode) { min-height: auto !important; background: transparent !important; padding-right: 0 !important; } .jltma-templates .loading-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 60vh; } .jltma-templates .loading-placeholder .loading-spinner { width: 40px; height: 40px; border: 4px solid #e0e0e0; border-top: 4px solid #6a4bff; border-radius: 50%; animation: spin 1s linear infinite; margin-bottom: 20px; } .jltma-templates .loading-placeholder p { color: #666; font-size: 16px; } .jltma-templates .template-library-tabs-wrapper.page-importer-mode { position: fixed; top: 0; left: 0; right: 0; z-index: 999; } .jltma-templates .page-importer-layout { display: flex; gap: 0; min-height: calc(100vh - 60px); } .jltma-templates .page-importer-layout .templates-grid-container { padding: 26px; height: calc(100vh - 110px); } .jltma-templates .page-importer-layout .page-importer-sidebar { width: 300px; flex-shrink: 0; background: #fff; border-right: 1px solid #e8e8e8; padding: 0; overflow-y: auto; height: calc(100vh - 60px); position: fixed; top: 60px; left: 0; z-index: 9; box-shadow: 2px 0 8px rgba(0, 0, 0, 0.03); } .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn { display: flex; align-items: center; gap: 10px; padding: 18px 24px; background: #fff; border-bottom: 1px solid #f0f0f0; color: #1d2327; font-size: 15px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; margin: 0; } .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn .dashicons { font-size: 18px; width: 18px; height: 18px; color: #6814cd; transition: transform 0.3s ease; } .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:hover { background: linear-gradient(135deg, rgba(245, 10, 127, 0.05) 0%, rgba(104, 20, 205, 0.05) 100%); color: #6814cd; } .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:hover .dashicons { transform: translateX(-3px); } .jltma-templates .page-importer-layout .page-importer-sidebar .back-btn:active { background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%); } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs { display: flex; align-items: center; gap: 3px; margin-bottom: 16px; font-size: 13px; line-height: 1.5; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-item { color: #6814cd; font-weight: 500; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-item.breadcrumb-current { color: #1d2327; font-weight: 600; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-breadcrumbs .breadcrumb-separator { color: #8892a0; font-size: 12px; display: inline-flex; align-items: center; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-description { font-size: 14px; line-height: 1.6; color: #5c5f62; margin: 0 0 20px 0; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper { margin-bottom: 20px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .template-selector-label { display: block; font-size: 12px; font-weight: 600; color: #8c8f94; text-transform: uppercase; letter-spacing: 0.8px; margin: 0 0 12px 0; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector { width: 100%; padding: 8px 16px; padding-right: 40px; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 15px; font-weight: 500; color: #1d2327; background: #fff url('data:image/svg+xml;utf8,') no-repeat right 16px center; background-size: 12px; appearance: none; cursor: pointer; transition: all 0.3s ease; outline: none; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector:hover { border-color: #c3c4c7; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .template-selector-wrapper .kit-template-selector:focus { border-color: #6814cd; box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper { margin-bottom: 20px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-label { display: block; font-size: 12px; font-weight: 600; color: #8c8f94; text-transform: uppercase; letter-spacing: 0.8px; margin: 0 0 12px 0; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input, .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text] { width: 100%; padding: 8px 16px; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 15px; font-weight: 500; color: #1d2327; background: #fff; transition: all 0.3s ease; outline: none; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input::placeholder, .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]::placeholder { color: #a7aaad; font-weight: 400; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input:hover, .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]:hover { border-color: #c3c4c7; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper .page-title-input:focus, .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .page-title-input-wrapper input[type=text]:focus { border-color: #6814cd; box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); background: #fff; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins { padding: 10px 15px; color: #000; margin-bottom: 20px; background: rgba(255, 255, 0, 0.2705882353); } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins .section-title { font-size: 14px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins ul { border-radius: 8px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .required-plugins ul li label { font-size: 12px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button { width: 100%; padding: 14px 20px; background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); color: #fff; border: none; border-radius: 8px; font-size: 15px; font-weight: 600; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 4px 12px rgba(104, 20, 205, 0.25); display: flex; align-items: center; justify-content: center; gap: 8px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button .dashicons { font-size: 18px; width: 18px; height: 18px; } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:hover { background: linear-gradient(135deg, #f50a7f 0%, #5610b3 100%); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(104, 20, 205, 0.35); } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:active { transform: translateY(0); box-shadow: 0 2px 8px rgba(104, 20, 205, 0.3); } .jltma-templates .page-importer-layout .page-importer-sidebar .template-info-section .insert-button:disabled { background: #e0e0e0; color: #a7aaad; cursor: not-allowed; transform: none; box-shadow: none; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar { padding: 24px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section { margin-bottom: 32px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section:last-child { margin-bottom: 0; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .filter-title { margin: 0 0 16px 0; font-size: 12px; font-weight: 700; color: #1d2327; text-transform: uppercase; letter-spacing: 0.8px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters { display: flex; flex-wrap: wrap; gap: 10px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn { display: inline-flex; align-items: center; justify-content: center; padding: 11px 20px; border: none; border-radius: 24px; background: #f5f5f5; color: #5c5f62; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); text-transform: capitalize; white-space: nowrap; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn:hover { background: linear-gradient(135deg, rgba(245, 10, 127, 0.08) 0%, rgba(104, 20, 205, 0.08) 100%); color: #6814cd; transform: translateY(-1px); } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.active { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); color: #fff; font-weight: 600; box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25); } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.free.active { background: linear-gradient(135deg, #10b981 0%, #059669 100%); box-shadow: 0 2px 8px rgba(16, 185, 129, 0.25); } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn.pro.active { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25); } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills { display: flex; flex-wrap: wrap; gap: 10px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn { display: inline-flex; align-items: center; justify-content: center; padding: 11px 20px; border: none; border-radius: 24px; background: #f5f5f5; color: #5c5f62; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); text-align: center; white-space: nowrap; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn:hover { background: linear-gradient(135deg, rgba(245, 10, 127, 0.08) 0%, rgba(104, 20, 205, 0.08) 100%); color: #6814cd; transform: translateY(-1px); } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn.active { background: linear-gradient(135deg, #f50a7f 0%, #6814cd 100%); color: #fff; font-weight: 600; box-shadow: 0 2px 8px rgba(104, 20, 205, 0.25); } .jltma-templates .page-importer-layout .page-importer-content { flex: 1; overflow-y: auto; background: #f1f3f4; margin-left: 300px; } .jltma-templates .template-library-categories { width: 280px; } .jltma-templates .template-library-categories .template-library-select-category { width: 100%; padding: 10px 15px; border-radius: 3px; background-color: #fff; display: flex; justify-content: space-between; align-items: center; font-weight: normal; font-family: "Roboto", Arial, Helvetica, Verdana, sans-serif; color: #1d2327; cursor: pointer; border: 1px solid #e0e0e0; } .jltma-templates .template-library-categories .template-library-select-category i { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-categories .categories-list { position: absolute; top: auto; bottom: auto; width: 700px; background: #fff; padding: 10px; border-radius: 3px; visibility: hidden; opacity: 0; transition: all 0.3s ease-in; border: 1px solid #e0e0e0; box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 5px 0px !important; margin: 0; z-index: 999; display: none; } .jltma-templates .template-library-categories .categories-list ul { display: flex; flex-wrap: wrap; gap: 6px; } .jltma-templates .template-library-categories .categories-list ul li { width: 24%; } .jltma-templates .template-library-categories .categories-list ul li button, .jltma-templates .template-library-categories .categories-list ul li a { display: flex; align-items: center; justify-content: space-between; padding: 8px 12px; cursor: pointer; width: 100%; color: #6d7882 !important; background: #fff !important; font-size: 13px; line-height: 1; border-radius: 3px; border: 0; } .jltma-templates .template-library-categories .categories-list ul li button:hover, .jltma-templates .template-library-categories .categories-list ul li button.active, .jltma-templates .template-library-categories .categories-list ul li a:hover, .jltma-templates .template-library-categories .categories-list ul li a.active { background: #f9f9f9 !important; color: #222 !important; } .jltma-templates .template-library-categories .categories-list.active { visibility: visible; opacity: 1; display: block; } .jltma-templates .template-library-categories:has(.categories-list.active) .template-library-select-category { border-bottom-color: transparent; border-radius: 3px 3px 0 0; } .jltma-templates .template-library-categories:has(.categories-list.active) .categories-list.active { border-radius: 0 3px 3px 3px; } .jltma-templates .template-library-content { flex: 1; display: flex; flex-direction: column; background: #fff; } .jltma-templates .template-library-content .template-tabs { display: flex; border-bottom: none; margin-bottom: 0; justify-content: center; gap: 0; } .jltma-templates .template-library-content .template-tabs .template-tab { position: relative; display: flex; align-items: center; gap: 6px; padding: 18px 20px; background: transparent; border: none; border-bottom: 3px solid transparent; color: #6d7882; font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; line-height: 1; } .jltma-templates .template-library-content .template-tabs .template-tab span { width: max-content; height: max-content; } .jltma-templates .template-library-content .template-tabs .template-tab.active { color: #3858e9; border-bottom-color: #3858e9; } .jltma-templates .template-library-content .template-tabs .template-tab:hover:not(.active) { color: #3858e9; } .jltma-templates .template-library-content .template-tabs .template-tab .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-content .template-tabs .template-tab .tab-count { font-size: 11px; font-weight: 600; padding: 2px 7px; border-radius: 10px; min-width: 20px; height: 18px; text-align: center; line-height: 17px; } .jltma-templates .template-library-content .content-header { padding: 0; margin-top: 0; border-radius: 0; } .jltma-templates .template-library-content .content-header .refresh-btn { background: #ffffff; font-weight: 500; cursor: pointer; transition: all 0.2s ease; padding: 0; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid #e2e8f0; color: #64748b; } .jltma-templates .template-library-content .content-header .refresh-btn .dashicons { font-size: 18px; width: 18px; height: 18px; } .jltma-templates .template-library-content .content-header .refresh-btn:hover { border-color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .refresh-btn:hover span { color: #6814cd; } .jltma-templates .template-library-content .content-header .refresh-btn:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-templates .template-library-content .content-header .refresh-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .refresh-btn .dashicons { font-size: 18px; width: 18px; height: 18px; color: #64748b; } .jltma-templates .template-library-content .content-header .refresh-btn .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .content-header .template-library-header .search-container { position: relative; width: 400px; } .jltma-templates .template-library-content .content-header .template-library-header .search-container input { width: 100%; padding: 10px 15px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; min-height: auto !important; line-height: 0 !important; transition: border-color 0.2s ease; } .jltma-templates .template-library-content .content-header .template-library-header .search-container input:focus { outline: none; border-color: #6a4bff; box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1); } .jltma-templates .template-library-content .content-header .template-library-header .search-container .search-icon { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); color: #999; font-size: 16px; width: max-content; height: max-content; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper { display: flex; justify-content: space-between; align-items: center; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo { display: flex; align-items: center; gap: 8px; color: #6d7882; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo img { width: 36px; height: 36px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-library-header-logo::after { content: "Templates Library"; font-size: 24px; font-weight: 500; color: #1d2327; letter-spacing: 0; line-height: 1; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode { margin-bottom: 0; padding: 0; height: 60px; border-block-end: 1px solid #e6e8ea; background: #fff; position: relative; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.page-importer-mode .template-preview-toolbar-center { position: absolute; left: calc(50% + 150px); transform: translateX(-50%); display: flex; justify-content: center; align-items: center; z-index: 10; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper.kits-mode .template-library-header-logo::after { display: none; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn { display: flex; align-items: center; gap: 10px; padding: 12px 20px; background: transparent; color: #1d2327; font-size: 15px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; border-radius: 6px; margin: 0; margin-left: 40px; border: none; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn .dashicons { font-size: 18px; width: 18px; height: 18px; color: #6814cd; transition: transform 0.3s ease; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover { background: #f2f3f4; color: #6814cd; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:hover .dashicons { transform: translateX(-3px); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .back-btn:active { background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .template-tabs { display: flex; gap: 0; border-bottom: 1px solid #e0e0e0; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible { position: relative; display: flex; align-items: center; margin-left: auto; background: transparent; border-radius: 24px; overflow: visible; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input { width: 0; opacity: 0; padding: 0; border: none; background: transparent; font-size: 14px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); margin-right: 0; pointer-events: none; color: #1d2327; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input:focus { outline: none; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-input::placeholder { color: #8c8f94; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 0; background: transparent; border: none; border-radius: 50%; cursor: pointer; transition: all 0.2s ease; flex-shrink: 0; margin-left: 4px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn .dashicons { font-size: 16px; width: 16px; height: 16px; color: #8c8f94; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover { background: rgba(0, 0, 0, 0.05); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .clear-search-btn:hover .dashicons { color: #d63638; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; transition: all 0.2s ease; flex-shrink: 0; z-index: 2; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons { font-size: 18px; width: 18px; height: 18px; color: #64748b; transition: color 0.2s ease; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover { border-color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:hover .dashicons { color: #6814cd; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.has-value:not(.expanded) .search-toggle-btn { border-color: #6814cd; background: rgba(104, 20, 205, 0.04); } .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 { color: #6814cd; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded { background: #f8f9fa; border: 1px solid #e0e0e0; padding-left: 18px; padding-right: 4px; border-radius: 24px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input { width: 280px; opacity: 1; padding: 8px 12px 8px 0; pointer-events: auto; box-shadow: none !important; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn { border-color: #6814cd; background: rgba(104, 20, 205, 0.08); border-radius: 50%; margin-left: 8px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn .dashicons { color: #6814cd; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded .search-toggle-btn:hover { background: rgba(104, 20, 205, 0.12); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .header-search-collapsible.expanded:focus-within { border-color: #6814cd; box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid #e2e8f0; border-radius: 8px; background: #ffffff; color: #64748b; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn svg { width: 18px; height: 18px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:hover { border-color: #6814cd; color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .tutorial-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .template-library-header .template-library-tabs-wrapper .refresh-btn { margin-left: 10px; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper { display: flex; justify-content: space-between; align-items: center; gap: 15px !important; margin-top: 20px !important; border-radius: 6px !important; } .jltma-templates .template-library-content .content-header .template-library-header .template-library-categories-wrapper .template-library-categories-count { display: flex; align-items: center; gap: 16px; } .jltma-templates .template-library-content .content-header .template-kit-header { display: flex; align-items: center; justify-content: space-between; height: 46px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo { position: absolute; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 8px; color: #6d7882; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo img { width: 36px !important; height: 36px !important; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-header-logo::after { content: "Template Kits"; font-size: 24px; font-weight: 500; color: #1d2327; letter-spacing: 0; line-height: 1; } .jltma-templates .template-library-content .content-header .template-kit-header .back-btn { display: flex; align-items: center; font-size: 14px; line-height: 1.4rem; font-weight: 500; color: #6d7882; cursor: pointer; } .jltma-templates .template-library-content .content-header .template-kit-header .back-btn span { width: 20px; height: 20px; font-size: 20px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper { display: flex; align-items: center; gap: 10px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; height: 36px; width: 36px; color: #64748b; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; transition: all 0.2s ease; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:hover { border-color: #6814cd; color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon { width: 18px; height: 18px; display: flex; align-items: center; justify-content: center; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .upload-kit .import-kit-btn .upload-icon svg { width: 18px; height: 18px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid #e2e8f0; border-radius: 8px; background: #ffffff; color: #64748b; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn svg { width: 18px; height: 18px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:hover { border-color: #6814cd; color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .tutorial-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .refresh-btn .dashicons { padding: 0; width: 18px; height: 18px; font-size: 18px; line-height: 1; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container { position: relative; display: flex; align-items: center; margin-left: auto; background: transparent; border-radius: 24px; overflow: visible; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container input { width: 0; opacity: 0; padding: 0; border: none; background: transparent; font-size: 14px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); margin-right: 0; pointer-events: none; color: #1d2327; outline: none; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn { justify-content: center; width: 36px; height: 36px; padding: 0; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; transition: all 0.2s ease; flex-shrink: 0; z-index: 2; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn span { font-size: 18px; width: 18px; height: 18px; color: #64748b; transition: color 0.2s ease; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover { border-color: #6814cd; background: rgba(104, 20, 205, 0.04); box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:hover span { color: #6814cd; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container .search-toggle-btn:active { transform: scale(0.96); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded { background: #f8f9fa; border: 1px solid #e0e0e0; padding-left: 18px; padding-right: 4px; border-radius: 24px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded input { width: 280px; opacity: 1; padding: 8px 12px 8px 0; pointer-events: auto; box-shadow: none !important; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn { border-color: #6814cd; background: rgba(104, 20, 205, 0.08); border-radius: 50%; margin-left: 8px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn span { color: #6814cd; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded .search-toggle-btn:hover { background: rgba(104, 20, 205, 0.12); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .search-container.search-expanded:focus-within { border-color: #6814cd; box-shadow: 0 0 0 3px rgba(104, 20, 205, 0.08); } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra { margin-right: 8px; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button { position: relative; margin-left: auto; height: 32px; padding: 6px 8px; border-radius: 4px; cursor: pointer; border: 1px solid rgb(220, 53, 69); color: rgb(220, 53, 69); background-color: #fff; transition: none; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button span { font-size: 18px; width: 18px; height: 18px; transition: none; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::before { content: ""; position: absolute; top: 32px; left: 50%; transform: translateX(-50%) translateY(0); border: 5px solid transparent; border-bottom-color: rgb(220, 53, 69); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.2s ease, transform 0.2s ease; z-index: 1000; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button::after { content: "Delete this kits"; position: absolute; top: 42px; left: 50%; transform: translateX(-50%) translateY(0); padding: 6px 12px; background: rgb(220, 53, 69); color: #fff; font-size: 12px; font-weight: 500; white-space: nowrap; border-radius: 4px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.2s ease, transform 0.2s ease; z-index: 1000; line-height: 1.4; } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button { /* Hover effect */ } .jltma-templates .template-library-content .content-header .template-kit-header .template-kit-upload-wrapper .template-kit-extra button:hover { color: #fff !important; background-color: rgb(220, 53, 69); } .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 { opacity: 1; visibility: visible; } .jltma-templates .template-library-content .templates-grid-container { flex: 1; position: relative; } .jltma-templates .template-library-content .templates-grid-container .required-plugins { border-radius: 8px; padding: 15px 20px; margin-bottom: 30px; background: #ffecdb; box-shadow: 0 1px 0 rgba(239, 133, 57, 0.4); color: #ef8539; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header { margin-bottom: 0; display: flex; justify-content: space-between; align-items: center; gap: 32px; transition: all 0.3s ease-in-out; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left { margin: 0; font-size: 16px; font-weight: 400; color: #ef8539; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-left p { margin: 0; color: #757575; font-size: 14px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right { display: flex; flex-direction: column; gap: 16px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button { color: #ef8539; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement { padding: 0 12px; display: flex; justify-content: center; align-items: center; background: #fff; border: 1px solid #ef8539; height: 36px; border-radius: 4px; transition: none; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement span { width: 20px; height: 16px; font-size: 16px; margin-right: 4px; transition: none !important; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-header .header-right button.install_missing_requirement:hover { background: #ef8539; color: #fff; cursor: pointer; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice { display: flex; align-items: center; gap: 10px; margin-top: 16px; padding: 12px; background: #fff3cd; border: 1px solid #ffc107; border-radius: 4px; color: #856404; font-size: 14px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugins-notice .dashicons { color: #ffc107; font-size: 20px; } @media (max-width: 768px) { .jltma-templates .template-library-content .templates-grid-container .required-plugins .required-plugin-item { flex-direction: column; align-items: flex-start; gap: 10px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .plugin-status { width: 100%; } .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.install-plugin, .jltma-templates .template-library-content .templates-grid-container .required-plugins .button.activate-plugin { width: 100%; } } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugins-list { display: flex; flex-direction: column; gap: 12px; overflow: hidden; margin-bottom: 30px; transition: height 0.4s ease-in-out; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item { display: flex; justify-content: space-between; align-items: center; background: #f8f9fa; padding: 12px 16px; border-radius: 6px; border: 1px solid #e2e4e7; transition: all 0.2s ease; gap: 30px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item:hover { border-color: #c3c4c7; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .required-plugin-item.active { background: #f0f8ff; border-color: #2271b1; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal label.plugin-checkbox-label { display: flex; gap: 12px; justify-content: flex-start; align-items: center; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-info { display: flex; align-items: center; gap: 10px; margin-top: -6px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-name { font-weight: 500; color: #1e1e1e; font-size: 14px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-required-badge { background: #ff6b6b; color: white; padding: 2px 8px; border-radius: 3px; font-size: 11px; font-weight: 500; text-transform: uppercase; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-version { color: #757575; font-size: 12px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .plugin-status { display: flex; align-items: center; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active { display: flex; align-items: center; gap: 5px; color: #00a32a; font-weight: 500; font-size: 14px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .status-active .dashicons { font-size: 20px; width: 20px; height: 20px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button.install-selected-btn, .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal .button.activate-plugin { min-width: 140px; display: flex; align-items: center; justify-content: center; gap: 5px; } .jltma-templates .template-library-content .templates-grid-container .required-plugins-modal button .spinner { margin: 0; float: none; } .jltma-templates .template-library-content .templates-grid-container .templates-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); row-gap: 32px; column-gap: 24px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item { background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); border: 1px solid #f1f1f2; transition: all 0.3s ease; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview { position: relative; height: 200px; overflow: hidden; cursor: pointer; display: block; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview:before { content: ""; background: #000; position: absolute; top: 0; bottom: 0; left: 0; right: 0; opacity: 0.02; display: block; z-index: 7; transition: opacity 0.2s ease-out; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image { width: 100%; height: auto; display: block; transform: translateY(0); transition: transform 4s linear; will-change: transform; border-radius: 0; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering { transform: translateY(var(--translate-y, 0)); } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .template-image.image-hovering:hover { transition: transform 4s linear; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-preview .scroll-icon { z-index: 9; display: block; position: absolute; top: 50%; right: -25px; transform: translate(-50%, -50%); height: 40px; width: 40px; opacity: 0.5; color: #8b8b8b; animation: floatUpDown 3s ease-in-out infinite; transition: opacity 0.2s ease-out; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info { padding: 16px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title { display: flex; justify-content: space-between; align-items: flex-start; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title h3 { display: flex; align-items: self-start; margin: 0 8px 0 0; font-size: 14px; font-weight: 600; color: #333; line-height: 1.3; min-height: 40px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge, .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge, .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge, .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge { display: inline-block; font-size: 10px; font-weight: 700; padding: 0 7px; border-radius: 4px; text-transform: uppercase; border: 1px solid transparent; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .pro-badge { background: rgba(255, 107, 107, 0.1); color: #ff6b6b; border: 1px solid rgba(255, 107, 107, 0.2); } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .purchase-badge { background: rgba(245, 158, 11, 0.1); color: #ea580c; border: 1px solid rgba(234, 88, 12, 0.2); } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .free-badge { background: rgba(203, 203, 252, 0.49); color: #5f5ff6; border: 1px solid rgba(152, 152, 244, 0.5); } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title { /* Imported = kit already in the local library (purchased or uploaded). Green, the "ready-to-use" confirmation color. */ } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge { background: rgba(22, 163, 74, 0.1); color: #15803d; border: 1px solid rgba(22, 163, 74, 0.25); display: inline-flex; align-items: center; gap: 4px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-info .template-title .imported-badge::before { content: ""; display: inline-block; width: 8px; height: 8px; background: currentColor; border-radius: 50%; mask: url("data:image/svg+xml;utf8,") center/contain no-repeat; -webkit-mask: url("data:image/svg+xml;utf8,") center/contain no-repeat; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions { display: flex; gap: 8px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button { display: flex; justify-content: center; align-items: center; flex: 1; padding: 0 12px; font-size: 12px; font-weight: 400; line-height: 20px; min-height: 36px; border-radius: 6px; border: 1px solid transparent; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button span { font-size: 16px; height: 16px; transition: none; margin-right: 4px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn { background: transparent; color: #0e0e2c; border-color: #0e0e2c; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-preview-btn:hover { background: #0e0e2c; color: #fff; } .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 { background: #0e0e2c; color: #fff; border-color: #0e0e2c; } .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 { background: #1a1a44; border-color: #1a1a44; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn { background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%); color: #fff; font-weight: 700; border-color: transparent; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item .template-actions button.template-purchase-btn:hover { background: linear-gradient(135deg, #d97706 0%, #c2410c 100%); border-color: transparent; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview .scroll-icon { opacity: 0; } .jltma-templates .template-library-content .templates-grid-container .templates-grid .template-item:hover .template-preview::before { opacity: 0; } .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro { display: flex; align-items: center; gap: 8px; padding: 8px 16px; background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%); color: #fff; border: none; border-radius: 6px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:hover:not(:disabled) { background: linear-gradient(135deg, #d97706 0%, #c2410c 100%); transform: translateY(-1px); } .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-content .templates-grid-container .upgrade-to-pro .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins, .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins { background: #f0f0f0 !important; color: #999 !important; cursor: not-allowed !important; opacity: 0.7; } .jltma-templates .template-library-content .templates-grid-container .import-btn.disabled-plugins:hover, .jltma-templates .template-library-content .templates-grid-container .insert-all-btn.disabled-plugins:hover { background: #f0f0f0 !important; color: #999 !important; } .jltma-templates .template-library-content .templates-grid-container .loading-templates { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 20px; background: #ffffff; } .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; animation: pulse 2s ease-in-out infinite; } .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-logo img { width: 100%; height: auto; filter: drop-shadow(0 4px 12px rgba(104, 20, 205, 0.3)); } .jltma-templates .template-library-content .templates-grid-container .loading-templates .loading-templates-title { font-size: 16px; font-weight: 500; color: #6814cd; } .jltma-templates .template-library-content .templates-grid-container .no-templates { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; text-align: center; color: #666; } .jltma-templates .template-library-content .templates-grid-container .no-templates h3 { margin: 0 0 10px 0; font-size: 18px; color: #333; } .jltma-templates .template-library-content .templates-grid-container .no-templates p { margin: 0; font-size: 14px; } .jltma-templates .template-library-content .template-pagination { position: relative; display: flex; justify-content: center; align-items: center; gap: 20px; padding: 20px; border-top: 1px solid #e0e0e0; } .jltma-templates .template-library-content .template-pagination .pagination-info .pagination-text { color: #666; font-size: 14px; } .jltma-templates .template-library-content .template-pagination .pagination-controls { display: flex; align-items: center; gap: 10px; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn { display: flex; align-items: center; gap: 6px; padding: 8px 16px; background: #fff; border: 1px solid #ddd; border-radius: 6px; color: #333; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:hover:not(.disabled):not(:disabled) { background: #f8f9fa; border-color: #6a4bff; color: #6a4bff; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn.disabled, .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn:disabled { opacity: 0.5; cursor: not-allowed; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-btn .dashicons { font-size: 14px; width: 14px; height: 14px; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers { display: flex; align-items: center; gap: 6px; margin: 0 10px; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number { display: flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 8px; background: #fff; border: 1px solid #ddd; border-radius: 6px; color: #333; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:hover:not(:disabled) { background: #f8f9fa; border-color: #6a4bff; color: #6a4bff; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number.active { background: #6a4bff; border-color: #6a4bff; color: #fff; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-number:disabled { opacity: 0.5; cursor: not-allowed; } .jltma-templates .template-library-content .template-pagination .pagination-controls .pagination-numbers .pagination-ellipsis { display: flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; color: #666; font-weight: bold; } .jltma-templates .template-library-content .template-pagination .pagination-loading { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255, 255, 255, 0.9); display: flex; align-items: center; justify-content: center; border-radius: 8px; } .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner { display: flex; align-items: center; gap: 10px; padding: 15px 20px; background: #fff; border-radius: 8px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons { font-size: 18px; color: #6a4bff; } .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .template-pagination .pagination-loading .pagination-spinner .loading-text { color: #333; font-size: 14px; font-weight: 500; } .jltma-templates .template-library-content .infinite-scroll-sentinel { width: 100%; min-height: 40px; display: flex; justify-content: center; align-items: center; padding: 20px 0 10px; } .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates { display: flex; align-items: center; justify-content: center; gap: 10px; color: #666; font-size: 14px; font-weight: 500; } .jltma-templates .template-library-content .infinite-scroll-sentinel .loading-more-templates .spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .kit-template-grid-footer { display: flex; flex-direction: row; justify-content: space-between; gap: 20px; align-items: center; position: sticky; bottom: 0; height: 70px; padding: 0 20px; border-top: 1px solid #e0e0e0; } .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro { display: flex; align-items: center; gap: 8px; padding: 8px 16px; background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%); color: #fff; border: none; border-radius: 6px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:hover:not(:disabled) { background: linear-gradient(135deg, #d97706 0%, #c2410c 100%); transform: translateY(-1px); } .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-content .kit-template-grid-footer .upgrade-to-pro .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn { display: flex; align-items: center; gap: 8px; padding: 8px 16px; background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%); color: #fff; border: none; border-radius: 6px; font-size: 14px; font-weight: 700; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:hover:not(:disabled) { background: linear-gradient(135deg, #d97706 0%, #c2410c 100%); } .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-content .kit-template-grid-footer .template-purchase-btn .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn { display: flex; align-items: center; gap: 8px; padding: 8px 16px; background: #6a4bff; color: #fff; border: none; border-radius: 6px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:hover:not(:disabled) { background: #5a3bef; transform: translateY(-1px); } .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn:disabled { opacity: 0.6; cursor: not-allowed; } .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn .dashicons.spinning { animation: spin 1s linear infinite; } .jltma-templates .template-library-content .kit-template-grid-footer { /* Disabled state for buttons when plugins are missing */ } .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins, .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins { background: #f0f0f0 !important; color: #999 !important; cursor: not-allowed !important; opacity: 0.7; } .jltma-templates .template-library-content .kit-template-grid-footer .import-btn.disabled-plugins:hover, .jltma-templates .template-library-content .kit-template-grid-footer .insert-all-btn.disabled-plugins:hover { background: #f0f0f0 !important; color: #999 !important; } .jltma-templates .template-library-content .kit-template-grid-footer .footer-message-section { display: flex; flex-direction: row; gap: 24px; align-items: center; justify-content: center; } @media (max-width: 1200px) { .jltma-templates .template-library-sidebar { width: 250px; } .jltma-templates .templates-grid { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important; gap: 20px !important; } } @media (max-width: 768px) { .jltma-templates { flex-direction: column; } .jltma-templates .page-importer-layout { flex-direction: column; min-height: auto; } .jltma-templates .page-importer-layout .page-importer-sidebar { width: 100%; height: auto; position: relative; border-right: none; border-bottom: 1px solid #dcdcde; padding: 20px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section { margin-bottom: 20px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .filter-title { font-size: 12px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters { gap: 6px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .plan-filters .plan-filter-btn { padding: 8px 14px; font-size: 12px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills { gap: 6px; } .jltma-templates .page-importer-layout .page-importer-sidebar .vertical-filter-sidebar .filter-section .category-filters-pills .category-pill-btn { padding: 8px 14px; font-size: 12px; } .jltma-templates .page-importer-layout .page-importer-content { padding: 20px; } .jltma-templates .template-library-tabs-wrapper .header-search-collapsible.expanded .search-input { width: 180px; } .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn { width: 32px; height: 32px; } .jltma-templates .template-library-tabs-wrapper .header-search-collapsible .search-toggle-btn .dashicons { font-size: 16px; width: 16px; height: 16px; } .jltma-templates .template-library-sidebar { width: 100%; max-height: 200px; order: 2; } .jltma-templates .template-library-sidebar .categories-list { display: flex; overflow-x: auto; padding: 0 10px; } .jltma-templates .template-library-sidebar .categories-list li { min-width: 120px; } .jltma-templates .template-library-sidebar .categories-list li a, .jltma-templates .template-library-sidebar .categories-list li button { padding: 10px 15px; white-space: nowrap; } .jltma-templates .template-library-content { order: 1; } .jltma-templates .template-library-content .templates-grid-container { padding: 20px; } .jltma-templates .template-library-content .templates-grid-container .templates-grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important; } .jltma-templates .template-library-content .templates-grid-container .template-pagination { flex-direction: column; gap: 15px; } .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers { margin: 0 5px; } .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-numbers .pagination-number { min-width: 32px; height: 32px; font-size: 13px; } .jltma-templates .template-library-content .templates-grid-container .template-pagination .pagination-controls .pagination-btn { padding: 6px 12px; font-size: 13px; } } @media (max-width: 480px) { .jltma-templates .templates-grid { grid-template-columns: 1fr !important; } } .jltma-templates .kit-template-importer .kit-template-uploader { border: 1.5px dashed hsl(214.3, 31.8%, 91.4%); background: hsl(210, 40%, 98.5%); border-radius: 10px; padding: 40px 24px; cursor: pointer; transition: all 0.2s ease; text-align: center; } .jltma-templates .kit-template-importer .kit-template-uploader:hover, .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging { border-color: hsla(222.2, 84%, 4.9%, 0.3); background: hsl(210, 40%, 97%); } .jltma-templates .kit-template-importer .kit-template-uploader.is-dragging { border-color: hsla(222.2, 84%, 4.9%, 0.5); background: hsl(210, 40%, 96%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay { display: flex; flex-direction: column; align-items: center; gap: 0; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-icon-circle { width: 48px; height: 48px; border-radius: 50%; border: 1px solid hsl(214.3, 31.8%, 91.4%); background: #ffffff; display: flex; align-items: center; justify-content: center; color: hsl(215.4, 16.3%, 46.9%); margin-bottom: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-title { margin: 0; font-size: 14px; font-weight: 600; color: hsl(222.2, 84%, 4.9%); letter-spacing: -0.01em; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-subtitle { margin: 4px 0 0; font-size: 13px; color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn { margin-top: 16px; padding: 8px 16px; font-size: 13px; font-weight: 500; color: hsl(222.2, 84%, 4.9%); background: #ffffff; border: 1px solid hsl(214.3, 31.8%, 91.4%); border-radius: 6px; cursor: pointer; transition: all 0.15s ease; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-browse-btn:hover { background: hsl(210, 40%, 96.1%); border-color: hsl(214.3, 31.8%, 85%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-hint { margin: 12px 0 0; font-size: 12px; color: hsl(215.4, 16.3%, 60%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay { /* In-place confirmation step (replaces the dropzone content while a file is staged but not yet uploaded). Buttons match the shared common/dialog.js button sizing so the visual language stays consistent between modal and inline confirmations. */ } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-confirm-actions { display: flex; justify-content: center; gap: 10px; margin-top: 16px; flex-wrap: wrap; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn { appearance: none; display: inline-flex; align-items: center; justify-content: center; height: 36px; padding: 0 18px; border: 1px solid transparent; border-radius: 8px; font-size: 13px; font-weight: 600; line-height: 1; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease; font-family: inherit; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn:focus-visible { outline: 2px solid rgba(104, 20, 205, 0.45); outline-offset: 2px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary { background: #ffffff; border-color: hsl(214.3, 31.8%, 91.4%); color: hsl(222.2, 84%, 4.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--secondary:hover { background: hsl(210, 40%, 96.1%); border-color: hsl(214.3, 31.8%, 85%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary { background: #6814cd; color: #ffffff; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .uploader-btn--primary:hover { opacity: 0.9; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay .upload-error { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; padding: 6px 12px; font-size: 13px; color: hsl(0, 84%, 60%); background: hsla(0, 84%, 60%, 0.08); border-radius: 6px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading { cursor: default; align-items: stretch; text-align: left; padding: 8px 4px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-title { text-align: center; font-size: 17px; font-weight: 600; letter-spacing: -0.01em; margin: 0 0 8px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-overlay.is-uploading .uploader-subtitle { text-align: center; font-size: 13px; color: hsl(215.4, 16.3%, 46.9%); /* Generous breathing room before the stepper so the block reads as grouped content rather than a wall of text. */ margin: 0 auto 32px; max-width: 320px; line-height: 1.55; } .jltma-templates .kit-template-importer .kit-template-uploader { /* Info notice at the bottom of the import stepper. Matches the "Please do not close this window or refresh the page." banner pattern used in KitImportModal so both surfaces read the same. */ } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice { display: flex; align-items: center; gap: 10px; margin: 28px auto 0; padding: 12px 16px; width: 100%; max-width: 380px; background: hsl(282, 60%, 97.5%); border: 1px solid hsl(282, 40%, 90%); border-radius: 10px; box-sizing: border-box; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-notice__text { font-size: 12px; line-height: 1.45; color: hsl(215.4, 16.3%, 40%); } .jltma-templates .kit-template-importer .kit-template-uploader { /* Currently-importing card. Horizontal layout: spinner anchors the eye on the left, text column (eyebrow + filename) reads right of it. Typography hierarchy makes the filename the hero — it's the one bit of info the user actually cares about. Compact vertical rhythm (14px block padding) keeps the card visually dense so it doesn't feel empty. */ } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file { display: flex; align-items: center; gap: 14px; margin: 20px auto 0; padding: 14px 18px; width: 100%; max-width: 380px; background: linear-gradient(90deg, hsl(282, 100%, 98.5%), hsl(0, 100%, 99%)); border: 1px solid hsl(282, 40%, 90%); border-radius: 10px; box-sizing: border-box; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__spinner { flex-shrink: 0; width: 32px; height: 32px; border-radius: 50%; border: 3px solid hsl(282, 40%, 90%); border-top-color: #6814cd; animation: jltma-uploader-spin 0.8s linear infinite; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__text { display: flex; flex-direction: column; gap: 3px; min-width: 0; /* let text truncate instead of overflowing */ flex: 1; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-current-file__name { font-size: 15px; font-weight: 600; color: hsl(222.2, 84%, 4.9%); line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .jltma-templates .kit-template-importer .kit-template-uploader { /* Stepper inside the upload modal. Mirrors the language of KitImportModal's vertical-progress-steps so the visual continues seamlessly after onUploadComplete hands off. */ } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-steps { list-style: none; margin: 0 auto; padding: 0; width: 100%; max-width: 380px; display: flex; flex-direction: column; gap: 12px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 10px; background: hsl(210, 40%, 98.5%); transition: background 0.2s ease; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active { background: linear-gradient(90deg, hsl(282, 100%, 97%), hsl(0, 100%, 98%)); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-complete { background: hsl(282, 60%, 97%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending { background: hsl(210, 40%, 98.5%); opacity: 0.7; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__indicator { width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; background: #6814cd; color: #ffffff; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__indicator { background: hsl(214.3, 31.8%, 91.4%); color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__body { display: flex; flex-direction: column; gap: 2px; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__title { font-size: 13px; font-weight: 600; color: hsl(222.2, 84%, 4.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__title { color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step__status { font-size: 12px; font-weight: 500; color: #6814cd; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-active .uploader-step__status { color: #d91b5c; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-step.is-pending .uploader-step__status { color: hsl(215.4, 16.3%, 60%); } .jltma-templates .kit-template-importer .kit-template-uploader { /* Spinner (shared between loader icon-circle and step indicators) */ } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-spinner { width: 14px; height: 14px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, 0.35); border-top-color: #ffffff; animation: jltma-uploader-spin 0.8s linear infinite; } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading { position: relative; border-color: hsl(214.3, 31.8%, 91.4%); } .jltma-templates .kit-template-importer .kit-template-uploader .uploader-icon-circle.is-loading .uploader-spinner { width: 22px; height: 22px; border: 2px solid hsl(214.3, 31.8%, 91.4%); border-top-color: hsl(222.2, 84%, 4.9%); } @keyframes jltma-uploader-spin { to { transform: rotate(360deg); } } .jltma-templates .kit-template-importer .kit-upload-success { display: flex; align-items: center; gap: 12px; margin-top: 16px; padding: 12px 16px; background: hsla(142, 76%, 36%, 0.08); border: 1px solid hsla(142, 76%, 36%, 0.2); border-radius: 8px; } .jltma-templates .kit-template-importer .kit-upload-success .success-icon { flex-shrink: 0; color: hsl(142, 76%, 36%); } .jltma-templates .kit-template-importer .kit-upload-success .success-info h4 { margin: 0; font-size: 13px; font-weight: 600; color: hsl(222.2, 84%, 4.9%); } .jltma-templates .kit-template-importer .kit-upload-success .success-info p { margin: 2px 0 0; font-size: 12px; color: hsl(215.4, 16.3%, 46.9%); } .jltma-templates .kit-template-importer .kit-template-grid { padding: 0 20px 20px; } .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info { background: #fff; border: 1px solid #e0e0e0; border-radius: 8px; padding: 20px; } .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info h4 { margin: 0 0 10px 0; color: #333; font-size: 18px; } .jltma-templates .kit-template-importer .kit-template-grid .kit-template-imported-item .imported-kit-info p { margin: 0; color: #666; font-size: 14px; } #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates, #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates { background: #f1f3f4; padding-right: 20px; } #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content, #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content { margin: 20px 0; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04); border-radius: 12px; overflow: hidden; min-height: calc(100vh - 72px); } #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header, #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header { padding: 20px; border-bottom: 1px solid #f1f1f2; background: #fff; } #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs, #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .content-header .template-tabs { display: flex; gap: 0; border-bottom: 1px solid #e0e0e0; } #jltma-template-kits-app:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container, #jltma-template-library-root:not(.jltma-page-importer-btn-active .jltma-template-page-importer) .jltma-templates .template-library-content .templates-grid-container { padding: 20px; } .jltma-page-importer-btn-active .jltma-template-page-importer .template-library-header-logo { margin-left: 20px; } .jltma-page-importer-btn-active .jltma-template-page-importer .template-tabs { position: absolute; left: 50%; transform: translateX(-50%); } .swal2-container.fade.in { z-index: 9999999; } .template-preview-wrapper { display: flex; flex-direction: column; height: 100%; background: #f1f3f4; } .template-preview-toolbar { display: flex; align-items: center; justify-content: space-between; padding: 12px 24px; background: #0c0d0e; border-radius: 8px 8px 0 0; min-height: 60px; position: relative; } .template-preview-toolbar .template-preview-toolbar-left { flex: 0 0 auto; min-width: 200px; } .template-preview-toolbar .template-preview-toolbar-left .template-preview-title { font-size: 16px; font-weight: 600; color: #fff; line-height: 1.5; } .template-preview-toolbar .template-preview-toolbar-center { position: absolute; left: 50%; transform: translateX(-50%); display: flex; justify-content: center; align-items: center; } .template-preview-toolbar .template-preview-toolbar-right { flex: 0 0 auto; } .template-preview-devices { display: flex; align-items: center; gap: 8px; background: rgba(255, 255, 255, 0.05); padding: 4px; border-radius: 6px; } .template-preview-device-btn { display: inline-flex; justify-content: center; align-items: center; width: 40px; height: 40px; padding: 0; border-radius: 4px; border: none; background: transparent; cursor: pointer; transition: all 0.3s ease; color: #8892a0; } .template-preview-device-btn svg { width: 20px; height: 20px; pointer-events: none; transition: all 0.3s ease; } .template-preview-device-btn:hover { background: rgba(104, 20, 205, 0.15); color: #6814cd; transform: translateY(-1px); } .template-preview-device-btn:hover svg { stroke: #6814cd; } .template-preview-device-btn.active { background: #6814cd; color: #fff; } .template-preview-device-btn.active svg { stroke: #fff; } .template-preview-device-btn.active:hover { background: #5610a8; color: #fff; } .template-preview-device-btn.active:hover svg { stroke: #fff; } .template-preview-container { flex: 1; display: flex; justify-content: center; overflow-x: hidden; transition: all 0.3s; } .template-preview-loading { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; } .template-preview-loading .spinner { margin: 0; } .template-preview-loading p { margin: 0; color: #666; font-size: 14px; } .folded .jltma-template-library { margin-left: -20px; } #wpbody .jltma-template-library { margin-top: 0; } .master-addons_page_jltma-template-library .notice:not([class*=jltma-]), .master-addons_page_jltma-template-library .error:not([class*=jltma-]), .master-addons_page_jltma-template-library .updated:not([class*=jltma-]), .master-addons_page_jltma-template-kits .notice:not([class*=jltma-]), .master-addons_page_jltma-template-kits .error:not([class*=jltma-]), .master-addons_page_jltma-template-kits .updated:not([class*=jltma-]) { display: none !important; } .master-addons_page_jltma-template-library .wrap, .master-addons_page_jltma-template-kits .wrap { margin: 0 !important; } .master-addons_page_jltma-template-library #wpbody-content, .master-addons_page_jltma-template-kits #wpbody-content { padding-bottom: 0; } .master-addons_page_jltma-template-library #wpfooter, .master-addons_page_jltma-template-kits #wpfooter { display: none; } .favorites-section { margin-bottom: 24px !important; } .favorites-section .favorites-filter-btn { width: 100%; display: flex; align-items: center; gap: 12px; padding: 12px 16px; background: #f8f9fa; border: 1px solid #e0e0e0; border-radius: 8px; cursor: pointer; transition: all 0.3s ease; font-size: 15px; font-weight: 500; color: #1d2327; } .favorites-section .favorites-filter-btn .eicon-heart-o { font-size: 18px; color: #6814cd; } .favorites-section .favorites-filter-btn .favorites-label { flex: 1; text-align: left; } .favorites-section .favorites-filter-btn .favorites-label .favorites-count { font-weight: 600; color: #6814cd; margin-left: 4px; } .favorites-section .favorites-filter-btn:hover { background: #f0f4ff; border-color: #6814cd; } .favorites-section .favorites-filter-btn.active { background: linear-gradient(135deg, rgba(245, 10, 127, 0.1) 0%, rgba(104, 20, 205, 0.1) 100%); } .favorites-section .favorites-filter-btn.active .eicon-heart-o { color: #f50a7f; } .favorites-section .favorites-filter-btn.active .favorites-label { color: #6814cd; } .template-favorite-btn { display: inline-flex; align-items: center; justify-content: center; background: transparent; border: none; cursor: pointer; padding: 4px; margin-left: 8px; border-radius: 50%; transition: all 0.2s ease; vertical-align: middle; } .template-favorite-btn .eicon-heart-o, .template-favorite-btn .eicon-heart { font-size: 16px; color: #6d7882; transition: all 0.2s ease; margin-top: -2.5px; } .template-favorite-btn:hover { background: rgba(104, 20, 205, 0.08); } .template-favorite-btn:hover .eicon-heart-o, .template-favorite-btn:hover .eicon-heart { color: #6814cd; } .template-favorite-btn.is-favorite .eicon-heart { color: #f50a7f; animation: heartbeat 0.3s ease; } .template-favorite-btn.is-favorite:hover .eicon-heart { color: #d00970; } .template-favorite-btn.has-tooltip { position: relative; } .template-favorite-btn.has-tooltip::after { content: attr(data-tooltip); position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%) translateY(-8px); padding: 6px 12px; background: rgba(0, 0, 0, 0.9); color: #fff; font-size: 12px; font-weight: 500; white-space: nowrap; border-radius: 4px; opacity: 0; visibility: hidden; pointer-events: none; transition: all 0.2s ease; z-index: 1000; line-height: 1.4; } .template-favorite-btn.has-tooltip::before { content: ""; position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%) translateY(2px); border: 5px solid transparent; border-top-color: rgba(0, 0, 0, 0.9); opacity: 0; visibility: hidden; pointer-events: none; transition: all 0.2s ease; z-index: 1000; } .template-favorite-btn.has-tooltip:hover::after, .template-favorite-btn.has-tooltip:hover::before { opacity: 1; visibility: visible; } .template-favorite-btn.has-tooltip:hover::after { transform: translateX(-50%) translateY(-12px); } .template-favorite-btn.has-tooltip:hover::before { transform: translateX(-50%) translateY(-2px); } .swal2-modal button { outline: none; } .swal2-modal .confetti-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; pointer-events: none; } .swal2-modal .confetti-container .confetti-piece { position: absolute; top: -10%; width: 10px; height: 10px; transform-origin: bottom; animation: fall 3s ease-in forwards; } .swal2-modal .jltma-uploading-wrapper { position: relative; display: flex; flex-direction: column; align-items: center; margin-top: 10px; } .swal2-modal .jltma-uploading-wrapper .swal2-loader { border: 4px solid #f3f3f3; border-top: 4px solid #3085d6; border-radius: 50%; width: 50px; height: 50px; animation: spin 1s linear infinite; } .swal2-modal .jltma-uploading-wrapper h2 { font-size: 32px; font-weight: 700; color: #1d2327; letter-spacing: -0.5px; } .swal2-modal .jltma-uploading-wrapper p { font-size: 16px; color: #6d7882; line-height: 1.5; margin: 0 0 40px 0; } .swal2-modal:has(.jltma-uploading-wrapper) h2 { width: max-content !important; } .swal2-modal:has(.confetti-container) { position: relative; } .swal2-modal:has(.confetti-container) .swal2-content { position: static; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @keyframes floatUpDown { 0% { transform: translate(-50%, -50%) translateY(0); } 50% { transform: translate(-50%, -50%) translateY(-10px); } 100% { transform: translate(-50%, -50%) translateY(0); } } @keyframes fadeInSmooth { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes fadeOutSmooth { 0% { opacity: 1; } 100% { opacity: 0; } } @keyframes heartbeat { 0%, 100% { transform: scale(1); } 25% { transform: scale(1.2); } 50% { transform: scale(1.1); } 75% { transform: scale(1.15); } } @keyframes fall { 0% { transform: translateY(0) rotateZ(0deg); opacity: 1; } 100% { transform: translateY(100vh) rotateZ(360deg); opacity: 0; } } .template-library-react-app .wp-components-button.is-primary { background-color: #6a4bff; border-color: #6a4bff; } .template-library-react-app .wp-components-button.is-primary:hover:not(:disabled) { background-color: #5130ef; border-color: #5130ef; } .template-library-react-app .components-search-control .components-search-control__input { border-color: #ddd; } .template-library-react-app .components-search-control .components-search-control__input:focus { border-color: #6a4bff; box-shadow: 0 0 0 2px rgba(106, 75, 255, 0.1); } .template-importer-modal { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 999999; display: flex; justify-content: center; align-items: center; } .template-importer-modal .modal-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.8); } .template-importer-modal .modal-content { position: relative; max-width: 600px; width: 90%; max-height: 80vh; overflow: hidden; z-index: 10001; } .template-importer-modal .modal-content .modal-header { display: flex; align-items: center; justify-content: space-between; padding: 22px 32px; } .template-importer-modal .modal-content .modal-header h3 { margin: 0; font-size: 18px; font-weight: 600; } .template-importer-modal .modal-content .modal-header .modal-close { background: none; border: none; padding: 8px; cursor: pointer; border-radius: 4px; display: flex; align-items: center; justify-content: center; transition: background-color 0.2s; background: transparent; } .template-importer-modal .modal-content .modal-header .modal-close .dashicons { font-size: 20px; width: 20px; height: 20px; } .template-importer-modal .modal-content .modal-body { padding: 32px; } .template-importer-modal.template-kit .modal-overlay { background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(4px); } .template-importer-modal.template-kit .modal-content { background: #ffffff; border: 1px solid hsl(214.3, 31.8%, 91.4%); border-radius: 12px; box-shadow: 0 16px 70px -12px rgba(0, 0, 0, 0.25); max-width: 520px; } .template-importer-modal.template-kit .modal-content .modal-header { border-bottom: 1px solid hsl(220, 13%, 91%); padding: 16px; } .template-importer-modal.template-kit .modal-content .modal-header h3 { color: hsl(222.2, 84%, 4.9%); font-size: 16px; font-weight: 600; letter-spacing: -0.025em; } .template-importer-modal.template-kit .modal-content .modal-header .modal-close { color: hsl(215.4, 16.3%, 46.9%); border-radius: 6px; width: 32px; height: 32px; } .template-importer-modal.template-kit .modal-content .modal-header .modal-close:hover { background: hsl(210, 40%, 96.1%); color: hsl(222.2, 84%, 4.9%); } .template-importer-modal.template-kit .modal-content .modal-body { padding: 16px; } .template-importer-modal.required-plugins-modal .modal-content { border-radius: 12px; background: #fff; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); } .template-importer-modal.required-plugins-modal .modal-content .modal-header { border-bottom: 1px solid #e2e8f0; background: #f8fafc; } .template-importer-modal.required-plugins-modal .modal-content .modal-header h3 { color: #1a202c; } .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close { color: #64748b; } .template-importer-modal.required-plugins-modal .modal-content .modal-header .modal-close:hover { background: #e2e8f0; } .template-importer-modal.required-plugins-modal .modal-body p { margin-top: 0; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item { color: #d9534f; background: linear-gradient(180deg, rgba(217, 83, 79, 0.06), rgba(217, 83, 79, 0.03)); border: 1px solid rgba(217, 83, 79, 0.15); } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label { display: flex; align-items: center; gap: 12px; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label .plugin-info { margin: 0; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox] { margin: 0; appearance: none; width: 16px; height: 16px; border: 1.5px solid #cbd5e1; border-radius: 50px; position: relative; cursor: pointer; outline: none; transition: all 0.2s ease; background: #fff; outline: none; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:focus { box-shadow: none; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked { border-color: #4caf50; background-color: #4caf50; } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item .plugin-checkbox-label input[type=checkbox]:checked::after { content: ""; position: absolute; top: 2px; left: 5px; width: 3px; height: 7px; border: solid white; border-width: 0 2px 2px 0; transform: rotate(45deg); } .template-importer-modal.required-plugins-modal .modal-body .required-plugins-list .required-plugin-item:has(input[type=checkbox]:checked) { background: #f0f8ff; border-color: #2271b1; } .template-importer-modal.required-plugins-modal .modal-body .install-selected-btn { transition: all 0.5s ease-in; } .jltma-video-modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 999999; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); animation: jltmaVideoFadeIn 0.2s ease; } @keyframes jltmaVideoFadeIn { from { opacity: 0; } to { opacity: 1; } } .jltma-video-modal-content { position: relative; width: 90%; max-width: 860px; background: #000; border-radius: 12px; overflow: visible; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4); animation: modalSlideUp 0.3s ease; } .jltma-video-modal-close { position: absolute; top: -44px; right: 0; width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.15); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 50%; color: #fff; cursor: pointer; transition: all 0.2s ease; z-index: 10; } .jltma-video-modal-close .dashicons { font-size: 18px; width: 18px; height: 18px; } .jltma-video-modal-close:hover { background: rgba(255, 255, 255, 0.3); transform: scale(1.1); } .jltma-video-wrapper { position: relative; padding-bottom: 56.25%; height: 0; } .jltma-video-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; } @keyframes modalSlideUp { from { opacity: 0; transform: translateY(20px) scale(0.97); } to { opacity: 1; transform: translateY(0) scale(1); } }