@charset "utf-8";
*{
padding: 0px;
margin: 0px;
box-sizing: border-box;
}
/***************************************************Basis********************************/
html{
background: black;
color: black;
font: normal normal 400 16px/18px Palatino, Arial, Tahoma, Helvetica, sans-serif;
height: 100%;
}
body{
height: 100%;
display: grid;
grid-template-columns: auto auto auto auto auto;
grid-template-rows: 80px 40px 1fr 30px;
overflow: hidden;
}
header{
width: 100%;
grid-column-start: 1;
grid-column-end: 6;
grid-row-start: 1;
grid-row-end:  1;
display:flex;
}
nav{
width: 100%;
overflow: visible;
grid-column-start: 1;
grid-column-end: 6;
grid-row-start: 2;
grid-row-end:  2;
display: grid;
grid-template-columns: auto auto auto auto auto;
grid-template-rows: 100%;
grid-auto-flow: row;
z-index: 1;
}
main.m2021, main.m2020, main.m2019, main.substart, main.mpic{
grid-column-start: 1;
grid-column-end: 6;
grid-row-start: 3;
grid-row-end:  4;
background: gray;
overflow: auto;
display: flex;
flex-flow: row wrap;
width: 100%;
justify-content: center;
background-repeat: no-repeat;
background-position: center;
background-size: cover;
z-index:0;
}
main.m2021{
background-image: url("../Ressourcen/m2021.jpg");
}
main.m2020{
background-image: url("../Ressourcen/m2020.jpg");
}
main.m2019{
background-image: url("../Ressourcen/m2019.jpg");
}
main.substart{
background-image: url("../Ressourcen/e-klo.jpg");
}
footer{
width: 100%;
grid-column-start: 1;
grid-column-end: 6;
grid-row-start: 4;
grid-row-end:  5;
display:flex;
}
article{
align-content: flex-start;
flex-flow: column wrap;
flex: 0 1 auto;
display: flex;
}
article.Vid{
align-content: flex-start;
flex-flow: column wrap;
flex: 0 1 auto;
display: flex;
background-color: black;
border-radius: 15px 15px 15px 15px;
}
section{
flex: 0 1 auto;
width: 100%;
}
/***************************************************Überschriften********************************/
h1, h2, h3{
flex: 1 1 auto;
align-self: center;
text-align: center;
}
h1.Kopflinie{
font: normal normal 800 36px/40px Georgia, Arial, Tahoma, Helvetica, sans-serif;
color: #ffffff;
text-shadow: 2px 2px 4px #000000;
}
h2{
font: normal normal 600 24px/30px Palatino, Arial, Tahoma, Helvetica, sans-serif;
color: #000000;
text-shadow: 2px 2px 4px #ffffff;
padding-left: 40px;
padding-top: 20px;
padding-bottom: 25px;
}
h2.Vid{
font: normal normal 400 24px/30px Palatino, Arial, Tahoma, Helvetica, sans-serif;
color: #ffffff;
text-shadow: 2px 2px 4px #000000;
padding-left: 0px;
padding-top: 5px;
padding-bottom: 5px;
}
h3{
font: normal normal 600 20px/24px Palatino, Arial, Tahoma, Helvetica, sans-serif;
color: #000000;
text-shadow: 2px 2px 4px #ffffff;
padding-top: 20px;
padding-bottom: 18px;
}
/***************************************************DIV*******************************/
div.Audio{
	display:flex;
	width:100%;
	align-self:center;
	align-content:center;
	justify-content:center;
}
div.Kopflinie{
flex: 1 1 auto;
display: flex;
background-image: url("../Ressourcen/Logo.png");
background-repeat: no-repeat;
background-position: center;
background-size: cover;
overflow: hidden;
height:80px;
}
div.Menu_unten{
width:100%;
display:flex;
flex-direction: row;
justify-content: space-around;

}
div.Menu_Anmeldung{
width:100%;
display:flex;
flex-direction: row;
justify-content: flex-end;
}
div.Theater{
flex: 1 1 auto;
height: auto;
min-width: 200px;
max-width: 500px;
margin: 5px;
border-radius: 10px 10px 10px 10px;
border: 1px solid #333;
background-image: url("../Ressourcen/icons-192b.png"), linear-gradient(180deg, #fff, #ddd 40%, #ccc);
background-position-x: 0px, 0px;
background-position-y: 0px, 0px;
background-size: auto;
background-repeat: no-repeat;
}
div.Theater_text{
height: auto;
width: 85%;
margin-left: auto;
margin-right: auto;
}
div.VidTheater{
flex: 0 1 auto;
display: flex;
height: inherit;
min-width: 200px;
max-width: 500px;
padding: 5px;
border-radius: 15px 15px 15px 15px;
border: 1px solid #333;
align-self: center;
justify-content: center;
align-items: center;

}
div.login{
flex-direction: row;
flex: 0 1 auto;
justify-content: center;
align-content: center;
align-self: center;
}
/***************************************************Links *************************************/
a{
color: black;
text-decoration: none;
}
a.menu_u{
padding: 3px;
border-radius: 10px 10px 10px 10px;
border: 1px solid black;
flex: 0 1 auto;
align-self: center;
background: #8a2d3f;
text-align: center;
transition: all 0.5s;
color: white;
text-shadow: 1px 1px 2px black;
}
a.menu_u:hover, a.menu_u:focus{
background: #e85d0e;
color: white;
text-shadow: 1px 1px 2px #111111;
}
a.menu_s{
padding: 3px;
border-radius: 10px 10px 10px 10px;
border: 1px solid black;
flex: 0 1 auto;
align-self: center;
background: #e85d0e;
text-align: center;
transition: all 0.5s;
color: white;
text-shadow: 1px 1px 2px black;
}
a.menu_s:hover, a.menu_s:focus{
background: #ffbf00;
color: white;
text-shadow: 1px 1px 2px #111111;
}
a.login{
padding: 3px;
border-radius: 10px 10px 10px 10px;
border: 1px solid black;
flex: 0 1 auto;
align-self: center;
background: gold;
text-align: center;
transition: all 0.5s;
color: #000000;
text-shadow: 1px 1px 2px #ffffff;
}
a.login:hover, a.login:focus{
background: #e85d0e;
text-shadow: 1px 1px 2px #ffffff;
color: #000000;
}
a.login_s{
padding: 3px;
border-radius: 10px 10px 10px 10px;
border: 1px solid black;
flex: 0 1 auto;
align-self: center;
background: #e85d0e;
text-align: center;
transition: all 0.5s;
color: white;
text-shadow: 1px 1px 2px #111111;
}
a.login_s:hover, a.login_s:focus{
background: #e85d0e;
color: white;
text-shadow: 1px 1px 2px #111111;
}
a.sublim{
	padding: 10px 20px 10px 0px;
	text-align: center;
	align-self: center;
	color: #ffffff;
	text-shadow: 1px 1px 2px black;
	font-size: 1em;
}
a.sublim:hover, a.sublim:focus{
	color: #ff794c;
}
a.sublim_s{
	padding: 10px 20px 10px 0px;
	text-align: center;
	align-self: center;
	color: #ff794c;
	text-shadow: 1px 1px 2px black;
	font-size: 1em;
}
a.xublim{
	padding: 10px 0px 10px 0px;
	text-align: center;
	align-self: center;
	color: #ffffff;
	text-shadow: 1px 1px 2px black;
	font-size: 1em;
}
a.xublim:hover, a.sublim:focus{
	color: #ff794c;
}
a.xublim_s{
	padding: 10px 0px 10px 0px;
	text-align: center;
	align-self: center;
	color: #ff794c;
	text-shadow: 1px 1px 2px black;
	font-size: 1em;
}
/***************************************************Menu*************************************************/
.menu{ /* Wrapper */
	--menu-height: 40px;
	grid-column-start: 1;
	grid-column-end: 2;
	grid-row-start: 1;
	grid-row-end:  2;
	padding-left: 20px;
	background-color: #000000;
	}
#menu-btn, #menu-btn2, #menu-btn3, #menu-btn4, #menu-btn5{
	display: none;
}
.menu ul{ /*  Leistenanker: alle ul Nachfahren von .menu  */
	height: var(--menu-height);
	list-style: none;
	}
.menu ul li{  /* Alle li Elemente, die auf ein ul in .menu folgen, also alle li Elemente im Container */
	color: #ffffff;
	font-size: 1em;
	background-color: #000000;
	}
.menu ul li:last-child{
	border-radius: 0px 0px 10px 10px;
}
.menu ul li a{ /* Alle a Elemente, die auf ein ul und ein li in .menu folgen, also alle a Elemente im Container */
	text-decoration: none;
	white-space: nowrap;
	font-size: 1em;
	font-weight: 700;
	display: block;
	cursor: pointer;
	}
.menu>ul li{ /* Basiscontainer und Abkömmlinge */
	position: relative;
	}
.menu>ul li ul{ /* Einblendung und Transformation des ersten Sub-Menus */
	opacity:0;
	position: absolute;
	visibility: hidden;
	top: calc(var(--menu-height) + 0px);
	left: -5px;
	min-width: 130px;
	}
.menu>ul li ul li{ /* Listenelemente im Sub-Menu*/
	height: calc(var(--menu-height) + 0px);
	padding: 5px 5px;
	}
.menu>ul li ul li ul{ /* Sub-Menu-Ausfahrmenu */
	top: -100%;
	left: 99%;
	transform:translate(0);
	}
/***************************************************Click*************************************************/
#menu-btn:checked ~ ul{
	opacity: 1;
	visibility:visible;
}
#menu-btn2:checked ~ ul{
	opacity: 1;
	visibility:visible;
}
#menu-btn3:checked ~ ul{
	opacity: 1;
	visibility:visible;
}
#menu-btn4:checked ~ ul{
	opacity: 1;
	visibility:visible;
}
#menu-btn5:checked ~ ul{
	opacity: 1;
	visibility:visible;
}
#menu-btn:checked ~ .menu-icon{
	color: #73ffff;
	text-shadow: 1px 1px 2px black;
}
#menu-btn2:checked ~ .check-this{
	color: #73ffff;
	text-shadow: 1px 1px 2px black;
}
#menu-btn3:checked ~ .check-this{
	color: #73ffff;
	text-shadow: 1px 1px 2px black;
}
#menu-btn4:checked ~ .check-this{
	color: #73ffff;
	text-shadow: 1px 1px 2px black;
}
#menu-btn5:checked ~ .check-this{
	color: #73ffff;
	text-shadow: 1px 1px 2px black;
}
/***************************************************Hamburger- Icon *************************************/
#navicon{
	top:10px;
	background: #ffffff;
	display: block;
	height: 2px;
	position: relative;
	transition: background .2s ease-out;
	width: 18px;
}
#navicon:before,
#navicon:after{
  background: #ffffff;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}
#navicon:before{
  top: 5px;
}
#navicon:after{
  top: -5px;
}
#menu-btn:checked ~ .menu-icon .navicon:before{
  transform: rotate(-45deg);
}
#menu-btn:checked ~ .menu-icon .navicon:after{
  transform: rotate(45deg);
}
#menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
#menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after{
  top: 0;
}
/***************************************************Radio- uncheck *************************************/
#uncheckAll{
    display: none;
}
#uncheckAll:checked ~ * label[for="uncheckAll"]{
    display: none;
}
label[for="uncheckAll"]{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	cursor:pointer;
}
input[name="group1"]:not(:checked) + label[for="uncheckAll"]{
    display: none;
}
label.check-this{
	white-space: nowrap;
	font-weight: 700;
 	cursor: pointer;
 	padding: 10px 0px 6.5px 0px;
	text-shadow: 1px 1px 2px black;
	display:block;
	text-align: center;
}
label.menu-icon{
	color: #ff794c;
	white-space: nowrap;
	font-weight: 700;
	cursor: pointer;
	padding-left: 30px;
	padding-bottom: 20px;
	height: 100px;
	width: 100px;
}
#fucker:before{
	content: "\00A0";
	margin-left: 20px;
}
#fucker:after{
	content: "\00A0";
}
label{
font: normal normal 400 16px/16px Palatino, Arial, Tahoma, Helvetica, sans-serif;
}
/***************************************************Desktop *************************************/
@media (min-width: 480px) {
			#menu-btn ~ ul {
			opacity: 1;
			visibility: visible;
			}
			.menu .menu-icon  {
			display: none;
			}
			.menu ul { /*  Leistenanker: alle ul Nachfahren von .menu  */
			width: 130px;
			display: flex;
			flex-flow: row nowrap;
			justify-content: space-around;
			align-content: center;
			}
			.menu ul li{
			color: white;
			}
			.menu>ul li{ /* Basiscontainer und Abkömmlinge */
			position: relative;
			display: flex;
			flex-flow: row nowrap;
			justify-content: space-around;
			align-items: flex-start;
			}
			.menu ul li a{ /* Alle a Elemente, die auf ein ul und ein li in .menu folgen, also alle a Elemente im Container */
			text-decoration: none;
			white-space: nowrap;
			font: normal normal 600 16px/20px Palatino, Arial, Tahoma, Helvetica, sans-serif;
			display: block;
			cursor: pointer;
			flex: 1 1 auto;
			align-self: center;
			margin: 0px 5px 0px 5px;
			}
			.menu>ul li ul{ /* Einblendung und Transformation des ersten Sub-Menus */
			top: calc(var(--menu-height) - 40px);
			left: 50px;
			flex: 0 1 auto;
			}
			.menu>ul li ul li{ /* Listenelemente im Sub-Menu*/
			height: calc(var(--menu-height) + 0px);
			padding: 0px 0px;
			}
			.menu>ul li ul li ul{ /* Sub-Menu-Ausfahrmenu */
			display: block;
			top: 40px;
			left: 0px;
			}
			label{
			font: normal normal 400 16px/20px Palatino, Arial, Tahoma, Helvetica, sans-serif;
			}
			label.check-this{
			flex: 0 1 auto;
			align-self: center;
			padding: 10px 20px 10px 0px;
			height:100%;
			display:inline-block;
			}
			label[for="uncheckAll"]{
			flex: 0 1 auto;
			align-self: center;
			cursor:pointer;
			}
			#fucker:before{
			content: '';
			margin-left: 0px;
			}
			#fucker:after{
			content: '';
			}
			.menu ul li:last-child{
			border-radius: 0px 0px 10px 10px;
			}
			.menu ul:hover {
			transition-delay: 0ms;
			visibility: visible;
			opacity: 1;
			}
			#menu-btn2:hover ~ ul {
			transition-delay: 0ms;
			visibility: visible;
			opacity: 1;
			}
			#menu-btn3:hover ~ ul {
			transition-delay: 0ms;
			visibility: visible;
			opacity: 1;
			}
			#menu-btn4:hover ~ ul {
			transition-delay: 0ms;
			visibility: visible;
			opacity: 1;
			}
			#menu-btn5:hover ~ ul {
			transition-delay: 0ms;
			visibility: visible;
			opacity: 1;
			}
			#menu-btn2:hover ~ .check-this {
			color: #ff794c;
			}
			#menu-btn3:hover ~ .check-this {
			color: #ff794c;
			}
			#menu-btn4:hover ~ .check-this {
			color: #ff794c;
			}
			#menu-btn5:hover ~ .check-this {
			color: #ff794c;
			}
}
/***************************************************Formular*****************************/
input:focus{
border-color:#333;
}
input:required:invalid{
background-color: #FFD8CA;
}
input:required:valid{
background-color: #CCFF99;
}
input[type=submit]{
border-radius: 10px 10px 10px 10px;
color: white;
padding:5px 10px;
margin:5px 5px;
background:#4f729c;
border:1px solid #ccc;
cursor:pointer;
box-shadow: 4px 4px 3px #444;
flex: 0 1 100%;
justify-content: space-around;
font-weight: bold;
font-size: 1rem;
transition: all 0.5s;
}
input[type=submit]:focus, input[type=submit]:hover{
background:#ffa64c;
color: black;
}
input[type=password]{
padding:3px;
border:1px solid #ccc;
border-radius: 2px;
}
input[type=email]{
font-family: arial;
padding:3px;
margin:5px;
border:1px solid #ccc;
border-radius: 2px;
}
input[type=text]{
padding:3px;
border:1px solid #ccc;
border-radius: 2px;
}
select{
padding:3px;
border:1px solid #ccc;
border-radius: 2px;
}
select:focus{
border-color:#333;
}
select:required:invalid{
background-color: #FFD8CA;
}
select:required:valid{
background-color: #CCFF99;
}
textarea{
font-family: arial;
}
/***************************************************Tabelle***************************/
table, th, td, tr{
margin-left: auto;
margin-right: auto;
table-layout: fixed;
text-align: center;
border: 1px solid black;
border-collapse: collapse;
}
table.Publish{
align-self: center;
table-layout: fixed;
word-wrap: break-word;
max-width: 250px;
min-width: 200px;
margin-left: auto;
margin-right: auto;
border: 0px;
padding: 5px 2px;
}
th, td{
text-align: center;
padding: 5px;
}
th{
background: #4f729c;
color: white;
border: 1px solid black;
}
tr{
border: 0px;
}
tr.Liste{
background-color: #e7f1fe;
}
tr.Liste:nth-child(even){
background-color: #b5d3fd;
}
td.Signal{
border-radius: 15px 15px 0px 0px;
border: 0px;
background: cornflowerblue;
color: white;
font-weight: bold;
font-size: 1.5rem;
text-shadow: 1px 1px 2px black;
}
td.Signal_l{
border-radius: 15px 0px 0px 0px;
border: 0px;
background: #e85d0e;
text-align: center;
color: white;
font-weight: bold;
font-size: 1.5rem;
text-shadow: 1px 1px 2px black;
}
td.Dialog{
border-radius: 15px 0px 0px 0px;
border: 0px;
background: #96ff73;
text-align:center;
color: black;
font-weight: bold;
font-size: 1.5rem;
text-shadow: 1px 1px 2px white;
}
td.BPS{
border: 0px;
}
td.BPS_e{
background-color: cornflowerblue;
border-radius: 0px 0px 15px 15px;
border: 0px;
}
td.BPS_le{
background-color: cornflowerblue;
border-radius: 0px 0px 0px 15px;
border: 0px;
}
td.BPS_re{
background-color: cornflowerblue;
border-radius: 0px 0px 15px 0px;
border: 0px;
}
td.Void{
border: 0px;
}
td.Vid{
border: 0px;
height: inherit;
}
/***************************************************Spezial*******************************/
span.Hinweis{
font-size: 8pt;
}
img.Flexibel{
max-width: 95%;
height: auto;
display: block;
padding: 5px;
margin-left: auto;
margin-right: auto;
}
span.zentriert{
display:inline-block;
width: 100%;
text-align: center;
}
video{
flex: 0 1 auto;
align-self: center;
max-width: 100%;
height: auto;
}
audio{
flex: 0 1 auto;
padding: 3px;
margin-left: auto;
margin-right: auto;
}
