/* ================================== */
/* CSS for control sap.m/Slider       */
/* Horizon High Contrast Black theme  */
/* ================================== */

@_sap_m_Slider_Height: 2.75rem;
@_sap_m_Slider_Progress: .25rem;
@_sap_m_Slider_Progress_Border: 0.0625rem;

.sapMSliderInner {
	background: var(--sapSlider_Background);
	border: @_sap_m_Slider_Progress_Border solid var(--sapSlider_BorderColor);
	box-sizing: border-box;
}

.sapMSliderProgress {
	background: var(--sapSlider_Selected_Background);
	border: @_sap_m_Slider_Progress_Border solid var(--sapSlider_Selected_BorderColor);
	box-sizing: content-box;
	margin-top: -1px;
	margin-left: -1px;

	&::before {
		content: none;
		transform: none;
	}
}

.sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderProgress:hover ~ .sapMSliderHandle,
.sapMSliderHandle:hover {
	background: var(--sapSlider_Hover_HandleBackground);
	border-color: var(--sapSlider_Hover_HandleBorderColor);
}

/* slider handle */
.sapMSliderInner .sapMSliderHandle {
	background: var(--sapSlider_HandleBackground);
	border: 1px solid var(--sapSlider_HandleBorderColor);
	border-radius: 0.5rem;
	width: 2rem;
	height: 1.5rem;
	margin-left: -1rem;
	top: -0.625rem;

	&:focus::before {
		content: '';
		position: absolute;
		border: var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);
		border-radius: 0.75rem;
		pointer-events: none;
		top: -0.3125rem;
		bottom: -0.3125rem;
		left: -0.3125rem;
		right: -0.3125rem;
	}
}

.sapMSliderInner .sapMSliderHandle:not(:focus):not(.sapMSliderHandlePressed):not(.sapMRangeSlider.sapMSlider .sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderHandle:focus)::after {
	font-family: var(--sapContent_IconFontFamily);
	content: '\e29c';
	position: absolute;
	top: 0.25rem;
	right: 0.5rem;
	overflow: hidden;
	vertical-align: middle;
	font-size: 0.875rem;
	line-height: 0.875rem;
	color: var(--sapContent_Selected_ForegroundColor);
}

.sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderHandle {

	&:hover {
		background: var(--sapSlider_Hover_HandleBackground);
		border-color: var(--sapSlider_Hover_HandleBorderColor);
	}
}

.sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderHandle:focus {
	background: var(--sapSlider_Active_RangeHandleBackground);
	border: var(--sapContent_FocusWidth) solid var(--sapContent_FocusColor);
	outline: none;
	top: -0.625rem;
}

.sapMSliderTickLabel .sapMSliderLabel {
	padding-top: 0.4375rem;
	height: 1rem;
	width: 2rem;
	left: -1rem;
	font-size: var(--sapFontSmallSize);
	color: var(--sapContent_LabelColor);
}

.sapMSliderTickmarks {
	display: flex;
	box-sizing: border-box;
	align-items: center;
	top: -0.8125rem;
}

.sapMSliderTick {
	border-color: var(--sapContent_MeasureIndicatorColor);
	margin: 0;
	height: .5rem;
}

.sapMSliderLabels {
	height: 1rem;

	.sapMSliderRangeLabel {
		width: 2rem;
		font-size: var(--sapFontSmallSize);
		color: var(--sapContent_LabelColor);
	}
}

/* disabled */
.sapMSliderDisabled {
	opacity: 0.4;
}

.sapMSliderInner::before {
	content: '';
	position: absolute;
	box-sizing: border-box;
	border: 0.0625rem solid var(--sapContent_Selected_MeasureIndicatorColor);
	background-color: var(--sapSlider_Selected_Background);
	border-radius: 50%;
	width: 0.5rem;
	height: 0.5rem;
	left: -0.875rem;
	top: calc(50% ~"-" 0.25rem);
}

.sapMSlider::after {
	content: '';
	position: absolute;
	box-sizing: border-box;
	border: 0.0625rem solid var(--sapContent_MeasureIndicatorColor);
	background-color: var(--sapContent_MeasureIndicatorColor);
	border-radius: 50%;
	width: 0.5rem;
	height: 0.5rem;
	right: 0.125rem;
	top: calc(50% ~"-" 0.25rem);
}

/* pressed */
.sapMSliderPressed:not(.sapMSliderInnerDisabled) > .sapMSliderHandle,
.sapMSlider .sapMSliderInner > .sapMSliderHandle.sapMSliderHandlePressed {
	background-color: var(--sapButton_Active_Background);
	border-color: var(--sapButton_Active_BorderColor);
}

.sapUiSizeCompact {

	.sapMSliderTick {
		height: 0.5rem;
		margin: 0;
	}

	.sapMSliderTickmarks {
		top: -0.4375rem;
	}

	.sapMSlider::after {
		right: .125rem;
	}

	.sapMSliderInner::before {
		left: -0.8125rem;
	}

	.sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderHandle:focus {
		top: -0.5rem;
	}

	.sapMSliderHandle {
		width: 1.5rem;
		height: 1.25rem;
		margin-left: -0.75rem;
		top: -0.5rem;
	}

	.sapMSliderTickLabel .sapMSliderLabel {
		padding-top: 0.375rem;
	}

	.sapMSliderInner .sapMSliderHandle:not(.sapMSliderHandlePressed):not(.sapMRangeSlider.sapMSlider .sapMSliderInner:not(.sapMSliderInnerDisabled):hover > .sapMSliderHandle):not(.sapMRangeSlider.sapMSlider .sapMSliderInner:not(.sapMSliderInnerDisabled) .sapMSliderHandle:focus)::after {
		top: 0.125rem;
		right: 0.25rem;
	}
}

.sapMSliderTick[data-ui5-active-tickmark='true'] {
	border-left: 0.0625rem solid var(--sapSlider_Selected_BorderColor);
}