/**
 * PumpkinDP Stripe checkout polish v10.
 * Keeps Stripe-required fields intact while simplifying the surrounding checkout UI.
 */

.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment {
	background: #fff !important;
	border: 1px solid #e5e7eb;
	border-radius: 20px;
	box-shadow: 0 16px 42px rgba(17, 19, 24, 0.07);
	color: #111318;
	overflow: hidden;
}

.woocommerce-checkout #payment ul.payment_methods {
	background: transparent !important;
	border: 0;
	margin: 0;
	padding: 20px;
}

.woocommerce-checkout #payment ul.payment_methods > li {
	margin: 0;
}

.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .payment_box.payment_method_stripe,
.woocommerce-checkout #payment div.payment_box {
	background: #fff !important;
	color: #111318 !important;
	border: 1px solid #e6e8ec;
	border-radius: 16px;
	box-shadow: none;
	box-sizing: border-box;
	margin: 14px 0 0 !important;
	padding: 18px !important;
	width: 100% !important;
	max-width: none !important;
}

.woocommerce-checkout #payment .payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
	display: none !important;
	content: none !important;
}

.woocommerce-checkout #payment .payment_box p,
.woocommerce-checkout #payment .payment_box label {
	color: #252a33;
}

.woocommerce-checkout #payment #wc-stripe-cc-form,
.woocommerce-checkout #payment .wc-payment-form,
.woocommerce-checkout #payment .wc-stripe-elements-field,
.woocommerce-checkout #payment .stripe-source-errors,
.woocommerce-checkout #payment .payment_method_stripe iframe,
.woocommerce-checkout #payment .wc-stripe-checkout-container,
.woocommerce-checkout #payment .StripeElement {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

.woocommerce-checkout #payment .form-row {
	box-sizing: border-box;
	float: none;
	width: 100%;
}

.woocommerce-checkout #payment .place-order {
	background: #fff;
	border-top: 1px solid #eceef1;
	margin: 0 !important;
	padding: 20px !important;
}

.woocommerce-checkout #payment #place_order {
	background: #f47a1f !important;
	border: 0 !important;
	border-radius: 14px !important;
	box-shadow: 0 12px 28px rgba(244, 122, 31, 0.22);
	color: #fff !important;
	font-weight: 700;
	min-height: 54px;
	width: 100%;
}

.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout #payment #place_order:focus {
	background: #dc6410 !important;
}

/* Cleaner mobile order confirmation. */
@media (max-width: 767px) {
	.woocommerce-checkout #payment,
	.woocommerce-checkout .woocommerce-checkout-payment {
		border-radius: 16px;
		margin-inline: 0;
		width: 100%;
	}

	.woocommerce-checkout #payment ul.payment_methods {
		padding: 12px !important;
	}

	.woocommerce-checkout #payment .payment_box,
	.woocommerce-checkout #payment .payment_box.payment_method_stripe,
	.woocommerce-checkout #payment div.payment_box {
		border-radius: 14px;
		margin-top: 10px !important;
		overflow: visible !important;
		padding: 12px !important;
	}

	.woocommerce-checkout #payment .place-order {
		padding: 12px !important;
	}

	.woocommerce-checkout #payment iframe {
		display: block;
		width: 100% !important;
	}

	.woocommerce-order-received .woocommerce-order-overview {
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		margin: 18px 0 26px !important;
		padding: 0 !important;
	}

	.woocommerce-order-received .woocommerce-order-overview li {
		background: #fff;
		border: 1px solid #e5e7eb !important;
		border-radius: 12px;
		box-sizing: border-box;
		float: none !important;
		font-size: 11px;
		margin: 0 !important;
		padding: 12px !important;
		width: auto !important;
	}

	.woocommerce-order-received .woocommerce-order-overview li strong {
		color: #20242c;
		display: block;
		font-size: 15px;
		line-height: 1.35;
		margin-top: 4px;
		overflow-wrap: anywhere;
	}

	.woocommerce-order-received .woocommerce-order-details {
		background: #fff;
		border: 1px solid #e5e7eb;
		border-radius: 16px;
		overflow: hidden;
		padding: 0;
	}

	.woocommerce-order-received .woocommerce-order-details h2 {
		font-size: 24px;
		margin: 0;
		padding: 18px;
	}

	.woocommerce-order-received .woocommerce-order-details table {
		border: 0;
		margin: 0;
		table-layout: fixed;
		width: 100%;
	}

	.woocommerce-order-received .woocommerce-order-details th,
	.woocommerce-order-received .woocommerce-order-details td {
		box-sizing: border-box;
		overflow-wrap: anywhere;
		padding: 12px !important;
	}

	.woocommerce-order-received .woocommerce-order-details .product-name {
		width: 72%;
	}

	.woocommerce-order-received .woocommerce-order-details .product-total {
		text-align: right;
		width: 28%;
	}
}
