html, body {
  margin: 0;
  padding: 0;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  /* background: black;
  color: white; */

}

body {
  max-width: 650px;
}

html {
  display: flex;
  flex-direction: column;
  align-items: center;
}

span {
  /* background: rgba(255, 255, 255, 1); */
  /* color: black; */
  background: black;
  color: white;
  padding: .2em .2em;
  font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
  white-space: nowrap;
}

a {
  /* color: white; */
}

blockquote {
  background: rgba(20, 20, 20, 0.1);
  padding: 0.3em;
  font-style: italic;
  font-size: 0.9em;
  border-left: 3px solid white;
}

section {
  padding: 2em 0;
}

section:not(#part-3) > div + div {
  margin-top: 2em;
  padding-top: 1em;
}

h2 {
  text-decoration: underline;
}

section {
  border-top: solid 8px white;
}

*:target {
  border-left: solid 6px black;
  box-shadow: -12px 0px 6px -12px rgba(20, 20, 20, 0.9);
  margin-left: -40px;
  padding-left: 40px;
}

details + details {
  margin-top: 1em;
}

details > *:not(summary) {
  margin: 0 2em 0 2em;
}

details > *:not(summary) + *:not(summary) {
  margin-top: 1em;
}

details[open] {
  outline: solid 1px rgba(20, 20, 20, 0.1);
  padding: .2em;
}

img, iframe {
  max-width: 100%;
  margin: 2em 0;
  border-radius: 3px;
  box-shadow: 0 6px 24px 2px rgb(0 0 0 / 30%);
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img:active {
  position: fixed;
  top: 50%;
  left: 50%;
  max-width: 90%;
  transform: translate(-50%, -50%);
  max-height: 90%;
}

ul.spaced li {
  margin-top: .4em;
}