body,p,td {
	font-family:Verdana; font-size:8pt; 
}

body {
	background-color:#DBDBDB;
	margin:10px;padding:0;
}

p {
	margin:0 0 15px 0; padding:0;
}

A:link {
	color:#000000;
}

A:visited {
	color:#000000;
}

A:hover {
	color:#FF0000;
}
A:active {
	color:#000000;
}

/* �berschriften */
H1 {
	margin:0 0 15px 0; padding-left:10px;
	line-height:24px;
	color:#FFFFFF;
	font-style:italic;
	font-weight:bold;
	font-size:16px;
	background-image:url('../images/bkg_topic.gif');
	background-repeat:no-repeat;
}

/* Eingabeelemente */
form {
	margin:0;padding:0;
}

body:has(.login-form) {
	background:#e7edf5;
}

.login-form {
	position:absolute;
	top:18%;
	left:0;
	right:0;
	text-align:center;
}

.login-card {
	display:inline-block;
	width:420px;
	max-width:calc(100% - 32px);
	box-sizing:border-box;
	padding:36px 40px 24px;
	background:#EDEBDD;
	border-radius:14px;
	box-shadow:0 16px 40px rgba(24, 49, 84, 0.18);
	text-align:left;
	font-family:Verdana, sans-serif;
}

.login-card .login-logo {
	display:block;
	margin:0 auto 18px;
}

.login-card h1 {
	margin:0 0 22px;
	padding:0;
	background:none;
	color:#1b3f78;
	font-style:normal;
	font-size:26px;
	font-weight:bold;
	line-height:1.2;
	text-align:center;
}

.login-card label {
	display:block;
	margin:0 0 6px;
	color:#334155;
	font-size:13px;
	font-weight:bold;
}

.login-card input[type="text"],
.login-card input[type="password"] {
	display:block;
	width:100%;
	box-sizing:border-box;
	margin:0 0 16px;
	padding:12px 14px;
	border:1px solid #c5d0de;
	border-radius:8px;
	background:#f8fafc;
	font-family:Verdana, sans-serif;
	font-size:16px;
}

.login-card input[type="text"]:focus,
.login-card input[type="password"]:focus {
	outline:none;
	border-color:#2f6fce;
	background:#fff;
	box-shadow:0 0 0 3px rgba(47, 111, 206, 0.18);
}

.login-card .login-remember {
	display:flex;
	align-items:center;
	gap:8px;
	margin:2px 0 20px;
	font-weight:normal;
	font-size:13px;
}

.login-card .login-remember input {
	width:16px;
	height:16px;
	margin:0;
}

.login-card button {
	width:100%;
	padding:12px 16px;
	border:0;
	border-radius:8px;
	background:#1f5fbf;
	color:#fff;
	font-family:Verdana, sans-serif;
	font-size:16px;
	font-weight:bold;
	cursor:pointer;
}

.login-card button:hover {
	background:#174c99;
}

.login-card .error {
	margin:0 0 16px;
	padding:10px 12px;
	border-radius:8px;
	background:#fde8e8;
	color:#9b1c1c;
	font-size:13px;
	font-weight:bold;
}

.login-card .login-copy {
	margin:18px 0 0;
	color:#64748b;
	font-size:11px;
	text-align:center;
}

textarea,input,select {
	font-family:Verdana; font-size:8pt;
}

/* Absatz �ber einem Eingabeelement */
p.inputHeader {
	margin:0 0 3px; padding:0;
}

/* Tabelle f�r Eingabemaske */

table.tblInput {
	width:100%;
	margin-bottom:15px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblInput td {
	padding:3px;
	border:1px solid gray;
	line-height:16px;
}

table.tblInput tr {
	background-color:#E9E9E9;
}

table.tblInput tr.header {
	background-color:#ACC9FF;
}

/* Kontrollbereich in der Eingabemaske */
table.tblInput td.inputControl {
	padding:5px;
}


/* Kalender */
table.tblCalendary {
	width:100%;
	margin-bottom:15px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblCalendary td {
	padding:3px;
	border:1px solid gray;
	background-color:white;
	white-space:nowrap;
	line-height:16px;
}

table.tblCalendary td.sunday {
	background-color:#FFCC00;
}

table.tblCalendary td.holiday {
	background-color:#FF9428;
}

table.tblCalendary td.selected {
	background-color:#A9E969;
}

table.tblCalendary td.header {
	background-color:#E6EEFF;
}

table.tblCalendary td.error {
	background-color:#FF0000;
}

table.tblCalendary td.separator {
	background-color:#CCCCCC;
}

/* Woche */
table.tblWeek {
	width:100%;
	margin-bottom:0px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblWeek td {
	padding:3px;
	border:1px solid gray;
	line-height:16px;
}


table.tblWeek td.enabled {
	background-color:#A9E969;
}

table.tblWeek td.disabled {
	
}

/* Navigationstabelle */
table.tblNavList {
	width:100%;
	margin-bottom:15px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblNavList td {
	padding:3px;
	border:1px solid gray;
	line-height:16px;
}

table.tblNavList tr {
	background-color:#E9E9E9;
}

table.tblNavList tr.normal {
	background-color: #E9E9E9;
}

table.tblNavList tr.header {
	background-color: #ACC9FF;
}

table.tblNavList tr.header2 {
	background-color: #D9D9D9;
}

table.tblNavList tr.highlight {
	background-color: #CCFF99;
}

table.tblNavList tr.deleted {
	background-color: #D3D3D3;
}

table.tblNavList *.highlight2 {
	background-color: #FFC0CA;
}


/* Tabelle f�r Baum */
table.tblTree {
	width:100%;
	margin-bottom:15px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblTree td {
	padding:5px;
	border:1px solid gray;
	background-color:#FFFFFF;
}

/* Tabelle f�r Men� */
table.tblMenu {
	width:100%;
	margin-bottom:15px;
	border-collapse:collapse;
	border:1px solid gray;
}

table.tblMenu td {
	padding:3px;
	border:1px solid gray;
	line-height:16px;
}

table.tblMenu td.header {
	background-color:#ACC9FF;
}
table.tblMenu td.submenu {
	background-color:#FFFFFF;
}
.app-top {
	display: flex;
	align-items: flex-start;
	background-color: #EDEBDD;
	border-bottom: 1px solid gray;
	margin: -10px -10px 10px -10px;
	padding: 8px 10px 0 10px;
}
.app-top .menu-wrap { flex: 1; }
.app-top .logo-wrap { width: 200px; text-align: center; }
.app-top .logo-wrap img { margin-bottom: 3px; }
.toolbar { margin: 0 0 12px 0; }
.toolbar form { display: inline; margin-right: 30px; }
.pager a, .pager b { margin-right: 6px; }
.error { color: red; font-weight: bold; }
