:root {
  --switch-width: 80px;
  --switch-height: calc(var(--switch-width) / 2);
  --toggle-size: calc(var(--switch-height) * .9);
  --toggle-padding: calc(var(--switch-height) * .05);
}

/* src: https://codepen.io/mburnette/pen/LxNxNg */
input[type=checkbox].switch {
	height: 0;
	width: 0;
	visibility: hidden;
}

label.switch_label {
	cursor: pointer;
	text-indent: -9999px;
	width: var(--switch-width);
	height: var(--switch-height);
	background: grey;
	display: inline-block;
	border-radius: var(--switch-width);
	position: relative;
}

label.switch_label:after {
	content: '';
	position: absolute;
	top: var(--toggle-padding);
	left: var(--toggle-padding);
	width: var(--toggle-size);
	height: var(--toggle-size);
	background: #fff;
	border-radius: var(--switch-height);
	transition: 0.3s;
}

input.switch:checked + label.switch_label:after {
	left: 95%;
	transform: translateX(-100%);
}

label.switch_label:active:after {
	width: 100%;
}

.khz_label {
  color: #999;
}
.khz_label.active {
  color: black;
  font-weight: bolder;
}

#switch_column {
  font-size: 28px;
}

@media (min-width: 768px) { 

  :root {
    --switch-width: 60px;
  }

  #switch_column {
    font-size: 20px;
  }

}
