#calendar_header {
  width: 99%;
  margin: auto;
}
#calendar_header .caption_left {
  width: 20%;
  text-align: left;
  float: left;
}
#calendar_header .caption {
  width: 34%;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  float: left;
}
#calendar_header .types_changer {
  width: 75%;
  font-size: 12px;
  font-weight: normal;
  text-align: right;
  float: right;
}
#calendar .td,
#calendar .td_empty,
#calendar .td_actday,
#calendar .td_selday,
#calendar .th {
  width: 14.285%;
  text-align: left;
  vertical-align: top;
  padding: 3px;
  padding-left: 5px;
  padding-top: 5px;
}
#calendar .month {
  width: 99%;
  align: left;
  margin: 8px;
  border-collapse: collapse;
  clear: both;
}
#calendar .tr_days {
  height: 32px;
  background-color: #f1f1f1;
  background-image: url("../../img/header_bg.gif");
  background-repeat: repeat-x;
}
#calendar .td {
  height: 100px;
  border: 1px solid #ddd;
  color: #555;
  background-color: #ffffff;
  float: left;
  overflow: auto;
}
#calendar .td_empty {
  height: 100px;
  border: 1px solid #ddd;
  color: #555;
  background-color: #f1f2f3;
  float: left;
  overflow: auto;
}
#calendar .td_actday {
  height: 100px;
  background-color: #666666;
  color: #fff;
  font-weight: bold;
  float: left;
  overflow: auto;
}
#calendar .td_actday a {
  color: #fff;
  font-weight: bold;
}
#calendar .td_actday > .td_d_h {
  color: #fff;
  background-color: #666666;
}
#calendar .td_actday > .td_acthour_d_h {
	color: #fff;
  background-color: #333333;
}
#calendar .td_selday {
  height: 100px;
  background-color: #ffffcc;
  border: 1px;
  color: #555;
  font-weight: bold;
  float: left;
  overflow: auto;
}
#calendar .th {
  height: 26px;
  text-align: center;
  align: left;
  font-weight: bold;
  padding-top: 3px;
  padding-bottom: 3px;
  padding: 5px;
  color: #fff;
  float: left;
}
#calendar .calendarietto {
  float: left;
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  #calendar .calendarietto {
    width: 33.333%;
  }
}
#calendar .td_small,
#calendar .td_small_empty,
#calendar .td_small_actday,
#calendar .td_small_selday {
  width: 14%;
  text-align: right;
  vertical-align: top;
  padding: 1px;
  padding-right: 3px;
}
#calendar .year_container {
  width: 100%;
  align: center;
  margin-top: 8px;
  border: 1px solid #ccc;
  border-collapse: collapse;
}
#calendar .month_small {
  width: 96%;
  align: center;
  border: 1px solid #ccc;
  margin-top: 5px;
  border-collapse: collapse;
}
#calendar .tr_small_days {
  background-color: #f1f1f1;
  background-image: url("../../img/header_bg.gif");
  background-repeat: repeat-x;
}
#calendar .td_small {
  border: 1px solid #ddd;
  color: #555;
  background-color: #ffffff;
}
#calendar .td_small_empty {
  border: 1px solid #ddd;
  color: #555;
  background-color: #f1f2f3;
}
#calendar .td_small_actday {
  background-color: #666666;	/*#0466ba;*/
  color: #fff;
  font-weight: bold;
}
#calendar .td_small_actday a {
  color: #fff;
  font-weight: bold;
}
#calendar .td_small_selday {
  background-color: #ffffcc;
  border: 1px;
  color: #555;
  font-weight: bold;
}
#calendar .th_small {
  text-align: center;
  align: center;
  font-weight: bold;
  padding-top: 1px;
  padding-bottom: 1px;
  padding: 2px;
  color: #fff;
}
#calendar .table_navbar {
  border: 0px;
  width: 100%;
  height: 70px;
  clear: both;
}
#calendar .tr_navbar {
  width: 34%;
  background-color: #ffffff;
  height: 60px;
  float: left;
  padding-top: 4px;
}
#calendar .tr_navbar_left {
  width: 33%;
  background-color: #ffffff;
  height: 60px;
  padding-left: 7px;
  text-align: left;
  float: left;
  padding-top: 4px;
}
#calendar .tr_navbar_right {
  width: 33%;
  background-color: #ffffff;
  height: 60px;
  padding-right: 7px;
  text-align: right;
  float: left;
  padding-top: 4px;
}
#calendar .month .tr_navbar_left {
  width: 70%;
  background-color: #ffffff;
  height: 60px;
  padding-left: 7px;
  text-align: left;
  float: left;
  padding-top: 4px;
}
#calendar .month .tr_navbar {
  width: 30%;
  background-color: #ffffff;
  height: 60px;
  float: left;
  padding-top: 4px;
}
#calendar .month .tr_navbar_right {
  width: 33%;
  background-color: #ffffff;
  height: 60px;
  padding-right: 7px;
  text-align: right;
  float: left;
  padding-top: 4px;
  display: none;
}
@media (min-width: 768px) {
  #calendar .month .tr_navbar_right {
    display: inline;
  }
  #calendar .month .tr_navbar {
    width: 34%;
  }
  #calendar .month .tr_navbar_left {
    width: 33%;
  }
}
#calendar .day_navigation .tr_navbar_left {
  width: 70%;
  background-color: #ffffff;
  height: 60px;
  padding-left: 7px;
  text-align: left;
  float: left;
  padding-top: 4px;
}
#calendar .day_navigation .tr_navbar {
  width: 30%;
  background-color: #ffffff;
  height: 60px;
  float: left;
  padding-top: 4px;
}
#calendar .class_form {
  padding: 0px;
  margin: 0px;
}
#calendar .form_select {
  font-size: 12px;
}
#calendar .form_button {
  font-size: 12px;
}
#popup_calendario {
  width: 90%;
  align: center;
  padding: 10px;
  position: absolute;
  left: 5%;
  transform: translate(-5%,0);
  top: 5%;
  z-index: 1000;
  background-color: white;
  -webkit-border-radius: 10px 10px 10px 10px;
  border-radius: 10px 10px 10px 10px;
  -webkit-box-shadow: 0px 0px 15px 0px #000000;
  box-shadow: 0px 0px 15px 0px #000000;
}
@media (min-width: 992px) {
  #popup_calendario {
    width: 50%;
    left: 50%;
    transform: translate(-50%,0);
  }
}
#oscuratore {
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.7);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 900;
}
#calendar .day {
  width: 100%;
  border: 1px solid #ccc;
  padding: 0px;
  border-collapse: collapse;
}
#calendar .day_navigation {
  width: 100%;
  border: 1px solid #ccc;
  padding: 0px;
  margin-top: 3px;
  margin-bottom: 8px;
  border-collapse: collapse;
  clear: both;
}
#calendar .td_acthour_d_h {
  float: left;
  width: 20%;
  background-color: #ffffcc;
  border: 1px solid #ccc;
  padding: 1px;
  text-align: center;
}
#calendar .td_acthour_d {
  float: left;
  width: 80%;
  background-color: #ffffcc;
  border: 1px solid #ccc;
  padding: 1px;
  padding-left: 5px;
  text-align: left;
  lear: right;
}
#calendar .td_d_h {
  float: left;
  width: 20%;
  background-color: #f1f2f3;
  border: 1px solid #ccc;
  padding: 1px;
  text-align: center;
}
#calendar .td_d {
  float: left;
  width: 80%;
  background-color: #ffffff;
  border: 1px solid #ccc;
  padding: 1px;
  padding-left: 5px;
  text-align: left;
  lear: right;
}
