.ct-price-filter-slider {
	--handle-size: 18px;

	display: flex;
	align-items: center;
	position: relative;
	margin-block: calc(var(--handle-size) / 2) 25px;
	margin-inline: calc(var(--handle-size) / 2);

	.ct-price-filter-range-track {
		position: absolute;
		inset-inline: calc(var(--handle-size) / 2 * -1);
		height: 14px;
		padding: 6px 0;
		background-clip: content-box;
		cursor: pointer;
		background-image: linear-gradient(
							90deg, 
							var(--theme-form-field-border-initial-color) var(--start), 
							var(--theme-palette-color-1) var(--start), 
							var(--theme-palette-color-1) var(--end), 
							var(--theme-form-field-border-initial-color) var(--end));
	}

	[class*='ct-price-filter-range-handle'] {
		display: flex;
		justify-content: center;
		position: absolute;
		width: var(--handle-size);
		height: var(--handle-size);
		border-radius: 100%;
		background: #fff;
		border: 2px solid var(--theme-palette-color-1);
		transform: translateX(calc(var(--handle-size) / 2 * -1));
		transition: box-shadow 0.1s ease;

		.ct-tooltip {
			transform: translate3d(0px, calc(-100% - 7px), 0px);
		}
	}

	input[type='range'] {
		position: absolute;
		z-index: 2;
		opacity: 0;
		width: calc(100% + var(--handle-size));
		inset-inline: calc(var(--handle-size) / 2 * -1);
		outline: none;
		appearance: none;
		pointer-events: none;
		background: transparent;

		&::-webkit-slider-thumb {
			width: var(--handle-size);
			height: var(--handle-size);
			cursor: grab;
			pointer-events: auto;
		}

		&::-moz-range-thumb {
			width: var(--handle-size);
			height: var(--handle-size);
			cursor: grab;
			pointer-events: auto;
		}

		&:hover + [class*='ct-price-filter-range-handle'] {
			z-index: 1;
			box-shadow: 0px 0px 0px 1px var(--theme-palette-color-1),
						0px 6px 13px rgba(0, 0, 0, 0.2);

			.ct-tooltip {
				opacity: 1;
				visibility: visible;
				transform: translate3d(0px, calc(-100% - 15px), 0px);
			}
		}
	}
}

.ct-price-filter-inputs {
	display: flex;
	align-items: center;
	font-size: 14px;

	[class*='ct-price-filter'] {
		font-weight: 600;
	}
}