/* Permet de mettre les labels sur la même ligne que les champs */
.form-group:not(.row)>label {width :29%!important; margin:0; display:inline-block!important;}
.form-group:not(.row) .form-text.text-muted {padding-left :30%!important;}
.form-group:not(.row) input.form-control, 
.form-group:not(.row) select.form-control, 
.form-group:not(.row) .select2.select2-container, 
.form-group:not(.row) .custom-file,
.form-group:not(.row) .input-group {
    margin:0;
    width: 70%!important;
    display:inline-block;
}

#generate-password{
  margin-left: 29%;
  margin-bottom: 16px;
}

.form-group:not(.row).with-image .custom-file {
  width: 40%!important;
}
label.required:after {
  content: "*";
}
/* Permet de cacher le fil d'ariane si page < 1200px */
@media only screen and (max-width: 1200px) { .breadcrumb { display :none; }}
.custom-file-label::after {content: "Choisir un fichier"; width:140px!important;}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  color: #000!important;
}
.pagination { float:right; }

.disabled { background-color:#dee2e6;}

/** Desactivation d'un item dans le menu **/
.nav-item.disabled, .nav-item.disabled:hover { background-color:transparent; }
[class*=sidebar-dark-] .nav-treeview>.nav-item.disabled>.nav-link {color: grey;}
[class*=sidebar-dark-] .nav-treeview>.nav-item.disabled>.nav-link:hover {background-color:transparent;}

/** Affichage du menu **/
.nav-sidebar .nav-treeview { padding-left: 20px; }

/* Niveau 3 : items finaux (decalage + taille reduite) */
.nav-sidebar .nav-treeview .nav-treeview { padding-left: 12px; }
.nav-sidebar .nav-treeview .nav-treeview > .nav-item > .nav-link { font-size: .85rem; }
.main-sidebar, .main-sidebar::before { width: 300px; }
body:not(.sidebar-mini-md) .content-wrapper, body:not(.sidebar-mini-md) .main-footer, body:not(.sidebar-mini-md) .main-header { margin-left: 300px; }
.sidebar-collapse .main-sidebar, .sidebar-collapse .main-sidebar::before { margin-left: -300px; }
.layout-navbar-fixed .wrapper .main-sidebar:hover .brand-link { width: 300px; }
.layout-navbar-fixed .wrapper .brand-link { width: 300px; }
.layout-fixed .brand-link {  width: 300px; }

.hide { display:none; }

/* AdminLTE applique déjà margin-top: calc(3.5rem + 1px) sur .content-wrapper
   en mode .layout-navbar-fixed pour clearer la navbar fixe (56.5px).
   L'ancien override (margin-top: 0 !important + padding-top: 30px !important)
   masquait cette règle, ce qui faisait disparaître ~26.5px de contenu derrière
   la navbar sur toutes les pages. On laisse AdminLTE gérer.
   Bug fix : voir audit du 2026-05-11. */
.dropdown-menu-lg { max-height:300px !important; overflow:auto;} 
.dropdown-menu { z-index:2000!important;}

.autocomplete-suggestions { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; border: 1px solid #999; background: #FFF; cursor: default; overflow: auto; -webkit-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64); -moz-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64); box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64); }
.autocomplete-suggestion { padding: 2px 5px; white-space: nowrap; overflow: hidden; }
.autocomplete-no-suggestion { padding: 2px 5px;}
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: bold; color: #000; }
.autocomplete-group { padding: 2px 5px; font-weight: bold; font-size: 16px; color: #000; display: block; border-bottom: 1px solid #000; }

.tab-content { margin-top :30px;margin-bottom :30px;}

.timeline-item {margin-left: 40px;}
.timeline-item h5 { margin-bottom: 0; }

.row-width-margin { margin-bottom: 1rem; }

#rfq_edof_discount { width:50%; display: inline-block!important; }
#direct_payment_discount { width:50%; display: inline-block!important; }
#rfq_discount { width:50%; display: inline-block!important; }


/* Upload */
.jobUpload{text-align:center; font-size: 1.25rem;  background-color: #bbb; position: relative; padding: 100px 20px;}
.jobUpload.has-advanced-upload {
  outline: 2px dashed grey;
  outline-offset: -10px;

}
.jobUpload.is-dragover { outline-offset: -20px; outline-color: #c8dadf; background-color: #ccc;}
.jobUpload__button,.jobUpload__dragndrop,.jobUpload__icon { display: none;}
.jobUpload.has-advanced-upload .jobUpload__dragndrop { position:relative; display: inline; }
.jobUpload.has-advanced-upload .jobUpload__icon{width: 100%; height: 220px; fill: #ccc; display: block;margin-bottom: 40px; }
.jobUpload.is-uploading .jobUpload__input,.jobUpload.is-success .jobUpload__input,.jobUpload.is-error .jobUpload__input{visibility: hidden;}
.jobUpload__uploading,.jobUpload__success, .jobUpload__error{ display: none; }
.jobUpload.is-uploading .jobUpload__uploading,.jobUpload.is-success .jobUpload__success, .jobUpload.is-error .jobUpload__error {
  display: block; position: absolute; top: 50%;right: 0; left: 0; -webkit-transform: translateY( -50% );transform: translateY( -50% );
}
.jobUpload__uploading  { font-style: italic;  }
.jobUpload__success { -webkit-animation: appear-from-inside .25s ease-in-out; animation: appear-from-inside .25s ease-in-out;}
@-webkit-keyframes appear-from-inside {
  from	{ -webkit-transform: translateY( -50% ) scale( 0 ); }
  75%		{ -webkit-transform: translateY( -50% ) scale( 1.1 ); }
  to		{ -webkit-transform: translateY( -50% ) scale( 1 ); }
}
@keyframes appear-from-inside {
  from	{ transform: translateY( -50% ) scale( 0 ); }
  75%		{ transform: translateY( -50% ) scale( 1.1 ); }
  to		{ transform: translateY( -50% ) scale( 1 ); }
}

.select2-container .select2-selection--single { height: 38px!important; }
.timecard, .eval {text-align:left; width:98%; height:80px; margin-top: 30px;}
.timecard .jobUpload, .eval .jobUpload { margin-bottom : 20px; width:100%; height:80px; padding: 10px; margin:auto; background-color: #fff; }
.timecard .jobUpload > strong, .eval .jobUpload > strong {
    position:absolute;  text-align:left; vertical-align:middle; left:20px; 
    display:inline-block; width: 60%;height:80%; top:20px;
}
.timecard .jobUpload__input , .eval .jobUpload__input {    
    position:absolute; top: -5px; right:40px;
    /*background-color: #bbb; */
    width: 40%; height:80%;
}
.timecard .jobUpload__input label, .eval .jobUpload__input label { position:absolute; top:20px; right:0; height:80%; }
.jobUpload__input label strong { margin-top: -20px; }
.jobUpload__input > label { top:20px; }

.custom-file-input { width: 100%; }
.custom-file-input.qrcode_upload { width: 40%; }

/* .tox.tox-silver-sink.tox-tinymce-aux { display:block; } */
.tox-notifications-container{display:none;}

.rotate-infinite {
  animation: rotate 2s infinite linear;
}

@keyframes rotate {
from {
  transform: rotate(360deg);
}
to {
  transform: rotate(0deg);
}
}
