/****************************
Allgemeine Definitionen
****************************/
body, table, font, tr, th, td, input, select
{
	font-size : 12px;
	font-family : Arial;
	vertical-align: top;

}

 a:link {
	text-decoration: none;
	color: white;
	background-color : transparent;
}
 a:visited {
	text-decoration: none;
	color: red;
	background-color : transparent;
}
 a:active {
	text-decoration: none;
	color: Blue;
	background-color: transparent;
}

/***************************
Definition der Kopfstyles 
****************************/
body.kopf
{
	background-color : White;
	color : Navy;
	margin : 8px;
}

font.kopfname
{
	font-family : Arial;
	font-size : 15px;
	font-weight : bold;
	color : Black;
}

font.kopfporeg
{
	font-family : Arial;
	font-size : 12px;
	color : Navy;
	vertical-align : bottom;
}

table.kopftable
{
	padding : 0px;
	border : 0px;
	width : 100%;
	margin : 0px;
	height : 90%;
	vertical-align: middle;
}

td.kopf
{
	text-align : center;
	vertical-align : middle;
}

/******************************
Definitionen der Startseite 
*******************************/
body.startseite
{
	background-attachment : fixed;
	background-position : center;
	background-color : White;
	background-repeat : no-repeat;
}

table.startseite
{
  width : 100%;
  vertical-align : top;
}

table.substartseite
{
	vertical-align : top;
}

td.startseite
{
	vertical-align: top;
	padding: 1px;
}

td.startseiteover
{
   vertical-align: top;
   padding: 1px;
   cursor: pointer;
}

fieldset.startseite
{
	border : 1px solid Silver;
}

fieldset.startseiteover
{
	border : 1px solid Silver;
	cursor: pointer;
}

legend.startseite
{
	color : Black;
	font-family : Arial;
	font-size : 15px;
	font-weight : normal;
}

th.startseite
{
	vertical-align: center;
	background-color: #C3E3F0;
	color: Black;
	text-align : left;
	font-weight : normal;
}

th.startseitealert
{
	vertical-align: center;
	background-color: #DC143C;
	color: White;
	text-align : left;
}

tr.startseitegrey
{
	background-color :  #FFFACD;
}

/*****************************************
Definition des allgemeinen Bereiches
*****************************************/
body.main
{
/*
  background-color : #FFF4D7;
*/
	margin-left : 5px;
	margin-top : 5px;
}

h3.main
{
	color : Blue;
	font-weight : bold;
}

textarea.main
{
	background-color : White;
	color : Black;
	border : 1px solid silver;
}

input.main
{
	background-color : White;
	color : Black;
	border : 1px solid silver;
}

select.main
{
	background-color : White;
	color : Black;
	border : 1px solid Black;
}

input.submitmain
{
	background-color : #75DD75;
    border: 1px solid silver;
	cursor: pointer;
}

input.buttonmain
{
	background-color : #F0E68C;
	border : 1px solid silver;
	cursor: pointer;
}

input.buttonalert
{
	background-color : #DC143C;
	color : White;
	border : 1px solid silver;
	cursor: pointer;
}

table.main
{
	border-left-width : 1px;
	border-left-color : Black;
	border-left-style : solid;
	border-right-width : 1px;
	border-right-color : Black;
	border-right-style : solid;
	border-top-width : 1px;
	border-top-color : Black;
	border-top-style : solid;
	border-bottom-width : 1px;
	border-bottom-color : Black;
	border-bottom-style : solid;
	margin: 0px 0px 0px 0px;
}

table.mainempty
{
  border: 0px;
	margin: 0px 0px 0px 0px;
}

tr.main
{
	padding : 0px;
	border: 0px;
	margin: 0px 0px 0px 0px;
	background-color: white;
}

tr.mainprivat
{
	background-color : #FFDAB9;
	border: 0px;
	margin: 0px 0px 0px 0px;
}

tr.maingrey
{
	background-color : #D3D3D3;
	border: 0px none;
	margin: 0px 0px 0px 0px;
}

tr.grey
{
    background-color : #FFFFFF;
    border: 0px none;
    margin: 0px 0px 0px 0px;
}

td.main
{
	vertical-align : top;
	padding-left : 3px;
	padding-right : 1px;
	padding-bottom : 2px;
	border : 0px;
	margin: 0px 0px 0px 0px;
}

td.mainalert, th.mainalert
{
	background-color : #DC143C;
	color : White;
	border: 0px;
	margin: 0px 0px 0px 0px;
}

th.main
{
	background-color : #D3D3D3;
	color : Black;
	padding-left : 2px;
	padding-right : 2px;
	vertical-align : top;
	border: 0px;
	margin: 0px 0px 0px 0px;
	font-weight: normal;
}

th.mainleft
{
	background-color : #D3D3D3;
	color : Black;
	padding-left : 2px;
	padding-right : 2px;
	vertical-align : top;
	text-align : left;
	font-weight: normal;
	margin: 0px 0px 0px 0px;
}

th.mainright
{
	background-color : #D3D3D3;
	color : Black;
	padding-left : 2px;
	padding-right : 2px;
	vertical-align : middle;
	text-align : right;
	font-weight: normal;
	margin: 0px 0px 0px 0px;
}

th.mainedit
{
	background-color : #C3E3F0;
	color : Red;
	padding-left : 2px;
	padding-right : 2px;
	vertical-align : middle;
	text-align: left;
	font-style: normal;
	font-weight: normal;
	margin: 0px 0px 0px 0px;
}

th.maintxtbtn
{
	background-color : Silver;
	color : White;
	border : 1px solid Black;
	cursor: hand;
	text-align : center;
	padding-left : 5px;
	padding-right : 5px;
	margin: 0px 0px 0px 0px;
}

input.checkbox
{
	background-color : transparent;
	color : Black;
}

fieldset.main
{
	border : 1px solid Silver;
	padding: 5px;
}

legend.main
{
    color: Black;
	font-family : Arial;
	font-size : 15px;
	font-weight : normal;
}

td.wochentag
{
	vertical-align : top;
	padding-left : 3px;
	padding-right : 1px;
	padding-bottom : 2px;
  margin: 0px;
}

td.samstag
{
	vertical-align : top;
	padding-left : 3px;
	padding-right : 1px;
	padding-bottom : 2px;
	background-color : #FFDAB9;
  margin: 0px;
}

td.feiertag
{
	vertical-align : top;
	padding-left : 3px;
	padding-right : 1px;
	padding-bottom : 2px;
	background-color : #DC143C;
  margin: 0px;
}

/***************************
Definition der Kalenderstyles, die unabh�ngig von den Terminen ist
****************************/
body.kalendermain
{
	background-color : White;
	margin-left : 5px;
	margin-top : 5px;
	color: Black;
}

table.kalenderempty
{
	border: 0px;
	width : 100%;
}

td.kalenderempty
{
	vertical-align : top;
	padding-left : 3px;
	padding-right : 1px;
	padding-bottom : 2px;
}

tr.kalenderemtpty
{
	margin : 0px;
	padding : 0px;
	border: 0px;
}

table.kalendermonat
{
	border-width: 0px;
	background-color : White;
	border-color : Black;
	border-style : solid;
	width: 170px;
}

th.kalendermonatanzeige
{
	background-color : White;
	color: Black;
	font-weight: normal;
	cursor: pointer;
}

th.kalendertageanzeige
{
	background-color : White;
	font-weight: normal;
	color: Black;
}

td.kalenderfeiertag
{
	color: White;
	cursor: pointer;
	background-color:Crimson;
	text-align: center;
}

td.kalendersamstag
{
	color: Black;
	cursor: pointer;
	background-color: #FFDAB9;
	text-align: center;
}

td.kalenderwochentag
{
	color: Black;
	cursor: pointer;
	background-color: #C3E3F0;
	text-align: center;
}

td.kalenderheute
{
	color: Black;
	cursor: pointer;
	background-color: Aqua;
	text-align: center;
	border : thin dashed Black;
}
/***************************
Definition der Terminstyles, die unabh�ngig vom Kalender ist
****************************/
body.termin
{
	margin : 0px 0px 0px 20px;
	background-color : White;
	color: Black;
}

table.terminempty
{
	margin : 0px 0px 0px 0px;
}

tr.terminmain
{
	margin : 0px;
	padding : 0px;
	border: 0px;
}

td.terminmain
{
	margin : 0px;
	padding : 0px;
	border: 0px;
	vertical-align: top;
}

td.termineinladen
{
	margin : 0px;
	padding : 0px;
	border: 1px solid silver;
	background-color : #F8EEF8;
	vertical-align: top;
}

td.termineingeladen
{
	margin : 0px;
	padding : 0px;
	border: 1px solid silver;
	background-color : #F8FFF8;
	vertical-align: top;
}

td.termincommon
{
	margin : 0px;
	padding : 0px;
	border: 1px solid silver;
	background-color : aqua;
	vertical-align: top;
}

td.terminleer1
{
	margin : 0px;
	padding : 0px;
	border: 0px solid;
	background-color : #F2F2F2;
	vertical-align: top;
}

td.terminleer2
{
	margin : 0px;
	padding : 0px;
	border: 0px solid;
	background-color : #E0E0E0;
	vertical-align: top;
}

td.terminanzeige
{
	margin : 0px;
	padding : 0px;
	border: 0px;
	background-color : Silver ;
	vertical-align: top;
}

td.terminprivat
{
	margin : 0px;
	padding : 0px;
	border: 1px solid silver;
	background-color : #FFDAB9;
	vertical-align: top;
}

th.terminanzeige
{
	margin : 0px;
	padding : 0px;
	border: 0px;
	background-color : Gray;
	color : White;
}

input.terminbutton
{
	background-color : #F0E68C;
	border : 1px solid silver;
}

input.terminmain
{
	background-color : White;
	color : Black;
	text-align : right;
	border: 1px solid silver;
}

select.terminmain
{
	background-color : White;
	color : Black;
}

td.terminfeiertag
{
	color: White;
	cursor: pointer;
	background-color: Crimson;
	text-align: center;
	font-weight : bold;
}

td.terminsamstag
{
	color: Black;
	cursor: pointer;
	background-color: #FFDAB9;
	text-align: center;
}

td.terminzeit
{
	color: Black;
	cursor: pointer;
	background-color: White;
	text-align: center;
	vertical-align: top;
}

td.terminwochentag
{
	color: Black;
	cursor: pointer;
	background-color: #C3E3F0;
	text-align: center;
}

td.terminheute
{
	color: Black;
	cursor: pointer;
	background-color: Aqua;
	text-align: center;
	border : thin dashed Black;
}

font.wochentag
{
	color: Black;
	font-size : 18px;
}

font.feiertag
{
	color:Red;
	font-size : 18px;
}

fieldset.termin
{
	border : 1px solid Black;
	padding: 5px;
}

legend.termin
{
	color : Black;
	font-family : Arial;
	font-size : 15px;
	font-weight : normal;
}

/*********************************
Definitionen der Menu-Styles
*********************************/


nav {
	box-sizing: border-box;
	float: left;
	width: 100%;
	background: #3a3a3a;
	font-size: 16px;
}

nav ul {
	margin: 0;
	padding: 0;
}

nav a {
	display: block;
	color: #fff;
	text-decoration: none;
}

nav ul li {
	position: relative;
	float: left;
	list-style: none;
}

nav ul li:hover {
	background: #4096ee;
}

nav ul li a {
	padding: 20px;
}

nav ul ul {
	position: absolute;
	top: -9999px;
	left: -9999px;
	background: #333;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.6);
}

nav ul ul li {
	float: none;
	width: 200px;
	border-bottom: 1px solid #555;
}

nav ul ul li a {
	padding: 10px 20px;
}

nav ul li:hover > ul {
	top: 100%;
	left: 0;
}

nav ul ul li:hover > ul {
	top: 0;
	left: 200px;
}

nav ul li.submenu > a:after {
	position: relative;
	float: right;
	content: '';
	margin-left: 10px;
	margin-top: 5px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #fff;
	border-bottom: 5px solid transparent;
}

nav ul ul li.submenu a:after {
	margin-left: auto;
	margin-right: -10px;
	border-left: 5px solid #fff;
	border-right: 5px solid transparent;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}

nav ul ul li:last-child {
	border-bottom: none;
}