.kalender,
.kalender>* {
	padding: 0;
	margin: 0;
	border: 0;
	outline: 0;
	border-spacing: 0;
}

.grid-cal {
	display: grid;
	column-gap: 10px;
	min-height: calc(100vh - 70px - 120px - 70px);
	grid-template-columns: 120px 1fr;
	grid-template-rows: auto;
	padding: 0;
}

.grid-cal-legende {
	grid-column: 1;
	grid-row: 1;
	/* border: solid red 1px; */
	/* Legende im Browser in Grid rechts bzw. links auftauchen lassen */
}

.leg-sticky {
	position: sticky;
	top: 89px;
	font-size: 12pt;
	color: black;
	padding: 5px;
	background: white;
}

@media (min-width: 900px) {

	.leg-sticky {
		top: 165px;
	}

}


.leg-gruppe {
	display: flex;
	flex-wrap: wrap;
	justify-content: start;
	align-items: center;
	width: 100%;
	min-height: 30px;
	/* border: solid red 1px; */
}

.leg-text {
	display: inline-block;
	/* width: 100%; */
	box-align: center;
	/* border: solid red 1px; */
}



.grid-cal-main {
	grid-column: 2;
	grid-row: 1;
}

.leg-f {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background-color: #90ee90;
	border: solid black 2px;
}

.leg-b {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background-color: #ffb6c1;
	border: solid black 2px;
}

.leg-bl {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background-color: rgb(130, 130, 130);
	border: solid black 2px;
}

.leg-f-zu-b {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background: linear-gradient(-225deg,
			#90ee90 0% 50%,
			#ffb6c1 50% 100%);
	border: solid black 2px;
}

.leg-b-zu-f {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background: linear-gradient(-225deg,
			#ffb6c1 0% 50%,
			#90ee90 50% 100%);
	border: solid black 2px;
}

.leg-spacer {
	width: calc(100% - 4px);
	height: 2px;
	background: black;
	margin-left: 2px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.kalender {
	width: 100%;
	border: solid black 0.30em;
	border-collapse: collapse;
	table-layout: fixed;
}

.kalender caption {
	margin-bottom: 5px;
	font-size: 16pt;
	color: black;
	font-weight: 800;
}

.cal-month {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	column-gap: 20px;
}

.cal-month>div {
	max-width: 250px;
	margin-bottom: 20px;
	background: rgb(256, 256, 256);
	padding: 15px 10px 10px 10px;
}

.kalender thead tr th {
	height: 30px;
	border: solid black 0.10em;
	border-bottom: solid black 0.20em;
	font-size: 14pt;
	color: white;
	background: #995826;
	/* background: rgb(180,180,180); */
}

.kalender tbody tr td {
	height: 30px;
	font-size: 14pt;
	border: solid black 0.10em;
	text-align: center;
}




.cal-f {
	background-color: #90ee90;
	color: #000 !important;
}

.cal-b {
	background-color: #ffb6c1;
	color: #000 !important;
}

.cal-bl {
	background-color: rgb(130, 130, 130);
	color: #000 !important;
	text-decoration: line-through;
}

.cal-aus {
	color: transparent;
	background: #fff;
}

.cal-leer {
	background: #fff;
}

.cal-f-zu-b {
	background: linear-gradient(-225deg,
			#90ee90 0% 50%,
			#ffb6c1 50% 100%);
}

.cal-b-zu-f {
	background: linear-gradient(-225deg,
			#ffb6c1 0% 50%,
			#90ee90 50% 100%);
}
