.o-fieldset-icon {
  padding-right: 1%;
  cursor: pointer;
}
fieldset legend.o-fieldset-legend {
  font-size: 1.2em;
  font-weight: bold;
  line-height: 1.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  margin-bottom: 0.5em;
  background-color: #eeeeee;
}
fieldset legend.o-fieldset-legend::before,
fieldset legend.o-fieldset-legend::after {
  display: table;
  content: "";
  line-height: 0;
  clear: both;
}
fieldset legend.o-fieldset-legend div i {
  cursor: pointer;
}
fieldset div[role='fieldset-body'] {
  padding-top: 0.5em;
  padding-bottom: 0.8em;
}
.o-left-margin div {
  margin-bottom: 0.3em;
}
/**
 * Gestion de l'icône permettant d'afficher les messages associés à un champ de saisie.
 */
[data-o-role*="input-tooltip"] > [class^="fa-"] {
  cursor: pointer;
  margin-left: 0.3em;
  margin-right: 0.3em;
}
/**
 * Gestion de la taille de l'icone
 */
.icon-small[class^="fa-"] {
  font-size: 0.7em;
}
/**
 * Affichage des opérateurs de recherche et mise à jour du formattage pour les champs de saisie associés.
 */
div[data-o-role="expression"] .col-md-2 select {
  width: 100%;
  height: 1.428571429;
}
div[data-o-role="expression"] .col-md-2 ~ div[class*="span"]:first-child {
  margin-left: 0px;
}
/**
   * Affichage des champs de saisie, dans le cas nominal, non précédé d'un opérateur de recherche.
   */
div[data-o-role*="control"] input,
div[data-o-role*="control"] select,
div[data-o-role*="control"] textarea,
div[data-o-role*="control"] ul.o-many-checkbox-list {
  /*
     * Cette taille est hérité par défaut, mais doit impérativement être
     * recalculée. En effet, il faut à postériori enlever la largeur
     * des padding, border et margin (cf Box Model sur w3schools : http://www.w3schools.com/css/css_boxmodel.asp)
     * puis celle nécessaire pour placer l'icône d'erreur à droite du champ.
     */
  width: calc(100% - 2.75em);
  margin-bottom: 0;
}
div[data-o-role*="control"] input[type='checkbox'],
div[data-o-role*="control"] select[type='checkbox'],
div[data-o-role*="control"] textarea[type='checkbox'],
div[data-o-role*="control"] ul.o-many-checkbox-list[type='checkbox'] {
  width: auto;
}
div[data-o-role*="control"] input[type='radio'] .radio-inline,
div[data-o-role*="control"] select[type='radio'] .radio-inline,
div[data-o-role*="control"] textarea[type='radio'] .radio-inline,
div[data-o-role*="control"] ul.o-many-checkbox-list[type='radio'] .radio-inline {
  width: auto;
}
div[data-o-role*="control"] input[type='radio'],
div[data-o-role*="control"] select[type='radio'],
div[data-o-role*="control"] textarea[type='radio'],
div[data-o-role*="control"] ul.o-many-checkbox-list[type='radio'] {
  width: unset;
}
div[data-o-role*="control"] [readonly="readonly"] {
  background-color: transparent;
  border: 0;
  padding-left: 0;
  border-radius: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 #000000;
}
div[data-o-role*="control"] [readonly="readonly"][data-o-role="filepreview"] {
  border: 1px solid #ccc;
  background-color: #eeeeee;
  cursor: not-allowed;
  border-radius: 4px;
  padding: 6px 12px;
  /*
       * Cette taille surcharge celle indiquée ci-dessus car  l'inputFile doit afficher 2 boutons et nécessite
       * donc plus de place.
       */
  width: calc(100% - 5.5em);
}
.o-icon-error-form {
  color: #a94442;
}
.o-block-input {
  overflow: auto;
}
.o-block-input > div {
  display: block;
  vertical-align: top;
  clear: both;
  margin-left: 0;
}
/**
 * Permet une surcharge Bootstrap.
 */
.form-group .help-block {
  margin-top: 0;
}
[class*="span"].help-block {
  margin-left: 0;
  float: none;
}
.o-inflow {
  vertical-align: text-bottom;
}
.o-inflow [class^="fa-"],
.o-inflow [class*=" fa-"] {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
}
label.control-label {
  clear: left;
  font-weight: bold;
  margin-bottom: 0;
  display: block;
  padding-left: 0;
}
.alert {
  padding: 0;
  margin-bottom: 0;
}
/**
 * Permet de positionner les ancres associées aux champs de saisie en dessous du header.
 * Par défaut, en HTML, les ancres sont "chargées" en haut de page.
 */
.o-anchor-top {
  position: relative;
  top: -325px;
  display: block;
  height: 0;
  width: 0;
  visibility: hidden;
}
/** SURCHARGE BOOTSTRAP */
.form-horizontal.o-no-left-margin .control-label,
.form-horizontal .o-no-left-margin .control-label {
  width: auto;
}
.form-vertical .control-label {
  float: none;
}
.form-vertical .control-label.pull-left {
  float: left;
}
.form-vertical .control-label.pull-right {
  float: right;
}
.o-block-input div[class*="span"] {
  margin-left: 0;
}
.form-group div[class*="span"]:first-child {
  margin-left: 0;
}
.control-label ~ div[class*="span"] {
  margin-left: 0;
}
.o-form-actions {
  margin-bottom: 0;
  text-align: center;/** Non définit au départ... */
  padding-left: 20px;/** Bootstrap définit 160px... 20px : comme à droite*/
  overflow: visible;
}
/** Surcharges Bootstrap pour les formulaires ... */
[class*="container"] .form-actions {
  margin-bottom: 0;
  text-align: center;/** Non définit au départ... */
  padding-left: 20px;/** Bootstrap définit 160px... 20px : comme à droite*/
  overflow: visible;
}
/**  ! SURCHARGE BOOTSTRAP */
*[data-o-role='help-tooltip'] {
  cursor: pointer;
  margin-top: 0.15em;
}
*[data-o-role='help-tooltip'] i.icon-question-sign {
  color: #46a546;
  padding-left: 0;
}
*[data-o-role='help-tooltip'].col-md-1.ptfixed {
  min-height: 1.15em;
  margin-left: 0;
  padding-left: 0;
  width: 0;
}
.o-inline-block ~ .col-md-1.ptfixed[data-o-role='help-tooltip'] {
  padding-top: 0.35em;
}
.o-no-float {
  float: none;
  display: inline-block;
}
.o-no-float.ptfixed {
  float: none;
  display: inline-block;
}
.o-no-float.ptfixed[class*="span"] {
  float: none;
  display: inline-block;
}
.form-group[data-o-role="form-group"] .form-actions {
  margin-bottom: 0;
  text-align: center;/** Non définit au départ... */
  padding-left: 20px;/** Bootstrap définit 160px... 20px : comme à droite*/
  overflow: visible;
}
.form-group[data-o-role="form-group"] .form-control {
  display: inline-block;
}
.form-group[data-o-role="form-group"].o-no-left-margin label {
  width: auto;
}
.controls > a {
  display: inline-block;
  height: 1.428571429;
  padding: 4px 6px;
  margin-bottom: 0.7142857145;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  vertical-align: middle;
}
.o-btn-file {
  overflow: hidden;
  position: relative;
  vertical-align: top;
}
.o-btn-file > input {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
}
.btn-group .o-btn-file > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.o-inputfile {
  margin-bottom: 9px;
}
.o-inputfile .o-inputfile-thumbnail {
  overflow: hidden;
  display: inline-block;
  margin-bottom: 5px;
  vertical-align: middle;
  text-align: center;
}
.o-inputfile .o-inputfile-thumbnail > img {
  display: inline-block;
  vertical-align: middle;
  max-height: 100%;
}
.o-inputfile-exists .o-inputfile-new,
.o-inputfile-new .o-inputfile-exists {
  display: none;
}
.o-inputfile-exists {
  height: 34px;
}
.o-inputfile-new {
  height: 34px;
}
.o-inputfile-small-thumbnail {
  max-width: 50px;
  max-height: 50px;
}
.o-inputfile-medium-thumbnail {
  max-width: 140px;
  max-height: 140px;
}
input[type="date"] {
  display: -webkit-inline-flex;
}
.ws-date {
  height: 34px;
  padding: 6px 37px 6px 12px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.ws-date:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.ws-date::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.ws-date:-ms-input-placeholder {
  color: #999;
}
.ws-date::-webkit-input-placeholder {
  color: #999;
}
.ws-date::-ms-expand {
  border: 0;
  background-color: transparent;
}
.ws-date[disabled],
.ws-date[readonly],
fieldset[disabled] .ws-date {
  background-color: #eeeeee;
  opacity: 1;
}
.ws-date[disabled],
fieldset[disabled] .ws-date {
  cursor: not-allowed;
}
textarea.ws-date {
  height: auto;
}
.ws-time {
  height: 34px;
  padding: 6px 37px 6px 12px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.ws-time:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.ws-time::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.ws-time:-ms-input-placeholder {
  color: #999;
}
.ws-time::-webkit-input-placeholder {
  color: #999;
}
.ws-time::-ms-expand {
  border: 0;
  background-color: transparent;
}
.ws-time[disabled],
.ws-time[readonly],
fieldset[disabled] .ws-time {
  background-color: #eeeeee;
  opacity: 1;
}
.ws-time[disabled],
fieldset[disabled] .ws-time {
  cursor: not-allowed;
}
textarea.ws-time {
  height: auto;
}
.has-error > .ws-date {
  height: 34px;
  padding: 6px 37px 6px 12px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #a94442;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.has-error > .ws-date:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.has-error > .ws-date::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.has-error > .ws-date:-ms-input-placeholder {
  color: #999;
}
.has-error > .ws-date::-webkit-input-placeholder {
  color: #999;
}
.has-error > .ws-date::-ms-expand {
  border: 0;
  background-color: transparent;
}
.has-error > .ws-date[disabled],
.has-error > .ws-date[readonly],
fieldset[disabled] .has-error > .ws-date {
  background-color: #eeeeee;
  opacity: 1;
}
.has-error > .ws-date[disabled],
fieldset[disabled] .has-error > .ws-date {
  cursor: not-allowed;
}
textarea.has-error > .ws-date {
  height: auto;
}
.has-error > .ws-time {
  height: 34px;
  padding: 6px 37px 6px 12px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #a94442;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.has-error > .ws-time:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.has-error > .ws-time::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.has-error > .ws-time:-ms-input-placeholder {
  color: #999;
}
.has-error > .ws-time::-webkit-input-placeholder {
  color: #999;
}
.has-error > .ws-time::-ms-expand {
  border: 0;
  background-color: transparent;
}
.has-error > .ws-time[disabled],
.has-error > .ws-time[readonly],
fieldset[disabled] .has-error > .ws-time {
  background-color: #eeeeee;
  opacity: 1;
}
.has-error > .ws-time[disabled],
fieldset[disabled] .has-error > .ws-time {
  cursor: not-allowed;
}
textarea.has-error > .ws-time {
  height: auto;
}
.ws-popover-opener {
  position: relative;
  zoom: 1;
  overflow: visible;
  margin: 0 0 0 2px;
  width: 22px;
  height: 34px;
  border-radius: 3px;
  cursor: pointer;
  background: #fff;
  color: #000;
  border-color: #777777;
}
.ws-popover-opener:focus {
  color: #000;
  background-color: #eeeeee;
  border-color: #777777;
}
.step-controls {
  height: 34px;
}
ul.o-many-checkbox-list {
  overflow-y: auto;
  overflow-x: hidden;
  border: 1px solid #ccc;
  padding-right: 0;
  padding-left: 0;
}
ul.o-many-checkbox-list > li {
  padding-left: 30px;
}
ul.o-many-checkbox-list > li > label.checkbox {
  padding-top: 5px;
  padding-bottom: 5px;
}
ul.o-many-checkbox-list > li > label.checkbox > input[type="checkbox"] {
  margin-top: 4px;
}
ul.o-many-checkbox-list > li[data-o-role="manyCheckbox-localfilter"] {
  padding-left: 0;
  margin-left: 0;
}
ul.o-many-checkbox-list > li[data-o-role="manyCheckbox-localfilter"] > div.form-group {
  margin-bottom: 5px;
}
ul.o-many-checkbox-list[data-o-disabled="true"] {
  background-color: #eeeeee;
  cursor: not-allowed;
}
ul.o-many-checkbox-list .input-group-addon {
  border: unset;
  border-radius: 0;
}
ul.o-many-checkbox-list .form-control {
  border-radius: 0;
}
ul.o-many-checkbox-list .form-group {
  margin-left: 0;
}
.form-actions {
  padding: 19px 20px 20px;
  margin-top: 20px;
  margin-bottom: 20px;
  background-color: #eeeeee;
  border-top: 1px solid #555555;
  *zoom: 1;
}
.form-actions:before,
.form-actions:after {
  display: table;
  line-height: 0;
  content: "";
}
.form-actions:after {
  clear: both;
}
.form-actions .btn {
  margin-right: 0.9em;
}
/**
Pour le valueComplete => le passage à Bootstrap 3 a fait disparaitre cette classe
**/
.typeahead {
  z-index: 1051;
  margin-top: 2px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
/**
pour l'option de clear sur l'inputText
**/
.o-clearer {
  cursor: pointer;
  right: 4em;
  pointer-events: unset;
}
