body {
  background-color: #f0fff0;
}

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

ul {
  list-style-type: square;
}

dt {
  margin-bottom: 0.3em;
}

dd {
  margin-bottom: 1em;
}

blockquote {
  background-color: rgba(185,255,200,0.6);
  padding: 1px 20px;
}

figure img {
  display: block;
  margin: 0 auto;
  padding: 10px;
}

figure p.caption, figcaption {
  max-width: 85%;
  margin: 0 auto;
  font-size: smaller;
  padding: 3px;
  border-bottom: 1px dashed rgba(0,255,0,0.4);
}

img.no-caption ~ figcaption {
  display: none;
}


#photo figure {
  margin: 0px;
}

#photo figure img {
  display: block;
  margin: 0 auto;
  padding: 0px;
}

div.numbers table {
  margin: 0 auto;
  border-collapse: collapse;
  width: auto !important; /* pandoc makes them 100% */
}

div.numbers td {
  padding: 0 12px;
}

/* Border, but not around the table */
div.numbers td {
  border: 1px solid black;
}
div.numbers tr:first-child td {
  border-top: none;
}
div.numbers tr:last-child td {
  border-bottom: none;
}
div.numbers tr td:first-child {
  border-left: none;
}
div.numbers tr td:last-child {
  border-right: none;
}

#content-here {
  width: 60vw;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-word;
}

@media only screen and (max-width: 768px) {
  #content-here {
    width: 95vw;
  }
}

h1, h2, h3, h4, h5 {
  text-align: start;
}

.footnotes {
  font-size: smaller;
}

.footnotes ol li p {
  margin: 0.5em 0;
}

/* Menu-related */

#menu-here {
  display: table;
  margin: 5px auto;
  background-color: rgba(185,255,200,0.6);
}

#menu-here > ul {
  display: table;
  margin: 0;
  padding: 0 18px;
  list-style: none;
  vertical-align: top;
}

ul.top-menu > li {
  display: table-cell;
  position: relative;
  padding: 2px 18px;
}

@media only screen and (max-width: 768px) {
  #menu-here {
    margin: 0;
  }

  #menu-here > ul {
    width: 95vw;
  }

  ul.top-menu > li {
    display: block;
  }
}

ul.top-menu > li > ul {
  position: absolute;
  display: none;
  margin: 0;
  margin-top: 2px;
  padding: 0;
  list-style: none;
  background-color: #fff0ff;
}

ul.top-menu > li:hover > ul {
  display: block;
}

ul.sub-menu > li {
  display: block;
  padding: 2px 18px;
  background-color: rgba(185,255,200,0.6);
}

ul.sub-menu > li:hover {
  background-color: rgba(185,255,200,0.9);
}

/* Blog-related */

.blog-entry {
  border: 2px solid rgba(185,255,200,0.6);
  border-radius: 3px;
}

.blog-entry + .blog-entry {
  margin-top: 15px;
}

.blog-header {
  display: flex;
  flex-direction: row;
  background: rgba(185,255,200,0.6);
}

.blog-header span {
  padding: 0 10px;
}

.blog-title {
  flex-grow: 3;
}

.blog-author::before {
  content: "by ";
}

.blog-author, .blog-date {
  white-space: nowrap;
}

.blog-summary {
  padding: 0 10px;
}

.blog-footer {
  font-size: smaller;
  background: rgba(185,255,200,0.6);
}

.blog-footer {
  padding: 0 10px;
}

.blog-tags::before {
  content: "Keywords: ";
}
