/*-------Code pour format ecran ou general---------*/

body  {
  width :100% ;
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-size: small;
  margin: 0;
  padding: 0;
}

.global {
  max-width :1200px ;
  margin :auto ;
  padding :5px 5px;
  background :#ffffff;
}

.globalcalendar {
  margin :auto ;
  padding :5px 5px;
  background :#ffffff;
}


/*gestion des bouttons */
.btn{
  display: inline-block;
  color: white;
  padding: 6px 12px;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  touch-action: manipulation;
  user-select: none;
  border: 1px solid transparent;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-radius: 4px;
}
.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}
.btn-default{
  color: #000;
  background-color: #fff;
  border-color: #ccc
}
.btn-info{
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da
}
.btn-done{
  color: #b3b3b3;
  background-color: #b3b3b3;
  border-color: #b3b3b3;
  /*cursor:not-allowed;*/
}

.btn-td{
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
  width:50px;
}
.btn-tdempty{
  color: #5a5a5a;
  background-color: #b3b3b3;
  border-color: #b3b3b3;
  width:50px;
  /*cursor:not-allowed;*/
}

.btn-warning{
  background-color: #e7d72c; /* red */
}
.btn-danger{
  background-color: #bf2346; /* red */
}
.btn-success{
  background-color: #149530; /* red */
}

.btnLabel{
  display:inline-block;
}

.btnLabelShort{
  display:none;
}
button.jalon{
  width:20px;
}

/* header */
header {
    width :100% ;
}
.headcontainer {
  display : flex;
  flex-direction: row;
}
.cellnav {
  flex : 1 1 2px;
  /*margin: -5px 0px -10px;*/
  text-align: left;
}
.cellnav img{
  width : 30px;
}
.cellnav a{
  line-height: 30px;
}
.cellimage {
  flex : 1 1 2px;
  /*margin: -5px 0px -10px;*/
  text-align: right;
}
.celltitle {
  flex : 3 3 2px;
}
.headcontainer h1 {
  color: #666666;
  font-weight: 300;
  /*padding: 15px 25px;*/
  line-height: 30px;
  font-size: 2em;
  text-align:center;
  margin: 0px -25px 0px;
}

.menu-gauche {
  width :20% ;
  float :left ;
}


/* contenu principal */
.contenu {
  padding-top: 20px;
  /*padding: 20px;*/
  width :100% ;
  box-shadow: 0 5px 10px black;
}
.contenup {
  padding: 20px 1em;
  /*padding: 20px;*/
  box-shadow: 0 5px 10px black;
  border-radius: 1em;
}

.table_topbutton {
  margin: 0;
  display : flex;
  justify-content:space-between;
  /*padding: 20px;*/
}

table.table_list {
  width: 100%;
  min-width: 340px;
  /*max-width: 800px;*/
  border-collapse: collapse;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;
  margin-bottom: 2em;
}
table.table_list th, td {
  border-bottom: 1px solid rgb(92, 90, 102);
  padding-top: 4px;
  padding-bottom: 4px;
}

th {
  height: 30px;
  text-align: left;
  background-color: rgb(238, 238, 238)
}

table.table_list th.tdcenter {
  text-align: center;
}
th.txtvertical {
  white-space: nowrap;
  position: relative;
  background-color:inherit;
  height:80px;
}

th.txtvertical > div {
  /* place div at bottom left of the th parent */
  position: absolute;
  bottom: 10px;
  left: 10px;
  /* Make sure short labels still meet the corner of the parent otherwise you'll get a gap */
  text-align: left;
  /* Move the top left corner of the span's bottom-border to line up with the top left corner of the td's border-right border so that the border corners are matched
   * Rotate 315 (-45) degrees about matched border corners */
  /*transform: 
    translate(calc(100% - var(--table-border-width) / 2), var(--table-border-width))
    rotate(315deg);*/
  transform: rotate(315deg);
  transform-origin: 0% calc(100% - var(--table-border-width));
  width: 100%;
}
th.txtvertical > div > span {
  /* make sure the bottom of the span is matched up with the bottom of the parent div */
  position: absolute;
  bottom: 0;
  left: 0;
  border-bottom: var(--table-border-width) solid gray;
}

/*.contenup tr:hover {background-color: #e6e6e6;}*/

table.table_list td {
  text-align: left;
  vertical-align: top;
}

table.table_list td.tdcenter {
  text-align: center;
  max-width: 60px;
}

table.table_list td a{
  text-decoration :none;
  font-weight : bold;
  color :rgb(43, 22, 115)
}

table.tablecalendar {
  min-width: 340px;
  border-collapse: collapse;
  margin: auto;
  margin-top: 1em;
}

table.tablecalendar td.tdcenter {
  border-left: 1px solid rgb(223, 223, 224);
  text-align: center;
  max-width: 60px;
  width:28px;
}

#sidebar-droite
{
    width :20% ;
    float :left ;
}

.modal{
  display:none;
  position:fixed;
  z-index:1;
  top:0;
  /*right:auto;
  bottom:auto;*/
  left:0;
  width : 100vw;
  height : 100vh;
  overflow: auto;
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

.modal-dialog{
  background-color: #fefefe;
  margin: 5% auto; /* 15% from the top and centered */
  display : flex;
  align-items : center;
  justify-content: center;
  /*left:auto;
  margin-right:auto;
  margin-left:auto*/
  max-width: 40em;
  border-radius: 10px;

}

.modal-content{
  width : 100%;
  box-shadow: 0 5px 15px rgba(0,0,0,.5);
}

.modal-header{
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
  display : flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}

.modal-title {
margin: 0;
line-height: 1.42857143;
font-size: 18px;
font-weight: 500;
text-align: left;
}
.modal-date {
  margin: 0;
  line-height: 1;
  font-size: 8px;
  font-weight: 200;
  text-align: left;
  }

 button.close {
     padding: 0;
     cursor: pointer;
     background: 0 0;
     border: 0;
 }
 .close {
     float: right;
     font-size: 21px;
     font-weight: 700;
     line-height: 1;
     color: #000;
     text-shadow: 0 1px 0 #fff;
     filter: alpha(opacity=20);
     opacity: .2;
 }
 .close:hover,
.close:focus {
  opacity: .7;
  text-decoration: none;
  cursor: pointer;
}

  .modal-body {
    position: relative;
    padding: 15px;
  }

  .modal-body .form-group {
    margin-bottom: 15px;
  }

  .modal-body .form-group label {
    /*display: inline-block;*/
    max-width: 100%;
    margin-bottom: 5px;
    font-weight: 700;
  }

  .modal-body .form-group .form-control {
    /*display: block;
    width: 95%;*/
    /*height: 34px;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin: 0px;
  }

  .modal-body .form-group textarea{
    display: block;
    width: 95%;
    height : 4em;
  }

  .modal-body .form-group2 {
    margin-bottom: 15px;
  }
  .modal-body .form-group2 label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
    font-weight: 700;
  }

  .modal-body .form-group2 .form-control {
    display: block;
    width: 95%;
    /*height: 34px;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin: 0px;
  }
  .modal-body .form-group2 textarea{
    height : 12em;
  }


  .modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
  }

  footer  {
      width :100%
  }

  .listechoix{
    text-align: center;
    color: white;
  }
  .listechoix a {
    text-decoration: none;
    color: #58aef7;
  }

/* css relatif aux fiches */
/*div principal du flex */
.fichedataflex {
  padding:0px 5px 0px;
}

.fichedata {
  width: 100%;
  margin: auto;
  margin-top: 1em;
}

.fichedatatitle {
  width: 100%;
  margin: 0;
  display: flex;
  justify-content: space-between;
  font-size: large;
  font-weight: 400;
}
.fichedatatable {
  display: none;
}

.fichedata table{
  width: 100%;
  border-top: 0px solid;
  border-bottom: 0px solid;
  border-left: 0px solid;
  border-right: 0px solid;
  color: #22436b;
  border-color: rgb(105, 105, 105);
  background: #ffffff;
  padding: 0px;
}

.fichedata table tr{
  border-color: rgb(105, 105, 105);
  border-bottom: 0px solid;
}

.fichedata table tr td.title{
  color: #000;
  /*background: #eee8e8;*/
  font-weight: 400;
}

.fichedatacollaps {
  background: #2c3799;
  font-weight: 400;
  width: 90%;
  display: inline-block;
  color: white;
  padding: 6px 12px;
  text-align: left;
  vertical-align: middle;
  text-decoration: none;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  touch-action: manipulation;
  user-select: none;
  border: 1px solid transparent;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-radius: 0px;
}

/*------Code pour format de smartphone-----*/
@media screen and (max-width: 767px)
{
  .global {
    font-size: x-small;
  }

  .menu-gauche {
    width :100% ;
  }

  .btnLabel{
    display:none;
  }
  .buy, .unbuy {
    width: 30px;
  }
  .closed, .unclosed {
    width: 30px;
  }
  .btnLabelShort{
    display:inline-block;
  }

  .headcontainer h1 {
    font-size: 1.7em;
  }
  
  td.tdsite {
    display: none;
  }

  th.tdsite {
    display: none;
  }
  #contenufiche {
    flex-direction: column;
  }
}
