body > footer {
  margin-bottom: 3em;
}

body > footer ul {
  font-size: 1rem;
  line-height: 1.2em;
}

body > footer .modified {
  text-align: right;
}

blockquote + blockquote::before {
  display: block;
  width: 55%;
  content: "* * *";
  text-align: center;
  color: #aaa;
}

article {
  & > h1 {
    padding-right: 1em;
  }

  section#status {
    margin-top: 1rem;
    text-align: center;
    font-weight: bold;
  }

  .callout {
    margin-top: 1rem;
    /* text-align: center; */
    font-weight: bold;

    padding: 2rem 0;

    display: flex;
    gap: 1rem;
  }

  .subtitle.dates {
    span.modification {
      color: #aaa;
    }
  }

  section.dates {
    text-align: right;
    color: #aaa;
    font-size: 0.6em;
    p {
      margin: 0;
    }
  }
}

table.text {
  font-size: 1.4em;
  td {
    vertical-align: top;
  }
  td.emoji {
    padding-right: 0.25em;
  }
}

article.book {
  & > p.subtitle:not(.authors) {
    font-style: normal;
    margin-top: -1rem;
  }
}

div.book {
  display: flex;
  flex-direction: row;

  width: 55%;

  & > div {
    flex: 1;
  }

  .cover {
    padding-right: 1em;
    & + div {
      flex: 2;
    }
  }

  h3 {
    margin: 0;
    & + p.authors {
      margin-top: 0;
      font-style: italic;
    }
  }
}

.signature {
  & > p {
    display: flex;
    gap: 1em;
  }
}

img {
  height: auto;
}

@media (max-width: 760px) {
  .book {
    width: 100%;
  }

  img {
    width: auto;
    height: auto;
    max-height: 500px;
    max-width: 100%;
  }
}

.books {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;

  & > div {
    width: 300px;
  }

  img {
    width: 100%;
  }

  p {
    margin: 0;
    text-align: center;
  }

  img + p,
  a + p {
    margin: 0.5em 0;
  }

  p + p {
    font-style: italic;
  }
}

now-webring {
  display: block;
  width: 55%;
}
