:root {
  --padding-x: 1rem;
}
.layout {
  height: 100vh;
  display: flex;
  flex-direction: column;
}
main {
  flex: auto;
  position: relative;
}
figure {
  display: flex;
  flex-direction: column;
  margin: 0;
  position: absolute;
  inset: 0;
}
figcaption {
  text-align: center;
  padding: 0.75em var(--padding-x) 0;
}
figcaption.empty {
  padding: 0;
}
figcaption .date {
  color: var(--lighter-color);
  margin-right: 0.2em;
}
picture {
  flex: auto;
  background: var(--picture-background);
  border-bottom: 1px solid var(--picture-border-color);
  position: relative;
}
picture img {
  display: block;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
