label[for="coupon_code"]{
	display: none;
}

.pxl-cart-empty {
	gap: 30px;
	padding: 30px;
	.empty-icon i {
		color: $primary_color;
		font-size: 30px;
	}
}

.pxl-cart-dropdown {
	position: absolute;
	top: 70px;
	right: -140px;
	min-width: 395px;
	max-width: 91vw;
	background-color: #fff;
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	margin-top: 10px;
	@include transition(all .2s linear 0s);
	&.open {
		opacity: 1;
		visibility: visible;
		z-index: 9;
		margin-top: 0;
	}
	ul {
		margin: 0;
	}
	.cart-content-body {
		max-height: 360px;
		overflow-y: auto;
		@media (max-width: $lg_max){
			max-height: 270px;
		}
		@media (max-width: $xs_screen){
			padding: 0 20px;
		}
		&::-webkit-scrollbar{
			height: 0;
			width: 3px;
			background-color: transparent;
		}

		&::-webkit-scrollbar-track{
			border-radius: 0;
		}

		&::-webkit-scrollbar-thumb{
			border-radius: 0;
			background-color: transparent;
		}

		&:hover::-webkit-scrollbar {
			width: 3px;
			height: auto;
			background-color: rgba(255,255,255,0.1);
			border-radius: 0
		}
		&:hover::-webkit-scrollbar-thumb{
			background-color: rgba(48, 48, 48, 0.1);
		}    
	}
	&:has(.pxl-cart-widget.layout-3) {
		border-radius: 10px;
	}
}

.pxl-cart-widget {
	padding: 30px 23px 30px 30px;
	.pxl-widget-cart-content {
		&.loading {
			position: relative;
			&:before {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: rgba(0, 0, 0, 0.4);
				z-index: 1;
			}
			&:after {
				content: "\e95b" !important;
				font-family: $pxli_font;
				font-size: 20px;
				color: #fff;
				@include animation(pxl-spin 2s linear infinite);
				position: absolute;
				top: 50%;
				left: 50%;
				@include transform(translate(-50%, -50%));
				z-index: 2;
			}
		}
	}
	.pxl-cart-empty {
		flex-wrap: nowrap;
		gap: 22px;
		.empty-icon {
			i {
				font-size: 30px;
				color: $secondary_color;
			}
		}
		.empty-text {
			max-width: 240px;
		}
	}
	ul {
		list-style: none outside;
		margin: 0;
		padding: 0;
		li {
			padding: 25px 0;
			position: relative;
			display: flex;
			align-items: center;
			clear: both;
			overflow: hidden;
			font-weight: 600;
			border-bottom: 1px solid $heading_color;
			img {
				width: 76px;
				height: 82px;
				object-fit: cover;
			}
			a.remove {
				font-family: 'Nunito Sans';
				position: absolute;
				right: 0;
				top: 21px;
				font-size: 16px;
				font-weight: 600;
				line-height: 1;
				color: $heading_color;
			}
			&:first-child {
				padding-top: 5px;
				a.remove {
					top: 1px;
				}
			}
			.cart-item-wrap {
				display: -webkit-box;
				display: -moz-box;
				display: -ms-flexbox;
				display: -webkit-flex;
				display: flex;
				align-items: center;
				gap: 20px;
				width: 100%;
				.cart-item-thumbnail {
					flex-shrink: 0;
				}
				.cart-item-info {
					flex-grow: 1;
				}
				.product-name {
					@include text-truncate-multi-line(15px, 1.7, 2);
					letter-spacing: 0.05em;
					text-transform: uppercase;
					margin-bottom: 0;
					max-height: 47px;
				}						
				.price {
					margin-bottom: 7px;
					.amount {
						color: $heading_color;
						font-size: 17px;
						font-weight: 400;
						letter-spacing: 0.02em;
						margin-bottom: 7px;
					}
				}
				.product-quantity {
					display: none;
				}
			}
		}
	}
	.total {
		margin-top: 29px;
		margin-bottom: 10px;
		letter-spacing: 0.02em;
		.total-lbl {
			font-family: $heading_font_family;
			font-size: 17px;
			font-weight: 500;
			text-transform: uppercase;
			color: $heading_color;
			margin-right: 6px;
		}
		.amount {
			font-size: 17px;
			color: $heading_color;
			font-weight: 400;
		}
	}
	.buttons {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		.button {
			padding: 0;
			background-color: transparent;
			color: $secondary_color;
			font-weight: 600;
			line-height: 30px;
			span {
				&:after{
					content: "";
					height: 1px;
					position: absolute;
					bottom: 0;
					left: 0;
					width: 0;
					transition: all 300ms linear;
					transition-delay: 100ms;
					border-bottom: 1px solid;
				}
			}
			&:after {
				content: "\f301";
				font-family: "Material-Design-Iconic-Font";
				font-size: 14px;
				line-height: 1;
				font-weight: normal;
				-moz-osx-font-smoothing: grayscale;
				margin-left: 5px;
				position: relative;
				transition: all 300ms linear;
				opacity: 1;
			}
			&:hover {
				span:after {
					width: 100%;
				}
			}
		}
	}
	&.layout-1 {
		ul .cart-item-wrap .product-info .product-name {
			a {
				@include multiline-hover-underline();
			}
		}
	}
	&.layout-2 {
		ul {
			margin: 12px 0;
			li {
				border-bottom-color: $divider_color;
				a.remove {
					color: $primary_color;
				}			
				&:first-child {
					padding-top: 0;
					a.remove {
						top: -4px;
					}
				}
				.cart-item-wrap {
					.product-name {
						@include text-truncate-multi-line(20px, 1.3, 2);
						letter-spacing: 0.02em;
						text-transform: capitalize;
						margin-bottom: 0;
						max-height: 47px;
					}
					.price {
						margin-bottom: 2px;
						.amount {
							color: $primary_color;
						}
					}
				}
			}
		}
		&:not(:has(.cart-footer-inner)) {
			ul li:last-child {
				padding-bottom: 0;
				border-bottom: none;
			}
		}
		.total {
			margin-top: 16px;
			margin-bottom: 5px;
			.total-lbl {
				font-size: 20px;
				font-weight: 600;
				letter-spacing: 0.02em;
				text-transform: capitalize;
				color: $heading_color;
			}
			.amount {
				color: $primary_color;
			}
		}
		.buttons {
			margin-bottom: -16px;
			.button {
				color: $heading_color;
				&:after {
					color: $primary_color;
				}
			}
		}
	}
	&.layout-3 {
		ul li {
			border-bottom-color: rgba($secondary_color_rgb, 0.1);
			img {
				@include border-radius(5px);
			}
			&:last-child {
				padding-bottom: 0;
				border-bottom: none;
			}
			.cart-item-wrap {
				.product-name {
					@include text-truncate-multi-line(17px, 1.65, 2);
					font-weight: 500;
				}
				.price {
					font-weight: 500;
					margin-bottom: 0;
				}
			}
		}
		.pxl-cart-empty {
			padding: 0;
		}
		.woocommerce-mini-cart__total {
			@include d-flex();
			background-color: $secondary_color;
			@include border-radius(10px);
			padding: 11px 21px;
			justify-content: space-between;
		}
		.total {
			margin-top: 25px;
			margin-bottom: 15px;
			.total-lbl {
				color: #fff;
				letter-spacing: 0.05em;
				&:before {
					content: '\e9e9';
					font-size: 15px;
					color: $primary_color;
					font-family: $pxli_font;
					margin-right: 5px;
				}
			}
			.amount {
				color: #fff;
				font-weight: 300;
			}
		}
		.buttons {
			margin-bottom: -13px;
			.button {
				color: $secondary_color;
				span {
					font-family: $heading_font_family;
					font-size: 15px;
					font-weight: 600;
					letter-spacing: 0.15em;
					color: $secondary_color;
					@include transition();
					&:after {
						content: none;
					}
				}
				&:after {
					content: "\f2ee";
					font-family: "Material-Design-Iconic-Font";
					font-size: 15px;
					font-weight: 700;
					color: $primary_color;
					margin-left: 7px;
				}
				&:hover {
					&:after {
						animation: toRightFromLeft 300ms ease-out;
					}
				}
			}
		}
	}
	&.layout-4 {
		padding: 0;
		border: 1px solid $divider_color;
		.widget-title {
			padding-left: 30px;
			padding-right: 30px;
			margin-bottom: 0;
		}
		.variation {
			&:before {
				content: 'With Addons';
			}
			dt, dd {
				display: none;
			}
		}
		.pxl-cart-empty {
			padding: 30px;
			.empty-icon i {
				color: $primary_color;
			}
		}
		ul {
			margin: 0;
			li {
				padding: 30px;
				background-color: #fff;
				.remove {
					display: none;
				}
				.cart-item-wrap {
					.cart-item-info {
						display: flex;
						align-items: center;
						justify-content: space-between;
						flex-direction: row-reverse;
						@media (max-width: $xs_max) {
							flex-direction: column-reverse;
							align-items: start;
						}
					}
					.product-name {
						@include text-truncate-multi-line(17px, 1.2, 2);
						font-weight: 400;
						letter-spacing: 0.03em;
						text-transform: capitalize;
					}
					.price .amount {
						font-size: 17px;
						font-weight: 500;
						margin-bottom: 0;
					}
					.product-quantity {
						display: inline-block;
						.quantity {
							max-width: 123px;
							margin-right: 4px;
							.label {
								display: none;
							}
							.qty-field .quantity-inner {
								align-items: center;
								input.qty[type="number"] {
									background-color: transparent;
									border: none;
									padding: 0;
									width: 40px;
									font-size: 15px;
									color: $heading_color;
									font-weight: 500;
								}
								.quantity-button {
									cursor: pointer;
									background-color: $primary_color;
									width: 25px;
									height: 25px;
									@include border-radius(50%);
									display: inline-flex;
									align-items: center;
									justify-content: center;
									&:before {
										font-family: 'Rowdies';
										font-size: 17px;
										font-weight: 400;
										line-height: 1;
										color: #fff;
									}
									&.quantity-up:before {
										content: '+';
										margin-bottom: 3px;
									}
									&.quantity-down:before {
										content: '-';
										margin-bottom: 5px;
									}
								}
							}
						}
					}
				}
				img {
					width: 95px;
					height: 95px;
					background-color: #eae1d6;
					border: 1px solid $divider_color;
				}
			}
		}
		.cart-footer-inner {
			.total {
				margin: 0;
				padding: 26px 30px;
				@include d-flex();
				justify-content: space-between;
				background-color: $divider_color;
				.total-lbl, .total-value .amount {
					font-family: $body_font_family;
					font-weight: 500;
					letter-spacing: 0;
					color: #fff;
				}
			}
			.buttons {
				.button {
					width: 50%;
					background-color: $primary_color;
					font-family: $body_font_family;
					font-size: 15px;
					font-weight: 700;
					height: 60px;
					letter-spacing: 0.1em;
					color: #fff;
					+ .button {
						border-left: 1px solid $divider_color;
					}
					span:after,
					&:after {
						content: none;
					}
					&:hover {
						background-color: #fff;
						color: $primary_color;
					}
				}
			}
		}
	}
}

.pxl-widget-cart-content .pxl-cart-empty {
	padding: 0;
}

.pxl-shop-layout-2 .pxl-cart-widget .pxl-cart-empty .empty-icon i {
	color: $primary_color;
}

.cart-content-left {
	@media (min-width: $lg_min){
		padding-right: 45px;
	}
}

.cart-list-wrapper{
	.cart-list-head{
		font-size: 14px;
		color: $heading_color;
		text-transform: uppercase;
		letter-spacing: 0.05em;
		border-bottom: 1px solid $divider_color;
		padding-bottom: 10px;
		@media (max-width: $xs_max){
			display: none;
		}
		.product-name{
			margin-left: -90px;
		}
		.col-quantity{
			width: 20%;
		}
	}
	.cart-list-item{
		padding: 25px 0;
		&+ .cart-list-item{
			border-top: 1px solid $divider_color;
		}
		.product-thumbnail{
			img{
				width: 70px;
				background-color: #fff;
			}
			&.border {
				img {
					border: 1px solid $divider_color;
				}
			}
		}
		.cart-item-info{
			padding-left: 20px;
		}
		.item-name{
			font-size: 16px;
			line-height: 24px;
		}
		.variation {
			margin: 10px 0 0;
			line-height: 1.2;
			span {
				margin: 0;
				padding: 0;
				position: relative;
				display: inline-flex;
				& + span{
					padding-left: 8px;
					&:before{
						content: ",";
						position: absolute;
						left: 0;
					}
				}
			}
		}
		.col-quantity{
			width: 20%;
		}
		.pxl-quantity-wrap{
			align-items: center;
			.label{
				display: none;
			}
		}
		.quantity-inner{
			position: relative;
			display: inline-block;
			width: 80px;
			input{
				width: 100%;
				height: 30px;
				line-height: 30px;
				border: 1px solid $primary_color;
				color: $heading_color;
				font-size: 15px;
				text-align: center;
				border-radius: 0;
				padding: 0 24px;
				background-color: transparent;
			}
			.quantity-button{
				position: absolute;
				top: 0;
				width: 30px;
				height: 30px;
				line-height: 30px;
				font-size: 11px;
				border: 0;
				cursor: pointer;
				display: flex;
				align-items: center;
				color: $heading_color;
				@include transition(color .3s ease);
			}
			.quantity-up{
				right: 0;
				justify-content: center;
				&:after {
					content: '\f278';
					font-family: 'Material-Design-Iconic-Font';
				}
			}
			.quantity-down{
				left: 0;
				z-index: 1;
				justify-content: center;
				&:after {
					content: '\f273';
					font-family: 'Material-Design-Iconic-Font';
				}
			}
		}
		.item-price,
		.item-subtotal{
			font-size: 16px;
			color: $heading_color;
		}
		.remove {
			font-size: 15px;
			color: $gray;
			&:hover {
				color: $link_color;
			}
		}
		@media (max-width: $xs_max){
			.cart-item-info{
				position: relative;
			}
			.col-remove{
				position: absolute;
				top: 0;
				right: 0;
				width: auto !important;
			}
			.item-name{
				padding-top: 0;
				margin-bottom: 5px;
			}
			.item-subtotal{
				margin-top: 5px;
				.lbl{
					color: $body_color;
				}
			}
		}
	}
}
.coupon{
	margin-top: 55px;
	@media (max-width: $xs_screen){
		padding: 18px 0 24px;
	}
	label{
		font-size: 20px;
		line-height: 1.5;
		color: $heading_color;
		margin-bottom: 15px;
		@media (max-width: $xs_screen){
			margin-bottom: 10px;
		}
	}
	.pxl-icon{
		position: absolute;
		left: 16px;
		top: 50%;
		font-size: 20px;
		margin-top: -10px;
		color: #000;
		@media (max-width: $xs_screen){
			display: none;
		}
	}
	.input-text{
		border: 1px solid $divider_color;
		height: 50px;
		&:hover {
			border-color: $divider_color;
		}
	}
	.button{
		@media (min-width: 481px){
			position: absolute;
			top: 0;
			right: 0;
			height: 50px;
			background-color: transparent;
			color: $heading_color;
			padding: 0 24px;
			font-size: 14px;
			letter-spacing: 0.05em;
			border: 0;
			&:hover, &:active, &:focus{
				color: $gray;
			}
		}
		@media (max-width: $xs_screen){
			margin-top: 15px;
			width: 100%;
			height: $input_height;
		}
	}
}
.cart-collaterals {
	background-color: #fff;
	position: relative;
	border: 1px solid $primary_color;
	border-radius: var(--total_section_border_radius-width);
	.cart_totals{
		position: relative;
		padding: 30px 35px 25px 35px;
		@media (max-width: $xs_screen){
			padding: 25px 15px 20px 15px;
		}
	}
	.pxl-heading{
		font-size: 20px;
		padding-bottom: 15px;
		margin-bottom: 20px;
		border-bottom: 1px solid $divider_color;
	}
	.cart-total-row{
		margin-bottom: 15px;
	}
	span.lbl{
		font-size: 16px;
		letter-spacing: 0.015em;
	}
	span.value{
		font-size: 16px;
		letter-spacing: 0.015em;
		color: $heading_color;
	}
	.shipping_method{
		span.current{
			color: $heading_color;
		}
		&:after{
			right: 16px;
		}
	}
	.wc-proceed-to-checkout .text-end {
		position: relative;
		z-index: 1;
	}
	.woocommerce-shipping-calculator{
		margin-top: 10px;
		.shipping-calculator-button{
			font-size: 16px;
			letter-spacing: 0.015em;
			color: $body_color;
			&:hover{
				color: $link_color;
			}
		}
		.shipping-calculator-form{
			margin-top: 10px;
			.button{
				width: 100%;
			}	
		}
		.select2-selection {
			-webkit-appearance: none;
			-moz-appearance: none;
			background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' width='18' height='18' viewBox='0 0 288 448'%3E%3Cpath d='M268.75 184c0 2-1 4.25-2.5 5.75l-116.5 116.5c-1.5 1.5-3.75 2.5-5.75 2.5s-4.25-1-5.75-2.5l-116.5-116.5c-1.5-1.5-2.5-3.75-2.5-5.75s1-4.25 2.5-5.75l12.5-12.5c1.5-1.5 3.5-2.5 5.75-2.5 2 0 4.25 1 5.75 2.5l98.25 98.25 98.25-98.25c1.5-1.5 3.75-2.5 5.75-2.5s4.25 1 5.75 2.5l12.5 21.5c1.5 1.5 2.5 3.75 2.5 5.75z'/%3E%3C/svg%3E");
			background-repeat: no-repeat;
			background-position-x: calc(100% - 15px);
			background-position-y: 50%;
			background-size: 15px;
			cursor: pointer;
			[dir="rtl"] & {
				background-position: 10px 50%;
				padding-right: 22px;
				padding-left: 30px;
			}
		}
		.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
			padding: 0;
			color: $heading_color;
		}
		.select2-container--default .select2-selection--single .select2-selection__arrow b{
			display: none;
		}
		.input-text{
			padding: 0 18px;
		}
	}
	.order-total{
		padding-top: 18px;
		margin-top: 18px;
		border-top: 1px solid $divider_color;
		margin-bottom: 10px;
		span.lbl{
			font-size: 18px;
			color: #000;
			text-transform: uppercase;
			letter-spacing: 0.05em;
		}
		span.value{
			font-size: 20px;
			font-weight: 600;
			color: #000;
			letter-spacing: 0.015em;
			strong {
				font-weight: 600;
			}
		}
	}
	.calc_shipping_wrap {
		position: relative;
		z-index: 1;
	}
	.checkout-button{
		width: 100%;
	}
	.payment_method_text{
		font-size: 16px;
		color: $heading_color;
		margin-bottom: 10px;
	}
	.blockUI.blockOverlay {
		position: relative !important;
		display: none !important;
	}
	.cart_totals.processing{
		&:before{
			opacity: 1;
			visibility: visible;
		}
		&:after{
			opacity: 1;
			visibility: visible;
		} 
	}
}
.woocommerce-cart-form{
	.continue-shopping{
		margin-top: 40px;
	}
	.pxl-continue-shop{
		font-size: 16px;
		line-height: 30px;
		text-transform: uppercase;
		letter-spacing: 0.05em;
		text-decoration: underline;
		text-underline-offset: 8px;
	}
} 

.return-to-shop {
	text-align: center;		
}

.pxl-cart-empty {
	.woocommerce-info {
		margin-bottom: 30px;
	}
	.return-to-shop {
		text-align: center;
		.button:hover {
			border: 1px solid $heading_color;
			color: $heading_color;
			background-color: transparent;
		}		
	}
}