.wcigr-upi-box{
	border:1px solid #e2e8f0;
	border-radius:16px;
	background:#fff;
	box-shadow:0 10px 30px rgba(15,23,42,.06);
	padding:14px 14px 12px;
	margin:12px 0 16px;
}
.wcigr-upi-box--preview{
	background:linear-gradient(180deg,#f8fafc 0%,#fff 70%);
}
.wcigr-upi-box--pay{
	border-width:2px;
	border-color:#c7d2fe;
	background:linear-gradient(180deg,#f8fafc 0%,#fff 55%);
}
.wcigr-upi-pay-summary{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px;
	margin:0 0 14px;
}
.wcigr-upi-pay-summary__order,
.wcigr-upi-pay-summary__total{
	padding:12px 14px;
	border-radius:14px;
	border:1px solid #e2e8f0;
	background:#fff;
	box-shadow:0 4px 14px rgba(15,23,42,.05);
}
.wcigr-upi-pay-summary span{
	display:block;
	font-size:11px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.05em;
	color:#64748b;
	margin-bottom:6px;
}
.wcigr-upi-pay-summary strong{
	display:block;
	font-size:clamp(15px,4vw,18px);
	font-weight:900;
	color:#0f172a;
	line-height:1.2;
	word-break:break-word;
}
.wcigr-upi-pay-summary__total strong{
	color:#15803d;
}
@media (max-width:420px){
	.wcigr-upi-pay-summary{
		grid-template-columns:1fr;
	}
}
.wcigr-upi-kicker{
	margin:0 0 12px;
	padding:10px 12px;
	font-size:13px;
	font-weight:700;
	line-height:1.35;
	color:#1e3a8a;
	background:linear-gradient(90deg,#eff6ff 0%,#eef2ff 100%);
	border:1px solid #bfdbfe;
	border-radius:12px;
}
.wcigr-upi-vpa-hero{
	margin:12px 0 14px;
	padding:12px 14px;
	border-radius:14px;
	background:#fff;
	border:2px solid #e2e8f0;
	box-shadow:0 4px 14px rgba(15,23,42,.06);
}
.wcigr-upi-vpa-hero__label{
	font-size:11px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.06em;
	color:#64748b;
	margin-bottom:8px;
}
.wcigr-upi-vpa-hero__row{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	gap:10px;
}
.wcigr-upi-vpa-hero__value{
	flex:1;
	min-width:0;
	display:block;
	padding:12px 14px;
	font-size:clamp(15px,3.8vw,18px);
	font-weight:800;
	font-family:ui-monospace,Consolas,monospace;
	color:#0f172a;
	background:#f8fafc;
	border:1px solid #e2e8f0;
	border-radius:12px;
	word-break:break-all;
	line-height:1.35;
}
button.wcigr-upi-copy{
	flex:0 0 auto;
	align-self:center;
	padding:12px 16px !important;
	font-weight:800 !important;
	font-size:13px !important;
	border-radius:12px !important;
	background:#fff !important;
	color:#2563eb !important;
	border:2px solid #2563eb !important;
	box-shadow:none !important;
	white-space:nowrap;
	cursor:pointer;
}
button.wcigr-upi-copy:active{
	transform:scale(.98);
}
.wcigr-upi-qrwrap--pay .wcigr-upi-qr{
	transform:scale(1.02);
}
.wcigr-upi-meta__amount{
	font-size:1.05rem !important;
}
.wcigr-upi-meta__amount strong{
	font-size:1.15rem;
	color:#15803d;
}
@media (max-width:420px){
	.wcigr-upi-vpa-hero__row{
		flex-direction:column;
	}
	button.wcigr-upi-copy{
		width:100%;
	}
}
.wcigr-upi-head{
	display:flex;
	flex-direction:column;
	gap:2px;
	margin-bottom:10px;
}
.wcigr-upi-head strong{
	font-size:15px;
	font-weight:800;
	letter-spacing:-.01em;
}
.wcigr-upi-sub{
	font-size:12px;
	color:#64748b;
}
.wcigr-upi-qrwrap{
	display:flex;
	justify-content:center;
	padding:10px 0 12px;
}
.wcigr-upi-qr{
	border-radius:14px;
	border:1px solid #e2e8f0;
	background:#fff;
	padding:8px;
	box-sizing:border-box;
}
.wcigr-upi-meta{
	display:grid;
	grid-template-columns:1fr;
	gap:10px;
	margin:6px 0 12px;
}
.wcigr-upi-meta > div{
	display:flex;
	justify-content:space-between;
	gap:10px;
	align-items:baseline;
}
.wcigr-upi-meta span{
	font-size:12px;
	color:#64748b;
}
.wcigr-upi-meta code{
	font-family:Consolas,monospace;
	font-size:12px;
}
.wcigr-upi-actions{
	display:flex;
	gap:10px;
}
.wcigr-upi-paynow{
	display:inline-flex !important;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:46px;
	border-radius:14px !important;
	border:0 !important;
	background:linear-gradient(135deg,#16a34a,#22c55e) !important;
	color:#fff !important;
	font-weight:900 !important;
	box-shadow:0 10px 28px rgba(34,197,94,.22) !important;
	text-decoration:none !important;
}
.wcigr-upi-note{
	margin:10px 0 0;
	font-size:12px;
	color:#475569;
	line-height:1.35;
}

.wcigr-upi-app-hints{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px 10px;
	margin:0 0 10px;
}
.wcigr-upi-app-hints__item{
	display:inline-flex;
	align-items:center;
	line-height:0;
	border-radius:10px;
	overflow:hidden;
	box-shadow:0 2px 8px rgba(15,23,42,.08);
}
.wcigr-upi-app-hints__item img{
	display:block;
	height:28px;
	width:auto;
	max-width:min(112px,100%);
	vertical-align:top;
}
.wcigr-upi-app-hints__caption{
	margin:0 0 12px;
	font-size:11px;
	font-weight:600;
	color:#64748b;
	line-height:1.35;
}

/*
 * In-app browsers / Android WebViews often use a fixed bottom bar (app nav + system bar).
 * Without extra space, the Place order button sits under that chrome and looks "missing".
 */
@media screen and (max-width: 782px) {
	body.woocommerce-checkout form.checkout,
	body.woocommerce-page.woocommerce-checkout form.checkout {
		padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px));
	}
	body.woocommerce-checkout #order_review,
	body.woocommerce-page.woocommerce-checkout #order_review {
		padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
	}
	body.woocommerce-checkout #place_order,
	body.woocommerce-page.woocommerce-checkout #place_order {
		scroll-margin-bottom: calc(104px + env(safe-area-inset-bottom, 0px));
	}
	/* WooCommerce Blocks checkout (if used) */
	.wc-block-checkout {
		padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)) !important;
	}
	.wc-block-components-checkout-place-order-button {
		scroll-margin-bottom: calc(104px + env(safe-area-inset-bottom, 0px));
	}
}
