a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

main > a > img {
  float: left;
  height: 100%;
  width: 100%;
}

aside {
  display: none;
  height: 100svh;
}

aside > nav > div {
  column-gap: 0.3rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0.25rem;
}

aside > nav > div > a {
  text-wrap: nowrap;
}

aside > figure {
  aspect-ratio: 1;
  display: block;
  margin: auto;
  max-height: calc(100% - 6.6rem);
  max-width: 100%;
}

aside > figure > a > img {
  display: block;
  margin: 0 auto;
  height: 100%;
}

button, select {
  background: black;
  border-radius: 4px;
  border: 1px solid white;
  color: white;
}

button:active {
  background-color: white;
  color: black;
}

html {
  background-color: black;
  color: white;
}

main {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

main > a {
  aspect-ratio: 1;
}

search {
  display: flex;
  flex-direction: column;
  float: left;
  font-size: small;
  height: 100%;
  padding: 0.5rem;
  position: sticky;
  row-gap: 0.5rem;
  top: 0;
  width: 11rem;
}

search > div {
  padding: 0.5rem;
  text-align: center;
}

select {
  appearance: none;
  background-image: url('data:image/svg+xml;utf8,<svg height="64" viewBox="0 0 64 64" width="64" xmlns="http://www.w3.org/2000/svg"><polyline stroke="white" fill="none" stroke-width="6" points="0 16, 32 48, 64 16"/></svg>');
  background-position-x: 95%;
  background-position-y: 50%;
  background-repeat: no-repeat;
  background-size: 10px;
  height: 19px;
  line-height: normal;
  padding: 0 0.25rem;
}

select option[disabled] {
    display: none;
}
