.fv-has-feedback {
  position: relative; }

.fv-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  text-align: center; }

.fv-help-block {
  display: block; }

/* Hide the clear icon for field using placeholder attribute on IE10/11 */
.fv-form [placeholder]::-ms-clear {
  display: none; }

/* -------------------
 * Support Bootstrap 3
 * ------------------- */
.fv-form-bootstrap .help-block {
  margin-bottom: 0; }

.fv-form-bootstrap .tooltip-inner {
  text-align: left; }

.fv-form-bootstrap .fv-bootstrap-icon-input-group {
  z-index: 100; }

/* Inline form */
.form-inline.fv-form-bootstrap .form-group {
  vertical-align: top; }

/* -------------------------
 * Support Bootstrap 4 alpha
 * ------------------------- */
.fv-form-bootstrap4 .fv-control-feedback {
  width: 38px;
  height: 38px;
  line-height: 38px; }

/* For horizontal form */
.fv-form-bootstrap4 .form-group.row .fv-control-feedback {
  right: 15px; }

.fv-form-bootstrap4 .form-group.row .form-check ~ .fv-control-feedback {
  top: -7px;
  /* labelHeight/2 - iconHeight/2 */ }

/* Inline form */
.fv-form-bootstrap4.form-inline .form-group {
  vertical-align: top; }

/* Stacked form */
.fv-form-bootstrap4:not(.form-inline) label ~ .fv-control-feedback {
  top: 32px; }

/* Without label */
.fv-form-bootstrap4:not(.form-inline) label.sr-only ~ .fv-control-feedback {
  top: -7px;
  /* labelHeight/2 - iconHeight/2 */ }

.fv-form-bootstrap4:not(.form-inline) .form-check ~ .fv-control-feedback {
  top: 25px;
  /* labelHeight + checkboxHeight/2 - iconHeight/2 */ }

.fv-form-bootstrap4 .has-success label, .fv-form-bootstrap4 .has-success .fv-control-feedback {
  color: #5cb85c; }

.fv-form-bootstrap4 .has-warning label, .fv-form-bootstrap4 .has-warning .fv-control-feedback {
  color: #f0ad4e; }
