:root {
    --primary: #ddd;
    --secondary: #dee4e7;
    --link: #f0c26d;
    --link2: #ffda96;
    --table: #3a384b;
    --table2: #47445e;
    --bg: #1b1d29;
}

body {
    color: var(--primary);
    background: var(--bg);
    font-family: arial, helvetica, geneva, sans-serif;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td {
    margin: 0;
    padding: 0;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
fieldset,img {
    border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var,optgroup {
    font-style: inherit;
    font-weight: inherit;
}
del,ins {
    text-decoration: none;
}
li {
    margin-left: 20px;
}
caption,th {
    text-align: left;
}
h1,h2,h3,h4,h5,h6 {
    font-size: 100%;
    font-weight: bold;
}


code, tt, span.parameter { font-family: monospace; font-size: 1.1em; }
span.parameter { font-family:monospace; }
/* span.parameter-container:after { content:":"; }
span.types:before { content:"("; }
span.types:after { content:")"; } */
.type { font-weight: bold; font-style:italic }

body, p, td, th { font-size: .95em; line-height: 1.5;}

p, ul { margin: 10px 0 0 0px;}

strong { font-weight: bold;}

em { font-style: italic;}

h1 {
    font-size: 1.5em;
    margin: 20px 0 20px 0;
}
h2, h3, h4 { margin: 15px 0 10px 0; }
h2 { font-size: 1.25em; }
h3 { font-size: 1.15em; }
h4 { font-size: 1.06em; }

a {
    color: var(--link);
    /* transition: color .3s, background-color .3s; */
    font-weight: bold;
    text-decoration: none;
}
  
a:hover {
    color: var(--link2);
    text-decoration: underline;
}

hr {
    color: var(--table);
    /* background: #00007f; */
    height: 1px;
}

blockquote { margin-left: 3em; }

ul { list-style-type: disc; }

p.name {
    font-family: "Andale Mono", monospace;
    padding-top: 1em;
}

code, span.parameter {
    background-color: var(--table2);
    padding: 2px;
    border-radius: 2px;
}



table.index { border: 1px #00007f; }
table.index td { text-align: left; vertical-align: top; }

#container {
    margin-left: 0;
    max-width: 1000px;
}

#navigation {
    position: fixed;
    top: 0;
    width: 14em;
    vertical-align: top;
    overflow: auto;
    background-color: var(--table);
    height: 100%;
    padding: 0 10px;
}

#navigation h2 {
    background-color: var(--table2);
    font-size:1.1em;
    color: var(--secondary);
    text-align: left;
    padding:0.2em;
}

#navigation ul
{
    font-size:1em;
    list-style-type: none;
    margin: 1px 1px 10px 1px;
}

#navigation li {
    text-indent: -1em;
    display: block;
    margin: 3px 0px 0px 22px;
}

#navigation li li a {
    margin: 0px 3px 0px -1em;
}

#content {
    margin-left: calc(14em + 20px);
    padding: 1em;
    max-width: 700px;
}

#about {
    clear: both;
    padding: 5px;
    border-top: 3px solid var(--table2);
    margin-top: 10px;
}

@media print {
    body {
        font: 12pt "Times New Roman", "TimeNR", Times, serif;
    }
    a { font-weight: bold; color: #004080; text-decoration: underline; }

    #main {
        background-color: #ffffff;
        border-left: 0px;
    }

    #container {
        margin-left: 2%;
        margin-right: 2%;
        background-color: #ffffff;
    }

    #content {
        padding: 1em;
        margin-left: 0;
        background-color: #ffffff;
    }

    #navigation {
        display: none;
    }
    pre.example {
        font-family: "Andale Mono", monospace;
        font-size: 10pt;
        page-break-inside: avoid;
    }
}

table.function_list, table.module_list {
    width: 100%;
}

table.function_list tr + tr, table.module_list tr + tr {
    border-top: 2px solid var(--bg);
    border-collapse: collapse;
}
table.function_list td, table.module_list td {
    padding: 5px;
    background-color: var(--table2);
}
table.function_list td.name, table.module_list td.name { background-color: var(--table); min-width: 25%; }
table.function_list td.summary, table.module_list td.summary { width: 100%; }

ul.nowrap {
    overflow:auto;
    white-space:nowrap;
}

dl.table dt, dl.function dt {border-top: 2px solid var(--table2); padding-top: 1em;}
dl.table dd, dl.function dd {padding-bottom: 1em; margin: 10px 0 0 20px;}
dl.table h3, dl.function h3 {font-size: .95em;}

/* stop sublists from having initial vertical space */
ul ul { margin-top: 0px; }
ol ul { margin-top: 0px; }
ol ol { margin-top: 0px; }
ul ol { margin-top: 0px; }

/* make the target distinct; helps when we're navigating to a function */
a:target + * {
  background-color: #6e5684;
  color: var(--secondary);
}


/* styles for prettification of source */

pre {
    color: #f8f8f2;
    background-color: #282a36;
    padding: 10px;
    margin: 10px 0 10px 0;
    overflow: auto;
    font-family: "Andale Mono", monospace;
    font-size: 14px;
}



pre .comment { color: #6272a4; }
pre .constant { color: #bd93f9; }
pre .escape { color: #ff79c6; }
pre .keyword { color: #ff79c6; }
pre .library { color: #ff79c6; }
/* pre .marker { color: #512b1e; background: #fedc56; font-weight: bold; } */
pre .string { color: #f1fa8c; }
pre .number { color: #bd93f9; }
pre .function-name { color: #50fa7b; }
/* pre .operator { color: #2239a8; font-weight: bold; } */
/* pre .preprocessor, pre .prepro { color: #a33243; } */
pre .global { color: #bd93f9; }
pre .user-keyword { color: #bd93f9; }
/* pre .prompt { color: #558817; } */
/* pre .url { color: #272fc2; text-decoration: underline; } */

#top-nav {
    background-color: var(--table);
    display: block;
    height: 0;
}

#nav-placeholder {
    height: 40px;
    display: none;
}

@media only screen and (max-width: 670px) {
    #top-nav {
        height: 40px;
    }

    #content {
        margin-left: 0;
    }
    #content.nav_open {
        display: none;
    }
    #navigation {
        display: none;
    }
    #navigation.nav_open {
        position: relative;
        height: 100%;
        width: calc(100% - 20px);
        display: flex;
        flex-direction: column;
        min-height: calc(100vh - 40px);
    }
    #hamburger svg {
        height: 40px;
        width: 40px;
    }
}