body {
	width: 80%;
	margin: 20px auto;
}

h1.title {
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	margin-bottom: 15px;
	text-align: center;
}

div.title {
	border-bottom: 3px solid #CCCCCC;
}

table.list {
	border-collapse: collapse;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

table.list td, table.list th {
	border: 1px solid #DDDDDD;
	padding: 5px;
	text-align: center;
}

table.list input[type=checkbox] {
	margin-right: 6px;
}

input[type=text], input[type=password], input[type=number], input[type=date], select, textarea {
	flex: 1; /* For some reason, "width: 80%" produces different width for date and select inputs */
}

form label:first-child {
	width: 20%;
}

form ul {
	list-style-type: none;
	width: 100%;
	padding: 0px;
	margin: 0px;
}

form li {
	display: flex;
	margin-top: 6px;
}

form li.buttons {
	justify-content: flex-end;
	margin-top: 12px;
}

form li.buttons input {
	margin-right: 8px;
}

form li.buttons input:last-child {
	margin-right: 0px;
}

form li.buttons a {
	font-size: 0.85em;
	align-self: center;
}

form label.permission {
	align-self: center;
	padding-right: 16px;
}

ul.menu {
	list-style-type: none;
	position: relative;
	width: 100%;
	height: 28px;
	padding: 0px;
	margin: 0px 0px 28px 0px;
}

ul.menu li {
	float: right;
	position: relative;
	display: block;
	border-left: 1px solid #CCCCCC;
	padding: 0px;
	margin: 0px;
}

ul.menu li a,
ul.menu li a:visited {
	display: block;
	padding: 4px 15px 4px 15px;
	margin: 0px auto;
	color: #000000;
	font-weight: bold;
	text-decoration: none;
}

ul.menu li a:hover {
	color: #FF0000;
	text-decoration: underline;
}
