/* Szuflada historii ceny — kolory ze szablonu sklepu (vv_product_box_settings / :root). */

.vv-ph-drawer-root {

	--vv-ph-accent: var(--vv-accent, var(--vvfs-accent, var(--vv-listing-page-accent, var(--vvp-listing-accent, var(--vvp-store-brand, #df0000)))));

	--vv-ph-bg: var(--vvfs-bg, var(--vv-listing-page-bg, var(--vvp-listing-bg, #ffffff)));

	--vv-ph-text: var(--vvfs-text, var(--vv-listing-page-text, var(--vvp-listing-text, #0f172a)));

	--vv-ph-muted: var(--vv-listing-page-muted, var(--vvp-store-muted, #64748b));

	--vv-ph-border: var(--vvfs-bc, var(--vv-listing-page-border, var(--vvp-listing-border, #e2e8f0)));

	--vv-ph-radius: var(--vvfs-radius, 12px);

}



/* Układ ceny + przycisk historii (działa bez .vv-hub-fragment) */
.vv-price-stack .vv-price-head {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas: "price action";
	align-items: center;
	gap: 10px 14px;
	width: 100%;
}

.vv-price-stack .vv-price-big {
	grid-area: price;
	min-width: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px 10px;
	line-height: 1.1;
}

.vv-price-stack .vv-price-big .price {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px 10px;
}

.vv-price-stack .vv-price-big .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.vv-price-stack .vv-price-history-trigger {
	grid-area: action;
	justify-self: end;
	align-self: center;
	width: auto !important;
	max-width: none !important;
}



.vv-price-stack .vv-price-history-trigger,
.vv-hub-fragment .vv-price-history-trigger,

.vv-price-history-trigger {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	gap: 6px;

	margin: 0;

	padding: 6px 13px;

	border-radius: 999px;

	border: 1px solid color-mix(in srgb, var(--vv-ph-accent, var(--vv-price-hist-ic)) 28%, var(--vv-ph-border, var(--vv-price-hist-bc)));

	background: color-mix(in srgb, var(--vv-ph-accent, var(--vv-price-hist-ic)) 8%, var(--vv-ph-bg, var(--vv-price-hist-bg)));

	color: var(--vv-ph-text, var(--vv-price-hist-txt));

	font-size: 11px;

	font-weight: 800;

	line-height: 1.3;

	cursor: pointer;

	white-space: nowrap;

	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;

}



.vv-price-history-trigger.is-icon-only {

	padding: 7px 8px;

	min-width: 34px;

}



.vv-price-history-trigger:hover,

.vv-price-history-trigger:focus-visible {

	border-color: color-mix(in srgb, var(--vv-ph-accent) 55%, transparent);

	color: var(--vv-ph-accent);

	background: color-mix(in srgb, var(--vv-ph-accent) 12%, var(--vv-ph-bg));

	outline: none;

	box-shadow: 0 0 0 2px color-mix(in srgb, var(--vv-ph-accent) 22%, transparent);

}



.vv-price-history-trigger__icon {

	font-size: 16px;

	width: 16px;

	height: 16px;

	line-height: 16px;

	color: var(--vv-ph-accent);

	flex-shrink: 0;

}



.vv-price-history-trigger__text {

	letter-spacing: 0.02em;

}



@media (max-width: 480px) {

	.vv-price-stack .vv-price-head {

		grid-template-columns: minmax(0, 1fr) auto;

		gap: 8px 10px;

	}



	.vv-price-history-trigger {

		padding: 6px 11px;

		font-size: 10px;

	}



	.vv-price-history-trigger.is-icon-only {

		padding: 7px 8px;

		min-width: 34px;

	}

	.vv-price-history-trigger.is-mobile-icon-only .vv-price-history-trigger__text {

		display: none !important;

	}

	.vv-price-history-trigger.is-mobile-icon-only {

		padding: 7px 8px;

		min-width: 34px;

	}

}



.vv-ph-drawer-root {

	position: fixed;

	inset: 0;

	z-index: 100060;

	pointer-events: none;

	visibility: hidden;

}



.vv-ph-drawer-root.is-open,
.vv-ph-drawer-root[aria-hidden="false"] {

	pointer-events: auto;

	visibility: visible;

}



.vv-ph-drawer-scrim {

	position: absolute;

	inset: 0;

	background: color-mix(in srgb, var(--vv-ph-text) 42%, transparent);

	opacity: 0;

	transition: opacity 0.25s ease;

}



.vv-ph-drawer-root.is-open .vv-ph-drawer-scrim {

	opacity: 1;

}



.vv-ph-drawer {

	position: absolute;

	top: 0;

	right: 0;

	width: min(420px, 100vw);

	max-width: 100%;

	height: 100%;

	height: 100dvh;

	display: flex;

	flex-direction: column;

	background: var(--vv-ph-bg);

	color: var(--vv-ph-text);

	border-left: 1px solid var(--vv-ph-border);

	box-shadow: -12px 0 48px color-mix(in srgb, var(--vv-ph-text) 18%, transparent);

	transform: translateX(100%);

	transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);

}



.vv-ph-drawer-root.is-open .vv-ph-drawer {

	transform: translateX(0);

}



.vv-ph-drawer__header {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

	padding: 18px 20px;

	border-bottom: 1px solid color-mix(in srgb, var(--vv-ph-border) 85%, transparent);

	background: color-mix(in srgb, var(--vv-ph-accent) 6%, var(--vv-ph-bg));

}



.vv-ph-drawer__title {

	margin: 0;

	font-size: 15px;

	font-weight: 900;

	line-height: 1.25;

	color: var(--vv-ph-text);

}



.vv-ph-drawer__subtitle {

	margin: 4px 0 0;

	font-size: 11px;

	font-weight: 600;

	color: color-mix(in srgb, var(--vv-ph-muted) 92%, transparent);

}



.vv-ph-drawer__close {

	flex: 0 0 auto;

	width: 36px;

	height: 36px;

	margin: 0;

	padding: 0;

	border: 1px solid color-mix(in srgb, var(--vv-ph-border) 90%, transparent);

	border-radius: 10px;

	background: var(--vv-ph-bg);

	color: var(--vv-ph-text);

	font-size: 22px;

	line-height: 1;

	cursor: pointer;

	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;

}



.vv-ph-drawer__close:hover,

.vv-ph-drawer__close:focus-visible {

	border-color: var(--vv-ph-accent);

	color: var(--vv-ph-accent);

	outline: none;

}



.vv-ph-drawer__body {

	flex: 1;

	overflow: auto;

	padding: 18px 20px 28px;

	-webkit-overflow-scrolling: touch;

}



.vv-ph-drawer-content__chart {

	margin-bottom: 16px;

	padding: 12px;

	border-radius: var(--vv-ph-radius);

	border: 1px solid color-mix(in srgb, var(--vv-ph-border) 80%, transparent);

	background: var(--vv-ph-chart-bg, color-mix(in srgb, var(--vv-ph-text) 4%, var(--vv-ph-bg)));

}



.vv-ph-drawer-content .vv-price-history-chart-svg {

	display: block;

	width: 100%;

	height: auto;

	color: var(--vv-ph-accent);

}



.vv-ph-drawer-content .vv-ph-chart-line {

	fill: none;

	stroke-width: 2;

	stroke-linejoin: round;

	stroke-linecap: round;

}



.vv-ph-drawer-content .vv-ph-chart-line.is-series-regular {

	stroke: var(--vv-ph-accent);

}



.vv-ph-drawer-content .vv-ph-chart-line.is-series-sale {

	stroke: #15803d;

}



.vv-ph-drawer-content .vv-ph-chart-dot {

	fill: var(--vv-ph-bg);

	stroke-width: 2;

	cursor: pointer;

	transition: r 0.15s ease, stroke-width 0.15s ease, filter 0.15s ease;

}



.vv-ph-drawer-content .vv-ph-chart-focus {

	stroke: color-mix(in srgb, var(--vv-ph-accent) 70%, transparent);

	stroke-width: 1.5;

	stroke-dasharray: 4 3;

	pointer-events: none;

}



.vv-ph-chart-series-key {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	justify-content: center;

	gap: 14px 20px;

	margin-top: 10px;

	padding-top: 10px;

	border-top: 1px solid color-mix(in srgb, var(--vv-ph-border) 65%, transparent);

	font-size: 11px;

	font-weight: 700;

	color: color-mix(in srgb, var(--vv-ph-muted) 92%, transparent);

}



.vv-ph-chart-series-key__item {

	display: inline-flex;

	align-items: center;

	gap: 8px;

}



.vv-ph-chart-series-key__swatch {

	display: block;

	width: 22px;

	height: 0;

	border-top: 2px solid currentColor;

	border-radius: 1px;

}



.vv-ph-chart-series-key__item.is-series-regular {

	color: var(--vv-ph-accent);

}



.vv-ph-chart-series-key__item.is-series-sale {

	color: #15803d;

}



.vv-ph-drawer-content.is-point-selected .vv-ph-chart-line {

	opacity: 0.35;

}



.vv-ph-drawer-content.is-point-selected .vv-ph-chart-dot:not(.is-selected) {

	opacity: 0.3;

}



.vv-ph-drawer-content .vv-ph-chart-dot.is-selected {

	stroke-width: 3.5;

	filter: drop-shadow(0 0 3px color-mix(in srgb, var(--vv-ph-text) 30%, transparent));

}



.vv-ph-drawer-content.is-point-selected .vv-ph-chart-dot.is-selected {

	opacity: 1;

}



.vv-ph-drawer-content .vv-ph-chart-grid {

	stroke: color-mix(in srgb, var(--vv-ph-muted) 35%, transparent);

	stroke-width: 1;

}



.vv-ph-drawer-content .vv-ph-chart-y-label {

	font-size: 9px;

	fill: color-mix(in srgb, var(--vv-ph-muted) 88%, transparent);

	dominant-baseline: middle;

}



.vv-ph-drawer-content .vv-price-history-chart-legend {

	margin: 0;

	padding: 0;

	list-style: none;

	display: flex;

	flex-direction: column;

	gap: 8px;

}



.vv-ph-drawer-content .vv-price-history-chart-legend li {

	display: flex;

	flex-wrap: wrap;

	align-items: baseline;

	justify-content: space-between;

	gap: 6px 14px;

	padding: 10px 12px;

	border-radius: 10px;

	border: 1px solid color-mix(in srgb, var(--vv-ph-border) 70%, transparent);

	background: color-mix(in srgb, var(--vv-ph-text) 3%, var(--vv-ph-bg));

	font-size: 12px;

	line-height: 1.35;

	color: color-mix(in srgb, var(--vv-ph-muted) 90%, transparent);

	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;

}



.vv-ph-drawer-content .vv-price-history-chart-legend li.is-legend-interactive {

	cursor: pointer;

}



.vv-ph-drawer-content .vv-price-history-chart-legend li.is-selected {

	border-color: color-mix(in srgb, var(--vv-ph-accent) 55%, transparent);

	background: color-mix(in srgb, var(--vv-ph-accent) 12%, var(--vv-ph-bg));

	box-shadow: 0 0 0 1px color-mix(in srgb, var(--vv-ph-accent) 22%, transparent);

	color: var(--vv-ph-text);

}



.vv-ph-drawer-content .vv-price-history-chart-legend li.is-selected time {

	font-weight: 800;

	color: var(--vv-ph-text);

}



.vv-ph-drawer-content.is-point-selected .vv-price-history-chart-legend li:not(.is-selected) {

	opacity: 0.55;

}



.vv-ph-drawer-content .vv-price-history-chart-legend__price {

	font-weight: 900;

	color: var(--vv-ph-text);

}



.vv-ph-drawer-content .vv-price-history-chart-legend__meta {

	display: inline-flex;

	flex-wrap: wrap;

	align-items: center;

	justify-content: flex-end;

	gap: 8px;

}



.vv-ph-drawer-content .vv-ph-kind-badge {

	display: inline-flex;

	align-items: center;

	padding: 2px 8px;

	border-radius: 100px;

	font-size: 9px;

	font-weight: 800;

	text-transform: uppercase;

	letter-spacing: 0.04em;

	border: 1px solid transparent;

}



.vv-ph-drawer-content .vv-ph-kind-badge.is-regular {

	background: color-mix(in srgb, var(--vv-ph-accent) 14%, var(--vv-ph-bg));

	color: var(--vv-ph-accent);

	border-color: color-mix(in srgb, var(--vv-ph-accent) 30%, transparent);

}



.vv-ph-drawer-content .vv-ph-kind-badge.is-sale {

	background: color-mix(in srgb, #15803d 14%, var(--vv-ph-bg));

	color: #15803d;

	border-color: color-mix(in srgb, #15803d 30%, transparent);

}



.vv-ph-drawer-content .vv-ph-kind-badge.is-effective {

	background: color-mix(in srgb, #b45309 14%, var(--vv-ph-bg));

	color: #b45309;

	border-color: color-mix(in srgb, #b45309 30%, transparent);

}



.vv-ph-drawer-content .vv-ph-chart-dot.is-kind-regular {

	stroke: var(--vv-ph-accent);

}



.vv-ph-drawer-content .vv-ph-chart-dot.is-kind-sale {

	stroke: #15803d;

}



.vv-ph-drawer-content .vv-ph-chart-dot.is-kind-effective {

	stroke: #b45309;

}



body.vv-ph-drawer-open {

	overflow: hidden;

}


