.bapf_tekal_heatmap .bapf_slidr_all {
	padding-top: .15rem;
}

/* Heatmap --------------------------------------------------------------- */
.bapf_tekal_heatmap_bars {
	display: flex;
	align-items: flex-end;
	gap: 2px;
	height: 34px;
	margin: .15rem .4rem .4rem;
	padding: 0;
}

.bapf_tekal_heatmap_bar {
	appearance: none;
	background: #17428c;
	border: 0;
	border-radius: 2px 2px 0 0;
	box-shadow: none;
	cursor: pointer;
	flex: 1 1 0;
	height: 2px;
	margin: 0;
	min-width: 2px;
	opacity: .6;
	padding: 0;
	transition: height .15s ease, opacity .15s ease, transform .15s ease;
}

.bapf_tekal_heatmap_bar:hover,
.bapf_tekal_heatmap_bar:focus-visible {
	opacity: .9;
	transform: translateY(-1px);
}

.bapf_tekal_heatmap_bar:focus-visible {
	outline: 2px solid #17428c;
	outline-offset: 2px;
}

.bapf_tekal_heatmap_heat_0  { height: 2px;  opacity: .12; }
.bapf_tekal_heatmap_heat_1  { height: 5px; }
.bapf_tekal_heatmap_heat_2  { height: 8px; }
.bapf_tekal_heatmap_heat_3  { height: 11px; }
.bapf_tekal_heatmap_heat_4  { height: 14px; }
.bapf_tekal_heatmap_heat_5  { height: 17px; }
.bapf_tekal_heatmap_heat_6  { height: 20px; }
.bapf_tekal_heatmap_heat_7  { height: 23px; }
.bapf_tekal_heatmap_heat_8  { height: 26px; }
.bapf_tekal_heatmap_heat_9  { height: 29px; }
.bapf_tekal_heatmap_heat_10 { height: 32px; }

/* Slider ---------------------------------------------------------------- */
.bapf_tekal_heatmap_slider {
	background: #cfd4da !important;
	border: 0 !important;
	border-radius: 999px;
	height: 4px !important;
	margin: .8rem .4rem .8rem;
	position: relative;
}

.bapf_tekal_heatmap .ui-slider-horizontal {
	height: 4px;
}

.bapf_tekal_heatmap .ui-slider .ui-slider-handle {
	background: #fff;
	border: 2px solid #17428c !important;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgb(0 0 0 / 15%);
	cursor: grab;
	height: 18px;
	top: -7px;
	width: 18px;
	z-index: 3;
}

.bapf_tekal_heatmap .ui-slider .ui-slider-handle:hover,
.bapf_tekal_heatmap .ui-slider .ui-slider-handle:focus {
	border-color: #00a092 !important;
	box-shadow: 0 0 0 3px rgb(0 160 146 / 14%);
	outline: 0;
}

.bapf_tekal_heatmap .ui-slider .ui-slider-handle:active {
	cursor: grabbing;
}

.bapf_tekal_heatmap:not(.bapf_tekal_heatmap_active) .ui-slider-handle {
	border-color: #aeb4bb !important;
	box-shadow: none;
	opacity: .72;
}

.bapf_tekal_heatmap_target .ui-slider-range {
	display: none;
}

.bapf_tekal_heatmap_tolerance_band {
	background: #00a092;
	border-radius: 999px;
	display: none;
	height: 4px;
	pointer-events: none;
	position: absolute;
	top: 0;
	z-index: 2;
}

.bapf_tekal_heatmap_target.bapf_tekal_heatmap_active .bapf_tekal_heatmap_tolerance_band {
	display: block;
}

/* Controls -------------------------------------------------------------- */
.bapf_tekal_heatmap_controls {
	display: flex;
	align-items: center;
	gap: .35rem;
	margin: .15rem .4rem 0;
	min-width: 0;
}

.bapf_tekal_heatmap_target_controls {
	flex-wrap: nowrap;
}

.bapf_tekal_heatmap_input_wrap {
	display: inline-flex;
	align-items: center;
	gap: .28rem;
	margin: 0;
	min-width: 0;
	white-space: nowrap;
}

.bapf_tekal_heatmap_input_label,
.bapf_tekal_heatmap_unit {
	color: #5f6670;
	font-size: .9em;
	line-height: 1.2;
	white-space: nowrap;
}

.bapf_tekal_heatmap_controls input[type="number"] {
	appearance: textfield;
	background: #fff;
	border: 1px solid #d7dce2;
	border-radius: 0.5rem;
	box-shadow: none;
	box-sizing: border-box;
	font: inherit;
	height: 2.2rem;
	line-height: 1.2;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
	min-width: 0;
	padding: 0.25rem 0;
	text-align: center;
	width: 4.6rem;
}

.bapf_tekal_heatmap_target_controls .bapf_tekal_heatmap_target {
	width: 5.2rem;
}

.bapf_tekal_heatmap_target_controls .bapf_tekal_heatmap_tolerance_input {
	width: 3.8rem;
}

.bapf_tekal_heatmap_controls input[type="number"]:focus {
	border-color: #17428c;
	box-shadow: 0 0 0 2px rgb(23 66 140 / 10%);
	outline: 0;
}

.bapf_tekal_heatmap_controls input[type="number"]::placeholder {
	color: #777e87;
	opacity: 1;
}

.bapf_tekal_heatmap_controls input[type="number"]::-webkit-inner-spin-button,
.bapf_tekal_heatmap_controls input[type="number"]::-webkit-outer-spin-button {
	appearance: none;
	margin: 0;
}

.bapf_tekal_heatmap_reset {
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: #5f6670;
	cursor: pointer;
	flex: 0 0 auto;
	font-size: 1.15rem;
	line-height: 1;
	margin: 0 0 0 auto;
	padding: .2rem .3rem;
}

.bapf_tekal_heatmap_reset:hover,
.bapf_tekal_heatmap_reset:focus-visible {
	background: #f1f3f5;
	color: #17428c;
	outline: 0;
}

.bapf_tekal_heatmap_reset[hidden] {
	display: none;
}

/* Narrow sidebars: keep both editable values usable without overflow. */
@media (max-width: 420px) {
	.bapf_tekal_heatmap_target_controls {
		gap: .25rem;
	}

	.bapf_tekal_heatmap_target_controls .bapf_tekal_heatmap_target {
		width: 4.7rem;
	}

	.bapf_tekal_heatmap_target_controls .bapf_tekal_heatmap_tolerance_input {
		width: 3.45rem;
	}

	.bapf_tekal_heatmap_input_label,
	.bapf_tekal_heatmap_unit {
		font-size: .86em;
	}
}


/* Native slider nodes stay in the template for BeRocket compatibility only. */
.bapf_tekal_heatmap .bapf_from,
.bapf_tekal_heatmap .bapf_to {
	display: none !important;
}
