/*************************************/
/***** Uebergreifende Typografie *****/
/*************************************/

body {
	color: black;
	font-size: 0.9em;
	font-family: "Lucida Grande", "Lucida Sans Unicode", Geneva, Verdana, Helvetica, Arial, sans-serif;
	line-height: 1.4em;
}

h1 { /* Ohne Verwendung */
	font-size: 1.7em;
	margin: 0 auto 0.5em auto;
}

h2 { /* Grosse Themenueberschriften */
	font-size: 1.4em;
	line-height: 1.2em;
	margin: 0 auto 1.2em auto;
}

h3 { /* Kleine Themenueberschriften */
	font-size: 1.2em;
	line-height: 1.2em;
	margin: 0 auto 0.8em auto;
}

h4 { /* Zwischenueberschriften im Text, ohne Abstand danach */
	font-size: 1em;
	margin: 0 auto 0.1em auto;
}

h5 { /* Dachzeilen, ohne Abstand danach */
	margin: 0 auto 0.1em auto;
	font-size: 0.85em;
}

h2.mit_subline { /* Grosse Themenueberschriften mit folgender Subline (ohne Abstand danach) */
	margin: 0 auto 0.3em auto;
}

h3.mit_subline { /* Kleine Themenueberschriften mit folgender Subline (ohne Abstand danach) */
	margin: 0 auto 0.3em auto;
}

h3.subline { /* Subline mit Abstand danach */
	margin: 0 auto 0.6em auto;
}

h4.subline { /* Subline mit Abstand danach */
	margin: 0 auto 0.6em auto;
}

p {
	margin: 0 auto 0.6em auto;
}

form {
	margin: 0 auto 0.6em auto;
}

ul {
	margin: 0 auto 0.6em auto;
}

li {
	margin: 0 auto 0.2em auto;
}

input, select, textarea, button {
	color: black;
	font-size: 1em;
}

em { font-style: normal; font-weight: bold; }

a, img { border: none; outline: none; }

a { text-decoration: underline; }
a:link { color: black; }
a:visited { color: #666666; }
a:hover, a:focus { text-decoration: none; color: #E60000; }
a:active { color: #EE7700; }

/*************************/
/***** Grundstruktur *****/
/*************************/

body {
	background-color: white;
	text-align: left;
	margin: 0;
}

#container {
	text-align: left;
	margin: 3.8% 2% 3.8% 8% !important;
	width: 90% !important;
	margin: 0; width: 100%; /* IE6 :-( */
}

/***********************************************/
/***** Uebergreifende Elemente und Klassen *****/
/***********************************************/

.links { float: left; }
.rechts { float: right; }
.clear { clear: both; }

.kleingedrucktes {
	font-size: 0.85em;
}

.negativer_einzug {
	margin-left: -6px;
}

/***** Listen *****/

ul {
	list-style: square outside;
	padding-left: 1.5em;
	margin-left: 0;
}

/***** Formulare *****/

form .pflicht { font-weight: bold; }

fieldset {
	margin: 0;
	padding: 0.8em 1em 0 1em;
	background-color: #EBEBEB;
	border: none;
	border-bottom: 2px solid white;
}

legend {
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.2em;
	text-align: left;
	width: 100%;
	padding-bottom: 0.8em;
}

select {
	width: 100%; margin: 0.3em 0 0.3em -1px;
}

textarea {
	width: 100%; display: block;
}

input.radio, input.checkbox {
	margin: 0 0.5em 0 0;
}

input.text, input.password, input.textarea {
	border: 1px solid #999999;
	border-top-color: black; border-left-color: black;
	width: 100%;
}

button {
	color: #ad2923; text-decoration: underline;
	background: none;
	border: 0; margin: 0; padding: 0;
	width: auto; overflow: visible;
	cursor: pointer;
}

button:hover, button:focus { text-decoration: none; color: #ad2923; }
button:active { text-decoration: underline; color: #e66600; }

/***** Tabellen *****/

table {
	border-collapse: separate;
	border-spacing: 0;
	margin: 0; padding 0;
}

th { text-align: left; font-weight: normal; }

/****************/
/***** Kopf *****/
/****************/

#kopf, #kopf #motiv, #kopf #transparenz { height: 0; overflow: hidden; display: none; }

#briefkopf {
	height: 80px; overflow: hidden;
	background-color: white;
	margin-bottom: 3%;
}

/* Safari Hack */
@media print and (-webkit-min-device-pixel-ratio:0){
	#briefkopf { background: white url(druck/logo.svg) top left no-repeat; }
	#briefkopf img { display: false; }
}

/***************************/
/***** Hauptnavigation *****/
/***************************/

#navigation { display: none; }

/******************/
/***** Inhalt *****/
/******************/

#hauptspalte, .hauptspalte {
	float: left; display: inline;
	margin: 0 2.4% 0 0;
	width: 61.5%;
}

#marginalspalte, .marginalspalte {
	float: left; display: inline;
	margin: 0;
	width: 35.9%;
}

.einspaltig,    #hauptspalte.einspaltig,    #marginalspalte.einspaltig    { width: 10.3%; } /* width:  64px; */
.zweispaltig,   #hauptspalte.zweispaltig,   #marginalspalte.zweispaltig   { width: 23.1%; } /* width: 144px; */
.dreispaltig,   #hauptspalte.dreispaltig,   #marginalspalte.dreispaltig   { width: 35.9%; } /* width: 224px; */
.vierspaltig,   #hauptspalte.vierspaltig,   #marginalspalte.vierspaltig   { width: 48.7%; } /* width: 304px; */
.fuenfspaltig,  #hauptspalte.fuenfspaltig,  #marginalspalte.fuenfspaltig  { width: 61.5%; } /* width: 384px; */
.sechsspaltig,  #hauptspalte.sechsspaltig,  #marginalspalte.sechsspaltig  { width: 74.4%; } /* width: 464px; */
.siebenspaltig, #hauptspalte.siebenspaltig, #marginalspalte.siebenspaltig { width: 87.2%; } /* width: 544px; */
.achtspaltig,   #hauptspalte.achtspaltig,   #marginalspalte.achtspaltig   { width: 100%;  } /* width: 624px; */

#inhalt #vollebreite {
	width: 100%;
}

/***** Bloecke *****/

#inhalt .block {
	margin-bottom: 20px;
}

#inhalt .block h2 { margin-bottom: 0.6em; }
#inhalt .block h2.mit_subline { margin-bottom: 0.2em; }

#inhalt .block.hervorgehoben {
	background-color: #EBEBEB;
	padding: 10px 12px 0.4em 12px;
}

#inhalt .block.hervorgehoben h3 {
	color: white;
	background: #999999 url(hintergruende/headlines.gif) top left repeat-x;
	border-bottom: 1px solid black;
	margin: -10px -12px 0.8em -12px;
	padding: 0.25em 12px;
}

#inhalt .block.meldung {
	text-align: center;
	width: 464px;
	margin: 32px auto 20px auto;
}

/* Mit Teaserbild */

#inhalt .block .teaserbild {
	float: left; display: inline;
}

#inhalt .block .teaserbild img {
	width: 144px; overflow: hidden;
	margin-right: 16px;
}

#inhalt .block .teasertext {
	float: left; display: inline;
	width: 100%; /* wegen der absoluten Breite der Bilder (screen: 224px) */
}

.block.hervorgehoben fieldset {
	margin: 0 -12px 0.8em -12px;
	padding: 0 12px 0.8em 12px;
}

/* Uebersichtsseiten */

#inhalt #uebersicht {
	/*float: none; display: block;*/
	/*width: auto;
	margin: 20px 0 0 32px;*/
}

#inhalt .block.teaser {
	float: left; display: inline;
	width: 47.4%; /* 304px */
	margin-right: 2.6%; /* 16px */
}	

/* Galerien */

#inhalt #galerie {
	float: none; display: block;
	width: 624px;
	margin: 20px 0 0 32px;
}

#inhalt #galerie .bild {
	float: left; display: inline;
	margin-right: 16px;
	width: 464px; overflow: hidden;
}

#inhalt #galerie .bild table {
	text-align: center;
	width: 464px; height: 465px; overflow: hidden;
	border: 0; border-collapse: collapse; border-spacing: 0;
	empty-cells: show;
}

#inhalt #galerie .bild table td {
	background-color: #EBEBEB;
	vertical-align: middle;
	border-bottom: 3px solid white;
}

#inhalt #galerie .bild .beschreibung { float: left; display: inline; }
#inhalt #galerie .bild .credit { float: right; display: inline; color: #999999;}

#inhalt #galerie .uebersicht {
	float: left; display: inline;
	width: 624px; overflow: hidden;
}

#inhalt #galerie .uebersicht.zweispaltig { width: 144px; }

#inhalt #galerie .uebersicht table {
	text-align: center;
	border: 0; border-collapse: collapse; border-spacing: 0;
	empty-cells: show;
}

#inhalt #galerie .uebersicht table td {
	background-color: #EBEBEB;
	width: 90px; height: 90px; overflow: hidden;
	vertical-align: middle;
	border-bottom: 3px solid white;
	border-right: 3px solid white;
}

/* At a Glance */

#inhalt #fremdsprachen.block.hervorgehoben h3 {
	height: 36px;
	background: url(bilder/fahnen.jpg) top left no-repeat;
	border-bottom: 1px solid black;
	margin: -10px -12px 0.8em -12px;
	padding: 0;
}

#inhalt #fremdsprachen.block.hervorgehoben h3 span { display: block; height: 0; width: 0; overflow: hidden; }

/* Seite mit der Einstellung der Schriftgroesse */

form#schriftgroesse .klein { font-size: 0.85em; line-height: 1.4em; }
form#schriftgroesse .gross { font-size: 1.2em; line-height: 1.4em; }

form#schriftgroesse table {
	border-collapse: separate;
	border-spacing: 2px;
	margin: -2px -2px 0.8em -2px;
}

form#schriftgroesse tr {
	padding: 0.8em 1em 0 1em;
}

form#schriftgroesse th {
	text-align: center;
	font-weight: normal;
	background-color: #EBEBEB;
	padding: 0 0.4em;
}

form#schriftgroesse td {
	background-color: #EBEBEB;
	padding: 0.8em 1em 0.4em 1em;
}

/***** Navigation *****/

#inhalt .navigation {
	display: none;
}

#inhalt .navigation.pfad {
	display: block;
	font-size: 0.85em;
	margin-bottom: 1em;
	border-bottom: 1px solid black;
}

#inhalt .navigation a { text-decoration: none; }
#inhalt .navigation a:link { color: black; }
#inhalt .navigation a:visited { color: black; }
#inhalt .navigation a:hover, #inhalt .navigation a:focus { text-decoration: underline; color: #E60000; }
#inhalt .navigation a:active { text-decoration: none; color: #EE7700; }

#inhalt .navigation .links { width: 33%; }
#inhalt .navigation .rechts { width: 33%; text-align: right; }
#inhalt .navigation .mitte {
	float: left; display: inline;
	text-align: center;
	width: 34%;
}

/***** Listen mit Optionen *****/

ul.optionen {
	list-style: none inside;
	margin-left: 0; padding-left: 0;
}

ul.optionen li div {
	font-weight: bold;
	clear: left;
	float: left; display: inline;
	width: 0.8em; overflow: hidden;
}

/* Workaround fuer IE6 */
ul.optionen li h3, ul.optionen li h4, ul.optionen li h5, ul.optionen li p {
	float: none !important; float: left;
	padding-right: 0 !important; padding-right: 0.8em;
}

ul.optionen li h3, ul.optionen li h4 {
	margin-top: 0;
	margin-bottom: 0.2em !important; margin-bottom: 0;
	padding-bottom: 0 !important; padding-bottom: 0.2em;
}

/***** Formulare *****/

/* Suche in der Marginalspalte  */

#marginalspalte form {}

#marginalspalte form.suche input.text {
	float: left; display: inline;
	vertical-align: middle;
	width: 176px; height: 14px;
	line-height: 14px;
}

#marginalspalte form.suche input.image {
	float: right; display: inline;
	vertical-align: middle;
	width: 18px; height: 18px;
	background: #999999 url(buttons/absenden_1.gif) center left no-repeat;
}

#marginalspalte form.suche input.image:hover, #marginalspalte form.suche input.image:focus {
	background-image: url(buttons/absenden_2.gif);
	background-color: #990000;
}

#marginalspalte form.suche input.image:active {
	background-image: url(buttons/absenden_3.gif); 
	background-color: #EE7700;
}

/***** Terminekalender *****/

/* Termine */

table.termine {
	border-collapse: separate;
	border-spacing: 0;
	margin-top: -1.4em;
}

table.termine tr {
	vertical-align: top;
}

table.termine thead th h3 {
	margin: 1em auto 0.4em auto;
}

table.termine tbody th {
	font-size: 0.85em;
	font-weight: normal;
	text-align: right;
	line-height: 1.4em;
	background-color: #EBEBEB;
	padding: 0.2em 0.4em;
	border-bottom: 2px solid white;
}

table.termine tbody th span {
	display: block;
	white-space: nowrap;
}

table.termine tbody th span.trenner { display: none; }

table.termine tbody td {
	padding: 0.2em 0.4em 0.6em 1em;
}

/* Monatskalender */

table.kalender {
	width: 224px;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #EBEBEB; border-left: 0;
	background-color: #EBEBEB;
}

table.kalender caption {
	color: white;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.8em; overflow: hidden;
	background: #999999 url(hintergruende/headlines.gif) top left repeat-x;
	border-bottom: 1px solid black;
	text-align: center;
	padding: 0;
}

table.kalender caption .bezeichnung {
	float: left; display: inline;
	width: 176px; overflow: hidden;
}

table.kalender caption .zurueck, table.kalender caption .vor {
	display: inline;
	height: 1.8em; overflow: hidden;
	padding: 0 4px;
}

table.kalender caption .zurueck { float: left; }
table.kalender caption .vor { float: right; }

table.kalender caption .zurueck img, table.kalender caption .vor img {
	width: 14px; height: 1.8em; overflow: hidden;
}

table.kalender caption .zurueck a img { background: url(buttons/pfeil_zurueck_1.gif) center right no-repeat; }
table.kalender caption .zurueck a:link img { }
table.kalender caption .zurueck a:visited img { color: black; }
table.kalender caption .zurueck a:hover img, table.kalender caption .zurueck a:focus img { background-image: url(buttons/pfeil_zurueck_2.gif); }
table.kalender caption .zurueck a:active img { background-image: url(buttons/pfeil_zurueck_3.gif); }

table.kalender caption .vor a img { background: url(buttons/pfeil_vor_1.gif) center right no-repeat; }
table.kalender caption .vor a:link img { }
table.kalender caption .vor a:visited img { color: black; }
table.kalender caption .vor a:hover img, table.kalender caption .vor a:focus img { background-image: url(buttons/pfeil_vor_2.gif); }
table.kalender caption .vor a:active img { background-image: url(buttons/pfeil_vor_3.gif); }

table.kalender th, table.kalender td {
	border: 1px solid #EBEBEB;
	width: 26px; overflow: hidden;
	text-align: center; vertical-align: middle;
}

table.kalender th {
	font-weight: normal;
	background-color: #cccccc;
}

table.kalender th.kw {
	border-left: 0;
	background-color: #EBEBEB;
}

table.kalender td {
	background-color: white;
	font-weight: bold;
}

table.kalender td.heute {
	background-color: #EBEBEB;
}

table.kalender td.anderer_monat {
	color: #999999;
	font-weight: normal;
}

table.kalender th.kw a { text-decoration: underline; }
table.kalender th.kw a:link { color: black; }
table.kalender th.kw a:visited { color: black; }
table.kalender th.kw a:hover, table.kalender th.kw a:focus { text-decoration: none; color: #E60000; }
table.kalender th.kw a:active { color: #EE7700; }

/***** Tabelle mit Highscores *****/

table.highscores {
	width: 224px;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #EBEBEB;
}

table.highscores caption {
	color: white;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.8em; overflow: hidden;
	border-bottom: 1px solid black;
	background: #999999 url(hintergruende/headlines.gif) top left repeat-x;
	text-align: left;
	padding: 0 10px 0 12px;
}

table.highscores caption .bezeichnung {
	float: left; display: inline;
	width: 152px; overflow: hidden;
}

table.highscores caption .zurueck, table.highscores caption .vor {
	float: right; display: inline;
	width: 14px; height: 1.8em; overflow: hidden;
	padding: 0;
}
table.highscores caption .vor { padding-left: 4px; }

table.highscores caption .zurueck img, table.highscores caption .vor img {
	width: 14px; height: 1.8em; overflow: hidden;
}

table.highscores caption .zurueck img { background: url(buttons/pfeil_hoch.gif) 0 center no-repeat; }

table.highscores caption .zurueck a img { background: url(buttons/pfeil_hoch.gif) -14px center no-repeat; }
table.highscores caption .zurueck a:link img { }
table.highscores caption .zurueck a:visited img { color: black; }
table.highscores caption .zurueck a:hover img, table.highscores caption .zurueck a:focus img { background-position: -28px center; }
table.highscores caption .zurueck a:active img { background-position: -42px center; }

table.highscores caption .vor img { background: url(buttons/pfeil_runter.gif) 0 center no-repeat; }

table.highscores caption .vor a img { background: url(buttons/pfeil_runter.gif) -14px center no-repeat; }
table.highscores caption .vor a:link img { }
table.highscores caption .vor a:visited img { color: black; }
table.highscores caption .vor a:hover img, table.highscores caption .vor a:focus img {  background-position: -28px center; }
table.highscores caption .vor a:active img { background-position: -42px center; }

table.highscores tr.alt { background-color: white; }

table.highscores th, table.highscores td {
	text-align: left;
	vertical-align: top;
	padding: 0.25em 0;
}

table.highscores th {
	font-weight: normal;
	white-space: nowrap;
	padding-right: 0.2em; padding-left: 12px;
}

table.highscores td {
}

table.highscores td.punkte {
	text-align: right;
	white-space: nowrap;
	padding-right: 12px;
}

/***** Tabelle mit Wahlergebnis *****/

table.wahlergebnisse {
	border: 0;
	border-collapse: separate;
	border-spacing: 0.5em;
	margin: -0.5em -0.5em 0.6em -0.5em;
}

table.wahlergebnisse tr {
	line-height: 1em;
}

table.wahlergebnisse th {
	width: 80%;
}

table.wahlergebnisse th.b90, table.wahlergebnisse th.spd, table.wahlergebnisse th.linke, table.wahlergebnisse th.cdu, table.wahlergebnisse th.fdp {
	border-left: 1.0em solid white;
	padding-left: 0.5em;
}

table.wahlergebnisse th.b90 { border-color: #009900; }
table.wahlergebnisse th.spd { border-color: #FF0000; }
table.wahlergebnisse th.linke { border-color: #9933CC; }
table.wahlergebnisse th.cdu { border-color: black; }
table.wahlergebnisse th.fdp { border-color: #FFCC00; }

table.wahlergebnisse td {
	text-align: right;
	padding-left: 0.25em;
}

/****************/
/***** Fuss *****/
/****************/

#fuss {
	display: none;
}

.noprint {display: none;}