/*
---

name: Validation Styles

description: Validation Styles

provides: [CSS.Validation]

...
*/
p.required {
  border-top: 1px solid #e7e7e7;
  font-size: 1.2em;
  line-height: 1.3334;
  padding: 8px 0 16px;
  text-align: right;
  text-transform: lowercase;
}
p.required + fieldset {
  border-top: 0;
  padding-top: 8px;
}
p.required + fieldset > legend {
  border-top: 0;
}

form p.required {
  border-top: 0;
}

.validation-advice {
  font-size: 1.4em;
  line-height: 1;
  color: #b71f38;
  padding-bottom: 8px;
}
.validation-advice + .validation-advice {
  left: -1000em;
  position: absolute;
}

td .validation-advice {
  font-size: 1em;
}

select.validation-failed:focus,
textarea.validation-failed:focus {
  -moz-box-shadow: 0 0 0 #fff;
  outline-color: none;
}

input.text.validation-failed:focus {
  -moz-box-shadow: 0 0 0 #fff;
  outline-color: none;
}

fieldset.fieldError {
  padding-top: 8px;
  padding-left: 8px;
}

.fieldError {
  background-color: #f8e8eb;
  margin-bottom: 12px;
  border-radius: 3px;
}
.fieldError .validation-failed {
  background-color: #fff;
  border-color: #b71f38;
}

.abacus-popup .validationBox .sleeve {
  background: 0;
  border: 0;
  margin: 0;
  padding: 0;
}

.validationBox {
  background-color: #f8e8eb;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  clear: both;
  margin: 0 0 16px;
  padding: 16px;
}
.validationBox.payment-failed {
  padding: 20px 16px;
}
.validationBox.payment-failed h2 {
  padding: 0 0 4px 40px;
}
.validationBox.payment-failed h2:before {
  margin: -9px 0 0 -40px;
  font-size: 1.9em;
}
.validationBox h2 {
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4286;
  padding: 0 0 4px 31px;
}
.validationBox h2:before {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  speak: none;
  text-decoration: inherit;
  color: #b71f38;
  content: "\f071";
  font-size: 1.6em;
  position: absolute;
  margin: -5px 0 0 -29px;
}
.validationBox ul {
  margin-left: 26px;
  margin-bottom: 0;
}
.validationBox li {
  list-style: outside;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4286;
  margin-bottom: 4px;
}
.validationBox label {
  display: inline-block;
  cursor: pointer;
  font-size: 1em;
  padding: 0;
  width: auto;
}
.validationBox label:hover {
  text-decoration: underline;
}

.grid.fieldError,
.grid.informInline.fieldError {
  margin-bottom: 0;
}

fieldset fieldset legend .fieldError {
  padding-left: 0;
}

.informInline .validationBox label {
  float: none;
  margin: 0;
  padding: 0 0 4px;
  width: auto;
  font-weight: normal;
  text-align: left;
}
.informInline .field.advice.fieldError {
  margin-top: 0px;
  padding-top: 8px;
}
