/* =================================================
	WISHLIST & SHARE MODAL COMPONENTS
	================================================= */
.joom-share-btn-round{
	position:relative;
	z-index:20;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:50%;
	box-shadow:0 2px 8px rgba(250,52,52,.08);
	font-size:20px;
	cursor:pointer;
	transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	line-height: 1;
	color: var(--price-color, #111827);
}

.joom-share-btn-round:hover{
	border-color: var(--primary-color, #FA3434);
	box-shadow:0 4px 14px rgba(250,52,52,.18);
	background:#ffeaea;
	transform: translateY(-2px);
	color: var(--primary-color, #FA3434);
}

.joom-share-btn-round:active{
	transform: translateY(0);
	box-shadow: 0 2px 6px rgba(250,52,52,.1);
}

.joom-wishlist-btn-round,
.mj-wishlist-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.mj-wishlist-btn {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 10;
}

.joom-wishlist-btn-round .woosw-btn,
.mj-wishlist-btn .woosw-btn {
	position: relative;
	z-index: 20;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(250,52,52,.08);
	font-size: 16px;
	cursor: pointer;
	transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
	width: 32px;
	height: 32px;
	min-width: 32px;
	min-height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	line-height: 1;
	color: var(--price-color, #111827);
	margin: 0;
	overflow: hidden;
}

.joom-wishlist-btn-round .woosw-btn::before,
.joom-wishlist-btn-round .woosw-btn i,
.mj-wishlist-btn .woosw-btn::before,
.mj-wishlist-btn .woosw-btn i {
	font-size: 16px;
	margin: 0;
	line-height: 1;
}

.joom-wishlist-btn-round .woosw-btn:hover,
.mj-wishlist-btn .woosw-btn:hover {
	border-color: var(--primary-color, #FA3434);
	box-shadow: 0 4px 14px rgba(250,52,52,.18);
	background: #ffeaea;
	transform: translateY(-2px);
	color: var(--primary-color, #FA3434);
}

.joom-wishlist-btn-round .woosw-btn.woosw-added,
.mj-wishlist-btn .woosw-btn.woosw-added {
	color: var(--primary-color, #FA3434);
	border-color: var(--primary-color, #FA3434);
	background: #fff5f5;
}

.joom-wishlist-btn-round .woosw-btn:active,
.mj-wishlist-btn .woosw-btn:active {
	transform: translateY(0);
	box-shadow: 0 2px 6px rgba(250,52,52,.1);
}

@media (max-width: 768px) {
	.joom-wishlist-btn-round .woosw-btn,
	.mj-wishlist-btn .woosw-btn {
	width: 24px;
	height: 24px;
	min-width: 24px;
	min-height: 24px;
	background: rgba(255, 255, 255, 0.95);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
	border: none;
	}
	.joom-wishlist-btn-round .woosw-btn::before,
	.joom-wishlist-btn-round .woosw-btn i,
	.mj-wishlist-btn .woosw-btn::before,
	.mj-wishlist-btn .woosw-btn i {
	font-size: 17px;
	}
}

/* Order View Free Shipping Label */
.free-shipping-label {
	color: #27ae60;
}

/* --- Core Application Box Sizing --- */
*, *::before, *::after {
	box-sizing: border-box;
}

:root {
	--mj-price-red: var(--primary-color, #FA3434);
	--mj-progress-bg: var(--border-color, #EEEEEE);
	--mj-text-black: var(--text-color, #222222);
	--mj-text-grey: var(--light-text-color, #666666);
	--mj-star-orange: #FF922B;
}

/* --- Desktop Sidebar & Product Grid Grid Setup --- */
.mj-shop-layout {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 24px;
	max-width: 1300px;
	margin: 0 auto;
	padding-top: 8px;
	padding-bottom: 8px;
	width: 100%;
}

.mj-shop-sidebar {
	width: 280px;
	flex-shrink: 0;
	position: relative;
	background: #FFFFFF;
	border-radius: 24px;
	padding: 0;
	border: none;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
	height: fit-content;
}

.mj-shop-main {
	flex: 1;
	min-width: 0;
	display: block;
	background: transparent;
	border-radius: 0;
	padding: 0;
	border: none;
	box-shadow: none;
}

.mj-mobile-filter-close {
	display: none;
}

/* --- Mobile Filtering Offcanvas Layout --- */
@media (max-width: 1023px) {
	.mj-shop-layout {
	flex-direction: column;
	align-items: stretch;
	}

	.mj-shop-main {
	width: 100%;
	max-width: 100%;
	}

	.mj-mobile-filter-overlay {
	display: block;
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.6);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.25s ease, visibility 0.25s ease;
	z-index: 9998;
	}

	.mj-shop-sidebar {
	position: fixed;
	top: 0;
	left: 0;
	width: min(320px, 86vw);
	max-width: 86vw;
	height: 100dvh;
	margin: 0;
	padding: 0; /* No padding from edges as requested */
	border-radius: 0;
	z-index: 9999;
	overflow-y: auto;
	transform: translateX(-105%);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 20px 0 50px rgba(0,0,0,0.15);
	}

	.mj-mobile-filter-close {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 50%;
	background: rgba(0,0,0,0.05);
	color: #111;
	font-size: 20px;
	}

	/* Sidebar Header for Mobile */
	.mj-shop-sidebar::before {
	content: "Filters";
	display: block;
	padding: 20px 24px;
	font-size: 20px;
	font-weight: 800;
	color: #111;
	border-bottom: 1px solid #eee;
	background: #fff;
	position: sticky;
	top: 0;
	z-index: 10;
	}

	.mj-shop-sidebar .mj-mobile-filter-close {
	position: absolute;
	top: 14px;
	right: 16px;
	z-index: 11;
	}

	/* Full-width category widget override */
	#woocommerce_product_categories-2 {
	padding: 0 !important;
	}

	#woocommerce_product_categories-2 .widget-title {
	padding: 24px 20px 10px; /* Restoring internal padding for the title only */
	}

	.mj-shop-sidebar .widget {
	padding: 15px 20px; /* Internal spacing for pro look */
	margin: 0;
	border-bottom: 8px solid #f8f9fb; /* Segmented sections */
	}

	.mj-shop-sidebar .widget:last-child {
	border-bottom: none;
	padding-bottom: 100px; /* Extra space for sticky button */
	}

	.mj-shop-sidebar .widget-title {
	font-size: 15px;
	color: #111;
	margin-bottom: 18px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	}

	body.mj-mobile-filters-open {
	overflow: hidden;
	}

	body.mj-mobile-filters-open .mj-mobile-filter-trigger-wrap {
	opacity: 0;
	pointer-events: none;
	}

	body.mj-mobile-filters-open .mj-shop-sidebar {
	transform: translateX(0);
	}

	body.mj-mobile-filters-open .mj-mobile-filter-overlay {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	}
}

/* --- Unified Sidebar Base --- */
.col-4 .sidebar {
	background: #FFFFFF;
	border-radius: 24px;
	padding: 0;
	border: none;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
	height: fit-content;
	width: 100%;
}

.mj-shop-sidebar .widget, .col-4 .sidebar .widget {
	background: transparent;
	border-radius: 0;
	padding: 24px 20px;
	margin-bottom: 0;
	box-shadow: none;
	border: none;
	border-bottom: 1px solid #F3F4F6;
	width: 100%;
}

.mj-shop-sidebar .widget select, .col-4 .sidebar .widget select,
.mj-shop-sidebar .widget input[type="text"], .col-4 .sidebar .widget input[type="text"],
.mj-shop-sidebar .widget input[type="search"], .col-4 .sidebar .widget input[type="search"],
.mj-shop-sidebar .widget input[type="number"], .col-4 .sidebar .widget input[type="number"],
.mj-shop-sidebar .widget ul, .col-4 .sidebar .widget ul {
	display: block;
	visibility: visible;
	opacity: 1;
}

.mj-shop-sidebar .widget:last-child, .col-4 .sidebar .widget:last-child {
	border-bottom: none;
}

.mj-shop-sidebar .widget:hover, .col-4 .sidebar .widget:hover {
	background: #F9FAFB;
}

.mj-shop-sidebar .widget-title, .col-4 .sidebar .widget-title {
	font-size: 18px;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 800;
	color: #111827;
	margin: 0 0 24px 0;
	padding-bottom: 0;
	border-bottom: none;
	position: relative;
}

.mj-shop-sidebar .widget-title::after, .col-4 .sidebar .widget-title::after {
	display: none;
}

.mj-shop-sidebar .widget select, .col-4 .sidebar .widget select,
.mj-shop-sidebar .widget input[type="text"], .col-4 .sidebar .widget input[type="text"],
.mj-shop-sidebar .widget input[type="number"], .col-4 .sidebar .widget input[type="number"],
.mj-shop-sidebar .widget button, .col-4 .sidebar .widget button {
	width: 100%;
	padding: 14px 16px;
	margin-bottom: 0px;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 500;
	color: var(--secondary-color, #0f172a);
	background-color: var(--bg-color, #f8fafc);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
}

.mj-shop-sidebar .widget select:hover, .col-4 .sidebar .widget select:hover,
.mj-shop-sidebar .widget input:hover, .col-4 .sidebar .widget input:hover,
.mj-shop-sidebar .widget button:hover, .col-4 .sidebar .widget button:hover {
	border-color: #D1D5DB;
	background-color: #FFFFFF;
}

.mj-shop-sidebar .widget select:focus, .col-4 .sidebar .widget select:focus,
.mj-shop-sidebar .widget input:focus, .col-4 .sidebar .widget input:focus,
.mj-shop-sidebar .widget button:focus, .col-4 .sidebar .widget button:focus {
	outline: none;
	border-color: var(--primary-color, #FA3434);
	background-color: #FFFFFF;
	box-shadow: 0 0 0 4px rgba(250, 52, 52, 0.1);
}

/* --- Fix Block Widgets Duplicate Wrappers --- */
.mj-shop-sidebar .widget_block {
	padding: 0;
	border: none;
	background: transparent;
}
.mj-shop-sidebar .widget_block .wc-block-components-panel,
.mj-shop-sidebar .widget_block .wp-block-woocommerce-price-filter {
	background: transparent;
	border: none;
	border-bottom: 1px solid #F3F4F6;
	padding: 15px 10px;
}
.mj-shop-sidebar .widget_block h2,
.mj-shop-sidebar .widget_block h3 {
	font-size: 18px;
	font-weight: 800;
	color: #111827;
	margin-bottom: 16px;
}

.mj-shop-sidebar .widget ul, .col-4 .sidebar .widget ul,
.mj-shop-sidebar .widget ol, .col-4 .sidebar .widget ol {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mj-shop-sidebar .widget li, .col-4 .sidebar .widget li {
	padding: 0px 12px;
	margin-bottom: 4px;

	border-radius: 8px;
	transition: all 0.2s ease;
	font-size: 14px;
	font-weight: 500;
}

.mj-shop-sidebar .widget li:last-child {
	margin-bottom: 0;
}



/* --- Advanced Sidebar Tabs UI --- */
.mj-shop-sidebar .widget .tabs-navigation,
.mj-shop-sidebar .widget .jet-tabs-control-wrapper {
	display: flex;
	flex-wrap: nowrap;
	border: 1px solid #E5E7EB;
	border-radius: 4px;
	overflow: hidden;
	margin-bottom: 15px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05);
	width: 100%;
	box-sizing: border-box;
}

.mj-shop-sidebar .widget .tabs-item,
.mj-shop-sidebar .widget .jet-tabs-control {
	flex: 1;
	text-align: center;
	padding: 10px 2px;
	font-size: 11px;
	font-weight: 700;
	color: #4B5563;
	background: #F9FAFB;
	border-right: 1px solid #E5E7EB;
	cursor: pointer;
	transition: all 0.2s ease;
	text-transform: capitalize;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 0;
}

.mj-shop-sidebar .widget .tabs-item:last-child,
.mj-shop-sidebar .widget .jet-tabs-control:last-child {
	border-right: none;
}

.mj-shop-sidebar .widget .tabs-item.active,
.mj-shop-sidebar .widget .jet-tabs-control.active,
.mj-shop-sidebar .widget .active-tab {
	background: #FFFFFF;
	color: var(--price-color, #212121);
	border-bottom: 2px solid var(--mj-price-red);
}





/* Desktop styling - Auto Fill Columns */
html body.woocommerce ul.products.mj-mega-grid,
html body.woocommerce-page ul.products.mj-mega-grid,
html body .mj-mega-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 16px;
	padding: 16px 0;
	margin: 0;
	width: 100%;
	max-width: 100%;
}
html body.woocommerce ul.products.mj-mega-grid::before,
html body.woocommerce ul.products.mj-mega-grid::after,
html body.woocommerce-page ul.products.mj-mega-grid::before,
html body.woocommerce-page ul.products.mj-mega-grid::after {
	display: none;
}
html body.woocommerce ul.products.mj-mega-grid li.product,
html body.woocommerce-page ul.products.mj-mega-grid li.product {
	width: 100%;
	margin: 0;
	padding: 0;
	float: none;
	list-style: none;
}

.mj-premium-card {
	background: var(--card-bg-color, #ffffff);
	border-radius: 20px;
	border: 1px solid var(--border-color, #f1f5f9);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	position: relative;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	min-height: 0;
	min-width: 0;
	width: 100%;
	height: 100%;
	contain: layout style paint;
	box-shadow: 0 4px 12px rgba(0,0,0,0.02);
}

.mj-premium-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 40px -8px rgba(0,0,0,0.12);
	border-color: var(--border-color, #e2e8f0);
	z-index: 2;
}

/* --- Product Image Wrapping --- */
.mj-visual-box {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	background-color: var(--bg-color, #f8fafc);
	flex-shrink: 0;
	overflow: hidden;
	border-radius: 20px 20px 0 0;
}

.mj-visual-box::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, transparent 70%, rgba(0,0,0,0.03) 100%);
	pointer-events: none;
	z-index: 1;
}

.mj-visual-box img,
html body.woocommerce ul.products li.product .mj-visual-box img,
html body.woocommerce-page ul.products li.product .mj-visual-box img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	max-width: 100%;
	image-rendering: crisp-edges;
	image-rendering: -webkit-optimize-contrast;
	margin: 0;
}

/* Enhanced Image Hover Transitions (Smooth Zoom + Crossfade) */
.mj-visual-box img.mj-primary-img {
	transform: scale(1);
	transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.mj-premium-card:hover .mj-visual-box img.mj-primary-img {
	transform: scale(1.08);
}

.mj-visual-box img.mj-secondary-img {
	opacity: 0;
	z-index: 2;
	transform: scale(1.03);
	transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.mj-premium-card:hover .mj-visual-box img.mj-secondary-img {
	opacity: 1;
	transform: scale(1.08);
}

/* --- Product Details Container --- */
.mj-card-details {
	padding: 10px 14px 10px;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.mj-price-cart-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0;
	flex-shrink: 0;
	width: 100%;
}

.mj-price-wrap {
	display: flex;
	align-items: center;
	color: var(--mj-price-red);
	gap: 2px;
	flex: 1 1 auto;
	min-width: 0;
}

.mj-flash-icon {
	font-size: 14px;
}

.mj-price-val {
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.mj-cart-btn {
	background-color: var(--secondary-color, #0f172a);
	color: var(--btn-text-color, #ffffff);
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	min-width: 36px;
	min-height: 36px;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.mj-cart-btn:hover {
	background-color: var(--primary-color, #FA3434);
	color: var(--btn-text-color, #ffffff);
	transform: translateY(-2px) scale(1.05);
	box-shadow: 0 6px 16px rgba(250, 52, 52, 0.25);
}

.mj-cart-btn.added,
.btn-add-cart.added {
	background-color: #28a745;
	color: #fff;
	border-radius: 50%;
}

.mj-cart-btn svg {
	width: 14px;
	height: 14px;
	stroke: white;
	stroke-width: 2.5;
	flex-shrink: 0;
	display: block;
}

/* --- Progress Bars --- */
.mj-stock-status {
	font-size: 11px;
	color: var(--mj-text-grey);
	margin-bottom: 4px;
}

.mj-progress-container {
	width: 100%;
	height: 3px;
	background-color: var(--mj-progress-bg);
	border-radius: 2px;
	margin-bottom: 8px;
}

.mj-progress-fill {
	height: 100%;
	background: var(--mj-price-red);
	width: 45%;
}

.mj-product-name,
html body.woocommerce ul.products li.product .mj-product-name,
html body.woocommerce-page ul.products li.product .mj-product-name {
	font-size: 14px;
	color: var(--secondary-color, #0f172a);
	line-height: 1.35 !important;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 10px;
	height: 38px;
	min-height: 38px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	box-orient: vertical;
	overflow: hidden;
	flex-shrink: 0;
	transition: color 0.2s ease;
}

.mj-premium-card:hover .mj-product-name {
	color: var(--primary-color, #FA3434);
}

/* Mobile-specific spacing fix for product card */
@media (max-width: 768px) {
	.mj-price-cart-row {
		margin-bottom: 8px;
	}
}

.mj-rating-badge {
	background-color: #000000;
	padding: 2px 4px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 11px;
	font-weight: 600;
	color: #ffffff;
	width: fit-content;
	flex-shrink: 0;
}

.mj-star {
	color: var(--mj-star-orange);
	font-size: 11px;
}

/* Archive Swatches */
.mj-rating-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: auto;
	width: 100%;
}
.mj-rating-row .mj-rating-badge {
	flex-shrink: 0;
}
.mj-archive-swatches {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: -4px -4px -4px 0;
	padding: 4px;
	flex-wrap: nowrap;
	justify-content: flex-start;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.mj-archive-swatches::-webkit-scrollbar {
	display: none;
}
.mj-archive-swatch {
	width: var(--mj-archive-swatch-size, 24px);
	height: var(--mj-archive-swatch-size, 24px);
	border-radius: var(--mj-archive-swatch-radius, 50%);
	border: 1px solid #e2e8f0;
	cursor: pointer;
	overflow: hidden;
	position: relative;
	background: #f8fafc;
	transition: all 0.2s ease;
	flex-shrink: 0;
	display: block;
}
.mj-archive-swatch:hover, .mj-archive-swatch.active {
	border-color: var(--primary-color, #FA3434);
	box-shadow: 0 0 0 1px var(--primary-color, #FA3434);
	transform: scale(1.1);
	z-index: 2;
}
html body .mj-premium-card .mj-archive-swatch img, 
html body .mj-premium-card .mj-archive-swatch .mj-archive-swatch-color {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	padding: 0;
	border: none;
}

/* Fix for Secondary Image Hover Interference */
html body .mj-premium-card.mj-swatch-active .mj-primary-img {
	opacity: 1;
	visibility: visible;
}
html body .mj-premium-card.mj-swatch-active .mj-secondary-img {
	display: none;
}

.mj-ad-badge {
	position: absolute;
	top: 6px; left: 6px;
	background: rgba(0,0,0,0.3);
	color: #fff;
	padding: 1px 5px;
	border-radius: 3px;
	font-size: 9px;
	z-index: 4;
}

@media (max-width: 600px) {
	html body.woocommerce ul.products.mj-mega-grid,
	html body.woocommerce-page ul.products.mj-mega-grid,
	html body .mj-mega-grid {
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	padding: 10px 0;
	}

	html body.woocommerce ul.products.joom-similar-products .mj-mega-grid,
	html body.woocommerce-page .joom-similar-products .mj-mega-grid,
	html body.woocommerce-page .joom-top-picks-section .mj-mega-grid {
	padding-left: 0;
	padding-right: 0;
	gap: 12px;
	margin: 0;
	}

	.mj-rating-badge {
	padding: 3px 6px;
	font-size: 11px;
	}

	.mj-premium-card {
	will-change: transform;
	backface-visibility: hidden;
	}
}

/* --- Infinite Scroll Elements --- */
.mj-load-more-wrap {
	width: 100%;
	display: flex;
	justify-content: center;
	padding: 14px 12px 24px;
}

.mj-load-more-btn {
	min-width: 180px;
	height: 48px;
	border: none;
	border-radius: 100px;
	background: var(--secondary-color, #0f172a);
	color: #ffffff;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.5px;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.15);
}

.mj-load-more-btn:hover {
	background: var(--text-color, #1e293b);
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.25);
}

.mj-load-more-btn:disabled,
.mj-load-more-btn.is-loading {
	opacity: 0.8;
	cursor: wait;
}


@media (max-width: 767px) {
	.tax-product_cat .mj-mega-grid,
	.post-type-archive-product .mj-mega-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	}
}

/* --- Catalog Filter Bar Horizontal --- */
.mj-filters-bar-wrapper {
	background: transparent;
	border-bottom: none;
	padding: 0 10px 16px 10px;
	margin: 0;
	box-shadow: none;
	min-height: auto;
	display: flex;
	align-items: center;
}

.mj-filters-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	width: 100%;
	max-width: 100%;
}

.mj-filters-list {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	align-items: center;
	flex: 1;
}

.mj-filter-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #FFFFFF;
	border: 1px solid #E5E7EB;
	border-radius: 100px;
	padding: 6px 14px;
	font-size: 13px;
	color: var(--secondary-color, #0f172a);
	font-weight: 600;
	box-shadow: 0 2px 8px rgba(0,0,0,0.02);
}

.mj-filter-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	background: #f1f5f9;
	border-radius: 50%;
	color: #64748b;
	text-decoration: none;
	font-weight: bold;
	transition: all 0.2s ease;
	cursor: pointer;
}

.mj-filter-remove:hover {
	background: var(--primary-color, #FA3434);
	color: #FFF;
}

.mj-clear-filters {
	display: inline-block;
	color: #64748b;
	background: #f8fafc;
	padding: 6px 14px;
	border-radius: 100px;
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.mj-clear-filters:hover {
	color: var(--secondary-color, #0f172a);
	background: #f1f5f9;
}

@media (max-width: 768px) {
	.mj-filters-bar {
	flex-direction: column;
	align-items: flex-start;
	}

	.mj-filters-list {
	width: 100%;
	}

	.mj-filter-badge {
	font-size: 12px;
	padding: 5px 10px;
	}
}

.woocommerce-account .site-content,
.woocommerce-account #content,
.woocommerce-account .content-area {
	max-width: 1300px;
	margin: 0 auto;
	padding: 40px 16px;
	width: 100%;
	display: block;
	box-shadow: none;
	background: transparent;
}

/* =================================================
	MY ACCOUNT DASHBOARD COMPONENTS
	================================================= */
.woocommerce-account {
	background: #f8fafc;
	padding: 0;
}

.woocommerce-account .site-main {
	display: flex;
	flex-direction: row;
	gap: 32px;
	align-items: flex-start;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
}

.woocommerce-account .container {
	max-width: 1300px;
	margin: 0 auto;
	width: 100%;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	flex: 0 0 320px;
	width: 320px;
	background: var(--card-bg-color, #ffffff);
	border: 1px solid var(--border-color, #e2e8f0);
	border-radius: 24px;
	padding: 32px 24px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04);
	height: fit-content;
	position: sticky;
	top: 100px;
}

.woocommerce-account .myaccount-profile {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 24px;
	padding-bottom: 24px;
	border-bottom: 1px dashed var(--border-color, #e2e8f0);
	width: 100%;
}

.woocommerce-account .myaccount-profile-avatar {
	width: 100px;
	height: 100px;
	margin: 0 auto 16px;
	border-radius: 50%;
	overflow: hidden;
	background: #ffffff;
	border: 4px solid #ffffff;
	box-shadow: 0 4px 14px rgba(0,0,0,0.08);
}

.woocommerce-account .myaccount-profile-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.woocommerce-account .myaccount-profile-name {
	font-size: 18px;
	font-weight: 800;
	color: var(--secondary-color, #0f172a);
	text-align: center;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: block;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
	display: block;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 16px 24px;
	font-size: 15px;
	font-weight: 600;
	color: var(--text-color, #64748b);
	text-decoration: none;
	border-radius: 14px;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	border-bottom: none;
	text-align: left;
	margin-bottom: 8px;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	background: var(--bg-color, #f8fafc);
	color: var(--secondary-color, #0f172a);
	transform: translateX(6px);
}

html body .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--primary-color, #FA3434);
	color: var(--btn-text-color, #ffffff);
	font-weight: 700;
	box-shadow: 0 10px 25px -5px rgba(250, 52, 52, 0.3), 0 8px 10px -6px rgba(250, 52, 52, 0.2);
	transform: translateY(-2px);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a:hover {
	transform: translateY(-2px) translateX(6px);
}

.woocommerce-account .entry-content {
	flex: 1;
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}

@media (max-width: 768px) {
	.woocommerce-account .site-main {
	flex-direction: column;
	gap: 20px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 100%;
	flex: none;
	position: relative;
	top: auto;
	padding: 0;
	background: transparent;
	border: none;
	box-shadow: none;
	margin-bottom: 10px;
	}

	.woocommerce-account .entry-content {
	width: 100%;
	padding: 8px;
	}
}



.woocommerce-account .entry-content h2 {
	font-size: 22px;
	font-weight: 700;
	color: var(--text-color, #111827);
	margin-top: 0;
	margin-bottom: 24px;
	padding-bottom: 16px;
	border-bottom: 2px solid var(--border-color, #f3f4f6);
}

.woocommerce-account .entry-content p {
	font-size: 14px;
	color: var(--text-color, #000000);
	line-height: 1.6;
	margin: 16px 0 16px 0;
}

.woocommerce-account .entry-content a {
	color: #FA3434;
	text-decoration: none;
	transition: color 0.2s ease;
}

.woocommerce-account .entry-content a:hover {
	color: #E83E3E;
	text-decoration: underline;
}

.woocommerce-account table.shop_table td {
	border-top: 0;
}

.woocommerce-account table.shop_table_responsive tr:nth-child(2n) td {
	background-color: transparent;
}

/* =================================================
	TABLES UI (ORDERS, WALLET, DOWNLOADS)
	================================================= */
.woocommerce-account .woocommerce-MyAccount-content .shop_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 16px;
	background: transparent;
	border: none;
	margin-top: 0;
	margin-bottom: 30px;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table thead th {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--border-color, #e2e8f0);
	padding: 0 20px 16px 20px;
	font-size: 12px;
	font-weight: 800;
	color: var(--light-text-color, #64748b);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	border-radius: 0;
	text-align: center;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table thead th:first-child {
	text-align: left;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table thead th:last-child {
	text-align: right;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody tr {
	background: var(--card-bg-color, #ffffff);
	box-shadow: 0 2px 8px rgba(0,0,0,0.02);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody tr:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 24px -6px rgba(0,0,0,0.08);
	z-index: 2;
	position: relative;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td,
.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th {
	padding: 24px 20px;
	border-top: 1px solid var(--border-color, #e2e8f0);
	border-bottom: 1px solid var(--border-color, #e2e8f0);
	color: var(--text-color, #334155);
	font-size: 14px;
	vertical-align: middle;
	text-align: center;
	background: var(--card-bg-color, #fff);
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td:first-child,
.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th:first-child {
	text-align: left;
	border-left: 1px solid var(--border-color, #e2e8f0);
	border-top-left-radius: 16px;
	border-bottom-left-radius: 16px;
	padding-left: 30px;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td:last-child,
.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th:last-child {
	text-align: right;
	border-right: 1px solid var(--border-color, #e2e8f0);
	border-top-right-radius: 16px;
	border-bottom-right-radius: 16px;
	padding-right: 30px;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-file a,
.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-number a {
	color: var(--secondary-color, #0f172a);
	font-weight: 800;
	font-size: 14.5px;
	text-decoration: none;
	background: #f8fafc;
	padding: 6px 12px;
	border-radius: 8px;
	border: 1px solid #e2e8f0;
	transition: all 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-file a:hover,
.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-number a:hover {
	background: var(--secondary-color, #0f172a);
	color: #ffffff !important;
	border-color: var(--secondary-color, #0f172a);
	box-shadow: 0 4px 12px rgba(15,23,42,0.15);
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status {
	padding: 6px 16px;
	border-radius: 100px;
	font-size: 12px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-transform: capitalize;
	background: #f1f5f9;
	color: #475569;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status.status-completed {
	background: #dcfce7; color: #166534;
}
.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status.status-processing {
	background: #eff6ff; color: #1e40af;
}
.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status.status-on-hold {
	background: #fffbeb; color: #b45309;
}
.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status.status-cancelled,
.woocommerce-account .woocommerce-MyAccount-content .shop_table mark.order-status.status-failed {
	background: #fef2f2; color: #b91c1c;
}

.woocommerce-account .woocommerce-MyAccount-content .shop_table .button {
	background: #f8fafc;
	color: #475569;
	padding: 10px 28px;
	border-radius: 100px;
	font-weight: 800;
	font-size: 14px;
	border: 1px solid #e2e8f0;
	box-shadow: none;
	transition: all 0.2s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 80px;
	line-height: 1;
	text-decoration: none;
}

html body .woocommerce-account .woocommerce-MyAccount-content .shop_table .button:hover {
	background: var(--secondary-color, #0f172a);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
	color: #ffffff;
	border-color: var(--secondary-color, #0f172a);
}

.woocommerce-AccountOrdersTable { display: none; }

.pro-dashboard {
	padding: 0;
	background: transparent;
}

.pro-dashboard__header {
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 2px solid #f3f4f6;
}

.pro-dashboard__header h1 {
	font-size: 32px;
	color: var(--secondary-color, #0f172a);
	margin: 0 0 10px 0;
	letter-spacing: -0.5px;
}

.pro-dashboard__header h1 span {
	color: var(--primary-color, #FA3434);
}

.pro-dashboard__header p {
	color: var(--light-text-color, #64748b);
	font-size: 16px;
	line-height: 1.6;
	max-width: 600px;
}

.pro-stats-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 24px;
	margin-bottom: 40px;
}

.pro-stat-card {
	background: var(--card-bg-color, #ffffff);
	border: 1px solid var(--border-color, #f1f5f9);
	border-radius: 24px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
	text-decoration: none;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02), 0 10px 15px -3px rgba(0,0,0,0.04);
}

.pro-stat-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 25px -5px rgba(0,0,0,0.08), 0 10px 10px -5px rgba(0,0,0,0.04);
	border-color: #e2e8f0;
}

.pro-stat-icon {
	width: 56px;
	height: 56px;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	background: var(--bg-color, #f8fafc);
	color: var(--primary-color, #FA3434);
	box-shadow: inset 0 2px 4px rgba(0,0,0,0.04);
}

.pro-stat-content h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 800;
	color: var(--secondary-color, #0f172a);
}

.pro-stat-content p {
	margin: 2px 0 0 0;
	font-size: 13px;
	color: var(--light-text-color, #64748b);
}

.pro-stat-arrow {
	margin-left: auto;
	position: absolute;
	top: 24px;
	right: 24px;
	color: #94a3b8;
	font-size: 18px;
	transition: all 0.2s ease;
}

.pro-stat-card:hover .pro-stat-arrow {
	color: var(--secondary-color, #0f172a);
	transform: translate(3px, -3px);
}

.pro-dashboard-featured {
	background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
	border-radius: 24px;
	padding: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #ffffff;
	position: relative;
	margin-top: 40px;
	box-shadow: 0 20px 40px rgba(15, 23, 42, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.05);
}

.pro-dashboard-featured h3 {
	margin: 0 0 10px 0;
	font-size: 24px;
	font-weight: 800;
	color: #fff;
}

.pro-dashboard-featured p {
	color: #ffffff;
	font-size: 15px;
	max-width: 400px;
	margin-bottom: 20px;
}

html body .featured-btn {
	display: inline-block;
	background: var(--primary-color, #FA3434);
	color: #ffffff;
	padding: 12px 28px;
	border-radius: 12px;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 4px 12px rgba(250,52,52,0.2);
}

html body .featured-btn:hover {
	color: #ffffff;
	background: var(--btn-hover-bg-color, #e62e2e);
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(250,52,52,0.3);
}

.featured-image {
	display: block;
	font-size: 80px;
	opacity: 0.1;
	position: absolute;
	right: -10px;
	bottom: -10px;
	top: auto;
	transform: rotate(-15deg);
	z-index: 1;
}

/* --- Dashboard Forms & Mobile Alignment --- */
@media (max-width: 768px) {
	.woocommerce-account .woocommerce-MyAccount-content .shop_table {
	border: none;
	background: transparent;
	display: block;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table thead {
	display: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tr {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tr {
	margin-bottom: 20px;
	border: 1px solid var(--border-color, #e5e7eb);
	border-radius: 20px;
	padding: 0;
	background: var(--card-bg-color, #fff);
	box-shadow: 0 4px 12px rgba(0,0,0,0.03);
	overflow: hidden;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	border: none;
	border-bottom: 1px solid var(--border-color, #f1f5f9);
	text-align: right;
	font-size: 14px;
	background: transparent;
	border-radius: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-total .amount {
	margin-right: 4px;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-file,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-number {
	border-bottom: 1px solid var(--border-color, #e2e8f0);
	padding-top: 16px;
	font-size: 15px;
	background: #f8fafc;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td:last-child,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th:last-child {
	border-bottom: none;
	padding-bottom: 16px;
	margin-top: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-actions .button,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-actions .button {
	width: 100%;
	text-align: center;
	justify-content: center;
	padding: 14px 24px;
	font-size: 15px;
	background: var(--secondary-color, #0f172a);
	color: #ffffff;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-actions,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-actions {
	padding: 16px;
	background: #f8fafc;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td.download-actions::before,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody .woocommerce-orders-table__cell-order-actions::before {
	display: none !important;
	}

	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody td::before,
	.woocommerce-account .woocommerce-MyAccount-content .shop_table tbody th::before {
	content: attr(data-title) ": ";
	font-weight: 700;
	color: var(--text-color, #64748b);
	text-transform: uppercase;
	font-size: 11px;
	text-align: left;
	flex: 1;
	}

	.woocommerce-account:not(.woocommerce-dashboard) .woocommerce-MyAccount-navigation,
	.woocommerce-account:not(.woocommerce-dashboard) .myaccount-profile {
		display: none;
	}

	.woocommerce-Addresses {
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.woocommerce-Address {
	padding: 15px;
	min-height: auto;
	}

	.woocommerce-Address-title h3 {
	font-size: 14px;
	}

	.woocommerce-Address .edit {
	padding: 6px 12px;
	font-size: 12px;
	width: auto;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: flex;
	overflow-x: auto;
	white-space: nowrap;
	gap: 14px;
	padding: 8px 8px 24px 8px;
	scrollbar-width: none; /* Firefox */
	-webkit-overflow-scrolling: touch;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
	display: none;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation li {
	flex: 0 0 auto;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation a {
	padding: 14px 28px;
	font-size: 14.5px;
	font-weight: 600;
	border-bottom: none;
	background: var(--card-bg-color, #ffffff);
	border: 1px solid var(--border-color, #e2e8f0);
	border-radius: 100px;
	text-align: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
	transform: none;
	}

	html body .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--primary-color, #FA3434);
	color: var(--btn-text-color, #ffffff);
	border-color: var(--primary-color, #FA3434);
	box-shadow: 0 8px 20px rgba(250, 52, 52, 0.3);
	transform: translateY(-2px);
	}

	.woocommerce-account .myaccount-profile {
	flex-direction: row;
	align-items: center;
	text-align: left;
	padding: 0 0 16px 0;
	gap: 12px;
	border-bottom: 1px dashed var(--border-color, #e2e8f0);
	margin-bottom: 16px;
	}

	.woocommerce-account .myaccount-profile-avatar {
	width: 56px;
	height: 56px;
	min-width: 56px;
	min-height: 56px;
	flex-shrink: 0;
	margin: 0;
	border-width: 2px;
	}

	.woocommerce-account .myaccount-profile-name {
	font-size: 16px;
	text-align: left;
	word-break: break-word;
	}

	.pro-dashboard__header {
	margin-bottom: 20px;
	padding-bottom: 16px;
	}

	.pro-dashboard__header h1 {
	font-size: 24px;
	}

	.pro-dashboard__header p {
	font-size: 14px;
	}

	.pro-dashboard-featured {
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
	padding: 24px;
	}
}

.woocommerce-account .u-columns.col2-set {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	margin-top: 24px;
}

.woocommerce-account .u-columns.col2-set .u-column1,
.woocommerce-account .u-columns.col2-set .u-column2 {
	flex: 1;
	min-width: 0;
	background: var(--bg-color, #f9fafb);
	padding: 24px;
	border-radius: 12px;
	border: 1px solid var(--border-color, #e5e7eb);
	display: flex;
	flex-direction: column;
	gap: 12px;
	position: relative;
	min-height: 180px;
	box-sizing: border-box;
	max-width: 100%;
}

.woocommerce-account .addresses header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	border-bottom: 1px solid var(--border-color, #e5e7eb);
	padding-bottom: 8px;
}

.woocommerce-account .addresses header h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: var(--text-color, #111827);
}

.woocommerce-account .address address {
	font-style: normal;
	line-height: 1.6;
	font-size: 14px;
	color: var(--text-color, #4b5563);
	margin-bottom: 0;
	word-break: break-word;
	overflow-wrap: break-word;
}

/* =================================================
	MY ACCOUNT - VIEW ORDER UI (CLEAN & SIMPLE)
	================================================= */
.view-order-container {
	max-width: 900px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
}

.order-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 24px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.02);
	flex-wrap: wrap;
	gap: 16px;
}

.order-header__info .order-number {
	font-size: 20px;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 6px 0;
}

.order-header__info .order-date {
	font-size: 14px;
	color: #64748b;
	margin: 0;
}

.order-header__status .order-status {
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	border-radius: 100px;
	font-size: 13px;
	font-weight: 600;
	text-transform: capitalize;
	background: #f1f5f9;
	color: #475569;
}
.order-status.status-completed { background: #dcfce7; color: #166534; }
.order-status.status-processing { background: #eff6ff; color: #1e40af; }
.order-status.status-on-hold { background: #fffbeb; color: #b45309; }
.order-status.status-cancelled,
.order-status.status-failed { background: #fef2f2; color: #b91c1c; }

.order-section {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 24px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.02);
}

.section-title {
	font-size: 16px;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 20px 0;
	display: flex;
	align-items: center;
	gap: 10px;
	border-bottom: 1px solid #f1f5f9;
	padding-bottom: 16px;
}

.section-title svg {
	color: #FA3434;
	stroke: #FA3434;
}

.order-items-wrapper {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.order-item-card {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid #f1f5f9;
}
.order-item-card:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.item-image {
	width: 70px;
	height: 70px;
	border-radius: 8px;
	background: #f8fafc;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid #f1f5f9;
}
.item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.item-details {
	flex: 1;
	min-width: 0;
}
.item-name {
	font-size: 15px;
	font-weight: 600;
	color: #0f172a;
	margin: 0 0 6px 0;
	line-height: 1.4;
}
.item-details dl.variation {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 6px 0;
	font-size: 13px;
	color: #64748b;
}
.item-details dl.variation dt {
	font-weight: 600;
	color: #0f172a;
	margin: 0;
}
.item-details dl.variation dd {
	margin: 0 12px 0 0;
}
.item-details dl.variation p {
	margin: 0;
}

.item-meta {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	color: #64748b;
	margin-top: 6px;
}
.item-qty {
	font-weight: 500;
}
.item-price {
	font-weight: 700;
	color: #0f172a;
}

.item-actions .btn-write-review {
	background: #000000;
	color: #0f172a;
	border: 1px solid #e2e8f0;
	padding: 8px 16px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: none;
}
.item-actions .btn-write-review:hover {
	background: #0f172a;
	color: #ffffff;
	border-color: #0f172a;
}

.order-summary-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	margin-bottom: 24px;
}

.order-totals-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	background: transparent;
	border: none;
	padding: 0;
}

.total-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 14px;
	color: #475569;
	padding: 0;
	border: none;
}
.total-row.total-amount {
	margin-top: 8px;
	padding-top: 16px;
	border-top: 1px dashed #e2e8f0;
	font-size: 16px;
	font-weight: 700;
	color: #0f172a;
}
.total-amount .total-value {
	font-size: 18px;
	color: #FA3434;
}

.order-methods {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.method-box {
	background: #f8fafc;
	border: 1px solid #f1f5f9;
	border-radius: 12px;
	padding: 16px;
}
.method-title {
	font-size: 13px;
	font-weight: 600;
	color: #64748b;
	margin: 0 0 8px 0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
}
.method-content {
	font-size: 15px;
	font-weight: 500;
	color: #0f172a;
	margin: 0;
}

.order-addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}
.address-box {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.02);
}
.address-title {
	font-size: 15px;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 16px 0;
	display: flex;
	align-items: center;
	border-bottom: none;
	padding-bottom: 0;
}
.address-content {
	font-size: 14px;
	line-height: 1.6;
	color: #475569;
	font-style: normal;
	margin-bottom: 16px;
}
.address-phone, .address-email {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: #64748b;
	margin: 8px 0;
	background: transparent;
	padding: 0;
}

@media (max-width: 768px) {
	.order-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}
	.order-summary-wrapper, .order-addresses {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.order-item-card {
		flex-direction: column;
		align-items: flex-start;
		position: relative;
		gap: 12px;
	}
	.item-actions {
		width: 100%;
		margin: 0;
	}
	.item-actions .btn-write-review {
		width: 100%;
		text-align: center;
		justify-content: center;
	}
	.view-order-container {
		padding: 0 12px;
	}
}

.woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
	margin-top: 24px;
}

.woocommerce-Address {
	width: 100%;
	background: var(--card-bg-color, #ffffff);
	padding: 32px;
	border-radius: 20px;
	border: 1px solid var(--border-color, #f1f5f9);
	box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02), 0 10px 15px -3px rgba(0,0,0,0.04);
	display: flex;
	flex-direction: column;
	gap: 16px;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
	max-width: 100%;
}

.woocommerce-Address:hover {
	border-color: var(--border-color, #e2e8f0);
	box-shadow: 0 20px 25px -5px rgba(0,0,0,0.08), 0 10px 10px -5px rgba(0,0,0,0.04);
	transform: translateY(-4px);
}

.woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 5px;
	border-bottom: 1px dashed var(--border-color, #e2e8f0);
	padding-bottom: 16px;
}

.woocommerce-Address-title h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 800;
	color: var(--text-color, #0f172a);
}

.woocommerce-Address address {
	font-style: normal;
	line-height: 1.6;
	font-size: 14px;
	color: var(--text-color, #4b5563);
	margin-bottom: 0;
	flex-grow: 1;
	word-break: break-word;
	overflow-wrap: break-word;
}

@media (max-width: 768px) {
	.woocommerce-account .u-columns.col2-set {
		flex-direction: column;
	}
	.woocommerce-Addresses {
		grid-template-columns: 1fr;
	}
	.woocommerce-Address {
		padding: 20px;
	}
}

.woocommerce-account .addresses .edit,
.woocommerce-Address .edit,
.woocommerce-account .u-column1 .edit,
.woocommerce-account .u-column2 .edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--primary-color, #FA3434);
	color: #fff;
	padding: 8px 16px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 700;
	font-size: 13px;
	transition: all 0.2s ease;
	text-align: center;
	margin: 0;
}

.woocommerce-account .addresses .edit:hover,
.woocommerce-Address .edit:hover,
.woocommerce-account .u-column1 .edit:hover,
.woocommerce-account .u-column2 .edit:hover {
	background: var(--btn-hover-bg-color, #e83e3e);
	color: #fff;
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(250, 52, 52, 0.2);
}

.woocommerce-account .u-column1 p,
.woocommerce-account .u-column2 p {
	margin: 0 0 15px 0;
	font-size: 14px;
	color: #6b7280;
	line-height: 1.5;
}

.woocommerce-account .woocommerce-MyAccount-navigation + .entry-content > div > p,
.woocommerce-account .woocommerce-addresses-header p {
	background: var(--card-bg-color, #ffffff);
	padding: 18px 24px;
	border-radius: 16px;
	font-size: 15px;
	color: var(--text-color, #4b5563);
	border: 1px solid var(--border-color, #f1f5f9);
	box-shadow: 0 4px 16px rgba(0,0,0,0.02);
	margin-bottom: 30px;
	font-weight: 500;
}

.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row {
	margin-bottom: 20px;
}

.woocommerce-account .woocommerce-EditAccountForm label,
.woocommerce-account .woocommerce-address-fields label {
	display: block;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--text-color, #334155);
	margin-bottom: 6px;
}

.woocommerce-account .woocommerce-EditAccountForm input.input-text,
.woocommerce-account .woocommerce-address-fields input.input-text,
.woocommerce-account .woocommerce-address-fields select {
	width: 100%;
	height: 50px;
	padding: 0 16px;
	border-radius: 12px;
	border: 1px solid var(--border-color, #e2e8f0);
	background: var(--bg-color, #f8fafc);
	font-size: 15px;
	color: var(--secondary-color, #0f172a);
	transition: all 0.2s ease;
}

.woocommerce-account .woocommerce-EditAccountForm input.input-text:focus,
.woocommerce-account .woocommerce-address-fields input.input-text:focus,
.woocommerce-account .woocommerce-address-fields select:focus {
	border-color: var(--primary-color, #FA3434);
	background: #ffffff;
	outline: none;
	box-shadow: 0 0 0 3px rgba(250, 52, 52, 0.1);
}

.woocommerce-account .woocommerce-EditAccountForm fieldset,
.woocommerce-account .woocommerce-address-fields fieldset {
	border: 1px solid var(--border-color, #e2e8f0);
	padding: 24px;
	border-radius: 16px;
	margin: 24px 0;
	background: var(--bg-color, #f8fafc);
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend,
.woocommerce-account .woocommerce-address-fields fieldset legend {
	font-weight: 800;
	font-size: 18px;
	color: var(--text-color, #0f172a);
	padding: 0 10px;
}

.woocommerce-account .woocommerce-EditAccountForm .button.button,
.woocommerce-account .woocommerce-address-fields .button.button {
	background: var(--primary-color, #FA3434);
	color: #ffffff;
	padding: 14px 32px;
	height: 50px;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 800;
	border: none;
	cursor: pointer;
	transition: background 0.2s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 12px rgba(250,52,52,0.2);
}

.woocommerce-account .woocommerce-EditAccountForm .button.button:hover,
.woocommerce-account .woocommerce-address-fields .button.button:hover {
	background: var(--btn-hover-bg-color, #e62e2e);
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(250,52,52,0.3);
}

.woocommerce-account .woocommerce-MyAccount-content > form,
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-notices-wrapper + form,
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-ResetPassword,
.woocommerce-account .woocommerce-MyAccount-content > .woo-wallet-my-wallet-container {
	background: var(--card-bg-color, #ffffff);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
	border: 1px solid var(--border-color, #f1f5f9);
	margin-top: 10px;
	color: var(--text-color, #333333);
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	background: var(--card-bg-color, #ffffff);
	border-radius: 16px;
	padding: 20px 24px;
	border: 1px solid var(--border-color, #f1f5f9);
	border-left: 4px solid var(--primary-color, #FA3434);
	box-shadow: 0 4px 20px rgba(0,0,0,0.03);
	color: var(--secondary-color, #0f172a);
	font-weight: 500;
	margin-bottom: 24px;
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message .button.button,
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .button.button {
	background: var(--secondary-color, #0f172a);
	color: #fff;
	border-radius: 10px;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
	transition: all 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message .button.button:hover,
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .button.button:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.25);
	background: var(--primary-color, #FA3434);
}

/* =================================================
	AUTHENTICATION UI OVERRIDES
	================================================= */
.joom-auth-page-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 50vh;
	padding: 40px 20px;
	width: 100%;
}

.joom-auth-cards-container {
	display: flex;
	gap: 30px;
	align-items: stretch;
	justify-content: center;
	width: 100%;
	max-width: 900px;
}

.joom-auth-card {
	background: var(--card-bg-color, #ffffff);
	width: 100%;
	max-width: 440px;
	border-radius: 20px;
	box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.08), 0 10px 15px -5px rgba(0, 0, 0, 0.04);
	border: 1px solid var(--border-color, #f1f5f9);
	padding: 40px;
	flex: 1;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.joom-auth-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.12);
}

.joom-auth-header {
	text-align: center;
	margin-bottom: 30px;
}

.joom-auth-icon {
	width: 64px;
	height: 64px;
	background: #fff5f5;
	color: var(--primary-color, #FA3434);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
}

.joom-auth-icon svg {
	width: 32px;
	height: 32px;
	stroke: currentColor;
}

.joom-auth-header h1 {
	font-size: 24px;
	font-weight: 800;
	color: var(--text-color, #111827);
	margin: 0 0 12px 0;
	border: none;
	padding: 0;
}

.joom-auth-header p {
	font-size: 14.5px;
	color: var(--text-color, #64748b);
	line-height: 1.6;
	margin: 0;
}

.joom-auth-form .joom-form-group {
	margin-bottom: 24px;
}

.joom-auth-form label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--text-color, #334155);
	margin-bottom: 8px;
}

.joom-auth-form input[type="text"],
.joom-auth-form input[type="email"] {
	width: 100%;
	height: 50px;
	padding: 0 16px;
	border: 1px solid var(--border-color, #e2e8f0);
	border-radius: 12px;
	font-size: 15px;
	background: var(--bg-color, #f8fafc);
	transition: all 0.2s ease;
	color: var(--secondary-color, #0f172a);
}

.joom-auth-form input[type="text"]:focus,
.joom-auth-form input[type="email"]:focus {
	background: #ffffff;
	border-color: var(--primary-color, #FA3434);
	box-shadow: 0 0 0 3px rgba(250, 52, 52, 0.1);
	outline: none;
}

.joom-auth-btn {
	width: 100%;
	height: 50px;
	background: var(--primary-color, #FA3434);
	color: #ffffff;
	border: none;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	box-shadow: 0 4px 12px rgba(250, 52, 52, 0.2);
	margin: 0;
	padding: 0;
}

.joom-auth-btn:hover {
	background: var(--btn-hover-bg-color, #e62e2e);
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(250, 52, 52, 0.3);
}

.joom-auth-btn-dark {
	background: var(--secondary-color, #111827);
	box-shadow: 0 4px 12px rgba(17, 24, 39, 0.2);
}

.joom-auth-btn-dark:hover {
	background: #000000;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.joom-auth-footer {
	margin-top: 30px;
	padding-top: 24px;
	border-top: 1px solid var(--border-color, #f1f5f9);
	text-align: center;
}

.joom-back-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--text-color, #64748b);
	font-size: 14.5px;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.2s ease;
}

.joom-back-link svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
}

.joom-back-link:hover {
	color: var(--primary-color, #111827);
}

.woocommerce-lost-password .joom-mobile-account-back {
	display: none;
}

@media (max-width: 768px) {
	.joom-auth-page-wrapper {
		padding: 20px 12px;
		min-height: auto;
	}

	.joom-auth-cards-container {
		flex-direction: column;
		gap: 24px;
	}

	.joom-auth-card {
		padding: 30px 20px;
		border-radius: 16px;
		box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
	}

	.woocommerce-account .woocommerce-MyAccount-content > form,
	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-notices-wrapper + form,
	.woocommerce-account .woocommerce-MyAccount-content > .woo-wallet-my-wallet-container {
		padding: 24px 20px;
		border-radius: 20px;
	}

	.joom-auth-header h1 {
		font-size: 22px;
	}

	.joom-auth-header p {
		font-size: 14px;
	}
}

/* =================================================
	ACCOUNT PAGINATION (PREVIOUS / NEXT)
	================================================= */
.woocommerce-account .woocommerce-pagination {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #f1f5f9;
}

.woocommerce-account .woocommerce-pagination a,
.woocommerce-account .woocommerce-pagination .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	background: var(--card-bg-color, #ffffff);
	color: var(--text-color, #0f172a);
	border: 1px solid var(--border-color, #e2e8f0);
	padding: 12px 28px;
	border-radius: 12px;
	font-size: 14.5px;
	font-weight: 700;
	transition: all 0.3s ease;
	box-shadow: 0 4px 12px rgba(0,0,0,0.03);
	text-decoration: none;
}

.woocommerce-account .woocommerce-pagination a:hover,
.woocommerce-account .woocommerce-pagination .button:hover {
	background: #ffffff;
	color: var(--primary-color, #FA3434);
	border-color: var(--primary-color, #FA3434);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(250, 52, 52, 0.12);
}

.woocommerce-account .woocommerce-pagination a:hover *,
.woocommerce-account .woocommerce-pagination .button:hover * {
	color: var(--primary-color, #FA3434);
}

/* =================================================
	SIDEBAR CATEGORIES WIDGET 
	================================================= */
body .sidebar .widget.widget_product_categories, body .mj-shop-sidebar .widget.widget_product_categories, body .widget.widget_product_categories {
	padding: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}
body .sidebar .widget.widget_product_categories form, body .mj-shop-sidebar .widget.widget_product_categories form, body .widget.widget_product_categories form {
	padding: 16px 20px 24px;
	margin: 0;
}

.widget_product_categories .widget-title {
	padding: 16px 20px;
	margin: 0;
	background: var(--bg-color, #f8fafc);
	border-bottom: 1px solid var(--border-color, #e2e8f0);
	font-size: 16px;
	font-weight: 800;
	color: var(--secondary-color, #0f172a);
	display: flex;
	align-items: center;
	gap: 10px;
}

.mj-drilldown-header {
	display: flex;
	align-items: center;
	padding: 12px 20px;
	background: var(--bg-color, #f1f5f9);
	border-bottom: 1px solid var(--border-color, #e2e8f0);
	gap: 12px;
	transition: all 0.3s ease;
}

.mj-drilldown-header.mj-hidden {
	display: none;
}

.mj-drilldown-back {
	background: var(--card-bg-color, #ffffff);
	border: 1px solid var(--border-color, #cbd5e1);
	color: var(--text-color, #475569);
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 8px;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	width: auto;
	margin: 0;
}

.mj-drilldown-back:hover {
	background: var(--secondary-color, #0f172a);
	border-color: var(--secondary-color, #0f172a);
	color: var(--btn-text-color, #ffffff);
	transform: translateX(-2px);
}

.widget_product_categories .mj-drilldown-title-wrap {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 14.5px;
	font-weight: 700;
	color: var(--secondary-color, #0f172a);
	text-align: right;
}

.widget_product_categories ul.product-categories,
.widget_product_categories ul.children.mj-active-level {
	padding: 8px 0;
	margin: 0;
	list-style: none;
	display: block;
}

.widget_product_categories li.mj-hidden,
.widget_product_categories a.mj-hidden {
	display: none;
}
html body .widget_product_categories li.mj-see-more-hidden {
	display: none !important;
}

.widget_product_categories ul.children {
	display: none;
	margin: 0;
	padding: 0;
}

.widget_product_categories ul.children.mj-active-level {
	display: block;
}

.widget_product_categories li {
	padding: 0;
	margin: 0;
	border: none;
	background: transparent;
}

.widget_product_categories li a {
	display: flex;
	align-items: center;
	padding: 8px 20px;
	color: var(--text-color, #000);
	font-size: 14.5px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.2s ease;
	position: relative;
	border-radius: 0;
	background: transparent;
}

.widget_product_categories li a:hover {
	background: transparent;
	color: var(--primary-color, #000);
	padding-left: 24px;
}

.widget_product_categories li.current-cat > a {
	color: var(--primary-color, #000);
	background: var(--bg-color, #f8fafc);
	font-weight: 800;
	border-left: 3px solid var(--primary-color, #000);
	padding-left: 17px;
}

.widget_product_categories li.current-cat > a:hover {
	padding-left: 21px;
}

.widget_product_categories .count {
	background: var(--bg-color, #f1f5f9);
	color: var(--light-text-color, #64748b);
	font-size: 11.5px;
	padding: 2px 8px;
	border-radius: 20px;
	margin-left: auto;
	margin-right: 8px;
	font-weight: 700;
	transition: all 0.2s ease;
}

.widget_product_categories li a:hover .count {
	box-shadow: none;
}

.widget_product_categories li.current-cat > a .count {
	background: var(--primary-color, #FA3434);
	color: var(--btn-text-color, #ffffff);
}

.mj-drilldown-arrow {
	color: var(--light-text-color, #94a3b8);
	font-size: 13px;
	margin-left: auto;
	transition: transform 0.2s ease, color 0.2s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--bg-color, #f8fafc);
}

/* Override margin-left auto if .count exists, ensure proper alignment */
.widget_product_categories li a.mj-has-count .mj-drilldown-arrow {
	margin-left: 0;
}

.widget_product_categories li a:hover .mj-drilldown-arrow {
	color: var(--primary-color, #94a3b8);
	background: var(--bg-color, #f8fafc);
	transform: none;
}

/* View all item specific styling */
.mj-view-all-item > a {
	color: var(--text-color, #000);
	font-weight: 800;
	border-bottom: 1px dashed var(--border-color, #e2e8f0);
	margin-bottom: 8px;
	padding-bottom: 16px;
	background: var(--bg-color, #f8fafc);
}

.mj-view-all-item > a:hover {
	color: var(--primary-color, #000);
	background: var(--card-bg-color, #ffffff);
	padding-left: 24px;
}

@keyframes mjSlideInRight {
	from { opacity: 0; transform: translateX(20px); }
	to { opacity: 1; transform: translateX(0); }
}

/* See More Button styling */
html body .widget_product_categories .mj-see-more-wrap {
	padding: 10px 20px 15px 20px;
	margin: 0;
	border: none;
	background: transparent;
}

html body .widget_product_categories .mj-cat-see-more-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px 16px;
	margin: 0;
	color: #000000;
	font-size: 14px;
	font-weight: 600;
	background-color: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	width: 100%;
	line-height: 1;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	gap: 8px;
}

html body .widget_product_categories .mj-cat-see-more-btn i {
	font-size: 12px;
	color: inherit;
	margin-left: 0;
	transition: transform 0.3s ease;
}

html body .widget_product_categories .mj-see-more-wrap.expanded .mj-cat-see-more-btn i {
	transform: rotate(180deg);
}

html body .widget_product_categories .mj-cat-see-more-btn:hover {
	border-color: #cbd5e1;
	background-color: #f8fafc;
	color: #000000;
}

@keyframes mjSlideInLeft {
	from { opacity: 0; transform: translateX(-20px); }
	to { opacity: 1; transform: translateX(0); }
}

/* =================================================
	CUSTOM SHOP HEADER UI
	================================================= */
.woocommerce-page .mj-custom-shop-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	background: transparent;
	padding: 10px 0 20px;
	margin: 0 0 0px 0;
	border-bottom: 1px solid rgba(0,0,0,0.06);
	width: 100%;
	max-width: 100%;
}

.mj-header-left {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-left: 0;
	padding-left: 0;
}

.woocommerce-page .mj-shop-title {
	font-size: 28px;
	font-weight: 900;
	color: var(--secondary-color, #111827);
	margin: 0;
	display: block;
	visibility: visible;
	line-height: 1;
	letter-spacing: -0.5px;
}

.woocommerce-page .mj-result-count-wrap .woocommerce-result-count {
	margin: 0;
	font-size: 14px;
	color: #8b90a6;
	float: none;
	font-weight: 500;
}

.mj-header-right {
	display: flex;
	align-items: center;
	gap: 12px;
}

.mj-view-toggle {
	display: flex;
	background: rgba(0,0,0,0.04);
	padding: 3px;
	border-radius: 10px;
}

.mj-view-btn {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
	color: #64748b;
	transition: all 0.2s ease;
	text-decoration: none;
}

html:not(.mj-shop-view-list) .mj-view-btn[data-view="grid"],
html.mj-shop-view-list .mj-view-btn[data-view="list"] {
	background: #ffffff;
	color: var(--secondary-color, #111827);
	box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

.woocommerce-page .mj-header-dropdown .mj-select-field,
.woocommerce-page .woocommerce-ordering select {
	height: 40px;
	padding: 0 0px 0 12px;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.08);
	background-color: #fff;
	font-size: 13px;
	font-weight: 700;
	color: var(--secondary-color, #111827);
	cursor: pointer;
	margin: 0;
	transition: all 0.2s ease;
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23111827' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 15px center;
	background-size: 12px;
}

.woocommerce-page .mj-header-dropdown .mj-select-field:hover,
.woocommerce-page .woocommerce-ordering select:hover {
	border-color: rgba(0,0,0,0.2);
}

.woocommerce-page .woocommerce-ordering {
	margin: 0;
	float: none;
}

/* =================================================
	RECENT SALES POPUP UI
	================================================= */
.mj-sales-popup {
	position: fixed;
	bottom: 30px;
	left: 30px;
	background: #ffffff;
	border-radius: 16px;
	box-shadow: 0 10px 40px rgba(0,0,0,0.1), 0 4px 12px rgba(0,0,0,0.05);
	border: 1px solid #f1f5f9;
	padding: 12px 32px 12px 12px;
	z-index: 99998;
	max-width: 340px;
	width: calc(100% - 32px);
	transform: translateY(20px) scale(0.95);
	opacity: 0;
	visibility: hidden;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	pointer-events: none;
	overflow: hidden;
}

.mj-sales-popup.show {
	transform: translateY(0) scale(1);
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

@media (max-width: 768px) {
	.mj-sales-popup {
		bottom: 85px; /* Safely above the mobile bottom menu */
		left: 16px;
		right: 16px;
		max-width: none;
		padding: 10px 32px 10px 10px;
	}
	html body .mj-sales-popup.mj-hide-on-mobile {
		display: none;
	}
}

html body .mj-sp-link {
	display: flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	color: inherit;
}

.mj-sp-img {
	width: 65px;
	height: 65px;
	border-radius: 10px;
	overflow: hidden;
	flex-shrink: 0;
	background: #f8fafc;
	border: 1px solid #f1f5f9;
}

.mj-sp-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mj-sp-content {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
	min-width: 0;
}

.mj-sp-title {
	margin: 0;
	font-size: 12px;
	color: #64748b;
	line-height: 1.3;
}

.mj-sp-title strong {
	color: var(--secondary-color, #0f172a);
}

.mj-sp-product {
	margin: 0;
	font-size: 14px;
	color: var(--secondary-color, #0f172a);
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
	transition: color 0.2s ease;
}

.mj-sp-link:hover .mj-sp-product {
	color: var(--primary-color, #FA3434);
}

.mj-sp-time {
	margin: 0;
	font-size: 11px;
	color: #10b981;
	display: flex;
	align-items: center;
	gap: 4px;
}

.mj-sp-close {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 24px;
	height: 24px;
	background: #f1f5f9;
	border: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #94a3b8;
	cursor: pointer;
	transition: all 0.2s ease;
	padding: 0;
	line-height: 1;
	opacity: 0.8;
	visibility: visible;
}

.mj-sales-popup:hover .mj-sp-close {
	opacity: 1;
	background: #e2e8f0;
}

.mj-sp-close:hover {
	color: var(--primary-color, #FA3434);
	background: #fff5f5;
	transform: scale(1.1);
}

@media (max-width: 768px) {
	.woocommerce-page .mj-custom-shop-header {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		gap: 15px;
		padding: 10px 8px 20px;
	}
	.woocommerce-page .mj-header-left {
		width: 100%;
		border-bottom: 1px solid rgba(0,0,0,0.04);
		padding-bottom: 10px;
	}
	.woocommerce-page .mj-shop-title {
		font-size: 22px;
	}
	.woocommerce-page .mj-header-right {
		width: 100%;
		justify-content: space-between;
		gap: 8px;
	}
	.woocommerce-page .mj-header-dropdown {
		flex: 1;
	}
	.woocommerce-page .mj-header-dropdown .mj-select-field,
	.woocommerce-page .woocommerce-ordering select {
		width: 100%;
		font-size: 12px;
	}
}

/* List View Support */
html.mj-shop-view-list body.woocommerce div.site-main ul.products.mj-mega-grid,
html.mj-shop-view-list body.woocommerce-page div.site-main ul.products.mj-mega-grid,
html.mj-shop-view-list body.woocommerce-page div.site-main .mj-mega-grid,
html.mj-shop-view-list body.woocommerce div.site-main ul.products:not(.joom-fbt-list),
html.mj-shop-view-list body.woocommerce-page div.site-main ul.products:not(.joom-fbt-list) {
	grid-template-columns: 1fr;
}
html.mj-shop-view-list body.woocommerce ul.products.mj-mega-grid li.product .mj-premium-card,
html.mj-shop-view-list body.woocommerce-page .mj-premium-card {
	flex-direction: row;
	height: 220px;
}
html.mj-shop-view-list body.woocommerce-page .mj-visual-box {
	width: 220px;
	padding-top: 0;
	height: 100%;
	border-radius: 20px 0 0 20px;
	flex-shrink: 0;
}
html.mj-shop-view-list body.woocommerce-page .mj-card-details {
	justify-content: center;
	padding: 20px 24px;
}
@media (max-width: 600px) {
	html.mj-shop-view-list body.woocommerce-page .mj-premium-card {
		height: 150px;
	}
	html.mj-shop-view-list body.woocommerce-page .mj-visual-box {
		width: 120px;
	}
	html.mj-shop-view-list body.woocommerce-page .mj-card-details {
		padding: 10px 14px;
	}
}

/* =================================================
   PREMIUM ORDER TRACKING UI
================================================= */

.woocommerce:has(form.woocommerce-form-track-order),
.woocommerce-track-order {
	max-width: 1400px;
	width: 100%;
	margin: 50px auto;
	padding: 0 4px !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

/* =================================================
   TRACK ORDER FORM
================================================= */

form.woocommerce-form-track-order {
	width: 100%;
	max-width: 900px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 18px;

	padding: 42px;
	border-radius: 24px;

	background: linear-gradient(
		180deg,
		rgba(255,255,255,0.98) 0%,
		rgba(248,250,252,0.98) 100%
	);

	border: 1px solid rgba(226,232,240,0.9);

	box-shadow:
		0 10px 40px rgba(15,23,42,0.04),
		0 2px 10px rgba(15,23,42,0.03);

	backdrop-filter: blur(10px);

	overflow: hidden;
}

/* Decorative Glow */
form.woocommerce-form-track-order::before {
	content: "";
	position: absolute;
	top: -100px;
	right: -100px;
	width: 220px;
	height: 220px;
	background: radial-gradient(circle, rgba(250,52,52,0.12) 0%, transparent 70%);
	pointer-events: none;
}

form.woocommerce-form-track-order::after {
	content: "";
	position: absolute;
	bottom: -100px;
	left: -100px;
	width: 220px;
	height: 220px;
	background: radial-gradient(circle, rgba(250,52,52,0.08) 0%, transparent 70%);
	pointer-events: none;
}

/* =================================================
   INTRO TEXT
================================================= */

form.woocommerce-form-track-order > p:first-of-type {
	flex: 0 0 100%;
	width: 100%;
	margin: 0 0 24px 0;

	display: block;

	text-align: center;

	font-size: 16px;
	line-height: 1.7;
	font-weight: 500;

	color: #64748b;

	position: relative;
	z-index: 2;
}

/* Top Icon */
form.woocommerce-form-track-order > p:first-of-type::before {
	content: "\f48b";

	font-family: "Font Awesome 6 Free", "FontAwesome";
	font-weight: 900;

	width: 82px;
	height: 82px;

	margin: 0 auto 16px auto;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	font-size: 34px;

	color: #ffffff;

	background: linear-gradient(
		135deg,
		var(--primary-color, #FA3434),
		#ff6b6b
	);

	box-shadow:
		0 10px 25px rgba(250,52,52,0.28),
		inset 0 1px 1px rgba(255,255,255,0.3);
}

/* =================================================
   FORM ROWS
================================================= */

form.woocommerce-form-track-order .form-row {
	flex: 1;
	min-width: 260px;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 2;
}

/* Full Width Button */
form.woocommerce-form-track-order .form-row:last-of-type {
	flex: 0 0 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	margin-top: 4px;
}

/* =================================================
   LABELS
================================================= */

form.woocommerce-form-track-order .form-row label {
	display: flex;
	align-items: center;

	margin-bottom: 2px;

	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.2px;

	color: var(--secondary-color, #0f172a);
}

/* =================================================
   INPUTS
================================================= */

form.woocommerce-form-track-order input.input-text {
	width: 100%;
	height: 58px;

	padding: 0 22px;

	border-radius: 16px;
	border: 1px solid #dbe3ec;

	background: #ffffff;

	font-size: 15px;
	font-weight: 600;

	color: var(--secondary-color, #0f172a);

	box-shadow:
		inset 0 1px 2px rgba(15,23,42,0.03);

	transition: all 0.25s ease;
}

form.woocommerce-form-track-order input.input-text::placeholder {
	color: #94a3b8;
	font-weight: 500;
}

form.woocommerce-form-track-order input.input-text:focus {
	border-color: var(--primary-color, #FA3434);

	background: #ffffff;

	box-shadow:
		0 0 0 5px rgba(250,52,52,0.10),
		0 6px 16px rgba(250,52,52,0.08);

	transform: translateY(-1px);

	outline: none;
}

/* =================================================
   BUTTON
================================================= */

form.woocommerce-form-track-order .button {
	position: relative;

	min-width: 240px;
	height: 56px;

	padding: 0 34px;

	border: none;
	border-radius: 16px;

	background: linear-gradient(
		135deg,
		var(--primary-color, #FA3434),
		#ff5f5f
	);

	color: #ffffff;

	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.3px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	cursor: pointer;

	box-shadow:
		0 10px 22px rgba(250,52,52,0.25),
		inset 0 1px 1px rgba(255,255,255,0.2);

	transition: all 0.28s ease;

	overflow: hidden;
}

/* Shine Effect */
form.woocommerce-form-track-order .button::before {
	content: "";

	position: absolute;
	top: 0;
	left: -120%;

	width: 80%;
	height: 100%;

	background: linear-gradient(
		90deg,
		transparent,
		rgba(255,255,255,0.35),
		transparent
	);

	transform: skewX(-25deg);

	transition: all 0.7s ease;
}

form.woocommerce-form-track-order .button:hover::before {
	left: 130%;
}

/* Hover */
form.woocommerce-form-track-order .button:hover {
	transform: translateY(-3px);

	box-shadow:
		0 14px 28px rgba(250,52,52,0.34),
		inset 0 1px 1px rgba(255,255,255,0.2);

	background: linear-gradient(
		135deg,
		#f92b2b,
		#ff4d4d
	);
}

/* Active */
form.woocommerce-form-track-order .button:active {
	transform: scale(0.98);
}

/* =================================================
   ERROR NOTICE
================================================= */

.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error,
.woocommerce-track-order .woocommerce-error {
	width: 100%;
	max-width: 900px;

	margin: 0 auto 28px;
	padding: 18px 22px;

	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;

	min-height: auto;
	box-sizing: border-box;

	border-radius: 18px;

	background: linear-gradient(
		135deg,
		#fff5f5 0%,
		#fef2f2 50%,
		#fff1f1 100%
	);

	border: 1px solid #fecaca;

	box-shadow:
		0 10px 25px rgba(239,68,68,0.06),
		0 2px 6px rgba(239,68,68,0.04),
		inset 0 1px 0 rgba(255,255,255,0.7);

	list-style: none;

	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;

	color: #b91c1c;

	position: relative;
	overflow: hidden;
}

/* Top Border */
.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error::after,
.woocommerce-track-order .woocommerce-error::after {
	content: "";

	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 3px;

	background: linear-gradient(
		90deg,
		#ef4444,
		#f87171,
		#ef4444
	);

	display: block;
}

/* Error Icon */
.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error::before,
.woocommerce-track-order .woocommerce-error::before {
	content: "\f071";

	font-family: "Font Awesome 6 Free", "FontAwesome";
	font-weight: 900;

	width: 42px;
	height: 42px;

	min-width: 42px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background: rgba(239,68,68,0.12);

	color: #ef4444;

	font-size: 18px;

	line-height: 1;

	flex-shrink: 0;
}

/* Error Text Perfect Center */
.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error li,
.woocommerce-track-order .woocommerce-error li {
	margin: 0;
	padding: 0;

	display: flex;
	align-items: center;
	justify-content: center;

	line-height: 1.4;

	text-align: center;

	flex: 1;
}

/* Remove Default */
.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error li::before,
.woocommerce-track-order .woocommerce-error li::before {
	display: none !important;
}

/* =================================================
   SUCCESS NOTICE
================================================= */

.woocommerce-order-details__notice.notice-info {
	width: 100%;
	max-width: 900px;

	margin: 0 auto 28px auto;
	padding: 18px 22px;

	display: flex;
	align-items: center;
	gap: 14px;

	border-radius: 18px;

	background: linear-gradient(
		180deg,
		#f0fdf4 0%,
		#ecfdf5 100%
	);

	border: 1px solid #bbf7d0;

	box-sizing: border-box;
	box-shadow:
		0 8px 20px rgba(16,185,129,0.06);

	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;

	color: #065f46;
}

/* Success Icon */
.woocommerce-order-details__notice.notice-info::before {
	content: "\f058";

	font-family: "Font Awesome 6 Free", "FontAwesome";
	font-weight: 900;

	width: 42px;
	height: 42px;

	border-radius: 50%;

	background: rgba(16,185,129,0.12);

	display: flex;
	align-items: center;
	justify-content: center;

	font-size: 18px;

	color: #10b981;

	flex-shrink: 0;
}

/* =================================================
   TABLET
================================================= */

@media (max-width: 992px) {

	form.woocommerce-form-track-order {
		padding: 34px 28px;
		gap: 16px;
	}

	form.woocommerce-form-track-order .form-row {
		min-width: calc(50% - 8px);
	}

	form.woocommerce-form-track-order .button {
		width: 100%;
		max-width: 100%;
	}
}

/* =================================================
   MOBILE
================================================= */

@media (max-width: 768px) {

	.woocommerce:has(form.woocommerce-form-track-order),
	.woocommerce-track-order {
		margin: 16px auto;
		padding: 0 4px !important;
		width: 100%;
		max-width: 100%;
	}

	form.woocommerce-form-track-order {
		padding: 32px 20px;
		border-radius: 16px;

		flex-direction: column;
		align-items: stretch;

		gap: 20px;
	}

	form.woocommerce-form-track-order > p:first-of-type {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 15px;
	}

	form.woocommerce-form-track-order > p:first-of-type::before {
		width: 70px;
		height: 70px;
		font-size: 28px;
		margin: 0 auto 12px auto;
	}

	form.woocommerce-form-track-order .form-row {
		width: 100%;
		min-width: 100%;
	}

	form.woocommerce-form-track-order .form-row label {
		font-size: 13.5px;
		margin-bottom: 2px;
	}

	form.woocommerce-form-track-order input.input-text {
		height: 52px;
		font-size: 14px;
		padding: 0 18px;
		border-radius: 14px;
	}

	form.woocommerce-form-track-order .button {
		width: 100%;
		height: 52px;
		font-size: 15px;
		border-radius: 14px;
	}

	.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error,
	.woocommerce-track-order .woocommerce-error,
	.woocommerce-order-details__notice.notice-info {
		padding: 16px !important;
		border-radius: 16px !important;
		font-size: 14px !important;
		line-height: 1.5 !important;
	}

	.woocommerce:has(form.woocommerce-form-track-order) .woocommerce-error::before,
	.woocommerce-track-order .woocommerce-error::before,
	.woocommerce-order-details__notice.notice-info::before {
		width: 38px !important;
		height: 38px !important;
		font-size: 16px !important;
	}
}

/* =================================================
   SMALL MOBILE
================================================= */

@media (max-width: 480px) {

	form.woocommerce-form-track-order > p:first-of-type::before {
		width: 64px;
		height: 64px;
		font-size: 24px;
	}

	form.woocommerce-form-track-order input.input-text,
	form.woocommerce-form-track-order .button {
		height: 50px;
	}

	form.woocommerce-form-track-order .button {
		font-size: 14.5px;
	}
}

/* =================================================
   STYLE 2 PRODUCT CARD UI (ULTRA PREMIUM)
   ================================================= */
.mj-product-card-v2 {
    background: var(--card-bg-color, #ffffff);
    border-radius: 24px;
    border: 1px solid var(--border-color, #f1f5f9);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    min-height: 0;
    min-width: 0;
    width: 100%;
    height: 100%;
    padding: 10px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.01);
}
.mj-product-card-v2:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -12px rgba(0,0,0,0.12);
    border-color: var(--primary-color, #e2e8f0);
    z-index: 2;
}
.mj-v2-image-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    background-color: var(--bg-color, #f8fafc);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.04);
}
.mj-v2-image-wrap img.mj-primary-img,
.mj-v2-image-wrap img.mj-secondary-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.mj-v2-image-wrap img.mj-primary-img {
    transform: scale(1);
    transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.mj-product-card-v2:hover .mj-v2-image-wrap img.mj-primary-img {
    transform: scale(1.08);
}
.mj-v2-image-wrap img.mj-secondary-img {
    opacity: 0;
    z-index: 2;
    transform: scale(1.05);
    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.mj-product-card-v2:hover .mj-v2-image-wrap img.mj-secondary-img {
    opacity: 1;
    transform: scale(1.08);
}
.mj-v2-wishlist {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 10;
    opacity: 0;
    transform: scale(0.8) rotate(-10deg);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.mj-product-card-v2:hover .mj-v2-wishlist,
.mj-v2-wishlist:has(.woosw-added) {
    opacity: 1;
    transform: scale(1) rotate(0);
}
.mj-v2-wishlist .woosw-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--card-bg-color, #ffffff);
    color: var(--secondary-color, #0f172a);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}
.mj-v2-wishlist .woosw-btn i, .mj-v2-wishlist .woosw-btn::before {
    font-size: 15px !important;
    line-height: 1;
}
.mj-v2-wishlist .woosw-btn:hover {
    background: var(--primary-color, #FA3434);
    color: var(--btn-text-color, #ffffff);
    transform: scale(1.1);
}
.mj-v2-wishlist .woosw-btn.woosw-added {
    background: var(--primary-color, #FA3434);
    color: var(--btn-text-color, #ffffff);
}
.mj-v2-action-bar {
    position: absolute;
    bottom: 16px;
    left: 50%;
    width: calc(100% - 32px);
    z-index: 10;
    transform: translateX(-50%) translateY(20px);
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.mj-product-card-v2:hover .mj-v2-action-bar {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
}
.mj-v2-cart-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 44px;
    background: var(--add-to-cart-bg, rgba(255, 255, 255, 0.95)) !important;
    backdrop-filter: blur(8px);
    color: var(--add-to-cart-color, #0f172a) !important;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    border: none !important;
}
.mj-v2-cart-btn:hover, .mj-v2-cart-btn.added {
    background: var(--add-to-cart-hover, #111827) !important;
    color: var(--add-to-cart-hover-color, #ffffff) !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}
.mj-v2-cart-btn:active:not(.added) {
    transform: translateY(0) scale(0.96);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}
.mj-v2-cart-btn.mj-is-go-to-cart {
    background: var(--go-to-cart-bg, #10b981) !important;
    color: var(--btn-text-color, #ffffff) !important;
}
.mj-v2-cart-btn.loading {
    color: transparent !important;
}
.mj-v2-content {
    padding: 20px 10px 10px 10px;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}
.mj-v2-cat-rating-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.mj-v2-cat {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #000000;
    background: transparent;
    padding: 0;
    letter-spacing: 0.8px;
    text-decoration: none;
    transition: all 0.2s;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 60%;
}
.mj-v2-cat:hover {
    opacity: 0.5;
}
.mj-v2-cat-rating-row .mj-rating-badge {
    background: transparent;
    padding: 0;
    color: var(--light-text-color, #64748b);
    font-size: 12px;
    font-weight: 600;
}
.mj-v2-cat-rating-row .mj-star {
    color: #f59e0b;
    font-size: 12px;
    margin-right: 4px;
}
.mj-v2-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--secondary-color, #111827);
    line-height: 1.35;
    margin: 0 0 10px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s ease;
    letter-spacing: -0.2px;
}
.mj-product-card-v2:hover .mj-v2-title {
    color: var(--primary-color, #FA3434);
}
.mj-v2-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    gap: 12px;
}
.mj-v2-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 17px;
    font-weight: 800;
    color: var(--price-color, #111827);
    letter-spacing: -0.5px;
}
.mj-v2-price del {
    display: none !important;
}
.mj-v2-price ins {
    text-decoration: none;
    color: var(--sale-price-color, #FA3434);
    font-weight: 800;
}
.mj-v2-swatches-wrap {
    flex-shrink: 0;
}
.mj-product-card-v2 .mj-badges-wrap {
    top: 14px;
    left: 14px;
}
.mj-product-card-v2 .mj-badge {
    padding: 5px 10px;
    border-radius: 8px;
    font-size: 11px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.3);
}
@media (max-width: 1024px) {
    .mj-v2-action-bar {
        opacity: 1;
        bottom: 12px; left: 50%; width: calc(100% - 24px); transform: translateX(-50%) translateY(0);
    }
    .mj-v2-wishlist {
        opacity: 1;
        transform: scale(1) rotate(0);
        top: 12px; right: 12px;
    }
    .mj-product-card-v2 .mj-badges-wrap {
        top: 12px; left: 12px;
    }
    .mj-v2-title {
        font-size: 14px;
    }
    .mj-v2-price {
        font-size: 16px;
    }
    .mj-v2-cart-btn {
        height: 40px;
        font-size: 13px;
        box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    }
}
.mj-product-card-v2.mj-swatch-active .mj-primary-img {
    opacity: 1 !important;
    visibility: visible !important;
}
.mj-product-card-v2.mj-swatch-active .mj-secondary-img {
    display: none !important;
    opacity: 0 !important;
}

/* --- WooCommerce Price Filter Custom Colors & Centering --- */
.widget_price_filter .price_slider_amount {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 12px !important;
	margin-top: 15px !important;
}
.widget_price_filter .price_slider_amount .price_label {
	text-align: center !important;
	width: 100% !important;
}
.widget_price_filter .price_slider_amount .button {
	background-color: #000000 !important;
	color: var(--btn-text-color, #ffffff) !important;
	border: none !important;
}
.widget_price_filter .price_slider_amount .button:hover {
	background-color: var(--primary-color) !important;
}
.widget_price_filter .ui-slider .ui-slider-range,
.widget_price_filter .ui-slider .ui-slider-handle {
	background-color: var(--primary-color) !important;
}
.widget_price_filter .ui-slider { position: relative; text-align: left; margin: 10px 10px 24px; }
.widget_price_filter .ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 22px; height: 22px; border-radius: 50%; background-color: #ffffff !important; border: 3px solid var(--primary-color) !important; top: -8px; cursor: pointer; outline: none; margin-left: -11px; box-shadow: 0 4px 10px rgba(0,0,0,0.15); transition: transform 0.2s ease; }
.widget_price_filter .ui-slider .ui-slider-handle:hover { transform: scale(1.1); }
.widget_price_filter .ui-slider .ui-slider-range { position: absolute; z-index: 1; display: block; border: 0; border-radius: 4px; background-color: var(--primary-color) !important; height: 6px; top: 0; }
.widget_price_filter .price_slider_wrapper .ui-widget-content { border-radius: 4px; background: #e2e8f0; height: 6px; position: relative; margin-top: 14px; }

/* --- WooCommerce Layered Nav (Size/Color Attribute Filters UI) --- */
.widget_layered_nav ul.woocommerce-widget-layered-nav-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 10px 14px !important;
	margin-bottom: 8px !important;
	background: #f8fafc !important;
	border-radius: 10px !important;
	transition: all 0.2s ease !important;
	border: 1px solid transparent !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li:hover {
	background: #ffffff !important;
	border-color: #e2e8f0 !important;
	box-shadow: 0 4px 10px rgba(0,0,0,0.03) !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li.chosen {
	background: #fff5f5 !important;
	border-color: #fecaca !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li > a {
	color: #334155 !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	flex: 1 !important;
	font-size: 14.5px !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li:hover > a,
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li.chosen > a {
	color: var(--primary-color) !important;
}
.widget_layered_nav ul.woocommerce-widget-layered-nav-list > li.chosen > a {
	font-weight: 700 !important;
}
.widget_layered_nav .count {
	background: #e2e8f0 !important;
	color: #475569 !important;
	font-size: 11px !important;
	padding: 3px 8px !important;
	border-radius: 20px !important;
	font-weight: 700 !important;
	margin-left: 10px !important;
	transition: all 0.2s ease;
}
.widget_layered_nav ul li.chosen .count {
	background: var(--primary-color) !important;
	color: #ffffff !important;
}

/* --- Prevent FOUC (Vertical List Flash) Before JS Loads --- */
body .widget select.woocommerce-widget-layered-nav-dropdown:not(.select2-hidden-accessible) {
	max-height: 44px;
	overflow: hidden;
	opacity: 0;
}

/* --- WooCommerce Select2 Premium UI (No !important, High Specificity) --- */
body .select2-container { width: 100%; }
body .select2-container--open, body .select2-dropdown { z-index: 100000; }
body .select2-container .select2-selection--single, body .select2-container .select2-selection--multiple { border: 1px solid #e2e8f0; border-radius: 8px; min-height: 44px; background: #f8fafc; display: flex; align-items: center; padding: 0 12px; }
body .select2-container .select2-selection--multiple { height: auto; padding: 6px 10px; }
body .select2-container:hover .select2-selection--single, body .select2-container:hover .select2-selection--multiple { border-color: #cbd5e1; background: #ffffff; }
body .select2-container--focus .select2-selection--single, body .select2-container--focus .select2-selection--multiple, body .select2-container--open .select2-selection--single, body .select2-container--open .select2-selection--multiple { border-color: var(--primary-color); background: #ffffff; box-shadow: 0 0 0 3px rgba(250, 52, 52, 0.1); }
body .widget .select2-container .select2-selection__rendered, body .select2-container .select2-selection__rendered { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; width: 100%; list-style: none; padding: 0; margin: 0; }
body .widget .select2-container .select2-selection__rendered > li, body .select2-container .select2-selection__rendered > li { display: inline-flex; align-items: center; width: auto; margin: 0; padding: 0; border: none; background: transparent; }
body .select2-container .select2-selection--multiple .select2-selection__choice { background: #f8fafc; border: 1px solid #cbd5e1; border-radius: 6px; padding: 3px 10px 3px 6px; font-size: 13px; font-weight: 600; color: #0f172a; display: inline-flex; align-items: center; flex-direction: row; gap: 6px; box-shadow: 0 2px 4px rgba(0,0,0,0.02); max-width: 100%; }
html body div.select2-container .select2-selection--multiple .select2-selection__choice__display { color: #0f172a; display: inline-block; padding: 0; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; cursor: default; }
body .select2-container .select2-selection--multiple .select2-selection__choice__remove { color: #ef4444; font-size: 18px; line-height: 1; background: transparent; border: none; padding: 0; margin: 0; cursor: pointer; position: static; transform: none; display: flex; align-items: center; justify-content: center; transition: color 0.2s; flex-shrink: 0; }
body .select2-container .select2-selection--multiple .select2-selection__choice__remove:hover { color: #ff4747; }
body .widget .select2-container .select2-search--inline, body .select2-container .select2-search--inline { flex: 1 1 auto; min-width: 60px; display: inline-flex; margin: 0; }
body .select2-container .select2-search--inline .select2-search__field { width: 100%; height: auto; min-height: 0; margin: 0; font-family: inherit; font-size: 14px; border: none; box-shadow: none; background: transparent; padding: 2px 0; outline: none; }
body .select2-dropdown { border: 1px solid #e2e8f0; border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,0.1); overflow: hidden; padding: 6px; background: #ffffff; }
body .select2-search--dropdown .select2-search__field { border: 1px solid #e2e8f0; border-radius: 6px; padding: 6px 12px; outline: none; width: 100%; box-sizing: border-box; }
body .select2-search--dropdown .select2-search__field:focus { border-color: var(--primary-color); }
body .select2-results__option { padding: 8px 12px; font-size: 14px; color: #334155; border-radius: 8px; margin-bottom: 2px; transition: all 0.2s ease; cursor: pointer; }
body .select2-results__option--highlighted[aria-selected], body .select2-results__option:hover { background: var(--primary-color); color: #ffffff; font-weight: 600; }
body .select2-results__option[aria-selected="true"] { background: #f1f5f9; color: #0f172a; font-weight: 700; }
/* Dropdown Options as Interactive Grid Boxes */
body .select2-results__options[aria-multiselectable="true"] { display: flex; flex-wrap: wrap; gap: 6px; padding: 2px; }
body .select2-results__options[aria-multiselectable="true"] .select2-results__option { flex: 1 1 auto; min-width: 48px; margin: 0; border: 1px solid #e2e8f0; display: flex; align-items: center; justify-content: center; text-align: center; background: #f8fafc; font-weight: 600; }
body .select2-results__options[aria-multiselectable="true"] .select2-results__option:hover, body .select2-results__options[aria-multiselectable="true"] .select2-results__option--highlighted[aria-selected] { background: var(--primary-color); color: #ffffff; border-color: var(--primary-color); }
body .select2-results__options[aria-multiselectable="true"] .select2-results__option[aria-selected="true"] { background: #0f172a; color: #ffffff; border-color: #0f172a; }

/* --- WooCommerce Filter Apply Button --- */
body .widget .woocommerce-widget-layered-nav-dropdown__submit, body .widget .wc-block-components-filter-submit-button { background: #000000; color: #ffffff; border: none; border-radius: 8px; width: 100%; margin-top: 10px; min-height: 38px; font-weight: 700; cursor: pointer; transition: background 0.2s ease; }
body .widget .woocommerce-widget-layered-nav-dropdown__submit:hover, body .widget .wc-block-components-filter-submit-button:hover { background: var(--primary-color); }

/* --- Universal Fix for WooCommerce Native Widgets (Reviews, Top Rated, Viewed, Products, Cart) --- */
body .widget.widget_recent_reviews ul li,
body .widget.widget_top_rated_products ul li,
body .widget.widget_recently_viewed_products ul li,
body .widget.widget_products ul li,
body .widget.widget_rating_filter ul li {
	display: block;
	padding: 14px 0;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
}
body .widget.widget_recent_reviews ul li:last-child,
body .widget.widget_top_rated_products ul li:last-child,
body .widget.widget_recently_viewed_products ul li:last-child,
body .widget.widget_products ul li:last-child,
body .widget.widget_rating_filter ul li:last-child {
	border-bottom: none;
}
body .widget.widget_recent_reviews ul li img,
body .widget.widget_top_rated_products ul li img,
body .widget.widget_recently_viewed_products ul li img,
body .widget.widget_products ul li img {
	float: left;
	width: 60px;
	height: 60px;
	min-width: 60px;
	margin-right: 16px;
	margin-bottom: 4px;
	border-radius: 12px;
	object-fit: cover;
	background: #f8fafc;
	border: 1px solid #f1f5f9;
	display: block;
}
body .widget.widget_recent_reviews ul li a,
body .widget.widget_top_rated_products ul li a,
body .widget.widget_recently_viewed_products ul li a,
body .widget.widget_products ul li a,
body .widget.widget_rating_filter ul li a {
	display: block;
	font-weight: 700;
	color: var(--secondary-color, #0f172a);
	font-size: 14.5px;
	line-height: 1.4;
	text-decoration: none;
	white-space: normal;
	max-width: 100%;
	overflow: visible;
}
body .widget.widget_recent_reviews ul li a:hover,
body .widget.widget_top_rated_products ul li a:hover,
body .widget.widget_recently_viewed_products ul li a:hover,
body .widget.widget_products ul li a:hover {
	color: var(--primary-color);
}
body .widget.widget_recent_reviews ul li .star-rating,
body .widget.widget_top_rated_products ul li .star-rating,
body .widget.widget_products ul li .star-rating,
body .widget.widget_rating_filter ul li .star-rating {
	margin: 6px 0;
	font-size: 12px;
	float: none;
}
body .widget.widget_recent_reviews ul li .reviewer,
body .widget.widget_products ul li .price,
body .widget.widget_top_rated_products ul li .price,
body .widget.widget_recently_viewed_products ul li .price {
	display: block;
	font-size: 14px;
	color: #475569;
	font-weight: 600;
	margin-top: 4px;
}
body .widget.widget_products ul li .price ins,
body .widget.widget_top_rated_products ul li .price ins,
body .widget.widget_recently_viewed_products ul li .price ins {
	text-decoration: none;
	color: var(--primary-color);
}
body .widget.widget_products ul li .price del,
body .widget.widget_top_rated_products ul li .price del,
body .widget.widget_recently_viewed_products ul li .price del {
	font-size: 12.5px;
	color: #94a3b8;
	font-weight: 500;
	margin-right: 8px;
	display: inline-block;
}
body .sidebar .widget.widget_rating_filter ul li, body .mj-shop-sidebar .widget.widget_rating_filter ul li, body .widget.widget_rating_filter ul li {
	padding: 6px 0;
	border-bottom: none;
}
body .sidebar .widget.widget_rating_filter ul li a, body .mj-shop-sidebar .widget.widget_rating_filter ul li a, body .widget.widget_rating_filter ul li a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
body .widget.widget_recent_reviews ul li::after,
body .widget.widget_top_rated_products ul li::after,
body .widget.widget_recently_viewed_products ul li::after,
body .widget.widget_products ul li::after,
body .widget.widget_rating_filter ul li::after {
	content: "";
	display: table;
	clear: both;
}

/* --- Cart Widget Specific UI --- */
body .widget.widget_shopping_cart .cart_list li {
	padding: 16px 0 16px 75px;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
	position: relative;
	min-height: 92px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
body .widget.widget_shopping_cart .cart_list li:last-child {
	border-bottom: none;
}
body .widget.widget_shopping_cart .cart_list li a:not(.remove) {
	display: block;
	font-weight: 700;
	color: var(--secondary-color, #0f172a);
	font-size: 14.5px;
	line-height: 1.4;
	text-decoration: none;
	padding-right: 36px;
}
body .widget.widget_shopping_cart .cart_list li a:not(.remove):hover {
	color: var(--primary-color);
}
body .widget.widget_shopping_cart .cart_list li img {
	position: absolute;
	left: 0;
	top: 16px;
	width: 60px;
	height: 60px;
	border-radius: 12px;
	object-fit: cover;
	background: #f8fafc;
	border: 1px solid #f1f5f9;
	margin: 0;
}
body .widget.widget_shopping_cart .cart_list li .quantity {
	display: block;
	font-size: 14px;
	color: #475569;
	font-weight: 600;
	margin-top: 4px;
}
body .widget.widget_shopping_cart .cart_list li .quantity .amount {
	color: var(--primary-color);
}
body .widget.widget_shopping_cart .cart_list li .remove {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #ef4444;
	font-size: 18px;
	text-decoration: none;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #f1f5f9;
	transition: all 0.2s ease;
	line-height: 1;
	margin: 0;
}
body .widget.widget_shopping_cart .cart_list li .remove:hover {
	background: #fee2e2;
	color: #dc2626;
}
body .widget.widget_shopping_cart .total {
	border-top: 2px dashed #e2e8f0;
	padding-top: 16px;
	margin-top: 8px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	font-weight: 800;
	color: var(--secondary-color, #0f172a);
}
body .widget.widget_shopping_cart .total .amount {
	color: var(--primary-color);
	font-size: 18px;
}
body .widget.widget_shopping_cart .buttons {
	display: flex;
	gap: 12px;
	margin-top: 16px;
	margin-bottom: 0;
	padding: 0;
}
body .widget.widget_shopping_cart .buttons .button {
	flex: 1;
	text-align: center;
	padding: 12px 16px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 700;
	margin: 0;
	background: #f8fafc;
	color: var(--secondary-color, #0f172a);
	border: 1px solid #e2e8f0;
}
body .widget.widget_shopping_cart .buttons .button:hover {
	background: #e2e8f0;
}
body .widget.widget_shopping_cart .buttons .button.checkout {
	background: var(--primary-color);
	color: #fff;
	border-color: var(--primary-color);
}
body .widget.widget_shopping_cart .buttons .button.checkout:hover {
	background: #e62e2e;
	border-color: #e62e2e;
}
html.mj-shop-view-list body.woocommerce ul.products.mj-mega-grid li.product .mj-product-card-v2,
html.mj-shop-view-list body.woocommerce-page .mj-product-card-v2 {
    flex-direction: row !important;
    height: 240px;
    padding: 12px;
}
html.mj-shop-view-list body.woocommerce-page .mj-v2-image-wrap {
    width: 216px;
    height: 100%;
    border-radius: 14px;
    flex-shrink: 0;
}
html.mj-shop-view-list body.woocommerce-page .mj-product-card-v2 .mj-v2-content {
    justify-content: center;
    padding: 20px 30px;
}
@media (max-width: 600px) {
    html.mj-shop-view-list body.woocommerce-page .mj-product-card-v2 {
        height: 170px;
        padding: 10px;
    }
    html.mj-shop-view-list body.woocommerce-page .mj-v2-image-wrap {
        width: 150px;
    }
    html.mj-shop-view-list body.woocommerce-page .mj-product-card-v2 .mj-v2-content {
        padding: 10px 16px;
    }
    html.mj-shop-view-list body.woocommerce-page .mj-product-card-v2 .mj-v2-action-bar {
        display: none;
    }
    /* Grid mobile specific */
    body:not(.mj-shop-view-list) .mj-product-card-v2 {
        padding: 8px;
        border-radius: 20px;
    }
    body:not(.mj-shop-view-list) .mj-v2-image-wrap {
        border-radius: 12px;
    }
    body:not(.mj-shop-view-list) .mj-v2-content {
        padding: 14px 6px 6px 6px;
    }
    body:not(.mj-shop-view-list) .mj-v2-cat {
        font-size: 10px;
        padding: 0;
    }
    body:not(.mj-shop-view-list) .mj-v2-title {
        font-size: 13.5px;
        margin-bottom: 6px;
        line-height: 1.3;
    }
    body:not(.mj-shop-view-list) .mj-v2-price {
        font-size: 15px;
    }
    body:not(.mj-shop-view-list) .mj-v2-action-bar {
        bottom: 8px;
        width: calc(100% - 16px);
    }
    body:not(.mj-shop-view-list) .mj-v2-cart-btn {
        height: 38px;
        font-size: 12px;
		width: 100%;
		max-width: 240px;
		margin: 0 auto;
    }
}
body.joom-catalog-mode-active .mj-v2-action-bar { display: none !important; }

/* ====================================================
   SHOP & WOOCOMMERCE LAYOUT SETTINGS (Gap Fix)
   ==================================================== */
body .container,
body .site-container,
body .wrapper,
body .mj-container,
body .mj-shop-layout,
body .mj-standard-layout,
body .joom-product-container,
body .woosw-list.woosw-list,
html body.woocommerce-cart .woocommerce.woocommerce,
html body.woocommerce-checkout .woocommerce,
html body.woocommerce-order-received .woocommerce,
html body.woocommerce-account .site-content,
html body.woocommerce-account #content,
html body.woocommerce-account .content-area {
	width: 100%;
	max-width: var(--mj-max-width, 1300px);
	padding-left: var(--mj-content-padding, 20px);
	padding-right: var(--mj-content-padding, 20px);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
@media (max-width: 768px) {
	body .container, body .site-container, body .wrapper, body .mj-container, body .mj-shop-layout, body .mj-standard-layout,
	body .joom-product-container, body .woosw-list.woosw-list, html body.woocommerce-cart .woocommerce.woocommerce,
	html body.woocommerce-checkout .woocommerce, html body.woocommerce-order-received .woocommerce,
	html body.woocommerce-account .site-content, html body.woocommerce-account #content, html body.woocommerce-account .content-area {
		padding-left: 4px;
		padding-right: 4px;
	}
}

/* Force Full Width (No Gap) for Elementor Full Width & Canvas Pages ONLY */
body.elementor-template-full-width .container,
body.elementor-template-full-width .site-container,
body.elementor-template-full-width .wrapper,
body.page-template-elementor_header_footer .container,
body.page-template-elementor_canvas .container {
	padding-left: 0 !important;
	padding-right: 0 !important;
	max-width: 100% !important;
}

/* Prevent Double Padding for Header Wrappers */
body .header-top .container-fluid,
body .site-header .container-fluid,
body .navigation-main-wrapper .container-fluid {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Full Width Layout Classes */
body.joom-header-full .header-top .container-fluid,
body.joom-header-full .site-header .container-fluid,
body.joom-header-full .navigation-main-wrapper .container-fluid,
body.joom-header-full .header-top-wrapper,
body.joom-header-full .header-wrapper,
body.joom-header-full .nav-content {
	max-width: 100%;
}

body.joom-shop-full.archive.woocommerce .container,
body.joom-shop-full.archive.woocommerce .mj-shop-layout,
body.joom-shop-full.archive.woocommerce .mj-standard-layout,
body.joom-shop-full.search-results.woocommerce .mj-shop-layout,
body.joom-shop-full.search-results.woocommerce .mj-standard-layout,
body.joom-shop-full.tax-product_cat .container,
body.joom-shop-full.tax-product_tag .container {
	max-width: 100%;
}

body.joom-product-full.single-product .mj-standard-layout,
body.joom-product-full.single-product .container,
body.joom-product-full.single-product .container-fluid,
body.joom-product-full.single-product .joom-product-container,
body.joom-product-full.single-product .joom-similar-products .joom-product-container,
body.joom-product-full.single-product .up-sells .joom-product-container,
body.joom-product-full.single-product .cross-sells .joom-product-container,
body.joom-product-full.single-product .joom-top-picks-section .joom-product-container {
	max-width: 100%;
}

/* Enforce Grid Display for all bottom sections */
body .joom-top-picks-section .mj-mega-grid,
body .joom-top-picks-section ul.products,
body .upsells ul.products,
body .up-sells ul.products,
body .joom-similar-products .mj-mega-grid,
body .related ul.products,
body .cross-sells ul.products {
	display: grid !important;
	width: 100% !important;
	gap: 20px;
}
body .joom-top-picks-section ul.products li.product,
body .upsells ul.products li.product,
body .up-sells ul.products li.product,
body .related ul.products li.product,
body .cross-sells ul.products li.product {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	float: none !important;
}

/* Map WooCommerce native column classes seamlessly */
ul.products.columns-1, .products.columns-1 { grid-template-columns: repeat(1, 1fr) !important; }
ul.products.columns-2, .products.columns-2 { grid-template-columns: repeat(2, 1fr) !important; }
ul.products.columns-3, .products.columns-3 { grid-template-columns: repeat(3, 1fr) !important; }
ul.products.columns-4, .products.columns-4 { grid-template-columns: repeat(4, 1fr) !important; }
ul.products.columns-5, .products.columns-5 { grid-template-columns: repeat(5, 1fr) !important; }
ul.products.columns-6, .products.columns-6 { grid-template-columns: repeat(6, 1fr) !important; }
ul.products.columns-7, .products.columns-7 { grid-template-columns: repeat(7, 1fr) !important; }
ul.products.columns-8, .products.columns-8 { grid-template-columns: repeat(8, 1fr) !important; }

@media (max-width: 1200px) {
	ul.products.columns-8, ul.products.columns-7, ul.products.columns-6, ul.products.columns-5,
	.products.columns-8, .products.columns-7, .products.columns-6, .products.columns-5 { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (max-width: 900px) {
	ul.products.columns-8, ul.products.columns-7, ul.products.columns-6, ul.products.columns-5, ul.products.columns-4,
	.products.columns-8, .products.columns-7, .products.columns-6, .products.columns-5, .products.columns-4 { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 600px) {
	ul.products:not(.joom-fbt-list), .products:not(.joom-fbt-list) { grid-template-columns: repeat(2, 1fr) !important; }
	ul.products.columns-1, .products.columns-1 { grid-template-columns: repeat(1, 1fr) !important; }
}

/* =================================================
   LIST VIEW OVERRIDES (Forces 1 Column)
   ================================================= */
html.mj-shop-view-list body ul.products:not(.joom-fbt-list),
html.mj-shop-view-list body .products:not(.joom-fbt-list),
html.mj-shop-view-list body .mj-mega-grid {
    grid-template-columns: 1fr !important;
}

/* Footer UI Toggles */
body.joom-no-footer-app .footer-column-app { display: none !important; }

/* Sticky Header Toggle */
body.joom-no-sticky-header .site-header { position: relative !important; top: auto !important; }

/* PageSpeed LCP & Flicker Fixes */
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
.jt-au-hero, .jt-fade-in:first-of-type, .joom-fade-in:first-of-type, .elementor-section:first-of-type, .elementor-widget-wrap:first-of-type, .jt-hbs-slide:first-child, .jt-fhs-slide:first-child, .jt-mbs-slide:first-child, .jt-ccs-item:first-child, .elementor-section:first-child .elementor-invisible {
	opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important; visibility: visible !important;
}
.jt-hbs-slide, .jt-fhs-slide, .jt-mbs-slide, .jt-ccs-item, .jt-pc-card, .jt-bg-card, .jx3-slide, .jt-testi-card, .jt-product-item, .jt-brand-item, .swiper-slide,
.jt-hbs-bg img, .jt-fhs-image img, .jt-mbs-bg img, .jt-ccs-img-wrap img, .jt-pc-img-wrap img, .jt-bg-img-wrap img, .jt-hbs-bg picture, .jt-hbs-bg {
	-webkit-backface-visibility: hidden !important; backface-visibility: hidden !important;
}
.jt-hbs-track, .jt-fhs-track, .jt-mbs-track, .jt-ccs-container, .jt-promo-track, .jt-bargain-track, .jx3-track, .jt-testimonials-track, .jt-product-track, .jt-brands-track {
	-webkit-overflow-scrolling: touch !important;
}
@media (max-width: 1024px) {
	.jt-hbs-bg img, .jt-fhs-image img, .jt-mbs-bg img, .jt-ccs-img-wrap img, .jt-pc-img-wrap img, .jt-bg-img-wrap img { transition: none !important; }
}

/* Base Fonts */
body, p, li, input, select, textarea { font-family: var(--mj-body-font, sans-serif); }
body { font-size: var(--mj-body-font-size, 15px); font-weight: var(--mj-body-font-weight, 400); line-height: var(--mj-body-line-height, 1.6); letter-spacing: var(--mj-body-letter-spacing, 0px); }

.star-rating, .star-rating span, .star-rating::before, .star-rating span::before, p.stars a, p.stars a::before { font-family: 'star' !important; }
h1, h2, h3, h4, h5, h6, .mj-shop-title, .widget-title, .joom-mobile-title, .entry-title, .page-title, .section-title, .logo-text { font-family: var(--mj-heading-font, sans-serif); font-weight: var(--mj-heading-font-weight, 700); line-height: var(--mj-heading-line-height, 1.3); letter-spacing: var(--mj-heading-letter-spacing, -0.5px); text-transform: var(--mj-heading-text-transform, none); }
.menu-link, .sub-menu a, .categories-dropdown a, .all-categories-btn, .joom-mobile-menu a, .j-cat-name, .j-pane-header h3 a, .j-subcat-name, .j-grandchild-list li a, .joom-category-name, .joom-subcategory-name, .joom-grandchild-name, .joom-polylang-active, .language-selector select, .currency-selector select, .top-link { font-family: var(--mj-nav-font, sans-serif); font-weight: var(--mj-nav-font-weight, 600); font-size: var(--mj-nav-font-size, 14.5px); text-transform: var(--mj-nav-text-transform, none); }
.mj-product-name, .product-title, .product_title, .joom-item-name, .woocommerce-loop-product__title, .modern-card-title a, .joom-product-title, .mj-sp-product, .mj-v2-title { font-family: var(--mj-product-title-font, sans-serif); font-weight: var(--mj-product-title-font-weight, 600); line-height: var(--mj-product-title-line-height, 1.4); letter-spacing: var(--mj-product-title-letter-spacing, 0px); text-transform: var(--mj-product-title-text-transform, none); }
.breadcrumb, .woocommerce-breadcrumb, .product_meta, .modern-card-meta, .joom-post-meta, .mj-fs-subtext, .joom-price-sub, small, .small-text, .mj-mbm-item span, .joom-live-viewing, .jac-time-box, .top-center, .modern-card-cat, .mj-sp-title, .mj-sp-time { font-family: var(--mj-meta-font, sans-serif); font-weight: var(--mj-meta-font-weight, 500); text-transform: var(--mj-meta-text-transform, none); }
button, .button, .btn, .add_to_cart_button, .mj-cart-btn, input[type="submit"], .joom-btn, .featured-btn, .mj-badge, .onsale, .product-badge { font-family: var(--mj-btn-font, sans-serif); font-weight: var(--mj-btn-font-weight, 700); letter-spacing: var(--mj-btn-letter-spacing, 0.3px); text-transform: var(--mj-btn-text-transform, none); }
.price, .amount, .mj-price-val, .woocommerce-Price-amount, .joom-price-value, bdi { font-family: var(--mj-price-font, sans-serif); font-weight: var(--mj-price-font-weight, 800); }

/* Colors */
body, .site-main, body.woocommerce-account, body.single-product, .mj-shop-main { background-color: var(--bg-color); color: var(--text-color); }
h1, h2, h3, h4, h5, h6, .joom-product-title, .product-title a, .mj-product-name, .item-name, .section-title, .widget-title, .mj-sidebar-title, .joom-category-name, .joom-subcategory-name, .mj-v2-title { color: var(--text-color); }
.text-muted, .joom-price-sub, .comment-date, .order-date, .joom-breadcrumb a, .top-link, .mj-stock-status, .review-count, .mj-filter-arrow, .joom-grandchild-name { color: var(--light-text-color); }
a:not(.button):not(.btn):not(.menu-link):not(.header-icon):not(.categories-grid-link):not(.joom-category-name):not(.joom-subcategory-name):not(.joom-grandchild-name):not(.mj-mbm-item) { color: var(--link-color); }
a:not(.button):not(.btn):not(.menu-link):not(.header-icon):not(.categories-grid-link):not(.mj-mbm-item):hover { color: var(--link-hover-color); }
.site-header, .navigation-main-wrapper, .joom-mobile-tabs, .categories-dropdown { background-color: var(--header-bg-color); border-color: var(--border-color); }
.site-header, .menu-link, .header-icon, .header-icon .icon-label, .logo-text { color: var(--header-text-color); }
.header-icon svg { stroke: var(--header-text-color); }
.site-header .search-bar-wrapper { background-color: var(--bg-color); border-color: var(--border-color); }
.site-header .search-input { color: var(--text-color); }
.site-footer, .footer-content-wrapper, .footer-bottom-wrapper, .joom-mobile-footer { background-color: var(--footer-bg-color); border-color: var(--footer-bg-color); }
.site-footer, .site-footer h3, .site-footer a, .footer-copyright, .footer-copyright-text { color: var(--footer-text-color); text-decoration: none !important; }
.product-card, .mj-premium-card, .joom-main-image, .joom-trust-card, .joom-meta-card, .order-item-card, .address-box, .pro-stat-card, .mj-shop-sidebar, .joom-review-item, .woocommerce-Address, .order-section, .woocommerce-account .woocommerce-MyAccount-content > form, .woocommerce-account .woocommerce-MyAccount-content > .woocommerce-notices-wrapper + form, .joom-auth-card, .joom-login-content, .woocommerce-account .woocommerce-MyAccount-navigation, .joom-mobile-drawer { background-color: var(--card-bg-color); border-color: var(--border-color); }
.footer-divider, .joom-reviews-container, .joom-trust-divider, .border-bottom, .mj-filters-bar-wrapper, .myaccount-profile, .order-header, .shop_table td { border-color: var(--border-color); }
.woocommerce-Price-amount, bdi, .price, .amount, .mj-price-val, .item-price, .joom-price-value { color: var(--price-color); }
del .woocommerce-Price-amount, del bdi, .price.original, .joom-regular-price-display bdi, .joom-regular-price-display .woocommerce-Price-amount { color: var(--regular-price-color); }
ins .woocommerce-Price-amount, ins bdi, .joom-bulk-price-display .woocommerce-Price-amount, .joom-bulk-price-display bdi { color: var(--sale-price-color); }
body .total-amount .total-value, body .cart_totals .order-total .woocommerce-Price-amount, body .cart_totals .order-total strong, body .cart_totals .order-total bdi, body .woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount, body .woocommerce-checkout-review-order-table .order-total strong, body .woocommerce-checkout-review-order-table .order-total bdi, body.woocommerce-order-received .shop_table.order_details tfoot tr.order-total td, body.woocommerce-order-received .shop_table.order_details tfoot tr.order-total td * { color: var(--cart-total-color); }

/* Buttons */
body .woocommerce div.product form.cart .button, body .woocommerce div.product .button.alt, body .woocommerce .joom-button-content .single_add_to_cart_button, body.single-product .joom-exact-ui-repro button.single_add_to_cart_button, body .single_add_to_cart_button, body .btn-add-cart, body .mj-cart-btn, body .ajax_add_to_cart, body .woosw-list td[class*="add"] .button, body button.joom-sticky-add-to-cart.button.alt { background-color: var(--add-to-cart-bg); border-color: var(--add-to-cart-bg); color: var(--add-to-cart-color); }
body .woocommerce div.product form.cart .button:hover, body .woocommerce div.product .button.alt:hover, body .woocommerce .joom-button-content .single_add_to_cart_button:hover, body.single-product .joom-exact-ui-repro button.single_add_to_cart_button:hover, body .single_add_to_cart_button:hover, body .btn-add-cart:hover, body .mj-cart-btn:hover, body .ajax_add_to_cart:hover, body .woosw-list td[class*="add"] .button:hover, body button.joom-sticky-add-to-cart.button.alt:hover { background-color: var(--add-to-cart-hover); border-color: var(--add-to-cart-hover); color: var(--add-to-cart-hover-color); }
body.single-product .joom-exact-ui-repro button.single_add_to_cart_button.mj-is-go-to-cart, body.single-product .single_add_to_cart_button.mj-is-go-to-cart, body .joom-sticky-cart button.joom-sticky-add-to-cart.button.alt.mj-is-go-to-cart, body button.joom-sticky-add-to-cart.button.alt.mj-is-go-to-cart, body .mj-cart-btn.mj-is-go-to-cart, body .mj-cart-btn.loading, body .ajax_add_to_cart.loading, body .mj-cart-btn.added, body .ajax_add_to_cart.added { background-color: var(--go-to-cart-bg); border-color: var(--go-to-cart-bg); color: var(--btn-text-color); }
body.single-product .joom-exact-ui-repro button.single_add_to_cart_button.mj-is-go-to-cart:hover, body.single-product .single_add_to_cart_button.mj-is-go-to-cart:hover, body .joom-sticky-cart button.joom-sticky-add-to-cart.button.alt.mj-is-go-to-cart:hover, body button.joom-sticky-add-to-cart.button.alt.mj-is-go-to-cart:hover, body .mj-cart-btn.mj-is-go-to-cart:hover { background-color: var(--go-to-cart-hover); border-color: var(--go-to-cart-hover); }

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button, body.woocommerce-checkout button#place_order, body .site-header .search-button, body .joom-login-content input[type="submit"]:not(.joom-auth-btn-dark-modal), body .joom-auth-btn, body .joom-submit-review, body.woocommerce-account .woocommerce-address-fields .button, body.woocommerce-account .woocommerce-EditAccountForm .button, body.woocommerce-account .addresses .edit, body .woocommerce-Address .edit, body .featured-btn, body .joom-share-copy-btn { background-color: var(--btn-bg-color); border-color: var(--btn-bg-color); color: var(--btn-text-color); }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover, body.woocommerce-checkout button#place_order:hover, body .site-header .search-button:hover, body .joom-login-content input[type="submit"]:not(.joom-auth-btn-dark-modal):hover, body .joom-auth-btn:hover, body .joom-submit-review:hover, body.woocommerce-account .woocommerce-address-fields .button:hover, body.woocommerce-account .woocommerce-EditAccountForm .button:hover, body.woocommerce-account .addresses .edit:hover, body .woocommerce-Address .edit:hover, body .featured-btn:hover, body .joom-share-copy-btn:hover { background-color: var(--btn-hover-bg-color); border-color: var(--btn-hover-bg-color); color: var(--btn-hover-text-color); }

body .header-top, body .all-categories-btn, body .joom-geek-btn, body .mj-load-more-btn, body .joom-auth-btn-dark, body .joom-login-content input[type="submit"].joom-auth-btn-dark-modal, body .btn-write-review, body .joom-back-home, body .joom-mobile-header, body .woocommerce-MyAccount-navigation li.is-active a, body .joom-report-continue:not(:disabled) { background-color: var(--secondary-color); border-color: var(--secondary-color); color: #ffffff !important; }
body .all-categories-btn:hover, body .joom-geek-btn:hover, body .mj-load-more-btn:hover, body .joom-auth-btn-dark:hover, body .joom-login-content input[type="submit"].joom-auth-btn-dark-modal:hover, body .btn-write-review:hover, body .joom-back-home:hover, body .joom-report-continue:not(:disabled):hover { filter: brightness(0.85); }

/* Badges & Status */
.product-badge.sale, .mj-ad-badge { background-color: var(--sale-badge-bg); color: var(--sale-badge-text); }
.in-stock, .joom-stock-text, .free-shipping-label { color: var(--stock-in-color); }
.out-of-stock { color: var(--stock-out-color); }
.low-stock { color: var(--stock-low-color, #ef4444); }
.mj-badge-new { background-color: var(--badge-new-bg); }
.mj-badge-featured { background-color: var(--badge-featured-bg); }
.mj-badge-oos { background-color: var(--badge-oos-bg); }

/* Primary Highlights */
.mobile-badge, .header-icon .icon-badge, .logo-first-letter, .logo-icon, .scroll-to-top, .joom-tab-btn.active::after { background-color: var(--primary-color); }
.site-logo:hover .logo-text, .menu-link:hover, .joom-meta-link, .outlet-link, .promo-link, .joom-lightning-icon, .joom-stars, .widget_layered_nav ul li.chosen a, .widget_product_categories ul li.current-cat a, .joom-category-item.is-open .joom-category-name, .joom-category-item.is-open .joom-category-icon, .joom-login-tab.active, .joom-auth-icon-modal:not(.dark-icon), .joom-auth-icon { color: var(--primary-color); }
.joom-swatch.active, .widget_layered_nav ul li.chosen, .woocommerce-info, .joom-login-tab.active { border-color: var(--primary-color); }
.woocommerce-info, .woocommerce-message { border-top-color: var(--primary-color); border-left-color: var(--primary-color); }
input:focus, textarea:focus, select:focus, .search-bar-wrapper:focus-within { border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(0,0,0,0.05); }

/* Announcement & Top Bar */
.mj-announcement-bar { background-color: var(--mj-announcement-bg); color: var(--mj-announcement-color); text-align: center; font-size: 13.5px; font-weight: 600; letter-spacing: 0.3px; position: relative; z-index: 1000; overflow: hidden; display: flex; align-items: center; justify-content: center; min-height: 40px; }
.mj-announcement-slider { position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; padding: 8px 35px; }
.mj-announcement-slide { position: absolute; width: 100%; opacity: 0; transform: translateY(10px); transition: all 0.5s ease-in-out; pointer-events: none; }
.mj-announcement-slide.active { position: relative; opacity: 1; transform: translateY(0); pointer-events: auto; }
.mj-announcement-bar a { color: var(--mj-announcement-color); text-decoration: none; display: inline-block; }
.mj-announcement-bar a:hover { opacity: 0.85; }
.mj-announcement-close { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); background: transparent; border: none; color: var(--mj-announcement-color); font-size: 20px; cursor: pointer; opacity: 0.7; padding: 0; line-height: 1; }
.mj-announcement-close:hover { opacity: 1; background: transparent !important; color: var(--mj-announcement-color) !important; }
.mj-marquee-track { display: flex; width: max-content; animation: mj-marquee linear infinite; }
.mj-marquee-track:hover { animation-play-state: paused; }
.mj-effect-marquee .mj-announcement-slider { justify-content: flex-start; padding: 8px 0; }
.mj-effect-marquee .mj-announcement-slide { position: relative; width: auto; opacity: 1; transform: none; pointer-events: auto; padding: 0 40px; white-space: nowrap; transition: none; }
@keyframes mj-marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.top-center { flex: 1; text-align: center; font-size: 13px; font-weight: 600; color: var(--mj-top-center-color); }
@media (max-width: 768px) { .top-center { display: none; } }

/* Mobile Bottom Menu */
.mj-mobile-bottom-menu { display: none; }
@media (max-width: 768px) {
	body.joom-has-mobile-menu { padding-bottom: 60px !important; }
	body.joom-has-mobile-menu.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button,
	body.joom-has-mobile-menu.woocommerce-checkout button#place_order { bottom: calc(65px + env(safe-area-inset-bottom, 0)) !important; }
	body.joom-has-mobile-menu.woocommerce-cart .woocommerce .cart_totals table.shop_table tr.order-total { bottom: calc(77px + env(safe-area-inset-bottom, 0)) !important; }
}

/* =================================================
   WORDPRESS NATIVE WIDGETS (SEARCH & RECENT POSTS)
   ================================================= */
body .widget_search form, body .widget_product_search form { display: flex; align-items: stretch; width: 100%; margin: 0; position: relative; }
body .widget_search form label, body .widget_product_search form label { flex: 1 1 auto; width: 100%; margin: 0; padding: 0; display: flex; }
body .widget_search form .screen-reader-text, body .widget_product_search form .screen-reader-text { display: none; }
body .widget_search .search-field, body .widget_search input[type="search"], body .widget_search input[type="text"], body .widget_product_search .search-field, body .widget_product_search input[type="search"], body .widget_product_search input[type="text"] { flex: 1 1 auto; width: 100%; height: 48px; padding: 0 16px; border: 1px solid #e2e8f0; border-right: none; border-radius: 12px 0 0 12px; background: #f8fafc; font-size: 15px; color: #0f172a; outline: none; transition: all 0.2s ease; box-shadow: none; margin: 0; box-sizing: border-box; }
body .widget_search .search-field:focus, body .widget_search input[type="search"]:focus, body .widget_search input[type="text"]:focus, body .widget_product_search .search-field:focus, body .widget_product_search input[type="search"]:focus, body .widget_product_search input[type="text"]:focus { background: #ffffff; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(250,52,52,0.1); z-index: 1; position: relative; }
body .sidebar .widget_search button[type="submit"], body .mj-shop-sidebar .widget_search button[type="submit"], body .widget.widget_search button[type="submit"], body .sidebar .widget_product_search button[type="submit"], body .mj-shop-sidebar .widget_product_search button[type="submit"], body .widget.widget_product_search button[type="submit"], body .sidebar .widget_search input[type="submit"], body .mj-shop-sidebar .widget_search input[type="submit"], body .widget.widget_search input[type="submit"], body .sidebar .widget_product_search input[type="submit"], body .mj-shop-sidebar .widget_product_search input[type="submit"], body .widget.widget_product_search input[type="submit"] { position: static; flex: 0 0 54px; width: 54px; height: 48px; border-radius: 0 12px 12px 0; background: var(--primary-color); color: transparent; border: none; padding: 0; margin: 0; font-size: 0; cursor: pointer; transition: background 0.2s ease; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 20px; z-index: 2; transform: none; }
body .sidebar .widget_search button[type="submit"]:hover, body .mj-shop-sidebar .widget_search button[type="submit"]:hover, body .widget.widget_search button[type="submit"]:hover, body .sidebar .widget_product_search button[type="submit"]:hover, body .mj-shop-sidebar .widget_product_search button[type="submit"]:hover, body .widget.widget_product_search button[type="submit"]:hover, body .sidebar .widget_search input[type="submit"]:hover, body .mj-shop-sidebar .widget_search input[type="submit"]:hover, body .widget.widget_search input[type="submit"]:hover, body .sidebar .widget_product_search input[type="submit"]:hover, body .mj-shop-sidebar .widget_product_search input[type="submit"]:hover, body .widget.widget_product_search input[type="submit"]:hover { background-color: var(--secondary-color, #0f172a); color: transparent; }

body .sidebar .widget.widget_recent_entries ul li, body .mj-shop-sidebar .widget.widget_recent_entries ul li, body .widget.widget_recent_entries ul li { display: flex; flex-direction: column; align-items: flex-start; padding: 14px 0; margin-bottom: 0; border-radius: 0; border-bottom: 1px solid #f1f5f9; background: transparent; }
body .sidebar .widget.widget_recent_entries ul li:last-child, body .mj-shop-sidebar .widget.widget_recent_entries ul li:last-child, body .widget.widget_recent_entries ul li:last-child { border-bottom: none; }
body .widget.widget_recent_entries ul li a { font-size: 15px; font-weight: 700; color: var(--secondary-color, #0f172a); line-height: 1.4; text-decoration: none; transition: color 0.2s ease; display: block; }
body .widget.widget_recent_entries ul li a:hover { color: var(--primary-color); }
body .widget.widget_recent_entries .post-date { font-size: 13px; color: #64748b; margin-top: 6px; font-weight: 600; display: block; }

/* --- Blog Categories Widget (Dropdown, Hierarchy & Counts Support) --- */
body .widget.widget_categories select { width: 100%; height: 48px; padding: 0 40px 0 16px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; font-size: 15px; color: var(--secondary-color, #0f172a); font-weight: 600; outline: none; transition: all 0.2s ease; appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23111827' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; background-size: 14px; cursor: pointer; box-shadow: 0 2px 4px rgba(0,0,0,0.02); }
body .widget.widget_categories select:focus { background: #ffffff; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(250,52,52,0.1); }

body .widget.widget_categories ul { list-style: none; padding: 0; margin: 0; }
body .sidebar .widget.widget_categories ul li, body .mj-shop-sidebar .widget.widget_categories ul li, body .widget.widget_categories ul li { display: block; padding: 10px 0; margin-bottom: 0; border-radius: 0; border-bottom: 1px solid #f1f5f9; font-size: 13.5px; font-weight: 700; color: #94a3b8; background: transparent; line-height: 1.4; }
body .sidebar .widget.widget_categories ul li:last-child, body .mj-shop-sidebar .widget.widget_categories ul li:last-child, body .widget.widget_categories ul li:last-child { border-bottom: none; }
body .widget.widget_categories ul li a { display: inline-block; font-size: 15px; font-weight: 600; color: var(--secondary-color, #0f172a); text-decoration: none; transition: all 0.2s ease; margin-right: 6px; padding: 2px 0; }
body .widget.widget_categories ul li a:hover { color: var(--primary-color); transform: translateX(4px); }
body .widget.widget_categories ul li.current-cat > a { color: var(--primary-color); font-weight: 800; }

/* Categories Hierarchy Level Fix */
body .widget.widget_categories ul.children { margin: 8px 0 0 16px; padding-left: 16px; border-left: 2px solid #e2e8f0; }
body .widget.widget_categories ul.children li { padding-bottom: 0; border-bottom: none; padding-top: 8px; }

/* --- Product Tags / Tag Cloud Widget --- */
body .widget.widget_tag_cloud .tagcloud,
body .widget.widget_product_tag_cloud .tagcloud {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
body .widget.widget_tag_cloud .tagcloud a,
body .widget.widget_product_tag_cloud .tagcloud a {
	display: inline-flex;
	align-items: center;
	padding: 8px 14px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 100px;
	font-size: 13px;
	font-weight: 600;
	color: #475569;
	text-decoration: none;
	transition: all 0.2s ease;
	line-height: 1;
}
body .widget.widget_tag_cloud .tagcloud a:hover,
body .widget.widget_product_tag_cloud .tagcloud a:hover {
	background: var(--primary-color);
	color: #ffffff;
	border-color: var(--primary-color);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(250, 52, 52, 0.2);
}

/* --- Recent Comments Widget --- */
body .sidebar .widget.widget_recent_comments ul li,
body .mj-shop-sidebar .widget.widget_recent_comments ul li,
body .widget.widget_recent_comments ul li {
	display: block;
	padding: 14px 0;
	margin-bottom: 0;
	border-radius: 0;
	border-bottom: 1px solid #f1f5f9;
	background: transparent;
	font-size: 13.5px;
	color: #64748b;
	line-height: 1.5;
}
body .sidebar .widget.widget_recent_comments ul li:last-child,
body .mj-shop-sidebar .widget.widget_recent_comments ul li:last-child,
body .widget.widget_recent_comments ul li:last-child {
	border-bottom: none;
}
body .widget.widget_recent_comments ul li .recentcommentsauthor {
	font-weight: 600;
	color: #334155;
}
body .widget.widget_recent_comments ul li a {
	font-size: 15px;
	font-weight: 700;
	color: var(--secondary-color, #0f172a);
	text-decoration: none;
	transition: color 0.2s ease;
	display: block;
	margin-top: 4px;
}
body .widget.widget_recent_comments ul li a:hover {
	color: var(--primary-color);
}