.form-check {
	position: relative;
	display: block;
	padding-left: 1.25rem;
  }
  
  .form-check-input {
	position: absolute;
	margin-top: 0.3rem;
	margin-left: -1.25rem;
  }
  
  .form-check-input:disabled ~ .form-check-label {
	color: #6c757d;
  }
  
  .form-check-label {
	margin-bottom: 0;
  }
  
  .form-check-inline {
	display: inline-flex;
	align-items: center;
	padding-left: 0;
	margin-right: 0.75rem;
  }
  
  .form-check-inline .form-check-input {
	position: static;
	margin-top: 0;
	margin-right: 0.3125rem;
	margin-left: 0;
  }
  
  .form-check {
	margin-bottom: 0.5rem;
	padding-left: 0;
  }
  
  .form-check .form-check-label {
	cursor: pointer;
	padding-left: 0;
  }
  
  .form-group.is-focused .form-check .form-check-label {
	color: rgba(0, 0, 0, 0.26);
  }
  
  .form-group.is-focused .form-check .form-check-label:hover,
  .form-group.is-focused .form-check .form-check-label:focus {
	color: rgba(0, 0, 0, 0.54);
  }
  
  fieldset[disabled] .form-group.is-focused .form-check .form-check-label {
	color: rgba(0, 0, 0, 0.26);
  }
  
  .form-check .form-check-input {
	opacity: 0;
	position: absolute;
	margin: 0;
	z-index: -1;
	width: 0;
	height: 0;
	overflow: hidden;
	left: 0;
	pointer-events: none;
  }
  
  .form-check .form-check-sign {
	vertical-align: middle;
	position: relative;
	top: -2px;
	float: left;
	padding-right: 10px;
	display: inline-block;
  }
  
  .form-check .form-check-sign:before {
	display: block;
	position: absolute;
	left: 0;
	content: "";
	background-color: rgba(0, 0, 0, 0.84);
	height: 16px;
	width: 16px;
	border-radius: 100%;
	z-index: 1;
	opacity: 0;
	margin: 0;
	top: 0;
	-webkit-transform: scale3d(2.3, 2.3, 1);
	-moz-transform: scale3d(2.3, 2.3, 1);
	-o-transform: scale3d(2.3, 2.3, 1);
	-ms-transform: scale3d(2.3, 2.3, 1);
	transform: scale3d(2.3, 2.3, 1);
  }
  
  .form-check .form-check-sign .check {
	position: relative;
	display: inline-block;
	width: 16px;
	height: 16px;
	border: 1px solid green;
	overflow: hidden;
	z-index: 1;
	border-radius: 1px;
	background: #ffffff;
  }
  
  .form-check .form-check-sign .check:before {
	position: absolute;
	content: "";
	transform: rotate(45deg);
	display: block;
	margin-top: -5px;
	margin-left: 5px;
	width: 0;
	height: 0;
	box-shadow: 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0, 0 0 0 0 inset;
  }
  
  .form-check .form-check-input:focus + .form-check-sign .check:after {
	opacity: 0.2;
  }
  
  .form-check .form-check-input:checked ~ .form-check-sign .check {
	background: #ffffff;
  }
  
  .form-check .form-check-input:checked ~ .form-check-sign .check:before {
	color: green;
	box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	-webkit-animation: checkbox-on 0.3s forwards;
	-moz-animation: checkbox-on 0.3s forwards;
	-o-animation: checkbox-on 0.3s forwards;
	-ms-animation: checkbox-on 0.3s forwards;
	animation: checkbox-on 0.3s forwards;
  }
  
  fieldset[disabled] .form-check,
  fieldset[disabled] .form-check .form-check-input,
  .form-check .form-check-input[disabled] ~ .form-check-sign .check,
  .form-check .form-check-input[disabled] + .circle {
	opacity: 0.5;
  }
  
  .form-check .form-check-input[disabled] ~ .form-check-sign .check {
	border-color: #000000;
	opacity: 0.26;
  }
  
  .form-check .form-check-input[disabled] + .form-check-sign .check:after {
	background-color: rgba(0, 0, 0, 0.87);
	transform: rotate(-45deg);
  }
  
  .form-check .form-check-input[disabled][checked] + .form-check-sign .check {
	background-color: #000;
  }
  
  @keyframes checkbox-on {
	0% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px;
	}
	50% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px;
	}
	100% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	}
  }
  @keyframes rippleOn {
	0% {
	  opacity: 0;
	}
	50% {
	  opacity: 0.2;
	}
	100% {
	  opacity: 0;
	}
  }
  @keyframes rippleOff {
	0% {
	  opacity: 0;
	}
	50% {
	  opacity: 0.2;
	}
	100% {
	  opacity: 0;
	}
  }
  .switch label {
	position: relative;
	padding-left: 2.4375rem;
  }
  
  .switch label .bmd-switch-track {
	position: absolute;
	top: 0.3125rem;
	left: 0;
	display: inline-block;
	width: 2.125rem;
	height: 0.875rem;
	cursor: pointer;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.12) 0%, rgba(0, 0, 0, 0.12) 50%, #c49bcb 50%, #c49bcb 100%);
	background-position: 0%;
	background-size: 4.25rem 0.875rem;
	border-radius: 2.125rem;
	transition: background-position 0.2s ease-in;
  }
  
  .switch label .bmd-switch-track::after {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	align-self: center;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
	background: #f1f1f1;
	border-radius: 100%;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
	transition: left 0.2s ease-in, background-color 0.2s ease-in, transform 0.3s ease;
	transform: translateY(-50%);
  }
  
  .switch label .bmd-switch-track:active::after {
	transform: translateY(-50%) scale3d(1.15, 0.85, 1);
  }
  
  .switch label input {
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	opacity: 0;
  }
  
  .switch label input:checked + .bmd-switch-track {
	background-position: -100%;
  }
  
  .switch label input:checked + .bmd-switch-track::after {
	left: calc(100% - 1.25rem);
	background-color: green;
  }
  
  .switch label input:disabled + .bmd-switch-track:active::after {
	transform: translateY(-50%);
  }
  
  .switch label input:disabled + .bmd-switch-track {
	cursor: default;
	background: rgba(0, 0, 0, 0.12);
  }
  
  .switch label input:disabled + .bmd-switch-track::after {
	background: #bdbdbd;
  }
  
  .form-check .form-check-label {
	cursor: pointer;
	padding-left: 18px;
	position: relative;
  }
  
  .form-group.is-focused .form-check .form-check-label {
	color: rgba(0, 0, 0, 0.26);
  }
  .form-group.is-focused .form-check .form-check-label:hover, .form-group.is-focused .form-check .form-check-label:focus {
	color: rgba(0, 0, 0, 0.54);
  }
  
  fieldset[disabled] .form-group.is-focused .form-check .form-check-label {
	color: rgba(0, 0, 0, 0.26);
  }
  
  .form-check .form-check-label span {
	display: block;
	position: absolute;
	left: -1px;
	top: -1px;
	transition-duration: 0.2s;
  }
  .form-check .form-check-label .circle {
	border: 1px solid rgba(0, 0, 0, 0.54);
	height: 15px;
	width: 15px;
	border-radius: 100%;
	top: 1px;
  }
  .form-check .form-check-label .circle .check {
	height: 15px;
	width: 15px;
	border-radius: 100%;
	background-color: green;
	-webkit-transform: scale3d(0, 0, 0);
	-moz-transform: scale3d(0, 0, 0);
	-o-transform: scale3d(0, 0, 0);
	-ms-transform: scale3d(0, 0, 0);
	transform: scale3d(0, 0, 0);
  }
  .form-check .form-check-input {
	opacity: 0;
	height: 0;
	width: 0;
	overflow: hidden;
  }
  .form-check .form-check-input:checked ~ .check, .form-check .form-check-input:checked ~ .circle {
	opacity: 1;
  }
  .form-check .form-check-input:checked ~ .check {
	background-color: green;
  }
  .form-check .form-check-input:checked ~ .circle {
	border-color: green;
  }
  .form-check .form-check-input:checked .check:before {
	animation: checkboxOn 0.5s forwards;
  }
  .form-check .form-check-input:checked ~ .circle .check {
	-webkit-transform: scale3d(0.65, 0.65, 1);
	-moz-transform: scale3d(0.65, 0.65, 1);
	-o-transform: scale3d(0.65, 0.65, 1);
	-ms-transform: scale3d(0.65, 0.65, 1);
	transform: scale3d(0.65, 0.65, 1);
  }
  
  .form-check .form-check-input[disabled] ~ .check,
  .form-check .form-check-input[disabled] ~ .circle {
	opacity: 0.26;
  }
  
  .form-check .form-check-input[disabled] ~ .check {
	background-color: #000;
  }
  
  .form-check .form-check-input[disabled] ~ .circle {
	border-color: #000;
  }
  
  .form-check .form-check-input[disabled] + .circle .check {
	background-color: #000;
  }
  
  .form-check .form-check-sign {
	vertical-align: middle;
	position: relative;
	top: -2px;
	float: left;
	padding-right: 10px;
	display: inline-block;
  }
  
  .form-check .form-check-label .circle:before {
	display: block;
	position: absolute;
	left: -1px;
	content: "";
	background-color: rgba(0, 0, 0, 0.84);
	height: 15px;
	width: 15px;
	border-radius: 100%;
	z-index: 1;
	opacity: 0;
	margin: 0;
	top: -1px;
	-webkit-transform: scale3d(2.3, 2.3, 1);
	-moz-transform: scale3d(2.3, 2.3, 1);
	-o-transform: scale3d(2.3, 2.3, 1);
	-ms-transform: scale3d(2.3, 2.3, 1);
	transform: scale3d(2.3, 2.3, 1);
  }
  
  .form-check .form-check-label .form-check-input:checked + .circle:before {
	animation: rippleOn 0.5s;
  }
  
  .form-check .form-check-label .form-check-input:checked + .circle .check:before {
	color: #FFFFFF;
	box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	animation: checkboxOn 0.3s forwards;
  }
  
  .form-check + .form-check {
	margin-top: 0;
  }
  
  @keyframes checkboxOn {
	0% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 15px 2px 0 11px;
	}
	50% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px 2px 0 11px;
	}
	100% {
	  box-shadow: 0 0 0 10px, 10px -10px 0 10px, 32px 0 0 20px, 0px 32px 0 20px, -5px 5px 0 10px, 20px -12px 0 11px;
	}
  }
  @keyframes rippleOn {
	0% {
	  opacity: 0;
	}
	50% {
	  opacity: 0.2;
	}
	100% {
	  opacity: 0;
	}
  }
  @keyframes rippleOff {
	0% {
	  opacity: 0;
	}
	50% {
	  opacity: 0.2;
	}
	100% {
	  opacity: 0;
	}
  }
  .togglebutton {
	vertical-align: middle;
  }
  .togglebutton label, .togglebutton input, .togglebutton .togglebutton .toggle {
	user-select: none;
  }
  .togglebutton label {
	font-size: 13px;
	cursor: pointer;
  }
  
  .form-group.is-focused .togglebutton label {
	color: rgba(0, 0, 0, 0.26);
  }
  
  .form-group.is-focused .togglebutton label:hover,
  .form-group.is-focused .togglebutton label:focus {
	color: rgba(0, 0, 0, 0.54);
  }
  
  fieldset[disabled] .form-group.is-focused .togglebutton label {
	color: rgba(0, 0, 0, 0.26);
  }
  
  .togglebutton label input[type=checkbox] {
	opacity: 0;
	width: 0;
	height: 0;
	display: none;
  }
  
  .togglebutton label .toggle {
	text-align: left;
	margin-left: 5px;
  }
  
  .togglebutton label .toggle,
  .togglebutton label input[type=checkbox][disabled] + .toggle {
	content: "";
	display: inline-block;
	width: 30px;
	height: 15px;
	background-color: rgba(80, 80, 80, 0.7);
	border-radius: 15px;
	margin-right: 15px;
	transition: background 0.3s ease;
	vertical-align: middle;
  }
  
  .togglebutton label .toggle:after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background-color: #fff;
	border-radius: 20px;
	position: relative;
	box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
	left: -5px;
	top: -2.5px;
	border: 1px solid rgba(0, 0, 0, 0.54);
	transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease;
  }
  
  .togglebutton label input[type=checkbox][disabled] + .toggle:after,
  .togglebutton label input[type=checkbox][disabled]:checked + .toggle:after {
	background-color: #BDBDBD;
  }
  
  .togglebutton label input[type=checkbox] + .toggle:active:after,
  .togglebutton label input[type=checkbox][disabled] + .toggle:active:after {
	box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(0, 0, 0, 0.1);
  }
  
  .togglebutton label input[type=checkbox]:checked + .toggle:after {
	left: 15px;
  }
  
  .togglebutton label input[type=checkbox]:checked + .toggle {
	background-color: green;
  }
  
  .togglebutton label input[type=checkbox]:checked + .toggle:after {
	border-color: green;
  }
  
  .togglebutton label input[type=checkbox]:checked + .toggle:active:after {
	box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4), 0 0 0 15px rgba(156, 39, 176, 0.1);
  }