/*!
 * FeWo-Mölln.de
 * Copyright 2025 Thomas Deike
 * Copyright 2025 Dokumentation-Bau.de
 */

.calendar-section {
  margin-bottom: 20px; }

.calendar, .calendar_weekdays,
.calendar_content {
  max-width: 410px; }

.calendar {
  /*float: left;*/
  margin: auto;
  min-width: 320px;
  font-weight: 400;
  background: #fff;
  padding: 10px;
  -webkit-box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.23);
  -moz-box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.23);
  box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.23);
}

.calendar_weekdays {
  color: #aaa;
  font-weight: 300; }

.calendar_weekdays div {
  display: inline-block;
  vertical-align: top;
  color: #000;
  font-weight: 700; }

.calendar_content, .calendar_weekdays, .calendar_header {
  position: relative; }

.calendar_content:after, .calendar_weekdays:after, .calendar_header:after {
  content: ' ';
  display: table;
  clear: both; }

.calendar_weekdays div, .calendar_content div {
  /*border: 1px dotted #999;*/
  width: 14.28571%;
  height: 38px;
  line-height: 39px;
  overflow: hidden;
  text-align: center;
  background-color: transparent; }

.calendar_content div {
  float: left;
  margin-left: 0px;
  margin-top: 1px;
  border: 0px none transparent;
  border-radius: 0;
}
.calendar_content div.selected:hover {
  background-color: rgba(222, 255, 2, 0.4);
}
.calendar_content div.past-date:hover {
  cursor: not-allowed;
}
.calendar_content div:hover {
  border: none;
  background-color: rgba(222, 255, 2, 0.2);
  /*line-height: 68px;*/
  cursor: pointer;
}

.calendar_content div.today:hover {
  border: 2px solid #f00;
  /*line-height: 68px;*/
  background-color: rgba(222, 255, 2, 0.2);
  cursor: pointer;
  font-weight: 700;
  font-size: 18px;
}

.calendar_content div.blank:hover {
  cursor: default;
  border: none;
  background-color:transparent;
}

.calendar_content div.past-date {
  cursor: initial;
  color: #d5d5d5;
  
}
.calendar_content div.day-blocked-full {
  cursor: initial;
  color: #aaaaaa;
  background-color: rgba(255, 0, 0, 0.2);
}
.calendar_content div.day-blocked-start {
  background: linear-gradient(90deg, transparent 0%, transparent 70%, rgba(255, 0, 0, 0.2) 80%, rgba(255, 0, 0, 0.2) 100%);
  border: 0px none transparent;
}
.calendar_content div.day-blocked-start:hover {
  background-color: rgba(222, 255, 2, 0.2);
}
.calendar_content div.day-blocked-end {
  background: linear-gradient(90deg, rgba(255, 0, 0, 0.2) 0%, rgba(255, 0, 0, 0.2) 20%, transparent 30%, transparent 100%);
  border: 0px none transparent;
}
.calendar_content div.day-blocked-end:hover {
  background-color: rgba(222, 255, 2, 0.2);
}
.calendar_content div.day-blocked-full:hover {
  cursor: not-allowed;
}

.calendar_content div.today {
  font-weight: 700;
  font-size: 18px;
  border: 2px solid #f00;
}

.calendar_content div.selected {
  background-color: rgba(123, 200, 121, 0.2);
  /*rgba(170, 170, 176, .5) #aaaab0*/
  border: 0px none transparent;
}

.calendar_header {
  width: 100%;
  text-align: center;
  position: relative;
  height: 55px;
  display: table;
  vertical-align: middle; }

.calendar_header h2 {
  margin-top: 15px;
  padding: 0;
  font-weight: 700;
  font-size: 18px;
  color: #000 !important;
  text-transform: uppercase; }

button.switch-month {
  background-color: transparent;
  padding: 0;
  outline: none;
  border: none;
  height: 40px;
  width: 40px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #cccccc;
  -webkit-transition: color .2s;
  -o-transition: color .2s;
  transition: color .2s; }
  button.switch-month.switch-left {
    left: 0; }
  button.switch-month.switch-right {
    right: 0; }

button.switch-month:hover {
  color: #bd83ce; }

button.switch-month:active {
  background-color: transparent; }
