 /* Default (light) theme colors */
 :root {
    --body-color: #404040;
    --content-wrap-background-color: #efefef;
    --content-background-color: #fcfcfc;
    --logo-opacity: 1.0;
    --logo-background-color: #d0d0d0;
    --navbar-background-color: #d0d0d0;
    --navbar-background-color-hover: #bfbfbf;
    --navbar-background-color-active: #c9ffc9;
    --navbar-current-background-color: #e0e0e0;
    --navbar-current-background-color-hover: #bfbfbf;
    --navbar-current-background-color-active: #a0a0a0;
    --navbar-level-1-color: #fcfcfc;
    --navbar-level-2-color: #414141;
    --navbar-level-3-color: #414141;
    --navbar-heading-color: #8080ff;
    --navbar-scrollbar-color: #C0C0C0;
    --navbar-scrollbar-hover-color: #707070;
    --navbar-scrollbar-active-color: #707070;
    --navbar-scrollbar-background: #f2f2f2;

    --link-color: #2980b9;
    --link-color-hover: #3091d1;
    --link-color-active: #105078;
    --link-color-visited: #298093;
    --classref-badge-text-color: hsl(0, 0%, 45%);

    --hr-color: #e1e4e5 !important;
    --table-row-odd-background-color: #efefef !important;
    --code-background-color: #f0f0f0 !important;
    --code-border-color: #e1e4e5 !important;
    --code-literal-background-color: #f8f8f8 !important;
    --code-literal-color: #c01919 !important;
    --input-background-color: #fcfcfc !important;
    --input-focus-border-color: #5f8cff !important;

    --search-input-background-color: #e6eef3; /* derived from --input-background-color */
    --search-match-color: #2c6b96; /* derived from --link-color */
    --search-match-background-color: #e3f2fd; /* derived from --link-color */
    --search-active-color: #efefef;
    --search-credits-background-color: #333f67; /* derived from --navbar-background-color */
    --search-credits-color: #b3b3b3; /* derived from --footer-color */
    --search-credits-link-color: #4392c5; /* derived from --link-color */

    --highlight-background-color: #f0f0f0;
    --highlight-background-emph-color: #F3E2CE;
    --highlight-default-color: #404040;
    --highlight-comment-color: #408090;
    --highlight-keyword-color: #007020;
    --highlight-keyword2-color: #902000;
    --highlight-number-color: #208050;
    --highlight-decorator-color: #4070a0;
    --highlight-type-color: #007020;
    --highlight-type2-color: #0e84b5;
    --highlight-function-color: #06287e;
    --highlight-operator-color: #666666;
    --highlight-string-color: #4070a0;

    --admonition-note-background-color: #EBF5F5;
    --admonition-note-color: #404040;
    --admonition-note-title-background-color: #519EA0;
    --admonition-note-title-color: #fff;
    --admonition-attention-background-color: #FEE4E2;
    --admonition-attention-color: #404040;
    --admonition-attention-title-background-color: #F36F63;
    --admonition-attention-title-color: #fff;
    --admonition-danger-background-color: #fcf3f2;
    --admonition-danger-color: #404040;
    --admonition-danger-title-background-color: #e9a499;
    --admonition-danger-title-color: #fff;
    --admonition-tip-background-color: #FFEDD4;
    --admonition-tip-color: #404040;
    --admonition-tip-title-background-color: #f0b37e;
    --admonition-tip-title-color: #fff;

    --kat-element-color: #c01919;
    --kat-element-background: #EBEBEB;
    --kat-element-border-color: #F36F63;
    --kat-element-left-color:  #000000;
    --kat-element-left-background:  #393E43;

    --kbd-background-color: #fafbfc;
    --kbd-outline-color: #d1d5da;
    --kbd-shadow-color: #b0b7bf;
    --kbd-text-color: #444d56;

    --btn-neutral-background-color: #f3f6f6;
    --btn-neutral-hover-background-color: #e5ebeb;
    --footer-color: #808080;
}
/* Dark theme colors */
@media (prefers-color-scheme: dark) {
    :root {
/*        --body-color: rgba(255, 255, 255, 0.85);*/
        --body-color: rgba(255, 255, 255, 0.85);
        --content-wrap-background-color: #202326;
        --content-background-color: #2e3236;
        /* Decrease the logo opacity when using the dark theme to be less distracting */
        --logo-opacity: 0.85;
        --logo-background-color: #aa3d01;
        --logo-background-color: #5b8c91;
        --logo-background-color: #25282b;
        --navbar-background-color: #25282b;
        --navbar-background-color-hover: #333639;
        --navbar-background-color-active: #111417;
        --navbar-current-background-color: #333639;
        --navbar-current-background-color-hover: #44474a;
        --navbar-current-background-color-active: #222528;
        --navbar-level-1-color: #ddd;
        --navbar-level-2-color: #ccc;
        --navbar-level-3-color: #bbb;
        --navbar-heading-color: #ee7381;
        --navbar-scrollbar-color: #be5460;
        --navbar-scrollbar-hover-color: #963e48;
        --navbar-scrollbar-active-color: #5f3034;
        --navbar-scrollbar-background: #1c1e21;

        --link-color: #8cf;
        --link-color-hover: #9df;
        --link-color-active: #6ad;
        --link-color-visited: #3097AD;
        --classref-badge-text-color: hsl(0, 0%, 70%);

        --hr-color: #555 !important;
        --table-row-odd-background-color: #393E43 !important;
        --code-background-color: #292C30 !important;
        --code-border-color: #505356 !important;
        --code-literal-background-color: #292C30 !important;
        --code-literal-color: #fcc !important;
        --input-background-color: #333537 !important;
        --input-focus-border-color: #5f8cff !important;

        --search-input-background-color: #43464a; /* derived from --input-background-color */
        --search-match-color: #52b4ff; /* derived from --link-color */
        --search-match-background-color: #414c56; /* derived from --link-color */
        --search-active-color: #202326;
        --search-credits-background-color: #202123; /* derived from --navbar-background-color */
        --search-credits-color: #6b6b6b; /* derived from --footer-color */
        --search-credits-link-color: #628fb1; /* derived from --link-color */

        /* Colors taken from the Godot script editor with the Adaptive theme */
        --highlight-background-color: #202531;
        --highlight-background-emph-color: #38416C;
        --highlight-default-color: rgba(255, 255, 255, 0.85);
        --highlight-comment-color: rgba(204, 206, 211, 0.5);
        --highlight-keyword-color: #ff7085;
        --highlight-keyword2-color: #42ffc2;
        --highlight-number-color: #a1ffe0;
        --highlight-decorator-color: #abc8ff;
        --highlight-type-color: #8effda;
        --highlight-type2-color: #c6ffed;
        --highlight-function-color: #57b3ff;
        --highlight-operator-color: #abc8ff;
        --highlight-string-color: #ffeca1;

        --admonition-note-background-color: #2C3C3C;
        --admonition-note-color: #bfeeff;
        --admonition-note-title-background-color: #0E6F71;
        --admonition-note-title-color: #bfefff;
/*        --admonition-attention-background-color: #444033;
        --admonition-attention-color: #ffeeaf;
        --admonition-attention-title-background-color: #665022;
        --admonition-attention-title-color: #ffeeaf;
*/
        --admonition-attention-background-color: #433;
        --admonition-attention-color: #fcc;
        --admonition-attention-title-background-color: #633;
        --admonition-attention-title-color: #fcc;
        --admonition-danger-background-color: #433;
        --admonition-danger-color: #fcc;
        --admonition-danger-title-background-color: #633;
        --admonition-danger-title-color: #fcc;
        --admonition-tip-background-color: #444033;
        --admonition-tip-color: #ffeeaf;
        --admonition-tip-title-background-color: #665022;
        --admonition-tip-title-color: #ffeeaf;

        --kat-element-color: #FF8074;
        --kat-element-background: #252525;
        --kat-element-border-color: #F36F63;
        --kat-element-left-color:  #9CDAD9;
        --kat-element-left-background:  #393E43;

        --kbd-background-color: #595b5d;
        --kbd-outline-color: #3d4144;
        --kbd-shadow-color: #1e2023;
        --kbd-text-color: #e2f2ff;

        --btn-neutral-background-color: #404040;
        --btn-neutral-hover-background-color: #505050;
        --footer-color: #aaa;
    }
}

body {
    font-family: Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;
}

body,
.rst-content table.docutils thead {
    color: var(--body-color);
}

a {
    color: var(--link-color) !important;
}

a:hover {
    color: var(--link-color-hover) !important;
    text-decoration: underline;
}

a:active {
    /* Add visual feedback when clicking on a link */
    color: var(--link-color-active) !important;
}

a:visited {
    color: var(--link-color-visited) !important;
}

hr,
#search-results .search li:first-child,
#search-results .search li {
    border-color: var(--hr-color);
}


.sphinx-tabs-panel {
  position: relative;
  padding-top: 0.5rem;
  /*
  border: 1px solid #a0b3bf;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: rgb(160, 179, 191);
  */
  margin: 0px -1px -1px -1px;
  border-radius: 0 0 5px 5px;
  border-top: 0;
  background: var(--content-background-color);
}

/* code documentation directives adf TODO remove what is not needed */

/* jwp signifier color */
html.writer-html4 .rst-content dl:not(.docutils) .descclassname,
html.writer-html4 .rst-content dl:not(.docutils) .descname,
html.writer-html4 .rst-content dl:not(.docutils) .sig-name,
html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descclassname,
html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .descname,
html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .sig-name {
    color: var(--highlight-default-color) !important;
}

/* adf kat element titles */
.rst-content dl:not(.field-list).py.class > dt,
.rst-content dl:not(.field-list).kat.element > dt {
    background: var(--kat-element-background) !important;
    border-top: 3px solid var(--kat-element-border-color) !important;
}

.rst-content dl:not(.field-list).kat.command > dt,
.rst-content dl:not(.field-list).kat.element > dt,
.rst-content dl:not(.field-list).kat.analysis > dt,
.rst-content dl:not(.field-list).std.option > dt {
    background: var(--kat-element-background) !important;
    border-top: 3px solid var(--kat-element-border-color) !important;
}

/* kat element title */
.rst-content code.descname,
.rst-content code.descclassname {
    color: var(--kat-element-color) !important;
    background: var(--kat-element-background) !important;
}

/* biblio label */
.rst-content dl:not(.field-list).citation > dt {
    color: var(--kat-element-color) !important;
    background: var(--kat-element-background) !important;
    border-top: 3px solid var(--kat-element-border-color) !important;
}


.rst-content dl:not(.docutils) dt {
/*    background-color: var(--admonition-note-background-color); */
    border-color: var(--admonition-note-title-background-color);
    color: var(--admonition-note-color);
}

/* syntax aliases option ... */
.rst-content dl:not(.docutils) dl dt {
    background-color: var(--background-color) !important;
    color: var(--kat-element-left-color);
}

.rst-content dl:not(.docutils).class dt,
.rst-content dl:not(.docutils).function dt,
.rst-content dl:not(.docutils).method dt,
.rst-content dl:not(.docutils).attribute dt {
    width: 100%;
}
.rst-content dl:not(.docutils).class > dt,
.rst-content dl:not(.docutils).function > dt,
.rst-content dl:not(.docutils).data > dt,
.rst-content dl:not(.docutils).method > dt,
.rst-content dl:not(.docutils).attribute > dt {
    font-size: 100%;
    font-weight: normal;
    margin-bottom: 16px;
    padding: 6px 8px;
    background: var(--kat-element-background) !important;
    border-top: 3px solid var(--kat-element-border-color) !important;
}
.rst-content dl:not(.docutils) tt.descclassname,
.rst-content dl:not(.docutils) code.descclassname {
    color: var(--highlight-type2-color);
    font-weight: normal;
}
.rst-content dl:not(.docutils) tt.descname,
.rst-content dl:not(.docutils) code.descname {
    color: var(--highlight-function-color);
    font-weight: normal;
}
.rst-content dl:not(.docutils) .sig-paren,
.rst-content dl:not(.docutils) .optional {
    color: var(--highlight-operator-color);
    font-weight: normal;
    padding: 0 2px;
}
.rst-content dl:not(.docutils) .optional {
    font-style: italic;
}
.rst-content dl:not(.docutils):not(.py.class) .sig-param,
.rst-content dl:not(.docutils):not(.py).class dt > em,
.rst-content dl:not(.docutils).function dt > em,
.rst-content dl:not(.docutils).method dt > em {
    color: var(--code-literal-color);
    background: var(--code-literal-background-color);
    font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
    font-style: normal !important;
    font-weight: 500 !important;
    white-space: normal !important;
    padding: 0 4px;
}
.rst-content dl:not(.docutils) .sig-param,
.rst-content dl:not(.docutils).class dt > .optional ~ em,
.rst-content dl:not(.docutils).function dt > .optional ~ em,
.rst-content dl:not(.docutils).method dt > .optional ~ em {
    color: var(--highlight-number-color);
    font-style: italic;
}
.rst-content dl:not(.docutils).class dt > em.property {
    color: var(--highlight-keyword-color);
}
.rst-content dl:not(.docutils) dt a.headerlink {
    color: var(--link-color);
}
.rst-content dl:not(.docutils) dt a.headerlink:visited {
    color: var(--link-color-visited);
}

footer,
#search-results .context {
    color: var(--footer-color);
}

/* Sphinx Search extension */
/* .wy-body-for-nav is used for higher rule specificity */

/* Search popup body */
.wy-body-for-nav .search__outer {
    background-color: var(--content-background-color);
    border: 2px solid var(--content-background-color);
}
.wy-body-for-nav .search__cross svg {
    fill: var(--body-color);
}

.wy-body-for-nav .search__outer::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: var(--content-background-color);
}
.wy-body-for-nav .search__outer::-webkit-scrollbar {
    width: 7px;
    height: 7px;
    background-color: var(--content-background-color);
}
.wy-body-for-nav .search__outer::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: var(--hr-color);
}
/* Search input */
.wy-body-for-nav .search__outer__input {
    background-color: var(--search-input-background-color);
    background-image: none;
    border-radius: 50px;
    border: 2px solid transparent;
    color: var(--body-color);
    height: 36px;
    padding: 6px 12px;
}
.wy-body-for-nav .search__outer__input:focus {
    border-color: var(--input-focus-border-color);
}
.wy-body-for-nav .search__outer .bar:after,
.wy-body-for-nav .search__outer .bar:before {
    display: none;
}

/* Search results item */
.wy-body-for-nav .search__result__single {
    border-bottom-color: var(--hr-color);
}
/* Search item title */
.wy-body-for-nav .search__result__title {
    color: var(--link-color);
    border-bottom: none;
    font-size: 120%;
    font-weight: 400;
}

/* Search item section */
.wy-body-for-nav .outer_div_page_results:hover,
.wy-body-for-nav .search__result__box .active {
    background-color: var(--search-active-color);
}
.wy-body-for-nav .search__result__subheading{
    color: var(--body-color);
    font-size: 100%;
    font-weight: 400;
}
.wy-body-for-nav .search__result__content {
    color: var(--footer-color);
}

/* Search item matching substring */
.wy-body-for-nav .search__outer .search__result__title span,
.wy-body-for-nav .search__outer .search__result__content span {
    color: var(--search-match-color);
    border-bottom: 1px solid var(--search-match-color);
    background-color: var(--search-match-background-color);
    padding: 0 2px;
}
.wy-body-for-nav .search__result__subheading span {
    border-bottom-color: var(--body-color);
}

/* Search empty results */
/* The original styles are inlined, see https://github.com/readthedocs/readthedocs-sphinx-search/issues/48 */
.wy-body-for-nav .search__result__box {
    color: var(--body-color) !important;
}

/* Search footer & credits */
.wy-body-for-nav .rtd__search__credits {
    background-color: var(--search-credits-background-color);
    border-color: var(--search-credits-background-color);
    color: var(--search-credits-color);
    padding: 4px 8px;
}
.wy-body-for-nav .rtd__search__credits a {
    color: var(--search-credits-link-color);
}

/* Main sections */

.wy-nav-content-wrap {
    background-color: var(--content-wrap-background-color);
}

.wy-nav-content {
    background-color: var(--content-background-color);
}

.wy-body-for-nav {
    background-color: var(--content-wrap-background-color);
}


@media only screen and (min-width: 769px) {
    .wy-body-for-nav {
        /* Center the page on wide displays for better readability */
        max-width: 1100px;
        margin: 0 auto;
    }
}

/* Table display tweaks */

.rst-content table.docutils,
.wy-table-bordered-all td,
.rst-content table.docutils td,
.wy-table thead th,
.rst-content table.docutils thead th,
.rst-content table.field-list thead th {
    border-color: var(--code-border-color);
}

.wy-table-odd td,
.wy-table-striped tr:nth-child(2n-1) td,
.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td {
    background-color: var(--table-row-odd-background-color);
}

/* Override table no-wrap */
/* The first column cells are not verbose, no need to wrap them */
.wy-table-responsive table td:not(:nth-child(1)),
.wy-table-responsive table th:not(:nth-child(1)) {
    white-space: normal;
}

/* Code display tweaks */

/* adf, added */
.jupyter_container div {
    font-size: 14px;
    background-color: var(--code-background-color) !important;
/*    border: 1px solid var(--code-border-color);*/
}

code,
.rst-content tt,
.rst-content code {
    font-size: 14px;
    font-weight: normal !important;
    background-color: var(--code-background-color) !important;
    border: 1px solid var(--code-border-color);
}

.rst-content tt.literal,
.rst-content code.literal {
    color: var(--code-literal-color);
}

.rst-content div[class^="highlight"] {
    border-color: var(--code-border-color);
}

.rst-content pre.literal-block,
.rst-content div[class^="highlight"] pre,
.rst-content .linenodiv pre {
    /* Increase the font size and line height in code blocks */
    /*font-size: 14px;*/
    /*line-height: 1.5;*/
}

/* Code tab display tweaks */

.ui.tabular.menu .active.item,
.ui.segment {
    background-color: var(--code-background-color);
}

/* Syntax highlighting */

.highlight {
    background-color: var(--highlight-background-color);
}

/* Emphasized lines */
.highlight .hll {
    background-color: var(--highlight-background-emph-color);
}

.highlight .gh /* Generic.Heading */,
.highlight .gu /* Generic.Subheading */,
.highlight .go /* Generic.Output */,
.highlight .gt /* Generic.Traceback */ {
    color: var(--highlight-default-color);
}

.highlight .c  /* Comment */,
.highlight .c1 /* Comment.Single */,
.highlight .cm /* Comment.Multiline */,
.highlight .cs /* Comment.Special */ {
    color: var(--highlight-comment-color);
}

.highlight .bp /* Name.Builtin.Pseudo */,
.highlight .k  /* Keyword */,
.highlight .kc /* Keyword.Constant */,
.highlight .kd /* Keyword.Declaration */,
.highlight .kn /* Keyword.Namespace */,
.highlight .kp /* Keyword.Pseudo */,
.highlight .kr /* Keyword.Reserved */,
.highlight .kt /* Keyword.Type */,
.highlight .ow /* Operator.Word */ {
    color: var(--highlight-keyword-color);
}

.highlight .ch /* Comment.Hashbang */,
.highlight .cp /* Comment.Preproc */ {
    color: var(--highlight-keyword2-color);
}

.highlight .m  /* Literal.Number */,
.highlight .mf /* Literal.Number.Float */,
.highlight .mi /* Literal.Number.Integer */,
.highlight .il /* Literal.Number.Integer.Long */,
.highlight .mb /* Literal.Number.Bin */,
.highlight .mh /* Literal.Number.Hex */,
.highlight .mo /* Literal.Number.Oct */ {
    color: var(--highlight-number-color);
}

.highlight .na /* Name.Attribute */,
.highlight .nd /* Name.Decorator */,
.highlight .ni /* Name.Entity */,
.highlight .nl /* Name.Label */ {
    color: var(--highlight-decorator-color);
}

.highlight .nb /* Name.Builtin */,
.highlight .ne /* Name.Exception */ {
    color: var(--highlight-type-color);
}

.highlight .nc /* Name.Class */,
.highlight .nn /* Name.Namespace */,
.highlight .no /* Name.Constant */,
.highlight .nv /* Name.Variable */,
.highlight .vc /* Name.Variable.Class */,
.highlight .vg /* Name.Variable.Global */,
.highlight .vi /* Name.Variable.Instance */,
.highlight .vm /* Name.Variable.Magic */ {
    color: var(--highlight-type2-color);
}

.highlight .nf /* Name.Function */,
.highlight .fm /* Name.Function.Magic */,
.highlight .nt /* Name.Tag */ {
    color: var(--highlight-function-color);
}

.highlight .o  /* Operator */,
.highlight .si /* Literal.String.Interpol */,
.highlight .sx /* Literal.String.Other */,
.highlight .sr /* Literal.String.Regex */,
.highlight .ss /* Literal.String.Symbol */ {
    color: var(--highlight-operator-color);
}

.highlight .cpf/* Comment.PreprocFile */,
.highlight .s  /* Literal.String */,
.highlight .s1 /* Literal.String.Single */,
.highlight .s2 /* Literal.String.Double */,
.highlight .sc /* Literal.String.Char */,
.highlight .se /* Literal.String.Escape */,
.highlight .sa /* Literal.String.Affix */,
.highlight .sb /* Literal.String.Backtick */,
.highlight .dl /* Literal.String.Delimiter */,
.highlight .sd /* Literal.String.Doc */,
.highlight .sh /* Literal.String.Heredoc */ {
    color: var(--highlight-string-color);
}


/* Admonition tweaks */

.rst-content .admonition.note,
.rst-content .admonition.seealso {
    background-color: var(--admonition-note-background-color);
    color: var(--admonition-note-color);
}

.rst-content .admonition.note .admonition-title,
.rst-content .admonition.seealso .admonition-title {
    background-color: var(--admonition-note-title-background-color);
    color: var(--admonition-note-title-color);
}

.rst-content .admonition-todo .admonition-title {
    background-color: var(--admonition-note-title-background-color);
    color: var(--admonition-note-title-color);
}

.rst-content .admonition-todo {
    background-color: var(--admonition-note-background-color);
    color: var(--admonition-note-color);
}


.rst-content .admonition.attention,
.rst-content .admonition.caution,
.rst-content .admonition.warning {
    background-color: var(--admonition-attention-background-color) !important;
    color: var(--admonition-attention-color);
}

.rst-content .admonition.attention .admonition-title,
.rst-content .admonition.caution .admonition-title,
.rst-content .admonition.warning .admonition-title {
    background-color: var(--admonition-attention-title-background-color);
    color: var(--admonition-attention-title-color);
}

.rst-content .admonition.danger {
    background-color: var(--admonition-danger-background-color);
    color: var(--admonition-danger-color);
}

.rst-content .admonition.danger .admonition-title {
    background-color: var(--admonition-danger-title-background-color);
    color: var(--admonition-danger-title-color);
}

.rst-content .admonition.tip,
.rst-content .admonition.important {
    background-color: var(--admonition-tip-background-color);
    color: var(--admonition-tip-color);
}

.rst-content .admonition.tip .admonition-title,
.rst-content .admonition.important .admonition-title {
    background-color: var(--admonition-tip-title-background-color);
    color: var(--admonition-tip-title-color);
}

.rst-content .admonition.hint {
    background-color: var(--admonition-tip-background-color);
    color: var(--admonition-tip-color);
}

.rst-content .admonition.hint .admonition-title {
    background-color: var(--admonition-tip-title-background-color);
    color: var(--admonition-tip-title-color);
}


/* adf: Keyboard shortcuts tweaks removed */

/* Buttons */

.btn-neutral {
    background-color: var(--btn-neutral-background-color) !important;
    color: var(--body-color) !important;
}

.btn-neutral:hover {
    background-color: var(--btn-neutral-hover-background-color) !important;
}

.btn-neutral:visited {
    color: var(--body-color) !important;
}

/* Navigation bar logo and search */

.logo {
    opacity: var(--logo-opacity);
}

/* Fixed size to prevent reflows and support hiDPI displays */
/* A 5 pixel margin is added on each side. The logo itself displays at 200px width at 100% scaling. */

.wy-side-nav-search > a img.logo {
    width: 250px;
    height: 56px;
}


.wy-side-nav-search {
    background-color: var(--logo-background-color);
}

.wy-side-nav-search.fixed {
    position: fixed;
}

/* adf is this used? */

@media only screen and (min-width: 769px) {
    /* Simulate a drop shadow that only affects the bottom edge */
    /* This is used to indicate the search bar is fixed */
    .wy-side-nav-search.fixed-and-scrolled::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -8px;
        width: 300px;
        height: 8px;
        pointer-events: none;
        background: linear-gradient(hsla(0, 0%, 0%, 0.2), transparent);
    }
}

.wy-side-nav-search > a:hover,
.wy-side-nav-search .wy-dropdown > a:hover {
    background-color: var(--navbar-background-color-hover);
}

.wy-side-nav-search > a:active,
.wy-side-nav-search .wy-dropdown > a:active {
    background-color: var(--navbar-background-color-active);
}

.wy-side-nav-search input[type="text"] {
    background-color: var(--input-background-color);
    color: var(--body-color);
    /* Avoid reflowing when toggling the focus state */
    border: 2px solid transparent;
    box-shadow: none;
    /* Make visual feedback instant */
    transition: none;
    font-size: 14px;
}

.wy-side-nav-search input[type="text"]:focus {
    border: 2px solid var(--input-focus-border-color);
}

.wy-side-nav-search input[type="text"]::placeholder {
    color: var(--body-color);
    opacity: 0.55;
}


/* Navigation bar */

.wy-nav-side {
    background-color: var(--navbar-background-color);
}


@media only screen and (min-width: 769px) {
    .wy-nav-side {
        /* Required to center the page on wide displays */
        left: inherit;
    }
}

.wy-menu-vertical header,
.wy-menu-vertical p.caption {
    color: var(--navbar-heading-color);

    /* Improves the appearance of uppercase text */
    letter-spacing: 0.75px;
}

/* Mobile navigation */

.wy-nav-top,
.wy-nav-top a {
    background-color: var(--navbar-background-color);
    color: var(--navbar-level-1-color);
}

/* Version branch label below the logo */
.wy-side-nav-search > div.version {
    color: var(--navbar-level-3-color);
    opacity: 0.9;
}

/* First level of navigation items */

.wy-menu-vertical a {
    color: var(--navbar-level-1-color);
}

.wy-menu-vertical a:hover {
    background-color: var(--navbar-background-color-hover);
    color: var(--navbar-level-1-color);
}

.wy-menu-vertical a:active {
    background-color: var(--navbar-background-color-active);
}

.wy-menu-vertical li.toctree-l1.current > a {
    border: none;
}

.wy-side-nav-search, .wy-menu-vertical a, .wy-menu-vertical a span.toctree-expand,
.wy-menu-vertical li.toctree-l2 a span.toctree-expand {
    color: var(--navbar-level-3-color) !important;
    opacity: 0.9;
    margin-right: 5px;
}

.wy-side-nav-search, .wy-menu-vertical a, .wy-menu-vertical a:hover span.toctree-expand,
.wy-menu-vertical li.toctree-l2 a:hover span.toctree-expand {
    color: var(--navbar-level-2-color);
    opacity: 1;
}

.wy-side-nav-search, .wy-menu-vertical a, .wy-menu-vertical a:active span.toctree-expand,
.wy-menu-vertical li.toctree-l2 a:active span.toctree-expand {
    color: var(--navbar-level-1-color);
    opacity: 1;
}

/* jwp expanded button color */
.wy-menu-vertical li.current > a button.toctree-expand,
.wy-menu-vertical li.on a button.toctree-expand {
    color: var(--navbar-level-3-color);
    opacity: 1;
}

/* Second (and higher) levels of navigation items */

/* .wy-menu-vertical li.current a { */
    /* Make long words always display on a single line, keep wrapping for multiple words */
    /* This fixes the class reference titles' display with very long class names */

    /* jwp removed, breaks the margin on the +/- expansion button for the active menu */
    /* display: flex;  */
/* } */

.wy-menu-vertical li.current a,
.wy-menu-vertical li.toctree-l2.current > a,
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > a,
.wy-menu-vertical li.toctree-l2.current li.toctree-l4 > a {
    background-color: var(--navbar-current-background-color);
    color: var(--navbar-level-2-color);
    border-color: var(--navbar-current-background-color);
}

.wy-menu-vertical li.current a:hover,
.wy-menu-vertical li.toctree-l2.current > a:hover,
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > a:hover,
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a:hover {
    background-color: var(--navbar-current-background-color-hover);
}

.wy-menu-vertical li.current a:active,
.wy-menu-vertical li.toctree-l2.current > a:active,
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > a:active,
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a:active {
    background-color: var(--navbar-current-background-color-active);
}

.wy-menu-vertical a {
    /* This overrides 8px margin added in other multi-selector rules */
    margin-right: 0;
}

/* Banner panel in sidebar */
.wy-nav-side .ethical-rtd.fixed {
    position: fixed;
}

/* adf: version selector removed */

/* Hide the obnoxious automatic highlight in search results */
.rst-content .highlighted {
    background-color: transparent;
    font-weight: inherit;
    padding: 0;
}

/* Allows the scrollbar to be shown in the sidebar */
@media only screen and (min-width: 769px) {
    .wy-side-scroll {
        overflow: hidden;
        position: fixed !important;
    }

    .wy-nav-side .wy-side-scroll .ethical-rtd {
        width: calc(300px - 1.25em);
        padding: 0 0 0 1em;
    }
}
.wy-menu.wy-menu-vertical {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100% - 200px);
}
@media screen and (max-width: 768px) {
    .wy-nav-side {
        padding-bottom: 44px;
    }
    .wy-menu.wy-menu-vertical {
        overflow-y: initial;
        max-height: initial;
    }
}

/* Scrollbar styling */
.wy-body-for-nav {
    scrollbar-color: var(--navbar-scrollbar-color) var(--navbar-scrollbar-background);
}
.wy-body-for-nav::-webkit-scrollbar {
    width: .75rem;
    height: .75rem;
}
.wy-body-for-nav::-webkit-scrollbar-track {
    background-color: var(--navbar-scrollbar-background);
}
.wy-body-for-nav::-webkit-scrollbar-thumb {
    background-color: var(--navbar-scrollbar-color);
}

/* Firefox does the dimming on hover automatically. We emulate it for Webkit-based browsers. */
.wy-body-for-nav::-webkit-scrollbar-thumb:hover {
    background-color: var(--navbar-scrollbar-hover-color);
}
.wy-body-for-nav::-webkit-scrollbar-thumb:active {
    background-color: var(--navbar-scrollbar-active-color);
}

/* override table width restrictions as found on https://github.com/getpelican/pelican/issues/1311 */
/* !important prevents the common CSS stylesheets from
overriding this as on RTD they are loaded after this stylesheet */

@media screen and (min-width: 767px) {

    .wy-table-responsive table td, .wy-table-responsive table th {
        white-space: normal !important;
    }

    .wy-table-responsive {
        overflow: visible !important;
    }
}

.wy-breadcrumbs code.literal,
code:not(.docutils).literal {
    font-size: 100%;
    color: var(--code-literal-color) !important;
    background-color: var(--code-literal-background-color) !important;
    font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
    font-style: initial !important;
    font-weight: 500 !important;
    white-space: normal !important;
}

code.literal {
    white-space: normal !important;
}


.wy-nav-side a code.docutils.literal {
    background-color: var(--navbar-current-background-color) !important;
}

.wy-nav-side a:hover code.docutils.literal {
    background-color: var(--navbar-current-background-color-hover) !important;
}

.wy-menu-vertical dl {
    color:#ffffff !important;
}


/* remove whitespace in search results */

#search-results li {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}

/* remove whitespace in lists in toctrees */

.rst-content .section ul li > * {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
}

/* adding white background to images by default */
/* .wy-nav-content div:not(.nobg):not(.avatar) > img {
    background-color: white !important;
    padding: 5px;
}

.rst-content div.figure:not(.nobg):not(.avatar) img {
    background-color: white !important;
    padding: 5px;
} */

/* jwp rewrite since the above wasn't working */
.rst-content img {
    background-color: white;
    padding: 5px;
    margin-bottom: 1em;
}
.rst-content figure.nobg img,
.rst-content figure.avatar img {
    background-color: transparent !important;
}

img.avatar,
.avatar img {
  height: 60px;
  width: 60px;
  -webkit-border-radius: 60px;
  -moz-border-radius: 60px;
  border-radius: 60px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}

.avatar-text {
    margin-top: -90px;
    margin-left: 80px;
    min-height: 60px;
    padding: 10px;
}

.rst-content .toctree-wrapper > p.caption, h1, h2, h3, h4, h5, h6, legend {
    font-weight: 500;
}

/* booktabs-style tables */
table, th, td {
  border-left: none !important;
  border-right: none !important;
}

th {
  border-top-width: 2px !important;
  border-bottom-width: 2px !important;
}

/* Remove margin below line-blocks in tables */
td > .line-block {
  margin-bottom: 0px !important;
}

/* remove some whitespace in element syntax */

.rst-content dl.field-list > dt,
.rst-content dl.footnote > dt {
    padding-left: 0 !important;
}

.rst-content dl dd {
    margin: 0 0 12px 16px;
}

.rst-content dl ol,
.rst-content dl p,
.rst-content dl table,
.rst-content dl ul {
    margin-bottom: 10px;
}

/* fixing color in index */
.rst-content code.xref,
.rst-content tt.xref {
    color: var(--link-color);
}

a .rst-content code,
a .rst-content tt {
    color: var(--link-color);
}


/*
.rst-content dl:not(.docutils):not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt {
  display: table;
  margin: 6px 0;
  font-size: 90%;
  line-height: normal;
  background: #f0f0f0 !important;
  color: #000000 !important;
  border-top: solid 3px #ff6c03 !important;
  padding: 6px;
  position: relative;
}
*/

/* https://github.com/readthedocs/sphinx_rtd_theme/issues/979 */

/* orange for syntax */
/*
.rst-content dl:not(.field-list) dt:not(.field-odd):not(.field-even) {
  display: table;
  margin: 6px 0;
  font-size: 90%;
  line-height: normal;
  background: #f0f0f0 !important;
  color: #000000 !important;
  border-top: solid 3px #ff6c03 !important;
  padding: 6px;
  position: relative;
}
*/

/* ssl: add custom keyboard shortcuts for use in VSCode guide in developer docs */

kbd {
    background-color: #eee;
    border-radius: 3px;
    border: 1px solid #b4b4b4;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .2), 0 2px 0 0 rgba(255, 255, 255, .7) inset;
    color: #333;
    display: inline-block;
    font-size: .85em;
    font-weight: 700;
    line-height: 1;
    padding: 2px 4px;
    white-space: nowrap;
}

/* ssl: KatScript autodoc code block padding fix to make it look nicer when embedded
        in <dd> */

.kat-instruction-syntax pre {
    padding: 0.4em !important;
}

/* jupyter-sphinx too large code output */
.jupyter_container .cell_output {
    max-height: 50em;
    overflow-y: scroll;
}

/* Fixing large spacing between code block */
.viewcode-block {
  margin-top: -37px;
}

/* sphinx-tabs */

.sphinx-tabs {
  margin-bottom: 0.0rem;
  background-color: var(--background-color)
}

[role="tablist"] {
  border-bottom: 0px solid #a0b3bf;
}

.sphinx-tabs-tab {
  font-weight: 400;
  position: relative;
  border-radius: 5px 5px 0px 0px;
  border: 2px;
  padding: 0.5rem 1.5rem;
  margin: 2px 8px 0px 16px;
  background-color: var(--content-background-color);
  color: var(--body-color);
}

.sphinx-tabs-tab[aria-selected="true"] {
  font-weight: 800;
  border: 1px solid #a0b3bf;
  border-bottom: 2px solid var(--content-background-color);
  margin: 2px 6px -4px 14px;
  padding: 0.5rem 1.4rem;
  background-color: var(--content-background-color);
  color: var(--body-color);
  z-index: 1;
}

.sphinx-tabs-tab:focus {
  z-index: 1;
  outline-offset: 1px;
}

.sphinx-tabs-panel {
  position: relative;
  padding-top: 0.6rem;
  border: 1px solid #a0b3bf;
  margin: 0px -1px 1.2rem 0px;
  border-radius: 5px;
  background-color: var(--background-color);
  z-index: 0;
}

.sphinx-tabs-panel div.highlight-default {
  margin: 0.2rem 0.2rem 0.7rem 0.2rem;
}

.sphinx-tabs-panel.code-tab {
  padding: 0.4rem;
}

.sphinx-tab img {
	margin-bottom: 24 px;
