.nonexistent {
  background-color: white;
  color: red;
  font-weight: bold;
}

a.nonexistent:visited {
  background-color: white;
  color: red;
}

#top a:link, #top a:visited, #top a:link:hover, #top a:visited:hover {
  color: #F5DEB3;               /* wheat */
  text-decoration: none;
  font-weight: bolder;
}

a:link:hover, a:visited:hover {
  text-decoration: underline;
}

a:link, a:visited {
  color: #126EB5;
  text-decoration: none;
}

blockquote {
  border-left: 2px solid #CCCCCC; /* gray80 */
  padding: 5px;
  font-style: italic;
  margin: 5px 20px;
}

body {
  background-color: #E5E5E5;    /* gainsboro */
  color: black;
  font: 400 20px/1.5 "Open Sans",Helvetica,Arial,sans-serif;
  font-size: calc(0.75em + 0.75vw);
  margin: 0;
  padding: 0;
}

div#content {
  padding-left: calc(2em + 2vw);
  padding-right: calc(2em + 2vw);
}

code {
  font-family: courier new, courier, monospace;
  font-weight: bold;
  margin-left: 3px;
  margin-right: 3px;
}

dt {
  font-weight: bold;
  margin-top: .5em;
  padding: 3px;
}

em {
  font-style: italic;
}

div#top {
  background-color: #2F4F4F;    /* dark slate gray */
  color: #F5DEB3;               /* wheat */
  border: 1px solid black;
  overflow: hidden;             /* don't take up more than one line */
  padding-left: calc(2em + 2vw);
  padding-right: calc(2em + 2vw);
}

h1 {
  font: 600 20px/1.5 "Roboto",Helvetica,Arial,sans-serif;
  font-size: calc(1.20em + 1.20vw);
  line-height: 2.25em;
  white-space: nowrap;
}

h2 {
  font: 600 20px/1.5 "Roboto",Helvetica,Arial,sans-serif;
  color: #565D65; /* between slate gray and black */
  border-bottom: solid 0.1em #708090; /* slate gray */
  font-size: calc(1.05em + 1.05vw);
}

h3 {
  font: 600 20px/1.5 "Roboto",Helvetica,Arial,sans-serif;
  color: #565D65; /* between slate gray and black */
  border-bottom: solid 1px #708090; /* slate gray */
  border-right: solid 2px #E5E5E5;  /* gainsboro */
  font-size: calc(0.95em + 0.95vw);
  margin-top: 2em;
  margin-bottom: .5em;
}

h4 {
  font: 600 20px/1.5 "Roboto",Helvetica,Arial,sans-serif;
  color: #565D65; /* between slate gray and black */
  border-bottom: dashed 1px #BEBEBE;    /* light gray */
  border-right: solid 2px #E5E5E5;      /* gainsboro */
  margin-top: 1.5em;
  margin-bottom: .7em;
}

img {
  border: 0;
}

li {
  line-height: 1.75em;
  margin-top: .5em;
}

p.verse {
  clear: left;
  line-height: 2em;
  margin-left: 3%;
}

p {
  line-height: 1.75em;
}

pre.example {
  background-color: #F5F5F5;    /* white smoke */
  font-family: courier new, courier, monospace;
  margin-right: 6px;
  margin-top: 0;
  margin-bottom: 12px;
  padding-left: 3%;
  padding-top: 1.2em;
  padding-bottom: 1.2em;
}

pre.src {
  font-family: courier new, courier, monospace;
  margin-left: 0;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

pre.verse {
  font-family: inherit;
  line-height: 2em;
  margin-left: 3%;
}

pre {
  font-family: monospace;
  margin-left: 3%;
  white-space: pre;
}

span.footdate {
  color: #556B2F;               /* dark olive green */
  font-weight: bold;
}

strong {
  font-weight: bold;
}

ul {
  list-style-type: disc;
  margin-bottom: 1.5em;
}

div#footer {
  background-color: #F5F5F5;    /* white smoke */
  border-spacing: 0;
  border-left: 1px solid #D3D3D3;     /* light gray */
  border-top: 1px solid black;
  border-right: 1px solid #D3D3D3;    /* light gray */
  border-bottom: 0;
  margin: 0;
  margin-top: 2em;
  padding-top: 1em;
  padding-left: calc(2em + 2vw);
  padding-right: calc(2em + 2vw);
  padding-bottom: 1em;
  font-size: calc(0.55em + 0.55vw);
  line-height: 2em;
}

.contents {
  clear: left;
  float: left;
  background-color: #D3D3D3;    /* light gray */
  border: 1px solid black;
  margin-top: 0;
  margin-right: 30px;
  margin-left: 0;
  margin-bottom: 15px;
  padding: 3px;
}

.contents dl {
  background-color: #F5F5F5;    /* white smoke */
  display: block;
  float: left;
  font-size: calc(0.65em + 0.65vw);
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 5px;
}

.contents dt {
  clear: left;
  display: block;
  padding-right: 5px;
  padding-left: 5px;
  text-align: left;
}

.contents dd dt {
  display: list-item;
}

.contents a:hover { 
  background-color: #D3D3D3;    /* light gray */
}

/* Source coloring */

.builtin {
  /* font-lock-builtin-face */
  color: #9370db;
}

.comment {
  /* font-lock-comment-face */
  color: #b22222;
}

.constant {
  /* font-lock-constant-face */
  color: #b8860b;
}

.doc {
}

.function-name {
  /* font-lock-function-name-face */
  color: #0000ff;
}

.keyword {
  /* font-lock-keyword-face */
  color: #a020f0;
}
  
.string {
  /* font-lock-string-face */
  color: #228b22;
}
