:root {
  --transparent-black: #000000B0;
  --off-black: #121212;
  --dark-grey: #303030;
  --light-grey: #909090;
  --off-white: #e0e0e0;
  --strawberry-red: #c83f49;
}

@font-face {
  font-family: 'Geologica';
  src: url('../font/Geologica.ttf') format(truetype);
  font-weight: 100 900;
}

a, button {
  all: unset;
  cursor: pointer;
}

img {
  object-fit: contain;
  width: 100%;
}

.grower {
    flex-grow: 1;
}

body {
  font-family: Geologica;
  font-weight: 250;
  font-size: 1.4em;
  margin: 0 auto;
  background: var(--off-black);
  color: var(--off-white);
  max-width: 1131px;
}

header {
  display: flex;
  position: sticky;
  align-items: center;
  top: 0;
  background-color: var(--off-black);
  border-bottom: 2px solid var(--strawberry-red);
  z-index: 1;
  padding-right: 10px;
  gap: 10px;
}

header a, header button {
  display: flex;
}

#error {
  text-align: center;
}

#support span {
  padding: 0 4px 2px;
  background: var(--strawberry-red);
  border: 2px solid var(--strawberry-red);
  border-radius: 5px;
  font-weight: 700;
  color: var(--off-black);
}

#support button {
  display: none;
}

dialog {
  background: var(--off-black);
  color: var(--off-white);
  border-color: var(--dark-grey);
}

dialog#about_dialog {
  width: min(700px, 80vw);
  max-height: 80vh;
}

dialog a {
  color: var(--strawberry-red);
  text-decoration: underline;
}

dialog .close {
  position: absolute;
  top: 10px;
  right: 10px;
}

dialog .close img {
  filter: drop-shadow(1px 1px 0 var(--off-black))
          drop-shadow(-1px -1px 0 var(--off-black))
          drop-shadow(1px -1px 0 var(--off-black))
          drop-shadow(-1px 1px 0 var(--off-black));
}

dialog details summary {
  cursor: pointer;
  color: var(--strawberry-red);
}

dialog details#legal div {
  display: flex;
  flex-direction: row;
  margin-top: 0.5em;
}

dialog details#legal div div {
  display: block;
  flex-grow: 1;
  flex-basis: 0;
  text-align: center;
  margin: 0;
  padding: 0.75em;
  border: 2px solid var(--dark-grey);
}

dialog details#legal div div p:first-of-type {
  color: var(--strawberry-red);
  margin-bottom: -1em;
}

.modal {
  cursor: initial;
}

.modal::backdrop {
  background: var(--transparent-black);
}

@media (max-width: 700px) {
  body {
    font-size: 1em;
  }
  dialog details#legal div {
    flex-direction: column;
  }
}

@media (max-width: 400px) {
  #support span {
    display: none;
  }
  #support button {
    display: flex;
  }
}
