
.book {
 background: #ddddff;
 color: black;
}

pre {
 background: #f7f7f7;
 color: black;
}

pre.run {
 background: #f9f9ff;
 color: black;
}

.footnote {
 background: white;
 color: black;
 min-width: 10em;
 clear: right;
}

p.addendum {
 background: #ddd;
 color: black;
}

div.kicker a:visited,
.validate a:visited,
#header.hier a:visited {
 color: #ffffcc;
}

div.kicker a,
#header.hier a,
.validate a {
 color: yellow;
}

#header.hier a:hover,
.validate a:hover {
 background: #ddddff;
 color: black;
}

div.to-contents a:hover {
 background: yellow;
}

/**** end colours ****/


/* margins and padding */

h2,h3,h4,h5,h6 {
 margin: 0;
 font-weight: bold;
 line-height: 1.3;
}

div.kicker {
 border-bottom: 3px solid white;
}

div.kicker h4 {
 display: inline;
 padding-right: .3em;
}

span.next,
span.prev {
 white-space: nowrap;
}

.kicker {
 border-bottom: 2px solid white;
}

h2,h3,h4 {
 margin-top: .5em;
 padding-bottom: .25em;
}

#chapter8,#addendum {
  width: 92%;
  margin: auto;
}

#addendum h2 {
 margin-top: 1.5em;
}

.book {
 background: #eeeeff;
 padding: 2em;
}

.book p {
  text-indent: 2em;
  margin: 0;
  padding: 0 0 0 .6em;
  max-width: 35em;
}

p.first {
  text-indent: 0;
}

pre {
 overflow: auto;
 background: #f7f7f7;
 color: black;
 padding: 1em;
 margin: 1em 0;
}

pre.run {
  background: #f9f9ff;
  color: black;
  border-top: 3pt solid #eee;
  border-left: 3pt solid #eee;
  border-right: 3pt solid white;
  border-bottom: 3pt solid white;
}

pre.script {
  border: 1pt solid #000099;
}

.footnote {
  float: right;
  width: 25%;
  line-height: 1.25;
  padding: 1em;
  margin: 1em;
  text-indent: 0;
  border: 1px solid black;
}

.wide {
  width: 75%;
  float: none;
  margin-left: 23%;
}

div.note {
  margin-left: 20%;
}

div.note pre {
  background: #ffffcc;
}

p.addendum {
  border: 1px solid blue;
  padding: .5em;
}

#datestamp {
 text-align: right;
 padding-right: 1em;
}

.validate {
 float: left;
}

.validate img {
 padding-top: 5px;
}

#header.hier,
#datestamp,
div.kicker {
 padding-left: 1em;
}

#header.hier {
 text-align: left;
}

#header.hier h4 {
 display: inline;
}

#header.hier p a,
#header.hier p {
 margin: 0;
 padding: 0;
 text-align: left;
}

span.nowrap {
 white-space: nowrap;
}


ul.sub1 {
 font-size: .85em;
}

ul {
 list-style-type: none;
}

ul#contents {
 width: 30em;
 max-width: 48%;
 float: right;
 border: 1px solid black;
 font-size: .95em;
 padding: 1em;
}

ul#contents ul li {
 border-bottom: 2px solid black;
/* font-size: 100%; */
}

ul ul li {
 padding-left: 2em;
} 

/*
 * font sizes
 */

#header.hier,
#datestamp,
div.kicker,
.crumbs {
 font-size: .9em;
}

pre,
.footnote {
  font-size: .85em;
}

span.kicker {
 text-decoration: underline;
}

span.current:hover {
 font-weight: bold;
}

div.to-contents {
 width: 20%;
 float: right;
 min-width: 10em;
 font-size: .85em;
 font-weight: bold;
 color: black;
 text-align: center;
 border: 1px solid black;
}

img {
 border: 0;
}

.chsub1 {
 font-weight:bold;
 font-size: 110%;
 padding-left: 3%;
}

.chsub2 {
 padding-left: 4%;
}

td
{
 border-bottom: 1pt solid black;
}

sup {
   font-size: .7em;
}

#intro
{
 clear: both;
 width: 60%;
 float: left;
 margin-top: 1em;
 margin-left: 2%;
 margin-right: 2%;
 padding: 2%;
 background-color: #ffd;
 border: 1pt solid black;
}

#intro p, #intro ol, #intro a
{
 max-width: 36em;
 margin: auto;
}

#intro h4
{
 max-width: 30em;
 margin: 1em auto .5em;
}

#side /* previews, #cover, #reviews, #purchase */
{
 margin-top: 3.75em;
 margin-right: 1%;
 margin-left: 69%;

 padding: 1%;
 border: 1px solid black;
 background: #ffe;
}

p + p
{
 padding-top: .5em;
 text-indent: 2em;
}


h2
{
 max-width: 26em;
 margin: 1em auto .25em;;
}

table
{
 max-width: 40em;
 width: 100%;
 margin: 0 auto;
 padding-top: 1em;
 background-color: #ffd;
 color: black;
 border-collapse: collapse;
 border-top: 1em solid #ffd;
}

caption
{
 font-size: 1.6em;
 font-weight: bold;
 background-color: black;
 color: white;
 margin: 0;
}

td
{
 padding: 0 1em;
}

h3
{
 margin-top: 1em;
}

p.by
{
 margin-bottom: 2em;
}

.buy
{
 float: right;
 margin-right: 1em;
 background-color: #ffd;
 color: black;
 padding: 1em;
 border: 1px solid black;
}

td
{
 text-align: right;
}

td + td
{
 text-align: left;
}
