body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-gateway,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-card-button-gateway,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-credit-card-gateway {
	display: grid !important;
	grid-template-columns: 12px minmax(0, 1fr) !important;
	column-gap: 10px !important;
	row-gap: 10px !important;
	align-items: center !important;
	position: relative !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	list-style: none !important;
	box-sizing: border-box !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-gateway > input.input-radio,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-card-button-gateway > input.input-radio,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-credit-card-gateway > input.input-radio {
	position: static !important;
	display: block !important;
	width: 12px !important;
	height: 12px !important;
	margin: 0 !important;
	border: 1.5px solid #ffffff !important;
	border-radius: 50% !important;
	background: #0b0b0b !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	box-shadow: none !important;
	cursor: pointer !important;
	float: none !important;
	grid-column: 1 !important;
	justify-self: center !important;
	align-self: center !important;
	transform: translateY(-4px) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-gateway > label,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-card-button-gateway > label,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-credit-card-gateway > label {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	cursor: pointer !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	grid-column: 2 !important;
	justify-self: stretch !important;
}

.as-paypal-payment-wrapper {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-gateway > input.input-radio:checked,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-card-button-gateway > input.input-radio:checked,
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_ppcp-credit-card-gateway > input.input-radio:checked {
	border-color: #ffffff !important;
	background: radial-gradient(circle, #ffffff 0 2.5px, #0b0b0b 2.6px 100%) !important;
	box-shadow: none !important;
}

.as-paypal-payment-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	padding: 12px 20px !important;
	border-radius: 50px !important;
	background: #ffc439 !important;
	color: #050608 !important;
	flex: 1 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55), 0 10px 26px rgba(255, 196, 57, .12) !important;
	overflow: hidden !important;
}

.as-paypal-payment-wrapper--cards .as-paypal-payment-header {
	position: relative !important;
	background: #f2f2f2 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 10px 26px rgba(242, 242, 242, .1) !important;
}

.as-paypal-payment-wrapper--cards .as-paypal-card-title {
	max-width: calc(100% - 166px) !important;
}

.as-paypal-title-text,
.as-paypal-card-title {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	min-width: 0 !important;
	color: #050608 !important;
	-webkit-text-fill-color: #050608 !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	white-space: nowrap !important;
	flex: 0 1 auto !important;
}

.as-paypal-card-title-mobile {
	display: none !important;
}

.as-paypal-brand-logo {
	display: block !important;
	width: 36px !important;
	height: 36px !important;
	max-width: none !important;
	object-fit: contain !important;
	flex: 0 0 auto !important;
	transform: scale(1.42) !important;
	transform-origin: center !important;
}

.as-paypal-card-icon {
	display: block !important;
	width: 40px !important;
	height: 40px !important;
	object-fit: contain !important;
	flex: 0 0 auto !important;
	transform: scale(1.6) !important;
	transform-origin: center !important;
}

.as-paypal-card-networks-wrap {
	position: absolute !important;
	top: 50% !important;
	right: 18px !important;
	transform: translate3d(32px, 0, 0) translateY(-50%) !important;
	display: block !important;
	width: 138px !important;
	min-width: 0 !important;
	height: 40px !important;
	flex: 0 0 auto !important;
	margin-left: 0 !important;
	overflow: hidden !important;
}

.as-paypal-card-networks {
	position: absolute !important;
	top: 50% !important;
	right: 0 !important;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 22px !important;
	object-fit: contain !important;
	opacity: 0;
	transform: translate3d(0, 6px, 0) translateY(-50%) scale(.94);
	transform-origin: center;
	animation: as-paypal-card-network-cycle 8s infinite cubic-bezier(.45, 0, .15, 1) !important;
	will-change: opacity, transform;
}

.as-paypal-card-networks--first {
	animation-delay: 0s !important;
}

.as-paypal-card-networks--second {
	animation-delay: -4s !important;
}

@keyframes as-paypal-card-network-cycle {
	0%,
	38% {
		opacity: 1;
		transform: translate3d(0, 0, 0) translateY(-50%) scale(1);
	}

	50%,
	88% {
		opacity: 0;
		transform: translate3d(0, -6px, 0) translateY(-50%) scale(.94);
	}

	100% {
		opacity: 1;
		transform: translate3d(0, 0, 0) translateY(-50%) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.as-paypal-card-networks {
		animation: none !important;
	}

	.as-paypal-card-networks--first {
		opacity: 1 !important;
		transform: translate3d(0, 0, 0) translateY(-50%) scale(1) !important;
	}
}

body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway,
body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-card-button-gateway,
body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-credit-card-gateway {
	width: 100% !important;
	grid-column: 1 / -1 !important;
	margin: 12px 0 18px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway::before,
body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-card-button-gateway::before,
body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-credit-card-gateway::before {
	display: none !important;
}

body.woocommerce-checkout #ppc-button-ppcp-gateway,
body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway {
	width: 100% !important;
	margin-top: 16px !important;
	border-radius: 14px !important;
	overflow: hidden !important;
	line-height: 0 !important;
	box-shadow: none !important;
	isolation: isolate !important;
	clip-path: inset(0 round 14px) !important;
}

body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway iframe {
	display: block !important;
	width: 100% !important;
	border: 0 !important;
	border-radius: 14px !important;
	clip-path: inset(0 round 14px) !important;
	background: #f2f2f2 !important;
	vertical-align: top !important;
}

body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway-v6 {
	width: 100% !important;
	margin-top: 16px !important;
}

/* v6 fixes the card colors inside its shadow DOM. Recolor only the button,
 * keeping the sibling payment iframe and its native behavior untouched. */
body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway-v6 paypal-basic-card-button {
	--paypal-button-border-radius: 14px !important;
	display: block !important;
	width: 100% !important;
	height: 48px !important;
	border-radius: 14px !important;
	filter: grayscale(1) invert(1) brightness(1.155) !important;
	transition: filter .18s ease;
}

body.woocommerce-checkout #ppc-button-ppcp-card-button-gateway-v6 paypal-basic-card-button:hover {
	filter: grayscale(1) invert(1) brightness(1.1) !important;
}

body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway > :not(#ppc-button-ppcp-gateway),
body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-card-button-gateway > :not(#ppc-button-ppcp-card-button-gateway) {
	display: none !important;
}

body.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

body.woocommerce-checkout #ppcp-hosted-fields,
body.woocommerce-checkout .ppcp-hosted-fields,
body.woocommerce-checkout .wc-credit-card-form,
body.woocommerce-checkout .woocommerce-SavedPaymentMethods {
	margin-top: 14px !important;
}

body.woocommerce-checkout .payment_method_ppcp-credit-card-gateway label {
	color: #f2f2f2 !important;
	-webkit-text-fill-color: #f2f2f2 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

body.woocommerce-checkout #ppcp-hosted-fields input,
body.woocommerce-checkout .ppcp-hosted-fields input,
body.woocommerce-checkout .wc-credit-card-form input,
body.woocommerce-checkout .wc-credit-card-form .input-text,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-name,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-number,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-expiry,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-cvc {
	display: block !important;
	width: 100% !important;
	min-height: 52px !important;
	padding: 14px 16px !important;
	border: 1px solid rgba(230, 238, 246, .3) !important;
	border-radius: 14px !important;
	background: #0a0b10 !important;
	color: #f2f2f2 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1) !important;
}

body.woocommerce-checkout #ppcp-hosted-fields input:focus,
body.woocommerce-checkout .ppcp-hosted-fields input:focus,
body.woocommerce-checkout .wc-credit-card-form input:focus,
body.woocommerce-checkout .wc-credit-card-form .input-text:focus,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-name:focus,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-number:focus,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-expiry:focus,
body.woocommerce-checkout #ppcp-credit-card-gateway-card-cvc:focus {
	border-color: rgba(242, 242, 242, .58) !important;
	outline: 0 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), 0 0 0 3px rgba(242, 242, 242, .08) !important;
}

body.woocommerce-checkout .payment_box.payment_method_ppcp-credit-card-gateway button,
body.woocommerce-checkout .payment_box.payment_method_ppcp-card-button-gateway button,
body.woocommerce-checkout .payment_method_ppcp-credit-card-gateway #place_order,
body.woocommerce-checkout .payment_method_ppcp-card-button-gateway #place_order {
	background: #f2f2f2 !important;
	color: #050608 !important;
	-webkit-text-fill-color: #050608 !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-weight: 800 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body.woocommerce-checkout .as-recaptcha-disclosure {
	margin: 18px auto 0 !important;
	max-width: 520px;
	color: rgba(230, 238, 246, .48) !important;
	font-size: 11px !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
	text-align: center !important;
}

body.woocommerce-checkout .as-recaptcha-disclosure a {
	color: rgba(230, 238, 246, .72) !important;
	text-decoration: underline !important;
	text-decoration-color: rgba(230, 238, 246, .32) !important;
	text-underline-offset: 2px;
}

body.woocommerce-checkout .as-recaptcha-disclosure a:hover,
body.woocommerce-checkout .as-recaptcha-disclosure a:focus-visible {
	color: #f2f2f2 !important;
	text-decoration-color: rgba(242, 242, 242, .72) !important;
}

@media (max-width: 520px) {
	.as-paypal-payment-wrapper {
		gap: 8px !important;
	}

	.as-paypal-payment-header {
		padding: 11px 13px !important;
		gap: 10px !important;
	}

	.as-paypal-title-text,
	.as-paypal-card-title {
		font-size: 13px !important;
		white-space: nowrap !important;
	}

	.as-paypal-card-title-full {
		display: none !important;
	}

	.as-paypal-card-title-mobile {
		display: inline !important;
	}

	.as-paypal-brand-logo {
		width: 32px !important;
		height: 32px !important;
		transform: scale(1.34) !important;
	}

	.as-paypal-card-icon {
		width: 36px !important;
		height: 36px !important;
		transform: scale(1.5) !important;
	}

	.as-paypal-card-networks-wrap {
		right: 11px !important;
		transform: translateY(-50%) !important;
		width: min(76px, 22vw) !important;
		min-width: 0 !important;
		height: 16px !important;
	}

	.as-paypal-payment-wrapper--cards .as-paypal-card-title {
		max-width: calc(100% - min(88px, 26vw)) !important;
	}

	.as-paypal-card-networks {
		width: 100% !important;
		height: auto !important;
		max-height: 16px !important;
	}
}
