/* ##### LABEL ##### */
.form-field label:not(.error) {
  display:inline-block;
  line-height:normal;
  margin-bottom:5px;
  color: #fff;
  font-weight: 900;
}

/* ##### INPUT ##### */
.form-field input, .form-field textarea, .form-field select {
  height:42px;
  line-height:42px;
  background-color:transparent;
  border:transparent;
  border-bottom:1px solid #56e1ff;
  display:block;
  padding:0 15px;
  width:100%;
  font-size:16px;
  color: #fff;
}
.form-field select {
  background-color: #001627;
  border-radius: 12px;
  border-bottom:1px solid transparent;
  appearance: none;
  -webkit-appearance: none;
  background-image:url(../img/ico-down.png);
  background-repeat: no-repeat;
  background-position: 98% 50%;
}

.form-field input[type=number] {
  padding-right:0;
}

.form-field textarea {
  height:150px;
  line-height:normal;
  padding: 5px 15px;
}

.form-field input:not([disabled]):focus, .form-field textarea:not([disabled]):focus, .form-field select:focus {
  border-bottom:3px solid #56e1ff;
  outline:0
}

.form-field input.required:not(.no-ico), .form-field textarea.required:not(.no-ico), .form-field select.required {
  background-image:url(../img/req-ico.png);
  background-repeat: no-repeat;
  background-position: 99% 5px;
}

.form-field select.required {
  background-position: 95% 5px;
}

/* ##### CHECKBOX ##### */
.form-field.checkbox input[type=checkbox] {opacity:0; position:absolute; width:1px; height:1px; left:5px; top:3px;}

.form-field.checkbox {
  padding:0 0 0 30px;
  position:relative;
}
.checkbox:hover label span {font-weight: 600; color: #fff !important;}
.bx-gamesort label {width: 100%;}

.form-field.checkbox label:not(.error) {
  font-size:14px;
  line-height:normal;
  font-weight: normal;
  position: relative;
  display: inline-block;
  cursor:pointer;
  margin:0;
  padding:0;
}

.form-field.checkbox label:not(.error):before {
  content: "";
  background:url(../img/ico-sprite.png) no-repeat;
  width:15px;
  height:15px;
  position:absolute;
  left: -25px;
  top:1px;
}

.form-field.checkbox input[type="checkbox"]:checked + label:before {
  background-position:-15px 0;
}

.form-field.checkbox input[type="checkbox"].error + label {
  box-shadow: 0 0 5px rgba(255, 0, 0, 0.5);
}

/* ##### RADIO ##### */
.form-field.radio input[type="radio"] {opacity:0; position:absolute; width:1px; height:1px; left:5px; top:3px;}

.form-field.radio {
  padding:0 0 0 30px;
  position:relative;
}

.form-field.radio label:not(.error) {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  position: relative;
  display: inline-block;
  cursor: pointer;
  margin: 0;
  padding: 0;
}

.form-field.radio label:not(.error):before {
  content: "";
  background:url(../img/ico-sprite.png) 0 -15px no-repeat;
  width:15px;
  height:15px;
  position:absolute;
  left: -25px;
  top:5px;
}
.form-field.radio input[type="radio"]:checked + label:before {
  background-position:-15px -15px;
}
.form-field.radio input[type="radio"].error + label {
  box-shadow: 0 0 5px rgba(255, 0, 0, 0.5);
}
.form-field.radio.correct label:not(.error) {
  color: #197b30 !important;
  font-weight: bold;
}
.form-field.radio.wrong label:not(.error) {
  color: #ff0000 !important;
  font-weight: bold;
}
.form-field.radio.correct input[type="radio"]:checked + label:before {
  background-position:-15px -30px;
}
.form-field.radio.wrong input[type="radio"]:checked + label:before {
  background-position:0 -30px;
}

/* ##### VALIDATE ERROR ##### */
input.error:not([disabled]), textarea.error:not([disabled]), select.error {border-bottom: 2px solid red !important;}
.valid:not([disabled]) {border-color:#36d100 !important;}

label.error {display:none; color:red; font-size:14px; line-height:normal; font-weight:normal; margin:0;}
label[generated="true"] {display:inline-block;}

.hidden-submit {
  left: -10000px;
  opacity: 0;
  position: absolute;
  top: -10000px;
}

input[readonly="readonly"], input[readonly], input[disabled="disabled"], input[disabled] {
  background-color:#F6F6F6 !important;
  color:#989593 !important;
  border-color: #bcbec0 !important;
}

::-webkit-input-placeholder {color: #6e9bbf;}
:-moz-placeholder {color: #6e9bbf;}
::-moz-placeholder {color: #6e9bbf;}
:-ms-input-placeholder {color: #6e9bbf;}