:root {
	--border-radius: 4px;
}

* {
	box-sizing: border-box;
}

body {
	width: 100%;
	margin: 0;
	font-family: Arial, helvetica, sans-serif;
}

.page-wrapper {
  width: 100%;
  max-width: 600px;
  padding: 1rem 0.5rem;
  margin: 1rem auto;
  border-radius: calc(var(--border-radius) * 2);
  background-color: rgb(238, 238, 238);
}

a {
	color: inherit;
}

h1, h2, h3, h4, h5, h6 {
	text-align: center;
}

.site-header,
.site-footer {
	text-align: center;
}

.site-header {
  margin-bottom: 2rem;
  text-align: center;
}

.site-header a {
	color: inherit;
	text-decoration: none;
}

.site-footer {
  margin-top: 2rem;
  font-size: .8rem;
  text-align: center;
  color: #666;
}

input {
	border: 1px solid #777;
	border-radius: var(--border-radius);
}

button {
	border: none;
	background-color: #777;
	border-radius: var(--border-radius);
	transition: background-color 0.1s;
	cursor: pointer;
	font-weight: bold;
	color: #FFF;
}

button:hover {
	background-color: #555;
}

.home-form {
	display: flex;
	width: 100%;
	gap: 0.25rem;
}

.home-form input,
.home-form button {
	font-size: 1.25rem;
	text-align: center;
	height: 3rem;
}

.home-form input {
	flex: 1;
}

.home-form button {
	width: 3rem;
}

.user-stats {
	display: flex;
	width: 100%;
	padding: 0;
	list-style: none;
}

.user-stats > li {
	flex: 1;
	text-align: center;
	overflow: hidden;
}

.user-stats > li > strong {
	font-size: 1.25em;
	display: block;
}

.cat-grid {
	width: 100%;
	max-width: 100%;
	list-style-type: none;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1rem;
}

.cat-grid li {
	text-align: center;
	overflow: hidden;
}

.cat-grid li img {
	width: 66%;
}

.notice {
	margin: 1rem 0;
	border: 1px solid #666;
	background-color: #CCC;
	padding: .25rem;
	border-radius: var(--border-radius);
}

.notice header {
	font-size: 1.25rem;
	font-weight: bold;
}

.notice--info {
	background-color: aliceblue;
	border-color: cornflowerblue;
}

.notice--info header::before {
	content: 'ℹ️';
	margin-right: .25rem;
}

.notice--error {
	background-color: lightcoral;
	border-color: indianred;
}

.notice--error header::before {
	content: '🛑';
	margin-right: .25rem;
}
