body {
	font-family: Georgia, serif;
	background: #f4f4f4;
	margin: 0;
	padding: 20px;
}

.container {
	max-width: 1000px;
	margin: auto;
}

hr.pointedStyle {
	background-color: #88f1d2;
	border-top: 2px dotted #8c8b8b;
}

.header0-row {
	display: grid;
	grid-template-columns: repeat(5, 1fr) repeat(1, 1fr) repeat(1, 1fr) repeat(3, 1fr) repeat(4, 1fr) repeat(3, 1fr);
	text-align: center;
	background: #ccc;
	margin-bottom: 2px 0;
	border: 2px solid #999;
	border-bottom: 0px solid #999;
	position: sticky;
	top: 0;
	z-index: 10;
}

.header0-row div{
	padding: 5px 10px 5px 10px;
	font-weight: bold;
	background-color: #ccc;
	border: 1px solid #666;
	text-align: center;
}


.header-row {
	display: grid;
	background: #ccc;
	grid-template-columns: repeat(5, 1fr) repeat(12, 1fr);
	
	text-align: center;
	margin-bottom: 2px 0;
	border: 2px solid #999;
	border-top: 0px solid #999;
	position: sticky;
	top: 0;
	z-index: 10;
}
	
.header-row div:not(.header1a-row){
	padding: 5px 10px 10px 5px;
	/* font-weight: bold; */
	background-color: #ddd;
	border: 1px solid #666;
	border-bottom: 1px solid #ccc;
	text-align: left;
	writing-mode: vertical-rl;
	transform: scale(-1);
}

.header1a-row {
	display: grid; 
	grid-column: span 5; 
	font-size: 3em; 
	transform: scale(1); 
	writing-mode: horizontal-tb; 
	text-align: center; 
	align-items: center;
}

.button-row {
	/*display: grid;*/
	grid-template-columns: repeat(1, 1fr) repeat(4, 1fr) repeat(12, 1fr);
	text-align: center;
	align-items: center;
	margin-bottom: 10px;
	opacity: 1;
	background: #d9d9d9;
	border-radius: 20px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	cursor: pointer;
	transition: all 0.3s;
	font-size: 0.9em;
}


.button-row div {
	padding: 7px 0;
	border-left: 2px solid #ccc;
}

.button-row div.buttontitel  {
	grid-column: span 4;
	text-align: left;
	border: 0px;
	font-family: Georgia, serif;
	font-size: 1.2em;
	margin: 0;
	padding: 3px;
}

.button-row div.buttonkapitel  {
	grid-column: span 1;
	text-align: left;
	border: 0px;
	font-family: Georgia, serif;
	font-size: 1.2em;
	margin: 0;
	padding: 3px 3px 3px 15px;
}

.button-row:first-child div:first-child,
.button-row:first-child div:last-child {
	border-radius: 30px 0 0 30px;
}

.button-row:nth-child(odd):not(.titel-row) {
	background: #efe8ec;
}

.button-row:hover {
	transform: scale(1.03, 1.2);
	background: #f0ffff;
}

.header-row div:hover:not(.empty) {
	transform: translate(-202px, 0px) rotate(0.25turn) scale(2.4, 2.4) ;
	transition-duration: 0.5s;
	transition-delay: 0.1s;
	writing-mode: sideways-lr;
}



.title-row {
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
	background: #e0e0e0;
	border-radius: 10px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	cursor: pointer;
}

.titel-row div {
	grid-column: span 17;
	border: none;
	text-align: left;
	font-family: Georgia, serif;
	font-weight: bold;
	font-size: 1.3em;
	padding: 10px 10px;
}


.mastertitel {
	display: grid;
	margin-top: 20px; 
	font-size: 1.5em; 
	color: #DDDDDD; 
}

.subtitel1 {					/* rötliche Subtitel */
	background-color: #FFd9d9; 
	font-size: 1.1em; 
}
.subtitel2 {					/* grünliche Subtitel */
	background: #d9FFd9; 
	font-size: 1.1em; 
}
.subtitel3 {					/* bläuliche Subtitel */
	background-color: #ddccFF; 
	font-size: 1.1em; 
}

.button-row:not(.mastertitel){
	display: none;
}
	
.popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(200,200,200,0.7);
	justify-content: center;	/* horizontale Ausrichtung des Popup-Fensters */
	align-items: center;		/* vertikale Ausrichtung des Popup-Fensters */
	z-index: 1000;
	display: none;
	transform: scale(0);
	opacity: 0;
	transition: all 0.3s allow-discrete;
}

 
.popup-content {
	background: white;
	padding: 20px;
	border-radius: 10px;
	max-width: 80%;
	max-height: 80%;
	overflow-y: auto;
	text-align: left;		/* Dies ist entscheidend für die Ausrichtung im Popup! */
	/*transition: all 0.3s allow-discrete;*/
}


.popup-content img {
	width: 100%;
	height: auto;
	margin: 10px 0;

}
.popup-content h3 {
	margin-top: 30px;
	margin-bottom: 7px;
	padding: 6px;
	background-color: rgb(253, 255, 196);
}
.popup-content div {
	margin-left: 20px;
	padding: 0px;
	
}


.close-btn {
/*	justify-content: right;
	align-items: right;*/
	text-align: right;
	position: sticky;
	top: 10px;
	right: 10px;
	font-size: 20px;
	font-weight: bold;
	cursor: pointer;
}

.popup-content button {
	margin-top: 10px;
	padding: 10px 20px;
	border: none;
	background: #2196f3;
	color: white;
	border-radius: 5px;
	cursor: pointer;
	text-align: center;
}

