body{
  margin:0;
  font-size:14px;
  font-weight:400;
  line-height:1.5;
  text-align:left;
}

h2{
  font-size:1.2rem;
}

.btn-group .badge-pill {
  width:30px;
  height:30px;
  line-height:25px;
}

/************************************************************************************************************
 ** LOADER
 ***********************************************************************************************************/

#loader{
  width:100%;
  height:100%;
  top:0;
  bottom:0;
  left:0;
  right:0;
  position:fixed;
  z-index:9999;
  text-align:center;
  padding-top:20%;
  overflow:hidden;
  display:none;
}

#loader i{
  font-size:48px;
}

#loader .waiting-text{
  font-size:48px;
}

/************************************************************************************************************
 ** SIDEBAR / TOPBAR
 ***********************************************************************************************************/

.navbar{
  border-bottom-width:1px;
  border-bottom-style:solid;
  display:block;
  width:100%;
  padding-top:0;
  padding-bottom:0;
}

@media screen and (max-width:990px) {
  .navbar,
  .navbar .row,
  .navbar .row .navbar-nav-container,
  .navbar .row .navbar-brand-container,
  .navbar .row .navbar-tools-container{
    padding-left:0;
    padding-right:0;
    margin-left:0;
    margin-right:0;
  }
}

 /** Logo **/

.navbar .navbar-brand{
  display:block;
  text-align:left;
  font-size:1.0625rem;
  line-height:inherit;
  white-space:nowrap;
  padding-top:10px;
  padding-bottom:10px;
  margin:0;
}
.navbar .navbar-brand img{
  width:80%;
  max-width:250px;
}

@media screen and (max-width:990px) {
  .navbar .navbar-brand{
    border-bottom:1px solid #DDDDDD;
    text-align:left;
  }
  .navbar .navbar-brand img{
    margin-left:10px !important;
  }
}

 /** Mon profil / Déconnexion **/

.navbar .navbar-tools-container{
  text-align:right;
  padding-top:8px;
  padding-bottom:8px;

}
.navbar .navbar-tools a{
  border-left-style:solid;
  border-left-width:1px;
  font-size:12px;
}
.navbar .navbar-tools a:first-child{
  border-left-width:0px;
}

@media screen and (max-width:990px) {
  .navbar .navbar-tools{
    margin-right:10px !important;
  }
}

 /** Navigation principale **/

.navbar .navbar-nav a{
  font-size:14px;
  font-weight:600;
  padding-left:10px !important;
  padding-right:10px !important;
  border-left-width:1px;
  border-left-style:solid;
  border-bottom-width:3px;
  border-bottom-style:solid;
}
.navbar .navbar-nav li:last-child a{
  border-right-width:1px;
  border-right-style:solid;
}
.navbar .navbar-nav a.active,
.navbar .navbar-nav li.active a,
.navbar .navbar-nav a:hover{
  font-weight:600;
}
.navbar .navbar-nav span,
.navbar .navbar-nav i{
  display:table-cell;
  vertical-align:middle;
}
.navbar .navbar-nav span{
  padding-left:5px;
  white-space:nowrap;
}
.navbar .navbar-nav i{
  width:15px;
  height:15px;
  font-size:0.9rem;
  border-radius:50%;
  text-align:center;
  padding:8px;
}
.navbar .navbar-nav .dashboard i,
.navbar .navbar-nav .utilisateur i{
  padding:8px 9px;
}
.navbar .navbar-nav .administration i{

}
.navbar .navbar-nav .beneficiaire i{
  padding:8px 7px;
}
.navbar .navbar-nav .acces i,
.navbar .navbar-nav .parametre i{
  padding:8px 6px;
}
.navbar .navbar-nav .nav-item.disabled i{
  color:#FFFFFF;
  background:#DDDDDD;
}
.navbar .navbar-nav .nav-item.disabled a{
  color:#CCCCCC;
}

/************************************************************************************************************
 ** TITLEBAR
 ***********************************************************************************************************/

#titlebar{
  padding:20px;
}
#titlebar .documents i{
  margin-right:10px;
}

/************************************************************************************************************
 ** GLOBAL CONTAINER
 ***********************************************************************************************************/

#content{
  margin:auto;
}

/************************************************************************************************************
 ** LOGIN
 ***********************************************************************************************************/

#login-form{
  border-width:1px;
  border-style:solid;
  border-radius:5px;
  padding:30px;
}

/************************************************************************************************************
 ** OUTILS D'ADMIN
 ***********************************************************************************************************/

#options input[type="submit"]{
  margin-top:15px;
}
#options th{
  width:250px;
}

#administration td,
#administration th{
  vertical-align:middle;
  padding-left:15px;
  padding-right:15px;
}

#taches-cron th{
  width:auto;
}
#taches-cron th,
#taches-cron td{
  padding-left:15px;
  padding-right:15px;
}

/************************************************************************************************************
 ** FIELD STATES
 ***********************************************************************************************************/

.form-control.is-saved,
.form-control.has-error,
.form-control.is-loading{
  padding-right:calc(1.5em + .75rem);
  background-repeat:no-repeat;
  background-position:right calc(.375em + .1875rem) center;
  background-size:calc(.75em + .375rem) calc(.75em + .375rem);
}
.form-control.is-saved{
  background-image:url(../img/check.svg);
}
.form-control.has-error{
  background-image:url(../img/warning.svg);
}
.form-control.is-loading{
  background-image:url(../img/loader.svg);
}



/************************************************************************************************************
 ** RÉCAP BÉNÉFICIAIRES
 ***********************************************************************************************************/

#beneficiaires-recap th{
  font-size:10px;
  vertical-align:middle;
  text-align:center;
  padding:5px 10px;
}
#beneficiaires-recap td{
  font-size:11px;
  vertical-align:top;
  text-align:center;
}
#beneficiaires-recap td.text-left{
  text-align:left;
  vertical-align:middle;
}
#beneficiaires-recap td.status{
  width:30px;
  text-align:center;
}
#beneficiaires-recap td .btn-status{
  font-size:8px;
  width:15px;
  height:15px;
  padding:0 2px;
  margin-bottom:5px;
}
#beneficiaires-recap th.separateur,
#beneficiaires-recap td.separateur{
  border-left:2px solid #555555 !important;
}

/************************************************************************************************************
 ** FICHE BÉNÉFICIAIRE
 ***********************************************************************************************************/

#fiche-list ul,
#years-list ul{
  margin:0 auto;
}
#fiche-list a,
#years-list a{
  font-weight:600;
  color:#2562af;
  display:flex;
  height:60px;
  align-items:center;
  justify-content:center;
}
#fiche-list a.active,
#years-list a.active{
  color:#03121f;
}

#fiche .card{
  border-top:0px solid transparent;
  border-top-left-radius:0;
  border-top-right-radius:0;
}
#fiche .card h1{
  font-size:24px;
}

#fiche-content span.read-only,
#years-content span.read-only{
  display:block !important;
  padding-top:calc(.375rem + 1px) !important;
  padding-bottom:calc(.375rem + 1px) !important;
}
#fiche-content .hidden input[type='text'],
#years-content .hidden input[type='text']{
  margin-top:5px;
}
#fiche-content .numQuestion,
#years-content .numQuestion{
  padding-left:5px;
  padding-right:5px;
}

#titre-fiche{
  float:left;
  margin-right:15px;
}

#statut-fiche{
  padding:15px;
  margin-top:5px;
}

.easy-autocomplete{
  width:100% !important;
}

/************************************************************************************************************
 ** MAIN CONTENT
 ***********************************************************************************************************/

.logged-out main{
  padding:50px !important;
}

/** GENERIC - FORMS **/

input:invalid {
  border-radius:3px;
}
input:focus:invalid {
  border-radius:3px;
}

.col-form-label{
  font-weight:600;
  color:#2562af;
  /*text-align:right;*/
  font-size:14px !important;
}
.col-form-label .badge{
  margin-right:15px;
  margin-bottom:15px;
  margin-top:4px;
  /*float:left;*/
}
table .col-form-label{
  padding-top:0px;
  padding-bottom:0px;
}
table .col-form-label .badge{
  margin-right:0px;
  margin-bottom:0px;
  margin-top:4px;
  float:none;
}
#form-row .col-form-label{
  text-align:left !important;
}
.col-form-label.label-accent-2{
  text-align:left;
}
.col-form-label.label-accent-2 i{
  margin-left:10px;
}
.col-form-label.sub-label{
  margin-right:15px;
}

.form-check-inline{
  margin-top: 10px;
}

.alert{
  margin:0 0 25px 0;
  padding-top:10px;
  padding-bottom:10px;
  width:100%;
}
.alert .alert-picto{
  font-size:36px;
  line-height:36px;
  width:45px;
}
.alert .alert-text p,
.alert .alert-text ul{
  margin-bottom:0;
}
.alert .alert-text strong{
  font-weight:600;
}

.alert-secondary{
  margin-bottom:0;
}
.alert-secondary .alert-text{
  margin-top:10px;
  width:calc(100% - 45px);
}

.modal-body .row{
  margin-bottom:5px;
}

.custom-file-label{
  right:15px !important;
  left:15px !important;
}

/** DATEPICKER **/

.xdsoft_datetimepicker.xdsoft_inline{
  width:100% !important;
}
.xdsoft_datetimepicker .xdsoft_datepicker{
  width:calc(100% - 8px) !important;
  margin:8px;
}
.xdsoft_datetimepicker .xdsoft_monthpicker{
  display:none;
}

/** TABLEAUX **/

.table{
	border-bottom:2px solid #DEE2E6;
	margin-top:0px !important;
  margin-bottom:0px !important;
}
.table th{
	vertical-align:middle;
}
.table thead th{
	border-top:0px solid transparent;
	text-transform:uppercase;
	padding-left:2em;
}
.table thead th:before{
	left:0.5em;
}
.table thead th:after{
	left:1em;
}
.table tbody td{
	vertical-align:middle;
}
.table tbody td strong{
  font-weight:600;
}
.table tfoot td.action,
.table thead th.action,
.table thead td.action,
.table tbody td.action{
	width:45px;
	padding:5px;
  text-align:right;
  vertical-align:middle;
}
.table tbody td.action .btn{
	width:35px;
}

.table#timetable td,
.table#timetable th,
.table#recaptable td,
.table#recaptable th,
.table#othertable td,
.table#othertable th,
.table#holidaytable td,
.table#holidaytable th,
.table#usermetadata td,
.table#usermetadata th,
.table#mileagetable td,
.table#mileagetable th,
.table#sickleavetable td,
.table#sickleavetable th,
.table#paidleavetable td,
.table#paidleavetable th{
  border:1px solid #DDDDDD;
  font-size:12px;
}
.table#timetable th,
.table#recaptable th,
.table#othertable th,
.table#usermetadata th,
.table#mileagetable th,
.table#sickleavetable th,
.table#paidleavetable th{
  text-align:center;
  vertical-align:middle;
  padding:5px;
}
.table#timetable .txt-left,
.table#othertable .txt-left,
.table#recaptable .txt-left,
.table#holidaytable .txt-left,
.table#usermetadata .txt-left,
.table#mileagetable .txt-left,
.table#sickleavetable .txt-left,
.table#paidleavetable .txt-left,
.table.recap-dashboard .txt-left{
  text-align:left;
}
.table#timetable .txt-right,
.table#recaptable .txt-right,
.table#othertable .txt-right,
.table#mileagetable .txt-right,
.table#usermetadata .txt-right,
.table#sickleavetable .txt-right,
.table#paidleavetable .txt-right,
.table.recap-dashboard .txt-right{
  text-align:right;
}

/** BORDURE EPAISSE **/

.table td.thick-border-top,
.table th.thick-border-top{
	border-top:2px solid #000000 !important;
}
.table td.thick-border-left,
.table th.thick-border-left{
	border-left:2px solid #000000 !important;
}
.table td.thick-border-right,
.table th.thick-border-right{
	border-right:2px solid #000000 !important;
}
.table td.thick-border-bottom,
.table th.thick-border-bottom{
	border-bottom:2px solid #000000 !important;
}

/** PAS DE BORDURE **/

.table.no-border-top,
.table thead.no-border-top,
.table tbody.no-border-top,
.table tfoot.no-border-top,
.table td.no-border-top,
.table th.no-border-top{
	border-top:0px solid transparent !important;
}
.table.no-border-left,
.table thead.no-border-left,
.table tbody.no-border-left,
.table tfoot.no-border-left,
.table td.no-border-left,
.table th.no-border-left{
	border-left:0px solid transparent !important;
}
.table.no-border-right,
.table thead.no-border-right,
.table tbody.no-border-right,
.table tfoot.no-border-right,
.table td.no-border-right,
.table th.no-border-right{
	border-right:0px solid transparent !important;
}
.table.no-border-bottom,
.table thead.no-border-bottom,
.table tbody.no-border-bottom,
.table tfoot.no-border-bottom,
.table td.no-border-bottom,
.table th.no-border-bottom{
	border-bottom:0px solid transparent !important;
}

#timetable td,
#othertable td,
#recaptable td,
#othertable td,
#usermetadata td,
#holidaytable td,
#sickleavetable td,
#paidleavetable td{
  text-align:center;
}
#timetable .new-row td,
#recaptable .new-row td,
#othertable .new-row td,
#holidaytable .new-row td,
#mileagetable .new-row td,
#usermetadata .new-row td,
#sickleavetable .new-row td,
#paidleavetable .new-row td{
  text-align:right;
}
#timetable td.date-cell,
#othertable td.date-cell,
#recaptable td.date-cell,
#mileagetable td.date-cell,
#usermetadata td.date-cell,
#holidaytable th.date-cell,
#holidaytable td.date-cell,
#sickleavetable th.date-cell,
#sickleavetable td.date-cell,
#paidleavetable th.date-cell,
#paidleavetable td.date-cell{
  font-weight:bold;
  background-color:#EEEEEE;
  width:80px;
  text-align:center;
}

#roles tbody tr.lvl1 td{
	font-weight:bold;
  font-style:italic;
}

#acces thead th,
#acces tbody th,
#acces tbody td{
	padding:5px 10px;
}

/** AUTRES **/

#roles_wrapper,
#utilisateurs_wrapper{
	width:100% !important;
}

/** FILTRES DATATABLES **/

#roles_wrapper .dataTables_filter,
#utilisateurs_wrapper .dataTables_filter{
  padding-right:15px;
}
#roles_wrapper .dataTables_filter label,
#utilisateurs_wrapper .dataTables_filter label{
  font-weight:bold;
  width:50%;
  text-align:right;
}
#roles_wrapper .dataTables_filter input,
#utilisateurs_wrapper .dataTables_filter input{
  width:70%;
}

/** PAGINATION DATATABLES **/

#roles_wrapper .pagination,
#utilisateurs_wrapper .pagination{
  justify-content: center;
  padding-top:15px;
  padding-bottom:15px;
}
#roles_wrapper .pagination li a,
#utilisateurs_wrapper .pagination li a{
  border-width:0px;
  border-style:solid;
  margin-left:1px;
}

/** EXPORTS **/
/*
#export-fiche-temps,
#export-fiche-frais{
  position: absolute;
}
*/

#export-btns{
  position: absolute;
  right: 15px;
  text-align: right;
  width: 50%;
}
