:root {
  --bg-gradient-1: #400;
  --bg-gradient-2: #A00;
  --font-color-and-border-1: #FFF;
  --font-color-and-border-2: #800;
  --font-color-opacity: #F88;
  --header-color: rgba(255, 0, 0, 70%);
  --header-user: rgba(255, 255, 255, 70%);
  --header-opacity: rgba(255, 128, 128, 70%);
  --link-color: #F00;
}

body {
  font-family: Monospace;
  margin: auto;
  background: linear-gradient(90deg, var(--bg-gradient-1), var(--bg-gradient-2));
  color: var(--font-color-and-border-1);
  padding-bottom: 50px;
}
summary {
  font-size: 2em;
}
div {
  border: 2px solid var(--font-color-and-border-1);
  padding: 0 0.5em;
  background-color: rgba(0, 0, 0, 0.4);
  margin: 0;
  display: flex;
  flex-direction: column;
}
.likeButton {
  display: inline-block;
  font-size: 0.9em;
  border-radius: 10px;
  width: 50px;
  transition: background-color 0.1s ease-in-out, border 0.1s ease-in-out, color 0.1s ease-in-out;
}
.likeButton:disabled {
  background-color: var(--font-color-and-border-1);
  border: 2px solid var(--font-color-and-border-2);
  color: var(--font-color-and-border-2);
}
#library {
  height: 60vh;
  max-height: 60vh;
  padding: 8px;
  gap: 10px;
  overflow-y: auto;
}
div img {
  opacity: 0.9;
  filter: invert(1);
  max-width: 128px;
  max-height: 128px;
  animation: spin 1s linear infinite;
}
.loading {
  display: flex;
  justify-content: center;
  align-items: center;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}

button {
  position: relative;
  cursor: pointer;
}
button:hover {
  top: -1px;
}
button:active {
  top: 2px;
}
input, button {
  font-family: monospace;
  background-color: var(--font-color-and-border-2);
  border: 2px solid var(--font-color-and-border-1);
  color: var(--font-color-and-border-1);
}
input {
  width: 80%;
}
::placeholder {
  opacity: 0.5;
  color: var(--font-color-and-border-1);
}

nav {
  background-color: var(--header-color);
  display: flex;
  align-items: center;
  padding: 0 10px;
  margin-top: 0px;
  margin-bottom: 0px;
}
main {
  width: 85%;
  margin: auto;
}
.logo {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  border: 2px solid var(--bg-gradient-1);
  cursor: pointer;
  transition: filter 2s ease, transform 0.5s cubic-bezier(0.28, 4.55, 0.65, 1);
}
.logo:hover {
  transform: scale(120%);
}
.opacity {
  color: var(--header-opacity);
}
.user {
  color: var(--header-user);
  font-weight: bold;
  font-style: italic;
}
a, .status {
  color: var(--link-color);
}

pre {
  background: var(--font-color-and-border-2);
  cursor: pointer;
  padding: 4px;
  border: 2px solid var(--font-color-and-border-1);
  white-space: pre-wrap;
  word-wrap: break-word;
}
pre:hover {
  color: var(--font-color-opacity);
}
pre:active {
  color: #000;
}