.jv-meru-checkout-card,
.jv-meru-hub,
.jv-meru-empty,
.jv-meru-fallback,
.jv-meru-payment-page {
	--jv-blue:#135cff;
	--jv-blue-dark:#004df0;
	--jv-cyan:#28c7ff;
	--jv-ink:#07111f;
	--jv-text:#34425f;
	--jv-muted:#63708a;
	--jv-line:rgba(19,92,255,.15);
	--jv-soft:#f8fbff;
	--jv-card:#fff;
	color:var(--jv-text);
	font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.jv-meru-payment-page {
	width:100%;
	background:
		radial-gradient(circle at 12% 0%,rgba(19,92,255,.07),transparent 28%),
		radial-gradient(circle at 88% 10%,rgba(40,199,255,.08),transparent 30%),
		linear-gradient(180deg,#f4f8fc 0%,#eef3f8 100%);
	padding:18px 0 34px;
}

.jv-meru-payment-shell {
	width:min(1160px,calc(100vw - 32px));
	margin:0 auto;
}

.jv-meru-payment-wrapper {
	position:relative;
	overflow:hidden;
	border:1px solid var(--jv-line);
	border-radius:30px;
	background:
		radial-gradient(circle at 9% 0%,rgba(19,92,255,.075),transparent 31%),
		radial-gradient(circle at 92% 5%,rgba(40,199,255,.11),transparent 30%),
		linear-gradient(180deg,#fff 0%,#f8fbff 100%);
	box-shadow:0 24px 70px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.78);
	padding:34px;
}

.jv-meru-payment-hero {
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);
	gap:24px;
	align-items:end;
	margin-bottom:22px;
}

.jv-meru-payment-kicker {
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:7px 11px;
	border-radius:999px;
	background:rgba(19,92,255,.08);
	border:1px solid rgba(19,92,255,.16);
	color:var(--jv-blue);
	font-weight:850;
	font-size:12px;
	line-height:1;
	text-transform:uppercase;
}

.jv-meru-payment-kicker:before {
	content:"";
	width:7px;
	height:7px;
	border-radius:999px;
	background:var(--jv-cyan);
	box-shadow:0 0 0 5px rgba(40,199,255,.14);
}

.jv-meru-payment-hero h1 {
	margin:14px 0 10px;
	color:var(--jv-ink);
	font-family:Manrope,Inter,system-ui,sans-serif;
	font-size:clamp(34px,4.6vw,58px);
	line-height:.98;
	letter-spacing:-.055em;
	font-weight:950;
}

.jv-meru-payment-hero p {
	margin:0;
	max-width:720px;
	font-size:17px;
	line-height:1.65;
	color:#5b6880;
	font-weight:520;
}

.jv-meru-payment-status {
	border:1px solid var(--jv-line);
	border-radius:20px;
	background:#fff;
	padding:18px;
	box-shadow:0 12px 28px rgba(15,23,42,.05);
}

.jv-meru-payment-status span {
	display:block;
	color:var(--jv-muted);
	font-size:12px;
	font-weight:750;
	text-transform:uppercase;
}

.jv-meru-payment-status strong {
	display:block;
	margin-top:5px;
	color:var(--jv-blue);
	font-size:18px;
}

.jv-meru-payment-help {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:14px;
	margin-top:18px;
}

.jv-meru-payment-help > div {
	border:1px solid rgba(19,92,255,.12);
	border-radius:18px;
	background:#fff;
	padding:18px;
}

.jv-meru-payment-help strong {
	display:block;
	color:var(--jv-ink);
	font-size:16px;
	margin-bottom:6px;
}

.jv-meru-payment-help p {
	margin:0;
	color:var(--jv-muted);
	font-size:13px;
	line-height:1.55;
}

.jv-meru-payment-footer-note {
	margin-top:18px;
	padding:16px;
	border-radius:18px;
	background:rgba(19,92,255,.06);
	border:1px solid rgba(19,92,255,.12);
	color:#465572;
	font-size:14px;
	line-height:1.6;
}

.jv-meru-checkout-card,
.jv-meru-hub,
.jv-meru-empty,
.jv-meru-fallback {
	border:1px solid var(--jv-line);
	border-radius:24px;
	background:
		radial-gradient(circle at 10% 0%,rgba(19,92,255,.08),transparent 32%),
		radial-gradient(circle at 92% 3%,rgba(40,199,255,.10),transparent 30%),
		linear-gradient(180deg,#fff 0%,#f8fbff 100%);
	box-shadow:0 18px 50px rgba(15,23,42,.07);
	padding:22px;
	margin:18px 0;
}

.jv-meru-badge,
.jv-meru-pill,
.jv-meru-card-label {
	display:inline-flex;
	align-items:center;
	width:max-content;
	padding:7px 11px;
	border-radius:999px;
	background:rgba(19,92,255,.08);
	border:1px solid rgba(19,92,255,.16);
	color:var(--jv-blue);
	font-weight:850;
	font-size:12px;
	line-height:1;
}

.jv-meru-description p,
.jv-meru-note,
.jv-meru-rate-note,
.jv-meru-small {
	color:var(--jv-muted);
	font-size:14px;
	line-height:1.55;
}

.jv-meru-checkout-summary,
.jv-meru-summary-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:12px;
	margin:18px 0;
}

.jv-meru-checkout-summary {
	grid-template-columns:repeat(3,minmax(0,1fr));
}

.jv-meru-checkout-summary > div,
.jv-meru-summary-grid > div {
	background:#fff;
	border:1px solid var(--jv-line);
	border-radius:16px;
	padding:14px;
}

.jv-meru-checkout-summary span,
.jv-meru-summary-grid span {
	display:block;
	font-size:12px;
	color:var(--jv-muted);
	margin-bottom:5px;
}

.jv-meru-checkout-summary strong,
.jv-meru-summary-grid strong {
	display:block;
	color:var(--jv-ink);
	font-size:17px;
	word-break:break-word;
}

.jv-meru-mini-steps {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:10px;
	margin:16px 0;
}

.jv-meru-mini-steps > div {
	display:flex;
	align-items:center;
	gap:9px;
	background:rgba(19,92,255,.06);
	border:1px solid rgba(19,92,255,.10);
	border-radius:14px;
	padding:11px;
}

.jv-meru-mini-steps strong {
	display:grid;
	place-items:center;
	width:28px;
	height:28px;
	border-radius:50%;
	background:var(--jv-blue);
	color:#fff;
	font-size:13px;
	flex:0 0 auto;
}

.jv-meru-mini-steps span {
	font-size:13px;
	font-weight:750;
	color:var(--jv-ink);
}

.jv-meru-hero {
	display:flex;
	justify-content:space-between;
	gap:20px;
	align-items:flex-start;
	margin-bottom:18px;
}

.jv-meru-hero h2 {
	margin:12px 0 8px;
	color:var(--jv-ink);
	font-size:clamp(26px,3vw,40px);
	line-height:1.06;
	font-weight:900;
	letter-spacing:-.045em;
}

.jv-meru-hero p {
	margin:0;
	color:var(--jv-muted);
	max-width:780px;
	line-height:1.65;
}

.jv-meru-status-card {
	min-width:190px;
	border-radius:18px;
	padding:16px;
	border:1px solid var(--jv-line);
	background:rgba(19,92,255,.07);
}

.jv-meru-status-card span {
	display:block;
	color:var(--jv-muted);
	font-size:12px;
}

.jv-meru-status-card strong {
	display:block;
	color:var(--jv-blue-dark);
	margin-top:4px;
	font-size:16px;
}

.jv-meru-methods {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:16px;
	margin-top:22px;
}

.jv-meru-method-card {
	position:relative;
	border:1px solid var(--jv-line);
	border-radius:20px;
	padding:18px;
	background:#fff;
	box-shadow:0 12px 30px rgba(15,23,42,.045);
}

.jv-meru-method-card h3 {
	margin:12px 0 8px;
	color:var(--jv-ink);
	font-size:21px;
	line-height:1.15;
	font-weight:900;
	letter-spacing:-.035em;
}

.jv-meru-method-card p {
	margin:0 0 14px;
	color:var(--jv-muted);
	line-height:1.55;
}

.jv-meru-recommended {
	border-color:rgba(19,92,255,.38);
	box-shadow:0 18px 46px rgba(19,92,255,.12);
}

.jv-meru-recommended::after {
	content:"Recomendado";
	position:absolute;
	top:16px;
	right:16px;
	padding:6px 9px;
	border-radius:999px;
	background:#eef4ff;
	color:var(--jv-blue);
	font-size:11px;
	font-weight:900;
}

.jv-meru-data-list {
	list-style:none;
	margin:14px 0;
	padding:0;
	border-top:1px solid #edf2f7;
}

.jv-meru-data-list li {
	display:grid;
	grid-template-columns:1fr 1.4fr auto;
	gap:10px;
	align-items:center;
	padding:10px 0;
	border-bottom:1px solid #edf2f7;
	font-size:13px;
}

.jv-meru-data-list span {
	color:var(--jv-muted);
}

.jv-meru-data-list strong {
	color:var(--jv-ink);
	word-break:break-word;
}

.jv-meru-copy-btn {
	border:1px solid var(--jv-line);
	background:#fff;
	color:var(--jv-blue);
	font-weight:800;
	border-radius:10px;
	padding:7px 9px;
	cursor:pointer;
	font-size:12px;
}

.jv-meru-copy-btn:hover,
.jv-meru-copy-btn.is-copied {
	background:#eef4ff;
}

.jv-meru-actions {
	display:flex;
	flex-wrap:wrap;
	gap:9px;
}

.jv-meru-btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	min-height:44px;
	padding:0 16px;
	border-radius:13px;
	font-weight:850;
	font-size:14px;
	text-decoration:none!important;
	border:1px solid transparent;
	transition:transform .18s ease,box-shadow .18s ease;
}

.jv-meru-btn:hover {
	transform:translateY(-1px);
	box-shadow:0 10px 22px rgba(15,23,42,.12);
}

.jv-meru-btn-primary {
	background:linear-gradient(135deg,var(--jv-blue),var(--jv-blue-dark));
	color:#fff!important;
}

.jv-meru-btn-dark {
	background:var(--jv-ink);
	color:#fff!important;
}

.jv-meru-btn-light {
	background:#fff;
	color:var(--jv-blue)!important;
	border-color:var(--jv-line);
}

.jv-meru-details {
	margin-top:16px;
	border:1px solid var(--jv-line);
	border-radius:18px;
	background:#fff;
	overflow:hidden;
}

.jv-meru-details summary {
	cursor:pointer;
	padding:16px 18px;
	font-weight:900;
	color:var(--jv-ink);
	list-style:none;
}

.jv-meru-details summary::-webkit-details-marker {
	display:none;
}

.jv-meru-details .jv-meru-method-card {
	border:0;
	box-shadow:none;
	border-radius:0;
}

.jv-meru-extra-note {
	margin-top:16px;
	border:1px solid rgba(19,92,255,.12);
	background:#fbfdff;
	border-radius:16px;
	padding:14px;
	color:var(--jv-muted);
}

.jv-meru-empty {
	text-align:center;
	font-size:16px;
}

@media (max-width: 980px) {
	.jv-meru-payment-wrapper {
		padding:22px;
		border-radius:24px;
	}

	.jv-meru-payment-hero,
	.jv-meru-payment-help,
	.jv-meru-hero {
		grid-template-columns:1fr;
		flex-direction:column;
	}

	.jv-meru-payment-shell {
		width:calc(100vw - 18px);
	}

	.jv-meru-status-card {
		width:100%;
	}

	.jv-meru-checkout-summary,
	.jv-meru-summary-grid,
	.jv-meru-methods,
	.jv-meru-mini-steps {
		grid-template-columns:1fr;
	}

	.jv-meru-data-list li {
		grid-template-columns:1fr;
		gap:4px;
	}

	.jv-meru-copy-btn {
		width:max-content;
	}
}
.jv-meru-fee-breakdown {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 14px 0;
	padding: 12px;
	border: 1px solid rgba(19, 92, 255, .13);
	border-radius: 16px;
	background: rgba(255, 255, 255, .74);
}

.jv-meru-fee-breakdown > div {
	padding: 10px 12px;
	border-radius: 12px;
	background: rgba(19, 92, 255, .045);
	color: var(--jv-muted);
	font-size: 13px;
	line-height: 1.45;
}

.jv-meru-fee-breakdown strong {
	display: block;
	color: var(--jv-ink);
	font-size: 12px;
	margin-bottom: 3px;
}

.jv-meru-fee-breakdown-hub {
	margin-top: 12px;
	margin-bottom: 20px;
}

@media (max-width: 980px) {
	.jv-meru-fee-breakdown {
		grid-template-columns: 1fr;
	}
}
