/* ------------------------------ Flexbox ------------------------------ */
.PanelV, .PanelH {
    align-content: space-between;
    align-items: stretch;
    display: flex;
    overflow-y:hidden;
}
.PanelV { flex-flow: column nowrap; }
.PanelH { flex-flow: row nowrap; }
.PanelFix  { flex: 0 1 auto; }
.PanelFill { flex: 1 0 0px; }  

/* ------------------------------ Menu vertical ------------------------------ */
.vTabMenu
{
    width: 250px; 
    display: flex; 
    flex-direction: column; 
    background-color: #3A4B63;
    position: relative;
    padding-bottom: 25px;
}

.vTabHeader
{
    margin: 25px 5px 5px 5px;
    padding-left: 5px;
    font-size: 14px;
    color: white;
    font-weight: bold;
    text-decoration: underline;
}

.vTabTab
{
    color: white; 
    padding: 10px;
}

.vTabTab .badge
{
    vertical-align: top;
    color: #3a4b63;
    margin-right: 5px;
    float: right;
    background-color: white;
    border-radius: 15px;
    margin-top: 1px;
    padding: 5px 10px;
}

.vTabTab:hover
{
    color: white;    
    text-decoration: none;
    background-color: #2fa4e7;
    
}

.vTabTab.active
{
    color: white;
    background-color: #4E5D72;
}

/* ------------------------------ Menu horizontal ------------------------------ */
.navTabMenu
{
    display: none; 
}

/* ------------------------------ Nouvelles ------------------------------ */
.news-block
{
    background-size: cover;
    height:100vh;
}

.news-item
{
    padding-left: 15%;
    padding-right: 15%;
    background-color:initial;
    height:100vh;
}

/* ------------------------------ Écran de login ------------------------------ */
.bgPattern
{
   /*background : url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAHElEQVQYV2O8efPmf3V1dUYGKIAzMARgKjFUAABhTQgFqUDzYAAAAABJRU5ErkJggg==) repeat;*/
}

.loginBlock
{
    /*background-color: #ffffff;*/
}

.loginContainer
{
    max-width: 350px;
    background-color: #f8f9fa;
    padding: 20px 25px 30px;
    margin: auto;
}

.loginImage
{
    font-size: 100px;
    display: block;
    margin: -75px auto;
    width: 97px;
    background-color: #f8f9fa;
}

.loginForm input[type=email],
.loginForm input[type=password],
.loginForm input[type=text],
.loginForm button {
    width: 100%;
    display: block;
    margin-bottom: 10px;
    direction: ltr;
    height: 44px;
    font-size: 16px;    
}

.loginForm .form-control:focus 
{
    border-color: #007bff;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgb(104, 145, 162);
}

/* ------------------------------ Signup ------------------------------ */

.signupEntete {
    background-repeat:no-repeat;
    background-position:left;
    background-size:contain;
}

.formElement {
    width: 100%;
    display: block;
    margin-bottom: 15px;
    direction: ltr;
    height: 44px;
    font-size: 16px;    
    background-color: #f8f8f8;
}

.formElement:focus 
{
    border-color: #007bff;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgb(104, 145, 162);
    background-color: white;
}

.signupFormElement {
    width: 100%;
    display: block;
    margin-bottom: 15px;
    direction: ltr;
    height: 44px;
    font-size: 16px;    
    background-color: #f8f8f8;
}

.signupFormElementIcon {
    padding-left: 35px;
}

.signupFormElement .form-control:focus 
{
    border-color: #007bff;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgb(104, 145, 162);
    background-color: white;
}


.inputSpanIcon{
    position:absolute; 
    z-index:10; 
    color:#6c757d; 
    margin-left: 12px; 
    height:44px; 
    display:flex; 
    align-items:center;
}

.customScrollbarSimple{
    width:40px;
    scrollbar-width: thin;
}

.customScrollbarSimple::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
.customScrollbarSimple::-webkit-scrollbar-track {
    border-radius: 12px;
    background: #e9e9e9;
}
.customScrollbarSimple::-webkit-scrollbar-thumb{
    border-radius: 12px;
    background: #bebcbc;
}
.customScrollbarSimple::-webkit-scrollbar-thumb:hover{
    background: rgba(0,0,0,0.4);
}

.scrollable-wrapper-flexbox-horizontal{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
/*    -webkit-overflow-scrolling: touch;
    &::-webkit-scrollbar {
    display: none;
    }*/
    
    
}

.scrollable-wrapper-flexbox-horizontal-element{
    flex: 0 0 auto;
    scroll-snap-align: center;
    width: 65%;
    height: 350px;
    border: 1px solid #e5e5e7;
    background-color: #fdfdfd;
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 0px 0px 13px 2px #eaeaf3;
    margin: 20px;
    margin-top: 0px;
    text-align: center;
    border-top: 4px solid #007bff;
}


.scrollable-wrapper-flexbox-horizontal::-webkit-scrollbar {
  width: 20px;
}

.scrollable-wrapper-flexbox-horizontal::-webkit-scrollbar-track {
  background-color: transparent;
}

.scrollable-wrapper-flexbox-horizontal::-webkit-scrollbar-thumb {
  background-color: #d6dee1;
  border-radius: 20px;
  border: 6px solid transparent;
  background-clip: content-box;
}

.scrollable-wrapper-flexbox-horizontal::-webkit-scrollbar-thumb:hover {
  background-color: #c4d0d4;
}

@media screen and (min-width: 0px) {
  .ContainerFlex {
    display: flex;
    flex-direction: column;
  }
}

@media screen and (min-width: 800px) {
  .ContainerFlex {
    display: flex;
    flex-direction: row;
  }
}




.faSuccess{
    -webkit-text-stroke: 5px white;
}
/* ------------------------------ CALENDRIER ------------------------------ */

.Calendar{
    background-color: white;
    box-shadow : 0px 0px 8px 0px #d1d1d1;
    border-radius: 10px;
    padding: 15px;
}

.CalendarComponentHeader{
    font-size: 13pt;
    font-weight: 400;
    height: 37px;
    line-height: 37px;
    padding-left: 5px;
    padding-right: 5px;
    align-items: center;
}

.CalendarRow{
    line-height: 30px;
}

.CalendarHeader{
    font-size: 9pt;
    text-align: center;
    font-weight: 500;
    color: #1a1a1a;
}

.CalendarCell{
    text-align: center;
    font-weight: 400;
    font-size: 12pt;
    width: 39px;
    height: 39px;
}

.CalendarCellDisabled {
    color: #ababab;
}

.CalendarCellEnabled {
    border-radius: 25px;
    background-color: rgba(0, 105, 255, 0.065);
    color: #0060e6;
    padding: 5px;
    font-weight: 700;
}

.CalendarCellEnabled:hover{
    cursor: pointer;
    background-color: #156ae1;
    color: white;
}

.CalendarBeforeAfter {
    cursor: pointer;
    border: 1px solid #eaeaeb;
    padding: 6px 8px 6px 8px;
    border-radius: 6px;
    background-color: #ffffff;
    box-shadow: 1px 1px 9px 1px #f0f1f2;
}

.CalendarBeforeAfter:hover{
    color: #0060e6;
}

.SubCalendarAvailabilityHours {
    overflow-y: scroll;
    height: 74%;
    display: flex;
    flex-direction: row;
    align-content: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 12px;
    padding: 3px;
}

.SubCalendarAvailabilityHours::-webkit-scrollbar-track {
  background-color: transparent;
}

.SubCalendarAvailabilityHours::-webkit-scrollbar {
  width: 20px;
}

.SubCalendarAvailabilityHours::-webkit-scrollbar-thumb {
  background-color: #e9ecef;
  border-radius: 20px;
  border: 6px solid transparent;
  background-clip: content-box;
}

.SubCalendarAvailabilityHours::-webkit-scrollbar-thumb:hover {
  background-color: #d9d9d9;
}

.CalendarAvailabilityHoursElement {
    width: 64px;
}

@media only screen and (min-device-width: 320px){
    .CalendarAvailabilityHoursElement:hover {
        background-color: inherit;
        color: #007bff;
    }
}

.CalendarAvailabilityHoursElement:focus {
   background-color: #fff;
   color: #007bff;
}

.CalendarAvailabilityHoursElement:active {
   background-color: #007bff;
}



/* ------------------------------ Styles généraux ------------------------------ */
body
{
    background-color: #f8f9fa;
}

.maniBody
{
    padding-top:43px;
}

.maniBody > .PanelH {
    min-height: calc(100vh - 100px) !important;
}

.sectionItem
{
    position: relative;
    background-color: white;
    margin: 5px;
    padding:10px;
    border: 1px solid #b6b8b9;
    border-radius: 3.5px;
    box-shadow: 1px 1px 2px #999999;
}
.sectionItemTitre
{
    background-color: #eeeeee;
    background-image: linear-gradient(#f8f9fa,#eeeeee);
    color: #383838;
    font-weight: bold;
    margin-bottom: 5px;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    padding: 5px 10px;
    margin-top: -11px;
    margin-right: -11px;
    margin-left: -11px;
    border: 1px solid #999999;
}
.slidecontainer {
  width: 100%;
}

.slider {
  -webkit-appearance: none;
  width: 100%;
  height: 15px;
  border-radius: 5px;
  background: #d3d3d3;
  outline: none;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
}

.slider:hover {
  opacity: 1;
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #0A0A0A;
  cursor: pointer;
}

.slider::-moz-range-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #0A0A0A;
  cursor: pointer;
}

.breadcrumb-item a { color:#384B62; }
.breadcrumb-item.active { font-weight:700; }
.breadcrumb-item.active a { color:#007bff; }
/*.breadcrumb-item.first a { color:#007bff; }*/

.info-message{
    opacity: 0; 
    webkit-transition: opacity .4s ease .4s; 
    transition: opacity .4s ease .4s;
    background-color: white; 
    border-radius: 12px; 
    box-shadow: 0px 0px 10px 3px #dbdbdb; 
    padding: 30px;
}

.info-message.showing {
    opacity: 1;
}


@media screen and (max-width: 400px){
    .info-message-mb {
        width:95%;
        min-width:unset;
    }
    
    .chkbox {
        width:37px;
        height:37px;
    }
}

@media screen and (max-width: 700px) {
    .info-message{
        width: 100%;
        margin: auto;
    }
}

@media screen and (min-width: 701px) {
    .info-message-mb {
        width: 47%;
    }
    
    .chkbox {
        height: 20px;
        width: 20px;
    }
    
    .info-message-bb {
        width: 95%;
        margin: auto;
    }
}



/* ------------------------------ Gestion des listes (Datatable) ------------------------------ */

.containerPersistant { flex:1; overflow-y:hidden; }

.ListDelete { cursor: pointer; color: red; }
.ListDelete:hover { text-decoration: underline; }

.btnListeHistorique.actif 
{
    color: green;    
    font-weight:bold;
    background-image: linear-gradient(#FFFFFF 0%,white 90% ,#008000 90% );
}

.dt-buttons
{
    border: 1px solid #ced4da;
    border-radius: 5px;
}       
    
table.dataTable tr > td
{
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 3px;
    
}
.dataTables_scrollHead 
{
    padding-left: 3px; 
    overflow:visible !important; /* FIX - A partir de Chrome 48 les colonnes ne s'affichent plus. Possiblement regle dans Chrome 50 */
}
div.dataTables_wrapper div.dataTables_paginate { margin-top:5px; }
div.dataTables_wrapper div.dataTables_info { margin-top:5px; }
table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child:before, table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child:before { top: 2px; }

table.dataTable thead>tr>th.sorting_asc, table.dataTable thead>tr>th.sorting_desc, table.dataTable thead>tr>th.sorting, table.dataTable thead>tr>td.sorting_asc, table.dataTable thead>tr>td.sorting_desc, table.dataTable thead>tr>td.sorting { padding-right: 0px; } 

.padRight { padding-right:10px !important; }
td.padRight { padding-right:10px !important;border-bottom: 1px solid #ced4da; }
th.padRight { padding-right:10px !important; border-bottom: 1px solid #343a40; }

/* Desactiver les icones d'entete et ajouter un souligner (permet de sauver de l'espace) */
table.dataTable thead .sorting:after, table.dataTable thead .sorting_asc:after, table.dataTable thead .sorting_desc:after, table.dataTable thead .sorting_asc_disabled:after, table.dataTable thead .sorting_desc_disabled:after {
     content: "";
}

table.dataTable thead .sorting:before, table.dataTable thead .sorting_asc:before, table.dataTable thead .sorting_desc:before, table.dataTable thead .sorting_asc_disabled:before, table.dataTable thead .sorting_desc_disabled:before {
     content: "";
}

table.dataTable thead .sorting_desc, table.dataTable thead .sorting_asc {  text-decoration:underline; }


table.dataTable {
  background-color: #fff;
  width: 100%;
}

table.dataTable tr.even.disabledRow { color: lightgray; }
table.dataTable tr.odd.disabledRow { color: lightgray; }
table.dataTable tr.even.inactiveRow { background-color: #ffe7b5; }
table.dataTable tr.odd.inactiveRow { background-color: #ffd890; }

table.dataTable tr.even.totalRow { background-color:#FDD180; font-weight:bold; }
table.dataTable tr.odd.totalRow { background-color:#FDD180; font-weight:bold; }

.dataTables_scrollHead
{
    color:black;
    font-weight: bold;  
}

table.dataTable tr.odd { background-color:#ECECEC; }
table.dataTable tr.even, table.dataTable tr.odd { color:#222222; }

table.dataTable tr.odd.tableRowOrange { background-color:#F0AA00; }
table.dataTable tr.even.tableRowOrange { background-color:#F0BB00; }
table.dataTable tr.odd.tableRowGreen { background-color:#C6E0B4; }
table.dataTable tr.even.tableRowGreen { background-color:#E2EFDA; }
table.dataTable tr.odd.tableRowBlue { background-color:#A0D0FF; }
table.dataTable tr.even.tableRowBlue { background-color:#B0E0FF; }
table.dataTable tr.odd.tableRowRed { background-color:#FF6B6B; }
table.dataTable tr.even.tableRowRed { background-color:#FF7A7A; }

table.dataTable tr.odd:hover, table.dataTable tr.even:hover
{
    background-color:#00A0E0;  
    color: white;
    cursor: pointer;
}

.dataTables_scrollBody
{    
   border-top: 1px solid black;
   border-bottom: 1px solid black;
}

/* ------------------------------ Gestion des listes (CustomTable) ------------------------------ */
.RowRedText { color:red !important; }
.RowBlueText { color:blue !important; }
.RowGreenText { color:green !important; }
.RowHighlight { text-decoration:underline; }
.RowGrayText { color:#999999 !important; }
.RowTotalText { font-weight:bold; }
.RowDetailDisabled { cursor:default !important; }
.RowImportant { background-color:#FFCC00 !important; }


.CustomTable { font-size:16px; line-height: 1.42857143; }
.CustomTable > tr:nth-child(odd) { background-color:#ECECEC; }
.CustomTable > tr:nth-child(even) { background-color:white; }

.CustomTable > tbody > tr:nth-child(odd) { background-color:#ECECEC; }
.CustomTable > tbody > tr:nth-child(even) { background-color:white; }

.CustomTable tr.trBlue:nth-child(odd) { background-color:#E0EEFF; }
.CustomTable tr.trBlue:nth-child(even) { background-color:#CCDDFF; }
.CustomTable tr.trOrange:nth-child(odd) { background-color:#FFEE00; }
.CustomTable tr.trOrange:nth-child(even) { background-color:#FFDD00; }
.CustomTable tr.trRed:nth-child(odd) { background-color:#FFEEEE; }
.CustomTable tr.trRed:nth-child(even) { background-color:#FFDDDD; }
.CustomTable > tr:hover { background-color:#00A0E0; cursor:default; }

.CustomTable > tbody > tr > td { padding:3px 5px 3px 5px; font-size:15.43px;}

.CustomTable > tbody > tr > td { white-space:nowrap; }

.CustomTable > tbody > tr:hover { background-color:#00A0E0; cursor:default; color:white; }

.CustomTable > thead > tr > th,.CustomTable > tr > th { cursor:pointer; user-select: none; padding:3px 5px 3px 5px; background-image:linear-gradient(#cb242b,#921419); border-bottom:1px solid #59595b; color:white; }
.CustomTable > thead > tr { border-bottom: 1px solid black; background-color:white; }
.CustomTable tr.ImportantHover:hover td { background-color:yellow !important; color:#222222 !important; }

.CustomSort {}
.CustomSortUp { text-decoration:underline; }
.CustomSortDown { text-decoration:underline; }

/*.CustomSortUp::after   { padding-left:3px; font:normal normal normal 14px/1 FontAwesome; text-decoration:none; content: "";}*/
/*.CustomSortDown::after { padding-left:3px; font:normal normal normal 14px/1 FontAwesome; text-decoration:none; content: "";}*/


.CustomRow { background-color:#FFFFFF; }
.CustomRowOdd { background-color:#F0FFF0; }
.CustomRowOrange { background-color:#FFEE00; }
.CustomRowOrangeOdd { background-color:#FFDD00; }
.CustomRowRed { background-color:#FFEEEE; }
.CustomRowRedOdd { background-color:#FFDDDD; }

.CustomRow:hover,
.CustomRowOdd:hover,
.CustomRowOrange:hover,
.CustomRowOrangeOdd:hover,
.CustomRowRed:hover,
.CustomRowRedOdd:hover
{
    background-color:yellow;
}

/* ---------------------- Utilitaires ---------------------- */
.close
{
    float: right;
    margin-right: 5px;
    margin-top: 8px;
    cursor: pointer;        
}

.Banderolle
{
    background-image:linear-gradient(#f8f9fa 50%,#eaeaea);
    text-align: center;
    padding: 5px;
    font-size: 20pt;
    font-weight: 500;
    background-color: #f8f9fa;
    border-radius: 5px;
    border: 1px solid #ced4da;
    text-shadow: 2px 2px 2px #d8d8d8;  
    margin-bottom:5px;
}

.componentLabel
{
    display: inline-block;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 9pt;
    background-color: #f4f4f4;
    padding: 3px 10px 3px 3px;
    vertical-align: top;
    height: 25px;
}

.CalendrierListe
{
    background-color: #f8f9fa;
    background-image: linear-gradient(#f8f9fa 50%,#eaeaea);
    padding: 5px;
    border: 1px solid #b4b5b5;
    margin:5px;
    border-radius:5px;
}

/* ---------------------- LightBox ---------------------- */
.ILightBox
{
    position:fixed;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    display: flex;
    align-items: center;
    background-color:rgba(0, 0, 0, 0.8);
    z-index:1500;
}

.ILightBoxContent
{
    margin:auto;
    min-width:10%;
    min-height:10%;
    max-width:90%;
    max-height:90%;
    border-radius:5px;
    overflow-y:auto;
    background-color:white;
    border: 5px solid white;    
}


/* ---------------------- Barre de navigation (Menu principal) ---------------------- */
.navbar-brand.anchor-nav{ height:40px; }


/* ---------------------- TabControl ---------------------- */
.TabControl.nav-tabs > li.active > a, 
.TabControl.nav-tabs > li.active > a:hover,
.TabControl.nav-tabs > li.active > a:focus 
{
    border-color: #FF8418;
    border-bottom: 1px solid white;
    color: black;
    border-top: 3px solid #FF8418;
    
}

.TabControl.nav-tabs > li.active 
{
    z-index: 1;
}

.TabControl.nav-tabs 
{ 
    border-bottom: 1px solid #FF8418;
    padding-left: 10px; 
}

.TabControl.nav-tabs > li > a:hover 
{   
    color: black;
    border-color: #0386BB;
    background-color: #F9F9F9;
    border-bottom: 1px solid #FF8418;    
}

.TabControl.nav-tabs > li > a 
{
    color: #444444;
    background-color: white;
    border: 1px solid #1995DC;
    border-bottom: 1px solid #FF8418;
    height: 25px;
    border-top-left-radius: 15px;
    border-top: 3px solid #37B3E4;
    margin-left: -5px;    
    padding: 2px 10px;
    text-decoration:none;
}


/* ---------------------- Groupbox ---------------------- */
.GroupBox
{
    border-radius:4px; 
    border: 1px solid #2A74A5; 
    margin:10px 5px 5px 5px;     
}

.GroupBoxTitre 
{
    background-color:#2A74A5; 
    color:white; 
    font-size:10pt; 
    height:20px; 
    padding-left:10px; 
    font-weight:bold;    
}

.GroupBoxContent
{
    padding:10px;
}

/* ------------------------------ Tweak MultiSelect ------------------------------ */

.multiselect.dropdown-toggle
{
    line-height: 7px;  
    margin-left: -6.4;
    color: #555555;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    font-size: 9pt;
    height: 25px;
    margin-top: -4px;
}

.multiselect.dropdown-toggle.RoundedBox
{
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px; 
}

.multiselect.dropdown-toggle > .caret { float: right; }
.multiselect.dropdown-toggle { text-align: left; }
.multiselect.dropdown-toggle::after{ float:right; }
.multiselect-container li:not(.multiselect-item) a { padding-left:0px; font-size:10pt; }
.multiselect-container > li.multiselect-all > a { padding-left:0px; }

label.radio {
    color: #555555;
    font-size: 9pt;
}

.multiselect-search{ height: 25px; }

/* Dropdown */
select.CompatSelect {
    color: #555555;
    font-size: 9pt;
}


/* ------------------------------ Responsive ------------------------------ */
@media (max-width: 991px) 
{ 
    .vTabMenu { display: none; }    
    .navbar-toggler { margin: 1px; margin-left:5px; }
    .navbar-nav .dropdown-menu { margin-bottom:10px; margin-right:10px; }
    .navTabMenu {display: inline;}
    .MediaLarge { display:none; }
    
    .vTabMenuToggle
    {
        position: absolute;
        background-color: #3a4b63fa;
        display: flex !important;
        border-radius: 0px 0px 5px 0px;
        border: 1px solid #00000036;
        box-shadow: 0px 2px 5px 2px #000000b8; /*#797979;*/
        padding: 0px 0px 60px 0px;
        z-index:1000;
    }    
}


/* ------------------------------ Agenda ------------------------------ */

.frameAgendaHeader
{
   display:flex; 
   flex-shrink:0;
   flex-direction:row;
   height:35px;  
   border-bottom: 1px solid #8d8d8d;
   background-image: linear-gradient(#FFFFFF,#ECECEC);
   border-top-left-radius:5px;
   border-top-right-radius:5px;   
}

.frameAgendaHeaderTime
{
   display:inline-block;
   flex-grow:0; 
   flex-shrink:0; 
   width:55px; 
   overflow:hidden; 
   border-right: 1px solid #8d8d8d;
   background-color: #3a4b63;
}

.frameAgendaHeaderColumns
{
   display:inline-block; 
   flex-grow:1; 
   overflow-x:hidden;
   overflow-y:hidden;
   margin-right:-1px;
   border-right:1px solid #8d8d8d; 
}

.frameAgendaHeaderColumnsScroll
{
   display:flex;
   flex-direction:row; 
   height:35px; 
   white-space:nowrap;
}

.frameAgendaHeaderColumn
{
   display:inline-block; 
   flex-grow:1; 
   flex-shrink:0; 
   padding: 0px 5px 0px 5px;
   overflow:hidden;
   text-align:center;
   text-overflow:ellipsis;
   line-height: 17px;
}

.frameAgendaContent 
{
    flex-direction:row; 
    overflow-x: hidden;
}

.frameAgendaContentTime 
{
   flex-grow:0;
   flex-shrink:0;
   display:inline-block;
   width:55px;
   overflow-x:hidden;
   overflow-y:hidden;
   position:absolute;
   z-index:1;
   margin-bottom:2px;
   border-bottom-left-radius:5px;   
}

.frameAgendaContentBody
{
   display:inline-block;
   flex-grow:1;
   overflow-x:scroll;
   overflow-y:hidden;
   position:relative;
   border-bottom-right-radius:5px;
   margin-right:-1px;
   margin-bottom:2px; 
   background-color:#EAEAEA;   
}

.agendaCol
{
    display:flex;
    flex-direction: column;
    flex-shrink:0;
    flex-grow:1;
}

.agendaRow 
{
   display:flex;
   flex-direction:row;
   white-space:nowrap;
}

.agendaRowColumn
{
   position:relative;
   display:inline-block; 
   height:18px; 
   flex-grow:0; 
   flex-shrink:0;   
   background-color: #EAEAEA;
   border-right:1px solid #8d8d8d; 
   border-bottom: 1px dashed #CECECE;
   cursor:pointer;   
}

.agendaRowColumnContent
{
    line-height:10px;
    
}

.agendaRowHeaderLabel
{
   font-family: tahoma;
   position:relative;
   height:22px; 
   flex-grow:0; 
   flex-shrink:0; 
   background-color: #FCFCFC;
   border-bottom: 2px solid #000;
   border-right: 1px solid #000;
   font-weight: bold;   
}


@media (max-width: 1024px) 
{
    .agendaEventSupp
    {
        display:none;
    }
}

@media (min-width: 1024px) 
{
    .agendaEvent
    {  
        overflow:hidden;
    }
}

.agendaEvent
{
    position: relative;
    line-height: 20px;
    margin:1px;
    border-radius: 5px;
    font-size: 11pt;
    display: block;
    border: 1px solid #3a4b63;    
    padding: 0px 5px;
    box-shadow:inset 0px 0px 1px 0px black;
}

.agendaEventTitle
{
    height:20px;
    font-size: 11pt;
    font-weight:bold;
    overflow:hidden;
    white-space:nowrap;
}

.agendaEventSubTitle
{
    font-size: 9pt;
    line-height: 16px;
    text-overflow:ellipsis;
    white-space:nowrap;
    overflow:hidden;
}

.agendaEvent:hover
{
    box-shadow:inset 0px 0px 1px 1px black;
}

.agendaEventSelected
{
   animation: SelectedEvent 1s 15;
   /* animation: SelectedEvent 1s infinite; */
}

@keyframes SelectedEvent {
  0%, 100%  { filter:saturate(1) }
  50% { filter:saturate(5); }
}

.frameAgenda
{
   border:1px solid #8d8d8d; 
   border-radius:5px;
   overflow-x: hidden;
}

.frameAgendaHeaderColumn.active
{
    background-image:none !important; 
}

.agendaRowHeader
{
   border-right:1px solid #8d8d8d;
   text-align:center;
   width:55px; 
   color:white;   
   font-size:10pt;
   background-color:#3A4B63;
   height: 22px;
   line-height: 22px;   
}

.agendaRowHeader.section
{
   border-bottom: 1px solid #CECECE;
}

.agendaRowHeader.active
{
   background-color:#94d5ff;
}

.agendaRowColumn.section
{
   border-bottom: 1px solid #CECECE;
}

.agendaRowHeader.selectedPrev, .agendaRowColumn.selectedPrev
{
   border-bottom: 1px dotted black;
}

.agendaRowHeader.selected, .agendaRowColumn.selected
{
   border-bottom: 1px dotted black;
   background-image: linear-gradient(rgba(128, 128, 128, 0),rgba(128, 128, 128, 0.3));
}

.agendaRDV
{
    position: relative;
    padding-left: 5px;
    line-height: 22px;
    margin-left: 1px;
    margin-right: 1px;
    border-radius: 5px;
    font-size: 10pt;
    display: block;
    border: 1px solid #3a4b63;
}

.agendaBackgroudEventDispo
{
    background-image: none;
    background-position: initial;
    background-repeat: initial;          
    background-color: white;
    color:gray;
    font-size:9px;        
}

.agendaEventTimeline
{
    width:25px;    
    position:absolute;
}

.agendaEventFull
{
    margin-left:1px !important;  
    z-index:999 !important;
}

.agendaEventTimeline > .agendaEventTitle
{
    margin-top: 5px;
    margin-left:-2px;
    writing-mode:tb; 
    height: 100%;
    text-align: left;
    overflow:hidden;
    text-overflow:ellipsis;
}

.agendaEventTimeline > .agendaEventTitle > span
{
    display:none;
}

.agendaEventTimeline > .agendaEventSubTitle
{
    display:none;
    
}
.agendaEventTimeline > .agendaEventTitle > .agendaEventAction
{
    display:none;
    
}
 
.activiteNone
{
    display:none;
}

.activiteBlock
{
    display:inline-block;
}


tr.customRedRow:nth-child(odd) { 
    background-color:#FF6B6B !important; 
}
tr.customRedRow:nth-child(even) { 
    background-color:#FF7A7A !important; 
}

/* ------------------------------ Menu -> affiche Langue + Déconnexion sur mobile ------------------------------ */
.navBarClass
{
    
}
@media (max-width: 992px) 
{
    .navBarClass
    {  
        display: flex !important;
        flex-basis: auto;
    }
}

.navBarMenuClass
{
    
}
@media (max-width: 992px) 
{
    .navBarMenuClass
    {  
        flex-direction: row;
        margin-top: 0px !important;
    }
}

.bootbox.modal {z-index: 9999 !important;}