*{padding:0; margin:0;}
html, body{    margin:0; background-color:#014023; color:black; font-family:arial, verdana, sans-serif; font-size:0.85em; height:100%; padding:0 0 1px 0;}

.clear{    clear:both;    height:0.1px; overflow:hidden; }
img{border:0;}
a, a:link{color:#AF0917; text-decoration:underline;}
a:hover{color:#AF0917; text-decoration:none;}
abbr, acronym, span.abbr { cursor: help; border-bottom: 1px dashed #000;}
p{    padding:0 0 1em 0;    margin:0; }
h1{    color:#666666;    font-size:1.55em; margin:0;    padding:0 0 1em 0;}
h2{    font-size:1em; color:#666666; padding:0 0 1em 0; margin:0 0 0 0;}
#centercontent h2{color:black; padding:0;}
h3{    font-size:1em; color:#000000; padding:0 0 0 0; margin:0 0 0 0;}
fieldset{ border:0;    padding:0; margin:0; }

#wrapper{ width:900px; min-height:600px; height:auto; margin:0 auto 30px auto; background:#ffffff url(../images/bg.gif) top left no-repeat;}
#header{ padding:20px 0 0 30px; height:80px; margin-bottom:3.5em;}
img.logo{float:left;}

#meta{ float:right; width:500px; padding:0 30px 0 0; text-align:right; }
#meta a{ margin:0 0 0 15px; font-weight:bold; color:#666666; text-decoration:none; font-size:0.95em;}
/*--alt--
#hauptnavi{    background-color:black;    padding:2px 0 2px 30px; margin:0; float:left; width:870px; list-style:none;}
#hauptnavi li{ display:block; float:left; margin:0 40px 0 0;}
#hauptnavi a, #hauptnavi a:link, #hauptnavi a:visited{ font-weight:bold; text-decoration:none; color:white;}
#hauptnavi a:hover, #hauptnavi a.active, #hauptnavi a:visited.active{ color:#FFDD00; }
*/
.mainnav{float:right; margin-right: 30px; font-weight:bold;}
.mainnav a, .mainnav a:link, .mainnav a:visited{color:#666; font-size:0.95em;}

#umschalter{ padding:20px 30px 20px 0;    width:350px; float:right; text-align:right; font-weight:bold; color:#666666; text-decoration:none; font-size:0.95em; }
#umschalter a{ font-weight:normal;}

#container{float:left; width:840px; padding:0 30px; }
#container_kalender{float:left; width:840px; padding:0 10px 0 30px;}
#centercontent{    width:645px; padding:0 20px 0 0;  margin:0; float:left; position:relative; min-height:300px;}
#centercontent ul{padding:0 0 1.5em 2em;}
#rechts{float:left; text-align:left; width:175px; padding:0; margin:0;}
#footer{ width:840px; margin:0; padding:10px 30px 40px 30px; float:left;}
#footer .text p{float:left; width: 558px;padding:44px 0 0 0;}
#footer .image{width:182px; float:right;}
#footer a, #footer a:link, #footer a:visited, #footer a:hover{color:#000;}
#footer img{float:right; }


.borderbox{border:1px solid #AF0917; padding:15px 10px; margin:0 0 1em 0;}
.box{padding:0; margin:0 0 1em 0;}
.borderbox p{line-height:1.5em;}
.borderbox p a img{padding:0px 0 0 0; float:left;}
.borderbox h2{color:#AF0917;}

/*Bilderbox*/
#bilderbox{ float:left; width:645px; padding:10px 0 0 0; display:inline; }
#bilderbox dl{ float:left; width:645px; margin:0px 0px 2em 0; padding:0; display:inline; }
#bilderbox dt{ float:right; width:440px; margin:0; padding:0 15px 0 0; letter-spacing:1px; font-weight:bold;}
#bilderbox dd{ margin:0 0 0 190px; padding:0 0px 0 0; line-height:1.5em; color:#000; }
#bilderbox dl dd.img{margin:0;}
#bilderbox dd.img img{float:left; margin:0 10px 0 0; padding: 0px; }
#bilderbox input{margin-right:0.5em;}


/*KALENDER*/

.einleitung{float:left; width:72%;padding-right:3%;}
#shortcalendar{float:left; width:24%; height:180px;}
#shortcalendar table{float:right; margin-right:10px; display:inline; font-size:1em;}
#shortcalendar th{background:#D2D5DA; padding:0.3em;}
#shortcalendar th a{text-decoration: none;}
#shortcalendar td{padding:0.2em 0.4em; background:#F7F7F7;}


#schalter{padding-bottom:2.5em; clear:both;}
#schalter a{display:block; width:20px; float:left; text-decoration:none;margin:1px 0 0 0;}
#schalter a.vor{background:url(../images/pfeilrechts.gif) 50% 50% no-repeat;}
#schalter a.zurueck{background:url(../images/pfeillinks.gif) 50% 50% no-repeat;}
#schalter span{display:block; float:left; margin:0 1em; color:#666666; font-size:1.3em; font-weight:bold;}


.accessibleonly {position: absolute; overflow: hidden; width: 1px; height: 1px; left: -1000em; top: -1000em;}
        
.button{border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;}


.anbieter {float: left;}
.anbieter h3{ border-right: 1px solid black;padding:0 0 0 0.8em; margin:0;}
.anbieter .dauer {position: relative; height: 3em; overflow: auto; font-size: 85%;border-bottom:1px solid #000; margin-top:0px; padding:0 2px 0 0.9em;  border-right: 1px solid black;}

.terminliste {position: relative; height: 36.1em; /* 12h*6*0.5em */ background-color: #fff; border-bottom:1px solid #000; border-right:1px solid #000; margin-bottom:10px; margin-top:2px;}
.terminliste li {position: absolute; list-style-type: none; overflow: hidden;}

.terminliste-1cols li {width: 100%;}
.terminliste-2cols li {width: 50%;}
.terminliste-3cols li {width: 33.3%;}
.terminliste-4cols li {width: 25%;}
.terminliste-5cols li {width: 20%;}

.termin-col1 {left: 0;}
.terminliste-2cols .termin-col2 {left: 50%;}
.terminliste-3cols .termin-col2 {left: 33.3%;}
.terminliste-3cols .termin-col3 {left: 66.6%;}
.terminliste-4cols .termin-col2 {left: 25%;}
.terminliste-4cols .termin-col3 {left: 50%;}
.terminliste-4cols .termin-col4 {left: 75%;}
.terminliste-5cols .termin-col2 {left: 20%;}
.terminliste-5cols .termin-col3 {left: 40%;}
.terminliste-5cols .termin-col4 {left: 60%;}
.terminliste-5cols .termin-col5 {left: 80%;}





.termine-15min li .termin,
li.termin-15min .termin {height: 0.75em;}
.termine-30min li .termin,
li.termin-30min .termin {height: 1.5em;}
.termine-45min li .termin,
li.termin-45min .termin {height: 2.25em;}
.termine-60min li .termin,
li.termin-60min .termin {height: 3em;}
.termine-60min li .termin-zeit,
li.termin-60min .termin-zeit {height: 3em;}
.termin-zeit{height:3em;}
.termine-90min li .termin,
li.termin-90min .termin {height: 4.5em; }
.termine-120min li .termin,
li.termin-120min .termin {height: 6em;}
.termine-120min li .termin,
li.termin-120min .termin {height: 6em;}
.termine-12std li .termin,
li.termin-12std .termin {height: 35.85em;}

/* unterschiedliche Terminlaengen */
.terminliste .t15{height:00.75em;}
.terminliste .t30{height:1.5em;}
.terminliste .t45{height:2.25em;}
.terminliste .t60{height:3em;}
.terminliste .t75{height:3.75em;}
.terminliste .t90{height:4.5em;}
.terminliste .t105{height:5.25em;}
.terminliste .t120{height:6em;}
.terminliste .t135{height:6.75em;}
.terminliste .t150{height:7.50em;}
.terminliste .t165{height:8.25em;}
.terminliste .t180{height:9em;}
.terminliste .t195{height:9.75em;}
.terminliste .t210{height:10.50em;}
.terminliste .t225{height:11.25em;}
.terminliste .t240{height:12em;}

/* unterschiedliche Terminlaengen */
.terminliste .icon-3{background: url(../images/schokowein1.jpg) 95% 10% no-repeat;}
.terminliste .icon-1{background: url(../images/persoenl1.jpg) 95% 10% no-repeat;}
.terminliste .icon-2{background: url(../images/audio1.jpg) 95% 10% no-repeat;}

.termin-0800 {top:0;}
.termin-0810 {top:0.5em;}
.termin-0815 {top:0.75em;}
.termin-0820 {top:1em;}
.termin-0830 {top:1.5em;}
.termin-0840 {top:2em;}
.termin-0845 {top:2.25em;}
.termin-0850 {top:2.5em;}
.termin-0900 {top:3.0em;}
.termin-0910 {top:3.5em;}
.termin-0915 {top:3.75em;}
.termin-0920 {top:4em;}
.termin-0930 {top:4.5em;}
.termin-0940 {top:5em;}
.termin-0945 {top:5.25em;}
.termin-0950 {top:5.5em;}
.termin-1000 {top:6em;}
.termin-1010 {top:6.5em;}
.termin-1015 {top:6.75em;}
.termin-1020 {top:7em;}
.termin-1030 {top:7.5em;}
.termin-1040 {top:8em;}
.termin-1050 {top:8.5em;}
.termin-1045 {top:8.75em;}
.termin-1100 {top:9em;}
.termin-1110 {top:9.5em;}
.termin-1115 {top:9.75em;}
.termin-1120 {top:10em;}
.termin-1130 {top:10.5em;}
.termin-1140 {top:11em;}
.termin-1145 {top:11.25em;}
.termin-1150 {top:11.5em;}
.termin-1200 {top:12em;}
.termin-1210 {top:12.5em;}
.termin-1215 {top:12.75em;}
.termin-1220 {top:13em;}
.termin-1230 {top:13.5em;}
.termin-1240 {top:14em;}
.termin-1245 {top:14.25em;}
.termin-1250 {top:14.5em;}
.termin-1300 {top:15em;}
.termin-1310 {top:15.5em;}
.termin-1315 {top:15.75em;}
.termin-1320 {top:16em;}
.termin-1330 {top:16.5em;}
.termin-1340 {top:17em;}
.termin-1345 {top:17.25em;}
.termin-1350 {top:17.5em;}
.termin-1400 {top:18em;}
.termin-1410 {top:18.5em;}
.termin-1415 {top:18.75em;}
.termin-1420 {top:19em;}
.termin-1430 {top:19.5em;}
.termin-1440 {top:20em;}
.termin-1445 {top:20.25em;}
.termin-1450 {top:20.5em;}
.termin-1500 {top:21em;}
.termin-1510 {top:21.5em;}
.termin-1515 {top:21.75em;}
.termin-1520 {top:22em;}
.termin-1530 {top:22.5em;}
.termin-1540 {top:23em;}
.termin-1545 {top:23.25em;}
.termin-1550 {top:23.5em;}
.termin-1600 {top:24em;}
.termin-1610 {top:24.5em;}
.termin-1615 {top:24.75em;}
.termin-1620 {top:25em;}
.termin-1630 {top:25.5em;}
.termin-1640 {top:26em;}
.termin-1645 {top:26.25em;}
.termin-1650 {top:26.5em;}
.termin-1700 {top:27em;}
.termin-1710 {top:27.5em;}
.termin-1715 {top:27.75em;}
.termin-1720 {top:28em;}
.termin-1730 {top:28.5em;}
.termin-1740 {top:29em;}
.termin-1745 {top:29.25em;}
.termin-1750 {top:29.5em;}
.termin-1800 {top:30em;}
.termin-1810 {top:30.5em;}
.termin-1815 {top:30.75em;}
.termin-1820 {top:31em;}
.termin-1830 {top:31.5em;}
.termin-1840 {top:32em;}
.termin-1845 {top:32.25em;}
.termin-1850 {top:32.5em;}
.termin-1900 {top:33em;}
.termin-1910 {top:33.5em;}
.termin-1915 {top:33.75em;}
.termin-1920 {top:34em;}
.termin-1930 {top:34.5em;}
.termin-1940 {top:35em;}
.termin-1945 {top:35.25em;}
.termin-1950 {top:35.5em;}        
        
.terminliste .termin {border: 1px solid #999999; margin: 0 2px; cursor:pointer; }
.terminliste .termin-zeit{border-bottom:1px solid black; margin:0 8px 0 0;}
.terminliste .termin-zeit2{border-bottom:0; margin:0 8px 0 0;}
.terminliste li.frei .termin  {background-color: #CFDD5A;}
.terminliste li.gesperrt .termin {background-color: #DEDEDE;}
.terminliste li.ausgebucht .termin {background-color: #fff;}
.terminliste li.reserviert .termin {background-color: #FFF199; border: 1px solid #999;}

.terminliste .frei {background-color: #CFDD5A;}
.terminliste .gesperrt {}
.terminliste .ausgebucht {background-color: #fff;}
.terminliste .reserviert {background-color: #FFF199; }
.terminliste p.reserviert {background:url(../images/delete.gif) top left no-repeat; padding-left:20px;}
.terminliste p.titel {padding-top:0; padding-right:20px;}

.termin p, .termin-zeit p, .termin-zeit2 p { padding: 0.3em; padding-bottom:0; margin-bottom:0; font-size: 80%;}
.termin-zeit p.zeit, .termin-zeit2 p.zeit{font-size:1.5em; position:relative; padding:0.5em 0 0 0.7em;width:40px;}}
.termin-zeit p.zeit span, .termin-zeit2 p.zeit span{font-size:0.5em; position:absolute;}

.plaetze-bubble {background-color: #ffc; border: 1px solid #c93; position: absolute; bottom: 66%; left: 33%; width: 245px; padding: 0.3em; z-index:100;}
.plaetze-bubble input { width: 2em; border:1px solid #999; font-size:1em; padding:2px; }
.plaetze-bubble input.button2{border:none; color:#AF0917; cursor:pointer; background:none; font-size:1em; width:6em; text-decoration:underline;}
.bubble-spitze {position: absolute;top: 100%;left: 10%;width: 19px;height: 10px; background: url("../images/bubble-spitze.gif") no-repeat top left;}
li.bubble {overflow: visible; }
.plaetze-bubble h2{padding:0; margin:0 0 0.2em 0; text-decoration:underline;}
.plaetze-bubble p{font-size:0.95em; padding:0; margin:0; line-height:1.4em;}
.plaetze-bubble p label{font-size:1em; line-height:2em; margin-bottom:0.5em; margin-top:0.5em; }


/* dynamisch erzeugt */

/*#anbieter-1 { width: 48%; }
#anbieter-2 {width: 10.5%; }
#anbieter-3 {width: 23%; }
#anbieter-4 {width: 10.5%; }*/
#anbieter-zeit{width:7%}

/* debug */
/*        .anbieter {border: 1px solid blue; }
        .terminliste { border: 1px dotted blue;}
        .terminliste li {border: 1px dashed red;}
        */
        

.resdaten{ float:left; width:44%; padding:0px 0 0 0; display:inline; margin-right:1em;}
.resdaten dl{ float:left;  margin:0px 0px 0em 0; padding:0; display:inline; width:100%; border:1px solid #EFEFEF; border-top:none;}
.resdaten dt{ float:left; margin:0; padding:0.2em; letter-spacing:1px; font-weight:bold; width: 55%;}
.resdaten dd{ float:left; width:42%; padding:0.2em }
.resdaten h2{border-bottom:1px solid #EFEFEF;}

.persdaten2{ float:left; width:50%; padding:0px 0 0 0;  }
.persdaten2 dl{ float:left;  margin:0px 0px 0em 0;  display:inline; width:100%; border:1px solid #EFEFEF; border-top:none;}
.persdaten2 dt{ float:left; margin:0; padding:0 0% 0 0; padding:0.2em; letter-spacing:0px; font-weight:normal; width: 30%;}
.persdaten2 dd{ float:left; width:65%; padding:0.2em;}
.persdaten2 h2{width:100%; margin:0; padding:0 0 1em 0;border-bottom:1px solid #EFEFEF; border-left:1px solid white; border-right:1px solid white; }

h1.bestaetigung{ width:50%; float:left;}
p.hilfe{width:50%; float:right; text-align:right;}
p.hilfe a.hilfe{float:right; display:inline; font-size:1em; text-decoration:none; padding:2px 15px 3px 15px; /* Links */ border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;}


#persdaten{float:left; width:50%; padding-bottom:2em;}
#persdaten label{width:30%; float:left;}
#persdaten input.textfield{width:65%; font-size:1em; font-family:arial, verdana; padding:1px; margin-bottom:0.2em; border:1px solid #999;}
#persdaten textarea{width:65%; font-size:1em; font-family:arial, verdana; padding:1px; margin-bottom:2em; border:1px solid #999; height: 4em;}
#persdaten select{width:65%; font-size:1em; font-family:arial, verdana; padding:1px; margin-bottom:0.2em; border:1px solid #999;}
#persdaten span{ display:block; float:left; padding:0 1em 0 0.2em;}
* html #persdaten span{padding:0.2em;}
#persdaten input.radio{ display:block; float:left; margin-bottom:0.5em;}


.buttons{width:100%; float:left;}
.buttons2{width:100%; float:left;padding-top:2em;}

.buttons a, .buttons2 a, .buttons button{
    display:block;
    float:left;
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    text-decoration:none;
    padding:2px 10px 3px 7px; /* Links */
    border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;    
}

.buttons button{background:#CFDD5A; color:#000; padding:3px 10px !important; font-size:1.1em;}

p.weiter{padding-bottom:2em; float:left;}
p.weiter a.weiter{
    float:right; 
    margin-right:10px; 
    display:inline; 
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    text-decoration:none;
    padding:2px 10px 3px 7px; /* Links */
    border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;}

p.weiter a.zurueck{
    float:left; 
    display:inline; 
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    text-decoration:none;
    padding:2px 10px 3px 7px; /* Links */
    border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;}

input.weiterbutton{    
	float:right; 
    display:inline; 
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    padding:2px 10px 3px 7px; /* Links */
    border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold;
	margin-bottom:1em;
}


p.weiter2 a.weiter2{ float:left; font-family:Arial, Verdana, sans-serif; font-size:1em; text-decoration:none; padding:2px 10px 3px 10px; border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold; margin-top:1em;}        
p.mehrlink{clear:both; padding-top:0.5em;}

.buttons button{
    width:auto;
    overflow:visible;
    padding:1px 7px 1px 7px; /* IE6 */
    float:right;
    font-family:arial;
}
.buttons button[type]{
    padding:2px 7px 1px 7px; /* Firefox */
    line-height:17px; /* Safari */
}


button.speichern, button.loeschen, button.abbrechen{
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    text-decoration:none;
    border:1px solid #AF0917; color:#AF0917; background:none; cursor:pointer; background:#FFF199; font-weight:bold;    
    width:auto;
    overflow:visible;
    padding:1px 7px 1px 18px; /* IE6 */
    margin-right:5px;
}

button.speichern, button.loeschen, button.abbrechen{
    font-family:Arial, Verdana, sans-serif;
    font-size:1em;
    text-decoration:none;
    border:1px solid #AF0917; color:#AF0917; background:none; cursor:pointer; background:#FFF199; font-weight:bold;    
    width:auto;
    overflow:visible;
    padding:1px 7px 2px 7px; /* IE6 */
    margin-right:5px;
}

button.speichern, button.abbrechen, button.loeschen{
    border:1px solid #666; color:#666; background:none; cursor:pointer; background:#EFEFEF; font-weight:bold; }

input#plaetze{ float:left; margin-right:5px; padding:3px 2px;}

/*-------------------------------------------------
FLASHES
-------------------------------------------------*/

#Flash {
   text-align: left;
   border: 1px solid #ccc;
   padding: 5px 5px 5px 30px;
   font-size: 1em;
   margin: 0 auto 12px auto;
   margin-right: 7px;
}

#Flash.good {
    border-color: #9c9;
    color: #060;
    background: url(../images/alertgood_icon.gif) #E2F9E3 left no-repeat;
}

#Flash.bad {
    border-color: #c99;
    color: #fff;
    background: url(../images/alertbad_icon.gif) #c00 left no-repeat;
}

.red {
    color: #c00;
}

.error {
    background-color: red;
    padding: 2px;
}

p.warning {background:#FFDD00; padding: 2px;}
div.warning {background:#FFDD00;}

/*-------------------------------------------------
FIELD Validation
-------------------------------------------------*/

input.required, textarea.required {
    border: 1px solid #00A8E6;
}
input.validation-failed, textarea.validation-failed {
    border: 1px solid #FF3300;
    color : #FF3300;
    background-color: #ffdfdf;
}
input.validation-passed, textarea.validation-passed {
    border: 1px solid #00CC00;
    color : #000;
}

.validation-advice {
    margin: 5px 0;
    /*padding: 5px;*/
    padding: 5px 5px 5px 30px;
    background-color: #FF3300;
    color : #FFF;
    font-weight: bold;
    background: url(../images/alertbad_icon.gif) #c00 left no-repeat;
}

.custom-advice {
    margin: 25px 0;
    padding: 5px;
    background-color: #C8AA00;
    color : #FFF;
    font-weight: bold;
    background: url(../images/alertbad_icon.gif) #c00 left no-repeat;
}

a.entfernen{float:left;}
p.dauer{clear:both; }
.anbieter h3{height:1.5em; }

/*-------------------------------------------------
Fortschrittsanzeige
-------------------------------------------------*/

p.wkfortschritt{color:#000; height:3em;}
p.wkfortschritt a:link, p.wkfortschritt a:visited{text-decoration:none;     display:block; padding:1px 10px 0 5px; float:left; color:#AF0917; }
p.wkfortschritt a:hover, p.wkfortschritt a.active, p.wkfortschritt a:visited .active{text-decoration:underline;   display:block; padding:1px 10px 0 5px; float:left;}
p.wkfortschritt a{display:block; padding:1px 10px 0 5px; float:left; color:#000; text-decoration:none;}
span.erledigt{width:1em; border:1px solid #AF0917; color:#AF0917; display:block; padding-left:3px; float:left;}
span.offen{ width:1em; border:1px solid #666666; color:#fff; background-color:#666666; display:block; padding-left:3px; float:left;}
span.offen2{ display:block; padding:1px 10px 0 5px; float:left; color:#666666; }

form.addreserv{ padding:10px 0 50px 0; margin:0; }
form.addreserv fieldset{	padding:0; margin:0; border:0; }
form.addreserv label{ width:120px; display:block; float:left; }
form.addreserv input{ float:left; font-size:1em; clear:right; border:1px solid #999999; font-family:arial; padding:1px;}
form.addreserv textarea{	float:left; font-size:0.95em; border:1px solid #999999; font-family:arial; padding:1px; margin-top:0px; width:169px; }
form.addreserv .csc-mailform-submit{width:; margin-left:120px; background:none;	border:1px solid #999999; cursor:pointer; border:1px solid #999999; font-family:arial; padding:1px; }
div.csc-mailform-field{ float:left;margin-bottom:5px; clear:both; width:450px; }
p.resform{clear:both;}

