.rwmb-switch-label {
	--size: 16px;
	--padding: 2px;
	--color: var(--wp-admin-theme-color, #3858e9);

	cursor: pointer;
	position: relative;
	display: inline-block;
	background-color: #ccc;
	padding: var(--padding);
	border-radius: 2px;
	min-width: calc(var(--size) * 2 + var(--padding) * 3);
	height: calc(var(--size) + var(--padding) * 2);
	box-sizing: border-box;
}
.rwmb-switch.rwmb-switch {
	display: none;
}

.rwmb-switch:checked + .rwmb-switch-status .rwmb-switch-slider {
	background-color: var(--color);
	box-shadow: 0 0 1px var(--color);
}

.rwmb-switch:checked + .rwmb-switch-status .rwmb-switch-slider:before {
	left: calc(100% - var(--size) - var(--padding));
}

.rwmb-switch:checked + .rwmb-switch-status .rwmb-switch-off {
	visibility: hidden;
	display: none;
}

.rwmb-switch:not(:checked) + .rwmb-switch-status .rwmb-switch-on {
	visibility: hidden;
	display: none;
}

.rwmb-switch-slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 15;
	transition: .4s;
}

.rwmb-switch-slider:before {
	position: absolute;
	content: attr(title-before) "";
	height: var(--size);
	width: var(--size);
	left: var(--padding);
	bottom: var(--padding);
	z-index: 99;
	background-color: white;
	transition: .4s;
	border-radius: 2px;
}

.rwmb-switch-label--square .rwmb-switch-slider {
	border-radius: 3px;
}

.rwmb-switch-label--rounded,
.rwmb-switch-label--rounded .rwmb-switch-slider {
	border-radius: 99px;
}

.rwmb-switch-label--rounded .rwmb-switch-slider:before {
	border-radius: 50%;
}

.rwmb-switch-on,
.rwmb-switch-off {
	display: inline-block;
	float: left;
	margin: 0 4px;
	color: #fff;
	text-transform: uppercase;
	font-size: 11px;
	position: relative;
	z-index: 20;
	line-height: var(--size);
}

.rwmb-switch-on {
	padding-right: calc(var(--size) + var(--padding));
}

.rwmb-switch-off {
	padding-left: calc(var(--size) + var(--padding));
}
