:root {
  --lighter-background-color: #fcffff;
  --background-color: #f8ffff;
  --darker-background-color: #f0f8f8;
  --main-border-color: #c0fff0;
  --highlight-border-color: #60ffd0;      /*like #c0fff0, but darker.*/
  --dark-color: #98c9be;                  /*#c0fff0, turned way darker*/
}

#navbar, main, #table-of-contents, .tags, .mailing-list {
  margin-bottom: 2em;
}

h1 {
  line-height: 1.25;
}

#navbar {
  padding: 0.25em;
}

#navbar ul {
  margin: 0px;
}

.navbar-body {
  margin-top: 0.5em;
}

#navbar-footer {
  margin-top: 0.5em;
}

@media (width >= 66rem) {
  #navbar {
    float: left;
    width: 12em;
  }

  main, .tags, #table-of-contents, .mailing-list {
    margin-left: 13em;
  }

  #navbar-body-side {
    display: block;
  }

  #navbar-body-top {
    display: none;
  }
}

@media (width < 66rem) {
  #navbar {
    float: top;
    text-align: center;
  }

  #navbar-header li, #navbar-footer li {
    display: inline-block;
    padding: 0 1rem;
  }

  #navbar ul {
    padding-left: 0;
    list-style: none;
  }

  #navbar-body-side {
    display: none;
  }

  #navbar-body-top {
    display: block;
  }
}

main, #table-of-contents, .tags, .mailing-list {
  border: 1px solid var(--main-border-color);
  background-color: var(--background-color);
  padding: 0.5em;
}

img {
  border-style: solid;
  border-color: var(--highlight-border-color);
  border-width: 1px;
}

header {
  text-align: center;
}

body {
  margin:0 20%;
  line-height: 1.5;
}

main li {
  padding-bottom: .5em;
}

h2 {
  font-size: 125%;
}

.code {
  font-family: monospace;
  line-height: 1.1;
}

pre {
  line-height: 1.1;
}

.publication-date {
  margin: 1em;
}

.sidenote, .marginnote {
  float: right;
  clear: right;
  margin-right: -30%;
  /* margin-left: 10%; */
  width: 20%;
  /* display: inline-block; */
  /* adding display: inline-block means I have to remove the width.
                            But removing the width entirely seems to make the rendered width what I
                            want it to be. I just need to position it in the right place.
 */
}

.sidenote-number {
  counter-increment: sidenote-counter;
}


.sidenote-number:after, .sidenote:before {
  content: counter(sidenote-counter) " ";
  position: relative;
  vertical-align: baseline;
}

.sidenote-number:after {
  content: counter(sidenote-counter);
  font-size: 0.8rem;
  top: -0.5rem;
  left: 0.1rem;
}

.sidenote:before {
  content: counter(sidenote-counter) " ";
  top: -0.25rem;
}

blockquote .sidenote, blockquote .marginnote {
  margin-right: -82%;
  min-width: 59%;
  text-align: left;
}

body {
  counter-reset: sidenote-counter;
}

summary {
  cursor: pointer;
}

.tags {
  display: grid;
  grid-template-columns: 1fr;
  grid-row-gap: 1em;
}

.tag-container {
  display: grid;
  grid-template-columns: 2fr 1fr 2fr;
  text-align: center;
}

.tag-container p {
  margin: 0;
}

.primary-blurb-link {
  font-weight: bold;
}

li p {
  margin: 0;
}

/* zck this probably only works great if there's just a single p in a blockquote. */
blockquote p {
  margin: 0em;
}

blockquote p+figcaption {
  margin-top: 0.2em;
}

blockquote {
  width: fit-content;
  padding: 0.5em;
  border: 0.25em dotted var(--dark-color);
}

/* #table-of-contents { */
/*     margin-bottom: 2em; */
/* } */


/* #table-of-contents::after { */
/*     content: ""; */
/*     height: 0; */
/*     margin: 0 5%; */
/*     display: block; */
/*     border: 0.5px solid var(--main-border-color); */
/* } */

.shell-command:before {
  content: "$ "
}

h2 .nav-anchor {
  font-size: 80%;
}

dd {
  padding-bottom: 0.5em;
}

dd p {
  margin: 0;
}

pre:has(code) {
  display: inline-block;
  margin: 0;
  margin-left: 1em;
  padding: 1em;
  border: 1px solid var(--highlight-border-color);
  background-color: var(--lighter-background-color);
}
