/* Pasarelas VE — checkout (clásico y bloques). Hereda colores y tipografía del tema. */

.pve-form { margin: 0; padding: 0; border: 0; }
.pve-form .pve-field { margin: 0 0 12px; }
.pve-form label { display: block; font-weight: 600; margin-bottom: 4px; }
.pve-form input,
.pve-form select { width: 100%; box-sizing: border-box; min-height: 42px; }

.pve-doc { display: flex; gap: 6px; }
.pve-doc select { flex: 0 0 64px; width: 64px; }
.pve-doc input { flex: 1 1 auto; }

.pve-otp { display: flex; gap: 6px; flex-wrap: wrap; }
.pve-otp input { flex: 1 1 140px; }
.pve-otp-button { flex: 0 0 auto; white-space: nowrap; cursor: pointer; }
.pve-help,
.pve-otp-status { display: block; margin-top: 4px; opacity: .8; font-size: .85em; }
.pve-otp-status { font-weight: 600; opacity: 1; }

.pve-amount {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px;
	margin: 0 0 14px; padding: 12px 14px;
	border: 1px solid rgba(127,127,127,.35); border-radius: 8px;
}
.pve-amount__value { font-size: 1.35em; }
.pve-amount__rate { flex-basis: 100%; opacity: .75; font-size: .82em; }

.pve-pay-to { margin: 0 0 12px; }
.pve-pay-to__title { font-weight: 600; margin: 0 0 6px; }
.pve-pay-to dl { margin: 0 0 12px; padding: 0; }
.pve-pay-to__row {
	display: flex; justify-content: space-between; align-items: center; gap: 8px;
	padding: 6px 0; border-bottom: 1px dashed rgba(127,127,127,.3);
}
.pve-pay-to__row dt { margin: 0; opacity: .75; }
.pve-pay-to__row dd { margin: 0; display: flex; align-items: center; gap: 8px; font-weight: 600; text-align: right; }
.pve-copy {
	font-size: .8em; padding: 3px 10px; cursor: pointer; line-height: 1.6;
	border: 1px solid currentColor; border-radius: 999px; background: transparent; color: inherit;
}

.pve-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; }
@media (max-width: 480px) { .pve-cols { grid-template-columns: 1fr; } }

.pve-test-badge {
	display: inline-block; margin: 0 0 10px; padding: 2px 8px; border-radius: 4px;
	background: #b45309; color: #fff; font-size: .75em; font-weight: 700; letter-spacing: .02em;
}
