/* --------------------------------------------------------------------------
 * GRZ Gaming — focused purchase rail (v1.9.7)
 *
 * Scope is intentionally limited to the right purchase rail. Package Step 1,
 * hero composition and the page grid are not changed by this layer.
 * ----------------------------------------------------------------------- */

body.single-product.grz-product-immersive .grz-tp-rail {
	--grz-rail-ink: #10203a;
	--grz-rail-muted: #65748c;
	--grz-rail-line: #dce4ef;
	--grz-rail-soft: #f6f9fd;
	gap: 12px;
}

body.single-product.grz-product-immersive .grz-tp-rail > .grz-tp-card {
	border: 1px solid var(--grz-rail-line);
	border-radius: var(--grz-product-card-radius-setting, 8px);
	background: #fff;
	box-shadow: 0 14px 34px rgba(10, 29, 57, .12);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card__head {
	min-height: 58px;
	padding: 14px 16px;
	border-bottom: 1px solid var(--grz-rail-line);
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-step {
	width: 28px;
	height: 28px;
	min-width: 28px;
	font-size: 12px;
	box-shadow: 0 7px 18px rgba(var(--grz-tp-accent-rgb, 7, 98, 230), .2);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card__title {
	color: var(--grz-rail-ink);
	font-size: 13px;
	font-weight: 800;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card__sub {
	margin-top: 2px;
	color: var(--grz-rail-muted);
	font-size: 10px;
}

/* Conditional player-account step. It remains absent for products that do
 * not request a native account field or an external validator. */
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--account > .grz-tp-card__body,
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--validator > .grz-tp-validator-body {
	padding: 14px 16px 16px;
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-field-label,
body.single-product.grz-product-immersive .grz-tp-rail .grz-caller-label {
	color: #52627a;
	font-size: 11px;
	font-weight: 750;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-player-input {
	min-height: 48px;
	border: 1px solid #aebbd0;
	border-radius: var(--grz-product-control-radius-setting, 6px);
	background: #fff;
	box-shadow: none;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-player-input:focus {
	border-color: var(--grz-tp-accent, #0762e6);
	box-shadow: 0 0 0 3px rgba(var(--grz-tp-accent-rgb, 7, 98, 230), .12);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-player-help {
	margin-top: 7px;
	color: var(--grz-rail-muted);
	font-size: 10px;
	line-height: 1.4;
}

/* Summary: the selected package remains an internal row. No standalone
 * desktop package card is introduced before Step 2/3. */
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary {
	overflow: clip;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .grz-tp-card__body {
	padding: 0;
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-list {
	gap: 0;
	padding: 6px 16px;
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row {
	display: grid;
	grid-template-columns: minmax(92px, .8fr) minmax(0, 1.2fr);
	align-items: center;
	min-height: 43px;
	padding: 9px 0;
	border-bottom: 1px solid #e7ecf3;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row[hidden] {
	display: none !important;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row dt {
	color: var(--grz-rail-muted);
	font-size: 10.5px;
	font-weight: 700;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row dd {
	max-width: none;
	color: var(--grz-rail-ink);
	font-size: 11.5px;
	font-weight: 800;
	line-height: 1.35;
	text-align: end;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--save dd {
	color: #087a4a;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds {
	min-height: 54px;
	margin: 5px -8px;
	padding: 8px;
	border: 1px solid rgba(var(--grz-tp-accent-rgb, 7, 98, 230), .12);
	border-radius: 6px;
	background: linear-gradient(100deg, rgba(var(--grz-tp-accent-rgb, 7, 98, 230), .075), #f8fbff 72%);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds dt {
	display: flex;
	align-items: center;
	gap: 7px;
	color: #355075;
	font-weight: 800;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-diamond {
	display: grid;
	width: 26px;
	height: 26px;
	place-items: center;
	border: 1px solid rgba(var(--grz-tp-accent-rgb, 7, 98, 230), .16);
	border-radius: 6px;
	background: #fff;
	color: var(--grz-tp-accent-dark, #0653c9);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-diamond svg {
	width: 14px;
	height: 14px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds dd {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 1px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds dd strong {
	color: var(--grz-tp-accent-dark, #0653c9);
	font-size: 12.5px;
	font-weight: 850;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds dd small {
	color: #718099;
	font-size: 9px;
	font-weight: 650;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-total {
	min-height: 82px;
	padding: 15px 16px;
	border-top: 1px solid var(--grz-rail-line);
	border-bottom: 1px solid var(--grz-rail-line);
	background: linear-gradient(105deg, #f4f8ff, #fff 70%);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-total__label {
	color: var(--grz-rail-ink);
	font-size: 14px;
	font-weight: 850;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-total__now {
	font-size: clamp(25px, 2vw, 30px);
}

/* Quantity and purchase actions are one clean inner module. */
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .woocommerce-variation-add-to-cart,
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .grz-tp-cart-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	padding: 14px 16px 16px;
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row,
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row.has-quantity {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 54px;
	gap: 9px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row:not(.has-quantity) {
	grid-template-columns: 1fr;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-width: 0;
	min-height: 52px;
	padding: 5px 6px 5px 11px;
	border: 1px solid #d5deea;
	border-radius: 7px;
	background: var(--grz-rail-soft);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty__compact-copy {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action .grz-tp-qty__compact-label {
	position: static;
	width: auto;
	height: auto;
	overflow: visible;
	clip: auto;
	clip-path: none;
	color: var(--grz-rail-ink);
	font-size: 10.5px;
	font-weight: 800;
	white-space: normal;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty__compact-copy small {
	color: var(--grz-rail-muted);
	font-size: 8.5px;
	line-height: 1.2;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action .quantity {
	grid-template-columns: 36px 34px 36px;
	flex: 0 0 106px;
	width: 106px;
	height: 40px;
	border: 1px solid #becada;
	border-radius: 6px;
	background: #fff;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action .grz-tp-qty__btn,
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action .quantity .qty {
	width: auto;
	height: 38px;
	min-height: 38px;
	line-height: 38px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary button.grz-tp-add-cart-secondary {
	width: 54px;
	min-width: 54px;
	min-height: 52px;
	padding: 0;
	border-color: var(--grz-tp-accent, #0762e6);
	border-radius: 7px;
	color: var(--grz-tp-accent-dark, #0653c9);
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row.has-quantity .grz-tp-add-cart-secondary__label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row:not(.has-quantity) .grz-tp-add-cart-secondary__label {
	position: static;
	width: auto;
	height: auto;
	overflow: visible;
	clip: auto;
	clip-path: none;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .single_add_to_cart_button,
body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary button.single_add_to_cart_button.button.alt {
	min-height: 52px;
	border-radius: 7px;
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .025em;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-assurance {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 12px;
	padding: 5px 16px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-assurance__item {
	grid-template-columns: 24px minmax(0, 1fr);
	min-height: 42px;
	border-bottom: 0;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-assurance__icon {
	width: 24px;
	height: 24px;
	border-radius: 6px;
}

body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-assurance__copy small {
	display: none;
}

@media (max-width: 620px) {
	body.single-product.grz-product-immersive .grz-tp-rail {
		gap: 10px;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card__head,
	body.single-product.grz-product-immersive .grz-tp-card--validator > .grz-tp-card__head {
		min-height: 54px;
		padding: 12px 14px;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card__sub {
		display: block;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--account > .grz-tp-card__body,
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--validator > .grz-tp-validator-body {
		padding: 12px 14px 14px;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-list {
		padding: 5px 14px;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row {
		grid-template-columns: minmax(88px, .85fr) minmax(0, 1.15fr);
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row dd {
		max-width: none;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-total {
		min-height: 76px;
		padding: 13px 14px !important;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .woocommerce-variation-add-to-cart,
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary .grz-tp-cart-actions {
		grid-template-columns: 1fr !important;
		gap: 9px;
		padding: 12px 14px 14px !important;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row,
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-action-row.has-quantity {
		grid-template-columns: minmax(0, 1fr) 52px !important;
		gap: 8px;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action {
		display: flex !important;
		padding: 5px 5px 5px 10px !important;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-card--summary button.grz-tp-add-cart-secondary {
		width: 52px !important;
		min-width: 52px !important;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-assurance {
		grid-template-columns: 1fr;
		padding-inline: 14px;
	}
}

@media (max-width: 355px) {
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty__compact-copy small {
		display: none;
	}

	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action .quantity {
		flex-basis: 100px;
		width: 100px;
		grid-template-columns: 34px 32px 34px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-product.grz-product-immersive .grz-tp-rail :is(button, input) {
		transition: none;
	}
}

@media (forced-colors: active) {
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-summary-row--diamonds,
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-total,
	body.single-product.grz-product-immersive .grz-tp-rail .grz-tp-qty--action {
		border-color: CanvasText;
		background: Canvas;
	}
}
