.custom-input-native {
  /*display: none;*/
  opacity: 0;
  position: absolute; }

.custom-input-text {
  cursor: pointer;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none; }

.custom-input-text__indent {
  padding-left: 20px; }

.custom-input-checkbox, .custom-input-radio {
  cursor: pointer;
  position: relative;
  top: 2px;
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0 0.5rem 0 0;
  -webkit-box-shadow: 0 0 0.125rem #818181;
  box-shadow: 0 0 0.125rem #818181;
  border: 1px #818181 solid;
  border-bottom-color: #2d2d2d;
  background: #fdfdfd;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), color-stop(11%, #f3f3f3), color-stop(33%, #ebebeb), color-stop(44%, gainsboro), color-stop(67%, #e6e6e6), color-stop(78%, #f0f0f0), color-stop(89%, #f6f6f6), to(white));
  background: linear-gradient(to bottom, #fdfdfd 0%, #f3f3f3 11%, #ebebeb 33%, gainsboro 44%, #e6e6e6 67%, #f0f0f0 78%, #f6f6f6 89%, white 100%); }
  .custom-input-checkbox:hover, .custom-input-radio:hover {
    background: white;
    background: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(11%, #f6f6f6), color-stop(22%, #f0f0f0), color-stop(33%, #e6e6e6), color-stop(56%, gainsboro), color-stop(67%, #ebebeb), color-stop(89%, #f3f3f3), to(#fdfdfd));
    background: linear-gradient(to bottom, white 0%, #f6f6f6 11%, #f0f0f0 22%, #e6e6e6 33%, gainsboro 56%, #ebebeb 67%, #f3f3f3 89%, #fdfdfd 100%); }

.custom-input-checkbox {
  border-radius: 0.1875rem; }

.custom-input-checkbox__abs {
  position: absolute;
  left: 0;
  top: 4px; }

.custom-input-radio {
  border-radius: 50%; }

.custom-input-checkbox:after {
  content: "";
  position: absolute;
  width: 0.8125rem;
  height: 0.8125rem;
  background-repeat: no-repeat;
  left: 0.0625rem;
  top: -0.125rem; }

.custom-input-radio:after {
  content: "";
  position: absolute;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.custom-input-native:checked ~ .custom-input-checkbox,
.custom-input-native:checked ~ .custom-input-radio,
.custom-input-native:checked ~ .custom-input-checkbox,
.custom-input-native:checked ~ .custom-input-radio {
  background: #42509b;
  background: -webkit-gradient(linear, left top, left bottom, from(#42509b), color-stop(3%, #94a3ca), color-stop(5%, #e9f8ff), color-stop(8%, #e6f3f9), color-stop(11%, #daeaf7), color-stop(16%, #badff2), color-stop(19%, #abd4f2), color-stop(22%, #99ceee), color-stop(41%, #80c5ee), color-stop(43%, #79c4eb), color-stop(46%, #77bdf1), color-stop(49%, #33b3e2), color-stop(51%, #3cb3eb), color-stop(54%, #41b3e9), color-stop(57%, #51b6ea), color-stop(59%, #51baea), color-stop(65%, #64c0f3), color-stop(68%, #66c1ee), color-stop(78%, #7fccfa), color-stop(81%, #8dd7fe), color-stop(86%, #a7ebfe), color-stop(89%, #b0f6ff), color-stop(92%, #b7fbfe), color-stop(95%, #b8fcff), color-stop(97%, #b5f7ff), to(#abecfe));
  background: linear-gradient(to bottom, #42509b 0%, #94a3ca 3%, #e9f8ff 5%, #e6f3f9 8%, #daeaf7 11%, #badff2 16%, #abd4f2 19%, #99ceee 22%, #80c5ee 41%, #79c4eb 43%, #77bdf1 46%, #33b3e2 49%, #3cb3eb 51%, #41b3e9 54%, #51b6ea 57%, #51baea 59%, #64c0f3 65%, #66c1ee 68%, #7fccfa 78%, #8dd7fe 81%, #a7ebfe 86%, #b0f6ff 89%, #b7fbfe 92%, #b8fcff 95%, #b5f7ff 97%, #abecfe 100%); }

.custom-input-native:disabled ~ .custom-input-text,
.custom-input-native:disabled ~ .custom-input-text {
  color: #94969b; }

.custom-input-native:focus ~ .custom-input-checkbox,
.custom-input-native:focus ~ .custom-input-radio,
.custom-input-native:focus ~ .custom-input-checkbox,
.custom-input-native:focus ~ .custom-input-radio {
  -webkit-box-shadow: 0 0 5px 0 #42509b;
  box-shadow: 0 0 5px 0 #42509b; }

.custom-input-native:checked ~ .custom-input-checkbox:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBvbHlnb24gcG9pbnRzPSIwLDUgNCwxMSA1LDExIDExLDAgOSwwIDUsOCA0LDggMyw1IiBmaWxsPSJyZWQ7Ij48L3BvbHlnb24+PC9zdmc+); }

.custom-input-native:checked ~ .custom-input-radio:after {
  background-color: #000; }

.custom-iphone-checkbox {
  border-radius: 0.1875rem;
  cursor: pointer;
  display: inline-block;
  height: 1.125rem;
  overflow: hidden;
  position: relative;
  vertical-align: middle;
  width: 3.4375rem;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  font-size: 0.625rem;
  -webkit-transform: translateZ(0);
  transform: translateZ(0); }
  .custom-iphone-checkbox input {
    display: none; }
  .custom-iphone-checkbox input:checked + .custom-iphone-checkbox-slider {
    left: 0; }

.custom-iphone-checkbox-slider {
  left: -50%;
  position: absolute;
  top: 0;
  bottom: 0;
  -webkit-transition: left .25s ease-out;
  transition: left .25s ease-out;
  border-radius: 0.1875rem; }

.custom-iphone-checkbox-on, .custom-iphone-checkbox-block, .custom-iphone-checkbox-off {
  display: block;
  font-weight: bold;
  height: 100%;
  line-height: 1.125rem;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.custom-iphone-checkbox-on {
  background-color: #0662c1;
  color: white;
  left: 0;
  width: 1.84375rem;
  padding-right: 0.125rem;
  border-top-left-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem; }

.custom-iphone-checkbox-off {
  background-color: #252729;
  color: #8b8b8b;
  padding-left: 0.125rem;
  left: 3.3125rem;
  width: 1.71875rem;
  border-top-right-radius: 0.1875rem;
  border-bottom-right-radius: 0.1875rem; }

.custom-iphone-checkbox-block {
  background-color: #5a5d60;
  border-radius: 0.1875rem;
  height: 100%;
  left: 1.71875rem;
  width: 1.71875rem; }

.btn-ghost {
  border: 0;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 1.25rem auto 0;
  width: 13px;
  height: 13px;
  color: #adadad; }
  .btn-ghost:hover {
    text-decoration: none;
    color: #adadad; }

.select-custom {
  position: relative;
  display: inline-block;
  width: 100%;
  color: #fff; }
  .select-custom:after {
    right: 0.625rem;
    pointer-events: none; }
  .select-custom select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    /* do not forget set background color to select by color-sheme */
    /*border: none;*/
    border-color: transparent;
    padding: 0.5rem 1.875rem 0.5rem 0.9375rem;
    border-radius: 0.3125rem;
    width: 100%;
    cursor: pointer;
    border-width: 1px;
    border-style: solid; }
    .select-custom select:hover, .select-custom select:focus {
      /*border: none;*/
      outline: none; }
    .select-custom select::-ms-expand {
      display: none; }
    .select-custom select option {
      background-color: #fff;
      color: #333;
      border: none; }
  .select-custom--slim select {
    padding: 0 1.875rem 0 0.9375rem;
    height: 1.625rem; }
  .select-custom--fat select {
    padding-top: 12px;
    padding-bottom: 12px; }
