/* Cart page. WooCommerce's standard cart markup, laid out as: heading, item rows on the left, summary panel on the right. */
html{overflow-y:scroll;scrollbar-gutter:stable}
body.woocommerce-cart{background:#fff}
.zr-wc-page{display:flow-root;min-height:calc(50vh - 40px);padding:48px 25px 90px;background:#fff;color:#666;font:500 14px/1.6 Inter,Arial,Helvetica,sans-serif}
.zr-wc-page *,.zr-wc-page *::before,.zr-wc-page *::after{box-sizing:border-box}
.zr-wc-page a{color:#111;text-decoration:none}
.zr-wc-page a:hover{color:#555}
.zr-wc-page p{margin:0 0 20px}
.zr-wc-page img{max-width:100%;height:auto}
.zr-wc-page .screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0;white-space:nowrap}

/* Layout */
.zr-wc-page>.woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 400px;column-gap:56px;align-items:start;max-width:1240px;margin-inline:auto}
.zr-wc-page>.woocommerce>:is(.zr-cart-title,.woocommerce-notices-wrapper,.cart-empty,.zr-cart-empty-text,.return-to-shop){grid-column:1/-1}
.zr-wc-page .zr-cart-title{margin:0 0 32px;color:#111;font-size:34px;font-weight:800;line-height:1.15;text-transform:uppercase}

/* Buttons and fields */
.zr-wc-page :is(.button,button[type=submit]){display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:5px;padding:5px 22px;border:0;border-radius:5px;background:#f2f2f2;color:#111;font:700 13px/1.2 Inter,Arial,Helvetica,sans-serif;letter-spacing:.03em;text-align:center;text-transform:uppercase;cursor:pointer;transition:box-shadow .25s,color .25s,background-color .25s}
.zr-wc-page :is(.button,button[type=submit]):hover{color:#111;box-shadow:inset 0 0 0 1000px rgba(0,0,0,.1)}
.zr-wc-page :is(.button,button[type=submit]):disabled{opacity:.6;cursor:not-allowed;box-shadow:none}
.zr-wc-page :is(.checkout-button,.return-to-shop .button,button[name=calc_shipping]),
.zr-wc-page :is(.checkout-button,.return-to-shop .button,button[name=calc_shipping]):hover{background:#fe5a00;color:#fff}
.zr-wc-page button[name=apply_coupon],
.zr-wc-page button[name=apply_coupon]:hover{background:#111;color:#fff}
.zr-wc-page button[name=apply_coupon]:hover{box-shadow:inset 0 0 0 1000px rgba(255,255,255,.14)}
.zr-wc-page :is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],select,textarea){width:100%;height:46px;padding:0 15px;border:1px solid #d6d6d6;border-radius:5px;background:#fff;color:#111;font:inherit;transition:border-color .25s}
.zr-wc-page :is(input,select,textarea):focus{border-color:#111;outline:0}
.zr-wc-page ::placeholder{color:#8a8a8a;opacity:1}

/* Notices */
.zr-wc-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin:0 0 28px;padding:16px 22px;border:0;border-radius:5px;background:#459647;color:#fff;list-style:none;line-height:1.4}
.zr-wc-page :is(.woocommerce-info,.woocommerce-error){background:#e0b252}
.zr-wc-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) li{margin:0}
.zr-wc-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) a{color:#fff;font-weight:600;text-decoration:underline}
.zr-wc-page :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) .button{order:2;min-height:0;margin-left:auto;padding:0;background:none;color:#fff;letter-spacing:0;text-decoration:underline;box-shadow:none}

/* Item rows. The table is laid out as a grid so the picture, name and amounts line up in columns;
   the remove link sits under the product name. */
.zr-wc-page table{width:100%;margin:0;border-collapse:collapse;border-spacing:0;line-height:1.4}
.zr-wc-page table.cart,.zr-wc-page table.cart :is(thead,tbody){display:block}
.zr-wc-page table.cart :is(th,td){padding:0;text-align:left}
.zr-wc-page table.cart :is(thead tr,tr.cart_item){display:grid;grid-template-columns:104px minmax(0,1fr) 110px 122px 120px;column-gap:24px;align-items:center}
.zr-wc-page table.cart thead tr{padding-bottom:14px;border-bottom:1px solid #e3e3e3}
.zr-wc-page table.cart thead th{color:#767676;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.zr-wc-page table.cart thead :is(.product-remove,.product-thumbnail){display:none}
.zr-wc-page table.cart thead .product-name{grid-column:1/3}
.zr-wc-page table.cart tr.cart_item{padding:24px 0;border-bottom:1px solid #e3e3e3}
.zr-wc-page table.cart .cart_item>.product-thumbnail{grid-column:1;grid-row:1/3}
.zr-wc-page table.cart .cart_item>.product-name{grid-column:2;grid-row:1;align-self:end}
.zr-wc-page table.cart .cart_item>.product-remove{grid-column:2;grid-row:2;align-self:start;margin-top:10px}
.zr-wc-page table.cart .cart_item>.product-price{grid-column:3;grid-row:1/3}
.zr-wc-page table.cart .cart_item>.product-quantity{grid-column:4;grid-row:1/3}
.zr-wc-page table.cart .cart_item>.product-subtotal{grid-column:5;grid-row:1/3}
.zr-wc-page table.cart :is(th,td):is(.product-price,.product-quantity){text-align:center}
.zr-wc-page table.cart :is(th,td).product-subtotal{text-align:right}
.zr-wc-page table.cart .product-thumbnail a{display:block}
.zr-wc-page table.cart .product-thumbnail img{display:block;width:104px;max-width:none;height:104px;border-radius:12px;background:#f5f5f5;object-fit:cover}
.zr-wc-page table.cart .product-name>a{display:inline-block;color:#111;font-size:16px;font-weight:700;line-height:1.35}
.zr-wc-page table.cart .product-name>a:hover{color:#555}
.zr-wc-page .variation{margin:6px 0 0;font-size:13px;line-height:1.4}
.zr-wc-page .variation :is(dt,dd,p){display:inline;margin:0;font-weight:500}
.zr-wc-page .variation dt{color:#111;font-weight:600}
.zr-wc-page .variation dd::after{content:"";display:block}
.zr-wc-page table.cart a.remove{display:inline-block;color:#767676;font-size:0;line-height:0}
.zr-wc-page table.cart a.remove::before{content:"Remove";font:500 13px/1.4 Inter,Arial,Helvetica,sans-serif;text-decoration:underline;text-underline-offset:3px}
.zr-wc-page table.cart a.remove:hover{color:#111}
.zr-wc-page table.cart .product-price .amount{color:#111;font-weight:500}
.zr-wc-page table.cart .product-subtotal .amount{color:#111;font-size:16px;font-weight:700}
.zr-wc-page table.cart .quantity input{width:70px;padding:0 5px;text-align:center}
/* Quantity: minus button, number, plus button in one rounded box. */
.zr-wc-page table.cart .quantity.zr-qty{display:inline-flex;align-items:stretch;height:42px;overflow:hidden;border:1px solid #d6d6d6;border-radius:8px;background:#fff;vertical-align:middle}
.zr-wc-page table.cart .quantity.zr-qty input.qty{width:44px;height:auto;padding:0;border:0;border-radius:0;background:transparent;color:#111;font-weight:700;text-align:center;appearance:textfield;-moz-appearance:textfield}
.zr-wc-page table.cart .quantity.zr-qty input.qty::-webkit-outer-spin-button,.zr-wc-page table.cart .quantity.zr-qty input.qty::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}
.zr-wc-page table.cart .zr-qty-btn{display:flex;flex:0 0 36px;align-items:center;justify-content:center;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#111;font:500 20px/1 Inter,Arial,Helvetica,sans-serif;letter-spacing:0;cursor:pointer;box-shadow:none}
.zr-wc-page table.cart .zr-qty-btn:hover:not(:disabled){background:#f2f2f2;box-shadow:none}
.zr-wc-page table.cart .zr-qty-btn:disabled{color:#c2c2c2;opacity:1;cursor:default}
.zr-wc-page table.cart .quantity.zr-qty:focus-within{border-color:#111}
/* Products sold one at a time have no quantity field: show the number instead of an empty cell. */
.zr-wc-page table.cart .quantity:has(>input[type=hidden])::after{content:"1";color:#111;font-weight:500}

/* Coupon and update row */
.zr-wc-page table.cart tbody tr:not(.cart_item){display:block}
.zr-wc-page table.cart td.actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:28px 0 0}
.zr-wc-page table.cart .coupon{display:flex;gap:10px}
.zr-wc-page table.cart .coupon #coupon_code{width:240px}
.zr-wc-page table.cart button[name=update_cart]:disabled{display:none}

/* Summary panel */
.zr-wc-page .cart_totals{position:sticky;top:24px;padding:32px;border-radius:12px;background:#f7f7f7}
.zr-wc-page .cart_totals>h2{margin:0 0 10px;color:#111;font-size:20px;font-weight:800;line-height:1.3;text-transform:uppercase}
.zr-wc-page .cart_totals table{margin:0 0 24px}
.zr-wc-page .cart_totals th{padding:16px 16px 16px 0;border-bottom:1px solid rgba(0,0,0,.09);color:#111;font-weight:600;text-align:left;vertical-align:top}
.zr-wc-page .cart_totals td{padding:16px 0;border-bottom:1px solid rgba(0,0,0,.09);color:#111;text-align:right;vertical-align:top}
.zr-wc-page .cart_totals .order-total :is(th,td){padding-bottom:0;border-bottom:0;vertical-align:middle}
.zr-wc-page .cart_totals .order-total th{font-size:16px;font-weight:800;text-transform:uppercase}
.zr-wc-page .cart_totals .amount{font-weight:500}
.zr-wc-page .cart_totals .order-total .amount{color:#fe4800;font-size:22px;font-weight:800}
.zr-wc-page .cart_totals strong{font-weight:600}
.zr-wc-page #shipping_method{margin:0 0 6px;padding:0;list-style:none}
.zr-wc-page #shipping_method li{margin:0}
.zr-wc-page #shipping_method label{display:inline;color:#111;font-weight:500}
.zr-wc-page #shipping_method input{margin:0 5px 0 0}
.zr-wc-page .woocommerce-shipping-destination{margin:0 0 6px;color:#666;font-size:13px}
.zr-wc-page .shipping-calculator-button{color:#111;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.zr-wc-page .shipping-calculator-button:hover{color:#fe4800}
.zr-wc-page .shipping-calculator-form{margin-top:16px;text-align:left}
.zr-wc-page .shipping-calculator-form p{margin:0 0 12px}
.zr-wc-page .shipping-calculator-form label{display:block;margin:0 0 5px;color:#111;font-size:13px}
.zr-wc-page .shipping-calculator-form .button{width:100%}
.zr-wc-page .wc-proceed-to-checkout .checkout-button{display:flex;width:100%;min-height:54px;font-size:14px}
.zr-wc-page .zr-cart-continue{display:block;width:fit-content;margin:16px auto 0;color:#111;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.zr-wc-page .zr-cart-continue:hover{color:#fe4800}

/* Empty cart */
.zr-wc-page h2.cart-empty{margin:20px 0 20px;color:#111;font-size:40px;font-weight:800;line-height:1.2;text-align:center}
.zr-wc-page h2.cart-empty::before{content:"\f147";display:block;margin-bottom:20px;color:rgba(0,0,0,.07);font:400 3.4em/1 'zr-woodmart-icons'}
.zr-wc-page .zr-cart-empty-text{max-width:535px;margin-inline:auto;text-align:center}
.zr-wc-page .return-to-shop{margin:10px 0 0;text-align:center}

/* Busy state while WooCommerce refreshes the cart */
.zr-wc-page .blockUI.blockOverlay{background:rgba(255,255,255,.6)!important;opacity:1!important}
.zr-wc-page .cart_totals .blockUI.blockOverlay{border-radius:12px;background:rgba(247,247,247,.6)!important}

@media (max-width:1100px){
	.zr-wc-page>.woocommerce{grid-template-columns:minmax(0,1fr) 360px;column-gap:36px}
	.zr-wc-page table.cart :is(thead tr,tr.cart_item){grid-template-columns:88px minmax(0,1fr) 100px 70px 100px;column-gap:16px}
	.zr-wc-page table.cart .product-thumbnail img{width:88px;height:88px}
	.zr-wc-page .cart_totals{padding:26px}
}
@media (max-width:1024px){
	.zr-wc-page{padding:36px 25px 70px}
	.zr-wc-page .zr-cart-title{margin-bottom:26px;font-size:28px}
	.zr-wc-page h2.cart-empty{font-size:24px}
	.zr-wc-page>.woocommerce{grid-template-columns:minmax(0,1fr)}
	.zr-wc-page .cart-collaterals{margin-top:40px}
	.zr-wc-page .cart_totals{position:static}
}
@media (max-width:768px){
	.zr-wc-page{padding:28px 20px 60px}
	.zr-wc-page .zr-cart-title{margin-bottom:20px;font-size:24px}
	.zr-wc-page table.cart thead{display:none}
	/* Picture on the left; name, quantity and amount beside it; remove link on the last line. */
	.zr-wc-page table.cart tr.cart_item{grid-template-columns:88px minmax(0,1fr) auto;column-gap:16px;row-gap:8px;align-items:start;padding:20px 0}
	.zr-wc-page table.cart tr.cart_item:first-child{padding-top:0}
	.zr-wc-page table.cart .cart_item>.product-thumbnail{grid-column:1;grid-row:1/4}
	.zr-wc-page table.cart .cart_item>.product-name{grid-column:2/4;grid-row:1;align-self:start}
	.zr-wc-page table.cart .cart_item>.product-price{display:none}
	.zr-wc-page table.cart .cart_item>.product-quantity{grid-column:2;grid-row:2;display:flex;align-items:center;gap:6px;text-align:left}
	.zr-wc-page table.cart .cart_item>.product-quantity::before{content:attr(data-title) ":";font-size:13px}
	.zr-wc-page table.cart .cart_item>.product-subtotal{grid-column:3;grid-row:2;align-self:center}
	.zr-wc-page table.cart .cart_item>.product-remove{grid-column:2/4;grid-row:3;margin-top:0}
	.zr-wc-page table.cart .product-name>a{font-size:15px}
	.zr-wc-page table.cart td.actions{padding-top:20px}
	.zr-wc-page table.cart .coupon{width:100%}
	.zr-wc-page table.cart .coupon #coupon_code{flex:1;width:auto;min-width:0}
	.zr-wc-page table.cart .coupon .button{flex:none;padding-inline:18px}
	.zr-wc-page table.cart td.actions>.button{width:100%}
	.zr-wc-page .cart-collaterals{margin-top:32px}
	.zr-wc-page .cart_totals{padding:24px 20px}
}
