.elementor-templates-modal__header__logo__title,
#wpzoom_main_library_templates_panel,
#wpzoom-elementor-template-library-toolbar {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.wpzoom-templates-library-template-category {
	display: block;
	width: 100%;
	text-align: left;
	margin:30px 0 20px 15px;
	padding-bottom: 20px;
	border-bottom: 1px solid #dedede;
}

#elementor-panel-categories {
    display: flex;
    flex-direction: column;
}
#elementor-panel-category-wpzoom-elementor-addons-inspiro,
#elementor-panel-category-wpzoom-elementor-addons-reel,
#elementor-panel-category-wpzoom-elementor-addons-foodica,
#elementor-panel-category-wpzoom-elementor-addons-cookbook {
    order: -3;
}
#elementor-panel-category-wpzoom-elementor-addons {
    order: -1
}
#elementor-panel-category-wpzoom-elementor-addons-pro {
    order: -2
}
.elementor-add-new-section .elementor-add-wpzoom-templates-button {
    background:url(../images/logo.svg) no-repeat center center;
    background-size: contain;
    transition: .2s ease all;
}

.elementor-add-new-section .elementor-add-wpzoom-templates-button:hover {
    opacity: .8;
}

.elementor-add-new-section .elementor-add-wpzoom-templates-button .eicon-folder {
    visibility: hidden;
}
#wpzoom-elementor-template-library-modal .e-logo-wrapper {
    background:url(../images/logo.svg) no-repeat left center;
    background-size: contain;
	border-radius:0px;
}
#wpzoom-elementor-template-library-modal .e-logo-wrapper i {
	visibility: hidden;
}
/* Header Tabs Styling */
#wpzoom-elementor-template-library-modal .elementor-templates-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#wpzoom-elementor-template-library-modal .elementor-templates-modal__header__items-area {
	min-width: 160px;
}

#wpzoom-elementor-template-library-header-tabs {
	display: flex;
	align-items: center;
	flex: 1;
	justify-content: center;
	height: 100%;
}

#wpzoom-elementor-template-library-tabs-wrapper {
	display: flex;
	height: 100%;
}

#wpzoom-elementor-template-library-tabs-wrapper .elementor-template-library-menu-item {
	display: inline-block;
	padding: 17px 20px;
	cursor: pointer;
	border-block-end: 3px solid transparent;
}

#wpzoom-elementor-template-library-tabs-wrapper .elementor-template-library-menu-item.elementor-active {
	border-color: var(--e-a-border-color-accent, #555);
		color: var(--e-a-color-txt-accent, #555);
}

.elementor-template-library-menu-custom-item {
	display:inline-block;
	padding:17px 0;
	width:145px;
	cursor:pointer;
}
#wpzoom-elementor-template-library-preview img {
	width:100%;
}
.wpzoom-version-label, .wpzoom-version, .wpzoom-dates {
	display: none !important;
}
.wpzoom-main-tiled-view {
    margin: 10px -15px 0;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
.wpzoom-main-tiled-view .wpzoom-item {
	display: flex;
    flex-direction: column;
    width: calc(20% - 30px);
    margin: 15px;
    background-color: #fff;
    border-radius: 3px;
    border: 1px solid #ddd;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-footer {
	padding: 8px;;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-title {
	text-align:left;
	font-size:14px;
    margin-bottom: 5px;
	color: #555;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-title i {
	color:#D52;
	margin-right:3px;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-version-label {
	font-size:11px;
	text-align:center;
	margin-bottom:-8px;
	margin-left:5px;
	width:75px;
	z-index:20;
	background:#f1f3f5;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-version {
	margin-bottom:5px;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-thumb {
	width: 100%;
	aspect-ratio: 5 / 4;
	background-color: #f7f7f7;
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: center;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-thumb .wpzoom-thumb-image {
	width: 100%;
	max-height: 100%;
	object-fit: cover;
	object-position: center top;
	transition: object-position .6s ease-in-out;
	display: block;
}

.wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-thumb:hover .wpzoom-thumb-image {
	object-position: center bottom;
	transition-timing-function: linear;
}
.wpzoom-main-tiled-view .wpzoom-item:hover  .wpzoom-template-thumb:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
    -webkit-transition: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    content: '\e92e';
    font-family: eicons;
    font-size: 22px;
    color: #fff;
}

.wpzoom-main-tiled-view .wpzoom-item .wpzoom-dates {
	display:flex;
	flex-direction:row;
	font-size:11px;
	padding:5px 0;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-dates div {
	flex-grow:1;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-dates div:nth-child(1) {
	text-align:left;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-dates div:nth-child(2) {
	text-align:right;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar {
	display:flex;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar .wpzoom-grow {
	flex-grow:1;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar .wpzoom-btn-template-insert {
	color:#555;
	cursor:pointer;
	padding:5px 10px;
	width:100%;
	border-radius:3px;
	border:1px solid rgba(0,0,0,0.3);
	transition:.4s;
}
.wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar .wpzoom-btn-template-insert:hover {
	background:#fff;
	border-color:#0A0;
	box-shadow:0 10px 15px rgba(0,0,0,0.1);
	color:#0A0;
}
.wpzoom-pagging {
	display:flex;
	justify-content:center;
	flex-direction:row;
	padding:10px 5px;
	border-bottom:1px solid #ddd;
	margin-bottom:5px;
}
.wpzoom-pagging .wpzoom-page-current {
	margin:10px 2px 0;
	padding:3px 10px;
	font-size:16px;
	color:#000;
	background:#ddd;
	border:1px solid #DDD;
	border-radius:5px;
	box-shadow:inset 5px 5px 15px rgba(0,0,0,0.2);
}
.wpzoom-pagging .wpzoom-page-goto {
	margin:10px 2px 0;
	border-radius:5px;
	padding:3px 10px;
	font-size:16px;
	color:#666;
	border:1px solid #DDD;
	transition:.4s;
}
.wpzoom-pagging .wpzoom-page-goto:hover {
	background:#fff;
	border:1px solid #FFF;
	color:#03F;
	z-index:9999;
	box-shadow:2px 2px 15px rgba(0,0,0,0.2);
	transform:scale(1.1);
}

@keyframes Sizing {
	0% {
		transform:scale(0);
	}
	
	100% {
		transform:scale(1);
	}
}

/* Editor Panel Dark Mode */
.wpzoom-dark-mode .wpzoom-templates-library-template-category {
	border-color:#444;
}
.wpzoom-dark-mode .wpzoom-main-tiled-view .wpzoom-item {
	background-color:#26292c;
}
.wpzoom-dark-mode .wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar .wpzoom-btn-template-insert {
	color:#fff;
	border-color:#444;
}
.wpzoom-dark-mode .wpzoom-main-tiled-view .wpzoom-item .wpzoom-action-bar .wpzoom-btn-template-insert:hover {
	color:#111;
}
.wpzoom-dark-mode .wpzoom-main-tiled-view .wpzoom-item .wpzoom-template-thumb {
	border-color:#444;
}

/* PRO Template Restrictions */
.wpzoom-template-pro-only {
	border: 2px solid #3496ff !important;
}

.wpzoom-template-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.8);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: white;
	text-align: center;
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.wpzoom-template-thumb-locked:hover .wpzoom-template-overlay {
	opacity: 1;
}

.wpzoom-template-lock-icon {
	font-size: 24px;
	margin-bottom: 8px;
}

.wpzoom-template-pro-text {
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.wpzoom-btn-template-upgrade {
	color: #fff !important;
	cursor: pointer;
	padding: 5px 10px;
	width: 100%;
	border-radius: 3px;
	background: #3496ff;
	transition: .4s;
	text-decoration: none;
	text-align: center;
	display: block;
	font-size: 13px;
	font-weight: 600;
}

.wpzoom-btn-template-upgrade:hover {
	background: #000;
	transform: translateY(-1px);
	color: #fff !important;
}

.wpzoom-pro-badge {
	display: inline-block;
    padding: 4px 6px;
    border-radius: 3px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #fff;
    line-height: 1;
}

/* Dark mode styles for PRO elements */
.wpzoom-dark-mode .wpzoom-template-pro-only {
	opacity: 0.6;
}

.wpzoom-dark-mode .wpzoom-btn-template-upgrade {
	background: #3496ff;
}

.wpzoom-dark-mode .wpzoom-btn-template-upgrade:hover {
	background: #000;
}

/* ── Corner badges (PRO / NEW) ─────────────────────────────────── */
.wpzoom-badge-container {
	position: absolute;
	top: 8px;
	right: 8px;
	display: flex;
	gap: 4px;
	z-index: 10;
}
.wpzoom-badge {
	display: inline-block;
	padding: 2px 6px;
	border-radius: 3px;
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: #fff;
	line-height: 1.5;
}
.wpzoom-badge-pro {
	background: #4e4e4e;
}
.wpzoom-badge-new {
	background: #22c55e;
}

/* License-specific button styles */
.wpzoom-btn-license-expired {
	background: #e74c3c !important;
}

.wpzoom-btn-license-expired:hover {
	background: #c0392b !important;
}

.wpzoom-btn-license-inactive,
.wpzoom-btn-license-site_inactive {
	background: #f39c12 !important;
}

.wpzoom-btn-license-inactive:hover,
.wpzoom-btn-license-site_inactive:hover {
	background: #e67e22 !important;
}

.wpzoom-btn-license-invalid {
	background: #95a5a6 !important;
}

.wpzoom-btn-license-invalid:hover {
	background: #7f8c8d !important;
}

.wpzoom-btn-license-disabled {
	background: #8e44ad !important;
}

.wpzoom-btn-license-disabled:hover {
	background: #732d91 !important;
}

/* Default (no license) keeps the original blue color */
.wpzoom-btn-license- {
	background: #3496ff !important;
}

.wpzoom-btn-license-:hover {
	background: #000 !important;
}

/* WPZOOM Library Tabs (Templates / Sections) */
.elementor-templates-modal .wpzoom-template-library-tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 8px;
}

.elementor-templates-modal .wpzoom-library-tab {
	cursor: pointer;
	padding: 6px 10px;
	border-radius: 4px;
	background: #f3f4f5;
	color: #1d2327;
	border: 1px solid #dcdcde;
	line-height: 1.2;
	font-size: 12px;
}

.elementor-templates-modal .wpzoom-library-tab.is-active {
	background: #2271b1;
	color: #fff;
	border-color: #2271b1;
}
/* Filter dropdowns visibility */
#wpzoom-elementor-template-library-filter-theme[style*="display: none"]+.select2-container,
#wpzoom-elementor-template-library-filter-category[style*="display: none"]+.select2-container {
	display: none !important;
}

/* ── Toolbar row layout ─────────────────────────────────────────── */
#wpzoom-elementor-template-library-toolbar .wpzoom-toolbar-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 12px;
}
.wpzoom-toolbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.wpzoom-toolbar-right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* ── Tab count badge ────────────────────────────────────────────── */
.wpzoom-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: #e0e0e0;
    color: #555;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    vertical-align: middle;
}
.elementor-template-library-menu-item.elementor-active .wpzoom-tab-count {
    background: #292929;
    color: #fff;
}

/* ── Grid size buttons ──────────────────────────────────────────── */
.wpzoom-toolbar-grid-size {
    display: flex;
    align-items: center;
    gap: 4px;
}
.wpzoom-grid-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 30px;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    cursor: pointer;
    color: #888;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.wpzoom-grid-btn svg {
    fill: currentColor;
}
.wpzoom-grid-btn:hover {
    background: #f0f0f0;
    color: #333;
}
.wpzoom-grid-btn.wpzoom-grid-btn-active {
    background: #292929;
    border-color: #292929;
    color: #fff;
}

/* ── Grid column classes ────────────────────────────────────────── */
.wpzoom-main-tiled-view.wpzoom-grid-cols-3 .wpzoom-item { width: calc(33.333% - 30px) !important; }
.wpzoom-main-tiled-view.wpzoom-grid-cols-4 .wpzoom-item { width: calc(25% - 30px) !important; }
.wpzoom-main-tiled-view.wpzoom-grid-cols-5 .wpzoom-item { width: calc(20% - 30px) !important; }

/* ── Dark mode overrides ────────────────────────────────────────── */
.wpzoom-dark-mode .wpzoom-tab-count {
    background: #444;
    color: #ccc;
}
.wpzoom-dark-mode .elementor-template-library-menu-item.elementor-active .wpzoom-tab-count {
    background: #292929;
    color: #fff;
}
.wpzoom-dark-mode .wpzoom-grid-btn:hover {
    background: #3a3a3a;
    color: #eee;
}

/* ── Search input ───────────────────────────────────────────────── */
.wpzoom-toolbar-search {
    display: flex;
    align-items: center;
    gap: 6px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 0 8px;
    height: 27px;
    flex-shrink: 0;
}
.wpzoom-toolbar-search .eicon-search {
    color: #aaa;
    font-size: 14px;
    flex-shrink: 0;
}
#wpzoom-elementor-template-library-filter-text {
    border: none;
    outline: none;
    background: transparent;
    font-size: 13px;
    width: 160px;
    color: #333;
    line-height: 1;
    padding: 0;
}
#wpzoom-elementor-template-library-filter-text::placeholder {
    color: #bbb;
}
.wpzoom-search-clear {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    color: #aaa;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    line-height: 1;
}
.wpzoom-search-clear:hover {
    color: #555;
}

/* Dark mode search */
.wpzoom-dark-mode .wpzoom-toolbar-search {
    background: #2b2b2b;
    border-color: #444;
}
.wpzoom-dark-mode #wpzoom-elementor-template-library-filter-text {
    color: #ddd;
}
.wpzoom-dark-mode .wpzoom-toolbar-search .eicon-search,
.wpzoom-dark-mode .wpzoom-search-clear {
    color: #777;
}
.wpzoom-dark-mode .wpzoom-search-clear:hover {
    color: #ccc;
}

/* ── No-media toggle switch ─────────────────────────────────────── */
.wpzoom-toggle-wrap {
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    user-select: none;
    flex-shrink: 0;
}
.wpzoom-toggle-track {
    position: relative;
    width: 32px;
    height: 18px;
    background: #ccc;
    border-radius: 9px;
    transition: background 0.2s;
    flex-shrink: 0;
    cursor: pointer;
}
.wpzoom-toggle-track.wpzoom-media-btn-active {
    background: #292929;
}
.wpzoom-toggle-thumb {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    background: #fff;
    border-radius: 50%;
    transition: transform 0.2s;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}
.wpzoom-toggle-track.wpzoom-media-btn-active .wpzoom-toggle-thumb {
    transform: translateX(14px);
}
.wpzoom-toggle-label {
    font-size: 12px;
    color: #666;
    font-weight: 500;
    white-space: nowrap;
}

/* Dark mode */
.wpzoom-dark-mode .wpzoom-toggle-track {
    background: #555;
}
.wpzoom-dark-mode .wpzoom-toggle-track.wpzoom-media-btn-active {
    background: #fff;
}
.wpzoom-dark-mode .wpzoom-toggle-track.wpzoom-media-btn-active .wpzoom-toggle-thumb {
    background: #292929;
}
.wpzoom-dark-mode .wpzoom-toggle-label {
    color: #bbb;
}
/* Disabled state — used when the toggle is locked (e.g. wireframes tab) */
.wpzoom-toggle-wrap.wpzoom-toggle-disabled {
    opacity: 0.45;
    cursor: not-allowed;
    pointer-events: none;
}
