* {
    margin: 0;
    padding: 0;
}
body {
    background: white;
    color: #333;
    font: 1em/1.5 'Open Sans', Arial, sans-serif;
}
pre {
    font: 1em/1.2 monospace;
}
a {
    color: #333;
}
#version_link a {
    color: #333;
}
a:hover {
    text-decoration: none;
}
iframe {
    border: none;
}

/* Saving for future use
#rennab {
    padding: .3em 0;
    background: #00974d;
    font-size: .9em;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 .2em .5em #333;
}
#rennab a {
    color: white;
}
*/

#main {
    margin: 0 auto;
    padding: 0 1.5em;
    max-width: 70em;
}
#side {
    position: sticky;
    float: left;
    top: 0;
    width: 18em;
    height: 100vh;
    overflow-y: auto;
}
#side h1 {
    position: relative;
    display: block;
    padding: .8em 0 .6em .6em;
    width: 7.5em;
    transition: all .5s ease-out;
}
#side h1.compact {
    margin-left: 7.5em;
    font-size: .8em;
    transition-timing-function: ease-in;
}
#side h1.notrans {
    transition: none;
}
#side img {
    width: 100%;
}
#side h1 div {
    position: absolute;
    cursor: help;
    font-size: .45em;
    right: 2.8em;
    bottom: 1.9em;
    transition: opacity .3s linear .5s;
}
#side h1.compact div {
    visibility: hidden;
    opacity: 0;
    transition: none;
}
#side > ul {
    margin-bottom: 2em;
}
#side ul {
    margin-left: .2em;
    list-style-type: none;
    text-transform: none;
}
#side ul a {
    text-decoration: none;
}
#side ul a:hover {
    text-decoration: underline;
}
#side .toctree-l1:first-child {
    border-top: .1em solid #ddd;
}
#side .toctree-l1 {
    position: relative;
    border-bottom: .1em solid #ddd;
    border-left: .2em hidden transparent;
    padding: .6em 1em;
    font-size: 1.1em;
    text-transform: uppercase;
}
#side .toctree-l1.current::before {
    content: '';
    position: absolute;
    top: -.1em;
    left: -.2em;
    padding: .1em 0;
    width: .2em;
    height: 100%;
    background: #00974d;
}
/* Dynamic navigation */
#side li.current > a,
#side .toctree-l1 a.nxt_active {
    color: #00974d;
}
#side .toctree-l1 li {
    margin: .5em 0 0 1em;
    font-size: .9em;
}
#side .toctree-l2 ul {
    position: relative;
    padding-bottom: .7em;
    margin-bottom: -.6em;
    max-height: 0;
    overflow-y: hidden;
    transition: all .6s;
}
#side .toctree-l2 ul:after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: .8em;
    background: linear-gradient(to top, white, rgba(255,255,255,0));
}
#side .toctree-l2 a.nxt_active + ul,
#side .toctree-l1 li.current > ul {
    max-height: 100em;
}
#content {
    margin-left: 18em;
    padding: 1.6em 0 0 2em;
}
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6 {
    position: relative;
    left: -.8em;
    padding-left: .8em;
}
#content h1 {
    color: #00974d;
    font-size: 2.5em;
    font-weight: normal;
    line-height: 1.1;
}
#content h2 {
    margin: 1rem 0;
    color: #00974d;
    font-size: 1.6em;
    font-weight: normal;
}
#content h3 {
    margin: 1rem 0;
    color: #00974d;
    font-size: 1.25em;
    font-weight: normal;
}
#content h1 .headerlink,
#content h2 .headerlink,
#content h3 .headerlink {
    color: #00974d;
}
#content h2 a {
    color: #00974d;
}
#content .headerlink {
    visibility: hidden;
    display: inline-block;
    position: absolute;
    top: -.2em;
    left: -.2em;
    padding: .2em;
}
#content *:hover > .headerlink {
    visibility: visible;
}
#content p,
#content .line-block {
    margin: 1em 0;
}
#content ul {
    margin: 1em 0;
    padding-left: 1em;
    list-style-type: none;
}
#content ul li::before {
    content: '\2013';
    position: absolute;
    margin-left: -.8em;
}
#content ol {
    margin: 1em 0;
    padding-left: 1em;
}
#content ol.loweralpha {
    list-style-type: lower-alpha;
}
#content li {
    margin: .3em 0;
}
#content table {
    margin: 1em 0;
    border: none;
    border-collapse: collapse;
}
#content th,
#content td {
    border: none;
    padding: .2em .5em;
}
#content td {
    border-top: .1em solid #ddd;
    border-bottom: .1em solid #ddd;
}
#content td table:last-child td {
    border-bottom: none;
}
#content td > .first {
    margin-top: 0;
}
#content td > .last {
    margin-bottom: 0;
}
#content .option-list td {
    border: none;
}
#content col {
    width: auto;
}
#content .literal,
#content span.option {
    padding: .125rem .25rem;
    border-radius: 0.25em;
    background: #eee;
    color: #666;
    white-space: nowrap;
}
#content span.guilabel {
    font-weight: bold;
}
#content code.download {
    background: none;
    color: inherit;
    font: inherit;
    padding: 0;
}
#content div.admonition,
#content details {
    margin: 1em 0;
    border-left: .2em solid;
    padding: .6em 0 .6em 1em;
}
#content div.admonition.warning {
    border-color: #aa0000;
}
#content div.admonition.note {
    border-color: #00974d;
}
#content div.admonition p.first {
    margin-top: 0;
}
#content div.admonition p.last {
    margin-bottom: 0;
}
#content div.admonition p.admonition-title {
    font-weight: bold;
}
#content details {
    border-color: #ddd;
    overflow-y: hidden;
}
#content details[open] {
    padding-bottom: 0;
    position: relative;
}
#content summary {
    font-weight: bold;
    outline: none;
}
#content summary span {
    cursor: pointer;
}
#content summary span:hover {
    text-decoration: underline;
}
#content .highlight {
    margin: 1em 0;
    border-radius: .5em;
    padding: .6em 1em;
    overflow-x: auto;
}
#content .video {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}
#content .video div {
    position: relative;
    flex-basis: 46%;
    margin: 1em;
    padding-top: 25.87%;
}
#content .video div iframe {
    position: absolute;
    bottom: 0;
    height: 100%;
    width: 100%;
}
#content p#footer {
    margin: 1em 0 0 0 !important;
    border-top: .1em solid #ddd;
    padding: 1em 0;
    font-size: .9em;
    text-align: center;
}

#content p#tecookie {
    margin: 0 0 1em;
    font-size: .9em;
    text-align: center;
}

#teconsent {
    text-decoration: underline;
}

#teconsent:hover {
    text-decoration: none;
}

/* Pygments */

.highlight {
    background: #444;
    color: #d0d0d0;
}
.highlight .hll {
    background: #222;
}
.highlight .err {
    background: #e3d2d2;
    color: #a61717;
}
.highlight .cp {
    color: #cd2828;
    font-weight: bold;
}
.highlight .cs {
    background: #520000;
    color:#e50808;
    font-weight: bold;
}
.highlight .ge {
    color: #d0d0d0;
    font-style: italic;
}
.highlight .gh {
    color: #fff;
    font-weight: bold;
}
.highlight .gi {
    color: #589819;
}
.highlight .go {
    color: #ccc;
}
.highlight .gp {
    color: #aaa;
}
.highlight .gs {
    color: #d0d0d0;
    font-weight: bold;
}
.highlight .gu {
    color: #fff;
    text-decoration: underline;
}
.highlight .kp {
    color: #6ab825;
}
.highlight .nf {
    color: #447fcf;
}
.highlight .w {
    color: #666;
}
.highlight .il {
    color: #3677a9;
}
.highlight .c,
.highlight .ch,
.highlight .cm,
.highlight .cpf,
.highlight .c1 {
    color: #999;
    font-style: italic;
}
.highlight .esc,
.highlight .g,
.highlight .l,
.highlight .n,
.highlight .o,
.highlight .x,
.highlight .p,
.highlight .ld,
.highlight .ni,
.highlight .nl,
.highlight .nx,
.highlight .py {
    color: #d0d0d0;
}
.highlight .k,
.highlight .kc,
.highlight .kd,
.highlight .kn,
.highlight .kr,
.highlight .kt,
.highlight .nt,
.highlight .ow {
    color: #6ab825;
    font-weight: bold;
}
.highlight .gd,
.highlight .gr,
.highlight .gt {
    color: #d22323;
}
.highlight .m,
.highlight .mb,
.highlight .mf,
.highlight .mh,
.highlight .mi,
.highlight .mo {
    color: #56abed;
}
.highlight .s,
.highlight .sb,
.highlight .sc,
.highlight .sd,
.highlight .s2,
.highlight .se,
.highlight .sh,
.highlight .si,
.highlight .sr,
.highlight .s1,
.highlight .ss {
    color: #ed9d13;
}
.highlight .na,
.highlight .ne {
    color: #bbb;
}
.highlight .nb,
.highlight .bp {
    color: #24909d;
}
.highlight .nc,
.highlight .nn {
    color: #447fcf;
    text-decoration: underline;
}
.highlight .no,
.highlight .nv,
.highlight .vc,
.highlight .vg,
.highlight .vi {
    color: #40ffff;
}
.highlight .nd,
.highlight .sx {
    color: #ffa500;
}

.highlight-console .gp {
    user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
}

.highlight-cfg,
.highlight-yaml,
.highlight-console,
.highlight-control,
.highlight-docker,
.highlight-go,
.highlight-html,
.highlight-ini,
.highlight-java,
.highlight-javascript,
.highlight-json,
.highlight-jsp,
.highlight-nginx,
.highlight-perl,
.highlight-php,
.highlight-python,
.highlight-ruby,
.highlight-rust,
.highlight-none,
.highlight-shell,
.highlight-spec {
    position: relative;
}

.highlight::before {
    color: #333;
    font-size: .8em;
    line-height: 1;
    position: absolute;
    right: .5em;
    top: -1.2em;
}
.highlight-cfg .highlight::before {
    content: "cfg";
}
.highlight-yaml .highlight::before {
    content: "yaml";
}
.highlight-console .highlight::before {
    content: "console";
}
.highlight-control .highlight::before {
    content: "control";
}
.highlight-docker .highlight::before {
    content: "docker";
}
.highlight-go .highlight::before {
    content: "go";
}
.highlight-ini .highlight::before {
    content: "ini";
}
.highlight-java .highlight::before {
    content: "java";
}
.highlight-javascript .highlight::before {
    content: "javascript";
}
.highlight-json .highlight::before {
    content: "json";
}
.highlight-jsp .highlight::before {
    content: "jsp";
}
.highlight-nginx .highlight::before {
    content: "nginx";
}
.highlight-perl .highlight::before {
    content: "perl";
}
.highlight-php .highlight::before {
    content: "php";
}
.highlight-python .highlight::before {
    content: "python";
}
.highlight-ruby .highlight::before {
    content: "ruby";
}
.highlight-rust .highlight::before {
    content: "rust";
}
.highlight-spec .highlight::before {
    content: "spec";
}
.highlight-none .highlight::before {
    content: "text";
}
.highlight-shell .highlight::before {
    content: "shell";
}
.highlight-html .highlight::before {
    content: "html";
}

/* custom terms, placeholders, and hints */

.nxt_ph {
    background: #5b5b5b;
    cursor: help;
}
.nxt_hint {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
}
.highlight-json .nxt_var {
    color: #fada5e;
}

/* Tabs */

.nxt_tabs {
    display: flex;
    flex-flow: row wrap;
}
.nxt_tabs > div {
    box-sizing: border-box;
    border: .1em solid #00974d;
    display: none;
    order: 2;
    padding: 0 1em;
    width: 100%;
}
.nxt_tabs > input {
    display: none;
}
.nxt_tabs > label {
    margin: .3em .3em 0 0;
}
.nxt_tabs > label a {
    border: solid #ddd;
    border-width: .1em .1em 0;
    cursor: pointer;
    display: block;
    overflow: hidden;
    padding: .3em .6em;
    text-decoration: none;
    white-space: nowrap;
}
.nxt_tabs > label a:hover {
    text-decoration: underline;
}
.nxt_tabs > input.nojs + label a {
    border-width: .1em;
}
.nxt_tabs > input.nojs + label:target a,
.nxt_tabs > input.js:checked + label a {
    background: #00974d;
    border-color: #00974d;
    color: white;
    cursor: default;
    text-shadow: 1px 0 white;
}
.nxt_tabs > input.nojs + label:target a:hover,
.nxt_tabs > input.js:checked + label a:hover {
    text-decoration: none;
}
.nxt_tabs > input.nojs + label:target + div,
.nxt_tabs > input.js:checked + label + div {
    display: block;
}

/* Click-to-copy */
.nxt_copy_btn {
    position: absolute;
    top: 0;
    right: .2em;
    cursor: pointer;
}
.nxt_copy_btn a {
    display: inline-block;
    line-height: 1em;
    padding: .5em;
}
.nxt_copy_btn input,
.nxt_copy_btn a:last-child,
.nxt_copy_btn input:checked + a {
    display: none;
}
.nxt_copy_btn input:checked ~ a:last-child {
    display: inline-block;
}
.nxt_copy_btn:hover svg {
    fill: #eee;
}
.nxt_copy_btn svg,
.nxt_copy_btn:active svg {
    fill: #bbb;
    height: 1em;
}
.nxt_copy_ws {
    visibility: hidden;
}
/* GitHub link */
.nxt_discuss_link {
    position: relative;
    font-size: .9em;
    right: 0;
    bottom: 0;
    padding: 0;
    display: block;
    text-align: right;
}
.nxt_discuss_link div {
    display: inline-block;
    height: 1em;
    margin: 0 .3em -.2em 0;
    content: url("data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M208 352c114.9 0 208-78.8 208-176S322.9 0 208 0S0 78.8 0 176c0 38.6 14.7 74.3 39.6 103.4c-3.5 9.4-8.7 17.7-14.2 24.7c-4.8 6.2-9.7 11-13.3 14.3c-1.8 1.6-3.3 2.9-4.3 3.7c-.5 .4-.9 .7-1.1 .8l-.2 .2 0 0 0 0C1 327.2-1.4 334.4 .8 340.9S9.1 352 16 352c21.8 0 43.8-5.6 62.1-12.5c9.2-3.5 17.8-7.4 25.3-11.4C134.1 343.3 169.8 352 208 352zM448 176c0 112.3-99.1 196.9-216.5 207C255.8 457.4 336.4 512 432 512c38.2 0 73.9-8.7 104.7-23.9c7.5 4 16 7.9 25.2 11.4c18.3 6.9 40.3 12.5 62.1 12.5c6.9 0 13.1-4.5 15.2-11.1c2.1-6.6-.2-13.8-5.8-17.9l0 0 0 0-.2-.2c-.2-.2-.6-.4-1.1-.8c-1-.8-2.5-2-4.3-3.7c-3.6-3.3-8.5-8.1-13.3-14.3c-5.5-7-10.7-15.4-14.2-24.7c24.9-29 39.6-64.7 39.6-103.4c0-92.8-84.9-168.9-192.6-175.5c.4 5.1 .6 10.3 .6 15.5z"/></svg>");
}
/* Edit link */
.nxt_edit_link {
    position: relative;
    font-size: .9em;
    right: 0;
    bottom: 0;
    padding: 0;
    display: block;
    text-align: right;
}
.nxt_edit_link div {
    display: inline-block;
    height: 1em;
    margin: 0 .3em -.2em 0;
    content: url("data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M410.3 231l11.3-11.3-33.9-33.9-62.1-62.1L291.7 89.8l-11.3 11.3-22.6 22.6L58.6 322.9c-10.4 10.4-18 23.3-22.2 37.4L1 480.7c-2.5 8.4-.2 17.5 6.1 23.7s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L387.7 253.7 410.3 231zM160 399.4l-9.1 22.7c-4 3.1-8.5 5.4-13.3 6.9L59.4 452l23-78.1c1.4-4.9 3.8-9.4 6.9-13.3l22.7-9.1v32c0 8.8 7.2 16 16 16h32zM362.7 18.7L348.3 33.2 325.7 55.8 314.3 67.1l33.9 33.9 62.1 62.1 33.9 33.9 11.3-11.3 22.6-22.6 14.5-14.5c25-25 25-65.5 0-90.5L453.3 18.7c-25-25-65.5-25-90.5 0zm-47.4 168l-144 144c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6l144-144c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6z"/></svg>");
}
/* News and RSS entries */
#content .nxt_news_item {
    border-bottom: .1em solid #ddd;
    padding: .5em 0;
}
#content .nxt_news_item:last-child {
    border: none;
}
#content .nxt_news_item h2 {
    margin: .5em 0 .1em 0;
    font-size: 1.5em;
}
#content p.nxt_news_authordate {
    margin: 0;
    color: #999;
    font-size: .9em;
    font-weight: bold;
}
@media (min-width: 45em) {
    .nxt_edit_link {
    }
    .nxt_discuss_link {
    }
}
@media (max-width: 45em) {
    #side {
        position: relative;
        float: inherit;
        height: 100%;
    }
    #side h1 {
        margin-left: 7.5em;
        font-size: .8em;
    }
    #side h1 div {
        visibility: hidden;
        opacity: 0;
        transition: none;
    }
    #side .toctree-l2 ul {
        transition: none;
    }
    #content {
        margin-left: 0;
        padding-left: 1.6em;
    }
    .nxt_tabs > div {
        width: 93%;
    }
    .nxt_tabs > input + label a {
        border-width: .1em;
    }
    .nxt_tabs > input.nojs + label:target,
    .nxt_tabs > input.js:checked + label {
        order: 1;
    }
    .nxt_edit_link {
        display: none;
    }
    .nxt_discuss_link {
        display: none;
    }
}
@media (max-width: 73em) {
    #content .video div {
        flex-basis: 90%;
        padding-top: 50.61%;
    }
}
@media (prefers-color-scheme: dark) {
    body {
        background: #1e293b;
        color: #cbd5e1;
    }
    a {
        color: #8cb4ff;
    }
    #version_link a {
        color: #cbd5e1;
    }
    #content .literal,
    #content span.option {
        background: #343434;
        color: #FFFFFF;
    }
    .nxt_edit_link div {
        filter: invert(1);
    }
    .nxt_discuss_link div {
        filter: invert(1);
    }
    #side .toctree-l2 ul:after {
        background: linear-gradient(to top, #1e293b, rgba(255,255,255,0));
    }
    .nxt_tabs > input.nojs + label:target a,
    .nxt_tabs > input.js:checked + label a {
        background: #00974d;
        border-color: #00974d;
        color: #1e293b;
        cursor: default;
        text-shadow: 1px 0 #1e293b;
    }
}

blockquote {
  margin: 1em 0;
  border-color: #1e293b;
  border-left: .2em solid;
  border-left-color: currentcolor;
  font-style: italic;
  padding: .6em 0 .6em 1em;
}
