.calendar ul.dates {
 list-style-type : none;
 overflow-y : scroll;
 overflow-x : visible;
 padding-right : 0px;
 padding-left : 0px;
 position : relative;
}
.calendar:not(.noGrayout) ul.dates {
 max-height : 400px;
 mask-image : linear-gradient(black 80%, transparent 100%);
}
.calendar.noGrayout ul.dates {
 overflow-y : visible;
}
.calendar ul.dates li:before { display : none; }
.calendar ul.dates li:after {
 content : '';
 clear : both;
 display : block;
 margin-bottom : 10px;
}
.calendar ul.dates li.nowLine {
 border-top : 2px solid black;
 padding-top : 10px;
}
.calendar ul.dates li.cancelled {
 opacity : 0.5;
}
.calendar:not(.noGrayout) ul.dates li.passed {
 color : gray;
}
.calendar:not(.noGrayout) ul.dates li.passed a {
 color : gray;
}
.calendar .split {
 display : table-row;
}
.calendar .split .left {
 display : table-cell;
 min-height : 1em;
 border-right : 2px solid gray;
 margin-right : -2px;
 padding-right : 10px;
 font-size : 1.5em;
 white-space : nowrap;
}
.calendar .split .right {
 display : table-cell;
 padding-left : 10px;
 white-space : normal;
}
.calendar ul.dates .time:before { content : "\A"; white-space : pre; }
.calendar ul.dates .time:after { content : " Uhr"; }
.calendar ul.dates .title { font-weight : bold; }
.calendar ul.dates .location:before { content : "\A"; white-space : pre; }
.calendar ul.dates .location { font-style : italic; }
.calendar ul.dates .description:before { content : "\A"; white-space : pre; }
.calendar ul.dates .protokoll {
 background-image:url('PDF.png');
 background-repeat:no-repeat;
 background-size:15px 19px;
 padding-left:17px;
 margin-left:3px;
 font-weight:bold;
 line-height:25px;
}
.calendar ul.dates a {
 color : black;
 text-decoration : none;
 display : block;
 border-bottom : 0px none transparent !important;
}
.calendar ul.dates a:link { background-color : transparent; }
.calendar ul.dates a:visited { background-color : transparent; }
.calendar ul.dates a:hover { background-color : #AFA; }
.calendar ul.dates a:active { background-color : #0F0; }
.calendar form {
 vertical-align : top;
 display : inline-block;
 border-left : 1px solid gray;
 border-right : 1px solid gray;
 margin-right : -1px;
 padding : 3px;
}
.calendar p a {
 cursor : help;
}
.calendar a.button {
 margin-right : 10px;
}
.calendar .radioRow label {
 margin-right : 1em;
}
.calendar .filterList label {
 display : block;
}

@media handheld, screen and (max-width: 650px) {
 .calendar .split .left {
  font-size : 1.3em;
 }
}

@media handheld, screen and (max-width: 560px) {
 .calendar .split {
  display : block;
 }
 .calendar .split .left {
  display : block;
  border-right : 0px none transparent;
  font-size : 1.3em;
 }
 .calendar .split .right {
  display : block;
  padding-left : 0px;
 }
}
