body {
	margin: 0;
	padding: 0;
	background: white;
	font-family: sans-serif;
	width: 100%;
}

a {
	text-decoration: none;
	color: inherit;
}


header {
	padding: 2rem 0.5rem 0;
	background: white;
}
header .header-content {
	max-width: 1000px;
	margin: auto;
	display: grid;
	grid-template-columns: 2fr 1fr 4em;
	grid-template-rows: auto auto;
	column-gap: 0.3rem;
}
header .navigation {
	grid-row: 1;
	grid-column: 1;
}
header .sorting-buttons {
	display: flex;
	flex-flow: row nowrap;
	max-width: 100%;
	overflow-x: auto;
	scrollbar-width: none;
	grid-row: 2;
	grid-column: 1 / span 3;
}
header .function-buttons {
	grid-row: 1;
	grid-column: 3;
}
header .page-link {
	text-decoration: none;
	border: 1px solid #aaa;
	padding: 0.5rem 1rem;
	border-radius: 5px;
	color: black;
}
header .svg-img {
	fill: #AAAAAA;
	max-height: 100%;
	object-fit: contain;
}
header .page-title {
	margin-left: 1rem;
	align-self: center;
	flex: 1;
	font-weight: bold;
	font-family: sans-serif;
}

header .user-area {
	max-height: 2em;
	display: inline-block;
	width: 2em;
}

.content {
	width: 100%;
}


.tooth-meme {
	background-color: white;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 1rem;
	box-shadow: 0 0.2rem 0.2rem lightgray;
	border-radius: 4px;
}
.tooth-meme .header {
	padding: 0.2rem;
	height: 2rem;
	display: flex;
	flex-flow: row nowrap;
	justify-items: center;
	align-items: center;
	gap: 0.3rem;
}
.tooth-meme .header .category-image {
	height: 1.5rem;
}
.tooth-meme .title {
	margin: 1rem 2rem;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1.3rem;
}
.tooth-meme .image-container {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 0;
	padding: 0;
	width: 100%;
	background-color: #eee;
}
.tooth-meme .image-container .image {
	object-fit: contain;
	max-width: 100%;
	background-color: white;
}
.tooth-meme .footer {
	display: flex;
	flex-flow: row nowrap;
	font-weight: bold;
}
.tooth-meme .footer > .vote-btn {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	padding: 0.2rem 0.5rem;
	margin: 0.5rem;
	border: 1px solid #888;
	border-radius: 5px;
	color: #888;
}
.tooth-meme .footer > .upvote.clicked {
	background-color: #ace;
}
.tooth-meme .footer > .downvote.clicked {
	background-color: rgb(224, 150, 162);
}
.tooth-meme .footer > .vote-btn > div {
	height: 1.5rem;
}
.tooth-meme .footer > .vote-btn > img {
	width: 1.5rem;
	object-fit: contain;
}




@media only screen and (min-device-width : 768px) {
	body {
		width: 100vw;
		box-sizing: border-box;
	}

	.content {
		max-width: 700px;
		margin: auto;
	}

	header .sorting-buttons {
		grid-row: 1;
		grid-column: 2;
	}
}
