html { color: black; padding: 20px 10px 10px 10px; }

* {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    -o-hyphens: auto;
    hyphens: auto;
}

body { font-family: Georgia, serif; }

.warp {
    margin-right: auto;
    margin-left: auto;
}

.wrap div.article, div.header, nav,
div.comments {
    margin: 0px auto;
    margin-top: 0px;
    margin-bottom: 0px;
    max-width: 40rem;
}

p, ul, ol { line-height: 1.4em; }

h1, h2, h3, h4, h5, h6 { position: relative; margin-left: -7rem; padding-left: 7rem; }

td > p, th > p {
    margin-top: 0px;
    margin-bottom: 0px;
}

.header-section-number { position: absolute; left: 0px; }

img, video { max-width: 100%; }

div#TOC { margin: 2em 0 1em 0; padding: 0; background-color: white; }
div#TOC ul > ul { margin-left: 1em; }

hr { height: 1px; color: #aaa; background-color: #aaa; border: 0; margin: .2em 0 .2em 0; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; border-bottom: 1px solid black; }

header h1, header h2, header h3, header h4, header h5, header h6 { font-weight: normal; border-bottom: none; }

ul { list-style-type: square; }
dt { font-weight: bold; margin-bottom: .1em; }

table { border-top: 1px solid #ccc;  border-left: 1px solid #ccc; border-collapse: collapse; }
th, td { border-bottom: 1px solid #ddd; border-right: 1px solid #ccc; }

blockquote { padding: 0 1.6em; color: #666; }

main { max-width: 46em; }

footer { padding: 1em; color: #888; text-align: center; font-size: 12pt; }


div#toc { border-top: 1px solid gray; margin-top: 1em; padding-top: 1em; }

div.figure { text-align: center; font-style: italic; }

pre {
  background: #E8E8E8;
  padding: 1em;
}
p.comment-footer {
  font-style: italic;
}
div.comment > div.comment {
  margin-left: 3em;
}
