body{
	font-family: Verdana;
	font-size: 14px;
}
hr {
	border: transparent 0;
	border-top: solid 1px silver;
}
a{
	margin: 0.2em;
	padding: 0.5em;
	text-decoration: none;
	color: white;
	background: #333333;
	border-radius: 0.2em;
	display: inline-block;
	transition: 0.3s;
}
a:hover, a:focus{
	background: black;
	text-decoration: underline;
	box-shadow: gray 0 5px 10px;
}
table {
	width: 90%;
	overflow: auto;
}
img{
	border-radius: 0.2em;
}
a img{
	margin: -0.5em;
}
th{
	background: #555555;
	color: white;
}
th, td{
	padding: 0.3em 0.5em 0.3em 0.5em;
	border-radius: 3px;
	font-size: 14px;
	min-width: 10vw;
}
td{
	border: solid 1px silver;
}
td a{
	text-align: center;
}
.fixed-bottom{
	position: fixed;
	bottom: 0;
	right: 0;
}
.fixed-top{
	position: fixed;
	top: 0;
	right: 0;
}
form{
	padding: 0.2em;
	width: fit-content;
}
form img {
	max-height: 150px;
}
form > div{
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
	width: 100%;
}
form .gallery {
	overflow: auto;
}
form .gallery img{
	max-height: 100px;
}
.inline-form {
	display: inline-block;
	width: fit-content;
}
input, select, textarea, button{
	margin: 0.3em;
	padding: 0.45em 0.6em 0.45em 0.6em;
	font-size: 14px;
	font-family: Verdana;
	border: solid 1px gray;
	border-radius: 3px;
}
input, select, textarea {
	width: 20vw;
}
label{
	margin-right: 1em;
}
button{
	padding: 0.45em 0.6em 0.45em 0.6em;
	cursor: pointer;
	border: transparent 0;
	transition: 0.3s;
	color: white;
	background: black;
}
button:hover, button:focus{
	text-decoration: underline;
	box-shadow: gray 0 5px 10px;
}
.success{
	background: darkgreen;
	color: white;
}
.success:hover,
.success:focus{
	background: #003300;
}
.danger{
	background: darkred;
	color: white;
}
.danger:hover,
.danger:focus{
	background: #330000;
}
.error-msg, 
.success-msg {
	border: solid 1px;
	margin: 0.4em;
	padding: 0.2em;
	text-align: left;
	justify-content: flex-start;
	border-radius: 3px;
}
.error-msg {
	color: darkred;
	background: pink;
	border-color: darkred;
}
.success-msg {
	color: darkgreen;
	background: lightgreen;
	border-color: darkgreen;
}
.error-msg:before, 
.success-msg:before {
	margin: 0.2em;
	margin-right: 0.5em;
	vertical-align: baseline;
}
.error-msg:before {
	content: ':(';
}
.success-msg:before {
	content: ':)';
}
@media (max-width: 900px) {
	body, input, select, textarea, button, th, td {
		font-size: 16px;
	}
	form {
		width: 80vw;
		margin: auto;
	}
	.inline-from{
		display: flex;
	}
	input, select, textarea{
		min-width: 70%;
	}
	label {
		min-width: 30%;
		text-align: left;
	}
	form > div {
		justify-content: flex-end;
	}
	td a {
		display: block;
		width: 80%;
	}
}