body {
    background-color: #8b5a2b;
    color: black;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 100%;
    margin: 15px 15px;
    max-width: 47em;
    min-width: 20em; }

img {
    max-width: 45em; }

img.wide,
body.wide {
    max-width: 1000em; }

aside {
    position: absolute;
    width: 20em;
    left: 49em;
    background-color: white;
    border: 1px solid #8b5a2b;
    margin: 0.5em;
    max-height: 8em;
    overflow: auto; }

aside:hover {
    max-height: 100%;
    z-index: 100; }

aside p {
    margin: 0.5em;
    padding: 0em; }

.title,
.nav,
.nav-footer,
.footer,
table,
script.display-block,
pre.code,
.drawingBox {
    background-color: #ecd0a0; }

.article .footer {
    background-color: white; }

.title {
    font-weight: bold;
    margin: 0;
    padding: 0.4em 1.5em 0.4em 1.5em; }

.title h1 {
    font-size: 180%;
    margin: 0;
    padding: 0; }

.article .title h1 {
    font-size: 120%; }

.title h2 {
    font-size: 100%;
    margin: 0;
    padding: 0; }

.article .title h2 {
    font-size: 90%; }

.title .blogTitle,
.title .blogSubtitle,
.title .blogTitleSeparator {
    font-size: 80%; }

.title .blogTitle,
.title .blogSubtitle {
    font-style: italic; }

.nav,
.nav-footer {
    width: 15em;
    float: right;
    padding: 0;
    margin: 0 0 1em 1em; }

.nav a img {
    padding: 0;
    border: 1px solid #ecd0a0;
    margin: 0; }

.nav a:hover img {
    border: 1px solid #8b5a2b; }

.nav a.logo {
    font-size: 100%; }

.nav a.logo img {
    height: 3.5em; }

.ew .nav a.logo img {
    height: 3em; }

.nav a,
.nav-footer a,
.nav p,
.nav hr {
    display: block;
    font-weight: bold;
    font-size: 80%;
    margin: 0.5em 1em 0.5em 1em;
    text-indent: -1em;
    padding: 0 0 0 1em; }

.ew .nav a.logo {
    display: inline; }

.nav a.tagPageLink,
.nav a.tag {
    display: inline;
    font-size: 100%;
    margin: 0;
    text-indent: 0;
    padding: 0 }

.nav p,
.nav hr {
    color: #8b5a2b; }

.nav a.level-2 {
    margin-left: 2em;
    font-size: 80%; }

.nav .date {
    padding: 0.3em 0 0 1em; }

.content {
    font-family: Georgia, serif;
    line-height: 140%;
    background-color: white; }

.article .content {
    border-left: 0.5em;
    border-right: 0.5em; }

.main {
    margin: 0 0 1.5em 0; }

.article {
    margin: 1.5em 0 1.5em 0; }

.content,
.article .title,
.article .footer {
    padding-left: 1.5em;
    padding-right: 1.5em; }

.content {
    padding-top: 0.2em;
    padding-bottom: 0.5em; }

.article .title,
.article .footer {
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    margin: 0; }

p, li, table, h1, h2, h3, h4, h5, h6, img {
    margin: 0.7em 0 0 0;
    padding: 0; }

.content p,
.content li {
    text-align: left; }

p img {
    margin: 0; }

h1, h2, h3, h4, h5, h6, th, .article .footer {
    font-family: Helvetica, Arial, sans-serif;
    color: #8b5a2b; }

h1 {
    font-size: 120%;
    font-weight: bold; }

h2 {
    font-size: 100%;
    font-weight: bold; }

h3 {
    font-size: 90%;
    font-weight: bold; }

h4 {
    font-size: 90%;
    font-weight: bold;
    font-style: italic; }

h5 {
    font-size: 90%;
    font-weight: normal;
    font-style: italic; }

h6 {
    font-size: 80%;
    font-weight: normal;
    font-style: italic; }

a { color: #b88040;
    text-decoration: none;
    font-weight: bold; }

a.more {
    font-style: italic; }

a:visited {
    color: #8b5a2b; }

a:hover {
    text-decoration: underline; }

.article .footer {
    font-size: 90%; }

.article .footer .label {
    font-style: italic; }

script.display-block,
pre.code {
    display: block;
    white-space: pre;
    padding: 0.1em 0.5em;
    overflow: auto }

script.display-inline {
    display: inline; }

script,
.code,
code {
    color: #404000;
    font-weight: bold;
    font-family: Courier, monospace;
    font-size: 90%; }

.drawingBox {
    padding: 0.2em;
    margin: 0.7em 0 0 0; }

blockquote {
    padding: 0em 0.5em 0.1em 0.5em;
    background-color: #ecd0a0; }

sub, sup {
    font-size: 80%; }

hr.non-css-separator {
    display: none; }

.todo {
    background-color: yellow; }

.todo:before {
    content: "TODO: ";
    color: red; }

del {
    text-decoration: line-through; }

ins:before {
    content: "↘";
    color: #8b5a2b;  }

ins:after {
    content: "↙";
    color: #8b5a2b;  }

ins {
    text-decoration: none; }

@media (prefers-color-scheme: dark) {
    body {
        background-color: #111;
        color: white;
    }

    .content,
    .article .footer,
    aside {
        background-color: #2b1b06;
    }

    .title,
    .nav,
    .nav-footer,
    .footer,
    table,
    script.display-block,
    pre.code,
    .drawingBox {
        background-color: #8b5a2b;
    }

    .nav a img {
        border-color: #8b5a2b;
    }

    .nav a:hover img {
        border-color: #ecd0a0; }

    .nav p,
    .nav hr {
        color: #ecd0a0;
    }

    a:visited {
        color: #ecd0a0; }

    .title,
    .nav,
    .nav-footer,
    .footer,
    table,
    tr,
    th,
    td,
    script.display-block,
    pre.code,
    .drawingBox,
    blockquote {
        color: black;
    }

h1, h2, h3, h4, h5, h6, th, .article .footer {
    color: #ecd0a0; }

    script,
    .code,
    code {
        color: #808000;
    }
}
