/* YoLaburo PRO — overlay checkout Mercado Pago Bricks (solo plantilla subscribe) */



#zp-mp-pro-checkout-overlay[hidden] {

	display: none !important;

}



#zp-mp-pro-checkout-overlay {

	position: fixed;

	inset: 0;

	z-index: 999999;

	background: rgba(15, 23, 42, 0.55);

	-webkit-backdrop-filter: blur(6px);

	backdrop-filter: blur(6px);

	display: flex;

	align-items: flex-end;

	justify-content: center;

	padding: max(12px, env(safe-area-inset-bottom, 0px)) 12px 12px;

	box-sizing: border-box;

}



@media (min-width: 640px) {

	#zp-mp-pro-checkout-overlay {

		align-items: center;

		padding: 24px;

	}

}



#zp-mp-pro-checkout-dialog {

	width: 100%;

	max-width: 480px;

	max-height: min(98vh, 960px);

	overflow-x: hidden;

	overflow-y: auto;

	-webkit-overflow-scrolling: touch;

	background: #fff;

	border-radius: 16px 16px 0 0;

	box-shadow: 0 -8px 40px rgba(15, 23, 42, 0.2);

	display: flex;

	flex-direction: column;

	min-height: 0;

}



@media (min-width: 640px) {

	#zp-mp-pro-checkout-dialog {

		border-radius: 16px;

	}

}



#zp-mp-pro-checkout-head {

	position: sticky;

	top: 0;

	z-index: 6;

	flex: 0 0 auto;

	display: flex;

	align-items: flex-start;

	justify-content: space-between;

	gap: 12px;

	padding: 14px 16px 6px;

	border-bottom: 1px solid #e2e8f0;

	background: #fff;

	box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06);

}



#zp-mp-pro-checkout-title {

	margin: 0;

	font-size: 1.15rem;

	font-weight: 800;

	color: #0f172a;

	line-height: 1.25;

}



#zp-mp-pro-checkout-sub {

	margin: 6px 0 0;

	font-size: 0.875rem;

	color: #64748b;

	line-height: 1.4;

}



#zp-mp-pro-checkout-close {

	flex: 0 0 auto;

	border: 0;

	background: #f1f5f9;

	color: #0f172a;

	width: 40px;

	height: 40px;

	border-radius: 12px;

	font-size: 1.25rem;

	line-height: 1;

	cursor: pointer;

}



#zp-mp-pro-checkout-close:hover {

	background: #e2e8f0;

}



#zp-mp-pro-checkout-steps {

	flex: 1 1 auto;

	min-height: 0;

	display: flex;

	flex-direction: column;

	overflow: visible;

}



/* Área scroll: elección o formulario de tarjeta (el pie queda fijo abajo, compacto) */

.zp-mp-pro-checkout-main {

	flex: 1 1 auto;

	min-height: 0;

	display: flex;

	flex-direction: column;

	overflow: visible;

}



/* Paso 1: elegir método */

.zp-mp-pro-payment-choice {

	flex: 0 1 auto;

	padding: 16px 18px 14px;

	text-align: center;

	overflow-y: auto;

	min-height: 0;

}



.zp-mp-pro-payment-choice-hint {

	margin: 0 0 14px;

	font-size: 0.9375rem;

	font-weight: 700;

	color: #334155;

}



.zp-mp-pro-payment-choice-btn {

	width: 100%;

	max-width: 100%;

	box-sizing: border-box;

	padding: 14px 16px;

	border-radius: 12px;

	font-size: 0.9375rem;

	font-weight: 700;

	cursor: pointer;

	line-height: 1.35;

	margin-bottom: 12px;

	border: 2px solid transparent;

}



.zp-mp-pro-payment-choice-btn--card {

	display: flex;

	flex-direction: column;

	align-items: center;

	gap: 10px;

	padding-top: 16px;

	padding-bottom: 16px;

	background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);

	border-color: #d35400;

	color: #fff;

	box-shadow: 0 4px 14px rgba(230, 126, 34, 0.35);

}



.zp-mp-pro-payment-choice-btn__label {

	display: block;

	font-size: 0.9375rem;

}



.zp-mp-pro-wallet-btn__inner {

	display: flex;

	flex-direction: row;

	flex-wrap: wrap;

	align-items: center;

	justify-content: center;

	gap: 10px 12px;

	width: 100%;

}



.zp-mp-pro-wallet-btn__logo {

	display: block;

	height: 22px;

	width: auto;

	max-width: 110px;

	object-fit: contain;

	flex-shrink: 0;

}


.zp-mp-pro-card-brands {

	display: flex;

	flex-wrap: wrap;

	justify-content: center;

	align-items: center;

	gap: 8px 14px;

	font-size: 1.85rem;

	color: rgba(255, 255, 255, 0.95);

	line-height: 1;

}


.zp-mp-pro-card-brands .fa {

	line-height: 1;

	opacity: 0.95;

	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);

}


.zp-mp-pro-card-brands-local {

	display: block;

	width: 100%;

	margin-top: 2px;

	font-size: 0.62rem;

	font-weight: 700;

	letter-spacing: 0.03em;

	color: rgba(255, 255, 255, 0.88);

	text-transform: uppercase;

}



.zp-mp-pro-payment-choice-btn--card:hover {

	filter: brightness(1.05);

}



/* Celeste Mercado Pago (el tema a veces pisa el fondo del botón). */

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet {

	-webkit-appearance: none;

	appearance: none;

	background: linear-gradient(135deg, #5bc8f5 0%, #009ee3 100%) !important;

	background-color: #009ee3 !important;

	border: 2px solid #0088c7 !important;

	color: #fff !important;

	box-shadow: 0 4px 14px rgba(0, 158, 227, 0.35);

	filter: none;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet:hover,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet:focus,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet:focus-visible,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet:active {

	background: linear-gradient(135deg, #6dd0f7 0%, #00a8f0 100%) !important;

	background-color: #00a8f0 !important;

	color: #fff !important;

	outline: none;

	filter: none;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--wallet .zp-mp-pro-payment-choice-btn__label {

	color: #fff !important;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card {

	background: #fff !important;

	border: 2px solid #009ee3 !important;

	color: #009ee3 !important;

	box-shadow: none;

	filter: none;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card:hover,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card:focus {

	background: #e8f7fc !important;

	color: #0078b3 !important;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card .zp-mp-pro-payment-choice-btn__label {

	color: #009ee3 !important;

}



#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card .zp-mp-pro-card-brands,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card .zp-mp-pro-card-brands .fa,

#zp-mp-pro-checkout-overlay .zp-mp-pro-payment-choice-btn.zp-mp-pro-payment-choice-btn--card .zp-mp-pro-card-brands-local {

	color: #0078b3 !important;

	text-shadow: none;

}



.zp-mp-pro-payment-choice-btn--wallet {

	background: linear-gradient(135deg, #5bc8f5 0%, #009ee3 100%);

	border-color: #0088c7;

	color: #fff;

}



.zp-mp-pro-payment-choice-btn--wallet:hover {

	filter: brightness(1.04);

}



.zp-mp-pro-payment-choice-note {

	margin: 10px 0 0;

	font-size: 0.75rem;

	line-height: 1.45;

	color: #64748b;

}



/* Pie: YoLaburo + MP en fila; scroll del modal si no cabe en pantalla */

.zp-mp-pro-checkout-trust {

	flex: 0 0 auto;

	padding: 10px 14px 12px;

	text-align: center;

	border-top: 1px solid #e2e8f0;

	background: #fafbfc;

}

.zp-mp-pro-checkout-trust-inner {

	display: flex;

	flex-direction: row;

	flex-wrap: wrap;

	align-items: center;

	justify-content: center;

	gap: 10px 14px;

}



.zp-mp-pro-checkout-trust-divider {

	display: none;

	width: 1px;

	height: 32px;

	background: #e2e8f0;

	flex-shrink: 0;

}



@media (min-width: 380px) {

	.zp-mp-pro-checkout-trust-divider {

		display: inline-block;

	}

}



.zp-mp-pro-checkout-trust-yb {

	margin: 0;

	line-height: 0;

}



.zp-mp-pro-checkout-yb-logo {

	height: 34px;

	width: auto;

	max-width: 150px;

	object-fit: contain;

	vertical-align: middle;

}



.zp-mp-pro-checkout-trust-mp {

	display: flex;

	align-items: center;

	justify-content: center;

	gap: 8px;

	flex-wrap: wrap;

}



.zp-mp-pro-checkout-trust-text {

	font-size: 0.625rem;

	font-weight: 600;

	letter-spacing: 0.05em;

	text-transform: uppercase;

	color: #94a3b8;

	margin: 0;

	line-height: 1.2;

	white-space: nowrap;

}



.zp-mp-pro-checkout-trust-logo {

	flex: 0 0 auto;

	height: 28px;

	width: auto;

	max-width: 120px;

	object-fit: contain;

	vertical-align: middle;

}


/* Paso 2: solo tarjeta */

.zp-mp-pro-checkout-card-panel {

	flex: 1 1 auto;

	min-height: 0;

	display: flex;

	flex-direction: column;

	overflow: visible;

}



.zp-mp-pro-back-to-choice {

	flex: 0 0 auto;

	align-self: flex-start;

	margin: 10px 14px 0;

	padding: 6px 4px;

	border: 0;

	background: none;

	color: #2563eb;

	font-size: 0.8125rem;

	font-weight: 600;

	cursor: pointer;

	text-decoration: underline;

	text-underline-offset: 2px;

}



.zp-mp-pro-back-to-choice:hover {

	color: #1d4ed8;

}



#zp-mp-pro-brick-status {

	flex: 0 0 auto;

	min-height: 1.25rem;

	font-size: 0.875rem;

	color: #64748b;

	padding: 0 14px 8px;

}



#zp-mp-pro-brick-status.is-error {

	color: #b91c1c;

}



#zp-mp-pro-checkout-body {

	flex: 1 1 auto;

	min-height: 0;

	padding: 4px 16px 36px;

	overflow: visible;

}



/* Brick más compacto; padding abajo para que no recorte la línea inferior del Brick MP. */

.zp-mp-pro-brick-scale-wrap {

	width: 100%;

	max-width: 100%;

	overflow: hidden;

	box-sizing: border-box;

	transform: scale(0.86);

	transform-origin: top center;

	padding-bottom: 8px;

}

#zp-mp-card-brick-container,
#zp-mp-card-brick-container > div,
#zp-mp-card-brick-container iframe {
	border: none !important;
	box-shadow: none !important;
}

#zp-mp-card-brick-container hr {
	display: none !important;
	border: 0 !important;
	margin: 0 !important;
}



#zp-mp-pro-checkout-amount {

	margin: 10px 0 0;

	font-size: 1.0625rem;

	font-weight: 800;

	color: #c2410c;

	line-height: 1.35;

	letter-spacing: 0.01em;

}



#zp-mp-pro-checkout-amount-note {

	margin: 4px 0 0;

	padding: 0;

	font-size: 0.6875rem;

	font-weight: 500;

	line-height: 1.35;

	color: #64748b;

	max-width: 22rem;

}

/* Título /suscripcion-pro/ con badge PRO naranja */
.zp-subscribe-pro-page__title {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px 10px;
	margin: 0 0 12px;
	padding: 0;
	font-size: clamp(1.25rem, 4.2vw, 1.65rem);
	font-weight: 800;
	color: #2c3e50;
	line-height: 1.2;
	text-align: center;
}

.zp-subscribe-pro-page__title-text {
	display: inline;
}

.zp-subscribe-pro-page__title-suffix {
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
}

.zp-subscribe-pro-page__title-badge {
	font-size: 11px;
	padding: 6px 12px 6px 9px;
	line-height: 1;
	flex-shrink: 0;
	background: var(--zp-pro-badge-bg, linear-gradient(135deg, #fbbf24 0%, #ea580c 100%)) !important;
	color: var(--zp-pro-badge-color, #fff) !important;
	box-shadow: var(--zp-pro-badge-shadow, 0 2px 6px rgba(234, 88, 12, 0.25)) !important;
	border-color: transparent !important;
}

.zp-subscribe-pro-page__title-badge .yrl-pro-badge__icon {
	font-size: 15px !important;
}

