/* GC Product Options - "Clean & minimal" look for single product pages.
 * Loads after the theme's product.css and overrides it. To switch back to the old look,
 * remove the 'gcpo-minimal' enqueue in gc-product-options.php (or delete this file).
 */

/* ---- palette: white, soft grey lines, near-black ink, no brand colour ---- */
.single-product {
	--brand: #111827;
	--brand-2: #111827;
	--brand-3: #6b7280;
	--ink: #111827;
	--muted: #6b7280;
	--line: #e5e7eb;
	--surface: #ffffff;
	--tint: #f4f4f5;
	--gcpo-accent: #111827;
	--gcpo-border: #e5e7eb;
	--gcpo-text: #111827;
}
body.single-product,
.single-product #main-container,
.single-product .ct-container-full,
.single-product .elementor-page { background: #ffffff !important; }

.single-product div.product { margin: 24px auto 40px; }

/* ---- gallery card: flat, hairline border, no shadow ---- */
.single-product .elementor-element-9e9fbd8 {
	border: 1px solid #ececec !important;
	border-radius: 12px !important;
	padding: 20px !important;
	box-shadow: none !important;
	background: #fff !important;
}
.single-product .elementor-element-9e9fbd8:hover { box-shadow: none !important; }

.single-product #wpgs-gallery .wcgs-carousel,
.single-product .woocommerce-product-gallery,
.single-product .images {
	border: 0 !important;
	border-radius: 8px !important;
	background: #fff !important;
}
.single-product #wpgs-gallery .wcgs-thumb img,
.single-product .flex-control-thumbs li img {
	border: 1px solid #ececec !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	opacity: .75 !important;
}
.single-product #wpgs-gallery .wcgs-thumb:hover img,
.single-product .flex-control-thumbs li img:hover { transform: none !important; box-shadow: none !important; opacity: 1 !important; border-color: #cfcfcf !important; }
.single-product #wpgs-gallery .wcgs-thumb.spswiper-slide-thumb-active img,
.single-product .flex-control-thumbs li img.flex-active { border-color: #111827 !important; box-shadow: none !important; transform: none !important; opacity: 1 !important; }

/* ---- title ---- */
.single-product .product_title,
.single-product h1.product_title,
.single-product .product_title.entry-title {
	font-size: 26px !important;
	font-weight: 700 !important;
	letter-spacing: -.3px !important;
	line-height: 1.3 !important;
	color: #111827 !important;
}

/* ---- likes pill + price ---- */
.single-product .post-views.content-post,
.single-product .post-views.pvc-container {
	background: transparent !important;
	border: 1px solid #e5e7eb !important;
	padding: 5px 12px;
	font-weight: 500;
}
.single-product .post-views-icon { color: #9ca3af; }
.single-product .post-views-count { font-weight: 600; }

.single-product .elementor-widget-woocommerce-product-price > .elementor-widget-container > .price,
.single-product .elementor-widget-woocommerce-product-price .price > .woocommerce-Price-amount.amount,
.single-product .elementor-widget-woocommerce-product-price ins,
.single-product .elementor-widget-woocommerce-product-price ins .woocommerce-Price-amount {
	font-weight: 700;
	color: #111827 !important;
	letter-spacing: -.3px;
}
.single-product .elementor-widget-woocommerce-product-price .woocommerce-Price-currencySymbol { color: inherit !important; }
.single-product .elementor-widget-woocommerce-product-price del,
.single-product .elementor-widget-woocommerce-product-price del .woocommerce-Price-amount { color: #9ca3af !important; font-weight: 400 !important; }

/* ---- wishlist "Like" ---- */
.single-product .yith-wcwl-add-to-wishlist .add_to_wishlist {
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	box-shadow: none !important;
	font-weight: 500 !important;
	color: #4b5563 !important;
}
.single-product .yith-wcwl-add-to-wishlist .add_to_wishlist:hover { background: #fafafa !important; border-color: #d1d5db !important; color: #111827 !important; transform: none !important; box-shadow: none !important; }

/* ---- our options box ---- */
.gcpo-group { border-radius: 12px; box-shadow: none; padding: 16px; background: #fff; }
.gcpo-title { font-size: 11px; font-weight: 600; letter-spacing: .1em; color: #6b7280; }
.gcpo-title::before { display: none; }
.gcpo-select-wrap { border-radius: 10px; }
.gcpo-select {
	font-weight: 500;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.gcpo-row { border-radius: 10px; }
.gcpo-row:hover { border-color: #d1d5db; }
.gcpo-row:has(input:checked) { border-color: #111827; background: #fafafa; }
.gcpo-label { font-weight: 500; }
.gcpo-price { font-weight: 600; color: #111827; }
.gcpo-tip { background: #f3f4f6; color: #6b7280; }
.gcpo-total { padding: 4px 2px; }
.gcpo-total strong { color: #111827; font-size: 20px; }

/* ---- purchase button: solid, flat ---- */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.single-product .summary .button[type="submit"],
.single-product a.button.purchase {
	background: #111827 !important;
	background-image: none !important;
	box-shadow: none !important;
	border-radius: 10px !important;
	height: 52px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
.single-product .single_add_to_cart_button:hover,
.single-product button.single_add_to_cart_button:hover,
.single-product a.button.purchase:hover { background: #000 !important; box-shadow: none !important; transform: none !important; }

/* ---- tabs + headings ---- */
.single-product .woocommerce-tabs .wc-tabs li a,
.single-product .elementor-widget-woocommerce-product-data-tabs .wc-tabs li a { color: #6b7280 !important; font-weight: 600 !important; }
.single-product .woocommerce-tabs .wc-tabs li.active a,
.single-product .elementor-widget-woocommerce-product-data-tabs .wc-tabs li.active a { color: #111827 !important; border-color: #111827 !important; }
.single-product .woocommerce-tabs .wc-tabs li.active a::after { background: #111827 !important; }
.single-product .related.products > h2,
.single-product .upsells.products > h2 { font-weight: 700; }

/* ---- sidebar: no stretched empty space, sticky on desktop ---- */
.single-product .elementor-element-00ee485 {
	align-self: flex-start !important;
	height: auto !important;
	min-height: 0 !important;
	border: 1px solid #ececec !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	background: #fff !important;
}
@media (min-width: 1025px) {
	.single-product .elementor-element-00ee485 { position: sticky !important; top: 100px !important; }
}

/* ---- description tabs: left aligned, underline style, readable width ---- */
.single-product .elementor-element-42c15ab { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
.single-product .woocommerce-tabs { margin: 0 !important; max-width: 780px; }
.single-product .woocommerce-tabs .wc-tabs {
	justify-content: flex-start !important;
	border-bottom: 1px solid #e5e7eb !important;
	gap: 24px !important;
	padding: 0 !important;
	margin: 0 0 24px !important;
	background: none !important;
}
.single-product .woocommerce-tabs .wc-tabs li { background: none !important; border: 0 !important; margin: 0 !important; padding: 0 !important; }
.single-product .woocommerce-tabs .wc-tabs li a {
	padding: 12px 2px !important;
	font-size: 14px !important;
	background: none !important;
	border: 0 !important;
	border-bottom: 2px solid transparent !important;
	border-radius: 0 !important;
	text-transform: none !important;
}
.single-product .woocommerce-tabs .wc-tabs li.active a { border-bottom-color: #111827 !important; }
.single-product .woocommerce-tabs .wc-tabs li::before,
.single-product .woocommerce-tabs .wc-tabs li::after,
.single-product .woocommerce-tabs .wc-tabs::before { display: none !important; }

.single-product .woocommerce-Tabs-panel {
	max-width: 780px;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 16px;
	line-height: 1.75;
	color: #374151;
}
.single-product .woocommerce-Tabs-panel p { margin: 0 0 1em; }
.single-product .woocommerce-Tabs-panel ul { padding-left: 1.2em; margin: 0 0 1.2em; }
.single-product .woocommerce-Tabs-panel li { margin: .25em 0; }
.single-product .woocommerce-Tabs-panel .e-con { justify-content: flex-start !important; }

/* Download APK / Watch Video buttons: outline instead of green / red */
.single-product .woocommerce-Tabs-panel .elementor-widget-button .elementor-button,
.single-product .woocommerce-Tabs-panel a.elementor-button {
	background: #fff !important;
	color: #111827 !important;
	border: 1px solid #d1d5db !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	padding: 10px 18px !important;
	font-weight: 500 !important;
}
.single-product .woocommerce-Tabs-panel .elementor-widget-button .elementor-button:hover { background: #f9fafb !important; border-color: #9ca3af !important; }
.single-product .woocommerce-Tabs-panel .elementor-widget-button .elementor-button * { color: inherit !important; fill: currentColor !important; }

/* ---- related products: flat cards, left aligned ---- */
.single-product .elementor-widget-woocommerce-product-related h2,
.single-product .related.products > h2 { font-size: 20px !important; font-weight: 700 !important; letter-spacing: -.2px; margin-bottom: 16px !important; }
.single-product .elementor-widget-woocommerce-product-related ul.products { gap: 20px !important; }
.single-product .elementor-widget-woocommerce-product-related li.product {
	display: flex !important;
	flex-direction: column !important;
	background: #fff !important;
	border: 1px solid #ececec !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	overflow: hidden !important;
	text-align: left !important;
	transition: border-color .15s !important;
}
.single-product .elementor-widget-woocommerce-product-related li.product:hover { border-color: #d1d5db !important; box-shadow: none !important; transform: none !important; }
.single-product .elementor-widget-woocommerce-product-related li.product figure { margin: 0 !important; }
.single-product .elementor-widget-woocommerce-product-related li.product img { border-radius: 0 !important; transform: none !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .woocommerce-loop-product__title {
	font-size: 15px !important; font-weight: 600 !important; line-height: 1.4 !important;
	text-align: left !important; margin: 14px 16px 4px !important; padding: 0 !important;
}
.single-product .elementor-widget-woocommerce-product-related li.product .woocommerce-loop-product__title a { color: #111827 !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta {
	text-align: left !important; justify-content: flex-start !important;
	margin: 0 16px 12px !important; padding: 0 !important; border: 0 !important;
	font-size: 11px !important; color: #9ca3af !important;
}
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta li,
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta .meta-categories { justify-content: flex-start !important; text-align: left !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta a { color: #9ca3af !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions {
	margin-top: auto !important; display: flex !important; align-items: center !important;
	justify-content: space-between !important; gap: 10px !important;
	padding: 12px 16px 16px !important; border: 0 !important; border-top: 1px solid #f1f1f1 !important;
}
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions > * { border: 0 !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .price { font-weight: 700 !important; color: #111827 !important; font-size: 15px !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .price del { color: #9ca3af !important; font-weight: 400 !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions a.button {
	background: #111827 !important; color: #fff !important; border: 0 !important; border-radius: 8px !important;
	padding: 8px 14px !important; font-size: 13px !important; font-weight: 600 !important;
	height: auto !important; min-height: 0 !important; line-height: 1.2 !important; box-shadow: none !important;
}
.single-product .elementor-widget-woocommerce-product-related li.product .onsale,
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-badge { background: #111827 !important; color: #fff !important; border-radius: 6px !important; }

/* ---- related cards: keep everything left aligned, no extra height ---- */
.single-product .elementor-widget-woocommerce-product-related li.product { align-items: stretch !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta { align-self: stretch !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta li { display: block !important; margin: 0 !important; padding: 0 !important; text-align: left !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .woocommerce-loop-product__title,
.single-product .elementor-widget-woocommerce-product-related li.product .entry-meta { margin-left: 16px !important; margin-right: 16px !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions .price { min-height: 0 !important; }
.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions .screen-reader-text { display: none !important; }

/* ---- description: spacing under tabs, buttons aligned with the text ---- */
.single-product .woocommerce-Tabs-panel { border-top: 0 !important; }
.single-product .woocommerce-Tabs-panel .elementor-element-289cd938,
.single-product .woocommerce-Tabs-panel .e-con-full:has(.elementor-widget-button) {
	padding: 4px 0 20px !important;
	margin: 0 !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}
.single-product .woocommerce-Tabs-panel .elementor-widget-wrap.elementor-element-populated { padding: 0 !important; }
.single-product .woocommerce-Tabs-panel .e-con { padding-left: 0 !important; padding-right: 0 !important; }
.single-product .woocommerce-Tabs-panel .e-con > .e-con-inner { padding-left: 0 !important; padding-right: 0 !important; }

.single-product .elementor-widget-woocommerce-product-related li.product .ct-woo-card-actions .price::after { display: none !important; }
