.input-toggle .input-toggle__toggle:after {
  display: block;
}
.input-range::-webkit-slider-runnable-track,
.input-range::-webkit-slider-thumb,
.input-range::-moz-range-track,
.input-range::-moz-range-thumb,
.input-range::-ms-track,
.input-range::-ms-thumb {
  cursor: pointer;
}
.input-toggle .input-toggle__toggle:after {
  content: '';
}
.form__block.form__block--list .form__block.form__block--inline {
  white-space: normal;
}
.form__block.form__block--list {
  white-space: nowrap;
}
.input-radio.input-radio--black span:after,
.input-range--black,
.input-toggle--black input:checked + .input-toggle__toggle {
  background-color: #4a4a4a;
  color: #f4f5f5;
}
.input-radio span:after,
.input-radio.input-radio--blue span:after,
.input-range--blue,
.input-toggle--blue input:checked + .input-toggle__toggle {
  background-color: #388cbf;
  color: #f4f5f5;
}
.input-radio.input-radio--gray span:after,
.input-range--gray,
.input-toggle--gray input:checked + .input-toggle__toggle {
  background-color: #e2e8ec;
  color: #4a4a4a;
}
.input-checkbox span:before,
.input-radio span:before {
  border-color: #e2e8ec;
}
.input-radio.input-radio--green span:after,
.input-range--green,
.input-toggle--green input:checked + .input-toggle__toggle {
  background-color: #5ee6a5;
  color: #408665;
}
.input-radio.input-radio--orange span:after,
.input-range--orange,
.input-toggle--orange input:checked + .input-toggle__toggle {
  background-color: #ffbc89;
  color: #b5792b;
}
.input-radio.input-radio--purple span:after,
.input-range--purple,
.input-toggle--purple input:checked + .input-toggle__toggle {
  background-color: #d08bfa;
  color: #3f0658;
}
.input-radio.input-radio--red span:after,
.input-range--red,
.input-toggle--red input:checked + .input-toggle__toggle {
  background-color: #e32d2d;
  color: #ffe3e3;
}
.input-radio.input-radio--yellow span:after,
.input-range--yellow,
.input-toggle--yellow input:checked + .input-toggle__toggle {
  background-color: #fffba4;
  color: #7d7945;
}
input,
input[type="image"],
input[type="checkbox"],
input[type="radio"],
select,
textarea,
.form__element.form__element--icon .form__icon,
.input-toggle .input-toggle__toggle:after {
  background-color: #fff;
  color: #949494;
}
.input-checkbox span:before,
.input-radio span:before {
  background-color: transparent;
}
.input-checkbox input,
.input-checkbox span:after,
.input-radio input,
.input-radio span:after,
.input-toggle .input-toggle__toggle:after {
  position: absolute;
  top: 0;
  left: 0;
}
.input-range,
.input-range::-webkit-slider-runnable-track,
.input-range::-moz-range-track,
.input-range::-ms-track {
  width: 100%;
}
.input-toggle input {
  position: absolute;
  top: -9999em;
  left: -9999em;
}
.input-checkbox,
.input-radio,
.form__element.form__element--icon,
.form__element.form__element--icon input,
.input-toggle .input-toggle__toggle {
  position: relative;
}
.input-checkbox span:after,
.input-checkbox span:before,
.input-radio span:after,
.input-radio span:before {
  text-align: center;
}
.input-checkbox span:before,
.input-radio span:before,
.form,
.form__block,
input,
input[type="image"],
input[type="checkbox"],
input[type="radio"],
select,
textarea,
.form__element.form__element--icon .form__icon {
  display: block;
}
.input-checkbox span:after,
.input-radio span:after {
  font-weight: 700;
}
.input-checkbox,
.input-checkbox span:before,
.input-radio,
.input-radio span:before,
.form__block.form__block--inline,
input[type="image"],
input[type="checkbox"],
input[type="radio"],
.input-toggle,
.input-toggle .input-toggle__text,
.input-toggle .input-toggle__toggle {
  display: inline-block;
}
.input-checkbox input,
.input-radio input,
.input-toggle input {
  visibility: hidden;
}
.input-range {
  padding: 0;
}
.input-checkbox,
.input-radio,
.input-toggle {
  cursor: pointer;
}
.input-checkbox span:before,
.input-radio span:before {
  content: '';
}
.form__element.form__element--icon .form__icon {
  z-index: -10;
}
.form__element.form__element--icon input {
  z-index: 10;
}
.input-checkbox,
.input-radio {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.input-checkbox input:checked + span:after,
.input-radio input:checked + span:after {
  transform: scale(1);
}
.input-checkbox span:after,
.input-radio span:after,
.input-checkbox span:before,
.input-radio span:before {
  vertical-align: middle;
}
.input-checkbox span:after,
.input-radio span:after,
.input-checkbox span:before,
.input-radio span:before {
  height: 1em;
  width: 1em;
}
.input-checkbox span:after,
.input-radio span:after {
  content: '\2713 ';
  color: #388cbf;
  line-height: 1.5;
  transform: scale(0);
  transition: 0.25s border-color ease-out, 0.15s transform ease-out;
}
.input-checkbox span:before,
.input-radio span:before {
  border-radius: 0.3em;
  border-style: solid;
  border-width: 1px;
}
.input-checkbox--black span:after {
  color: #4a4a4a;
}
.input-checkbox--blue span:after {
  color: #388cbf;
}
.input-checkbox--gray span:after {
  color: #e2e8ec;
}
.input-checkbox--green span:after {
  color: #5ee6a5;
}
.input-checkbox--orange span:after {
  color: #ffbc89;
}
.input-checkbox--purple span:after {
  color: #d08bfa;
}
.input-checkbox--red span:after {
  color: #e32d2d;
}
.input-checkbox--yellow span:after {
  color: #fffba4;
}
.input-radio input:checked + span:after {
  transform: scale(0.5) translateY(-90%);
}
.input-radio span:after,
.input-radio span:before {
  border-radius: 50%;
}
.input-radio span:after {
  content: '';
  top: 50%;
  transform: scale(0) translateY(-90%);
}
.form__block {
  border: 0 none;
  margin: 0;
  padding: 0;
}
.form__block + .form__block {
  margin: 1em 0 0;
}
.form__block.form__block--inline {
  vertical-align: middle;
}
.form__block.form__block--inline + .form__block.form__block--inline {
  margin: 0;
}
input,
input[type="image"],
input[type="checkbox"],
input[type="radio"],
select,
textarea,
.form__element.form__element--icon .form__icon {
  border: 1px solid #dfdfdf;
  padding: 0.5em 1em;
  transition: 0.3s box-shadow ease-out, 0.2s color ease-out, 0.33s border-color ease-out;
  width: 100%;
}
input.form__element--rounded,
input[type="image"].form__element--rounded,
input[type="checkbox"].form__element--rounded,
input[type="radio"].form__element--rounded,
select.form__element--rounded,
textarea.form__element--rounded,
.form__element.form__element--icon .form__icon.form__element--rounded,
.form__element--rounded input,
.form__element--rounded input[type="image"],
.form__element--rounded input[type="checkbox"],
.form__element--rounded input[type="radio"],
.form__element--rounded select,
.form__element--rounded textarea,
.form__element--rounded .form__element.form__element--icon .form__icon {
  border-radius: 1em/50%;
}
input:focus,
input[type="image"]:focus,
input[type="checkbox"]:focus,
input[type="radio"]:focus,
select:focus,
textarea:focus,
.form__element.form__element--icon .form__icon:focus {
  box-shadow: 0 0 5px 1px #d7d7d7;
  outline: 0 none;
}
input[disabled],
input[type="image"][disabled],
input[type="checkbox"][disabled],
input[type="radio"][disabled],
select[disabled],
textarea[disabled],
.form__element.form__element--icon .form__icon[disabled] {
  border-color: #dfdfdf;
  background-color: #d7d7d7;
  color: #8a8a8a;
}
input[type="image"] {
  padding: 0;
}
input[type="image"],
input[type="checkbox"],
input[type="radio"] {
  vertical-align: middle;
  width: auto;
}
.form__element--invalid,
input[type="number"]:out-of-range {
  border-color: #e32d2d;
  box-shadow: 0 0 5px 1px #e84a4a;
}
.form__element.form__element--icon .form__icon {
  position: absolute;
  top: 0;
  right: 0;
  border-color: transparent;
  line-height: inherit;
  transition: 0s all;
  width: auto;
}
.input-range::-webkit-slider-runnable-track,
.input-range::-webkit-slider-thumb,
.input-range::-moz-range-track,
.input-range::-moz-range-thumb,
.input-range::-ms-fill-lower,
.input-range::-ms-fill-upper,
.input-range::-ms-thumb {
  box-shadow: 0 0 5px 1px rgba(0,0,0,0.21);
}
.input-range:focus {
  outline: 0 none;
}
.input-range {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 9px;
  height: 1em;
  margin: 18px 0;
}
.input-range:focus {
  box-shadow: 0 0 0 transparent;
}
.input-range::-webkit-slider-runnable-track {
  animate: 0.2s;
  border-radius: 0.25em;
  height: 0.55em;
}
.input-range--black::-webkit-slider-runnable-track {
  background-color: #4a4a4a;
}
.input-range--black::-moz-range-track {
  background-color: #4a4a4a;
}
.input-range--black::-ms-track,
.input-range--black::-ms-fill-lower,
.input-range--black::-ms-fill-upper,
.input-range--black:focus::-webkit-slider-runnable-track {
  background-color: #4a4a4a;
}
.input-range--black:focus::-moz-range-track {
  background-color: #4a4a4a;
}
.input-range--black:focus::-ms-track,
.input-range--black:focus::-ms-fill-lower,
.input-range--black:focus::-ms-fill-upper {
  background-color: #4a4a4a;
}
.input-range--blue::-webkit-slider-runnable-track {
  background-color: #388cbf;
}
.input-range--blue::-moz-range-track {
  background-color: #388cbf;
}
.input-range--blue::-ms-track,
.input-range--blue::-ms-fill-lower,
.input-range--blue::-ms-fill-upper,
.input-range--blue:focus::-webkit-slider-runnable-track {
  background-color: #388cbf;
}
.input-range--blue:focus::-moz-range-track {
  background-color: #388cbf;
}
.input-range--blue:focus::-ms-track,
.input-range--blue:focus::-ms-fill-lower,
.input-range--blue:focus::-ms-fill-upper {
  background-color: #388cbf;
}
.input-range--gray::-webkit-slider-runnable-track {
  background-color: #e2e8ec;
}
.input-range--gray::-moz-range-track {
  background-color: #e2e8ec;
}
.input-range--gray::-ms-track,
.input-range--gray::-ms-fill-lower,
.input-range--gray::-ms-fill-upper,
.input-range--gray:focus::-webkit-slider-runnable-track {
  background-color: #e2e8ec;
}
.input-range--gray:focus::-moz-range-track {
  background-color: #e2e8ec;
}
.input-range--gray:focus::-ms-track,
.input-range--gray:focus::-ms-fill-lower,
.input-range--gray:focus::-ms-fill-upper {
  background-color: #e2e8ec;
}
.input-range--green::-webkit-slider-runnable-track {
  background-color: #5ee6a5;
}
.input-range--green::-moz-range-track {
  background-color: #5ee6a5;
}
.input-range--green::-ms-track,
.input-range--green::-ms-fill-lower,
.input-range--green::-ms-fill-upper,
.input-range--green:focus::-webkit-slider-runnable-track {
  background-color: #5ee6a5;
}
.input-range--green:focus::-moz-range-track {
  background-color: #5ee6a5;
}
.input-range--green:focus::-ms-track,
.input-range--green:focus::-ms-fill-lower,
.input-range--green:focus::-ms-fill-upper {
  background-color: #5ee6a5;
}
.input-range--orange::-webkit-slider-runnable-track {
  background-color: #ffbc89;
}
.input-range--orange::-moz-range-track {
  background-color: #ffbc89;
}
.input-range--orange::-ms-track,
.input-range--orange::-ms-fill-lower,
.input-range--orange::-ms-fill-upper,
.input-range--orange:focus::-webkit-slider-runnable-track {
  background-color: #ffbc89;
}
.input-range--orange:focus::-moz-range-track {
  background-color: #ffbc89;
}
.input-range--orange:focus::-ms-track,
.input-range--orange:focus::-ms-fill-lower,
.input-range--orange:focus::-ms-fill-upper {
  background-color: #ffbc89;
}
.input-range--purple::-webkit-slider-runnable-track {
  background-color: #d08bfa;
}
.input-range--purple::-moz-range-track {
  background-color: #d08bfa;
}
.input-range--purple::-ms-track,
.input-range--purple::-ms-fill-lower,
.input-range--purple::-ms-fill-upper,
.input-range--purple:focus::-webkit-slider-runnable-track {
  background-color: #d08bfa;
}
.input-range--purple:focus::-moz-range-track {
  background-color: #d08bfa;
}
.input-range--purple:focus::-ms-track,
.input-range--purple:focus::-ms-fill-lower,
.input-range--purple:focus::-ms-fill-upper {
  background-color: #d08bfa;
}
.input-range--red::-webkit-slider-runnable-track {
  background-color: #e32d2d;
}
.input-range--red::-moz-range-track {
  background-color: #e32d2d;
}
.input-range--red::-ms-track,
.input-range--red::-ms-fill-lower,
.input-range--red::-ms-fill-upper,
.input-range--red:focus::-webkit-slider-runnable-track {
  background-color: #e32d2d;
}
.input-range--red:focus::-moz-range-track {
  background-color: #e32d2d;
}
.input-range--red:focus::-ms-track,
.input-range--red:focus::-ms-fill-lower,
.input-range--red:focus::-ms-fill-upper {
  background-color: #e32d2d;
}
.input-range--yellow::-webkit-slider-runnable-track {
  background-color: #fffba4;
}
.input-range--yellow::-moz-range-track {
  background-color: #fffba4;
}
.input-range--yellow::-ms-track,
.input-range--yellow::-ms-fill-lower,
.input-range--yellow::-ms-fill-upper,
.input-range--yellow:focus::-webkit-slider-runnable-track {
  background-color: #fffba4;
}
.input-range--yellow:focus::-moz-range-track {
  background-color: #fffba4;
}
.input-range--yellow:focus::-ms-track,
.input-range--yellow:focus::-ms-fill-lower,
.input-range--yellow:focus::-ms-fill-upper {
  background-color: #fffba4;
}
.input-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #fff;
  border-radius: 0.25em;
  border: 1px solid rgba(0,0,0,0.21);
  height: 1.5em;
  margin-top: -0.5em;
  width: 0.75em;
}
.input-range::-moz-range-track {
  animate: 0.2s;
  border-radius: 1.3px;
  height: 0.55em;
}
.input-range::-moz-range-thumb {
  background: #fff;
  border-radius: 0.25em;
  border: 1px solid rgba(0,0,0,0.21);
  height: 1.5em;
  width: 0.75em;
}
.input-range::-ms-track {
  animate: 0.2s;
  background: transparent;
  border-color: transparent;
  border-width: 16px 0;
  color: transparent;
  height: 0.55em;
}
.input-range::-ms-fill-lower {
  border-radius: 0.25em;
}
.input-range::-ms-fill-upper {
  border-radius: 0.25em;
}
.input-range::-ms-thumb {
  background: #fff;
  border-radius: 0.25em;
  border: 1px solid rgba(0,0,0,0.21);
  height: 1.5em;
  width: 0.75em;
}
.input-toggle {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.input-toggle input:checked + .input-toggle__toggle:after {
  left: 100%;
  transform: translateX(-100%);
}
.input-toggle .input-toggle__text {
  margin-right: 0.5em;
}
.input-toggle .input-toggle__toggle + .input-toggle__text {
  margin-right: 0.5em;
  margin-left: 0;
}
.input-toggle .input-toggle__toggle {
  border-radius: 21px;
  transition: 0.3s all ease-out;
  vertical-align: middle;
}
.input-toggle .input-toggle__toggle {
  height: 21px;
  width: 36px;
}
.input-toggle .input-toggle__toggle:after {
  box-shadow: 0 0 0 1px rgba(0,0,0,0.2) inset;
  border-radius: 50%;
  transition: 0.3s all ease-out;
  transform: translateX(0%);
}
.input-toggle .input-toggle__toggle:after {
  height: 19px;
  width: 19px;
}
