body {
    background-color: #333;
    margin: 0;
    padding: 0;
    font-family: 'Georgia', serif;
    font-size: 15px;
    color: #eee;
}

div.footer {
    padding: 5px;
    text-align: center;
}

div.footer a {
    color: #eee;
}

div.header {
    background: url(headerbg.png) repeat-x;
    border-top: 6px solid #D20000;
    border-bottom: 1px solid #ACACAC;
    margin: -10px -10px 0 -10px;
}

div.relnav {
    border-top: 1px solid #F1F1F1;
    border-bottom: 1px solid #ACACAC;
    background-color: #ECECEC;
    padding: 4px 20px 4px 28px;
    margin: 0 -10px 10px -10px;
    font-size: 13px;
}

#content {
    background-color: white;
    color: #111;
    background-image: url(watermark.png);
    padding: 10px;
    margin: 0;
}

h1.heading {
    margin: 0;
    padding: 0;
    height: 80px;
    background-image: url(jinjabanner.png);
    background-repeat: no-repeat;
}

h1.heading a {
    display: block;
    width: 200px;
    height: 80px;
}

h1.heading span {
    display: none;
}

h2.subheading {
    margin: -55px 0 35px 200px;
    font-weight: normal;
    font-size: 30px;
    color: #444;
}

h2.plain {
    margin: 0;
}

#jinjalogo {
    background-image: url(jinjalogo.png);
    background-repeat: no-repeat;
    width: 400px;
    height: 160px;
}

#contentwrapper {
    max-width: 700px;
    padding: 0 0 20px 18px;
}

#contentwrapper h3,
#contentwrapper h3 a {
    color: #b41717;
    font-size: 26px;
    margin: 20px 0 0 -5px;
}

#contentwrapper h4,
#contentwrapper h4 a {
    color: #b41717;
    font-size: 20px;
    margin: 20px 0 0 0;
}

table.docutils {
    border-collapse: collapse;
    border: 2px solid #aaa;
    margin: 0.5em 1.5em 0.5em 1.5em;
}

table.docutils td {
    padding: 2px;
    border: 1px solid #ddd;
}

p, li, dd, dt, blockquote {
    color: #333;
}

p {
    line-height: 150%;
    margin-bottom: 0;
    margin-top: 10px;
    text-align: justify;
}

hr {
    border-top: 1px solid #ccc;
    border-bottom: 0;
    border-right: 0;
    border-left: 0;
    margin-bottom: 10px;
    margin-top: 20px;
}

dl {
    margin-left: 10px;
}

li, dt {
    margin-top: 5px;
}

dt {
    font-weight: bold;
}

th {
    text-align: left;
    padding: 3px;
    background-color: #f2f2f2;
}

a {
    color: #b41717;
}

a:hover {
    color: #444;
}

pre {
    background-color: #f9f9f9;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 5px;
    font-size: 13px;
    font-family: 'Bitstream Vera Sans Mono', 'Monaco', monospace;
}

tt {
    font-size: 13px;
    font-family: 'Bitstream Vera Sans Mono', 'Monaco', monospace;
    color: black;
    padding: 1px 2px 1px 2px;
    background-color: #f0f0f0;
}

cite {
    /* abusing <cite>, it's generated by ReST for `x` */
    font-size: 13px;
    font-family: 'Bitstream Vera Sans Mono', 'Monaco', monospace;
    font-weight: bold;
    font-style: normal;
}

div.admonition {
    margin: 10px 0 10px 0;
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #f8f8f8;
}

div.admonition p.admonition-title {
    margin: -3px 0 5px 0;
    font-weight: bold;
    color: #b41717;
    font-size: 16px;
}

div.admonition p {
    margin: 0 0 0 40px;
}

#toc {
    margin: 20px -10px 10px 15px;
    padding: 10px;
    width: 200px;
    float: right;
    background-color: #f8f8f8;
    border: 1px solid #ccc;
    border-right: none;
}

#toc h3 {
    font-size: 20px;
    margin: 0 0 10px 0;
    padding: 0;
    color: #444;
}

#toc ul {
    margin: 0 0 0 30px;
    padding: 0;
}

#toc ul li {
    padding: 0;
    margin: 2px 0 2px 0;
}

a.headerlink {
    color: #A70000;
    font-size: 0.8em;
    margin-left: 8px;
    padding: 0 4px 0 4px;
    text-decoration: none!important;
    visibility: hidden;
}

h1:hover > a.headerlink,
h2:hover > a.headerlink,
h3:hover > a.headerlink,
h4:hover > a.headerlink,
h5:hover > a.headerlink,
h6:hover > a.headerlink,
dt:hover > a.headerlink {
    visibility: visible;
}

a.headerlink:hover {
    background-color: #A70000;
    color: white!important;
}

table.indextable {
    width: 100%;
}

table.indextable td {
    vertical-align: top;
    width: 50%;
}
