/*******************************************************
              ALERT CUSTOM STYLE
*******************************************************/
.alert {
  text-align: left;
}

/*******************************************************
              PLACEHOLDER CUSTOM STYLE
*******************************************************/

.form-group input::placeholder,
.form-group textarea::placeholder {
  opacity: 0.5;
  font-style: italic;
}
.form-group input::-webkit-input-placeholder,
.form-group textarea::-webkit-input-placeholder {
  opacity: 0.5;
  font-style: italic;
}
.form-group input::-moz-placeholder,
.form-group textarea::-moz-placeholder {
  opacity: 0.5;
  font-style: italic;
}
.form-group input:-ms-input-placeholder,
.form-group textarea:-ms-input-placeholder {
  opacity: 0.5;

  font-style: italic;
}
.form-group input:-moz-placeholder,
.form-group textarea:-moz-placeholder {
  opacity: 0.5;
  font-style: italic;
}

/*******************************************************
            PRETTY CHECKBOX CUSTOM STYLE
*******************************************************/

.form-group .pretty {
  font-size: 20px;
  padding: 7px 0;
}

.pretty.p-switch .state label:before, .pretty.p-switch .state label:after {
  top: -2px;
}

.has-error .pretty.p-switch .state:before {
  border-color: #ed5565;
}

.has-error .pretty.p-switch.p-fill label:after {
  background-color: #ed5565 !important;
}

/*******************************************************
            IBOX CUSTOM STYLE
*******************************************************/

.ibox-content.ibox-parent {
  outline: #fff solid 10px;
  outline-offset: -11px;
  border: 0;
  border-top: 1px solid #e7eaec;
  padding: 15px;
}
.ibox-content.ibox-parent .ibox {
  margin-bottom: 0;
}

.ibox.ibox-border {
  border: 1px solid #e7eaec;
}

/*******************************************************
            MENU CUSTOM STYLE
*******************************************************/

.nav-second-level li,
.nav-third-level li {
  width: 100%;
}
.nav > li.mm-active {
  border-left: 4px solid #19aa8d;
  background: #293846;
}
.nav.nav-second-level > li.mm-active {
  border: none;
}
.nav > li.mm-active > a {
  color: #fff;
}

/*******************************************************
            MODAL CUSTOM STYLE
*******************************************************/

.modal-header .navbar-top-links li a {
  padding:0px 10px;
  min-height: auto;
  font-size: 18px;
  line-height: 14px;
}

.modal-header .navbar-top-links li a:hover {
  color: #000000;
}

.modal-header .navbar-top-links li:last-child {
  margin-right:15px;
}

/*******************************************************
            LOCALIZED STYLE
*******************************************************/

.custom-file:lang(fr) .custom-file-label::after {
  content: "Sélectionnez";
}

/*******************************************************
            VUE SELECT CUSTOM STYLE
*******************************************************/

.v-select .vs__dropdown-toggle {
  height: auto;
  border: 1px solid #e5e6e7;
  transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  padding: 2px 0 5px 0;
  border-radius: 0px;
}
.v-select.vs--open .vs__dropdown-toggle {
  border-color: #1ab394;
  border-bottom: 0;
}
.v-select.vs--open .vs__dropdown-menu {
  border-color: #1ab394;
}
.v-select input[type="search"] {
  font-size: 0.9rem;
}
.v-select .vs__dropdown-toggle::after {
  content: normal !important;
}
.v-select .vs__dropdown-menu {
  transform: scale(1, 1) !important;
}
.v-select .vs__selected {
  font-size: 0.9rem;
}

.has-success .vs__dropdown-toggle , .has-success .vs__dropdown-toggle:focus {
  border-color: #1ab394;
}

.has-error .vs__dropdown-toggle, .has-error .vs__dropdown-toggle:focus {
  border-color: #ed5565;
}

/*******************************************************
            INTL TEL INPUT STYLE
*******************************************************/

div.iti {
  display: block;
  flex-grow: 2; /* in case of being part of flex structure */
}

div.iti.flag-left .iti__flag-container {
  right: auto;
  left: 0;
}

div.iti.flag-left input[type=tel] {
  padding-right: 6px;
  padding-left: 52px;
}


/*******************************************************
            VUE-AUTOSUGGEST STYLE
*******************************************************/

.autosuggest__input.autosuggest__input--open {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-color: #1ab394;
  border-bottom: 0;
}

.autosuggest__results-container {
  position: relative;
  width: 100%;
}

.autosuggest__results {
  font-size: 0.9rem;
  margin: 0;
  position: absolute;
  z-index: 10000001;
  width: 100%;
  border: 1px solid #1ab394;
  border-top: 0;
  background: white;
  padding: 0px;
}

.autosuggest__results ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.autosuggest__results .autosuggest__results-item {
  cursor: pointer;
  padding: 15px;
}

#autosuggest ul:nth-child(1) > .autosuggest__results_title {
  border-top: none;
}

.autosuggest__results .autosuggest__results_title {
  color: gray;
  font-size: 11px;
  margin-left: 0;
  padding: 15px 13px 5px;
  border-top: 1px solid lightgray;
}

.autosuggest__results .autosuggest__results-item:active,
.autosuggest__results .autosuggest__results-item:hover,
.autosuggest__results .autosuggest__results-item:focus,
.autosuggest__results .autosuggest__results-item.autosuggest__results-item--highlighted {
  background-color: #F6F6F6;
}

/*******************************************************
            LOADING
*******************************************************/
.efp-loading {
  display: flex;  
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.7;
  background: #fff;
  align-items: center;
}

.efp-lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
  margin-left: auto;
  margin-right: auto;
}

.efp-lds-ellipsis div {
  position: absolute;
  top: 27px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #666;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

.efp-lds-ellipsis div:nth-child(1) {
  left: 6px;
  animation: lds-ellipsis1 0.6s infinite;
}

.efp-lds-ellipsis div:nth-child(2) {
  left: 6px;
  animation: lds-ellipsis2 0.6s infinite;
}

.efp-lds-ellipsis div:nth-child(3) {
  left: 26px;
  animation: lds-ellipsis2 0.6s infinite;
}

.efp-lds-ellipsis div:nth-child(4) {
  left: 45px;
  animation: lds-ellipsis3 0.6s infinite;
}

@keyframes lds-ellipsis1 {
  0% {
      transform: scale(0);
  }
  100% {
      transform: scale(1);
  }
}

@keyframes lds-ellipsis3 {
  0% {
      transform: scale(1);
  }
  100% {
      transform: scale(0);
  }
}

@keyframes lds-ellipsis2 {
  0% {
      transform: translate(0, 0);
  }
  100% {
      transform: translate(19px, 0);
  }
}

/*******************************************************
            OTHER CUSTOM STYLE
*******************************************************/

#page-wrapper,
#side-menu,
.footer,
.nav-header,
.navbar-static-side,
li.active {
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}

/* To align buttons within form with label */
.form-group.row .btn {
  vertical-align: top;
}

.hidden {
  display:none;
}
