/* =====================================================================
   CSK ARENA — SINGLE PRODUCT PAGE (PDP)
   Loaded only on is_product(). Uses the theme's existing :root
   variables from style.css (--csk-yellow, --csk-black, --csk-radius…)
   so colours/fonts always stay 100% in sync with the rest of the site.
===================================================================== */

.csk-woo-wrap{padding-top:22px;}

/* ---------- kill WooCommerce's legacy float layout ----------
   WooCommerce core CSS still ships a very old rule:
   ".woocommerce div.product div.images, .woocommerce div.product div.summary{width:48%;float:left}"
   Both our gallery wrapper (legacy class "images") and our
   .summary div match that selector, which breaks our grid.
   These overrides neutralise it everywhere on the product page. */
.csk-pdp .woocommerce-product-gallery,
.csk-pdp .images,
.csk-pdp .summary,
.csk-pdp .entry-summary{
	float:none!important;
	width:100%!important;
	margin:0!important;
}

/* ---------- breadcrumb tidy-up ---------- */
.woocommerce-breadcrumb{font-size:13px;color:var(--csk-gray);margin-bottom:18px;}
.woocommerce-breadcrumb a{color:var(--csk-gray);}
.woocommerce-breadcrumb a:hover{color:var(--csk-yellow-dark);}

/* ---------- hide the leftover blog sidebar on the product page ---------- */
body.single-product #secondary,
body.single-product .widget-area,
body.single-product aside.sidebar,
body.single-product .csk-page-sidebar{display:none!important;}

/* ---------- 2-column grid ---------- */
.csk-pdp-grid{
	display:grid!important;
	grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);
	gap:48px;
	align-items:start;
}
.csk-pdp-gallery-sticky{position:sticky;top:92px;}
/* summary column is tall now (banner + dropdowns) so it must scroll normally */
.csk-pdp-summary-sticky{position:static;}

/* =====================================================================
   GALLERY
===================================================================== */
.csk-pdp-gallery-col .woocommerce-product-gallery{
	display:flex!important;
	flex-direction:row-reverse;
	gap:14px;
}
.csk-pdp-gallery-col .woocommerce-product-gallery .flex-viewport{
	flex:1;
	min-width:0;
	border-radius:14px;
	overflow:hidden;
	background:var(--csk-light);
	border:1px solid var(--csk-border);
}
.csk-pdp-gallery-col .woocommerce-product-gallery img{
	width:100%;
	height:auto;
	object-fit:cover;
	aspect-ratio:1/1;
}

.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs{
	list-style:none;
	margin:0!important;
	padding:0!important;
	display:flex!important;
	flex-direction:column;
	gap:10px;
	width:76px;
	flex-shrink:0;
}
.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs li{
	margin:0!important;
	padding:0!important;
	width:76px!important;
	height:76px!important;
	float:none!important;
	list-style:none!important;
}
.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs img{
	width:76px!important;
	height:76px!important;
	max-width:76px!important;
	object-fit:cover;
	border-radius:10px;
	border:2px solid var(--csk-border);
	cursor:pointer;
	opacity:.75;
	transition:all .15s ease;
	display:block!important;
}
.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs img:hover{opacity:1;}
.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs img.flex-active{
	opacity:1;
	border-color:var(--csk-yellow);
}
.csk-pdp-gallery-col .woocommerce-product-gallery__trigger{
	background:var(--csk-white);
	border-radius:50%;
	width:34px;height:34px;
	display:flex;align-items:center;justify-content:center;
	top:14px;right:14px;
	box-shadow:0 2px 8px rgba(0,0,0,.12);
}
.csk-pdp-gallery-col span.onsale{
	position:absolute;top:14px;left:14px;
	background:var(--csk-yellow);color:var(--csk-black);
	font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.4px;
	border-radius:6px;padding:5px 10px;
	min-height:0;min-width:0;line-height:1;
}

/* =====================================================================
   SUMMARY
===================================================================== */
.csk-pdp-eyebrow{
	display:inline-flex;align-items:center;gap:6px;
	font-size:12px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;
	color:var(--csk-yellow-dark);
	margin-bottom:8px;
}
.csk-pdp-eyebrow a{color:inherit;}

.csk-pdp .product_title{
	font-size:28px;
	font-weight:700;
	line-height:1.25;
	margin:0 0 10px;
	color:var(--csk-black);
}

.csk-pdp .woocommerce-product-rating{
	display:flex;align-items:center;gap:8px;margin-bottom:16px;
}
.csk-pdp .star-rating{font-size:14px;}
.csk-pdp .woocommerce-review-link{font-size:13px;color:var(--csk-gray);}

.csk-pdp .price{
	font-size:26px;
	font-weight:800;
	color:var(--csk-black);
	display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
	margin-bottom:6px;
}
.csk-pdp .price del{
	font-size:16px;font-weight:400;color:#a8a8a8;
	text-decoration:line-through;order:2;
}
.csk-pdp .price ins{text-decoration:none;color:var(--csk-black);order:1;}
.csk-pdp-save-badge{
	order:3;
	background:#e9f8ee;color:#1f9d55;
	font-size:12.5px;font-weight:700;
	padding:4px 10px;border-radius:6px;
}
.csk-pdp-tax-note{font-size:12.5px;color:var(--csk-gray);margin:0 0 20px;}

.csk-pdp .woocommerce-product-details__short-description{
	font-size:14.5px;line-height:1.7;color:#4a4a4a;
	margin:0 0 22px;padding-bottom:22px;
	border-bottom:1px solid var(--csk-border);
}
.csk-pdp .woocommerce-product-details__short-description ul{
	list-style:none;margin:10px 0 0;padding:0;
}
.csk-pdp .woocommerce-product-details__short-description ul li{
	position:relative;padding-left:22px;margin-bottom:8px;
}
.csk-pdp .woocommerce-product-details__short-description ul li::before{
	content:"";position:absolute;left:0;top:7px;width:8px;height:8px;
	border-radius:50%;background:var(--csk-yellow);
}

/* ---------- sale banner (under price) ---------- */
.csk-pdp-sale-banner{margin:14px 0 20px;border-radius:14px;overflow:hidden;line-height:0;border:1px solid var(--csk-border);}
.csk-pdp-sale-banner img{display:block;width:100%;height:auto;}

/* ---------- variations / add to cart ---------- */
.csk-pdp table.variations{width:100%;margin-bottom:16px;}
.csk-pdp table.variations tr{display:block;margin-bottom:14px;}
.csk-pdp table.variations td,
.csk-pdp table.variations th{display:block;padding:0;border:0;text-align:left;}
.csk-pdp table.variations label{
	font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.3px;
	display:block;margin-bottom:8px;
}
.csk-pdp table.variations select{
	width:100%;padding:12px 14px;border-radius:10px;
	border:1.5px solid var(--csk-border);font-family:'Poppins',Arial,sans-serif;
	font-size:14px;background:var(--csk-white);
}
.csk-pdp .reset_variations{font-size:12.5px;color:var(--csk-gray);margin-left:10px;}
.csk-pdp .woocommerce-variation-price .price{font-size:22px;}

.csk-pdp form.cart{
	display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin-bottom:22px;
}
.csk-pdp .quantity{margin:0;}
.csk-pdp .quantity .qty{
	width:74px;height:52px;text-align:center;
	border:1.5px solid var(--csk-black);border-radius:999px;
	font-family:'Poppins',Arial,sans-serif;font-weight:700;font-size:15px;
}
.csk-pdp button.single_add_to_cart_button{
	flex:1;min-width:200px;height:52px;
	background:var(--csk-black)!important;color:var(--csk-white)!important;
	border-radius:999px!important;border:2px solid var(--csk-black)!important;
	font-weight:700!important;text-transform:uppercase;letter-spacing:.4px;
	font-size:14px!important;padding:0 20px!important;
	display:flex;align-items:center;justify-content:center;gap:8px;
	transition:all .18s ease;
}
.csk-pdp button.single_add_to_cart_button:hover{
	background:var(--csk-yellow)!important;border-color:var(--csk-yellow)!important;color:var(--csk-black)!important;
}
.csk-pdp .stock{font-size:13px;font-weight:600;margin:0 0 16px;}
.csk-pdp .stock.in-stock{color:#1f9d55;}
.csk-pdp .stock.out-of-stock{color:#d23c3c;}

.csk-pdp .product_meta{
	font-size:13px;color:var(--csk-gray);
	padding-top:16px;border-top:1px solid var(--csk-border);
}
.csk-pdp .product_meta > span{display:block;margin-bottom:4px;}
.csk-pdp .product_meta a{color:var(--csk-black);font-weight:600;}

/* ---------- trust / USP row (added via functions.php hook) ---------- */
.csk-pdp-trust-row{
	display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
	margin:0 0 22px;
}
.csk-pdp-trust-item{
	display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;
	padding:14px 8px;border:1px solid var(--csk-border);border-radius:12px;
	background:var(--csk-light);
}
.csk-pdp-trust-item svg{width:22px;height:22px;stroke:var(--csk-black);flex-shrink:0;}
.csk-pdp-trust-item span{font-size:11.5px;font-weight:600;color:var(--csk-black);line-height:1.3;}

/* =====================================================================
   TABS -> ACCORDION
===================================================================== */
.csk-pdp-below{margin-top:56px;}
.woocommerce-tabs{max-width:100%;margin-top:26px;}
.csk-pdp-summary-col .woocommerce-tabs{clear:both;}
.woocommerce-tabs ul.tabs{display:none;} /* native tab nav hidden — JS builds accordion headers */
.woocommerce-tabs .panel > h2:first-child{display:none;}

.csk-acc-item{border-bottom:1px solid var(--csk-border);}
.csk-acc-item:first-child{border-top:1px solid var(--csk-border);}
.csk-acc-toggle{
	width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
	background:none;border:0;cursor:pointer;
	padding:18px 4px;font-family:'Poppins',Arial,sans-serif;
	font-size:15px;font-weight:700;color:var(--csk-black);text-align:left;
}
.csk-acc-toggle .csk-acc-plus{
	flex-shrink:0;width:22px;height:22px;position:relative;
}
.csk-acc-toggle .csk-acc-plus::before,
.csk-acc-toggle .csk-acc-plus::after{
	content:"";position:absolute;background:var(--csk-black);
	transition:transform .2s ease;
}
.csk-acc-toggle .csk-acc-plus::before{left:0;top:50%;width:100%;height:2px;margin-top:-1px;}
.csk-acc-toggle .csk-acc-plus::after{top:0;left:50%;width:2px;height:100%;margin-left:-1px;}
.csk-acc-item.is-open .csk-acc-toggle .csk-acc-plus::after{transform:rotate(90deg);opacity:0;}
.csk-acc-item.is-open .csk-acc-toggle{color:var(--csk-yellow-dark);}

.woocommerce-tabs .panel{
	padding:0 4px 22px;font-size:14.5px;line-height:1.75;color:#4a4a4a;
	display:none!important;
}
.csk-acc-item.is-open .panel{display:block!important;}
.woocommerce-tabs .panel h2{font-size:17px;margin:0 0 10px;color:var(--csk-black);}
.woocommerce-tabs .panel img{border-radius:10px;max-width:100%;height:auto;}
.woocommerce-tabs .panel{overflow-wrap:anywhere;}
.woocommerce-tabs .panel table{display:block;overflow-x:auto;max-width:100%;}

/* reviews list inside accordion */
#reviews #comments ol.commentlist{list-style:none;margin:0;padding:0;}
#reviews #comments li{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--csk-border);}
#reviews .comment-form-rating select{padding:8px;border-radius:8px;border:1px solid var(--csk-border);}
#reviews .comment-form input,
#reviews .comment-form textarea{
	width:100%;padding:11px 14px;border-radius:8px;border:1.5px solid var(--csk-border);
	font-family:'Poppins',Arial,sans-serif;margin-bottom:12px;
}
#reviews #respond input#submit{margin-top:6px;}

/* related products heading */
.csk-pdp-below .related.products{margin-top:60px;}
.csk-pdp-below .related.products > h2{
	font-size:22px;font-weight:700;margin-bottom:20px;
}

/* =====================================================================
   STICKY MOBILE ADD-TO-CART BAR
===================================================================== */
.csk-pdp-sticky-bar{
	position:fixed;left:0;right:0;bottom:0;z-index:998;
	background:var(--csk-white);border-top:1px solid var(--csk-border);
	box-shadow:0 -4px 18px rgba(0,0,0,.08);
	padding:10px 16px;
	display:none;align-items:center;justify-content:space-between;gap:14px;
	transform:translateY(100%);transition:transform .25s ease;
}
.csk-pdp-sticky-bar.is-visible{transform:translateY(0);}
.csk-pdp-sticky-bar-price{font-weight:800;font-size:16px;color:var(--csk-black);}
.csk-pdp-sticky-bar-price del{font-weight:400;font-size:12px;color:#a8a8a8;margin-right:6px;}
.csk-pdp-sticky-bar-btn{
	background:var(--csk-black);color:var(--csk-white);
	border:2px solid var(--csk-black);border-radius:999px;
	font-weight:700;text-transform:uppercase;font-size:12.5px;letter-spacing:.3px;
	padding:12px 22px;cursor:pointer;
}
.csk-pdp-sticky-bar-btn:hover{background:var(--csk-yellow);border-color:var(--csk-yellow);color:var(--csk-black);}

/* =====================================================================
   RESPONSIVE
===================================================================== */
/* Grid children must be allowed to shrink — otherwise flexslider's very
   wide slide track (N × 100%) becomes the column's min-content width and
   the whole gallery blows out past the screen on mobile. */
.csk-pdp-gallery-col,
.csk-pdp-summary-col{min-width:0;}
.csk-pdp{overflow-x:clip;}

/* jQuery-zoom overlay image must keep its own size, never our 1:1 rule */
.csk-pdp-gallery-col .woocommerce-product-gallery img.zoomImg{
	aspect-ratio:auto!important;max-width:none!important;width:auto;
}
/* main slide images: show the whole product, never crop it */
.csk-pdp-gallery-col .woocommerce-product-gallery__image img:not(.zoomImg){
	object-fit:contain;background:var(--csk-light);
}

/* sticky-bar price: no underline on the sale price */
.csk-pdp-sticky-bar-price ins{text-decoration:none;}
.csk-pdp-sticky-bar-price{white-space:nowrap;}

@media (max-width:1024px){
	.csk-pdp-grid{grid-template-columns:minmax(0,1fr);gap:22px;}
	.csk-pdp-gallery-sticky,
	.csk-pdp-summary-sticky{position:static;}
	/* SALE badge anchors to the gallery, not to some far-up ancestor */
	.csk-pdp-gallery-sticky{position:relative;top:auto;}

	/* image on top, thumbnails underneath (standard mobile pattern) */
	.csk-pdp-gallery-col .woocommerce-product-gallery{flex-direction:column;gap:10px;}
	.csk-pdp-gallery-col .woocommerce-product-gallery .flex-viewport{
		flex:none;width:100%;max-width:560px;margin:0 auto;
	}
	.csk-pdp-gallery-col .woocommerce-product-gallery__image img:not(.zoomImg){
		max-height:min(70vh,560px);
	}
	.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs{
		flex-direction:row;width:100%;max-width:560px;margin:0 auto!important;
		overflow-x:auto;overflow-y:hidden;gap:8px;
		padding:2px!important;
		scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
	}
	.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs::-webkit-scrollbar{display:none;}
	.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs li{
		width:60px!important;height:60px!important;flex:0 0 60px;scroll-snap-align:start;
	}
	.csk-pdp-gallery-col .flex-control-nav.flex-control-thumbs img{
		width:60px!important;height:60px!important;max-width:60px!important;border-radius:8px;
	}
	.csk-pdp-gallery-col span.onsale{top:10px;left:10px;z-index:3;font-size:10px;padding:5px 8px;}
	.csk-pdp-gallery-col .woocommerce-product-gallery__trigger{top:10px;right:10px;z-index:3;}

	/* long breadcrumb: single tidy line instead of 3 wrapped lines */
	body.single-product .woocommerce-breadcrumb{
		font-size:12px!important;line-height:1.4;margin-bottom:14px;
		white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
	}

	/* sticky bar on all touch/tablet widths, page end not hidden behind it */
	.csk-pdp-sticky-bar{display:flex;}
	body.single-product{padding-bottom:calc(var(--csk-bn-h,0px) + 72px + env(safe-area-inset-bottom,0px));}
}

/* hover-zoom is meaningless on touch and makes the image jump/enlarge
   while scrolling — keep the lightbox (magnifier) button instead */
@media (hover:none),(max-width:1024px){
	.csk-pdp-gallery-col .woocommerce-product-gallery img.zoomImg{display:none!important;}
}

@media (max-width:640px){
	.csk-woo-wrap{padding-top:14px;}
	.csk-pdp-gallery-col .woocommerce-product-gallery .flex-viewport{border-radius:12px;}
	.csk-pdp-gallery-col .woocommerce-product-gallery__image img:not(.zoomImg){max-height:62vh;}
	.csk-pdp .product_title{font-size:20px;line-height:1.3;}
	.csk-pdp .price{font-size:22px;}
	.csk-pdp-trust-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
	.csk-pdp-trust-item{padding:12px 6px;min-width:0;}
	.csk-pdp-trust-item span{font-size:11px;}
	.csk-pdp form.cart{margin-bottom:18px;}
	.csk-pdp button.single_add_to_cart_button{min-width:0;}
	.csk-pdp-sticky-bar{padding:10px 14px;gap:10px;}
	.csk-pdp-sticky-bar-price{font-size:15px;}
	.csk-pdp-sticky-bar-btn{padding:12px 18px;flex-shrink:0;}
	.csk-pdp-device{padding:14px;}
}

/* ---------- Brand / Model selector (Rezoni style) ---------- */
.csk-pdp-device{background:var(--csk-light);border:1px solid var(--csk-border);border-radius:14px;padding:16px 18px 18px;margin:0 0 18px;}
.csk-pdp-device-label{display:block;font-weight:700;font-size:14px;color:var(--csk-black);margin:0 0 8px;}
.csk-pdp-device-label:not(:first-child){margin-top:14px;}
.csk-pdp-select-wrap{position:relative;}
.csk-pdp-select-wrap::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border-right:2px solid var(--csk-black);border-bottom:2px solid var(--csk-black);transform:translateY(-70%) rotate(45deg);pointer-events:none;}
.csk-pdp-select{width:100%;height:48px;padding:0 40px 0 16px;border:1px solid var(--csk-border);border-radius:10px;background:var(--csk-white);color:var(--csk-black);font:inherit;font-size:15px;appearance:none;-webkit-appearance:none;cursor:pointer;outline:0;}
.csk-pdp-select:focus{border-color:var(--csk-yellow);box-shadow:0 0 0 3px rgba(249,178,51,.25);}
.csk-pdp-select:disabled{opacity:.6;cursor:not-allowed;}
.csk-pdp-device.is-loading{opacity:.6;pointer-events:none;}
.csk-pdp-device-msg{margin:8px 0 0;font-size:13px;color:var(--csk-gray);min-height:0;}
.csk-pdp-device-msg:empty{display:none;}
