body {
    margin: 0 auto;
    padding: 0 1em;
    max-width: 700px;
    word-wrap: break-word;
    font-family: sans-serif;
    font-size: 103%;
    line-height: 1.5;
}
/* headings */
h1 {
    border-bottom: 1px solid #eee;
}
/* image */
div.figure {
    text-align: center;
}
img {
    max-width: 85%;
}
/* code */
div.org-src-container {
    margin: 1rem 0;
}
pre {
    overflow-x: auto;
    word-wrap: normal;
    background-color: #f9f9f9;
    padding: 0.8em;
    margin-top: 0;
}
/* blockquote */
blockquote {
    color: #777;
    font-style: italic;
    padding-left: 0.8em;
    border-left: 0.3em solid #ccc;
}
/* table */
table {
    margin: 1rem auto;
}
/* footnotes */
.footpara {
    display: inline; 
}
/* table of contents */
#table-of-contents {
    font-size: 90%;
    border: 1px dashed gray;
    padding: 0 1em;
}
@media only screen and (min-width: 961px) {
    #table-of-contents {
        position: fixed;
        top:    0px;
        bottom: 0px;
        left:   0px;
        width:  300px;
        overflow-y: scroll;
    }
    #table-of-contents ul ul {
        padding-left: 1rem;
    }
}
/* timestamp */
.timestamp {
    color: #aaa;
}
/* postamble */
div#postamble {
    color: #888;
    font-family: monospace;
    margin: 1rem 0;
    border-top: 1px solid #eee;
}
/* todo, done */
span.todo, span.done {
    font-family: monospace;
    background-color: #eee;
    padding: 0 3px;
}
span.todo {
    color: red;
}
span.done {
    color: blue;
}
/* tag */
span.tag span {
    float: right;
    font-family: monospace;
    background-color: #eee;
    margin: 0 4px;
    padding: 0 4px;
}
/* checkbox */
li.on code, li.off code {
    background-color: #eee;
    font-weight: bold;
}
/* verse */
p.verse {
    font-style: italic;
    font-family: serif;
}
/* definition list */
dl dt {
    font-style: italic;
    font-weight: bold;
}
/* caption */
div.figure, table caption, label {
    font-size: 85%;
    color: gray;
}
/* syntax highlight from leuven-theme */
pre span.org-builtin            {color:#006FE0;font-weight:bold;}
pre span.org-string             {color:#008000;}
pre span.org-doc                {color:#008000;}
pre span.org-keyword            {color:#0000FF;}
pre span.org-variable-name      {color:#BA36A5;}
pre span.org-function-name      {color:#006699;}
pre span.org-type               {color:#6434A3;}
pre span.org-constant           {color:#D0372D;}
pre span.org-comment-delimiter  {color:#8D8D84;font-style:italic;}
pre span.org-comment            {color:#8D8D84;font-style:italic;}
pre span.org-warning            {color:#ff0000;font-weight:bold;}
pre span.org-selector           {color:#0000ff;font-weight:bold;}
pre span.org-preprocessor       {color:#808080;font-weight:bold;}
pre span.org-css-selector       {color:#0000ff;font-weight:bold;}
pre span.org-css-property       {color:#0000ff;}
