/* Standardeinstellungen zurücksetzen */
*, *::before, *::after{
	margin: 0;
	padding: 0;
}

* {
	box-sizing: border-box;
}


    
body {
	background-color: lightgrey;
	color: black;
	width:100vw;
	overflow-x: hidden
}

#page-max {
    display: flex;
    flex-direction: row;
	font-family: sans-serif, Helvetica;
	font-weight: normal;
	font-size: 12px;
	margin-block: auto;
	width: calc(100vw - 20px);
}

#header {
	position: absolute;
    margin-top: 5px;
	height: 200px; /* Change with top of #container */
    width: calc(100% - 20px);
}

/* Überschriften im Header-Block */
h1 {
	text-align: center;
	font: verdana;
	font-size: 30px;
	color: #2d2d2d;
	padding-top: 10px;
}
h2 {
	position: absolute;
	top: 280px; /* Change with Height of #header */
	font: verdana;
	color: #2d2d2d;
	padding-top: 10px;
	font-size:16px;	
}

a.Text {
	color: #2d2d2d;
	font-weight: bold;
	text-decoration: none;
}

.site-footer {
	position: fixed;
	bottom: 0px;
    width: 100%;
	flex: none;
	background-color: #333;
	color:#fff;
	font-size: 12px;
	line-height: 1;
	padding: 10px 0;
	text-align: center;
}


/* ====================================== */


/* Anmeldung  und  .Loginxxx wird in login.php genutzt */
#anmeldung {
	flex-grow: 1;
	position: absolute;
	display: flex;
	top: 250px; /* Change with Height of #header */
    align-items: center;
    width: 97%;
	justify-content: center;
	font-size:16px;	
	font-weight:bold;
}

.LoginTable { 
   display: table;
   border-spacing: 0.5em;
}

.LoginTableRow {
	display: table-row;
    width: 350px;
    height: 30px;
    border-bottom: 0px;
	text-align: left;
	vertical-align : middle;
	font-size : 14px;
	font-weight : normal;
	margin-left: 30px;
}

.LoginLabelCell {
	color: #2e3436;
	margin-left: 2px;
	display: table-cell;
	width: 100px;
}

.LoginTableCell  {
	color: black;
	margin-left: 2px;
	display: table-cell;
	width: 250px;
}

.userfield {
	width: 250px;
}

.button {
	border: none;
	padding: 0;
	background: none;
}

/* ====================================== */


/* 
Inhalt bei angemeldetem Benutzer 
*/

/* 
Responsive layout 
makes a one column-layout instead of two-column layout 
*/
@media ( width : 1280px) {
	.flex-container {
		flex-direction: column;
	}
}

/* 
Flex zurücksetzen - nach jedem Flex-Container 
*/
p.back {
	clear: both;
	text-align: center;
	height: 1px;
	visibility: hidden;
	overflow: hidden;
}


/* 
Menü wird nur bei authentifizierten Benutzern angezeigt 
*/
#menu {
	position: absolute;
	top: 210px;
	height: 38px; /* Change with top of #container */
	padding-top: 2px;
	padding-right: 20px;
	padding-left: 5px;
	background-color: white;
	width: 100vw;
	font-size: 14px;
	font-weight: normal;
	color: black;
	margin: 0px;
}

.menu-container {
	display: flex;
	text-align: left;
	justify-content: flex-end;
}

.MenuTable { 
	display: table;
}

.MenuTableRow {
	display: table-row;
    height: 35px;
    margin-left: 10px;
}

.MenuTableCell {
	text-align: left;
	vertical-align: top;
	color: #2e3436;
	display: table-cell;
	vertical-align: middle;
	width: fit-content;
	padding-right: 7px;
	padding-left: 7px;
	border-left: 1px dotted black;
}

.content  {
	left: 0px;
	bottom: 0;
	overflow: hidden;
	margin: 0px;
	align-items: center;
	justify-content:center;
}

.container {
	/*position: absolute;*/
	left: 5px;
	/*bottom: 0;*/
	margin-top:280px;
	margin-left: 10px;
	margin-right: 15px;
	margin-bottom: 20px;
	align-items: center;
	width: calc(100vw - 35px) !important;
}

.flex-container {
	top: 280px; /* Change with Height of #header */
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	justify-content: center;
	align-items: start;
	
}

.flex-item-left {
	padding: 10px;
}

.flex-item-right {
	padding: 10px;
}



.DataTable { 
   display: table;
   /*border-spacing: 0.5em;*/
   width: fit-content;
}

.DataTableRow {
	display: table-row;
    height: 26px;
    border-bottom: 0px;
    margin-left: 30px;
}

.LabelTableCell {
	text-align: left;
	padding-bottom: 3px;
	vertical-align: middle;
	font-size: 13px;
	font-weight: bold;
	color: #2e3436;
	display: table-cell;
	min-width: 240px !important;
	max-width: 240px !important;
}

.DataTableCell {
	text-align: left;
	vertical-align: middle;
	font-size: 14px;
	font-weight:normal;
	color: black;
	/*color: white;*/
	margin-left: 2px;
	display: table-cell;
	max-width: 240px !important;
	min-width: 240px !important;
}
.DataButtonCell {
	text-align: left;
	vertical-align: middle;
	display: table-cell;
	max-width: 240px !important;
	min-width: 240px !important;
}

.DataInputField {
	text-align: left;
	font-size: 14px;
	height: 17px;
	min-width: 150px !important;
	max-width: 150px !important;	
}

.spam-container {
/*	display: flex 1 1 auto;*/
	text-align: center;
	justify-content: center;
	margin-bottom: 10px;
	width: calc(100vw - 35px) !important;
}

.SpamTable { 
	display: table;
	margin-right:0px;
	width: calc(100vw - 35px) !important;
}

.SpamTableRow {
	display: table-row;
	flex-wrap: nowrap;
    height: 17px;
    border-bottom: 0px;
    width: fit-content;
}
.SpamTableRow:nth-child(even) {background-color: #f2f2f2;}

.SpamRowLine {
	display: table-cell;
    height: 1px;
    border-color: black;
    border-bottom: 1px solid;
    margin-left: 0px;
    font-size:1px;
}
hr {
	height: 1px solid;
}

.SpamTableCell-vshort {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	font-size: 13px;
	font-weight: normal;
	color: black;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
}
.SpamTableCell-short {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	font-size: 13px;
	font-weight: normal;
	color: black;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-right: 5px;
}
.SpamTableCell {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	font-size: 13px;
	font-weight: normal;
	/*padding-left: 5px;*/
	color: black;
	padding-left: 5px;
	padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.SpamLabelCell-short {
	display: table-cell;
	text-align: center;
	font-size: 16px;
	padding-right: 3px;
	font-weight:bold;
	color: #2e3436;
}
.SpamLabelCell-vshort {
	display: table-cell;
	text-align: center;
	font-size: 16px;
	font-weight:bold;
	color: #2e3436;
}
.SpamLabelCell {
	display: table-cell;
	text-align: center;
	font-size: 16px;
	font-weight:bold;
	color: #2e3436;
	padding-left: 5px;
}


/* CSS für Schalter grau-bunt */

.switch {
	position: relative;
	display: block;
	width: 67px;
	height: 20px;
	padding: 3px;
	margin: 0 10px 0 0;
	background: linear-gradient(to bottom, #eeeeee, #FFFFFF 25px);
	background-image: -webkit-linear-gradient(top, #eeeeee, #FFFFFF 25px);
	border-radius: 20px;
	box-shadow: inset 0 -1px white, inset 0 1px 1px rgba(0, 0, 0, 0.05);
	cursor: pointer;
	box-sizing:content-box;
}
.switch-input {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	box-sizing:content-box;
}
.switch-label {
	position: relative;
	display: block;
	height: inherit;
	font-size: 10px;
	text-transform: uppercase;
	background: #cccccc;
	border-radius: inherit;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
	box-sizing:content-box;
}
.switch-label:before, .switch-label:after {
	position: absolute;
	top: 50%;
	margin-top: -.5em;
	line-height: 1;
	-webkit-transition: inherit;
	-moz-transition: inherit;
	-o-transition: inherit;
	transition: inherit;
	box-sizing:content-box;
}
.switch-label:before {
	content: attr(data-off);
	right: 11px;
	color: #555753;
	text-shadow: 0 1px rgba(255, 255, 255, 0.5);
}
.switch-label:after {
	content: attr(data-on);
	left: 11px;
	color: #2e3436;
	text-shadow: 0 1px rgba(0, 0, 0, 0.2);
	opacity: 0;
}
.switch-input:checked ~ .switch-label {
	background: #3baf56;
	box-shadow: inset 0px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);
}
.switch-input:checked ~ .switch-label:before {
	opacity: 0;
}
.switch-input:checked ~ .switch-label:after {
	opacity: 1;
}
.switch-handle {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 20px;
	height: 20px;
	background: linear-gradient(to bottom, #FFFFFF 50%, #f0f0f0);
	background-image: -webkit-linear-gradient(top, #FFFFFF 50%, #f0f0f0);
	border-radius: 100%;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}
.switch-handle:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -3px 0 0 -4px;
	width: 7px;
	height: 7px;
	background: linear-gradient(to bottom, #dfdfdf, #FFFFFF);
	background-image: -webkit-linear-gradient(top, #dfdfdf, #FFFFFF);
	border-radius: 6px;
	box-shadow: inset 0 2px rgba(0, 0, 0, 0.02);
}
.switch-input:checked ~ .switch-handle {
	left: 50px;
	box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
}

/* Transition
========================== */
.switch-label, .switch-handle {
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
	-moz-transition: All 0.3s ease;
	-o-transition: All 0.3s ease;
}


