form .hybridInput {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-wrap: nowrap;
    width: 100%;
    padding: 0 4px;
}
.hybridButton:empty {
    display: none !important;
}

form .hybridInput .inputElements .hybridSelect {
    display: inline;
    background-color: var(--input-bg-color);
    width: auto;
}
form .hybridInput .inputElements > input,
form .hybridInput .inputElements > button {
    display: inline;
    width: 100%;
}
form .hybridInput .inputElements .hybridButton {
    vertical-align: middle;
    display: inline;
}
form .hybridInput .inputElements .hybridButton.buttonText {
    width: inherit;
    white-space: nowrap;
    padding-left: 10px;
}

.clearField {
    background: transparent url("img/input_field_clear.png") no-repeat center !important;
    margin-left: -20px !important;
    margin-top: 7px !important;
    padding: 0px 0px !important;
    width: 15px !important;
    height: 15px !important;
    border: none;
}

form .hybridInput .inputElements {
    display: flex;
    flex-flow: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
    min-height: 30px;
    margin: 2px 0;
    border-radius: 10px;
    -moz-outline-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    outline: 1px solid var(--main-border-color);
}
form
    .hybridInput
    .inputElements
    > *:nth-child(1 of :not(.hide, [type="hidden"])) {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
form
    .hybridInput
    .inputElements
    > *:nth-last-child(1 of :not(.hide, [type="hidden"])) {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
form
    .hybridInput
    .inputElements
    > .hybridSelect:not(.hide, [type="hidden"]):first-child
    .select2-selection {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

form .hybridInput .inputElements select,
form .hybridInput .inputElements input,
form .hybridInput .inputElements button,
form .hybridInput .inputElements a {
    border-radius: 0;
    border: none;
    width: 100%;
    min-height: 30px;
    margin: 0;
    text-overflow: ellipsis;
}
form .hybridInput .inputElements input:not([readonly]) {
}

form .hybridInput .inputElements a,
form .hybridInput .inputElements button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: -webkit-fill-available;
}

form .hybridInput .inputElements .buttonAjoutEnreg,
form .hybridInput .inputElements .buttonNavigTransv {
    width: 24px;
    padding: 5px 0 0 0;
    border-radius: 5px;
    margin-left: 25px;
}
form .hybridInput .inputElements .buttonAjoutEnreg {
    margin-left: 30px;
}

.datetimepickerBetween[id^="C_MAX_"],
.datepickerBetween[id^="C_MAX_"],
.heureBetween[id^="C_MAX_"] {
    display: block !important;
}

form .hybridInput .inputElements > input[readonly] ~ input {
    width: 40%;
    display: inline-block;
}

form .hybridInput .inputElements > input[readonly] ~ select ~ input,
form .hybridInput .inputElements > input[readonly] ~ input ~ select {
    width: 20%;
}

form .hybridInput .inputElements > input.nonModif,
form .hybridInput .inputElements > input[readonly] {
    width: 60%;
    color: var(--main-text-color);
    background-color: var(--second-bg-color);
    display: inline-block;
    text-overflow: ellipsis;
}
form .hybridInput .inputElements > .nonModif {
    background-color: var(--second-bg-color);
}
form .hybridInput .inputElements > input[disabled],
form .hybridInput .inputElements > textarea[disabled] {
    background-color: transparent;
}

.biggerDisableField .inputElements > input[readonly] {
    width: 100% !important;
}

form .hybridInput .inputElements > input.nonModif {
    height: 32px;
}

form .hybridInput .inputElements > input.nonModif ~ input {
    width: 66%;
}

form .hybridInput .inputElements > .large_disabled {
    width: 101% !important;
}

form .hybridInput .inputElements input:focus {
    -webkit-box-shadow: var(--main-focus-color) 0 0 3px 1px inset;
    -moz-box-shadow: var(--main-focus-color) 0 0 3px 1px inset;
    box-shadow: var(--main-focus-color) 0 0 3px 1px inset;
    outline: none;
}
form .hybridInput .inputElements select {
    width: auto;
    min-width: 80px;
    border-radius: 10px 0 0 10px;
    background-color: var(--input-bg-color);
}
form .hybridInput .inputElements .hybridSelectAlone select {
    width: 100%;
}
form .hybridInput .inputElements .hybridSelectAlone .select2 {
    width: 100% !important;
}
.select2-container--disabled .select2-selection,
form .hybridInput .inputElements select:disabled {
    background-color: transparent;
}
form .hybridInput .hybridSelectAlone {
    border-radius: 10px 10px 10px 10px;
    width: 100%;
}
form .hybridInput .hybridSelectAlone select {
    border-radius: 8px 8px 8px 8px;
}

/*
  * added for IE11
  * left round corners
  */
form .hybridInput input,
form .hybridInput select {
    -webkit-border-top-left-radius: 10px;
    -webkit-border-bottom-left-radius: 10px;
    -moz-border-radius-topleft: 10px;
    -moz-border-radius-bottomleft: 10px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
/*
  * added for IE11
  * right round corners
  */
form .hybridInput .inputElements button,
form .hybridInput .inputElements a {
    -webkit-border-top-right-radius: 10px;
    -webkit-border-bottom-right-radius: 10px;
    -moz-border-radius-topright: 10px;
    -moz-border-radius-bottomright: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
form .hybridInput .inputActions {
    display: inline-block;
}
form .hybridInput .inputActions button,
form .hybridInput .inputActions a {
    margin: 0 0 0 4px;
    padding: 2px 0;
}
form .hybridInput .inputActions button i,
form .hybridInput .inputActions a i {
    font-size: 15px;
    padding: 4px;
}

form .hybridInput .dateInputs {
    width: 100%;
}
form .hybridInput .dateInputs * {
    width: 100%;
}

form .hybridInput input[type="time"] {
    padding-right: 25px;
}

form .hybridInput .hasText,
form .hybridInput .hybridSelectAlone.hasText {
    outline: 2px solid #27a555 !important;
}
form .hybridInput > .excluded,
input.excluded {
    outline: 2px #bf6b28 solid !important;
}
form .hybridInput .inputActions .excluded {
    background-color: #bf6b28;
}
form .hybridInput .inputActions .disable-exclude.excluded {
    background-color: #bf6b28;
}

form .hybridInput .disable-exclude {
    color: white;
    pointer-events: none;
}

.hybridInput img {
    height: 21px;
    margin-left: 15px;
}

form .hybridInput .divTabDet {
    margin: 0;
}

form .hybridInput table td {
    padding-top: 0px !important;
}

.totauxGeneraux {
    margin-top: -10px;
    background-color: var(--second-bg-color);
    width: 100%;
    font-size: 0.9em;
    border-bottom: 1px solid black;
}

textarea {
    width: 100%;
    max-width: 100%;
    margin: 0;
    border: 1px solid var(--main-border-color);
    padding: 5px;
    resize: vertical;
    vertical-align: middle;
    font-family: inherit;
    font-size: 1em;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: inset 0 0 1px var(--main-shadow-color);
    -webkit-box-shadow: inset 0 1px 1px var(--main-shadow-color);
    box-shadow: inset 0 1px 1px var(--main-shadow-color);
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: none;
    background-color: var(--input-bg-color);
}

.nbrChar {
    margin: auto 0 0 2px;
    display: block;
    float: left;
}
.nbrCharMax {
    margin: auto 2px 0 0;
    display: block;
    float: left;
}

/* Clear input field btn "x" */
.clearable,
.clearableC {
    background: var(--input-bg-color) url("img/input_field_clear.png") no-repeat
        right -15px center;
    padding-right: 17px;
    transition: background 0.4s;
}

.clearable.x,
.clearableC.x {
    background-position: right 5px center;
    padding-right: 1.5em !important;
}
.clearable.onX,
.clearableC.onX {
    cursor: pointer;
}
.clearable::-ms-clear,
.clearableC::-ms-clear {
    display: none;
    width: 0;
    height: 0;
}

.inputElements .unchangeable {
    padding: 0px 6px;
    border-radius: 10px;
    word-wrap: break-word;
    white-space: normal;
}
.inputElements .unchangeable:empty {
    outline: none;
    display: none;
}

.libelleVisuLarge,
.libelleRechLarge,
.libelleSubstWFLarge {
    width: 20%;
}
.libelleVisuMedium,
.libelleRechMedium,
.libelleSubstWFMedium {
    width: 14%;
}
.libelleVisuLittle,
.libelleRechLittle,
.libelleSubstWFLittle {
    width: 8%;
}

.totauxGenerauxTitre {
    color: red;
    padding-top: 15px;
}

.colGlossaire {
    margin: 0 10px 0 0;
}

#all_dropdown_section {
    background: #0000;
    border: none;
    padding: 0 0 3px 9px;
}
#all_dropdown_section:focus {
    box-shadow: none;
}

.colonneVide {
    padding: 0;
}
