/*------------------------------------------------------------------------------*/
/* Mini Cart
/*------------------------------------------------------------------------------*/

.MiniCartProducts {
	margin-bottom: 2rem;
}

.MiniCartTotal {
	--color-link: var(--color-text);
	align-items: flex-start;
	display: flex;
	padding-block: .2rem;
}

.MiniCartTotal:last-child {
	font-size: var(--font-size-large);
	font-weight: bold;
	margin-top: 1rem;
}

.MiniCartTotal :last-child {
	margin-left: auto;
}

.MiniCartActions {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 2rem 0;
}

.MiniCart .OrderProducts {
	width: 100%;
}

.MiniCart details {
	margin-bottom: 2rem;
}

/*------------------------------------------------------------------------------*/
/* Mini Cart Product
/*------------------------------------------------------------------------------*/

.MiniCartProduct {
	--color-link: var(--color-text);
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: .5rem 0;
}

.MiniCartProduct:not(:last-child) {
	border-bottom: 1px solid var(--border-color);
}

.MiniCartProductImage {
	align-self: flex-start;
	aspect-ratio: 1 / var(--product-image-ratio);
	background-color: var(--image-background-color);
	border-radius: var(--border-radius);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: 0;
	width: 60px;
	width: min(14%, 60px);
	z-index: 1;
}

.MiniCartProductImage img {
	border-radius: var(--border-radius);
	object-fit: contain;
}

.MiniCartProductInfo {
	flex: 1;
}

.MiniCartProductInfo > :last-child {
	margin-bottom: 0;
}

.MiniCartProductName {
	display: block;
	font-weight: bold;
	margin-bottom: 0;
	text-decoration: none;
}

.MiniCartProductPrices {
	margin: 0;
	text-align: right;
	white-space: nowrap;
}

.MiniCartProductPrices[data-product-quantity]:not([data-product-quantity="1"])::before {
	content: attr(data-product-quantity) ' \00d7  ';
	font-weight: bold;
}

.MiniCartProduct.AvailabilityOutOfStock [data-product-quantity]::before {
	border-bottom: 2px solid var(--color-notification-error);
}

/*------------------------------------------------------------------------------*/
/* Mini Cart Product Edit
/*------------------------------------------------------------------------------*/

.MiniCartProductEdit {
	cursor: pointer;
	font-size: var(--font-size-small);
}

.MiniCartProductActions {
	align-items: center;
	background-color: var(--background-color-shade-2);
	border: 1px solid var(--border-color);
	border-radius: var(--border-radius);
	display: flex;
	flex: 1 0 100%;
	gap: 2rem;
	padding: .5rem;
}

.MiniCartProduct .CartRemove {
	font-size: var(--font-size-small);
}

/*------------------------------------------------------------------------------*/
/* Drawer Campaign Code
/*------------------------------------------------------------------------------*/

.DrawerCampaignCode .CampaignCodeForm {
	margin-top: 1rem;
	width: 100%;
}

.DrawerCampaignCode .FormItem {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.DrawerCampaignCode .FormItem label,
.DrawerCampaignCode .FormItem .label {
	flex: 0 0 100%;
}

.DrawerCampaignCode .FormItem label strong,
.DrawerCampaignCode .FormItem .label strong {
	margin-inline: .5rem;
}

.DrawerCampaignCode #CampaignCode {
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	flex: 1;
}

.DrawerCampaignCode #CampaignCode:focus {
	position: relative;
}

.DrawerCampaignCode #CampaignCode + button {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	margin-left: -1px;
}

/*------------------------------------------------------------------------------*/
/* Mini Cart Product
/*------------------------------------------------------------------------------*/

.MiniCartCrossSaleProducts .MiniCartProduct {
	padding: 1.5rem 0;
}

.MiniCartHeader {
	border-top: 1px solid var(--border-color-subtle);
	margin-top: 8rem;
}

.CartHighlightAd {
	font-size: var(--font-size-large);
	font-weight: bold;
}

.CartHighlightAd h3 {
	font-size: 1.8rem;
	margin-bottom: 1rem;
}

.MiniCartProduct {
	--color-link: var(--color-text);
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	padding: .5rem 0;
}

.MiniCartProduct:not(:last-child) {
	border-bottom: 1px solid var(--border-color);
}

.MiniCartProduct .BuyForm fieldset {
	flex-direction: row;
}

.MiniCartProduct .BuyForm .AddToCart {
	--button-height: 3.8rem;
	font-size: 0;
	letter-spacing: 0;
	max-height: 3.8rem;;
}

.MiniCartProduct .BuyForm .AddToCart::after {
	content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><mask id="mask0_5842_757" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"><rect width="24" height="24" fill="%23D9D9D9"/></mask><g mask="url(%23mask0_5842_757)"><path d="M6.99991 22.0898C6.44991 22.0898 5.97907 21.8939 5.58741 21.5023C5.19574 21.1106 4.99991 20.6398 4.99991 20.0898C4.99991 19.5398 5.19574 19.0689 5.58741 18.6773C5.97907 18.2856 6.44991 18.0898 6.99991 18.0898C7.54991 18.0898 8.02074 18.2856 8.41241 18.6773C8.80407 19.0689 8.99991 19.5398 8.99991 20.0898C8.99991 20.6398 8.80407 21.1106 8.41241 21.5023C8.02074 21.8939 7.54991 22.0898 6.99991 22.0898ZM16.9999 22.0898C16.4499 22.0898 15.9791 21.8939 15.5874 21.5023C15.1957 21.1106 14.9999 20.6398 14.9999 20.0898C14.9999 19.5398 15.1957 19.0689 15.5874 18.6773C15.9791 18.2856 16.4499 18.0898 16.9999 18.0898C17.5499 18.0898 18.0207 18.2856 18.4124 18.6773C18.8041 19.0689 18.9999 19.5398 18.9999 20.0898C18.9999 20.6398 18.8041 21.1106 18.4124 21.5023C18.0207 21.8939 17.5499 22.0898 16.9999 22.0898ZM6.29941 6.08978L8.56191 10.8148H15.5379L18.1324 6.08978H6.29941ZM5.25366 3.91028H19.7767C20.2302 3.91028 20.5752 4.11103 20.8119 4.51253C21.0484 4.91403 21.0571 5.32161 20.8379 5.73528L17.4254 11.9023C17.2341 12.2474 16.9774 12.5167 16.6554 12.71C16.3332 12.9034 15.9807 13 15.5977 13H8.20166L7.15541 14.9103H19.0897V17.0898H6.99991C6.20607 17.0898 5.60949 16.7446 5.21016 16.0543C4.81099 15.3641 4.79632 14.6801 5.16616 14.0023L6.49816 11.6L2.94616 4.08978H0.910156V1.91028H4.30366L5.25366 3.91028Z" fill="white"/></g></svg>');
}

.MiniCartProductImage {
	align-self: flex-start;
	aspect-ratio: 1 / var(--product-image-ratio);
	background-color: var(--image-background-color);
	border-radius: var(--border-radius);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: 0;
	width: 60px;
	width: min(14%, 60px);
	z-index: 1;
}

.MiniCartProductImage img {
	border-radius: var(--border-radius);
	object-fit: contain;
}

.MiniCartProducts .MiniCartProduct:nth-child(n+5) {
    display: none;
}

.MiniCartProductInfo {
	flex: 1;
}

.MiniCartProductInfo label {
	display: none;
}

.MiniCartProductInfo .BuyForm {
	margin: 0;
}

.MiniCartProductInfo .BuyFormQuantity {
	display: none;
}

.MiniCartProductInfo .Flex {
	flex-direction: column;
}

.MiniCartProductInfo > :last-child {
	margin-bottom: 0;
}

.MiniCartProductDetails {
	display: flex;
	justify-content: space-between;
}

.MiniCartProductName {
	display: block;
	font-weight: bold;
	margin-bottom: 0;
	text-decoration: none;
}

.MiniCartProductPrices {
	margin: 0;
	text-align: right;
	white-space: nowrap;
}

.MiniCartProductPrices[data-product-quantity]:not([data-product-quantity="1"])::before {
	content: attr(data-product-quantity) ' \00d7  ';
	font-weight: bold;
}

.MiniCartProduct.AvailabilityOutOfStock [data-product-quantity]::before {
	border-bottom: 2px solid var(--color-notification-error);
}

.MiniCartSection {
	padding-top: 2rem;
}