:root {
	--credit-used: 0%;
	--credit-newAmount: 0%;
	--credit-newAmount-color: var(--sccss);
	--credit-used-color: var(--wrnng);
	--print-not-ready: 'Not ready for print';
}

#cart {
	z-index: 1060;
}

.cart.modal .order-nav-container {
	display: flex;
	align-items: center;
	justify-content: space-around;
}

.cart.modal .modal-content {
	height: 100%; /* fixni vyska aby neskakal, modal je scrollovaci */
}

.cart.modal .modal-body {
	display: flex;
	flex-flow: column;
}

.cart.modal .modal-body h2,
.cart.modal .modal-body h3 {
	margin-top: 0;
}

.cart.modal .slot {
	margin-left: auto;
}

/* progress bar >> */
.cart.modal .order-nav-arrow {
	flex: 0 0 auto;
	cursor: pointer;
	display: none;
	justify-content: center;
	width: 140px;
	background-image: linear-gradient(
		90deg,
		var(--sccss-hov) 0% 20%,
		var(--sccss) 20% 40%,
		var(--scndr-dis) 40% 100%
	);
	background-size: 500%;
	background-position: 25%;
	clip-path: polygon(
		0 0,
		calc(100% - 20px) 0,
		100% 50%,
		calc(100% - 20px) 100%,
		0 100%,
		20px 50%,
		0 0
	);
	transition:
		background-position 0.5s,
		color 0.4s 0.1s;
}

.cart.modal .order-nav-arrow.active {
	display: flex;
}

.cart.modal .order-nav-arrow.step1 {
	clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 0 100%, 0 0);
	border-top-left-radius: var(--radius);
	border-bottom-left-radius: var(--radius);
}

.cart.modal .order-nav-arrow.step2,
.cart.modal .order-nav-arrow.step3 {
	margin-left: -0.5rem;
}

.cart.modal .order-nav-arrow.active,
.cart.modal .order-nav-arrow:hover,
.cart.modal[data-step='2'] .order-nav-arrow.step1,
.cart.modal[data-step='3'] .order-nav-arrow.step1,
.cart.modal[data-step='3'] .order-nav-arrow.step2 {
	background-position: 0%;
	color: var(--sccss-text-hov);
}

.cart.modal[data-step='1'] .order-nav-arrow.step3,
.cart.modal[data-step='1'] .order-nav-arrow.step3:hover {
	color: var(--scndr-text);
	background-position: 50%;
}

.cart-header .order-stop-confirm.dialog-container {
	margin-left: auto !important;
}

.cart.modal .order-nav-arrow span {
	margin-block: 0.5rem;
	font-weight: 500;
	font-size: 1rem;
}

.cart.modal .order-nav-arrow.step1 span {
	margin-right: 1rem;
}

.cart.modal[data-step='1'] .step1,
.cart.modal[data-step='1'] .step3,
.cart.modal[data-step='2'] .step2,
.cart.modal[data-step='3'] .order-nav-arrow {
	pointer-events: none;
	touch-action: none;
}

/* << progress bar */
.cart.modal .step-1 .cart-items {
	display: flex;
	flex: 1 1 100%;
	flex-direction: column;
}

.gift-header {
	margin-top: 3rem !important;
}

.order-step .suggestions-header {
	flex: 1 1 100%;
	display: flex;
	flex-flow: row wrap;
	row-gap: 1rem;
}

.cart-header {
	flex: 1 1 100%;
	display: flex;
	flex-flow: column;
}

.order-step .suggestions-header h2 {
	flex: 0 1 auto;
}

.cart.modal .order-step {
	display: flex;
	flex: 0 1 auto;
	flex-flow: row wrap;
	width: 100%;
	transition:
		flex 0.5s,
		opacity 0.15s 0.35s;
}

.cart.modal .order-step.step-2 .summary-wrapper {
	width: 100%;
	padding-bottom: 2rem;
	overflow-y: auto;
	border-top-left-radius: var(--radius);
}

.cart.modal .order-step.step-3 {
	flex-flow: column;
}

.cart.modal .order-step.step-3 p {
	font-size: 1rem;
}

.cart.modal .order-step p.success {
	font-weight: 500;
	color: var(--sccss);
}

.cart.modal .cart-tools {
	display: flex;
	gap: 2rem;
	flex: 1 0 73%;
	padding-top: 1rem;
	flex-flow: column;
	justify-content: end;
}

.cart.modal .cart-summary {
	flex: 0 0 auto;
	width: 14rem;
	padding-inline: 0;
}

.cart.modal .cart-tools .cart-buttons {
	display: flex;
	flex-flow: column wrap;
	gap: 0.5rem;
	align-content: start;
	margin-right: auto;
}

.cart.modal .cart-tools .cart-buttons > * {
	flex: 0 0 auto;
	margin-right: auto;
}

.cart.modal .cart-settings {
	display: grid;
	gap: 2rem;
	padding: 1rem 0;
	width: 100%;
	height: max-content;
}

.cart.modal .cart-settings > .cart-settings-item,
.cart-settings-item {
	display: grid;
	gap: 0.5rem;
	grid-template-columns: 1fr;
	min-height: 2rem;
}

.cart.modal .cart-settings .form-control {
	width: calc(20ch + 1.5rem + 2px);
}

.cart.modal .cart-settings .note .form-control {
	flex: 1;
	max-width: 80ch;
}

.cart.modal:not([data-step='1']) .step-1,
.cart.modal:not([data-step='2']) .step-2,
.cart.modal:not([data-step='3']) .step-3 {
	flex: 0 1 0;
	width: 0;
	opacity: 0;
	font-size: 0;
	overflow-x: hidden;
	transition-duration: 0.25s;
	transition-delay: 0s;
	pointer-events: none;
	touch-action: none;
}

.step-2 .bid-table.summary {
	min-width: 992px;
	height: max-content;
	padding-bottom: 0;
	margin-bottom: 0;
}

.step-2 .delivery-windows .form-select[data-selected='-1'] {
	display: none;
}

.step-2 .bid-table.summary :is(.item, header) {
	grid-template-columns: 4rem 6fr repeat(3, 2fr) 1fr 2fr;
	padding: 0.3rem;
}

#cart .bid-table.summary .item > :is(.unit-price, .pckg-size, .pckg-excl-vat, .qty) {
	place-self: center end;
	padding-right: 0.5rem;
}

#cart .bid-table.summary .item .price {
	place-self: center end;
}

.step-2 h2 {
	margin-bottom: 1rem;
}

.step-2 .bid-table.summary :is(.item, header) :first-child {
	position: sticky;
	place-self: center stretch;
	left: 0;
	margin-block: -0.3rem -1px;
	padding-block: 0.3rem 1px;
	padding-inline: 0.25rem;
}

.step-2 .bid-table.summary header :first-child {
	background: var(--login-bg);
	position: sticky;
}

.step-2 .bid-table.summary .item :first-child {
	background: var(--bg-color);
}

.step-2 .bid-table.summary .item :first-child::after {
	content: '';
	position: absolute;
	width: 1px;
	top: 0.5rem;
	bottom: 0;
	right: 0.25rem;
	background: var(--login-bg);
}

.step-2 .bid-table.summary .item span.note {
	padding-top: 0.25rem;
	grid-column: 1 / -1;
}

.step-2 .bid-table.summary .item span.note.hide {
	display: none;
}

.step-2 .bid-table.summary header {
	font-weight: 500;
}

.step-2 .options-summary {
	width: 100%;
}

.options-summary .cart-settings-item input {
	border: none;
}

.options-summary button {
	display: none;
}

.step-2 .checkbox-container {
	opacity: 1 !important;
	--checkbox-color: var(--scndr-dis) !important;
}

.step-2 img.icon.i-tip {
	display: none;
}

.step-3 p.hidden {
	display: none;
}

/* footer >> */
.cart.modal .cart-footer {
	display: flex;
	flex: 1;
	flex-flow: row wrap;
	row-gap: 0.5rem;
	justify-content: space-between;
}

.cart-footer > * {
	flex: 0 0 auto;
}

.cart-footer .order-close {
	min-width: 10rem;
}

.cart.modal:not([data-step='1']) .order-check {
	display: none;
}

.cart.modal:not([data-step='2']) .order-confirm {
	display: none;
}

.cart.modal:not([data-step='3']) .order-close {
	display: none;
}

/*.cart.modal[data-step="1"] .order-back :first-child,        (step 1 = close)
.cart.modal:not([data-step="1"]) .order-back :last-child*/
.cart.modal .order-back :last-child {
	display: none;
}

.cart.modal[data-step='3'] .order-back {
	display: none;
}

.cart.modal[data-step='3'] .cart-footer {
	justify-content: end;
}

/* << footer */

.cart.modal .cart-settings-item.not-valid .control > :not(.not-valid-tip) {
	opacity: 0.5;
}

.cart.modal .cart-settings-item:not(.not-valid) .not-valid-tip {
	display: none;
}

.cart.modal .cart-settings-item > .control {
	display: flex;
	row-gap: 0.5rem;
	flex-wrap: wrap;
	align-items: center;
}

.reasons-to-refuse.dialog-body ul /* cart + my-account */ {
	padding-left: 1rem;
	font-weight: 500;
}

.cart.modal .step-1 .cart-item:not(.disc-applied) .price-total .disc {
	display: none !important;
}

.cart.modal .step-1 .cart-settings-item.discountcode button#apply-disc,
.cart.modal .step-1 .cart-settings-item.discountcode img.icon.i-tip {
	margin-right: 0.5rem;
}

.cart.modal .step-1 .cart-settings-item span.disc-applied,
.cart-item.disc-applied .price-total .disc {
	font-weight: 500;
	color: var(--sccss-hov);
}

.cart-item.disc-applied .price-total > span:not(.disc):not(:first-child) {
	text-decoration: line-through;
}

.cart.modal .step-2 .cart-settings-item #discount-selector-dropdown input {
	padding-inline: 0;
}

.cart.modal .cart-settings .delivery-windows {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-column-gap: 0.5rem;
}

.cart.modal .cart-settings .delivery-windows .form-select {
	width: fit-content;
}

.cart-settings .delivery-windows .windows {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
}

.cart-settings .delivery-windows .windows > span {
	flex: 1 1 100%;
}

.cart.modal h2 + a {
	align-self: baseline;
}

.cart.modal .view-vat {
	align-self: center;
	margin-left: auto;
}

.cart-delete-confirm {
	min-width: max-content;
}

.product-card .cart-loader {
	position: absolute;
	inset: 0;
}

/* cart summary >> */
.cart-loader {
	gap: 0.5rem;
	display: flex;
	align-items: center;
	background: var(--bg-color);
	padding: 1rem 0.5rem 2rem 0.5rem;
	border-radius: var(--radius);
	margin-top: 10px;
}

.credit-info {
	display: none;
}

.credit-title,
.bidpoints-title {
	font-weight: 700;
}

.cart-summary {
	display: none;
	gap: 1rem;
	flex-flow: column wrap;
	background: var(--bg-color);
	border-radius: var(--radius);
	padding: 1rem 0.5rem;
}

.cart-summary > button {
	max-width: max-content;
	margin-right: auto;
}

.cart-summary-row {
	display: flex;
	justify-content: space-between;
}

.cart-summary .credit-graph {
	position: relative;
	margin-block: 1rem 1.5rem;
	border-radius: 100px;
	height: 0.5rem;
	width: 100%;
	background: linear-gradient(
		to right,
		var(--credit-used-color) var(--credit-used),
		var(--credit-newAmount-color) var(--credit-used) var(--credit-newAmount),
		var(--light-gray) var(--credit-newAmount) 100%
	);
}

.cart-summary .credit-graph:before {
	content: '';
	background: black;
	position: absolute;
	left: 80%;
	width: 2px;
	top: -0.25rem;
	bottom: -0.25rem;
}

.cart-summary .credit-graph:after {
	content: '80%';
	color: black;
	position: absolute;
	transform: translateX(-1ch);
	left: 80%;
	bottom: -1.5rem;
}

.cart-summary[data-in-cart='0'] .cart-toggle {
	pointer-events: none;
	touch-action: none;
}

.cart-summary[data-in-cart='0'] .cart-toggle img[data-toggle='tooltip'] {
	position: absolute;
	pointer-events: auto;
	touch-action: auto;
}

.cart-summary[data-in-cart='0'] .open-cart-btn {
	background-color: var(--bg-color);
	border: 2px solid rgba(135, 198, 97, 0.5);
	margin: -1px;
}

body:not([data-in-cart='0']) .cart-summary .cart-toggle .icon.i-tip {
	display: none;
}

.cart-summary[data-in-cart='0'] .summary {
	display: none;
}

.cart.modal .options-summary {
	flex: 1 0 73%;
	pointer-events: none;
	touch-action: none;
}

.cart.modal .total-summary {
	flex: 0 0 auto;
	width: 14rem;
	margin-left: auto;
	padding: 1rem 0;
}

.suggestions-loader {
	position: absolute;
	display: flex;
	inset: -0.5rem;
	background: var(--bg-color);
	z-index: 55;
}

.suggestions-loader[data-loading='1']::before {
	display: block;
	margin: auto;
	width: 6rem;
	height: 6rem;
}

h2.cart-forgotten {
	margin-bottom: 0;
}

.get-more-suggestions {
	display: flex;
	margin-right: auto;
	align-self: center;
}

.get-more-suggestions.rotate img {
	animation: rotate 1s linear infinite both;
}

#cart .modal-dialog.loading:before,
#missing-combos .modal-dialog.loading:before {
	position: absolute;
	inset: 0;
	content: '';
	z-index: 60;
	background: hsl(0deg 0% 0% / 30%);
}

#cart .modal-dialog.loading .modal-content,
#missing-combos .modal-dialog.loading .modal-content {
	pointer-events: none;
	touch-action: none;
}

#cart .modal-dialog.loading:after,
#missing-combos .modal-dialog.loading:after {
	position: absolute;
	z-index: 49;
	height: 6rem;
	width: 6rem;
	top: calc(50% - 3rem);
	left: calc(50% - 3rem);
}

.bidpoints-msg-toggle {
	position: absolute;
	height: 1px;
	width: 1px;
	inset: 50%;
}

#cart .suggestions-container {
	flex: 1 1 100%;
	position: relative;
	display: flex;
	min-height: 216px;
	margin: 1rem auto 3rem auto;
	flex-flow: row wrap;
}

#cart .suggestions {
	flex: 1 1 100%;
	display: flex;
	flex-flow: row wrap;
	gap: 0.5rem;
	justify-content: space-evenly;
}

/* << cart summary */

@keyframes rotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@media (min-width: 576px) {
	.cart.modal .order-nav-arrow {
		width: 170px;
	}
}

@media (min-width: 768px) {
	.cart.modal .cart-settings {
		gap: 0.5rem;
	}
	.cart.modal .step-1 .cart-items {
		border-bottom: 2px solid var(--sccss);
	}
	.cart.modal .cart-settings > .cart-settings-item,
	.cart-settings-item {
		grid-template-columns: minMax(150px, 0.5fr) 1fr;
		gap: 1rem;
	}

	.cart.modal .cart-settings > .cart-settings-item.note {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}

	.cart.modal .order-nav-arrow {
		display: flex;
	}
}

@media (min-width: 992px) {
	.step-2 .summary {
		width: 100%;
	}
}

.product-card.cart-item .product-blocked {
	position: absolute;
	inset: 0;
	background: var(--dngr-opacity);
	grid-column: remove-start / -1;
	grid-row: 1 / -1;
}

/* gift item > */
.product-card.cart-item.gift .gift-qty {
	grid-area: qty;
	place-self: center;
}
.step-2 .summary.gift {
	margin-top: 1rem;
}
.step-2 .summary.gift.empty {
	display: none;
}
.bid-table.summary.gift header {
	grid-template-columns: 1fr;
}
.note-alert.dialog-container {
	display: flex;
	flex: 1 0 auto;
	max-width: 62ch;
}
.note input.mandatory::placeholder {
	color: var(--dngr);
	font-weight: normal;
}
/* < gift item */

@media (min-width: 768px) {
	.cart.modal .cart-tools {
		justify-content: space-between;
	}

	.cart-header {
		flex-flow: row wrap;
	}
}

@media (min-width: 992px) {
	.cart.modal .cart-tools .cart-buttons {
		flex-flow: row wrap;
	}
}

@media (min-width: 1200px) {
	.cart.modal .cart-settings > .cart-settings-item.note {
		grid-template-columns: minMax(150px, 0.5fr) 1fr;
		gap: 1rem;
	}
}

@media print {
	#cart {
		position: relative !important;
	}

	#cart .modal-content,
	#cart .modal-dialog {
		border: none;
		width: 100% !important;
		margin-top: 0 !important;
		max-width: 100% !important;
	}

	#cart-body {
		padding: 0 !important;
	}

	#cart-header,
	#cart-footer {
		display: none !important;
	}

	.print-area .step-2 {
		flex-direction: column !important;
	}

	.print-area .order-step:not(.step-2) {
		display: none !important;
	}

	.print-area :is(.options-summary, .total-summary) {
		break-inside: avoid-page;
	}

	.print-area :is(.options-summary) {
		flex: 1 1 auto !important;
	}

	.print-area .total-summary .summary {
		min-width: 6cm;
	}

	.print-area .step-2 .summary-wrapper .summary {
		width: 100% !important;
		zoom: 80%;
	}

	.print-area .step-2 .summary-wrapper .summary .item :first-child {
		border-right: none;
	}

	.print-area .step-2 .cart-settings-item:not(.note) {
		grid-template-columns: 1.5fr 0.75fr;
	}

	.print-area .summary .summary-item {
		row-gap: 5px;
	}

	.print-area .summary .summary-item span {
		background: none;
		padding: 0 0 0 0.25rem;
	}

	.print-area h2 {
		color: var(--scndr);
	}
}
