html, body {
	height: 100%;
	margin-left: 1em;
	margin-right: 1em;
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	height: 95%;
}

div#toplogo {
    height: 100px;
    display: flex;
    flex-flow: row-reverse nowrap;
}

img#toplogo {
    height: 100px;
    align-content: flex-end;
}

/* Navigation stuff*/
nav {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
background-color: #99CCff;
	color: #111111;	
	padding-top: 5px;
	padding-bottom: 5px;
	width=50%;
	overflow:auto;
	border: 2px solid #a1a1a1;
    border-radius: 5px;	
	margin-top: 1em;
	margin-bottom: 1em;
}

.navspanleft_loggedin {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}

.navspanleft_loggedout {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}


.navspanright {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
}

.navitemleft { margin-left: 1em;  }
.navitemright{ margin-right:1em;}

footer {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
}

.footerspan { margin-right: 1em; }


/*Header stuff*/
header {width: 100%; text-align: right; margin-right:50px }

img#headerimg { height: 40px; }

/*#loggedinnav_left { float:left; width=70%}
#loggedinnav_right { float:right; width=30%}
#loggedoutnav_left { float:left; width=100%}
#navlistleft {display: inline;}
#navlistright {display: inline; margin-right: 1em;}
#navlistleft li {display: inline; margin-right:1em; }
#navlistright li {display: inline; margin-right:1em;}*/

/* main */
main {
	padding: 1em;
}

/**footer stuff */
footer 	{ 
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	width: 100%;
	background-color: #99CCff;
	color: #111111;	
	width=90%;
	overflow:auto;
	border: 2px solid #a1a1a1;
	border-radius: 5px;	
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 0;
	margin-right: 1em;
}

/* footer */
#footerlinklist {
	float: right;
}
#footerdiv {display: inline;}
#footerlinklist {display: inline; margin-right: 1em; margin-top:0.5em; margin-bottom:0.5em;}
#footerlinklist li {display: inline; margin-right:1em; }

/* Intrasite-Navigational links */
a.intrasitelink:link {
	color: blue;	
	text-decoration: none;
}
a.intrasitelink:visited {
	color: blue;	
	text-decoration: none;
}
a.intrasitelink:hover {
	color: Teal;	
	text-decoration: underline;
}
a.intrasitelink:active {
	color: blue;	
	text-decoration: none;
}

.maillink {
}

.actionlink:link {
	color: blue;	
	text-decoration: none;
	margin-right: 2em;
}

.actionlink:visited {
	color: blue;	
	text-decoration: none;
	margin-right: 2em;
}


.actionlink:hover {
	color: Teal;	
	text-decoration: underline;
	margin-right: 2em;
}


.actionlink:active {
	color: blue;	
	text-decoration: none;
	margin-right: 2em;
}

/* Titel-h1 */
/*div.mainheaderdiv {
	font-family: Georgia;
}
*/
/* We have a Back-Link on top of (mostly) all pages*/
.back {
	font-size: small;
}

/* Button-style link */
.button {
	transition-duration: 0.4s;
	border:none;
	text-align: center;
	text-decoration: none;
	background-color: #4682b4;
	color: white;
	padding: 10px 16px;

}

/* TODO: Ok, this does not appear to work with a link*/
.button:hover: {
	background-color: #b6cee2;
}

/* all contents, that should be encapsulated by grey border boxes*/
.divbox {
	float: left;
	border: 2px solid #a1a1a1;
	border-radius: 5px;	
	padding: 1em; 
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 0;
	margin-right: 1em;
}


table.deftable {
	border-collapse: collapse;
	margin-left: 1em;
	margin-right: 1em;
	margin-top: 1em;
	margin-bottom: 1em;
}

table.deftable th {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
}

table.deftable th.wborderR {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;
}

table.deftable th.wborderRr {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: right;
	border-bottom-style: double;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;
}


table.deftable td {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: left;
}


table.deftable td.wborderR {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: left;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;

}

table.deftable td.wborderRr {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: right;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;

}



table.deftableR {
	border-collapse: collapse;
	margin-left: 1em;
	margin-right: 1em;
	margin-top: 1em;
	margin-bottom: 1em;
}

table.deftableR th {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: center;
	border-bottom-style: double;
}

table.deftableR th.wborderR {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: right;
	border-bottom-style: double;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;
}



table.deftableR td {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: right;
}


table.deftableR td.wborderR {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: right;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;

}

table.shortresultstable {
	float: left;
	border-collapse: collapse;
	margin-left: 1em;
	margin-right: 1em;
	margin-top: 1em;
	margin-bottom: 1em;
}

table.shortresultstable th {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
}

table.shortresultstable th.left {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
}

table.shortresultstable th.right {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
}

table.shortresultstable th.rightright {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: right;
	border-bottom-style: double;
}


table.shortresultstable th.wborderR {
	padding: 0.2em 0.2em 0.2em 0.2em;
	text-align: left;
	border-bottom-style: double;
	border-right: 1px solid;
	border-left-style: none;
	border-top-style: none;
}


table.shortresultstable td.left {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: left;
	font-weight: bold;
	vertical-align: top;
}


table.shortresultstable td.right {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: left;
	vertical-align: top;
}


table.shortresultstable td.rightright {
	padding: 0.4em 0.4em 0.2em 0.4em;
	text-align: right;
	vertical-align: top;



address.impressum {
	font-style: normal;
}

/* emphasize error and status messages */
span.gpblockemphasize {
	font-weight: bold;
	color: crimson;
}

p.warnp {
	font-weight: bold;
	color: crimson;
}
