td {
	font-size: 14px;
}

.indent {
	padding-left: 20px
}

#mainmenu {
	margin-left: 16px;
	padding-left: 8px;
	font-size: 14px;
	margin-bottom: 12px;

	&.application {
		list-style-type: upper-roman;
	}

	&.admin {
		list-style-type: upper-alpha;
	}

	&~.submenu.admin {
		list-style-type: lower-alpha;
		margin-left: 24px;
		padding-left: 0;
		font-size: 12px;

		& li {
			margin-bottom: 8px;
		}
	}

	li {
		margin-bottom: 8px;
	}

	li.current {
		font-weight: bold;
	}
}

ul#settings {
	list-style-type: none;
	padding-left: 0;
	font-size: 14px;

	border-top: 2px solid #ccc;
	margin-top: 24px;
	padding-top: 24px;

	li {
		/* display: inline; */
		margin-bottom: 10px;
	}
}

.forms {
	background-color: #E4F8FA;
	font: normal 12px arial, verdana;
	padding: 3px;
	border: 1px solid #CAE4FF;
}

.myaccount {
	background-color: #E4F8FA;
	font: normal 12px arial, verdana;
	padding: 2px 5px;
	border: 1px solid #CAE4FF;
	height: 300px;
}

a {
	color: #03c;
}

.main {
	font: normal 12px arial, verdana;
	padding: 2px;
	margin: 2px;

}

.titlehdr {
	font: normal 22px arial, verdana;
	color: #c00;
	border-bottom: 1px solid #c00;
}

.titlehdr~h3 {
	font: normal 18px arial, verdana;
	color: #000;
	border-bottom: 1px solid currentColor;
	margin-bottom: 4px;
}

.notify-error,
.notify-warning,
.notify-success,
.notify-info {

	width: 80%;
	margin: 20px 0;
	padding: 20px;
	font: bold 13px verdana;
	border-radius: 5px;
	border-width: 4px;
	border-style: solid;

}

.dismissable {
	top: 30px;
	width: 80%;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.notify-success {
	color: #060;
	border-color: #060;
	background-color: #E6F8E6;
}

.notify-error {
	color: #c00;
	border-color: #c00;
	background-color: #FEF1ED;
}

.notify-warning {
	color: #c60;
	border-color: #c60;
	background-color: #FFF4E6;
}

.notify-info {
	color: #06c;
	border-color: #06c;
	background-color: #E6F0FA;
}

.error {
	font: normal 11px arial, verdana;
	color: #c00;
	border: 1px solid #c00;
	padding: 2px;
	margin: 5px;
	float: left;
	background-color: #FEF1ED;
}

.maintenance {
	font: normal 20px arial, verdana;
	color: #800;
	border: 5px solid #c00;
	padding: 10px;
	margin: 5px;
	float: left;
	background-color: #FEF1ED;
}

.debug {
	padding: 5px;
	margin: 2px;
	color: #c00;
	border: 1px solid #c00;
	background-color: #FEF1ED;
	font: bold 13px verdana;
	float: left;
}

.example {
	font: normal 11px arial;
	color: #888;
}

.approved {
	font: normal 10px arial;
	color: green;
}

.loginform {
	font: 16px normal arial;
	background-color: #E4F8FA;
	font: normal 12px arial, verdana;
	padding: 3px;
	border: 1px solid #CAE4FF;
}

#floatdiv p {
	margin-top: 12px;
	margin-bottom: 12px
}

a[target="_blank"]::after {
	content: '';
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	margin-left: 0.25em;
	vertical-align: middle;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M36 24c-1.2 0-2 0.8-2 2v12c0 1.2-0.8 2-2 2h-22c-1.2 0-2-0.8-2-2v-22c0-1.2 0.8-2 2-2h12c1.2 0 2-0.8 2-2s-0.8-2-2-2h-12c-3.4 0-6 2.6-6 6v22c0 3.4 2.6 6 6 6h22c3.4 0 6-2.6 6-6v-12c0-1.2-0.8-2-2-2z'/%3E%3Cpath d='M43.8 5.2c-0.2-0.4-0.6-0.8-1-1-0.2-0.2-0.6-0.2-0.8-0.2h-12c-1.2 0-2 0.8-2 2s0.8 2 2 2h7.2l-18.6 18.6c-0.8 0.8-0.8 2 0 2.8 0.4 0.4 0.8 0.6 1.4 0.6s1-0.2 1.4-0.6l18.6-18.6v7.2c0 1.2 0.8 2 2 2s2-0.8 2-2v-12c0-0.2 0-0.6-0.2-0.8z'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
}

table.report {
	border-collapse: collapse;

	& td {
		border: 1px solid #ccc;
		padding: 4px 8px;
	}

	& th {
		border-bottom: 2px solid black;
	}

}

.no-response {
	font-style: italic;
	color: #888;
}

label {
	display: block-inline;
	margin-bottom: 4px;
	padding: 4px 0;
}

label:has(+input),
label:has(+select) {
	display: inline-block;
	width: 200px;

	&:has(+[required])::after {
		content: ' *';
		color: #c00;
	}

	&.inline {
		width: auto;
	}
}


.label {
	font-weight: bold;
}

input~.breadcrumb {
	display: block;
	margin-left: 205px;
	font-size: 11px;
	color: #888;
}

table.tabular {
	border-collapse: collapse;
	width: 100%;

	& th,
	& td {
		border: 1px solid #ccc;
		padding: 4px 8px;
		text-align: left;
		background-color: #fff;
	}

	& th {
		border: none;
		border-bottom: 2px solid #ccc;
		background-color: transparent;
	}

	& tr:nth-child(even) td {
		background-color: #f0f0f0;
	}

	&.double-stripe tr td {
		background-color: #fff;
	}

	&.double-stripe tr:nth-child(4n+1) td,
	&.double-stripe tr:nth-child(4n+2) td {
		background-color: #f0f0f0;
	}
}

.pointer-hover:hover {
	cursor: pointer;
	color: blue;
}