/* Outer container with constraints */
.paypercut-checkout__container {
	max-width: 450px;
	max-height: 600px;
	overflow: hidden;
	overflow-y: auto;
	scroll-behavior: smooth;
	margin: 0 auto;
	padding: 20px;
}

/* Inner mount point - SDK will resize iframe dynamically */
#paypercut-checkout-container {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.paypercut-checkout__container iframe {
	width: 100%;
	border: 0;
	border-radius: 12px;
	background-color: #ffffff;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.paypercut-checkout__placeholder,
.paypercut-checkout__error {
	font-size: 16px;
	line-height: 1.5;
	color: #333;
	padding: 24px;
	border-radius: 12px;
	background-color: #f5f5f5;
}

.paypercut-checkout__error {
	color: #c62828;
}

.payment_method_paypercut_payments label[for="payment_method_paypercut_payments"] {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.paypercut-card-brands {
	display: inline-flex;
    gap: 8px;
    margin-left: auto;
    vertical-align: middle;
    align-items: center;
    width: 100%;
    max-width: 200px;
    justify-content: end;
}

.paypercut-card-brands img {
    max-width: 20% !important;
}

.paypercut-card-brands__icon {
	height: 22px !important;
	width: auto;
	display: block;
	max-width: 43px !important;
}

.paypercut-blocks-label {
	display: inline-flex;
	align-items: center;
	width: 100%;
}

.paypercut-blocks-label .paypercut-card-brands {
	margin-left: auto;
}

.payment_method_paypercut_payments {
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
	box-shadow: none !important;
}

.payment_method_paypercut_payments::before {
	display: none !important;
}

/* Validation error styles */
.paypercut-field-error {
	border-color: #c62828 !important;
	box-shadow: 0 0 0 1px #c62828 !important;
	animation: paypercut-field-shake 0.3s ease-in-out;
}

@keyframes paypercut-field-shake {
	0%, 100% {
		transform: translateX(0);
	}
	25% {
		transform: translateX(-5px);
	}
	75% {
		transform: translateX(5px);
	}
}

.paypercut-field-validation-error {
	margin-bottom: 1em;
}

.payment_method_paypercut_payments .payment_box > p {
	padding: 10px;
}