body {
  margin: 2.5em auto;
  width: 960px;
  background-color: white;
  color: #221c22;
  font: 110%/1.5em sans-serif;
}

.article {
  margin-top: 2em;
  padding-top: 1.5em;
  border-top: 3px solid #fcb814;
}

h1 {
  font-size: 275%;
  margin-bottom: 50px;
}

p.summary {
  margin: 1em 0 2em 0;
}

ul li {
  color: #a20841;
}

ul li span {
  color: #221c22;
}

.bookcover {
    float: right;
}

a:link {
  color: #221c62;
}

a:visited {
  color: #9488ff;
}

a img {
    border-style: none;
}

.booktitle {
    font-size: 1.75em;
    letter-spacing: .05ex;
    line-height: 1.2em;
}

.authors {
    margin-top: 0.75em;
    font-size: 90%;
}

.publisher {
    margin-bottom: 2.5em;
    font-size: 90%;
}

h3, .sectionheading {
    color: #71a549;
    margin-top: 1.5em;
    font-weight: bold;
    font-size: 1.25em;
}

ul {
  list-style-type: square;
}

.errata-item, ol.exercises > li {
  margin-top: 2.5em;
  padding-top: 0.5em;
  border-top: 2px solid #fcb814;
}

ol.exercises > li > ol > li {
  list-style-type: lower-alpha;
}

pre {
  margin-left: 40px;
  font-family: "Lucida Console", "Courier New", monospace;
  line-height: 1.2em;
  letter-spacing: -0.2ex;
}

code, pre.prettyprint {
  font-family: "Lucida Console", "Courier New", monospace;
  font-size: 90%;
  background-color: #e4f3ff;
}

.console {
  white-space: pre;
  font-family: "Lucida Console", "Courier New", monospace;
  background-color: #002;
  color: white;
/*  margin: 1em 8em;*/
  padding: .75em  .75em .75em 1em;
}

.console kbd {
    font-family: inherit;
    color: yellow;
    font-weight: 600;
}
