﻿input.parsley-success,
select.parsley-success,
textarea.parsley-success {
  color: #468847;
  background-color: #DFF0D8;
  border: 1px solid #D6E9C6;
}

input.parsley-error,
select.parsley-error,
textarea.parsley-error {
  color: #B94A48;
  background-color: #F2DEDE;
  border: 1px solid #EED3D7;
}

.parsley-errors-list {
  margin: 2px 0 3px 0;
  padding: 0;
  list-style-type: none;
  font-size: 0.9em;
  line-height: 0.9em;
  opacity: 0;
  -moz-opacity: 0;
  -webkit-opacity: 0;

  transition: all .3s ease-in;
  -o-transition: all .3s ease-in;
  -ms-transition: all .3s ease-in-;
  -moz-transition: all .3s ease-in;
  -webkit-transition: all .3s ease-in;
}

.parsley-errors-list.filled {
  opacity: 1;
}
.parsley-custom-error-message, .parsley-errors-list
{
    color: Red;
    line-height: 14px;
    font-size: 11px;
}

/* Ensure error messages always appear below inputs */
.parsley-errors-list {
    display: block !important;
    width: 100% !important;
    margin-top: 4px;
    clear: both;
    flex-basis: 100% !important;
}

.parsley-errors-list li {
    display: block !important;
    width: 100% !important;
}

/* Fix for input-group flex layout pushing errors inline */
.input-group {
    flex-wrap: wrap;
}

.input-group .parsley-errors-list,
.input-group + .parsley-errors-list,
.input-group ~ .parsley-errors-list {
    flex-basis: 100% !important;
    order: 99;
}

/* Fix for password-input-wrapper flex layout pushing errors inline */
.password-input-wrapper {
    flex-wrap: wrap;
}

.password-input-wrapper .parsley-errors-list,
.password-input-wrapper + .parsley-errors-list,
.password-input-wrapper ~ .parsley-errors-list {
    flex-basis: 100% !important;
    order: 99;
}

/* Ensure form-control siblings don't affect error placement */
.form-control + .parsley-errors-list,
.form-control ~ .parsley-errors-list {
    display: block !important;
    width: 100% !important;
}

/* Force form-group to stack children vertically */
.form-group {
    display: block;
}

/* Handle row/col flex layouts */
.row .parsley-errors-list,
[class*="col-"] .parsley-errors-list {
    display: block !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
}