
:root{
 --amb-blue:#0757D6;
 --amb-blue-dark:#064AB6;
 --amb-blue-soft:#EEF5FF;
 --amb-navy:#07113B;
 --amb-text:#344054;
 --amb-muted:#667085;
 --amb-border:#E5EAF2;
 --amb-bg:#F7F9FC;
 --amb-white:#fff;
}

.ambishop-modern-cart-page .site-main,
.ambishop-modern-checkout-page .site-main,
.ambishop-modern-cart-page main,
.ambishop-modern-checkout-page main{
  background:var(--amb-bg);
}

.ambishop-modern-cart-page .woocommerce,
.ambishop-modern-checkout-page .woocommerce{
 max-width:1380px;
 margin:0 auto;
 padding:28px 24px 70px;
 font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 color:var(--amb-text);
}

.amb-cart-hero{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:28px;
 padding:28px 30px;
 border-radius:24px;
 background:linear-gradient(135deg,#EEF5FF 0%,#FFFFFF 55%,#EAF3FF 100%);
 border:1px solid #DCE8FB;
 box-shadow:0 10px 30px rgba(7,17,59,.05);
 margin:0 0 26px;
}
.amb-cart-kicker{
 display:block;
 color:var(--amb-blue);
 text-transform:uppercase;
 letter-spacing:.09em;
 font-weight:800;
 font-size:12px;
 margin-bottom:5px;
}
.amb-cart-hero h1{
 margin:0 0 6px;
 color:var(--amb-navy);
 font-size:34px;
 line-height:1.05;
}
.amb-cart-hero p{
 margin:0;
 color:var(--amb-muted);
 max-width:650px;
}
.amb-cart-steps{
 display:flex;
 align-items:center;
 gap:10px;
 flex-wrap:nowrap;
}
.amb-cart-steps span{
 display:flex;
 align-items:center;
 gap:8px;
 white-space:nowrap;
 color:#98A2B3;
 font-size:13px;
 font-weight:700;
}
.amb-cart-steps span b{
 width:30px;height:30px;border-radius:50%;
 display:grid;place-items:center;
 background:#E7ECF3;
 color:#667085;
 font-size:12px;
}
.amb-cart-steps span.is-active{color:var(--amb-blue)}
.amb-cart-steps span.is-active b{background:var(--amb-blue);color:#fff}
.amb-cart-steps i{display:block;width:34px;height:2px;background:#DDE3EC}

/* CART */
.ambishop-modern-cart-page .woocommerce-cart-form{
 width:64%;
 float:left;
}
.ambishop-modern-cart-page .cart-collaterals{
 width:33%;
 float:right;
}
.ambishop-modern-cart-page .woocommerce:after{content:"";display:block;clear:both}

.ambishop-modern-cart-page table.shop_table{
 border:0!important;
 border-collapse:separate!important;
 border-spacing:0!important;
 border-radius:20px!important;
 overflow:hidden;
 background:#fff;
 box-shadow:0 8px 28px rgba(7,17,59,.05);
}
.ambishop-modern-cart-page table.shop_table thead th{
 background:#F7F9FC;
 color:var(--amb-navy);
 font-size:13px;
 text-transform:uppercase;
 letter-spacing:.04em;
 padding:16px!important;
 border-bottom:1px solid var(--amb-border)!important;
}
.ambishop-modern-cart-page table.shop_table td{
 padding:18px 16px!important;
 border-top:0!important;
 border-bottom:1px solid #EEF1F5!important;
 vertical-align:middle!important;
}
.ambishop-modern-cart-page table.shop_table tr:last-child td{border-bottom:0!important}

.ambishop-modern-cart-page td.product-thumbnail img{
 width:78px!important;
 height:78px!important;
 object-fit:cover;
 border-radius:14px;
 background:#F5F7FB;
 padding:6px;
}
.amb-cart-product-name,
.ambishop-modern-cart-page td.product-name a{
 color:var(--amb-navy)!important;
 font-weight:800!important;
 font-size:15px!important;
 text-decoration:none!important;
}
.ambishop-modern-cart-page td.product-name .variation{
 margin-top:7px!important;
 font-size:13px;
 color:var(--amb-muted);
}
.ambishop-modern-cart-page td.product-name .variation dt{
 font-weight:700;
 color:#475467;
}
.ambishop-modern-cart-page td.product-price,
.ambishop-modern-cart-page td.product-subtotal{
 font-weight:800;
 color:var(--amb-navy);
}
.ambishop-modern-cart-page a.remove{
 display:grid!important;
 place-items:center;
 width:30px!important;height:30px!important;
 border-radius:50%!important;
 background:#FFF1F1!important;
 color:#D92D20!important;
 font-size:20px!important;
 line-height:1!important;
 text-decoration:none!important;
}
.ambishop-modern-cart-page a.remove:hover{
 background:#D92D20!important;color:#fff!important;
}

.ambishop-modern-cart-page .quantity .qty{
 width:72px!important;
 height:44px!important;
 border:1px solid #DDE3EC!important;
 border-radius:12px!important;
 padding:8px!important;
 text-align:center;
 font-weight:700;
 color:var(--amb-navy);
 background:#fff;
}

/* Coupon/actions */
.ambishop-modern-cart-page .coupon{
 display:flex!important;
 gap:10px;
 align-items:center;
}
.ambishop-modern-cart-page .coupon #coupon_code{
 min-width:190px;
 height:44px;
 border:1px solid #DDE3EC!important;
 border-radius:12px!important;
 padding:0 13px!important;
}
.ambishop-modern-cart-page button.button,
.ambishop-modern-cart-page a.button,
.ambishop-modern-checkout-page button.button,
.ambishop-modern-checkout-page a.button{
 border-radius:999px!important;
 min-height:44px;
 padding:0 20px!important;
 font-weight:800!important;
 border:0!important;
 transition:.2s ease;
}
.ambishop-modern-cart-page .coupon button.button{
 background:var(--amb-blue)!important;
 color:#fff!important;
}
.ambishop-modern-cart-page button[name="update_cart"]{
 background:#EAF2FF!important;
 color:var(--amb-blue)!important;
}
.ambishop-modern-cart-page button[name="update_cart"]:not(:disabled):hover,
.ambishop-modern-cart-page .coupon button.button:hover{
 background:var(--amb-blue-dark)!important;
 color:#fff!important;
}

/* Totals card */
.ambishop-modern-cart-page .cart_totals{
 width:100%!important;
 background:#fff;
 padding:22px;
 border-radius:20px;
 border:1px solid var(--amb-border);
 box-shadow:0 8px 28px rgba(7,17,59,.05);
}
.ambishop-modern-cart-page .cart_totals h2{
 margin:0 0 15px;
 color:var(--amb-navy);
 font-size:22px;
}
.ambishop-modern-cart-page .cart_totals table{
 box-shadow:none!important;
 border:0!important;
}
.ambishop-modern-cart-page .cart_totals th,
.ambishop-modern-cart-page .cart_totals td{
 padding:15px 0!important;
 border-bottom:1px solid #EEF1F5!important;
}
.ambishop-modern-cart-page .cart_totals th{color:var(--amb-navy);font-weight:800}
.ambishop-modern-cart-page .order-total th,
.ambishop-modern-cart-page .order-total td{
 font-size:18px!important;
 color:var(--amb-navy)!important;
}
.ambishop-modern-cart-page .wc-proceed-to-checkout{
 padding:18px 0 0!important;
}
.ambishop-modern-cart-page .wc-proceed-to-checkout a.checkout-button{
 display:flex!important;
 justify-content:center;
 align-items:center;
 min-height:56px;
 background:var(--amb-blue)!important;
 color:#fff!important;
 font-size:17px!important;
 box-shadow:0 8px 20px rgba(7,87,214,.20);
}
.ambishop-modern-cart-page .wc-proceed-to-checkout a.checkout-button:hover{
 background:var(--amb-blue-dark)!important;
 transform:translateY(-1px);
}

/* Shipping */
.ambishop-modern-cart-page ul#shipping_method{
 margin:0!important;
}
.ambishop-modern-cart-page ul#shipping_method li{
 margin:7px 0!important;
 padding:0!important;
 color:var(--amb-text);
}
.ambishop-modern-cart-page ul#shipping_method input[type="radio"]{
 accent-color:var(--amb-blue);
}
.ambishop-modern-cart-page .shipping-calculator-button{
 color:var(--amb-blue)!important;
 font-weight:700;
}

/* notices */
.ambishop-modern-cart-page .woocommerce-message,
.ambishop-modern-cart-page .woocommerce-info,
.ambishop-modern-cart-page .woocommerce-error,
.ambishop-modern-checkout-page .woocommerce-message,
.ambishop-modern-checkout-page .woocommerce-info,
.ambishop-modern-checkout-page .woocommerce-error{
 border:0!important;
 border-radius:14px;
 background:#fff;
 box-shadow:0 6px 20px rgba(7,17,59,.05);
 padding:16px 18px 16px 48px!important;
}

/* CHECKOUT */
.ambishop-modern-checkout-page form.checkout{
 display:grid;
 grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
 gap:28px;
 align-items:start;
}
.ambishop-modern-checkout-page #customer_details,
.ambishop-modern-checkout-page #order_review{
 background:#fff;
 border:1px solid var(--amb-border);
 border-radius:20px;
 padding:24px;
 box-shadow:0 8px 28px rgba(7,17,59,.05);
}
.ambishop-modern-checkout-page #order_review_heading{
 margin:0 0 14px;
 color:var(--amb-navy);
 font-size:22px;
}
.ambishop-modern-checkout-page form .form-row input.input-text,
.ambishop-modern-checkout-page form .form-row textarea,
.ambishop-modern-checkout-page form .form-row select{
 min-height:48px;
 border:1px solid #DDE3EC!important;
 border-radius:12px!important;
 padding:10px 13px!important;
 background:#fff;
}
.ambishop-modern-checkout-page .select2-container .select2-selection--single{
 height:48px!important;
 border:1px solid #DDE3EC!important;
 border-radius:12px!important;
}
.ambishop-modern-checkout-page .select2-selection__rendered{
 line-height:46px!important;
 padding-left:13px!important;
}
.ambishop-modern-checkout-page .select2-selection__arrow{
 height:46px!important;
}
.ambishop-modern-checkout-page #payment{
 background:#F7F9FC!important;
 border-radius:16px!important;
}
.ambishop-modern-checkout-page #place_order{
 width:100%;
 min-height:56px!important;
 background:var(--amb-blue)!important;
 color:#fff!important;
 font-size:16px!important;
}
.ambishop-modern-checkout-page #place_order:hover{
 background:var(--amb-blue-dark)!important;
}

/* Empty cart */
.ambishop-modern-cart-page .cart-empty{
 background:#fff;
 border-radius:18px;
 padding:24px!important;
 border:1px solid var(--amb-border);
}
.ambishop-modern-cart-page .return-to-shop a{
 background:var(--amb-blue)!important;color:#fff!important;
}

/* Mobile */
@media(max-width:980px){
 .amb-cart-hero{flex-direction:column;align-items:flex-start}
 .ambishop-modern-cart-page .woocommerce-cart-form,
 .ambishop-modern-cart-page .cart-collaterals{
   width:100%;float:none;
 }
 .ambishop-modern-cart-page .cart-collaterals{margin-top:22px}
 .ambishop-modern-checkout-page form.checkout{grid-template-columns:1fr}
}
@media(max-width:700px){
 .ambishop-modern-cart-page .woocommerce,
 .ambishop-modern-checkout-page .woocommerce{padding:18px 12px 50px}
 .amb-cart-hero{padding:22px 18px;border-radius:18px}
 .amb-cart-hero h1{font-size:28px}
 .amb-cart-steps{width:100%;justify-content:space-between;gap:5px}
 .amb-cart-steps span{font-size:0}
 .amb-cart-steps span b{font-size:12px}
 .amb-cart-steps i{flex:1}
 .ambishop-modern-cart-page table.shop_table_responsive tr td{
   padding:13px 12px!important;
 }
 .ambishop-modern-cart-page td.product-thumbnail{display:block!important;text-align:left!important}
 .ambishop-modern-cart-page td.product-thumbnail:before{display:none!important}
 .ambishop-modern-cart-page .coupon{flex-direction:column;align-items:stretch}
 .ambishop-modern-cart-page .coupon #coupon_code{width:100%!important}
 .ambishop-modern-cart-page .actions button{width:100%;margin-top:10px!important}
}
