/* =========================================================
   J-Tech WooCommerce Enhance — Gaming Store Cards
   Inspired by the supplied mobile gaming UI reference.
   ========================================================= */

.jthwe-filter-wrap{max-width:1180px;margin:0 auto 24px;padding:0 14px;}

.jthwe-filter-bar{
	display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;
	background:#fff;border-radius:18px;padding:16px 18px;margin-bottom:22px;
	box-shadow:0 8px 28px rgba(0,0,0,.06);border:1px solid #f0f0f3;position:relative;
}
.jthwe-filter-field{display:flex;flex-direction:column;gap:5px;flex:1;min-width:140px;}
.jthwe-filter-field label{font-size:10px;font-weight:800;color:#9297a3;text-transform:uppercase;letter-spacing:.05em;}
.jthwe-filter-bar input,.jthwe-filter-bar select{width:100%;box-sizing:border-box;background:#f8f8fa;border:1px solid #e8e8ec;border-radius:10px;padding:10px 12px;font-size:13px;color:#111;outline:none;}
.jthwe-price-group{display:flex;gap:7px;flex:1;min-width:180px;}
.jthwe-price-group .jthwe-filter-field{min-width:0;}
.jthwe-filter-bar button,#jthwe-filter-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:#17171a;color:#fff;border:0;border-radius:10px;padding:11px 18px;font-size:12px;font-weight:800;cursor:pointer;}
.jthwe-clear-btn{display:flex;align-items:center;gap:6px;background:#f0f0f3;color:#555;border-radius:10px;padding:11px 15px;font-size:11px;font-weight:800;text-decoration:none;}

.jthwe-results{min-height:100px;}
.jthwe-loading-msg,.jthwe-no-results{text-align:center;color:#999;padding:50px 20px;font-size:13px;font-weight:600;background:#fafafa;border-radius:16px;}


/* All J-Tech sections use the exact same product grid/slider treatment.
 * Applies equally to Game, Streaming, Gift Cards and Global.
 */
.jthwe-product-section .jthwe-section-heading{
	display:flex!important;align-items:center!important;justify-content:space-between!important;
	margin:0 0 12px!important;padding:0!important;
}
.jthwe-product-section .jthwe-section-heading h2{
	width:100%!important;box-sizing:border-box!important;
	background:linear-gradient(90deg,#7a0000 0%,#4a0000 100%)!important;
	border:1px solid rgba(255,255,255,.16)!important;border-radius:12px!important;
	padding:11px 14px!important;margin:0!important;color:#fff!important;
	font-size:18px!important;line-height:1.15!important;font-weight:900!important;
}
.jthwe-product-section > .jthwe-section-slider-list,
.jthwe-product-section > .jthwe-slider-wrap > .jthwe-section-slider-list{
	width:100%!important;box-sizing:border-box!important;
}
.jthwe-product-section .jthwe-slide-grid{
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	grid-template-rows:repeat(3,minmax(0,1fr))!important;
}

/* Product auto-slider: 3 columns x 3 rows per slide */
.jthwe-product-section{
	position:relative!important;
	background:linear-gradient(180deg,#6f0000 0%,#3b0000 100%)!important;
	border:1px solid #a60000!important;
	border-radius:18px!important;
	padding:14px!important;
	margin:0 0 var(--jthwe-section-gap,28px)!important;
	box-shadow:0 10px 30px rgba(70,0,0,.25)!important;
}
.jthwe-section-heading h2{
	margin:0 0 12px!important;
	padding:0!important;
	color:#fff!important;
	font-size:18px!important;
	font-weight:900!important;
}

ul.products:not(:has(> li.product-category)),
ul.products.jthwe-products-grid{
	display:flex!important;
	flex-wrap:nowrap!important;
	align-items:stretch!important;
	gap:0!important;
	list-style:none!important;
	margin:0!important;
	padding:2px 2px 12px!important;
	width:100%!important;
	float:none!important;
	overflow-x:auto!important;
	overflow-y:hidden!important;
	scroll-snap-type:x mandatory!important;
	-webkit-overflow-scrolling:touch!important;
	scrollbar-width:none!important;
	cursor:grab!important;
}

ul.products:not(:has(> li.product-category))::-webkit-scrollbar,
ul.products.jthwe-products-grid::-webkit-scrollbar{display:none!important;}

ul.products.jthwe-products-slider:active{cursor:grabbing!important;}

/* Every slide is one full viewport and contains exactly 3 x 3 cards. */
ul.products.jthwe-products-slider > li.jthwe-slide-page{
	flex:0 0 100%!important;
	width:100%!important;
	min-width:100%!important;
	margin:0!important;
	padding:0!important;
	list-style:none!important;
	scroll-snap-align:start!important;
	box-sizing:border-box!important;
}

.jthwe-slide-grid{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	grid-template-rows:repeat(3,minmax(0,1fr))!important;
	gap:var(--jthwe-grid-gap,12px)!important;
	width:100%!important;
}

/* Card width is controlled by the 3-column slide grid. */
ul.products.jthwe-products-slider li.product{
	width:100%!important;
	min-width:0!important;
	max-width:none!important;
	flex:initial!important;
	scroll-snap-align:none!important;
}

/* Slider navigation */
.jthwe-slider-wrap{position:relative!important;width:100%!important;margin:0 0 18px!important;}
.jthwe-slider-wrap > ul.products{margin:0!important;}
.jthwe-slider-controls{display:flex!important;justify-content:flex-end!important;gap:6px!important;margin:0 2px 7px!important;}
.jthwe-slider-control{width:30px!important;height:30px!important;padding:0!important;border:1px solid #dedee3!important;border-radius:50%!important;background:#fff!important;color:#17171a!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;box-shadow:0 3px 10px rgba(0,0,0,.08)!important;}
.jthwe-slider-control svg{width:14px!important;height:14px!important;stroke:currentColor!important;fill:none!important;stroke-width:2!important;}
.jthwe-slider-control:hover{background:#17171a!important;color:#fff!important;border-color:#17171a!important;}
.jthwe-slider-control:disabled{opacity:.35!important;cursor:default!important;}

/* Card */
ul.products li.product,
.jthwe-products-grid li.product{
	position:relative!important;
	display:flex!important;
	flex-direction:column!important;
	align-items:stretch!important;
	gap:0!important;
	width:auto!important;
	max-width:none!important;
	min-width:0!important;
	float:none!important;
	clear:none!important;
	margin:0!important;
	padding:0 0 8px!important;
	background:linear-gradient(145deg,#c90808 0%,#8f0000 58%,#620000 100%)!important;
	border:1px solid #303034!important;
	border-radius:14px!important;
	overflow:hidden!important;
	box-sizing:border-box!important;
	text-align:left!important;
	border-color:#f21a1a!important;
	box-shadow:0 6px 18px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.08)!important;
	transition:transform .18s ease,box-shadow .18s ease!important;
	animation:jthwe-card-in .3s ease both!important;
}
@keyframes jthwe-card-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

ul.products li.product:hover,.jthwe-products-grid li.product:hover{transform:translateY(-3px)!important;box-shadow:0 12px 24px rgba(0,0,0,.18)!important;}

ul.products li.product a.woocommerce-LoopProduct-link,
ul.products li.product>a:not(.button){display:block!important;text-decoration:none!important;color:inherit!important;box-shadow:none!important;}

/* Image */
ul.products li.product img{
	width:100%!important;
	height:auto!important;
	aspect-ratio:1.34/1!important;
	object-fit:cover!important;
	object-position:center!important;
	display:block!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	box-shadow:none!important;
}

/* Views */
.jthwe-card-views{
	position:absolute!important;top:7px!important;left:7px!important;z-index:7!important;
	min-width:26px!important;height:26px!important;padding:0 7px!important;
	display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
	border:0!important;border-radius:999px!important;background:rgba(20,20,22,.72)!important;
	color:#fff!important;font-size:9px!important;font-weight:800!important;
	backdrop-filter:blur(5px)!important;box-sizing:border-box!important;
}
.jthwe-card-views svg{width:13px!important;height:13px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;}

/* Badge */
.jthwe-product-badge{
	position:absolute!important;top:7px!important;right:7px!important;z-index:7!important;
	display:inline-flex!important;align-items:center!important;justify-content:center!important;
	min-height:18px!important;padding:3px 7px!important;border-radius:999px!important;
	background:var(--jthwe-product-badge-color,#b64cff)!important;color:#fff!important;
	font-size:8px!important;font-weight:900!important;line-height:1!important;text-transform:uppercase!important;
	box-shadow:0 3px 9px rgba(0,0,0,.25)!important;letter-spacing:.03em!important;
}

/* Card text */
ul.products li.product .woocommerce-loop-product__title{
	font-size:11px!important;font-weight:800!important;color:#fff!important;
	line-height:1.25!important;margin:7px 8px 2px!important;padding:0!important;
	min-height:24px!important;white-space:normal!important;overflow:hidden!important;
	display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
}
ul.products li.product .jthwe-card-category{
	font-size:8px!important;font-weight:700!important;color:#8f9098!important;
	line-height:1.2!important;margin:0 8px 4px!important;text-transform:none!important;
	white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
ul.products li.product .star-rating{display:none!important;}
ul.products li.product .price{
	font-size:10px!important;font-weight:800!important;color:#b8b8be!important;
	line-height:1.15!important;margin:0 8px 6px!important;padding:0!important;display:block!important;
}
ul.products li.product .price,
ul.products li.product .price *,
ul.products li.product .price .woocommerce-Price-amount,
ul.products li.product .price bdi{
	color:#b8b8be!important;
}
ul.products li.product .price ins{font-size:10px!important;font-weight:800!important;color:#b8b8be!important;text-decoration:none!important;}
ul.products li.product .price del{font-size:7.5px!important;color:#777!important;opacity:.75!important;margin-right:3px!important;}
ul.products li.product .price del *,ul.products li.product .price del bdi{color:#777!important;}

/* Buy button — hidden: the whole card opens the product */
ul.products li.product .button,
ul.products li.product .add_to_cart_button{
	align-self:stretch!important;margin:0 8px!important;width:calc(100% - 16px)!important;
	box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
	background:#b64cff!important;color:#fff!important;border:0!important;border-radius:8px!important;
	padding:7px 8px!important;font-size:9px!important;font-weight:900!important;line-height:1!important;
	box-shadow:none!important;text-align:center!important;text-decoration:none!important;
}
ul.products li.product .button:hover{background:#a53bef!important;transform:none!important;}
ul.products li.product .added_to_cart{display:block!important;text-align:center!important;margin-top:4px!important;font-size:8px!important;color:#b64cff!important;font-weight:800!important;}
ul.products li.product .onsale{display:none!important;}

/* Hide WooCommerce category count */
ul.products li.product-category .count{display:none!important;}

@media(max-width:767px){
	.jthwe-filter-wrap{padding:0 10px;}
	ul.products:not(:has(> li.product-category)),ul.products.jthwe-products-grid{gap:9px!important;}
	ul.products li.product{border-radius:12px!important;padding-bottom:8px!important;}
	ul.products li.product img{aspect-ratio:1.30/1!important;}
	ul.products li.product .woocommerce-loop-product__title{font-size:9px!important;margin:5px 6px 2px!important;min-height:21px!important;}
	ul.products li.product .jthwe-card-category{font-size:7px!important;margin:0 6px 3px!important;}
	ul.products li.product .price,ul.products li.product .price .woocommerce-Price-amount,ul.products li.product .price bdi{font-size:8px!important;color:#b8b8be!important;margin:0 6px 5px!important;}
	ul.products li.product .price ins{font-size:8px!important;color:#b8b8be!important;}
	ul.products li.product .price del,ul.products li.product .price del bdi{font-size:6.5px!important;color:#777!important;}
	ul.products li.product .button,ul.products li.product .add_to_cart_button{margin:0 6px!important;width:calc(100% - 12px)!important;padding:6px 4px!important;font-size:8px!important;border-radius:7px!important;}
	.jthwe-product-badge{top:5px!important;right:5px!important;font-size:7px!important;min-height:16px!important;padding:3px 5px!important;}
	.jthwe-card-heart{top:5px!important;left:5px!important;width:23px!important;height:23px!important;}
	.jthwe-card-heart svg{width:11px!important;height:11px!important;}
}

@media(max-width:360px){
	.jthwe-slide-grid{gap:var(--jthwe-mobile-grid-gap,7px)!important;}
	ul.products li.product .woocommerce-loop-product__title{font-size:8.5px!important;}
}

@media(min-width:768px){
	.jthwe-slide-grid{gap:var(--jthwe-grid-gap,12px)!important;}
}

@media(max-width:767px){
	.jthwe-slider-controls{display:none!important;}
}


/* Real slider interaction */
ul.products.jthwe-products-slider{touch-action:pan-y pinch-zoom!important;user-select:none!important;}
ul.products.jthwe-products-slider img{pointer-events:none!important;}
ul.products.jthwe-products-slider.jthwe-dragging{cursor:grabbing!important;scroll-snap-type:none!important;}
.jthwe-slider-wrap:not(.jthwe-has-overflow) .jthwe-slider-controls{display:none!important;}

/* =========================================================
   MOBILE 3 x 3 FIX
   Force each mobile slide to keep all 9 products visible:
   3 columns x 3 rows. Do not let the theme/WooCommerce
   mobile rules collapse the third row.
   ========================================================= */
@media (max-width: 767px) {
	ul.products.jthwe-products-slider {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	ul.products.jthwe-products-slider > li.jthwe-slide-page {
		flex: 0 0 100% !important;
		width: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		box-sizing: border-box !important;
	}

	ul.products.jthwe-products-slider > li.jthwe-slide-page > .jthwe-slide-grid {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		grid-template-rows: repeat(3, auto) !important;
		grid-auto-flow: row !important;
		align-items: stretch !important;
		align-content: start !important;
		gap: var(--jthwe-mobile-grid-gap,7px) !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		box-sizing: border-box !important;
	}

	ul.products.jthwe-products-slider > li.jthwe-slide-page > .jthwe-slide-grid > li.product {
		grid-column: auto !important;
		grid-row: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		float: none !important;
		clear: none !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}
}


/* =========================================================
   J-TECH CARD MODE
   No add-to-cart button: click anywhere on the card to open it.
   ========================================================= */
ul.products.jthwe-products-slider li.product .button,
ul.products.jthwe-products-slider li.product .add_to_cart_button,
ul.products.jthwe-products-slider li.product .added_to_cart{
	display:none!important;
}
ul.products.jthwe-products-slider li.product{cursor:pointer!important;}
ul.products.jthwe-products-slider li.product:focus-within{	outline:2px solid #fff!important;outline-offset:2px!important;}
@media(max-width:767px){
	.jthwe-product-section{padding:9px!important;border-radius:14px!important;margin-bottom:var(--jthwe-mobile-section-gap,20px)!important;}
	.jthwe-section-heading h2{font-size:15px!important;margin-bottom:8px!important;}
}


/* =========================================================
   MOBILE PRICE ALIGNMENT FIX
   Keep regular + sale price on one horizontal line exactly
   like desktop. Prevent WooCommerce/theme rules from
   stacking the prices vertically on narrow screens.
   ========================================================= */
@media (max-width: 767px) {
	ul.products.jthwe-products-slider li.product .price {
		display:flex !important;
		align-items:center !important;
		justify-content:flex-start !important;
		flex-wrap:nowrap !important;
		gap:2px !important;
		white-space:nowrap !important;
		width:calc(100% - 12px) !important;
		max-width:100% !important;
		min-width:0 !important;
		box-sizing:border-box !important;
		overflow:hidden !important;
		margin:0 6px 5px !important;
		line-height:1 !important;
	}

	ul.products.jthwe-products-slider li.product .price del,
	ul.products.jthwe-products-slider li.product .price ins {
		display:inline-flex !important;
		align-items:center !important;
		flex:0 0 auto !important;
		white-space:nowrap !important;
		line-height:1 !important;
		margin:0 !important;
	}

	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-amount,
	ul.products.jthwe-products-slider li.product .price bdi,
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-currencySymbol {
		display:inline !important;
		white-space:nowrap !important;
		line-height:1 !important;
	}

	/* Slightly smaller text so both prices always fit in 3-column cards. */
	ul.products.jthwe-products-slider li.product .price,
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-amount,
	ul.products.jthwe-products-slider li.product .price bdi {
		font-size:8px !important;
		font-weight:800 !important;
		color:#b8b8be !important;
	}

	ul.products.jthwe-products-slider li.product .price ins {
		font-size:8px !important;
		color:#b8b8be !important;
	}

	ul.products.jthwe-products-slider li.product .price del,
	ul.products.jthwe-products-slider li.product .price del bdi {
		font-size:6.5px !important;
		color:#777 !important;
		opacity:.8 !important;
	}
}

@media (max-width: 360px) {
	ul.products.jthwe-products-slider li.product .price,
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-amount,
	ul.products.jthwe-products-slider li.product .price bdi,
	ul.products.jthwe-products-slider li.product .price ins {
		font-size:7.5px !important;
	}
	ul.products.jthwe-products-slider li.product .price del,
	ul.products.jthwe-products-slider li.product .price del bdi {
		font-size:6px !important;
	}
}


/* v2.3.1 — compact variable-price range on mobile */
@media (max-width: 767px) {
	ul.products.jthwe-products-slider li.product .price {
		display:flex !important;
		align-items:baseline !important;
		justify-content:flex-start !important;
		flex-wrap:nowrap !important;
		gap:2px !important;
		overflow:visible !important;
		white-space:nowrap !important;
		letter-spacing:-0.1px !important;
	}
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-amount,
	ul.products.jthwe-products-slider li.product .price bdi {
		white-space:nowrap !important;
		font-size:7.5px !important;
	}
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-currencySymbol {
		font-size:7.5px !important;
	}
}
@media (max-width: 360px) {
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-amount,
	ul.products.jthwe-products-slider li.product .price bdi,
	ul.products.jthwe-products-slider li.product .price .woocommerce-Price-currencySymbol {
		font-size:7px !important;
	}
}


/* v2.4.6 — clean single price in section cards */
ul.products.jthwe-products-slider li.product .price,
ul.products.jthwe-products-grid li.product .price{
	text-align:center!important;
	justify-content:center!important;
}
ul.products.jthwe-products-slider li.product .price .jthwe-loop-price-single,
ul.products.jthwe-products-grid li.product .price .jthwe-loop-price-single{
	display:inline-flex!important;	align-items:center!important;	justify-content:center!important;
	white-space:nowrap!important;	text-decoration:none!important;
}
@media(max-width:767px){
	ul.products.jthwe-products-slider li.product .price,
	ul.products.jthwe-products-grid li.product .price{
		text-align:center!important;
		justify-content:center!important;
		margin-left:4px!important;margin-right:4px!important;
		width:calc(100% - 8px)!important;
	}
}

/* v2.4.7 — centered price range + Kreyòl category labels */
ul.products li.product .price{
	text-align:center!important;
	white-space:nowrap!important;
	overflow:hidden!important;
	text-overflow:ellipsis!important;
}
ul.products li.product .jthwe-loop-price-range,
ul.products li.product .jthwe-loop-price-single{
	display:inline-flex!important;
	align-items:baseline!important;
	justify-content:center!important;
	gap:0!important;
	max-width:100%!important;
	white-space:nowrap!important;
}
ul.products li.product .jthwe-loop-price-separator{
	padding:0 3px!important;
	color:#b8b8be!important;
	font-weight:800!important;
}
ul.products li.product .jthwe-loop-price-range .woocommerce-Price-amount,
ul.products li.product .jthwe-loop-price-single .woocommerce-Price-amount{
	color:#b8b8be!important;
}
@media(max-width:767px){
	ul.products li.product .price{
		font-size:8px!important;
		text-align:center!important;
		margin:0 4px 5px!important;
	}
	ul.products li.product .jthwe-loop-price-separator{padding:0 2px!important;}
}

/* =========================================================
   J-TECH WHITE SECTION BACKGROUND
   ========================================================= */
.jthwe-product-section{
    background:#fff!important;
    background-image:none!important;
    border:1px solid #eeeeee!important;
    box-shadow:0 8px 24px rgba(0,0,0,.06)!important;
}
.jthwe-product-section .jthwe-section-heading h2{
    background:#fff!important;
    color:#171717!important;
    border:0!important;
    position:relative!important;
    padding-bottom:15px!important;
}
.jthwe-product-section .jthwe-section-heading h2:after{
    content:"";
    display:block;
    width:42px;
    height:3px;
    margin-top:7px;
    background:#e00000;
    border-radius:10px;
}

/* =========================================================
   v2.4.11 — SECTION SEARCH + GLOBAL-ONLY AUTO SLIDER
   ========================================================= */
.jthwe-product-section{
    background:#fff!important;
    background-image:none!important;
    border:1px solid #eeeeee!important;
    box-shadow:0 8px 24px rgba(0,0,0,.06)!important;
}

.jthwe-product-section .jthwe-section-heading{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin:0 0 14px!important;
    padding:0!important;
}

.jthwe-product-section .jthwe-section-heading h2{
    flex:0 0 auto!important;
    width:auto!important;
    max-width:42%!important;
    background:#fff!important;
    color:#171717!important;
    border:0!important;
    border-radius:0!important;
    padding:0 0 11px!important;
    margin:0!important;
    position:relative!important;
}

.jthwe-product-section .jthwe-section-heading h2:after{
    content:"";
    display:block;
    width:42px;
    height:3px;
    margin-top:7px;
    background:#e00000;
    border-radius:10px;
}

.jthwe-section-search{
    flex:1 1 360px!important;
    max-width:460px!important;
    min-width:220px!important;
    display:flex!important;
    align-items:center!important;
    gap:0!important;
    background:#f8f8fa!important;
    border:1px solid #e6e6eb!important;
    border-radius:12px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}

.jthwe-section-search-input{
    flex:1 1 auto!important;
    min-width:0!important;
    height:42px!important;
    padding:0 13px!important;
    border:0!important;
    outline:none!important;
    background:transparent!important;
    color:#171717!important;
    font-size:13px!important;
    box-shadow:none!important;
}
.jthwe-section-search-input::placeholder{color:#999da7!important;}

.jthwe-section-search-button{
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:#e00000!important;
    color:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    cursor:pointer!important;
}
.jthwe-section-search-button svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;}

/* Non-global sections are normal grids. No slider, no auto-slide. */
.jthwe-product-section:not(.jthwe-section-global) .jthwe-products-static,
.jthwe-product-section:not(.jthwe-section-global) > ul.jthwe-section-slider-list{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
}

.jthwe-product-section:not(.jthwe-section-global) ul.products li.product{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}

/* Search hides products without changing the layout. */
.jthwe-product-section li.product[data-jthwe-search-visible="0"]{display:none!important;}
.jthwe-section-no-results{
    margin:12px 0 2px!important;
    padding:24px 14px!important;
    border:1px dashed #ddd!important;
    border-radius:12px!important;
    background:#fafafa!important;
    color:#777!important;
    text-align:center!important;
    font-size:13px!important;
    font-weight:700!important;
}

/* Global keeps the slider controls and auto-slide. */
.jthwe-section-global .jthwe-slider-wrap{margin:0!important;}

@media(max-width:767px){
    .jthwe-product-section .jthwe-section-heading{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:8px!important;
        margin-bottom:10px!important;
    }
    .jthwe-product-section .jthwe-section-heading h2{
        max-width:none!important;
        width:100%!important;
        font-size:15px!important;
        padding-bottom:7px!important;
    }
    .jthwe-section-search{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
    }
    .jthwe-section-search-input{height:38px!important;font-size:12px!important;}
    .jthwe-section-search-button{width:38px!important;height:38px!important;flex-basis:38px!important;}

    .jthwe-product-section:not(.jthwe-section-global) .jthwe-products-static,
    .jthwe-product-section:not(.jthwe-section-global) > ul.jthwe-section-slider-list{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:9px!important;
    }

    .jthwe-product-section:not(.jthwe-section-global) ul.products li.product{
        width:100%!important;
    }
}


/* =========================================
   v2.4.12 - SECTION SEARCH / CARD CLEANUP
   ========================================= */
/* Hide WooCommerce "Chwazi opsyon / Select options" buttons inside J-Tech sections. */
.jthwe-product-section ul.products li.product .button,
.jthwe-product-section ul.products li.product .add_to_cart_button,
.jthwe-product-section ul.products li.product .added_to_cart{
    display:none!important;
}

/* Search is compact and balanced on desktop. */
.jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search{
    flex:0 1 360px!important;
    width:360px!important;
    max-width:360px!important;
    min-width:240px!important;
}

/* Mobile: keep the search neat instead of a huge full-width bar. */
@media(max-width:767px){
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-heading{
        flex-direction:row!important;
        align-items:center!important;
        justify-content:space-between!important;
        gap:8px!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-heading h2{
        flex:1 1 auto!important;
        width:auto!important;
        max-width:calc(100% - 150px)!important;
        margin:0!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search{
        flex:0 0 140px!important;
        width:140px!important;
        max-width:140px!important;
        min-width:140px!important;
        border-radius:9px!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search-input{
        height:32px!important;
        font-size:10px!important;
        padding:0 9px!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search-button{
        width:32px!important;
        height:32px!important;
        flex-basis:32px!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search-button svg{
        width:14px!important;
        height:14px!important;
    }
}

@media(max-width:380px){
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-heading h2{
        font-size:13px!important;
        max-width:calc(100% - 128px)!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search{
        flex-basis:120px!important;
        width:120px!important;
        max-width:120px!important;
        min-width:120px!important;
    }
    .jthwe-product-section:not(.jthwe-section-global) .jthwe-section-search-input{
        font-size:9px!important;
    }
}

/* =========================================================
   v2.4.13 — BOUTIK / FILTER GRID FIX
   Do NOT let the Global slider CSS affect the normal Boutique
   results. The previous broad ul.products selector made the
   boutique cards collapse into a tiny horizontal row.
   ========================================================= */

/* Normal Boutique/filter results: stable 3-column grid. */
#jthwe-results ul.products.jthwe-products-grid,
.jthwe-filter-wrap #jthwe-results ul.products.jthwe-products-grid,
.woocommerce #jthwe-results ul.products.jthwe-products-grid {
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	grid-auto-rows:auto!important;
	gap:14px!important;
	width:100%!important;
	margin:0!important;
	padding:0!important;
	overflow:visible!important;
	flex-wrap:initial!important;
	align-items:stretch!important;
	scroll-snap-type:none!important;
	cursor:default!important;
}

#jthwe-results ul.products.jthwe-products-grid > li.product,
.jthwe-filter-wrap #jthwe-results ul.products.jthwe-products-grid > li.product {
	width:100%!important;
	min-width:0!important;
	max-width:none!important;
	flex:none!important;
	margin:0!important;
	float:none!important;
	clear:none!important;
}

/* Boutique/filter cards should never show WooCommerce action buttons. */
#jthwe-results ul.products li.product .button,
#jthwe-results ul.products li.product .add_to_cart_button,
#jthwe-results ul.products li.product .added_to_cart,
.jthwe-filter-wrap ul.products li.product .button,
.jthwe-filter-wrap ul.products li.product .add_to_cart_button,
.jthwe-filter-wrap ul.products li.product .added_to_cart {
	display:none!important;
}

/* Keep the card readable on narrow phones. */
@media(max-width:767px){
	#jthwe-results ul.products.jthwe-products-grid,
	.jthwe-filter-wrap #jthwe-results ul.products.jthwe-products-grid {
		grid-template-columns:repeat(3,minmax(0,1fr))!important;
		gap:8px!important;
	}
}


/* =========================================================
   v2.4.14 — SECTION FILTER HEADER + BOUTIQUE MOBILE PRICES
   ========================================================= */
.jthwe-section-heading h2{
    color:#171717!important;
    font-size:18px!important;
    font-weight:900!important;
    margin:0 0 10px!important;
    padding:0 0 10px!important;
    background:#fff!important;
    border:0!important;
}

.jthwe-section-heading h2:after{
    content:"";
    display:block;
    width:42px;
    height:3px;
    margin-top:7px;
    background:#e00000;
    border-radius:10px;
}

.jthwe-section-filter-bar{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-end!important;
    gap:10px!important;
    background:#fff!important;
    border-radius:18px!important;
    padding:16px 18px!important;
    margin:0 0 16px!important;
    box-shadow:0 8px 28px rgba(0,0,0,.06)!important;
    border:1px solid #f0f0f3!important;
    box-sizing:border-box!important;
}
.jthwe-section-filter-bar .jthwe-filter-field{flex:1 1 150px!important;min-width:140px!important;}
.jthwe-section-filter-bar .jthwe-price-group{display:flex!important;gap:7px!important;flex:1 1 190px!important;min-width:190px!important;}
.jthwe-section-filter-bar input,
.jthwe-section-filter-bar select{
    width:100%!important;box-sizing:border-box!important;background:#f8f8fa!important;
    border:1px solid #e8e8ec!important;border-radius:10px!important;padding:10px 12px!important;
    font-size:13px!important;color:#111!important;outline:none!important;height:40px!important;
}
.jthwe-section-filter-bar select:disabled{opacity:1!important;color:#444!important;cursor:default!important;}
.jthwe-section-filter-bar label{display:block!important;font-size:10px!important;font-weight:800!important;color:#9297a3!important;text-transform:uppercase!important;letter-spacing:.05em!important;margin:0 0 5px!important;}
.jthwe-section-filter-bar .jthwe-section-search-button{
    display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
    background:#17171a!important;color:#fff!important;border:0!important;border-radius:10px!important;
    padding:11px 18px!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important;
    height:40px!important;box-sizing:border-box!important;flex:0 0 auto!important;
}
.jthwe-section-filter-bar .jthwe-section-search-button svg{stroke:currentColor!important;}

/* Keep the normal Boutique/Shop price readable on phones. */
@media(max-width:767px){
    .woocommerce ul.products:not(.jthwe-products-slider) li.product .price,
    .jthwe-filter-wrap #jthwe-results ul.products li.product .price{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:2px!important;
        width:100%!important;
        margin:0 0 7px!important;
        padding:0 3px!important;
        box-sizing:border-box!important;
        font-size:8.5px!important;
        line-height:1.15!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:clip!important;
    }
    .woocommerce ul.products:not(.jthwe-products-slider) li.product .price .woocommerce-Price-amount,
    .woocommerce ul.products:not(.jthwe-products-slider) li.product .price bdi,
    .jthwe-filter-wrap #jthwe-results ul.products li.product .price .woocommerce-Price-amount,
    .jthwe-filter-wrap #jthwe-results ul.products li.product .price bdi{font-size:8.5px!important;white-space:nowrap!important;}
    .woocommerce ul.products:not(.jthwe-products-slider) li.product .price del,
    .woocommerce ul.products:not(.jthwe-products-slider) li.product .price ins{font-size:8px!important;white-space:nowrap!important;}

    .jthwe-section-filter-bar{padding:12px!important;gap:8px!important;border-radius:14px!important;}
    .jthwe-section-filter-bar .jthwe-filter-field{min-width:0!important;flex:1 1 calc(50% - 8px)!important;}
    .jthwe-section-filter-bar .jthwe-filter-field:first-child{flex-basis:100%!important;}
    .jthwe-section-filter-bar .jthwe-price-group{min-width:0!important;flex:1 1 100%!important;}
    .jthwe-section-filter-bar .jthwe-section-search-button{flex:1 1 100%!important;width:100%!important;}
}

/* =========================================================
   v2.4.15 — SECTION FILTER OUTSIDE GRID + PREMIUM HEADER
   ========================================================= */
.jthwe-section-shell{
    width:100%!important;
    box-sizing:border-box!important;
    margin:0 0 var(--jthwe-section-gap,28px)!important;
}

/* The search/filter header is separate from the product section,
   just like the Boutique filter bar. */
.jthwe-section-shell > .jthwe-section-heading{
    margin:0 0 10px!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar{
    position:relative!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-end!important;
    gap:10px!important;
    background:linear-gradient(135deg,#ffffff 0%,#fff7f7 55%,#fff0f0 100%)!important;
    border:1px solid #f1d2d2!important;
    border-radius:18px!important;
    padding:16px 18px!important;
    margin:0 0 14px!important;
    box-shadow:0 8px 24px rgba(130,0,0,.08)!important;
    overflow:hidden!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:4px!important;
    background:linear-gradient(180deg,#ff2b2b,#b40000)!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-filter-field label{
    color:#a40000!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar input,
.jthwe-section-shell > .jthwe-section-filter-bar select{
    background:#fff!important;
    border-color:#ead7d7!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-search-button{
    background:linear-gradient(135deg,#e60000,#a70000)!important;
    box-shadow:0 5px 12px rgba(190,0,0,.18)!important;
}

/* Product section is only the grid/card area now. */
.jthwe-section-shell > .jthwe-product-section{
    margin:0!important;
    background:#fff!important;
    border:1px solid #eeeeee!important;
    border-radius:18px!important;
    box-shadow:0 8px 24px rgba(0,0,0,.055)!important;
    padding:14px!important;
}

/* Keep section title clean and separate from the filter header. */
.jthwe-section-shell > .jthwe-section-heading h2{
    background:#fff!important;
    color:#171717!important;
    border:0!important;
    border-radius:0!important;
    padding:0 0 8px!important;
    margin:0!important;
}

/* Boutique filter: richer white/red header and every category, including empty ones. */
.jthwe-filter-bar-native{
    position:relative!important;
    background:linear-gradient(135deg,#fff 0%,#fff8f8 60%,#fff0f0 100%)!important;
    border-color:#f1d2d2!important;
    box-shadow:0 8px 24px rgba(130,0,0,.08)!important;
    overflow:hidden!important;
}
.jthwe-filter-bar-native:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:4px!important;
    background:linear-gradient(180deg,#ff2b2b,#b40000)!important;
}
.jthwe-filter-bar-native .jthwe-filter-field label{color:#a40000!important;}
.jthwe-filter-bar-native input,
.jthwe-filter-bar-native select{background:#fff!important;border-color:#ead7d7!important;}
.jthwe-filter-bar-native > button{
    background:linear-gradient(135deg,#e60000,#a70000)!important;
    box-shadow:0 5px 12px rgba(190,0,0,.18)!important;
}

@media(max-width:767px){
    .jthwe-section-shell{margin-bottom:var(--jthwe-mobile-section-gap,20px)!important;}
    .jthwe-section-shell > .jthwe-section-filter-bar{
        padding:12px!important;
        gap:8px!important;
        border-radius:14px!important;
        margin-bottom:10px!important;
    }
    .jthwe-section-shell > .jthwe-product-section{padding:8px!important;border-radius:14px!important;}
}


/* =========================================================
   v2.4.16 — COMPACT MOBILE SECTION HEADER + GAME LABELS
   Keep the section filter visually consistent with desktop,
   but compact on phones so it does not consume the page.
   ========================================================= */
@media (max-width: 767px) {
    .jthwe-section-shell > .jthwe-section-heading {
        margin: 0 0 7px !important;
        padding: 0 !important;
    }

    .jthwe-section-shell > .jthwe-section-heading h2 {
        font-size: 15px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        padding: 0 0 6px !important;
        margin: 0 !important;
        max-width: none !important;
        width: auto !important;
    }

    /* Same filter model as desktop, compressed into a neat 2x2 block. */
    .jthwe-section-shell > .jthwe-section-filter-bar {
        display: grid !important;
        grid-template-columns: minmax(0, 1.25fr) minmax(0, .9fr) !important;
        grid-template-areas:
            "search category"
            "prices button" !important;
        align-items: end !important;
        gap: 7px !important;
        padding: 9px !important;
        margin: 0 0 9px !important;
        border-radius: 13px !important;
        box-shadow: 0 5px 15px rgba(130,0,0,.07) !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-filter-field:nth-child(1) {
        grid-area: search !important;
        min-width: 0 !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-filter-field:nth-child(2) {
        grid-area: category !important;
        min-width: 0 !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-price-group {
        grid-area: prices !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 5px !important;
        min-width: 0 !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-filter-field {
        min-width: 0 !important;
        width: 100% !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-filter-field label {
        font-size: 8px !important;
        line-height: 1 !important;
        margin: 0 0 3px !important;
        letter-spacing: .04em !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar input,
    .jthwe-section-shell > .jthwe-section-filter-bar select {
        height: 31px !important;
        min-height: 31px !important;
        padding: 0 8px !important;
        border-radius: 8px !important;
        font-size: 10px !important;
        line-height: 31px !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-search-button {
        grid-area: button !important;
        width: 100% !important;
        height: 31px !important;
        min-height: 31px !important;
        padding: 0 9px !important;
        border-radius: 8px !important;
        font-size: 9px !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-search-button svg {
        width: 12px !important;
        height: 12px !important;
    }
}

@media (max-width: 360px) {
    .jthwe-section-shell > .jthwe-section-filter-bar {
        grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important;
        gap: 6px !important;
        padding: 8px !important;
    }

    .jthwe-section-shell > .jthwe-section-heading h2 {
        font-size: 14px !important;
    }

    .jthwe-section-shell > .jthwe-section-filter-bar input,
    .jthwe-section-shell > .jthwe-section-filter-bar select {
        font-size: 9px !important;
    }
}

/* Card metadata: show the actual game name, not generic category labels. */
.jthwe-product-section ul.products li.product .jthwe-card-category {
    color: #777b85 !important;
    font-weight: 800 !important;
    text-transform: none !important;
}

/* =========================================================
   v2.4.17 — SECTION FILTER RELIABLE BUTTON + PRICE FIELDS
   ========================================================= */
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-min-price,
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-max-price {
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-price-group {
    display:flex!important;
    gap:7px!important;
    flex:1 1 190px!important;
    min-width:190px!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-search-button {
    pointer-events:auto!important;
    user-select:none!important;
    z-index:3!important;
}
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-filter-field input:focus,
.jthwe-section-shell > .jthwe-section-filter-bar .jthwe-filter-field select:focus {
    border-color:#e00000!important;
    box-shadow:0 0 0 2px rgba(224,0,0,.08)!important;
}
.jthwe-section-shell > .jthwe-product-section li.product.jthwe-section-filter-hidden {
    display:none!important;
}
@media(max-width:767px){
    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-price-group {
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:5px!important;
        min-width:0!important;
        flex:1 1 100%!important;
    }
    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-min-price,
    .jthwe-section-shell > .jthwe-section-filter-bar .jthwe-section-max-price {
        width:100%!important;
        min-width:0!important;
    }
}


/* =========================================================
   v2.4.18 — FIX MIN PRICE COLLISION + PREMIUM SHOP HEADER
   ========================================================= */
/* The old mobile selectors also matched the first field INSIDE
   the price group, which stole the "search" grid area from Pri Min. */
@media (max-width: 767px) {
    .jthwe-section-shell > .jthwe-section-filter-bar {
        grid-template-columns: minmax(0, 1.25fr) minmax(0, .9fr) !important;
        grid-template-areas: "search category" "prices button" !important;
    }
    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-filter-field:nth-child(1) {
        grid-area: search !important;
    }
    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-filter-field:nth-child(2) {
        grid-area: category !important;
    }
    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-price-group {
        grid-area: prices !important;
        display: grid !important;
        grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
        gap: 6px !important;
        width: 100% !important;
        min-width: 0 !important;
        overflow: visible !important;
    }
    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-price-group > .jthwe-filter-field:nth-child(1),
    .jthwe-section-shell > .jthwe-section-filter-bar > .jthwe-price-group > .jthwe-filter-field:nth-child(2) {
        grid-area: auto !important;
        display: flex !important;
        min-width: 0 !important;
        width: 100% !important;
    }
}

/* Premium Boutique filter header: white/red, subtle glow and depth. */
.jthwe-filter-bar-native {
    position: relative !important;
    border: 1px solid #efcaca !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(230,0,0,.10), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #fffafa 52%, #fff0f0 100%) !important;
    box-shadow: 0 10px 30px rgba(110,0,0,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.jthwe-filter-bar-native:after {
    content: "" !important;
    position: absolute !important;
    left: 22px !important;
    right: 22px !important;
    bottom: 0 !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, transparent, #e00000 18%, #ff4a4a 50%, #e00000 82%, transparent) !important;
    opacity: .8 !important;
    pointer-events: none !important;
}
.jthwe-filter-bar-native .jthwe-filter-field input:focus,
.jthwe-filter-bar-native .jthwe-filter-field select:focus {
    border-color: #e00000 !important;
    box-shadow: 0 0 0 3px rgba(224,0,0,.08) !important;
}
.jthwe-filter-bar-native > button {
    background: linear-gradient(135deg, #ef1a1a 0%, #b00000 100%) !important;
    box-shadow: 0 7px 16px rgba(176,0,0,.22) !important;
}

/* v2.4.20: kache views sou ti kat yo (menm si yon paj nan cache toujou gen li) */
.jthwe-card-views{display:none!important}
