#RECHNUNGSERFASSUNG {overflow: visible !important}

.cal_backdrop{position: fixed;top: 0;left: 0;bottom: 0;right: 0;background-color: #eee; opacity: 0; cursor: not-allowed; z-index: 29; }
/*--------------KALENDER ------------------------*/
.cal_calendarOuter {display: none;  z-index: 100}
.cal_calendar{left: 0;top: 85px; min-width: 290px;width: 100%; position: absolute;  z-index: 1000; background-color: #fff; max-width: 268px;padding: 6px;box-shadow: 0 0 1rem 0 #d7dce1; border-radius: 4px}

.cal_navigation, .cal_thead {margin: 0;padding: 0}
.cal_navigation {
  display: flex;
  height: 36px;
  align-items: center;
  text-align: center;
}

.cal_navigation button {
  flex: 1 1 20%;
  height: 100%;
  background: #eee;
  border: none;
  margin: 2px;
  cursor: pointer;
  font-size: 1.2em;
  transition: background 0.3s;
}

.cal_navigation button:focus {
  outline: 2px solid #005fcc;
  outline-offset: 2px;
}

.cal_navigation button:hover {
  background: #ccc;
}

.cal_navigation .current {
  flex: 1 1 60%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  font-weight: bold;
  font-size: 1.2em;
}

.head.current {font-size: 16px;font-weight: bold;padding-top: 8px; margin: 4px}
.cal_thead li {width: 14.285%;border: 2px solid #fff;font-size: 14px; text-transform: uppercase; font-weight: bold;text-align: center; float: left; display: table;padding-top: 3px}
.cal_body {clear: both;overflow: hidden}
.cal_body .header {margin-top: 8px}
.cal_body ul {clear: both; padding: 0; margin: 0; overflow: hidden}
.cal_body ul li {width: 12.285%;margin: 0 1%;height: 26px;border: 2px solid #333;text-transform: uppercase;text-align: center;float: left;display: table;padding:0;font-size: 13px;font-weight: bold;}
.cal_body ul li button {background-color: rgba(0,0,0,0); border: none; outline: 0; padding: 4px; width: 100%}
.cal_body ul li button:focus-visible {color: #fff; background-color: #ed1c24}
.cal_body ul li:focus-visible {opacity: 1}
.cal_week {margin: 3px 0 !important}
.cal_day {opacity: 0.9; cursor: pointer} 
.cal_day:hover{opacity: 0.8} 
.cal_day.fullyBooked {opacity: 1; border: 2px solid #b00;color: #b00}
.cal_day.freeCapacity {opacity: 1; cursor: pointer; color: #000000 !important; border: 2px solid #000 !important;}
.cal_day.freeCapacity.active {background-color: #333; color: #fff}
.cal_day.today.active {background-color: #666; color: #fff}  

.cal_legend {margin: 20px 7px; font-size: 12px}
.cal_legend ul {padding: 0}
.cal_legend li {display: inline-block; margin: 0 10px 5px 0}
.cal_legend li span {display: inline-block; vertical-align: middle}
.cal_legend li span.border {width: 20px; height: 20px; margin-right: 5px}
.cal_legend li:nth-child(1) span.border {border: 2px solid #333; opacity: 0.3} 
.cal_legend li:nth-child(2) span.border {border: 2px solid #b00} 
.cal_legend li:nth-child(3) span.border {border: 2px solid #333} 
.cal_day.noshow{opacity: 0; cursor: default}