.pmb-payment-box,
.pmb-customer-payment-info {
	--pmb-border: #dedede;
	--pmb-soft-border: #e9e9e9;
	--pmb-bg: #fff;
	--pmb-soft-bg: #fafafa;
	--pmb-text: #242424;
	--pmb-muted: #626262;
	--pmb-accent: #3f4650;
}

.pmb-payment-box {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	box-sizing: border-box;
	margin: 10px 0 0;
	padding: 0;
	color: var(--pmb-text);
	border: 0;
	border-radius: 0;
	background: transparent;
}

.pmb-description {
	margin: 0 0 10px;
	color: var(--pmb-muted);
	font-size: .94em;
	line-height: 1.55;
}

.pmb-description p:last-child,
.pmb-instructions p:last-child {
	margin-bottom: 0;
}

.pmb-payment-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-column: 1 / -1;
	gap: 0;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--pmb-border);
	border-radius: 6px;
	background: var(--pmb-bg);
}

.pmb-payment-summary > div {
	min-width: 0;
	padding: 11px 14px;
	border: 0;
	border-right: 1px solid var(--pmb-soft-border);
	border-radius: 0;
	background: transparent;
}

.pmb-payment-summary > div:last-child {
	border-right: 0;
}

.pmb-payment-summary dt {
	margin: 0 0 4px;
	color: var(--pmb-muted);
	font-size: .76em;
	font-weight: 600;
	letter-spacing: .01em;
	line-height: 1.35;
}

.pmb-payment-summary dd {
	margin: 0;
	color: var(--pmb-text);
	font-size: .96em;
	font-weight: 650;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.pmb-payment-summary .pmb-receiver-value {
	display: flex;
	align-items: center;
	gap: 7px;
}

.pmb-payment-summary .pmb-copy-number {
	display: inline-grid !important;
	place-items: center;
	flex: 0 0 27px;
	width: 27px !important;
	min-width: 27px !important;
	height: 27px !important;
	min-height: 27px !important;
	margin: 0 0 0 auto !important;
	padding: 0 !important;
	color: var(--pmb-muted) !important;
	border: 1px solid var(--pmb-border) !important;
	border-radius: 4px !important;
	background: var(--pmb-soft-bg) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: color .15s ease, border-color .15s ease, background-color .15s ease;
}

.pmb-payment-summary .pmb-copy-number svg {
	width: 14px;
	height: 14px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.pmb-payment-summary .pmb-copy-number:hover,
.pmb-payment-summary .pmb-copy-number:focus-visible {
	color: var(--pmb-text) !important;
	border-color: #aeb3b9 !important;
	background: #fff !important;
	outline: 0;
}

.pmb-payment-summary .pmb-copy-number.is-copied {
	color: #167548 !important;
	border-color: #9bcdb4 !important;
	background: #f1faf5 !important;
}

.pmb-payment-summary .pmb-copy-number.has-copy-error {
	color: #a52a2a !important;
	border-color: #dfb0b0 !important;
}

.pmb-copy-status {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.pmb-instructions {
	grid-column: 1 / -1;
	margin: 0;
	padding: 10px 13px;
	color: var(--pmb-muted);
	border: 1px solid var(--pmb-soft-border);
	border-radius: 4px;
	background: var(--pmb-soft-bg);
	font-size: .9em;
	line-height: 1.5;
}

.pmb-payment-box .pmb-field {
	float: none;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0;
}

.pmb-payment-box .pmb-field:last-child {
	margin-bottom: 0;
}

.pmb-payment-box .pmb-input,
.pmb-block-field input {
	box-sizing: border-box;
	width: 100%;
	min-height: 44px;
	margin-top: 5px;
	padding: 8px 11px;
	color: var(--pmb-text);
	border: 1px solid #bfc3c8;
	border-radius: 4px;
	background: #fff;
	font-size: 15px;
	line-height: 1.35;
}

.pmb-payment-box .pmb-input:focus,
.pmb-block-field input:focus {
	border-color: var(--pmb-accent);
	box-shadow: 0 0 0 2px rgba(63, 70, 80, .1);
	outline: 0;
}

.pmb-payment-box .pmb-field label,
.pmb-block-field {
	display: block;
	margin: 0;
	color: var(--pmb-text);
	font-size: .88em;
	font-weight: 600;
	line-height: 1.4;
}

.pmb-block-field abbr {
	color: #b91c1c;
	text-decoration: none;
}

.pmb-customer-payment-info {
	box-sizing: border-box;
	width: 100%;
	max-width: 1200px;
	margin: 28px auto 0;
	padding-right: 16px;
	padding-left: 16px;
}

.pmb-customer-payment-info .pmb-payment-info-table {
	width: 100%;
}

.pmb-payment-info-table th {
	width: 38%;
}

.pmb-verification-note {
	margin-top: 10px;
	color: var(--pmb-muted);
	font-size: .92em;
}

@media (max-width: 640px) {
	.pmb-customer-payment-info {
		padding-right: 12px;
		padding-left: 12px;
	}

	.pmb-payment-box {
		grid-template-columns: 1fr;
		gap: 11px;
		padding: 0;
	}

	.pmb-payment-summary {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.pmb-payment-summary > div {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		padding: 9px 11px;
		border-right: 0;
		border-bottom: 1px solid var(--pmb-soft-border);
	}

	.pmb-payment-summary > div:last-child {
		border-bottom: 0;
	}
}

/* Keep field sizing consistent when a checkout/theme applies oversized inputs. */
.woocommerce-checkout #payment .pmb-payment-box input.pmb-input {
	min-height: 44px;
	padding: 8px 11px;
	border-radius: 4px;
	font-size: 15px;
}
