.error, .errorlist {
	background: #ffffe0;
	color: red;
	border: 1px solid red;
	border-radius: 5px;
	padding-top: 3px;
	padding-bottom: 3px;
}
main>* {
	border-radius: 5px;
	border: 1px solid silver;
	box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.2);
	padding: 3px 5px;
}
main table {
	width: 100%;
	border-collapse: collapse;
	margin: 5px 0px;
	border: 1px solid gray;
}
main table .actions {
	width: 162px;
}
main table th {
	border-bottom: 1px solid silver;
}
main table th, main table td {
	border-left: 1px solid gray;
	border-right: 1px solid gray;
	padding: 2px 5px;
}
main table tbody tr:nth-child(odd) {
	background-color: #e0e0e0;
}
main table tbody tr:hover {
	background-color: rgba(0,0,0,0.2);
}
main button+button {
	margin-left: 7px;
}
main .table-row button+* {
	margin-left: 0px;
}
main button {
	border: none;
	background-color: #eee;
	border-radius: 3px;
	padding: 5px 10px;
	box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
}
main button:hover {
	background-color: #ddd;
	box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.2);
}
form {
	margin: 20px 0px 0px 0px;
	padding: 10px;
	background: #f0f0f0;
}
form>div {
	display: flex;
	margin: 8px 0px;
}
form>div>label {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 300px;
}
form>div>label>input {
}
form>div>div[role="alert"] {
	display: inline-block;
	padding: 3px 5px;
}
form>div>div[role="alert"]>.error {
	padding-left: 5px;
	padding-right: 5px;
}
.row {
	display: flex;
	flex-wrap: wrap;
}
.col {
	width: auto;
	min-width: 0;
	max-width: 100%;
}
.spinner {
	animation: spin 2s linear infinite;
	transform-origin: center center;
	vertical-align: middle;
}
.spinner .path {
	stroke-dasharray: 1,200;
	stroke-dashoffset: 0;
	animation: mat-dash 1.5s ease-in-out infinite;
}
@keyframes spin {
	0% {
		transform: rotate3d(0,0,1,0);
	}
	25% {
		transform: rotate3d(0,0,1,90deg);
	}
	50% {
		transform: rotate3d(0,0,1,180deg);
	}
	75% {
		transform: rotate3d(0,0,1,270deg);
	}
	100% {
		transform: rotate3d(0,0,1,359deg);
	}
}
@keyframes mat-dash {
	0% {
		stroke-dasharray: 1,200;
		stroke-dashoffset: 0;
	}
	50% {
		stroke-dasharray: 89,200;
		stroke-dashoffset: -35px;
	}
	100% {
		stroke-dasharray: 89,200;
		stroke-dashoffset: -124px;
	}
}
