/* Remove button */
.woocommerce a.remove {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	font-size: 1.5rem;
	color: #fff !important;
	background-color: #c5c5c5;
}
@media (min-width: $screen-md-min) {
	.woocommerce a.remove {
		width: 1rem;
		height: 1rem;
		font-size: 1rem;
	}
}

/* Sale tag */
.woocommerce span.onsale {
	min-width: 0;
	min-height: 0;
	width: auto;
	height: auto;
	padding: 0.375rem 0.5rem 0.3125rem;
	border-radius: 0;
	font-size: 0.75rem;
	line-height: 100%;
	text-transform: uppercase;
	background-color: $color-2;
	color: #fff;
}

/* Quantity input */
.woocommerce .quantity .qty {
	padding-right: 0.25rem;
}

/* Product Page */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	margin: 0;
}
.woocommerce div.product span.price,
.woocommerce div.product p.price {
	color: $text-color;
}
.woocommerce div.product span.price ins,
.woocommerce div.product p.price ins {
	text-decoration: none;
}
.woocommerce div.product form.cart div.quantity {
	margin-right: 0.5rem;
}
.woocommerce div.product form.cart .button {
	@include button-medium;
}

/* Product loops */
.woocommerce ul.products {
	margin-bottom: 0;
}
.woocommerce ul.products li.product {
	margin-bottom: 2rem;
	border: 1px solid #f1f1f1;
	text-align: center;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
	display: block;
}
.woocommerce ul.products li.product a img {
	max-width: none;
	width: 100%;
	width: calc(100% + 2px);
	margin-left: -1px;
	margin-right: -1px;
	margin-bottom: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title {
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 1.375rem;
	margin-bottom: 0.75rem;
	color: #333;
	font-size: 1rem;
	font-weight: normal;
}
.woocommerce ul.products li.product .star-rating {
	margin-bottom: 0.5rem;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.8125rem;
}
.woocommerce ul.products li.product .price {
	margin-bottom: 0.5rem;
	font-size: 1rem;
	color: #333;
}
.woocommerce ul.products li.product .price del {
	display: inline-block;
	margin-right: 0.5rem;
	opacity: 1;
	color: #bdbdbd;
}
.woocommerce ul.products li.product .price ins {
	text-decoration: none;
}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
	margin: 0.75rem 1rem 1.5rem;
	border-color: #333;
	background-color: #fff;
	color: #333;
}
.woocommerce ul.products li.product .added_to_cart {
	margin-top: -0.75rem;
}
/* Product hover effect */
@media (min-width: $screen-md-min) {
	.woocommerce ul.products li.product,
	.woocommerce ul.products li.product .onsale {
		transition: all 0.4s;
		transform: translate3d(0, 0, 0);
	}
	.woocommerce ul.products li.product .button {
		transition: all 0.3s;
	}
	.woocommerce ul.products li.product:hover {
		box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.25);
	}
	.woocommerce ul.products li.product:hover .onsale {
		transform: translate3d(0, -2px, 0);
		animation-delay: 0.4s;
		animation-duration: 0.6s;
		animation-name: onsale-shake;
	}
	.woocommerce ul.products li.product:hover .button {
		border-color: $color-1;
		background-color: $color-1;
		color: #fff;
	}
}
/* Sale tag shake animation */
@keyframes onsale-shake {
	0%   { transform: translate3d(0, -2px, 0) rotate(0);      }
	20%  { transform: translate3d(0, -2px, 0) rotate(-8deg);  }
	40%  { transform: translate3d(0, -2px, 0) rotate(10deg);  }
	60%  { transform: translate3d(0, -2px, 0) rotate(-10deg); }
	80%  { transform: translate3d(0, -2px, 0) rotate(8deg);   }
	100% { transform: translate3d(0, -2px, 0) rotate(0);      }
}

/* Product loops result count and ordering */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	font-size: 0.875rem;
	margin-bottom: 1.5rem;
}

/* Product loops pagination */
.woocommerce ul.products + nav.woocommerce-pagination {
	padding-top: 2.875rem;
	border-top: 1px solid $border-color;
}
.woocommerce nav.woocommerce-pagination ul {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	border: none;
	list-style: none;
}
.woocommerce nav.woocommerce-pagination ul li {
	display: block;
	float: none;
	border-right: none;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	display: block;
	width: 2.25rem;
	height: 2.25rem;
	line-height: 2.25rem;
	padding: 0;
	margin: 0 0.3125rem;
	border: 1px solid #959595;
	font-size: 0.75rem;
	text-decoration: none;
	text-align: center;
	color: #959595;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
	border-color: #333;
	background-color: #fff;
	color: #333;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
	border-color: $color-2;
	background-color: $color-2;
	color: #fff;
}
.woocommerce nav.woocommerce-pagination ul li a.prev,
.woocommerce nav.woocommerce-pagination ul li a.next {
	@include font-smoothing;
	position: absolute;
	margin-left: 0;
	margin-right: 0;
	font-size: 1.125rem;
	line-height: 2rem;
}
.woocommerce nav.woocommerce-pagination ul li a.prev {
	left: 0;
}
.woocommerce nav.woocommerce-pagination ul li a.next {
	right: 0;
}
@media (min-width: $screen-sm-min) {
	.woocommerce nav.woocommerce-pagination ul li a.prev,
	.woocommerce nav.woocommerce-pagination ul li a.next {
		position: static;
		margin-left: 0.3125rem;
		margin-right: 0.3125rem;
	}
}

/* Shop buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	@include button;
	@include button-secondary;
	@include button-small;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
	@include button-primary;
}
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
	&.disabled,
	&:disabled,
	&:disabled[disabled] {
		@include button-disabled;
		opacity: 1;
	}
}
.woocommerce a.added_to_cart {
	@include button;
	@include button-secondary;
	@include button-small;
}

/* Star ratings */
.woocommerce .star-rating {
	height: 1.1rem;
	line-height: 1.1rem;
}
.woocommerce .star-rating,
.woocommerce .star-rating::before {
	color: $color-1;
}

/* Shop tables */
.woocommerce table.shop_table {
	border: 1px solid rgba(0, 0, 0, 0.1);
	margin: 0 -1px 24px 0;
	text-align: left;
	width: 100%;
	border-collapse: separate;
	border-radius: 5px;
}
.woocommerce table.shop_table th {
	font-weight: 700;
	padding: 9px 12px;
}
.woocommerce table.shop_table td {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	padding: 6px 12px;
	vertical-align: middle;
}
.woocommerce table.shop_table td small {
	font-weight: normal;
}
.woocommerce table.shop_table tbody:first-child tr:first-child th,
.woocommerce table.shop_table tbody:first-child tr:first-child td {
	border-top: 0;
}
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tbody th {
	font-weight: 700;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.woocommerce table.shop_table {
	table-layout: fixed;
	border-collapse: collapse;
	// border: 0;
	border-radius: 0;
	border-color: $border-color;
	font-size: 0.875rem;
}
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tbody th {
	border-color: $border-color;
}
.woocommerce table.shop_table thead tr {
	border-left: 1px solid;
	border-right: 1px solid;
	border-color: $color-2;
	background-color: $color-2;
	color: #fff;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	padding-top: 1.125rem;
	padding-bottom: 1.25rem;
	padding-left: 1rem;
	padding-right: 1rem;
	border: 0;
}
.woocommerce table.shop_table th {
	font-weight: normal;
}
@media (min-width: $screen-sm-min) {
	.woocommerce table.shop_table tbody tr {
		border-bottom: 1px solid;
		border-left: 1px solid;
		border-right: 1px solid;
		border-color: $border-color;
	}
}

/* Product list widgets */
.woocommerce ul.product_list_widget li {
	padding-top: 0;
	padding-bottom: 0;
	margin-bottom: 1rem;
}
.woocommerce ul.product_list_widget li:last-child {
	margin-bottom: 0;
}
.woocommerce ul.product_list_widget li a,
.woocommerce ul.product_list_widget li a:hover {
	color: inherit;
}
.woocommerce ul.product_list_widget li img {
	float: left;
	width: 4.375rem;
	height: 4.375rem;
	margin-left: 0;
	margin-right: 1rem;
}
.woocommerce ul.product_list_widget li ins {
	text-decoration: none;
	font-weight: bold;
}
.woocommerce ul.product_list_widget li del {
	color: #bdbdbd;
}
.woocommerce ul.product_list_widget li .star-rating {
	font-size: 0.8125rem;
	font-style: normal;
}

/* Shopping cart widget */
.woocommerce.widget_shopping_cart .total {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding-top: 0.75rem;
	border-top: 1px solid #c5c5c5;
	font-size: 1rem;
}
.woocommerce.widget_shopping_cart .total strong {
	font-weight: normal;
}
.woocommerce.widget_shopping_cart .cart_list li {
	padding-left: 0;
	padding-right: 2rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid #c5c5c5;
}
.woocommerce.widget_shopping_cart .cart_list li:last-child {
	border-bottom: 0;
}
.woocommerce.widget_shopping_cart .cart_list li.empty {
	padding-top: 1rem;
	padding-bottom: 1rem;
	padding-right: 0;
	font-size: 1rem;
	text-align: center;
}
.woocommerce-mini-cart__empty-message {
	text-align: center;
}
.woocommerce.widget_shopping_cart .cart_list li a.remove {
	left: auto;
	right: 0;
	top: 1.625rem;
}
.woocommerce.widget_shopping_cart .buttons::before,
.woocommerce.widget_shopping_cart .buttons::after {
	flex: 0;
	max-width: 0;
}
.woocommerce.widget_shopping_cart .buttons {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	margin-left: -0.25rem;
	margin-right: -0.25rem;
	margin-bottom: -0.25rem;
}
.woocommerce.widget_shopping_cart .buttons a {
	display: block;
	flex: 1 0 0;
	min-width: 8.125rem;
	margin-left: 0.25rem;
	margin-right: 0.25rem;
	margin-bottom: 0.75rem;
}

/* Price filter widget */
.woocommerce .widget_price_filter .price_slider {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}
.woocommerce .widget_price_filter .price_slider_amount {
	font-size: 0.875rem;
}
.woocommerce .widget_price_filter .price_slider_amount .button {
	font-size: 0.8125rem;
}
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle,
.woocommerce .widget_price_filter .ui-slider .ui-slider-range {
	background-color: #333;
}
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
	background-color: #c4c4c4;
}

/* Cart/checkout page */
.woocommerce-cart,
.woocommerce-checkout,
#add_payment_method {
	table.cart .button,
	table.cart .button.disabled,
	table.cart .button:disabled,
	table.cart .button:disabled[disabled], {
		line-height: $line-height-input;
	}

	.wc-proceed-to-checkout a.checkout-button {
		@include button-hover-effect;
		@include button-large;
		@include button-rounded;
		font-size: 0.9375rem;
	}

	.cart-collaterals h2 {
		@include title(1rem);
		margin-bottom: 1.5rem;
	}

	/* Empty cart */
	.cart-empty,
	.return-to-shop {
		text-align: center;
	}
	.return-to-shop .button {
		@include button-hover-effect;
	}
}
@media (min-width: $screen-sm-min) {
	.woocommerce-cart,
	.woocommerce-checkout,
	#add_payment_method {
		table.cart {
			border: 0;
		}
		table.cart img {
			width: 4rem;
		}
		table.cart .product-remove {
			width: 4rem;
			text-align: center;
		}
		table.cart .product-thumbnail {
			width: 6rem;
		}
		table.cart .product-price {
			width: 7rem;
		}
		table.cart .product-quantity {
			width: 7rem;
			padding-right: 2rem;
		}
		table.cart .product-subtotal {
			width: 7rem;
		}
		table.cart tbody tr:last-child {
			border: 0;
		}
		table.cart .quantity .qty {
			width: 100%;
		}
		table.cart td.actions .coupon #coupon_code {
			width: 9rem;
		}
		table.cart td.actions .coupon .input-text {
			padding: 0.3125rem 1rem;
			margin-right: 1rem;
			border-color: $input-border-color;
			line-height: $line-height-input;
		}
	}
}
