.oo-sport-header-cart-link {
	display: inline-flex;
	align-items: center;
	gap: 0.36rem;
	margin-left: 0.62rem;
	padding: 0.25em 0.72em;
	height: 1.35rem;
	min-height: 1.35rem;
	padding-top: 0;
	padding-bottom: 0;
	border: 1px solid rgba(212, 255, 0, 0.72);
	border-radius: 999px;
	background: rgba(212, 255, 0, 0.92);
	color: #0d1f3c;
	text-decoration: none;
	font-family: "Exo 2", sans-serif;
	font-size: 0.8em;
	font-weight: 800;
	letter-spacing: 0.05em;
	line-height: 1;
	box-sizing: border-box;
	box-shadow: 0 0 12px rgba(212, 255, 0, 0.24);
	transition: box-shadow 0.2s ease, background-color 0.2s ease;
}

.oo-sport-header-contact-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.5rem;
	padding: 0.25em 0.78em;
	height: 1.35rem;
	min-height: 1.35rem;
	border: 1px solid rgba(212, 255, 0, 0.72);
	border-radius: 999px;
	background: rgba(212, 255, 0, 0.92);
	color: #0d1f3c !important;
	text-decoration: none;
	font-family: "Exo 2", sans-serif;
	font-size: 0.78em;
	font-weight: 800;
	letter-spacing: 0.06em;
	line-height: 1;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
	box-shadow: 0 0 12px rgba(212, 255, 0, 0.24);
	transition: box-shadow 0.2s ease, background-color 0.2s ease;
}
.oo-sport-header-contact-link:visited {
	color: #0d1f3c !important;
}
.oo-sport-header-contact-link:hover,
.oo-sport-header-contact-link:focus-visible,
.oo-sport-header-contact-link:active {
	background: rgba(224, 255, 44, 0.98);
	box-shadow: 0 0 16px rgba(212, 255, 0, 0.34);
	color: #0d1f3c !important;
	outline: none;
}

/* Desktopis hoia kontakt-nupp peidus (mobiili kiirnupp). */
@media (min-width: 782px) {
	.oo-sport-header-contact-link {
		display: none !important;
	}
}

.oo-sport-header-cart-link:hover,
.oo-sport-header-cart-link:focus-visible {
	background: rgba(224, 255, 44, 0.98);
	box-shadow: 0 0 16px rgba(212, 255, 0, 0.34);
}

.oo-sport-header-cart-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	color: #0d1f3c;
}

.oo-sport-header-cart-icon svg {
	display: block;
	width: 16px;
	height: 16px;
	fill: #0d1f3c;
}

.oo-sport-header-cart-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: rgba(13, 31, 60, 0.85);
	color: #d4ff00;
	font-size: 0.68rem;
	font-weight: 800;
	line-height: 1;
}

.oo-sport-header-cart-badge:not(.has-items) {
	opacity: 0.72;
}

.oo-sport-quote-cart-page {
	width: auto;
	max-width: none;
	margin: calc(var(--oo-header-height, 88px) + 22px) 38px 18px;
	min-height: calc(var(--oo-real-vh, 100dvh) - var(--oo-header-height, 88px) - 40px);
	padding: 1rem;
	font-family: "Exo 2", sans-serif;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 14px;
	background: rgba(192, 196, 201, 0.74);
	background-color: rgba(192, 196, 201, 0.74);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14), 0 3px 8px rgba(0, 0, 0, 0.09);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	box-sizing: border-box;
}

.oo-sport-quote-cart-head {
	margin-bottom: 0.9rem;
}

.oo-sport-quote-cart-title {
	margin: 0;
	font-family: "Exo 2", sans-serif;
	font-size: clamp(1.2rem, 2.2vw, 1.55rem);
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.96);
}

.oo-sport-quote-cart-subtitle {
	margin: 0.35rem 0 0;
	font-size: 0.95rem;
	line-height: 1.4;
	color: rgba(240, 244, 248, 0.88);
}

.oo-sport-quote-cart-table-wrap {
	overflow-x: auto;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 10px;
	scrollbar-width: thin;
	scrollbar-color: #d4ff00 rgba(7, 18, 36, 0.55);
}

.oo-sport-quote-cart-table-wrap::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

.oo-sport-quote-cart-table-wrap::-webkit-scrollbar-track {
	background: rgba(7, 18, 36, 0.55);
	border-radius: 999px;
}

.oo-sport-quote-cart-table-wrap::-webkit-scrollbar-thumb {
	background: linear-gradient(180deg, #e8ff4d 0%, #d4ff00 55%, #b7dd00 100%);
	border-radius: 999px;
}

.oo-sport-quote-cart-table-wrap::-webkit-scrollbar-thumb:hover {
	background: linear-gradient(180deg, #f2ff7a 0%, #d4ff00 55%, #c2ea00 100%);
}

.oo-sport-quote-cart-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 720px;
	background: rgba(13, 31, 60, 0.16);
}

.oo-sport-quote-cart-table th,
.oo-sport-quote-cart-table td {
	padding: 0.68rem 0.72rem;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	color: rgba(240, 244, 248, 0.95);
	font-size: 0.9rem;
}

.oo-sport-quote-cart-table thead th {
	font-family: "Exo 2", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: rgba(240, 244, 248, 0.86);
	background: rgba(13, 31, 60, 0.22);
}

.oo-sport-quote-cart-table tbody tr:last-child td {
	border-bottom: none;
}

.oo-sport-quote-cart-product-link {
	color: rgba(240, 244, 248, 0.96) !important;
	font-family: "Exo 2", sans-serif;
	font-weight: 700;
	text-decoration: none;
	border-bottom: 1px solid rgba(212, 255, 0, 0.5);
}

.oo-sport-quote-cart-product-link:hover,
.oo-sport-quote-cart-product-link:focus-visible {
	color: #d4ff00 !important;
	border-bottom-color: #d4ff00;
}

.oo-sport-quote-cart-product-cell {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	min-width: 0;
}

.oo-sport-quote-cart-product-images {
	display: inline-flex;
	align-items: center;
	gap: 0.34rem;
	flex: 0 0 auto;
}

.oo-sport-quote-cart-product-thumb {
	display: block;
	object-fit: cover;
	border: 1px solid rgba(255, 255, 255, 0.26);
	border-radius: 8px;
	background: rgba(13, 31, 60, 0.32);
}

.oo-sport-quote-cart-product-thumb.is-product {
	width: 64px;
	height: 64px;
}

.oo-sport-quote-cart-product-thumb.is-color {
	display: none !important;
}

.oo-sport-quote-cart-product-main {
	min-width: 0;
	display: inline-flex;
	align-items: center;
}

.oo-sport-quote-cart-qty-wrap {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 6px;
	background: rgba(58, 64, 72, 0.9);
	overflow: hidden;
}

.oo-sport-quote-cart-qty {
	width: 56px;
	padding: 0.42rem 0.3rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #f0f4f8;
	text-align: center;
	font-weight: 700;
	appearance: textfield;
	-moz-appearance: textfield;
}

.oo-sport-quote-cart-qty::-webkit-inner-spin-button,
.oo-sport-quote-cart-qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
	display: none;
}

.oo-sport-quote-cart-stepper {
	display: inline-flex;
	flex-direction: column;
	width: 20px;
	border-left: 1px solid rgba(212, 255, 0, 0.24);
}

.oo-sport-quote-cart-step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 50%;
	padding: 0;
	border: 0;
	background: rgba(13, 31, 60, 0.58);
	color: #d4ff00;
	font-family: "Exo 2", sans-serif;
	font-size: 0.62rem;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition: background-color 140ms ease, color 140ms ease;
}

.oo-sport-quote-cart-step + .oo-sport-quote-cart-step {
	border-top: 1px solid rgba(212, 255, 0, 0.2);
}

.oo-sport-quote-cart-step:hover,
.oo-sport-quote-cart-step:focus-visible {
	background: rgba(13, 31, 60, 0.82);
	color: #e8ff4d;
}

.oo-sport-quote-cart-step:focus,
.oo-sport-quote-cart-step:active {
	outline: none;
	box-shadow: none;
}

.oo-sport-quote-cart-remove,
.oo-sport-quote-cart-send-all,
.oo-sport-quote-cart-clear,
.oo-sport-quote-cart-back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0.42rem 0.72rem;
	border-radius: 8px;
	font-family: "Exo 2", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	cursor: pointer;
	text-decoration: none;
}

.oo-sport-quote-cart-remove,
.oo-sport-quote-cart-clear {
	border: 1px solid rgba(255, 255, 255, 0.26);
	background: rgba(58, 64, 72, 0.9);
	color: rgba(240, 244, 248, 0.95);
}

.oo-sport-quote-cart-send-all {
	border: 1px solid rgba(212, 255, 0, 0.72);
	background: rgba(212, 255, 0, 0.92);
	color: #0d1f3c !important;
}

.oo-sport-quote-cart-remove:hover,
.oo-sport-quote-cart-send-all:hover,
.oo-sport-quote-cart-clear:hover,
.oo-sport-quote-cart-remove:focus-visible,
.oo-sport-quote-cart-send-all:focus-visible,
.oo-sport-quote-cart-clear:focus-visible {
	border-color: rgba(212, 255, 0, 0.72);
	color: #d4ff00;
}

.oo-sport-quote-cart-send-all:hover,
.oo-sport-quote-cart-send-all:focus-visible {
	background: rgba(224, 255, 44, 0.98);
	color: #0d1f3c !important;
}

.oo-sport-quote-cart-back {
	border: 1px solid rgba(212, 255, 0, 0.72);
	background: rgba(212, 255, 0, 0.92);
	color: #0d1f3c !important;
}

.oo-sport-quote-cart-back:hover,
.oo-sport-quote-cart-back:focus-visible {
	background: rgba(224, 255, 44, 0.98);
}

.oo-sport-quote-cart-empty {
	margin: 0.9rem 0 0;
	font-size: 0.92rem;
	color: rgba(240, 244, 248, 0.86);
}

.oo-sport-quote-cart-actions {
	margin-top: 0.9rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.56rem;
}

.oo-sport-quote-cart-group-lines {
	display: flex;
	flex-direction: column;
	gap: 0.32rem;
}

.oo-sport-quote-cart-group-line {
	display: flex;
	align-items: center;
	min-height: 34px;
}
.oo-sport-quote-cart-actions > a,
.oo-sport-quote-cart-actions > button {
	box-sizing: border-box;
}
@media (max-width: 781px) {
	/* Päringukorv: ära luba ühtegi horisontaalset kerimist (kogu leht + kaart). */
	html:has([data-oo-quote-cart-page]),
	body.page-paringukorv,
	body:has([data-oo-quote-cart-page]) {
		overflow-x: hidden !important;
	}
	body.page-paringukorv .wp-site-blocks,
	body:has([data-oo-quote-cart-page]) .wp-site-blocks {
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.oo-sport-header-cart-link {
		height: auto;
		min-height: 0;
		padding: 0.26rem 0.44rem;
		margin-left: 0.45rem;
	}

	.oo-sport-quote-cart-page {
		width: auto;
		max-width: none;
		/* Header on absolutse positsiooniga; anna piisav varu, et sisu ei jääks selle alla. */
		margin: 0 12px 12px !important;
		padding: 0.85rem;
		min-height: 0;
		height: auto;
		max-height: none;
		/* Ära kasuta overflow: visible mobiilis — muidu alumised nupud võivad ekraanist välja kaduda. */
		overflow-x: hidden;
		overscroll-behavior-x: none;
	}

	.oo-sport-quote-cart-table-wrap {
		/* Kerimine toimub wrap'i sees (kui vaja). */
		overflow: auto;
		overflow-x: hidden;
		border: 0;
		background: transparent;
	}

	.oo-sport-quote-cart-table {
		min-width: 0;
		background: transparent;
	}

	.oo-sport-quote-cart-table thead {
		display: none;
	}

	.oo-sport-quote-cart-table,
	.oo-sport-quote-cart-table tbody,
	.oo-sport-quote-cart-table tr,
	.oo-sport-quote-cart-table td {
		display: block;
		width: 100%;
	}

	.oo-sport-quote-cart-table tbody {
		display: flex;
		flex-direction: column;
		gap: 0.72rem;
	}

	.oo-sport-quote-cart-table tbody tr {
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 12px;
		background: rgba(13, 31, 60, 0.18);
		overflow: hidden;
	}

	.oo-sport-quote-cart-table tbody td {
		display: grid;
		grid-template-columns: minmax(78px, 92px) minmax(0, 1fr);
		gap: 0.55rem;
		align-items: center;
		padding: 0.6rem 0.68rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	}
	.oo-sport-quote-cart-product-cell,
	.oo-sport-quote-cart-product-main,
	.oo-sport-quote-cart-qty-wrap {
		min-width: 0;
		max-width: 100%;
	}
	.oo-sport-quote-cart-qty {
		max-width: 100%;
	}

	.oo-sport-quote-cart-table tbody td::before {
		content: attr(data-label);
		display: block;
		font-family: "Exo 2", sans-serif;
		font-size: 0.68rem;
		font-weight: 800;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: rgba(240, 244, 248, 0.8);
	}

	.oo-sport-quote-cart-table tbody tr td:last-child {
		border-bottom: none;
	}

	.oo-sport-quote-cart-col-product .oo-sport-quote-cart-product-cell {
		align-items: flex-start;
	}

	.oo-sport-quote-cart-col-product .oo-sport-quote-cart-product-thumb.is-product {
		width: 56px;
		height: 56px;
	}

	.oo-sport-quote-cart-col-product .oo-sport-quote-cart-product-main {
		min-width: 0;
	}

	.oo-sport-quote-cart-col-qty .oo-sport-quote-cart-qty-wrap {
		justify-self: start;
	}

	.oo-sport-quote-cart-col-remove .oo-sport-quote-cart-remove {
		justify-self: start;
	}

	.oo-sport-quote-cart-actions {
		flex-direction: column;
	}

	.oo-sport-quote-cart-actions > * {
		width: 100%;
		max-width: 100%;
		margin: 0;
		border-radius: 12px;
	}
}

@media (max-width: 1024px) {
	/* Mobiil/tablet: korvikaart peab mahtuma ekraanile; sisu kerib kaardi sees. */
	body.page-paringukorv .oo-sport-quote-cart-page,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-page {
		max-height: calc(var(--oo-real-vh, 100dvh) - var(--oo-header-height, 64px) - 12px) !important;
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
		padding-bottom: calc(0.85rem + env(safe-area-inset-bottom, 0px)) !important;
	}
	body.page-paringukorv .oo-sport-quote-cart-table-wrap,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-table-wrap {
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		overflow-x: hidden;
		box-sizing: border-box;
	}
	body.page-paringukorv .oo-sport-quote-cart-table,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-table {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}
	body.page-paringukorv .oo-sport-quote-cart-actions,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-actions {
		position: sticky;
		bottom: 0;
		padding-top: 0.65rem;
		padding-left: 0;
		padding-right: 0;
		margin-left: 0;
		margin-right: 0;
		background: linear-gradient(180deg, rgba(192, 196, 201, 0) 0%, rgba(192, 196, 201, 0.92) 32%);
	}
	body.page-paringukorv .oo-sport-quote-cart-actions > a,
	body.page-paringukorv .oo-sport-quote-cart-actions > button,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-actions > a,
	body:has([data-oo-quote-cart-page]) .oo-sport-quote-cart-actions > button {
		width: 100%;
		max-width: 100%;
	}
}
