.form-item {
  margin-bottom: 2.25rem;
  position: relative;
}

.form-item .form-item--error-message {
  background: #F2DEDE;
  border: 1px solid #EED3D7;
  border-radius: 4px;
  color: #B94A48;
  font-weight: bold;
  padding: 0.5rem 1rem 0.5rem 2.5rem;
  position: absolute;
  transition: all 3s;
  top: 85px;
  z-index: 9;
  animation: disappear .5s linear 2s 1;
  animation-fill-mode: forwards;
}

.form-item .form-item--error-message:before {
  border-bottom: 5px solid #eed3d7;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  content: '';
  left: 10px;
  position: absolute;
  top: -6px;
  z-index: 2;
}

.form-item .form-item--error-message:after {
  border: 2px solid #B94A48;
  border-radius: 50%;
  content: '!';
  color: #B94A48;
  display: block;
  height: 20px;
  left: 10px;
  line-height: 17px;
  position: absolute;
  text-align: center;
  top: 6px;
  width: 20px;
}

input[type=text],
input[type=password],
input[type=email],
input[type=url],
select,
.chosen-container > a {
  padding: 1rem 1.75rem;
  font-size: 1rem;
  background-color: var(--color-white);
  border: 1px #E6E6E6 solid;
  border-radius: .313rem;
}

input[type=text]:disabled,
input[type=password]:disabled,
input[type=email]:disabled,
input[type=url]:disabled,
select:disabled,
.chosen-container > a:disabled {
  background-color: var(--color-white-smoke);
}

input.form-submit {
  background-color: var(--color-accent-yellow);
  border: 0 none;
  border-radius: 2px;
  font-weight: 500;
  font-size: 1rem;
  color: var(--color-white);
  padding: .75rem 1rem;
  text-align: center;
  cursor: pointer;
}

input.form-submit:hover {
  background-color: var(--color-accent-yellow-mod);
}

input.form-submit:disabled {
  background: var(--color-white-smoke);
  border: 1px #E6E6E6 solid;
  color: #444;
  cursor: default;
  opacity: 0.5 !important;
}

label {
  font-size: .875rem;
  margin-bottom: 10px;
  display: block;
  color: var(--color-dark-text);
}

a.tabledrag-handle .handle {
  width: 24px;
  height: 24px;
}

.chosen-container-single {
  max-width: 100% !important;
  width: 100% !important;
}

.chosen-container-single .chosen-single {
  background: var(--color-white);
  border: 1px #E6E6E6 solid;
  border-radius: .313rem;
  box-shadow: none;
  font-size: 1rem;
  height: auto;
  line-height: 18px;
  padding: 1rem 0 1rem 1.75rem;
}

.chosen-container-single .chosen-single span {
  background: none;
  margin-right: 52px;
}

.chosen-container-single .chosen-single div {
  border-left: 1px #E6E6E6 solid;
  height: calc(100% - 12px);
  top: 6px;
  width: 52px;
}

.chosen-container-single .chosen-single div b {
  background: none;
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
}

.chosen-container-single .chosen-single div b:after {
  content: '';
  border-right: 1px solid #767676;
  border-top: 1px solid #767676;
  height: 10px;
  left: 20px;
  position: absolute;
  top: 12px;
  transform: rotate(135deg);
  width: 10px;
}

.chosen-container-active .chosen-single {
  border: 1px #E6E6E6 solid;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.chosen-container-active.chosen-with-drop .chosen-single {
  border: 1px #E6E6E6 solid;
  background: var(--color-white);
  box-shadow: none;
}

.chosen-container-active.chosen-with-drop .chosen-single div {
  border-left: inherit;
  background: transparent;
}

.chosen-container-active.chosen-with-drop .chosen-single div b:after {
  top: 18px;
  transform: rotate(-45deg);
}

.chosen-container.chosen-disabled .chosen-single {
  background: var(--color-white-smoke);
}

.chosen-container .chosen-drop {
  border: 1px #E6E6E6 solid;
}

.chosen-container .chosen-results li {
  font-size: 1rem;
  line-height: 18px;
}

.chosen-container .chosen-results li.highlighted {
  background: var(--color-dark-blue);
}

@keyframes disappear {
  from {
    opacity: 1;
    visibility: visible;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}
