/**
 * Card layout for the "Options" view from Tiered Pricing Table.
 * Astra colors are used first; every variable has a standalone fallback.
 */

.tpt__tiered-pricing .tiered-pricing-options {
	/* Kolory ze wspólnych tokenów cennika (frontend.css). */
	--tpt-card-accent: var(--tpt-accent);
	--tpt-card-surface: var(--tpt-surface);
	--tpt-card-text: var(--tpt-text);
	--tpt-card-muted: var(--tpt-muted);
	--tpt-card-border: var(--tpt-border);
	display: grid;
	gap: 16px;
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
	min-height: 92px;
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--tpt-card-border);
	border-radius: var(--tpt-radius);
	background: var(--tpt-card-surface);
	box-shadow: none;
	color: var(--tpt-card-text);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option:not(.tiered-pricing--active):hover {
	border-color: color-mix(in srgb, var(--tpt-card-accent) 35%, var(--tpt-card-border));
	background: var(--tpt-card-hover-surface, var(--tpt-card-surface));
	box-shadow: var(--astrashoptoolkit-shadow-sm);
	color: var(--tpt-card-text);
	transform: translateY(-1px);
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option:not(.tiered-pricing--active):hover *:not(.tiered-pricing-option__bestseller, .tiered-pricing-option__saving, .tiered-pricing-option__saving *) {
	color: inherit;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option.tiered-pricing--active {
	border: 2px solid var(--tpt-card-accent);
	padding: 17px 19px;
	background: var(--tpt-card-active-surface, var(--tpt-card-surface));
	box-shadow: var(--astrashoptoolkit-shadow);
	color: var(--tpt-card-text);
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option.tiered-pricing--active,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option.tiered-pricing--active *:not(.tiered-pricing-option__bestseller, .tiered-pricing-option__saving, .tiered-pricing-option__saving *) {
	color: var(--tpt-card-text);
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__checkbox {
	display: grid;
	place-items: center;
	align-self: center;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-checkbox {
	position: relative;
	box-sizing: border-box;
	width: 22px;
	height: 22px;
	border: 1px solid color-mix(in srgb, var(--tpt-card-text) 35%, var(--tpt-card-border));
	border-radius: 50%;
	background: var(--tpt-card-surface);
	transition: border-color 160ms ease;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing--active .tiered-pricing-option-checkbox {
	border-color: var(--tpt-card-accent);
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing--active .tiered-pricing-option-checkbox::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--tpt-card-text);
	transform: translate(-50%, -50%);
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__quantity {
	min-width: 0;
	color: var(--tpt-card-text);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__title,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__unit-price {
	display: block;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__title {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 5px;
	min-width: 0;
	max-width: 100%;
	white-space: nowrap;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__multiplier {
	flex: 0 0 auto;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__product-name {
	display: block;
	flex: 0 1 auto;
	min-width: 5ch;
	margin-right: 1rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__bestseller {
	/* Wygląd znaczka: assets/Styles/badges.css */
	display: flex;
	width: fit-content;
	max-width: 100%;
	margin-top: 6px;
	margin-left: 0;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__unit-price {
	margin-top: 4px;
	color: var(--tpt-card-muted);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__quantity small {
	display: block;
	margin-top: 4px;
	color: var(--tpt-card-muted);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__pricing {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	margin-left: auto;
	text-align: right;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__saving {
	/* Wygląd znaczka: assets/Styles/badges.css */
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 2px;
	max-width: 100%;
	text-align: center;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__saving .amount {
	flex: 0 0 auto;
	white-space: nowrap;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price {
	display: flex;
	align-items: flex-end;
	flex-direction: column-reverse;
	gap: 2px;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price__discounted,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price__discounted .amount {
	color: var(--tpt-card-text);
	font-size: 20px;
	font-weight: 800;
	line-height: 1.2;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price__original,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price__original .amount {
	color: color-mix(in srgb, var(--tpt-card-muted) 62%, transparent);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.25;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price__regular-label {
	color: var(--tpt-card-muted);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.25;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-total {
	display: none !important;
}

.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-total .amount,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-total__discounted_total {
	color: var(--tpt-card-text);
	font-weight: 700;
}



@media (max-width: 767px) {
	.tpt__tiered-pricing .tiered-pricing-options {
		gap: 12px;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option {
		grid-template-columns: 22px minmax(0, 1fr) auto;
		align-items: center;
		gap: 12px;
		padding: 15px;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option.tiered-pricing--active {
		padding: 14px;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__checkbox {
		align-self: center;
		margin-top: 0;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__pricing {
		grid-column: 3;
		align-items: flex-end;
		align-self: center;
		width: 100%;
		max-width: 125px;
		margin-left: auto;
		text-align: right;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__saving {
		box-sizing: border-box;
		width: 100%;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-price {
		align-items: flex-end;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option-total {
		justify-content: flex-end;
	}
}

@media (max-width: 479px) {
	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option {
		column-gap: 9px;
		padding: 13px 11px;
	}

	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option.tiered-pricing--active {
		padding: 12px 10px;
	}


	.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option__pricing {
		max-width: 108px;
	}
}

/* Shipping information remains readable in normal, hovered and selected options. */
.tpt__tiered-pricing .tiered-pricing-shipping,
.tpt__tiered-pricing .tiered-pricing-shipping * {
    color: var(--tpt-shipping-text, inherit);
}
.tpt__tiered-pricing .tiered-pricing-shipping {
    display: flex;
    align-items: flex-start;
    gap: var(--astk-shipping-icon-gap, 7px);
    width: fit-content;
    max-width: 100%;
    margin-top: 8px;
    padding: 5px 8px;
    border-radius: var(--astrashoptoolkit-radius-sm);
    background: var(--tpt-shipping-background, transparent);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
    white-space: normal;
}
.tpt__tiered-pricing .tiered-pricing-shipping--summary {
    margin-top: 12px;
    font-size: 14px;
}
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option .tiered-pricing-shipping,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option .tiered-pricing-shipping * {
    color: var(--tpt-shipping-text, var(--tpt-card-text));
}
.tpt__tiered-pricing .tiered-pricing-shipping .tiered-pricing-shipping__icon,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option .tiered-pricing-shipping .tiered-pricing-shipping__icon {
    color: var(--tpt-shipping-icon, var(--tpt-shipping-text, var(--astrashoptoolkit-astra-color-0)));
    width: var(--astk-shipping-icon-size, 18px);
    height: var(--astk-shipping-icon-size, 18px);
    font-size: var(--astk-shipping-icon-size, 18px);
}
/* The text color rule above targets every descendant; the icon markup follows the icon color instead. */
.tpt__tiered-pricing .tiered-pricing-shipping .tiered-pricing-shipping__icon *,
.tpt__tiered-pricing .tiered-pricing-options .tiered-pricing-option .tiered-pricing-shipping .tiered-pricing-shipping__icon *,
.tpt__tiered-pricing .tiered-pricing-indicators .tiered-pricing-shipping .tiered-pricing-shipping__icon * {
    color: inherit;
}

.tpt__tiered-pricing .tiered-pricing-indicators .tiered-pricing-shipping,
.tpt__tiered-pricing .tiered-pricing-indicators .tiered-pricing-shipping * {
    color: var(--tpt-shipping-text, inherit);
}
.tpt__tiered-pricing .tiered-pricing-indicators .tiered-pricing-shipping .tiered-pricing-shipping__icon {
    color: var(--tpt-shipping-icon, var(--tpt-shipping-text, inherit));
}
