body.ns_sidebar-cart-panel-open #ns_sidebar-cart-panel[data-position="right"]{
	-webkit-transform: translate3d(-100%,0,0);
	transform: translate3d(-100%,0,0);
}

#ns_sidebar-cart-panel{
	width: 100%;
	max-width: 768px;
}

#ns_sidebar-cart-panel .ns_sidebar-header,
#ns_sidebar-cart-panel .ns_sidebar-header .ns_sidebar-header-inner{
	background: var(--hipnos-color-secondary-1);
	color: var(--hipnos-color-neutral-5);
	border: none;
}

#ns_sidebar-cart-panel .ns_sidebar-content{
	padding: 0px;
}

#ns_sidebar-cart,
.widget_shopping_cart_content{
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	display: flex;
	padding-top: 0px;
}

#ns_sidebar-cart-loader{
	visibility: hidden;
	position: absolute;
	top: -1px;
	left: -1px;
	z-index: 100;
	width: 1px;
	height: 1px;
	opacity: 1;

	-webkit-transition: opacity var(--hipnos-transition-ease);
	transition: opacity var(--hipnos-transition-ease);

	background: var(--hipnos-color-neutral-5);

}

#ns_sidebar-cart-loader .ns_loader{
	position: relative;
	width: auto;
	height: auto;
	display: inline-block;
	padding-left: 16px;
	margin-top: 24px;
}

#ns_sidebar-cart-loader .ns_loader:after{
	right: unset;
	left: 0px;
}

#ns_sidebar-cart-loader.show{
	visibility: visible;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 0px;
	padding-left: 24px;
}

#ns_sidebar-cart-loader.fade-out{
	opacity: 0;
}

#ns_sidebar-col-cart{
	background: var(--hipnos-color-neutral-5);
}

.ns_sidebar-cart-list{
	position: relative;
	display: flex;
	flex: 1 1 0%;
	flex-direction: column;
	overflow-y: scroll;
	overflow-x: hidden;
}

.ns_sidebar-cart-list-inner{
	position: relative;
	width: 100%;

	padding-left: 24px;
	padding-right: 24px;
}

.ns_sidebar-cart-list-items{
	position: relative;
}

.ns_sidebar-cart-item{
	position: relative;
	display: flex;
	width: 100%;
	list-style: none;
	overflow: hidden;
	flex-direction: column;

	padding-top: 24px;
	padding-bottom: 24px;
	border-bottom: 2px solid var(--hipnos-color-neutral-4);
}

.ns_sidebar-cart-item:last-child{
	border-bottom-color: transparent;
}

/*
.ns_sidebar-cart-item-delivery{
	display: none;
}
*/

/* .ns_sidebar-cart-item-delivery .ns_shop-notice, */
.ns_sidebar-cart-item-sale-notice .ns_shop-notice{
	margin-bottom: 16px;
}

.ns_sidebar-cart-item-inner{
	position: relative;
	display: flex;
	width: 100%;
}

.ns_sidebar-cart-item-inner > div{
	display: block;
	vertical-align: middle;
}

.ns_sidebar-cart-item-thumbnail-wrap{
	position: relative;
	overflow: hidden;
	display: block;
	border-radius: var(--hipnos-border-radius-mini);
	background: var(--hipnos-color-neutral-4);
	width: 80px;
	height: 0px;
	padding-top: 100%;
}

.ns_sidebar-cart-item-thumbnail-wrap > a{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0px;
	right: 0px;
	opacity: 1;
}

.ns_sidebar-cart-item-thumbnail img{
	position: static;
	width: 100%;
	height: auto;
	display: block;
}

.ns_sidebar-cart-item-details{
	width: 100%;
	padding-left: 8px;
	padding-right: 0px;

	font-size: 14px;
	line-height: 20px;
}

.ns_sidebar-cart-item-details-inner{
	position: relative;
}

.ns_sidebar-cart-item-name{
	padding-right: 32px;
}

.ns_sidebar-cart-item-name a{
	font-weight: var(--hipnos-font-weight-bold);
	color: var(--hipnos-color-secondary-1);;
}

.ns_sidebar-cart-item-name dl.variation > dt{
	display: none;
}

.ns_sidebar-cart-item-quantity-price{
	position: relative;
	display: flex;
	flex-direction: row;
	align-content: center;
	justify-content: space-between;
	align-items: center;
	margin-top: 8px;
}

.ns_sidebar-cart-item-price{
	position: absolute;
	display: flex;
	top: 0px;
	right: 0px;
	line-height: 16px;
	text-align: right;

	flex-direction: column;
	justify-content: center;
	align-content: flex-end;
	align-items: flex-end;
}

.ns_sidebar-cart-item-price del{
	font-size: 80%;
}

.ns_sidebar-cart-item-price ins{
	text-decoration: none;
}

.ns_sidebar-cart-item-price .amount bdi{
	font-weight: var(--hipnos-font-weight-bold);
}

.ns_sidebar-cart-item-price del .amount bdi{
	font-weight: var(--hipnos-font-weight-normal);
}

.ns_sidebar-cart-item-details .remove{
	position: absolute;
	top: 0px;
	right: 0px;
	/* right: -7px; */

	/* transform: translateY(-50%); */
}

.ns_sidebar-cart-item-name dl.variation,
.ns_sidebar-cart-item-ready-to-ship,
.ns_sidebar-cart-item-delivery{
	font-size: 12px;
	line-height: 18px;
}

.ns_sidebar-cart-financing-info{
	position: relative;
	display: flex;
	width: 100%;
	justify-content: center;

	font-size: 14px;
	line-height: 14px;

	padding-top: 8px;
}

.ns_sidebar-cart-financing-info .amount{
	font-weight: var(--hipnos-font-weight-bold);
}

.ns_sidebar-cart-pre-summary{
	position: relative;
	display: flex;
	width: 100%;
	list-style: none;
	overflow: hidden;
	flex-direction: column;
	padding-top: 24px;
	padding-bottom: 24px;
	font-size: 14px;
}

.ns_sidebar-cart-pre-summary .woocommerce-mini-cart__info{
	font-size: 12px;
	line-height: 18px;
	text-align: center;
	padding-top: 24px;
	margin-top: 24px;
	border-top: 2px solid var(--hipnos-color-neutral-4);
}

.ns_sidebar-cart-summary{
	position: relative;
	bottom: 0px;
	left: 0px;
	right: 0px;

	padding-left: 24px;
	padding-right: 24px;
	z-index: 2;

	box-shadow: var(--hipnos-box-shadow-style-3);
}

.ns_sidebar-cart-summary-inner{
	position: relative;
	width: 100%;
	padding-top: 24px;
	padding-bottom: 32px;

	background: var(--hipnos-color-neutral-5);
}

.ns_sidebar-cart-summary-line{
	position: relative;
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	line-height: 24px;
}

.ns_sidebar-cart-summary-line-value{
	text-align: right;
}

.ns_sidebar-cart-summary-line.fees .ns_sidebar-cart-summary-line-value .amount *{
	color: var(--hipnos-color-state-success-1);
}

.ns_sidebar-cart-summary-line.woocommerce-mini-cart__discount + .ns_sidebar-cart-summary-line.woocommerce-mini-cart__discount > .ns_sidebar-cart-summary-line-title > strong{
	visibility: hidden;
	font-size: 0px;
}

.ns_sidebar-cart-summary .woocommerce-mini-cart__discount{
	font-size: 14px;
	line-height: 20px;
	color: var(--hipnos-color-state-success-1);
}

.ns_sidebar-cart-summary .woocommerce-mini-cart__discount .amount bdi{
	color: var(--hipnos-color-state-success-1);
}

.woocommerce-mini-cart__discount .woocommerce-remove-coupon,
.woocommerce-mini-cart__discount .ns_woocommerce-remove-coupon{
	display: none;
}

.woocommerce-mini-cart__buttons{
	margin-top: 8px;
}

.woocommerce-mini-cart__buttons .ns_button:not(:last-child){
	margin-bottom: 12px;
}

@media only screen and (max-width: 767px) {
	.ns_sidebar-cart-summary{
		box-shadow: var(--hipnos-box-shadow-style-3);
	}

	.ns_sidebar-cart-summary-inner{
		border: none;
	}
}

/* Quantity */
.ns_item-quantity > .quantity{
	display: flex;
	align-content: center;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	line-height: 32px;
	width: 96px;
	overflow: hidden;
	box-shadow: var(--hipnos-box-shadow-style-2);
	border-radius:var(--hipnos-border-radius);
}

.ns_item-quantity .ns_qty-minus,
.ns_item-quantity .ns_qty-plus,
.ns_item-quantity input[type="number"].qty {
	position: relative;
	line-height: 24px;
	border: none;
	padding: 0px;
	width: 32px;
	height: 32px;
	text-align: center;
	background: var(--hipnos-color-neutral-4);
	cursor: pointer;
}

.ns_item-quantity input[type="number"].qty{
	background: var(--hipnos-color-neutral-5);
	pointer-events: none;
	cursor: default;
}

.ns_item-quantity .ns_qty-minus .ns_icon,
.ns_item-quantity .ns_qty-plus .ns_icon{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

/* Empty */
.ns_sidebar-cart-empty #ns_sidebar-col-cart .ns_sidebar-cart-list{
	justify-content: center;
}

.ns_sidebar-cart-empty #ns_sidebar-col-cart .ns_sidebar-cart-list li{
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}


.ns_sidebar-cart-empty #ns_sidebar-col-cart .ns_sidebar-cart-list li .ns_icon{
	display: block;
	background: var(--hipnos-color-neutral-4);
	border-radius: 50%;
	margin-bottom: 8px;
}

/* Notice */
.ns_sidebar-cart-notice .woocommerce-message{
	position: relative;
	display: flex;
	padding: 16px 24px 16px 24px;
	border: 2px solid;
	border-radius:var(--hipnos-border-radius);

	color: var(--hipnos-color-neutral-1);
	font-size: 14px;
	line-height: 20px;

	justify-content: center;
	align-items: center;

	background-color: var(--hipnos-color-state-success-2);
	border-color: var(--hipnos-color-state-success-1);

	margin-top: 16px;
}

.ns_sidebar-cart-list-items.woocommerce-mini-cart .ns_shop-notice.woocommerce-message{
	margin-top: 24px;
}
