/* VSFW EFT — scoped only to the EFT gateway. */
.vsfw-checkout #order_review .wc_payment_methods > li.wc_payment_method.payment_method_vsfw_eft:has(> input[name="payment_method"]:checked){
    border-color:#7fb490!important;
    background:#f6faf7!important;
    box-shadow:inset 0 0 0 1px #7fb490!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .payment_box.payment_method_vsfw_eft{
    background:inherit!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .payment_box.payment_method_vsfw_eft::before{
    display:none!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-checkout-copy{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:inherit!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank-select-label{
    display:block!important;
    width:100%!important;
    margin:8px 0 5px!important;
    font-weight:700!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank-select{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-height:44px!important;
    margin:0 0 10px!important;
    padding:9px 11px!important;
    border:1px solid #d8e0da!important;
    border-radius:10px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank-panels{
    width:100%!important;
    min-width:0!important;
    background:inherit!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:14px!important;
    border:1px solid #d8e0da!important;
    border-radius:12px!important;
    background:inherit!important;
    box-sizing:border-box!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank[hidden]{
    display:none!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank h4{
    margin:0 0 10px!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank dl{
    margin:0!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank dl > div{
    display:grid!important;
    grid-template-columns:minmax(110px,.85fr) minmax(0,1.15fr)!important;
    gap:10px!important;
    margin:0 0 6px!important;
}
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank dt,
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank dd{
    float:none!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    text-align:left!important;
}
@media(max-width:520px){
    .vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank dl > div{
        grid-template-columns:1fr!important;
        gap:2px!important;
    }
}


/* VSFW 2.6.43 — Buyer Portal proof-of-payment card */
.vsfw-eft-panel{
	text-align:left!important;
	padding:26px!important;
}
.vsfw-eft-panel *{
	text-align:left;
}
.vsfw-eft-panel-head{
	display:flex!important;
	align-items:flex-start!important;
	justify-content:space-between!important;
	gap:18px!important;
	margin-bottom:18px!important;
}
.vsfw-eft-panel .vsfw-eft-kicker{
	display:block!important;
	margin:0 0 4px!important;
	color:#1f7a3f!important;
	font-size:10px!important;
	font-weight:800!important;
	letter-spacing:.08em!important;
	line-height:1.2!important;
}
.vsfw-eft-panel h2{
	margin:0!important;
	color:#111713!important;
	font-size:24px!important;
	line-height:1.08!important;
	font-weight:750!important;
}
.vsfw-eft-panel .vsfw-eft-status{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:auto!important;
	padding:6px 10px!important;
	border-radius:999px!important;
	background:#eef5ef!important;
	color:#536159!important;
	font-size:10px!important;
	font-weight:700!important;
	line-height:1!important;
	white-space:nowrap!important;
}
.vsfw-eft-bank-update{
	margin:0 0 16px!important;
}
.vsfw-eft-order-bank-selector>label{
	display:block!important;
	margin:0 0 10px!important;
}
.vsfw-eft-order-bank-selector>label>span{
	display:block!important;
	margin:0 0 6px!important;
	color:#536159!important;
	font-size:11px!important;
	font-weight:750!important;
}
.vsfw-eft-panel .vsfw-eft-bank-select{
	width:100%!important;
	min-height:44px!important;
	padding:9px 12px!important;
	border:1px solid #d8e0da!important;
	border-radius:10px!important;
	background:#fff!important;
	font-size:13px!important;
	font-weight:600!important;
	box-sizing:border-box!important;
}
.vsfw-eft-panel .vsfw-eft-bank-panels{
	margin-top:10px!important;
}
.vsfw-eft-panel .vsfw-eft-bank{
	width:100%!important;
	margin:0!important;
	padding:16px!important;
	border:1px solid #dce5de!important;
	border-radius:14px!important;
	background:#f8faf8!important;
	box-sizing:border-box!important;
}
.vsfw-eft-panel .vsfw-eft-bank[hidden]{display:none!important}
.vsfw-eft-panel .vsfw-eft-bank h4{
	margin:0 0 12px!important;
	color:#111713!important;
	font-size:15px!important;
	font-weight:750!important;
}
.vsfw-eft-panel .vsfw-eft-bank dl{
	margin:0!important;
	padding:0!important;
}
.vsfw-eft-panel .vsfw-eft-bank dl>div{
	display:grid!important;
	grid-template-columns:130px minmax(0,1fr)!important;
	gap:12px!important;
	margin:0 0 8px!important;
	align-items:start!important;
}
.vsfw-eft-panel .vsfw-eft-bank dt,
.vsfw-eft-panel .vsfw-eft-bank dd{
	float:none!important;
	width:auto!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
	text-align:left!important;
	font-size:12px!important;
	line-height:1.35!important;
}
.vsfw-eft-panel .vsfw-eft-bank dt{
	color:#647168!important;
	font-weight:700!important;
}
.vsfw-eft-panel .vsfw-eft-bank dd{
	color:#111713!important;
	font-weight:650!important;
}
.vsfw-eft-bank-update-actions{
	display:flex!important;
	align-items:center!important;
	flex-wrap:wrap!important;
	gap:10px!important;
	margin-top:10px!important;
}
.vsfw-eft-bank-update-actions .vsfw-button{
	min-height:38px!important;
	padding:9px 15px!important;
	border:1px solid #d7dfd9!important;
	border-radius:999px!important;
	background:#fff!important;
	color:#1f472e!important;
	font-size:11px!important;
	font-weight:700!important;
}
.vsfw-eft-bank-update-actions small{
	color:#6d7871!important;
	font-size:10px!important;
}
.vsfw-eft-panel .vsfw-eft-instructions{
	margin:14px 0 18px!important;
	color:#4f5c54!important;
	font-size:11px!important;
	line-height:1.45!important;
}
.vsfw-eft-upload{
	display:flex!important;
	align-items:end!important;
	flex-wrap:wrap!important;
	gap:10px!important;
	margin-top:14px!important;
	padding-top:16px!important;
	border-top:1px solid #e3e8e4!important;
}
.vsfw-eft-upload label{
	display:grid!important;
	gap:5px!important;
	flex:1 1 260px!important;
	color:#536159!important;
	font-size:11px!important;
	font-weight:700!important;
}
.vsfw-eft-upload input[type=file]{
	width:100%!important;
	min-height:40px!important;
	padding:8px!important;
	border:1px solid #d8e0da!important;
	border-radius:9px!important;
	background:#fff!important;
	box-sizing:border-box!important;
}
.vsfw-eft-upload .vsfw-button{
	min-height:40px!important;
	padding:9px 17px!important;
	border-radius:999px!important;
}
.vsfw-eft-email-fallback{
	margin:12px 0 0!important;
	color:#647168!important;
	font-size:10px!important;
}
@media(max-width:520px){
	.vsfw-eft-panel{padding:20px!important}
	.vsfw-eft-panel-head{flex-direction:column!important}
	.vsfw-eft-panel .vsfw-eft-bank dl>div{grid-template-columns:1fr!important;gap:2px!important}
}


/* v2.6.47 — checkout EFT bank card sizing */
.vsfw-checkout #order_review .payment_method_vsfw_eft .vsfw-eft-bank {
    display: block!important;
    width: 100%!important;
    max-width: none!important;
    min-width: 0!important;
    margin: 0!important;
    padding: 14px!important;
    border: 1px solid #d8e0da!important;
    border-radius: 12px!important;
    background: #ffffff!important;
    box-sizing: border-box!important;
}


/* v2.6.47 — keep cart shipping summary compact; full fulfilment detail belongs at checkout */
.vsfw-cart .woocommerce-shipping-methods .vsfw-lmc-capacity,
.vsfw-cart .woocommerce-shipping-methods .vsfw-lmc-details,
.vsfw-cart .woocommerce-shipping-methods .vsfw-lmc-description,
.vsfw-cart .woocommerce-shipping-methods .vsfw-lmc-collection-options,
.vsfw-cart .woocommerce-shipping-methods .vsfw-shipping-address,
.vsfw-cart .woocommerce-shipping-methods small,
.vsfw-cart .woocommerce-shipping-methods br + span {
    display: none!important;
}
