/* ============================== GENERAL PAGE STYLES ============================== */

html
{
	background: #ffffff;
	cursor: default;
}
html,
input,
select,
textarea
{
	font: 13px/140% Arial, helvetica, sans-serif;
}
body
{
	width: 900px;
	/*margin: 0;*/
	padding: 8px;
}

html.popup
{
}
html.popup body
{
	width: 100%;
	/*margin: 0;*/
	/*padding: 0;*/
}

input[type="text"],
input[type="password"],
textarea
{
	cursor: text;
}
input[type="button"],
input[type="submit"],
input[type="checkbox"],
input[type="radio"],
select,
label
{
	cursor: pointer;
}
input[disabled],
textarea[disabled],
select[disabled],
option[disabled]
{
	cursor: default;
}

/* -------------------- Header -------------------- */

#head
{
	line-height: 10px;   /* Remove any gap after the head div */
	border-bottom: solid 1px #abd4e5;
}
#printhead
{
	display: none;
}

/* -------------------- Navigation elements -------------------- */

#navigation
{
	/*margin-top: 0.4em;*/
	border-top: solid 1px #cee2ea;
	background: #e6edf0;
	border-bottom: solid 1px #eaf1f4;
}
#navigation a
{
	float: left;
	font-size: 1.0em;
	line-height: 140%;
	font-weight: bold;
	padding: 0.2em 0.8em;
	color: #004fc0;
	margin-right: 0.2em;
	text-shadow: rgba(255, 255, 255, 0.6) 0px 0px 3px;
}
#navigation a.language-link
{
	font-weight: 500;
}
#navigation a.has-menu
{
	background-image: url(../img/arrow_down_3.png);
	background-repeat: no-repeat;
	background-position: 50% 100%;
}
#navigation a:hover
{
	color: #ffffff;
	background-color: #73bae9;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 0px 3px;
}
#navigation a.selected
{
	color: #ffffff;
	background-color: #228bd0;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 0px 3px;
}

/* ----- Navigation finder ----- */

#navigation .finder
{
	float: right;
	margin-right: 0.2em;
	padding: 0.2em 0em;
}

#navigation .finder input[type="text"]
{
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: solid 1px #9090b0;
	background: #e6edf0;
	margin-right: 0.4em;
}
#navigation .finder input[type="text"]:focus
{
	background: white;
}
#navigation .finder input[type="submit"].search-button
{
	border: none;
	background: #e6edf0 url(../img/action_arrow.png) no-repeat 0 60%;
	padding: 0 0 0 11px;
	color: #004fc0;
}

/* ----- Print navigation ----- */

#printnavigation
{
	display: none;
}
#noprintnavigation
{
	display: none;
}

/* ----- Secondary navigation ----- */

#subnavigation
{
	border-top: solid 1px #f1f6f7;
	background: #f6f9fa;
	border-bottom: solid 1px #fafcfc;
	padding: 0.2em 0.9em;
}
#subnavigation a
{
}

/* ----- Navigation drop-down menu ----- */

.nav-menu
{
	border: solid 1px #cccccc;
	background: #f6f9fa;
	-moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.4);
	-webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.4);
	box-shadow: 0 3px 7px rgba(0, 0, 0, 0.4);
	padding: 0.4em 0;
}

.nav-menu a
{
	display: block;
	padding: 0 0.7em;
}
.nav-menu a:hover
{
	color: #ffffff;
	background: #73bae9;
	text-shadow: rgba(0, 0, 0, 0.25) 0px 0px 3px;
}
.nav-menu a:focus
{
	outline: none;
	color: #e0e0e0;
}
.nav-menu a.selected
{
	color: #ffffff;
	background-color: #228bd0;
}

/* ----- Post-navigation ----- */

#afternavigation
{
	margin-bottom: 1em;
}

/* -------------------- Footer -------------------- */

#footer
{
	margin-top: 2em;
	border-top: dotted 1px #cccccc;
	padding-top: 0.3em;
	font-size: 0.85em;
	line-height: 1.3em;
}

div.use-firefox
{
	margin-top: 0.7em;
	/*
	border: solid 1px #ffbb77;
	padding: 0.1em 0.4em 0.1em 26px;
	background: #fff4dd url(../img/browser/firefox.png) no-repeat 0.4em 50%;
	*/
	border-top: solid 1px #ffbb77;
	padding: 0.3em 0 0 22px;
	background: url(../img/browser/firefox.png) no-repeat 0 70%;
}

/* -------------------- Content columns -------------------- */

.content_full
{
}

.content_left_middle
{
	float: left;
	width: 640px;   /* 900 - 240 - 20 */
}

.content_left
{
	float: left;
	width: 173px;   /* 180 - 6 - 1 */
	padding-right: 6px;
	border-right: dotted 1px #cccccc;
}
.content_left h1
{
	font-size: 1em;
	line-height: 140%;
	margin: 0;
}

.content_middle
{
	float: left;
	width: 420px;   /* 900 - 180 - 20 - 10 - 10 - 240 - 20 */
	padding-left: 10px;
	padding-right: 10px;
}

.content_right
{
	float: right;
	width: 233px;   /* 240 - 6 - 1 */
	padding-left: 6px;
	border-left: dotted 1px #cccccc;
}
.content_right h1
{
	font-size: 1em;
	line-height: 140%;
	margin: 0;
}

/* ============================== GENERAL PARAGRAPH STYLES ============================== */

h1
{
	font-size: 1.8em;
	line-height: 120%;
	font-weight: bold;
	color: #003960;
	padding: 0 0 0.1em;
	margin: 0.6em 0 0.6em;
	text-shadow: rgba(255, 255, 255, 1) 0px 0px 7px, rgba(0, 0, 0, 0.3) 0px 1px 2px;
	border-bottom: solid 1px #306a90;
}
h2
{
	font-size: 1.4em;
	font-weight: bold;
	color: #003960;
	padding: 0 0 0.1em;
	margin: 1.5em 0 1em;
	text-shadow: rgba(255, 255, 255, 1) 0px 0px 7px, rgba(0, 0, 0, 0.3) 0px 1px 2px;
	border-bottom: solid 1px #75a2bf;
}
h3
{
	font-size: 1.2em;
	font-weight: bold;
	color: #003960;
	padding: 0;
	margin: 1.1em 0 0.8em;
	text-shadow: rgba(255, 255, 255, 1) 0px 0px 7px, rgba(0, 0, 0, 0.2) 0px 1px 2px;
}

p
{
	margin-top: 0.9em;
	margin-bottom: 0.9em;
}

ul
{
	padding-left: 18px;
	margin: 0.3em 0 0.3em;
	list-style-image: url(../img/bullet.png);
}
ul.next,
li.next
{
	list-style-image: url(../img/arrow_right_8.png);
}
ul.down,
li.down
{
	list-style-image: url(../img/arrow_down_8.png);
}

/* -------------------- Person entry -------------------- */

div.person
{
	margin-top: 0.8em;
	margin-bottom: 0.8em;
}
div.person div.photo
{
	float: left;
}
div.person div.photo img
{
	border: solid 1px #cccccc;
	padding: 8px;
	background: #ffffff;
	max-width: 120px;
}
div.person div.name
{
	margin-left: 160px;
	font-size: 1.2em;
}
div.person div.position
{
	margin-left: 160px;
	margin-bottom: 0.8em;
}
div.person div.email
{
	margin-top: 0.3em;
	margin-left: 160px;
	background: url(../img/icons/email.png) no-repeat 0% 0%;
	padding-left: 22px;
}
div.person div.address
{
	margin-top: 0.3em;
	margin-left: 160px;
	background: url(../img/icons/house.png) no-repeat 0% 0%;
	padding-left: 22px;
}
div.person div.phone
{
	margin-top: 0.3em;
	margin-left: 160px;
	background: url(../img/icons/telephone.png) no-repeat 0% 0%;
	padding-left: 22px;
}

/* -------------------- Team member entry -------------------- */

div.team-member-div
{
	float: left;
	margin-right: 0.8em;
	margin-bottom: 1em;
}

div.team-member
{
	margin-top: 0.8em;
	margin-bottom: 0.8em;
	max-width: 148px;   /* 130 + 2 * (8 + 1) */
}
div.team-member div.photo img
{
	border: solid 1px #cccccc;
	padding: 5px;
	background: #ffffff;
	max-width: 130px;
}
div.team-member div.name
{
	text-align: center;
}

/* -------------------- Download entry -------------------- */

div.download
{
	margin-top: 0.8em;
	margin-bottom: 0.8em;
}
div.download img.preview
{
	float: left;
	border: solid 1px #cccccc;
	margin-right: 1em;
}
div.download div.filename
{
	font-size: 1.2em;
	margin-bottom: 0.4em;
}
div.download div.description
{
	margin-top: 0.5em;
	margin-bottom: 0.3em;
}
div.download div.filetype
{
	margin-top: 0.1em;
	font-size: 0.85em;
	line-height: 140%;
	color: #707070;
}
div.download div.filesize
{
	margin-top: 0.1em;
	font-size: 0.85em;
	line-height: 140%;
	color: #707070;
}

/* -------------------- News entry -------------------- */

div.news-item
{
	margin-top: 0.8em;
	margin-bottom: 0.8em;
}
div.news-item div.date
{
	color: #707070;
}
div.news-item div.caption
{
	font-size: 1.2em;
	font-weight: bold;
	line-height: 120%;
	margin-top: 0.2em;
	margin-bottom: 0.7em;
}
div.news-item div.intro
{
}
div.news-item div.read-more-link
{
	margin-top: 0.3em;
}

/* ============================== GENERAL CHARACTER STYLES ============================== */

/* -------------------- Hyperlinks -------------------- */

a
{
	text-decoration: none;
	color: #0073c0;
}
a:visited
{
	color: #0073c0;
}
a:hover
{
	color: #c04c00;
}
a img
{
	border: 0;
}
a[rel~="help"]
{
	color: inherit;
	border-bottom: dotted 1px #89aaf7;
	cursor: help;
}
a[rel="help"]:hover,
a[rel~="help"][rel~="external"]:hover
{
	border-bottom: solid 1px #f48964;
}
a[rel~="external"]
{
	background: url(../img/out.png) 100% 30% no-repeat;
	padding-right: 8px;
}
a[rel~="help"][rel~="external"]
{
	background: none;
	padding-right: 0;
}
a.popup
{
	background: url(../img/popup.png) 100% 30% no-repeat;
	padding-right: 11px;
}

/* TODO: Remove or rename this */
td.big
{
	font-weight: bold;
	font-size: 30px;
}

/* -------------------- Others -------------------- */

small
{
	font-size: 0.85em;
	color: #707070;
}

sup
{
	font-size: 0.85em;
	line-height: 0.85em;
	}
sub
{
	font-size: 0.85em;
	line-height: 0.85em;
	}

/* ============================== GENERAL TABLE STYLES ============================== */

table
{
	border-spacing: 0;
}
table th
{
	text-align: left;
	font-weight: normal;
	font-style: italic;
}
table th,
table td
{
	vertical-align: top;
	padding: 0;
}
table.grid
{
	border-collapse: collapse;
}
table.grid th,
table.grid td
{
	border: solid 1px #e17313;
	padding: 0.1em 0.4em;
}
table.grid.tight th,
table.grid.tight td
{
	border: solid 1px #e17313;
	padding: 0 0.2em;
}

table.pad td
{
	padding-right: 0.8em;
}

table th.center,
table td.center
{
	text-align: center;
}
table th.right,
table td.right
{
	text-align: right;
}

/* ============================== GENERAL FORM STYLES ============================== */

form
{
	display: inline;
}

form div.label
{
	margin-top: 0.2em;
	margin-bottom: 0;
	font-size: 0.85em;
	line-height: 1.3em;
	font-weight: bold;
	color: #505050;
}
form div.label span.desc
{
	margin-left: 0.8em;
	font-weight: normal;
}
form div.checkbox
{
	margin-top: 0.6em;
	margin-bottom: 0;
}

input[type="text"],
input[type="password"],
textarea
{
	border: solid 1px #9cceee;
	padding: 1px 2px;
}
select
{
	border: solid 1px #9cceee;
	padding: 0;
}
input[type="text"]:hover,
input[type="password"]:hover,
textarea:hover,
select:hover
{
	border: solid 1px #57ace3;
}
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus
{
	border: solid 1px #228bd0;
}

input[type="radio"],
input[type="checkbox"]
{
	margin: 0 6px 2px 0;
	vertical-align: middle;
}

input[type="button"],
input[type="submit"]
{
	border: solid 1px #9cceee;
	background: #e6edf0;
	padding: 1px 4px;
	color: #000000;

	/* IE Button Width fix - http://jehiah.cz/archive/an-even-better-ie-button-width-fix */
	overflow: visible;
	width: auto;
}
input[type="button"]:hover,
input[type="submit"]:hover
{
	background: #57ace3;
}
input[type="button"].default,
input[type="submit"].default
{
	font-weight: bold;
}

input[type="text"].inputerror,
input[type="password"].inputerror,
select.inputerror,
textarea.inputerror
{
	background: #ffd1cb;
}

/* ============================== OTHER SPECIFIC STYLES ============================== */

/* -------------------- Members list -------------------- */

table.countries
{
	width: 100%;
}
table.countries td
{
	vertical-align: middle;
	padding-right: 1em;
	padding-bottom: 0.7em;
}
table.countries td.flag
{
	width: 13%;
	text-align: right;
}
table.countries td.flag img
{
	vertical-align: middle;
			box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
		-moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
		-webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
	}
table.countries td.name
{
	width: 20%;
	text-align: left;
}

div.flag img
{
	vertical-align: middle;
			box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
		-moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
		-webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
	}

/* -------------------- Calender -------------------- */

div.jahreswechsel
{
	text-align: right;
	vertical-align: middle;
}

td.links
{
	text-align: left;
}

table.grid
{
	border-collapse: collapse;
	width: 100%;
}
table.grid td
{
	border: 1px solid silver;
}

td.kalmon
{
	text-align: center;
	font-weight: bold;
	vertical-align: top;
}
td.kaltag
{
	text-align: center;
	width: 13%;
	vertical-align: top;
}

div.tag
{
	text-align: left;
	font-size: 10px;
	color: #0000FF;
}

div.inh
{
	float: right;
	font-size: 12px;
	color: #ff0000;
}
div.inhd
{
	text-align: left;
	font-size: 12px;
	background: #FFFF66;
	color: #000000;
}

/* ---------- Photo album ---------- */

img.canvas5
{
	border: solid 1px #DDDDDD;
	background: white;
	padding: 5px;
}
a:hover img.canvas5
{
	border-color: #FF4000;
}
