/* The compact purchase row is exclusive to mobile product detail pages. */
@media (max-width: 780px) {
	body.single-product .lspa-floating-cart.lspa-floating-cart--mobile {
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
		align-items: center;
		background: #fff;
		border: 0;
		border-top: 1px solid #dce9e4;
		border-radius: 0;
		bottom: 0;
		box-shadow: 0 -3px 16px rgba(23, 63, 67, .07);
		display: grid;
		gap: 8px;
		grid-template-columns: 108px minmax(0, 1fr) minmax(0, 1fr);
		left: 0;
		max-width: none;
		padding: 10px max(10px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));
		right: 0;
		transform: none;
		transition: none;
		width: auto;
	}
	body.single-product .lspa-floating-cart--mobile :is(.lspa-floating-cart__product, .lspa-floating-cart__quantity, .lspa-floating-cart__button > svg) { display: none; }
	body.single-product .lspa-floating-cart--mobile > :is(.lspa-floating-cart__button, .lspa-mobile-float-buy) {
		align-items: center;
		background: #08645e;
		border: 1px solid #08645e;
		border-radius: 8px;
		box-shadow: none;
		color: #fff;
		display: flex;
		font: inherit;
		font-size: 13px;
		font-weight: 700;
		gap: 4px;
		height: 44px;
		justify-content: center;
		letter-spacing: 0;
		line-height: 1.2;
		margin: 0;
		min-height: 44px;
		min-width: 0;
		padding: 0 4px;
		text-transform: none;
		touch-action: manipulation;
		transform: none;
		white-space: nowrap;
	}
	body.single-product .lspa-floating-cart--mobile > .lspa-mobile-float-buy {
		background: #f2f8f6;
		border-color: #cfe1da;
		color: #08645e;
	}
	body.single-product .lspa-floating-cart--mobile > .lspa-floating-cart__button:not(:disabled):hover { background: #07554f; }
	body.single-product .lspa-floating-cart--mobile > .lspa-mobile-float-buy:not(:disabled):hover { background: #e5f0eb; }
	body.single-product .lspa-mobile-float-quantity {
		align-items: center;
		background: #f2f8f6;
		border: 1px solid #cfe1da;
		border-radius: 8px;
		box-sizing: border-box;
		display: grid;
		grid-template-columns: 30px minmax(0, 1fr) 30px;
		height: 44px;
		min-width: 0;
		overflow: hidden;
	}
	body.single-product .lspa-mobile-float-quantity > button {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		color: #08645e;
		font: inherit;
		font-size: 17px;
		height: 42px;
		line-height: 1;
		margin: 0;
		min-height: 0;
		min-width: 0;
		padding: 0;
		touch-action: manipulation;
		width: 30px;
	}
	body.single-product .lspa-mobile-float-quantity > input {
		-moz-appearance: textfield;
		appearance: textfield;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		box-sizing: border-box;
		color: #173f43;
		font: inherit;
		font-size: 16px;
		font-variant-numeric: tabular-nums;
		font-weight: 650;
		height: 42px;
		margin: 0;
		min-height: 0;
		min-width: 0;
		padding: 0;
		text-align: center;
		width: 100%;
	}
	body.single-product .lspa-mobile-float-quantity > input::-webkit-inner-spin-button,
	body.single-product .lspa-mobile-float-quantity > input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
	body.single-product .lspa-floating-cart--mobile :is(button, input):focus-visible { outline: 2px solid #08645e; outline-offset: -3px; }
	body.single-product .lspa-floating-cart--mobile :is(button, input):disabled { cursor: not-allowed; opacity: .45; }
	body.single-product .lspa-floating-cart--mobile > [hidden] { display: none; }
	body.single-product .lspa-floating-cart--mobile:not(:has(.lspa-mobile-float-buy:not([hidden]))) { grid-template-columns: 108px minmax(0, 1fr); }
	body.single-product .lspa-floating-cart--mobile .is-loading::after { height: 10px; width: 10px; }
	body.single-product .lspa-mobile-purchase-spacer { height: calc(65px + env(safe-area-inset-bottom)); }
	body.single-product.lspa-has-mobile-purchase-bar .scs-widget { bottom: calc(80px + env(safe-area-inset-bottom)); }
	body.single-product.lspa-has-mobile-purchase-bar .scs-chat-panel { height: min(590px, calc(100dvh - 170px - env(safe-area-inset-bottom))); }
	@media (max-width: 359px) {
		body.single-product .lspa-floating-cart.lspa-floating-cart--mobile { gap: 6px; grid-template-columns: 100px minmax(0, 1fr) minmax(0, 1fr); }
		body.single-product .lspa-floating-cart--mobile > :is(.lspa-floating-cart__button, .lspa-mobile-float-buy) { font-size: 12px; }
	}
}

/* The fixed purchase bar replaces the duplicate inline action card on mobile. */
@media (max-width: 780px) {
	body.single-product.lspa-has-mobile-purchase-bar .entry-summary > .ct-product-divider:has(+ .ct-product-add-to-cart.lspa-mobile-purchase) { display: none; }
	body.single-product.lspa-has-mobile-purchase-bar .entry-summary > .ct-product-add-to-cart.lspa-mobile-purchase {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin: 0 !important;
		padding: 0 !important;
	}
	body.single-product.lspa-has-mobile-purchase-bar .entry-summary .lspa-mobile-purchase .lspa-mobile-controls {
		display: block !important;
		gap: 0 !important;
	}
	body.single-product.lspa-has-mobile-purchase-bar .entry-summary .lspa-mobile-purchase .lspa-mobile-controls > :is(.lspa-mobile-quantity-label, .quantity, .single_add_to_cart_button, .lspc-buy-now, .added_to_cart),
	body.single-product.lspa-has-mobile-purchase-bar .entry-summary .lspa-mobile-purchase > :is(.lspa-mobile-help, .lspa-actions) {
		display: none !important;
	}
}

/* End the full-width discount card where the hidden inline purchase area begins. */
@media (max-width: 780px) {
	body.single-product.lspa-has-mobile-purchase-bar .product-type-simple .summary.entry-summary:has(> .wcbud-panel) {
		padding-bottom: 0;
	}
	body.single-product.lspa-has-mobile-purchase-bar .product-type-simple .entry-summary > .wcbud-panel {
		margin-bottom: 0;
	}
}


/* Guests can reach product pricing from the bottom of the mobile viewport. */
@media (max-width: 780px) {
	body.single-product.lspa-has-mobile-login-bar > .lspa-mobile-login-bar {
		background: var(--ls-mobile-glass, #fafefc);
		-webkit-backdrop-filter: var(--ls-mobile-glass-filter, none);
		backdrop-filter: var(--ls-mobile-glass-filter, none);
		border: 0;
		border-top: 1px solid #dce9e4;
		box-shadow: 0 -3px 16px rgba(23, 63, 67, .07);
		box-sizing: border-box;
		bottom: 0;
		display: block;
		left: 0;
		margin: 0;
		padding: 10px max(10px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));
		position: fixed;
		right: 0;
		z-index: 9998;
	}

	body.single-product .lspa-mobile-login-bar > .lspv-price-notice--link {
		align-items: center;
		background: #0b5f4a;
		border: 1px solid #0b5f4a;
		border-radius: 8px;
		box-shadow: none;
		box-sizing: border-box;
		color: #fff;
		display: flex;
		font-size: 14px;
		font-weight: 700;
		justify-content: center;
		line-height: 1.35;
		margin: 0;
		min-height: 44px;
		padding: 10px 14px;
		text-align: center;
		text-decoration: none;
		touch-action: manipulation;
		width: 100%;
	}
	body.single-product .lspa-mobile-login-bar > .lspv-price-notice--link:hover {
		background: #084e3d;
		border-color: #084e3d;
		color: #fff;
	}
	body.single-product .lspa-mobile-login-bar > .lspv-price-notice--link:focus-visible {
		outline: 2px solid #0b5f4a;
		outline-offset: 3px;
	}
	body.single-product.lspa-has-mobile-login-bar .lspa-mobile-login-source { display: none !important; }
	body.single-product.lspa-has-mobile-login-bar .scs-widget { bottom: calc(80px + env(safe-area-inset-bottom)); }
	body.single-product.lspa-has-mobile-login-bar .scs-chat-panel { height: min(590px, calc(100dvh - 170px - env(safe-area-inset-bottom))); }
	.lspv-access-refreshing .lspa-mobile-login-bar { visibility: hidden; pointer-events: none; }
}
