*
{
    box-sizing: border-box;
    font-family: "filson-pro", sans-serif;
}
*::-webkit-scrollbar
{
    display: none;
}

html
{
    min-width: 1300px;
    min-height: 800px;
}
html, body
{
    height : 100%;
    box-sizing: border-box;
    font-size: 0.8em;  
}
body
{
    background-color: #FFFFFF;
}

@media all and (max-width: 1500px) {

    html, body
    {
        font-size: 0.7em;
    }

    h3
    {
        font-size: 1.5em;
    }
}

#logo
{
    position: absolute;
    top : 25px;
    left : 0.5%;
    width: 9%;
    min-width: 120px;
    z-index: 5;
}


#user
{
    width: 10%;
    text-align: center;
    white-space: nowrap;
    overflow-x: scroll;
    position : absolute;
    bottom : 35px;
}
#deconnexion_page
{
    position: absolute;
    width: 7%;
    bottom: 5px;
    left: 1.5%;
    color: white;
    text-decoration: none;
    padding: 3px;
    padding-left: 10px;
    padding-right: 10px;
    background-color: #D57676;
    border-radius : 5px;
    text-align: center;
    opacity: 0.8;
}
#deconnexion_page:hover
{
    opacity: 1;
}




/* page (menu latéral + entête) */
#page
{
    height: 91%;
    padding-left : 10.2% !important;
    padding-right: 0.2%;
}
h3
{
    text-align: left;
    padding-left : 10px;
    margin: 0;
    color: #6c757d;
    overflow-x: scroll;
    white-space: nowrap;
    font-size: 2em;
}
h3 a
{
    text-decoration: none;
    color: black;
}
h3 a:hover
{
    color: blue;
}
#page h6
{
    text-align: left;
    width: 100%;
    font-weight: bold;
}
/* menu latéral */
#menu_lateral
{
    width: 10%;
    min-width: 130px;
    height: 100%;
    position : absolute;
    top : 0;
    left : 0;
    display: flex;
    flex-direction: column;
    background-color: #1A2535 !important;
    align-items: center;
    padding-top: 80px;
}
#menu_lateral .btn
{
    width : 90%;
    height: 35px;
    margin : 5px;
    display: flex;
    justify-content: flex-start;
    padding-left: 10px;
    text-align: left;
    font-size: 0.95em;
    z-index: 5;
}
#liens_utiles
{
    position: absolute;
    left : 10px;
    bottom : 10%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    z-index: 3;
    color : white;
}
#liens_utiles p 
{
    padding-bottom : 3px;
}
#liens_utiles a
{
    color : white;
    text-decoration: none;
}
/* entête */
#entete
{
    height: 9%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding : 10px;
    padding-left: 10% !important;
}
ul
{
    margin-left: 10px;
    margin-right: 10px;
}

.input-group
{
    align-items: center;
}

#dossier h6
{
    font-size : 1.3em;
    padding-top: 5px;
}

/* menu principal */
#menu-principal
{
   width: 100%;
   height: 100%;
   display: flex;
   flex-direction: column;
   padding: 20px;
   color :black;
   background-color: #1A2535;
}
#menu-principal .sous_titre
{
    color: black;
    font-size: 1.2em;
}
#menu-principal img
{
    width: 250px;
    position: absolute;
    top: 20px;
    left: 20px;
}
#message_accueil
{
    display: flex;
    align-items: center;
    justify-content: space-around;
}
#message_accueil p
{
    width: auto;
    text-align: center;
    font-size: 1.5em;
    vertical-align: center;
}
#menu-principal .ligne
{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
#menu-principal .ligne .btn
{
    width: 16%;
    height: 100%;
    border-radius: 5px;
    display: flex;
    margin-right: 10px;
    align-items: flex-end;
    justify-content: space-around;
    background-size: cover;
    background-position: center;
    border: 1px solid #1A2535;
    font-size: 1.2em;
    opacity: 0.9;
    padding: 0;
}
#menu-principal .btn p
{
    background-color: #001E60;
    width: 100%;
    margin : 0;
    padding: 10px;
    color: white !important;

}
#menu-principal .ligne .btn:hover
{
    opacity : 1;
}
#menu-principal .ligne .disabled
{
    opacity : 0.3;
}
#menu-principal #deconnexion
{
    position: absolute;
    top: 20px;
    right: 20px;
    color: white;
    text-decoration: none;
    padding: 3px;
    padding-left: 10px;
    padding-right: 10px;
    background-color: #D57676;
    border-radius : 5px
}



form
{
    width: 100%;
    height: 100%;
}

p
{
    margin : inherit;
}

.zone_deroulante_y
{
    overflow-y : scroll;
    padding: 5px;
    padding-top : 0;
    max-height: 100% !important;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.zone_deroulante_x
{
    width: 100%;
    height: 100%;
    overflow-x: scroll;
    display: flex;
    flex-direction: row;
    align-items: center;
}


.ligne_collection_x .form-group,
.ligne_collection_y .form-group
{
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0;
}
.add-another-collection-widget
{
    height: 100%;
    padding: 0;
    padding-left: 5px;
    padding-right: 5px;
}

.collection
{
    width: 100%;
    height: 30px !important;
    background-color: white;
    border-left: 1px solid silver;
    transition: height 0.5s;
    z-index: 4;
}
.collection .zone
{
    overflow-y: scroll;
    width: 100% !important;
    display: flex;
    flex-direction: row;
    position : relative;
    flex-wrap: wrap;
    margin: 0;
    align-items: center;
    justify-content: flex-start;
    align-content: flex-start;
    min-height: 30px;
    height: 80% !important;
    background-color: white;
    border-radius: 5px;
}
.collection:hover,
.collection:focus-within /* quand input focus à l'intérieur */
{
    height: 200px !important;
    z-index: 5;
    border : 1px solid silver;
    border-radius: 5px;
}
.collection:hover .btn-light
{
    display: block;
}
.ligne_collection_x
{
    min-width: 100px;
    position : relative;
    height: 25px !important;
    margin: 0;
    padding: 0;
    margin-left: 1%;
    margin-top: 3px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-direction: row;
}
.ligne_collection_x input,
.ligne_collection_x select
{
    position : relative;
    font-size: 0.9em;
}
.ligne_collection_x .btn-danger
{
    height: 15px !important;
    width: 15px !important;
    font-size : 0.8em;
    margin: 0;
    padding: 0 !important;
    position: absolute;
    right: 3px;
    margin-right: 5px;
}
.collection .btn-light
{
    height: 20px !important;
    font-size : 0.8em;
    margin: auto;
    display: none;
}

.ligne_collection_y .btn
{
    height: 25px;
    width: 25px;
    margin: 0;
    padding: 0;
}
.ligne_collection_y
{
    margin-bottom : 5px;
}

.zone_deroulante_cv
{
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    overflow-x: scroll;
    align-items: center;
    display: flex;
    flex-direction: row;
}
.ligne_collection_cv
{
    width: 400px !important;
    min-width: 400px !important;
    display: flex;
    flex-direction: column;
    border : 1px solid silver;
    padding: 10px;
    border-radius: 5px;
    margin-left: 25px !important;
    align-items: flex-start;
    justify-content: flex-start;
}
.ligne_collection_cv .btn
{
    width: auto;
    margin : auto;
    margin-top : 5px;
}
.ligne_collection_cv textarea
{
    height: 100px;
}

/* pour affichage cv candidat */
.cadre_cv
{
    width: 400px !important;
    min-width: 400px !important;
    display: flex;
    flex-direction: column;
    border: 1px solid silver;
    border-radius: 5px;
    padding: 20px !important;
    margin-right: 20px;
}
.cadre_cv .texte_paragraphe
{
    height: 100px;
}

textarea
{
    width: 100%;
    height: 100%;
    resize: none;
}

.case,
.case_ecartee
{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 3px;
    padding-right: 5px;
    z-index : 4;
}
.case_ecartee
{
    justify-content: space-around;
    align-items : center
}
.case .badge,
.ligne .badge,
.case .btn
{
    width : auto;
    padding-left: 5px !important;
    padding-right: 5px !important;
    margin: auto;
    min-width: 49% !important;
}
.ligne .badge
{
    margin : inherit;
}


.ligne,
.colonne
{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-around;
    align-content: center;
}
.ligne
{
    flex-direction : row;
}
.colonne
{
    flex-direction : column;
}

.cadre
{
    border : 1px solid black;
    padding: 10px;
    border-radius: 5px;
    background-color: #f9f9f9;
}
section .ligne,
section .colonne
{
    width: 100%;
    height: 100%;
    display : flex;
    justify-content: space-around;
    align-items: center;
}
section.ligne
{
    flex-direction: row;
}
section.colonne
{
    flex-direction: column;
}

.flex_start
{
    justify-content: flex-start;
}

.texte_paragraphe
{
    height: 100%;
    width: 100%;
    overflow-y : scroll;
    background: #f1f1f1;
    padding : 5px;
    border: 1px solid #E6E6E6;
    border-radius: 5px;
}

h5
{
    text-align: left;
    width: 100%;
    padding: 5px;
    padding-left : 0px;
}

.bulle_statut
{
    height: 100%;
    border-radius: 5px;
    display: flex;
    align-content: center;
    justify-content: space-around;
    text-align: center;
    vertical-align: center;
    border: 1px solid silver;
    background-color: #f1f1f1;
}
.bulle_statut p
{
    margin: auto;
    overflow-x: scroll;
    padding-left: 5px;
    padding-right: 5px;
}

.bulle_info
{
    background-color: #f1f1f1;
    border-radius: 5px;
    text-align: center;
    margin: 0;
    padding: 0;
    width: 100%;
    border: 1px solid #E6E6E6;
    white-space: nowrap;
    overflow-x: scroll;
    height : 30px;
    min-height : 30px;
    line-height: 30px;
    padding-left: 5px;
    overflow-y: hidden;
}
.bulle_info a
{
    text-decoration: none;
    color: black;
}
.bulle_info a:hover
{
    color: grey;
}
.bulle_titre,
.form-group label
{
    margin: 0;
    width: 100% !important;
    min-height: 20px !important;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow-x: scroll;
    white-space: nowrap;
}

.zone_deroulante_x .btn
{
    margin-left: 5px;
    height: 25px;
    margin-top: 2.5px;
}
.zone_deroulante_x input
{
    height: 30px !important;
    margin: 0;
    padding-left: 5px !important;
    line-height: 100% !important;
}

.bulles_multiples
{
    overflow-x: scroll;
    display: flex;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
    flex-direction: row;
    height: 30px !important;
}
.bulles_multiples .bulle_info
{
    width: max-content;
    min-width: max-content;
    margin-right: 10px;
    padding-left: 5px;
    padding-right: 5px;
    white-space: nowrap;
}


.ligne_zone_multiple
{
    width: 100%;
    min-height: 30px;
    padding-left: 5px;
    margin-bottom: 5px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    background-color: #f1f1f1;
    border: 1px solid silver;
    white-space: nowrap;
    overflow-x: scroll;
    justify-content: flex-start;
}
.ligne_zone_multiple p,
.ligne_zone_multiple a
{
    width: 100%;
    margin: auto;
    overflow-x: scroll;
    padding-left: 5px;
    padding-right: 5px;
    text-align: left;
    color : black;
    text-decoration: none;
}
.ligne_zone_multiple a:hover
{
    color : silver;
}

 
#formulaire_recherche
{
    border-radius : 5px;
    max-width: inherit;
    height: auto;
    width: 100%;
    margin-top : 10px;
    padding: 10px;
    justify-content: flex-start;
    align-items: center;
}
#formulaire_recherche .row
{
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%;
}
.legende
{
    height: 35px !important;
    color: silver;
    margin: 0;
    margin: 5px;
    margin-bottom: 0;
    font-size: 1.2em !important;
    background-color: 0 !important;
}
#resultats 
{
    padding: 5px;
    height: 50px;
    align-items: center;
    font-size: 1.2em;
}
/* utilisé pour les form dynamiques (ex : recherche affiliations sur les fiches) : assure une largeur de 1/6 au champ et des espacements corrects */
.one_line .col-2
{
    margin-bottom : 3px;
}

#formulaire_ajout_candidat,
#formulaire_note,
#formulaire_relation,
#formulaire_document,
#formulaire_contact
{
    width: 25%;
    height: auto;
    margin : auto;
}


#photographie img
{
    width : auto;
    height: auto;
    max-height: 90%;
    max-width: 90%;
    margin : auto;
    border-radius: 10px !important;
}

.ligne_note
{
    border: 1px solid grey;
    background-color: #f2f2f2;
    display: flex;
    flex-direction: row;
    align-items: center;
    min-height : 160px;
    margin-bottom : 10px;
    border-radius: 10px;
}


.ligne_liste
{
    width: 100%;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    border-bottom: 1px solid #E6E6E6;
    padding: 0;
    font-size: 1.1em;
    padding-right: 5px;
    padding-left: 5px;
}
.even
{
    background-color: #f2f2f2;
}
.ligne_liste .case
{
    overflow-y: hidden;
    overflow-x: scroll;
    white-space: nowrap;
    height: 40px;
    align-content: center;
    display: flex;
    justify-content: flex-start;
    z-index: 4;
}
.ligne_liste .zone_deroulante_y
{
    padding-top: 5px;
}
.ligne_liste .badge
{
    height: 25px;
    padding: 0;
    line-height: 25px;
    color: black;
    min-width: none !important;
    font-size: 0.9em;
    font-weight: normal;
    overflow-x: scroll;
}

.ligne_liste .btn
{
    height: auto;
    padding: 0;
    opacity: 0.8; 
}
.ligne_liste .btn:hover
{
    opacity: 1;
}
.ligne_liste a
{
    text-decoration: none;
    color: black;
}
.dates_ligne_facturation_invisible
{
    opacity: 0;
    height: 0;
    transition: opacity 0.5s, height 0.5s;
}
.dates_ligne_facturation_invisible .ligne_liste
{
    display: none;
}
.dates_ligne_facturation_visible
{
    opacity: 1;
    height: auto;
    transition: opacity 0.5s, height 0.5s;
}
.dates_ligne_facturation_visible .ligne_liste
{
    display: flex;
}

.ligne_liste.contact
{
    background-color: #f7f7f4;
}
.ligne_liste.contact.even
{
    background-color: #f4f6f7;
}

.btn
{
    display: flex;
    justify-content: space-around;
    align-items: center;
    white-space: nowrap
}
.between
{
    justify-content: space-between !important;
}

embed,
object
{
    height: 100%;
    width: 100%;
}





/* prévisualisation document */
#affichage_document,
#affichage_campagne
{
    box-sizing: border-box;
    overflow-y: scroll;
    position: fixed;
    width: 40%;
    height: 88%;
    border: 1px solid grey;
    background-color: #f2f2f2;
    border-radius : 5px;
    z-index: 5;
    top : 10%;
    left : 35%;
    padding: 0 !important;
    display: flex;
    overflow-x: hidden;
    
}
#affichage_document
{
    align-items: center;
    white-space: nowrap;
    justify-content: space-around;
}
#affichage_campagne
{
    background-color: #f2f2f2;
    word-wrap: normal;
    align-content: baseline;
    align-items: baseline !important;
}

#visualisation_edition_document
{
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 0;
}
#visualisation_edition_document img
{
    max-width: 90%;
    max-height: 90%;
}
#visualisation_edition_document embed
{
    width: 100%;
    height: 100%;
}

#fermer_previsualisation
{
    position: absolute;
    top: -1px;
    right: -1px;
    width:  40px;
    height:  40px;
    background-color: #D57676;
    border-radius: 5px;
    border: 1px solid grey;
    color: white;
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-size: 1.3em;
    opacity: 0.9;
    z-index : 5;
}
#fermer_previsualisation:hover
{
    cursor: pointer;
    opacity: 1;
}
#affichage_document embed
{
    height:  100%;
    width:  100%;
    margin : 0;
}
#affichage_document img
{
    max-height: 90%;
    max-width: 90%;
}


/* sélection */
#selection,
#selection_grande
{
    position: absolute;
    min-width: 450px;
    width : auto;
    height: 35px;
    right: 10px;
    top : 10px;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    background-color: #f1f1f1;
    border-radius: 5px;
    z-index : 4;
}
#selection_grande
{
    width: 650px;
}
#selection_grande input
{
    width : 100px;
}
#label_selection
{
    width: auto;
}
#affichage_selection
{
    position: absolute;
    top : 40px;
    right: 10px;
    background-color: #f1f1f1;
    height: 500px;
    width: 650px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    overflow-y: scroll;
    padding: 20px;
    font-size: 1.3em;
    z-index : 5;
}
#affichage_selection p
{
    padding: 3px;
}
#bouton_afficher_selection 
{
    width: 20% !important;
}

/* style checkboxs adresses mails */
#checkboxs_adresses .form-check,
#checkboxs_mail .form-check,
.grandes_checkboxs .form-check
{
    min-height: 40px;
    display: flex;
    align-items: center;
}
.form-check-label,
#checkboxs_adresses .form-check-input,
#checkboxs_mail .form-check-input,
.grandes_checkboxs .form-check-input
{
    min-width: 40px;
    min-height: 40px;
    margin-right: 5px;
    overflow-x: scroll;
    white-space: nowrap;
    height: 100%;
    display: flex;
    align-items: center;
}

.moyennes_checkboxs .form-check
{
    height: 30px;
    display: flex;
    align-items: center;
}
.moyennes_checkboxs .form-check-input
{
    min-width: 30px;
    min-height: 30px;
    margin-right: 5px;
    overflow-x: scroll;
    white-space: nowrap;
    height: 100%;
    display: flex;
    align-items: center;
}





/* calendrier affichage précis */
#affichage_calendrier_precis
{
    width: 99%;
    overflow-y: scroll;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: baseline;
    margin-left : 1.5%;
}
#affichage_calendrier_recap .bulle_info
{
    text-align : left;
}

/* calendrier preview */
#preview #calendrier
{
    width : 100%;
    height : auto;
}
#preview #calendrier #champs
{
    padding-top : 20px;
    padding-bottom : 20px;
}

#affichage_calendrier_precis .case_calendrier .infos .ligne
{
    width: 100%;
    padding-left: 10px;
    background-color: silver;
    white-space: nowrap;
    text-align: left !important;
    overflow-x: scroll;
    height: 30px;
    border-radius : 5px;
    margin-bottom: 5px;
    display: flex;
    align-items : center;
    align-content: left;
    justify-content: inherit;
}
/* légende */
#legende_calendrier_precis
{
    display: flex;
    flex-direction: row;
    width: 100%;
    align-items: center;
    border: 0 !important;
    margin-left : 1%;
}
#legende_calendrier_precis div
{
    width: 14%;
    text-align: center;
    color: silver
}
#affichage_calendrier_precis a,
#affichage_calendrier_precis .case_decalage
{
    width: 14%;
    height: 250px;
    background-color : #f2f2f2;
    padding: 5px;
    border: 1px solid silver;
    color: black;
    text-decoration: none;
    opacity: 0.8;
}

#affichage_calendrier_precis a:hover
{
    opacity: 1;
}
#affichage_calendrier_precis .case_decalage
{
    opacity : 0;
}
#affichage_calendrier_precis a .jour
{
    height: 15%;
    width: 100%;
    display: flex;
    font-size: 1.5em;
    align-items: center;
}
#affichage_calendrier_precis a .infos
{
    height: 85%;
    width: 100%;
    overflow-y: scroll;
    position : relative;
}
#affichage_calendrier_precis a .infos .id_semaine
{
    color : grey;
    position : absolute;
    bottom : 2px;
    right : 2px;
    font-size: 1em;
}
#affichage_calendrier_precis a .infos .ligne,
#affichage_calendrier_precis a .infos .info_double
{
    width: 100%;
    padding-left: 10px;
    white-space: nowrap;
    text-align: left !important;
    overflow-x: scroll;
    height: 30px;
    border-radius : 5px;
    margin-bottom: 5px;
    display: flex;
    align-items : center;
    align-content: center;
    justify-content: inherit;
}

/* paragraphe dans case calendrier précis (offres et affiliations PCI */
#affichage_calendrier_precis .texteParagraphe
{
    background-color: white;
    padding: 5px;
    border: 1px solid silver;
    height: 80px;
    border-radius: 5px;
    overflow-y : scroll;
}

/* calendrier recap */
#affichage_calendrier_recap .bulle_info,
#preview #calendrier .bulle_info
{
    text-align : left;
}
#affichage_calendrier_recap,
#preview #calendrier #affichage
{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start;
}
#affichage_calendrier_recap .mois,
#preview #calendrier .mois
{
    width: 24%;
    height : auto;
    margin-bottom : 0.8%;
    border: 1px solid silver;
    border-radius: 5px;
    padding : 5px;
}
#preview #calendrier .mois
{
    width : 100%;
    height : auto;
    background-color: white;
    padding : 10px;
    border : 0;
}
#affichage_calendrier_recap .mois h4,
#preview #calendrier .mois h4
{
    padding-left: 5px;
}
.card-body h4
{
    margin : 0;
    text-align: center;
}


/* legende */
.legende_calendrier_recap,
#preview #calendrier .legende_calendrier_recap
{
    width: 100%;
    margin: 0;
    height: 30px;
    display: flex;
    flex-direction: row;
    background-color: inherit !important;
    border: 0 !important;
}
.legende_calendrier_recap div,
#preview #calendrier .legende_calendrier_recap div
{
    width : 14.28%;
    color : silver;
    border-radius: 5px;
    display: flex;
    justify-content: space-around;
    align-items: center;
}
/* cases jour */
#affichage_calendrier_recap .dates_mois,
#preview #calendrier #affichage .dates_mois
{
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    overflow-y : scroll;
    align-content: baseline;
}
#affichage_calendrier_recap .dates_mois a,
#affichage_calendrier_recap .dates_mois .case_edition,
#affichage_calendrier_recap .dates_mois .case_decalage,
#preview #calendrier #affichage .dates_mois a,
#preview #calendrier #affichage .dates_mois .case_edition,
#preview #calendrier #affichage .dates_mois .case_decalage
{
    position:relative;
    width : 14.28%;
    opacity: 0.9;
    height: 50px;
    border: 1px solid #f2f2f2;
    display: flex;
    justify-content: space-around;
    align-items: center;
    color: black;
    text-decoration: none;
    flex-direction: column;
    padding-top : 15px;
}
#affichage_calendrier_recap .dates_mois a .id_semaine,
#affichage_calendrier_recap .dates_mois .case_edition .id_semaine,
#preview #calendrier #affichage .dates_mois a .id_semaine,
#preview #calendrier #affichage .dates_mois .case_edition .id_semaine
{
    color : grey;
    position : absolute;
    bottom : 2px;
    right : 2px;
    font-size: 0.8em;
}
#affichage_calendrier_recap .dates_mois .case_edition
{
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#affichage_calendrier_recap .dates_mois .case_edition:hover
{
    cursor: pointer;
}
#affichage_calendrier_recap .dates_mois a .ligne,
#preview #calendrier #affichage .dates_mois a .ligne
{
    height: 25px;
}
#affichage_calendrier_recap a:hover,
#preview #calendrier #affichage a:hover
{
    opacity : 1;
}
#affichage_calendrier_recap .case_decalage,
#preview #calendrier #affichage .case_decalage
{
    opacity : 0 !important;
}
#affichage_calendrier_recap .dates_mois .bordure
{
    border: 5px solid yellow !important;
}
#affichage_calendrier_recap .dates_mois .case_edition.border-cyan
{
    border : 3px solid #A8CFCE;
}


#legende_couleurs
{
    position: absolute;
    left : 0;
    top : 35%;
    width : 10%;
    overflow-x: scroll;
    padding-left: 10px;
    background-color: #1A2535;
    z-index : 4;
    color : white;
}
#legende_couleurs .ligne
{
    justify-content: flex-start;
    margin-bottom : 2.5px;
    margin-top : 2.5px;
    align-items: center;
}
.carre,
.rond
{
    width : 25px;
    height : 25px;
    border : 1px solid black;
    margin-right: 5px;
}
.rond
{
    margin : 5px;
    margin-right: 10px;
    width : 15px;
    height : 15px;
    border-radius: 50%;
}


.point
{
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1px solid black;
}
.bleu
{
    background-color: #A8CFCE;
}
.vert
{
    background-color: #9FBA9C;
}
.violet
{
    background-color: #cba9d5;
}
.orange
{
    background-color: #F1D8AC;
}
.rouge
{
    background-color: #CE4343;
}
.gris
{
    background-color: #f1f1f1;
}
.gris_fonce
{
    background-color: grey;
}

#board .montant_jauge,
#board .montant_jauge_annulations
{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-size: 1.8em;    
    color: black;
}
#board .montant_jauge_annulations
{
    color: #D57676;
    font-size: 1.4em;  
}
#board #jauge
{
    width: 100% !important;
    height: 100% !important;
    padding: 0;
    margin: 0;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}
/* haut */
#board meter::-webkit-meter-optimum-value
{
    background: #B4C8AE;
}
/* moyen */
#board meter::-webkit-meter-suboptimum-value
{
    background: #F1D8AC;
}
/* bas */
#board meter::-webkit-meter-even-less-good-value
{
    background: #D57676;
}
#board meter::after
{
    display: flex;
    justify-content: space-around;
    align-items: center;
    width : 100%;
    height : 100%;
    min-height: 125px;
    content : attr(data);
    top: -100%;
    left: 0%;
    position: relative;
    font-size: 2em;
    font-weight: bold;
    border-radius: 5px;
}

#board h4
{
    padding-left: 10px;
    font-size: 1.3em;
    width: 50%;
}
#board h4 span,
#board .total_mois
{
    height: 30px;
    padding : 0;
    width: 100px;
    line-height: 30px;
    color: black;
    background-color: #f2f2f2;
    font-weight: bold;
    border: 1px solid #e2e2e2;
    font-size: 1.05em;
    margin-left: 10px;
}
#board .total_mois
{
    height: 50px !important;
    width:  150px !important;
    line-height: 50px !important;
    font-weight: bold;
    font-size: 1.2em !important;
}
#board #last_update
{
    position: absolute;
    bottom : 5px;
    right: 25px;
    text-align: center;
    color: silver;
}

#board_full_screen
{
    background-color: black;
}
#board_full_screen .montant_jauge
{
    color: #f2f2f2;
}
#board_full_screen .cadre .montant_jauge
{
    color: black !important;
}
#board_full_screen .cadre
{
    background-color: #f2f2f2;
}

#board #cadre_gif
{
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    z-index: 5;
    width: 100%;
    height: 100%;
    padding: 5%;
    display: flex;
    justify-content: space-around;
    align-items: center;
}
#board #gif,
#board #gif_explosion
{
    height: 90%;
    max-width: 90%;
    border-radius: 10px;
}
#board #gif
{
    border: 2px solid black;
}



#details_historique a
{
    text-decoration: none;
    color: black;
}

#details_historique,
#details_specialite
{
    font-size: 1.3em;
}


#formulaire_informations_facture
{
    justify-content: flex-start;
}
#formulaire_informations_facture section
{
    margin-bottom : 10px;
}


.nav
{
    flex-wrap: nowrap !important;
}
.nav-item
{
    background-color: transparent;
    width: auto !important;
}

.nav-link
{
    color: grey;
    width: auto !important;
    min-width: inherit;
    font-size: 1.2em;
    white-space: nowrap;
}

.nav-link.active
{
    background-color: #f1f1f1 !important;
    color : black !important;
}
.dropdown-item.active
{
    background-color: #f1f1f1 !important;
    color : black !important;
}
.nav-link.disabled
{
    color : silver !important;
}



#edition_couple_echeance_reception
{
    width: 30px;
    height: 30px;
}





/* edit bootstrap */
.bg-danger,
.btn-danger,
.alert-danger
{
    background-color: #D57676 !important;
    border-color: #D57676 !important;
    color: black !important;
}
.bg-success,
.btn-success,
.alert-success
{
    background-color: #B4C8AE !important;
    border-color: #B4C8AE !important;
    color: black !important;
}
.bg-warning,
.btn-warning,
.alert-warning
{
    background-color: #F1D8AC !important;
    border-color: #F1D8AC !important;
    color: black !important;
}
.alert
{
    width: 30%;
    position: absolute;
    top : 20px;
    left : 39.5%;
    cursor: alias;
    z-index : 5 !important;
}
.alert::after
{
    content : "X";
    position: absolute;
    top : 0px;
    right : 5px;
    font-size: 1.5em;
    padding : 0;
    margin : 0;
    opacity: 0.6;
}
.btn-light
{
    background-color: white;
    border : 1px solid #f2f2f2;
}



/* style découpage pages */
.page-item.active .page-link
{
    background-color: #f1f1f1 !important;
}
.page-item .page-link
{
    color: black !important;
    background-color: white !important;
    border-color : silver !important;
}

#gif_chargement
{
    height: auto;
    width: 40%;
    position : relative;
    margin: auto;
    bottom : 0;
    top : 0;
    left: 0;
}
#gif_chargement_petit
{
    height: 100%;
    max-height: 50px;
    position : relative;
    top : 0;
    left: 0;
}


#affichage_selection_documents,
#affichage_selection_offres_pr,
#affichage_selection_offres_pc,
#affichage_selection_offres_pci
{
    opacity: 0.3;
}
.ligne_selection_mail
{
    margin-bottom : 5px;
    justify-content: flex-start;
    height: 35px !important;
}
.ligne_selection_mail p
{
    width: 80%;
    margin: 0;
    white-space: nowrap;
    overflow-x: scroll;
}

#confettis 
{
    position : fixed;
    top : 0;
    left : 0;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    background-image : url('/images/confettis.gif');
    background-size : cover;
    opacity: 0.1;
    pointer-events: none;
}


/* authentification */
#formulaire_authentification
{
    width: 12.5%;
    height: auto;
    margin: auto;
    margin-top: 18%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}
#formulaire_authentification .alert
{
    position : absolute !important;
    top: 0;
    left: 35%;
    width: 30%;
}
#formulaire_authentification .btn
{
    font-size: 1em;
    background-color : #001E60;
    color : white;
    border: 0;
}
#logo_authentification
{
    width: 300px;
}
#login
{
    background-color: #1A2535;
}

#upload_mail input
{
    height: 200px;
}

.cke_browser_webkit,
.cke_inner
{
    min-height: none !important;
    width : 100% !important;
    height : 100% !important;
}
.cke_inner
{
    max-height: 100% !important;
}
.cke_bottom
{
    display: none !important;
}

#maintenance
{
    position : absolute;
    top : 15%;
    width : 50%;
    left : 25%;
    height : 60px;
    border-radius: 10px;
    background-color: tomato;
    color : white;
    display: flex;
    align-items: center;
    justify-content: space-around;
    font-size: 2em;
}


.form-check-input:checked[type=checkbox] 
{
    background-image: url('/images/checked.png') !important;
}

.toolbar
{
    width : 100%;
}
.ck-content
{
    height : 90%;
    max-height : 90%;
    border: 1px solid silver !important;
    border-top : 0 !important;
    outline-style: none;
    font-size: 1.5em;
    background-color: white;
}

.h-150
{
    min-height : 150px !important;
    height : 150px !important;
}
.h-250
{
    min-height : 250px !important;
    height : 250px !important;
}
.h-300
{
    min-height : 300px !important;
    height : 300px !important;
}
.h-350
{
    min-height : 350px !important;
    height : 350px !important;
}
.h-400
{
    min-height : 400px !important;
    height : 400px !important;
}
.h-750
{
    min-height : 750px !important;
    height : 750px !important;
}

.bordure_bleue input,
.bordure_bleue select,
.bordure_bleue .bulle_info,
.bordure_bleue textarea,
.bordure_bleue.texte_paragraphe,
.ck_bordure_bleue
{
    border : 1px solid blue !important;
}



.barre-verticale
{ 
    border-left: 2px solid black; 
    height: 100%; 
    width : 5px;
}


#quotas
{
    position: absolute;
    width : 10%;
    height : auto;
    left : 0;
    bottom : 2%;
    padding : 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}
#quotas .ligne p
{
    width : 100%;
    text-align: left;
    margin-bottom : 5px;
    color : white;
}


#ligne_totaux_factures
{
    position: relative;
    bottom : 5px;
}

#classement_specialites_annee table
{
    width : 100%;
}
#recap table th,
#recap table td,
#recap table tr,
#classement_specialites table th,
#classement_specialites table tr,
#classement_specialites table td,
#classement_specialites_annee table th,
#classement_specialites_annee table tr,
#classement_specialites_annee table td,
#classement_utilisateurs table th,
#classement_utilisateurs table tr,
#classement_utilisateurs table td
{
    border : 1px solid grey !important;
    padding : 3px;
    text-align: right;
}

#recap table th,
#classement_specialites table th,
#classement_specialites_annee table th,
#classement_utilisateurs table th
{
    background-color: #f2f2f2;
}

#recap table thead th,
#classement_specialites table thead th,
#classement_utilisateurs table thead th
{
    position: sticky !important;
    top : 10px;
    height : 15px;
}

#recap table thead .th2,
#classement_specialites table thead .th2,
#classement_specialites_annee table thead .th2,
#classement_utilisateurs table thead .th2
{
    position: sticky !important;
    top : -10px;
}


.petite_checkbox .form-check-input
{
    min-width : 20px !important;
    min-height : 20px !important;
    height : 20px;
}



.badge1
{
    position:relative;
}
.badge1[data-badge]:after
{
    content:attr(data-badge);
    position:absolute;
    top:-10px;
    right:-10px;
    font-size: 1em;
    background:red;
    color:white;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;  
    border-radius: 50%;
    box-shadow: 0 0 1px #333;
    font-weight: bold;
}


#form_tag
{
    width : 700px;
    padding : 10px;
    padding-right: 30px;
    height : 100px;
    background-color: #f2f2f2;
    border-radius: 10px;
    border : 2px solid black;
    position: absolute;
    top : 40%;
    left : 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
}
#form_tag form
{
    width : 100%;
    height : 100%;
    display: flex;
    align-items: center;
    justify-content: space-around;
    align-content: center;
}

#tab_extensions
{
    width : 50%;
    margin : auto;
}
#tab_extensions td,
#tab_extensions th
{
    padding-top : 5px;
    padding-bottom: 5px;
    padding-left : 10px;
    padding-right: 10px;
    border : 1px solid black;
}
#tab_extensions th
{
    background-color: #f2f2f2;
}
#tab_extensions thead th
{
    position: sticky !important;
    top : 0;
    height : 15px;
}


.aucun_doc
{
    background-color: #CE4343;
}
.plusieurs_docs
{
    background-color: #A8CFCE;
}
.un_doc
{
    background-color: #9FBA9C;
}


.adresse_invalide+label
{
    color : red;
}

.publiee,
.publication-en-attente,
.suppression-en-attente
{
    opacity : 0.7;
    width : 100%;
    padding : 0px !important;
    display: flex;
    justify-content: space-around;
    align-items: center;
    overflow-y: hidden;
    border-radius : 50%;
    color : black !important;
    font-weight: bold !important;
}
.publiee
{
    background-color: #9FBA9C;
}
.publication-en-attente
{
    background-color: orange;
}
.suppression-en-attente
{
    background-color: tomato;
}





#preview
{
    position: absolute;
    z-index: 5;
    width : 0%;
    height : 100%;
    right : 0;
    top : 0;
    background-color: #f2f2f2;
    border-left : 2px solid black;
    padding : 10px;
    overflow-x: scroll;
}
#preview p
{
    font-size: 1.2em;
}
#preview #pdf 
{
    padding : 0;
    border : 0;
    border-radius: 0;
    min-height : inherit !important;
    height : 100%;
    width : 100%;
    margin : 0;
}
#preview #image 
{
    max-height: 95% !important;
    max-width : 95% !important;
    margin : auto;
}
.note_preview
{
    border : 1px solid grey;
    background-color: white;
    border-radius: 10px;
    width : 100%;
    padding : 10px;
    margin-top : 5px;
    margin-bottom : 5px;
    height: auto;
    max-height: 400px;
}
.note_preview .zone_deroulante_y
{
    padding-left : 0;
    height : auto;
    max-height : 200px !important;
    padding-bottom: 20px;
}
.commentaires_preview
{
    border : 1px solid grey;
    background-color: white;
    border-radius: 10px;
    height : 150px;
    width : 100%;
    padding : 10px;
    margin-top : 5px;
    margin-bottom : 5px;
    min-height : 150px;
}
#preview embed
{
    width : 100%;
    min-height : 700px !important;
    border-bottom: 2px solid black;
    border-radius: 10px;
}
#boutons_preview
{
    padding-top : 10px;
}
#preview hr
{
    width : 80%;
    border-bottom : 2px solid grey;
}


.js-visualiser
{
    text-decoration: none;
}

.logo-docusign
{
    max-height: 100%;
    max-width : 100%;
}


/* Board statistics */
#evolution .plot-container
{
    width : 100%;
}


#evolution
{
    display : flex;
    justify-content : space-around;
    align-items : center;
}


.form-inline
{
    display: flex;
    flex-direction: row;
    align-items: center;
}





#suggestions
{
    height : auto;
    max-height: 300px;
    overflow-y: auto;
    width : 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
}
#suggestions .ligne
{
    width : 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding : 5px;
    padding-left : 10px;
    padding-right: 10px;
    border-bottom: 1px solid #e2e2e2;
}
#suggestions .ligne a
{
    color : black;
    text-decoration: none;
    font-weight: bold;
}
#suggestions .ligne a:hover
{
    color : blue;
}
#suggestions .ligne .btn
{
    font-weight: normal;
}


.profile-warning
{
    width : 100%;
    height : auto;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding : 10px;
}
.profile-warning p
{
    width : 100%;
    border-radius: 5px;
    background-color: tomato;
    color : white;
    padding : 10px;
}

.pagination
{
    margin : 0;
}

#alerts
{
    color : black !important;
}


#menu_lateral.bg-test,
#menu-principal.bg-test
{
    background-color: purple !important;
}

#error
{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #001E60;
    width : 100vw;
    height : 100vh;
    gap : 20px;
}

#error img
{
    width: 250px;
}

#error h1
{
    color : white;
    font-size: 1.7em;
    width: 100%;
    text-align: center;
}

#error a
{
    background-color: white;
    padding : 5px 10px 5px 10px;
    border-radius: 5px;
    text-decoration: none;
    color : black;
}