html, body {
	margin: 0 auto 0 auto;
	padding: 0;
	width: 100%;
	max-width: 1300px;
	height: 100%;
	font-family: 'Roboto', sans-serif;
	background-color: lightgrey;
}

#app {
	display: flex;
	height: 100%;
	align-items: stretch;
	flex-direction: row;
	background-color: white;
	padding: 0 1em 0 1em;
}

#left {
	flex-basis: 15em;
	padding-top: 1em;
	display: flex;
	flex-direction: column;
	background-color: white;
}

#mid {
	width: 1em;
}

#right {
	flex-basis: 100%;
}

#left .search {
	font-size: 1em;
	width: 100%;
}

#left ul {
	margin: 0.5em 0 0 0;
	padding-left: 0;
}

#left li {
	width: 100%;
	list-style: none;
	border-bottom: 1px solid lightgrey;
	padding: 0.5em 0 0.5em 0;
}

#left li:hover {
	cursor: pointer;
}

.flex-space {
	flex-basis: 100%;
}

.attr, .attr-responsive {
	font-size: 0.8em;
	color: grey;
}

.attr-responsive {
	display: none;
}

#map {
	height: 100%;
}

/*
 * Media queries
 */
@media all and (max-width: 960px) {
	#app {
		flex-direction: column;
	}

	.attr {
		display: none;
	}

	.attr-responsive {
		display: block;
	}

	#left ul {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}

	#left li {
		width: 33%;
	}
}

@media all and (max-width: 640px) {
	#left li {
		width: 50%;
	}
}
