/* ============================= */
/*         VELAR CHECKOUT        */
/* ============================= */

.checkout_form{
--vc-accent:rgb(0,52,156);
--vc-accent-hover:rgb(0,44,132);
--vc-text:#111827;
--vc-muted:#6b7280;
--vc-border:rgba(17,24,39,.14);
--vc-focus:rgba(0,52,156,.18);
--vc-radius:14px;
--vc-radius-input:12px;
--vc-shadow:0 10px 26px rgba(0,0,0,.05);
font-family:"Cairo",system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;
}

/* Card */
.checkout_form .contact-info-heading{
background:linear-gradient(180deg,rgba(0,52,156,.06),#fff 55%);
border:1px solid rgba(0,52,156,.14);
border-radius:var(--vc-radius);
box-shadow:var(--vc-shadow);
overflow:hidden;
}

.checkout_form .contact-info-heading>svg{
display:none;
}

/* Inputs */
.checkout_form .global_input,
.checkout_form .global_textarea{
background:#fff;
border:1px solid rgba(17,24,39,.18);
border-radius:var(--vc-radius-input);
transition:border-color .15s ease,box-shadow .15s ease;
}

.checkout_form .global_input:focus,
.checkout_form .global_textarea:focus{
outline:none;
border-color:rgba(0,52,156,.55);
box-shadow:0 0 0 4px var(--vc-focus);
}

/* React Select */
.checkout_form .gov_select .select__control{
background:#fff;
border:1px solid rgba(17,24,39,.18);
border-radius:var(--vc-radius-input);
box-shadow:none;
min-height:48px;
}

.checkout_form .gov_select .select__control--is-focused{
border-color:rgba(0,52,156,.55);
box-shadow:0 0 0 4px var(--vc-focus);
}

/* Buy Button */
.checkout_form .checkout_buy_now{
background:var(--vc-accent);
color:#fff;
border-radius:12px;
font-weight:900;
box-shadow:0 12px 24px rgba(0,52,156,.16);
transition:background .15s ease,transform .12s ease;
}

.checkout_form .checkout_buy_now:hover{
background:var(--vc-accent-hover);
transform:translateY(-1px);
}

/* ============================= */
/*         ORDER SUMMARY         */
/* ============================= */

.checkout_order_summary{
--vs-accent:rgb(0,52,156);
--vs-border:rgba(17,24,39,.12);
--vs-shadow:0 14px 38px rgba(0,0,0,.08);
--vs-radius:16px;
font-family:"Cairo",system-ui;
}

.checkout_order_summary>.mx-auto{
background:#fff;
border:1px solid var(--vs-border);
border-radius:var(--vs-radius);
box-shadow:var(--vs-shadow);
padding:14px;
}

/* Title */
.checkout_order_summary #summary-heading{
text-align:center;
font-weight:900;
font-size:22px;
position:relative;
padding-bottom:10px;
}

.checkout_order_summary #summary-heading::after{
content:"";
position:absolute;
left:50%;
bottom:0;
transform:translateX(-50%);
width:120px;
height:4px;
border-radius:999px;
background:linear-gradient(90deg,rgba(0,52,156,0),var(--vs-accent),rgba(0,52,156,0));
}

/* Items */
.checkout_order_summary li.cart-item{
padding:14px 0;
border-color:rgba(17,24,39,.08);
border-radius:14px;
transition:transform .16s ease;
}

.checkout_order_summary li.cart-item:hover{
background:rgba(0,52,156,.03);
transform:translateY(-1px);
}

.checkout_order_summary .h-24.w-24{
width:88px;
height:88px;
border-radius:14px;
overflow:hidden;
}

/* Quantity Buttons */
.checkout_order_summary .cart-item-quantity-counter button{
width:34px;
height:34px;
display:grid;
place-items:center;
border-radius:10px;
border:1px solid rgba(17,24,39,.16);
background:#fff;
transition:.15s;
}

.checkout_order_summary .cart-item-quantity-counter button:hover{
background:rgba(0,52,156,.06);
}

/* Trash */
.checkout_order_summary .cart-item-quantity-counter button[type="button"]{
border:1px solid rgba(220,38,38,.2);
background:rgba(220,38,38,.06);
}

/* Totals */
.checkout_order_summary dl{
margin-top:12px;
padding-top:12px;
border-top:1px solid rgba(17,24,39,.08);
}

.checkout_order_summary dl> .border-t dd{
font-size:20px;
font-weight:900;
color:var(--vs-accent);
}

/* Shipping Badge */
.checkout_order_summary .shipping_cost_container .shipping_cost{
display:inline-flex;
align-items:center;
gap:8px;
padding:7px 12px;
border-radius:999px;
font-size:12.5px;
font-weight:900;
color:#065f46;
background:#ecfdf5;
border:1px solid #a7f3d0;
}

.checkout_order_summary .shipping_cost_container .shipping_cost::before{
content:"";
width:7px;
height:7px;
border-radius:999px;
background:#10b981;
display:inline-block;
}