.bx-im-toggle__scope {
	--im-toggle_background-color_enabled: '';
	--im-toggle_background-color_disabled: '';
}

.bx-im-toggle__container {
	height: 13px;
	width: 25px;
	border-radius: var(--im-border-radius-xl);
	overflow: hidden;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.bx-im-toggle__container.--size-s {
	width: 25px;
	height: 13px;
}

.bx-im-toggle__container.--size-m {
	width: 32px;
	height: 16px;
}

.bx-im-toggle__enabled,
.bx-im-toggle__disabled {
	position: absolute;
	width: 100%;
	height: 100%;
	transition: opacity .3s;
	overflow: hidden;
	z-index: 1;
}

.bx-im-toggle__enabled {
	background-color: #2fc6f6;
	z-index: 2;
}

.bx-im-toggle__disabled {
	padding: 0 0 0 3px;
	background-color: #e3e5e8;
}

.bx-im-toggle__cursor {
	position: absolute;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .09);
	transition: transform .3s;
	z-index: 3;
}

.bx-im-toggle__container.--size-s .bx-im-toggle__cursor {
	top: 2px;
	width: 9px;
	height: 9px;
	transform: translate(13px, 0);
}

.bx-im-toggle__container.--size-m .bx-im-toggle__cursor {
	top: 3px;
	width: 10px;
	height: 10px;
	transform: translate(19px, 0);
}

.bx-im-toggle__container.--size-s.--off .bx-im-toggle__cursor {
	transform: translate(3px, 0);
}

.bx-im-toggle__container.--size-m.--off .bx-im-toggle__cursor {
	transform: translate(3px, 0);
}

.bx-im-toggle__container.--off .bx-im-toggle__disabled {
	opacity: 1;
}

.bx-im-toggle__container.--off .bx-im-toggle__enabled {
	opacity: 0;
}