/* --------------------------------------------------------------------------
 * GRZ Gaming — premium solid purchase identity and PayPal rail placement.
 *
 * This layer changes only action/price presentation and the express-payment
 * destination. Product selection, validation, quantity and form geometry stay
 * owned by the existing WooCommerce-compatible layers.
 * ----------------------------------------------------------------------- */

body.single-product.grz-product-design .grz-tp-rail {
	--grz-rail-buy: var(--grz-product-buy, #0b6e5b);
	--grz-rail-buy-dark: var(--grz-product-buy-dark, #075044);
	--grz-rail-buy-rgb: var(--grz-product-buy-rgb, 11, 110, 91);
	--grz-rail-cart: var(--grz-product-cart, #15304e);
	--grz-rail-cart-dark: var(--grz-product-cart-dark, #0d2138);
	--grz-rail-cart-rgb: var(--grz-product-cart-rgb, 21, 48, 78);
	--grz-rail-total: var(--grz-product-total, #10233f);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-total__now,
body.single-product.grz-product-design .grz-tp-rail .grz-tp-total__now .amount,
body.single-product.grz-product-design .grz-tp-rail .grz-tp-total__now bdi {
	color: var(--grz-rail-total);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary button.grz-tp-add-cart-secondary {
	border-color: var(--grz-rail-cart);
	background: var(--grz-rail-cart);
	color: #fff;
	box-shadow: 0 10px 20px rgba(var(--grz-rail-cart-rgb), .22);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary button.grz-tp-add-cart-secondary:hover:not(:disabled):not(.disabled) {
	border-color: var(--grz-rail-cart-dark);
	background: var(--grz-rail-cart-dark);
	color: #fff;
	box-shadow: 0 13px 24px rgba(var(--grz-rail-cart-rgb), .3);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary button.grz-tp-add-cart-secondary:focus-visible {
	outline: 3px solid rgba(var(--grz-rail-cart-rgb), .28);
	outline-offset: 2px;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary .grz-tp-add-cart-secondary__icon {
	width: 21px;
	height: 21px;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary .grz-tp-add-cart-secondary__icon svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 2.15;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary .single_add_to_cart_button,
body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary button.single_add_to_cart_button.button.alt {
	border-color: var(--grz-rail-buy-dark);
	background: var(--grz-rail-buy);
	color: #fff;
	box-shadow: 0 12px 24px rgba(var(--grz-rail-buy-rgb), .25);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary .single_add_to_cart_button:hover:not(:disabled):not(.disabled),
body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary button.single_add_to_cart_button.button.alt:hover:not(:disabled):not(.disabled) {
	border-color: var(--grz-rail-buy-dark);
	background: var(--grz-rail-buy-dark);
	filter: none;
	box-shadow: 0 14px 28px rgba(var(--grz-rail-buy-rgb), .32);
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary .single_add_to_cart_button:focus-visible {
	outline: 3px solid rgba(var(--grz-rail-buy-rgb), .28);
	outline-offset: 2px;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary :is(
	button.grz-tp-add-cart-secondary,
	.single_add_to_cart_button
):is(.disabled, .wc-variation-selection-needed, .wc-variation-is-unavailable),
body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary :is(
	button.grz-tp-add-cart-secondary,
	.single_add_to_cart_button
):disabled {
	opacity: .46;
	filter: saturate(.32);
	box-shadow: none;
	cursor: not-allowed;
	transform: none;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot:not(:empty) {
	display: block !important;
	align-self: stretch;
	width: auto !important;
	max-width: none !important;
	margin: -5px 16px 16px !important;
	padding: 0 !important;
	box-sizing: border-box;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot :is(
	.ppc-button-wrapper,
	.ppcp-messages,
	[id^="ppc-button-"]
) {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	box-sizing: border-box;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot .ppc-button-wrapper {
	margin-block: 0 !important;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot .ppcp-messages:not(:empty) {
	margin-bottom: 9px !important;
}

body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot iframe {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
}

@media (max-width: 600px) {
	body.single-product.grz-product-design .grz-tp-rail .grz-tp-express-slot:not(:empty) {
		margin: -4px 16px 16px !important;
	}
}

@media (forced-colors: active) {
	body.single-product.grz-product-design .grz-tp-rail .grz-tp-card--summary :is(
		button.grz-tp-add-cart-secondary,
		.single_add_to_cart_button
	) {
		border-color: ButtonText;
	}
}
