/* RESET */
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.2
*/
html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,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{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym {border:0;font-variant:normal;}sup {vertical-align:text-top;}sub {vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}body {font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}table {font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}
body{text-align:center;}#ft{clear:both;}#doc,#doc2,#doc3,#doc4,.yui-t1,.yui-t2,.yui-t3,.yui-t4,.yui-t5,.yui-t6,.yui-t7{margin:auto;text-align:left;width:57.69em;*width:56.25em;min-width:750px;}#doc2{width:73.076em;*width:71.25em;}#doc3{margin:auto 10px;width:auto;}#doc4{width:74.923em;*width:73.05em;}.yui-b{position:relative;}.yui-b{_position:static;}#yui-main .yui-b{position:static;}#yui-main{width:100%;}.yui-t1 #yui-main,.yui-t2 #yui-main,.yui-t3 #yui-main{float:right;margin-left:-25em;}.yui-t4 #yui-main,.yui-t5 #yui-main,.yui-t6 #yui-main{float:left;margin-right:-25em;}.yui-t1 .yui-b{float:left;width:12.30769em;*width:12.00em;}.yui-t1 #yui-main .yui-b{margin-left:13.30769em;*margin-left:13.05em;}.yui-t2 .yui-b{float:left;width:13.8461em;*width:13.50em;}.yui-t2 #yui-main .yui-b{margin-left:14.8461em;*margin-left:14.55em;}.yui-t3 .yui-b{float:left;width:23.0769em;*width:22.50em;}.yui-t3 #yui-main .yui-b{margin-left:24.0769em;*margin-left:23.62em;}.yui-t4 .yui-b{float:right;width:13.8456em;*width:13.50em;}.yui-t4 #yui-main .yui-b{margin-right:14.8456em;*margin-right:14.55em;}.yui-t5 .yui-b{float:right;width:18.4615em;*width:18.00em;}.yui-t5 #yui-main .yui-b{margin-right:19.4615em;*margin-right:19.125em;}.yui-t6 .yui-b{float:right;width:23.0769em;*width:22.50em;}.yui-t6 #yui-main .yui-b{margin-right:24.0769em;*margin-right:23.62em;}.yui-t7 #yui-main .yui-b{display:block;margin:0 0 1em 0;}#yui-main .yui-b{float:none;width:auto;}.yui-gb .yui-u,.yui-g .yui-gb .yui-u,.yui-gb .yui-g,.yui-gb .yui-gb,.yui-gb .yui-gc,.yui-gb .yui-gd,.yui-gb .yui-ge,.yui-gb .yui-gf,.yui-gc .yui-u,.yui-gc .yui-g,.yui-gd .yui-u{float:left;}.yui-g .yui-u,.yui-g .yui-g,.yui-g .yui-gb,.yui-g .yui-gc,.yui-g .yui-gd,.yui-g .yui-ge,.yui-g .yui-gf,.yui-gc .yui-u,.yui-gd .yui-g,.yui-g .yui-gc .yui-u,.yui-ge .yui-u,.yui-ge .yui-g,.yui-gf .yui-g,.yui-gf .yui-u{float:right;}.yui-g div.first,.yui-gb div.first,.yui-gc div.first,.yui-gd div.first,.yui-ge div.first,.yui-gf div.first,.yui-g .yui-gc div.first,.yui-g .yui-ge div.first,.yui-gc div.first div.first{float:left;}.yui-g .yui-u,.yui-g .yui-g,.yui-g .yui-gb,.yui-g .yui-gc,.yui-g .yui-gd,.yui-g .yui-ge,.yui-g .yui-gf{width:49.1%;}.yui-gb .yui-u,.yui-g .yui-gb .yui-u,.yui-gb .yui-g,.yui-gb .yui-gb,.yui-gb .yui-gc,.yui-gb .yui-gd,.yui-gb .yui-ge,.yui-gb .yui-gf,.yui-gc .yui-u,.yui-gc .yui-g,.yui-gd .yui-u{width:32%;margin-left:1.99%;}.yui-gb .yui-u{*margin-left:1.9%;*width:31.9%;}.yui-gc div.first,.yui-gd .yui-u{width:66%;}.yui-gd div.first{width:32%;}.yui-ge div.first,.yui-gf .yui-u{width:74.2%;}.yui-ge .yui-u,.yui-gf div.first{width:24%;}.yui-g .yui-gb div.first,.yui-gb div.first,.yui-gc div.first,.yui-gd div.first{margin-left:0;}.yui-g .yui-g .yui-u,.yui-gb .yui-g .yui-u,.yui-gc .yui-g .yui-u,.yui-gd .yui-g .yui-u,.yui-ge .yui-g .yui-u,.yui-gf .yui-g .yui-u{width:49%;*width:48.1%;*margin-left:0;}.yui-g .yui-gb div.first,.yui-gb .yui-gb div.first{*margin-right:0;*width:32%;_width:31.7%;}.yui-g .yui-gc div.first,.yui-gd .yui-g{width:66%;}.yui-gb .yui-g div.first{*margin-right:4%;_margin-right:1.3%;}.yui-gb .yui-gc div.first,.yui-gb .yui-gd div.first{*margin-right:0;}.yui-gb .yui-gb .yui-u,.yui-gb .yui-gc .yui-u{*margin-left:1.8%;_margin-left:4%;}.yui-g .yui-gb .yui-u{_margin-left:1.0%;}.yui-gb .yui-gd .yui-u{*width:66%;_width:61.2%;}.yui-gb .yui-gd div.first{*width:31%;_width:29.5%;}.yui-g .yui-gc .yui-u,.yui-gb .yui-gc .yui-u{width:32%;_float:right;margin-right:0;_margin-left:0;}.yui-gb .yui-gc div.first{width:66%;*float:left;*margin-left:0;}.yui-gb .yui-ge .yui-u,.yui-gb .yui-gf .yui-u{margin:0;}.yui-gb .yui-gb .yui-u{_margin-left:.7%;}.yui-gb .yui-g div.first,.yui-gb .yui-gb div.first{*margin-left:0;}.yui-gc .yui-g .yui-u,.yui-gd .yui-g .yui-u{*width:48.1%;*margin-left:0;}s .yui-gb .yui-gd div.first{width:32%;}.yui-g .yui-gd div.first{_width:29.9%;}.yui-ge .yui-g{width:24%;}.yui-gf .yui-g{width:74.2%;}.yui-gb .yui-ge div.yui-u,.yui-gb .yui-gf div.yui-u{float:right;}.yui-gb .yui-ge div.first,.yui-gb .yui-gf div.first{float:left;}.yui-gb .yui-ge .yui-u,.yui-gb .yui-gf div.first{*width:24%;_width:20%;}.yui-gb .yui-ge div.first,.yui-gb .yui-gf .yui-u{*width:73.5%;_width:65.5%;}.yui-ge div.first .yui-gd .yui-u{width:65%;}.yui-ge div.first .yui-gd div.first{width:32%;}#bd:after,.yui-g:after,.yui-gb:after,.yui-gc:after,.yui-gd:after,.yui-ge:after,.yui-gf:after{content:".";display:block;height:0;clear:both;visibility:hidden;}#bd,.yui-g,.yui-gb,.yui-gc,.yui-gd,.yui-ge,.yui-gf{zoom:1;}
figure {margin: 0; padding: 0;}

/* GRID */

/* ==================================================================================================================== */
/* ! The 1140px Grid V2 by Andy Taylor \ http://cssgrid.net \ http://www.twitter.com/andytlr \ http://www.andytlr.com   */
/* ==================================================================================================================== */
.container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .row {
    width: 100%;
    max-width: 755px;
    min-width: 755px;
    margin: 0 auto;
    overflow: hidden;
  }

  .onecol,
  .twocol,
  .threecol,
  .fourcol,
  .fivecol,
  .sixcol,
  .sevencol,
  .eightcol,
  .ninecol,
  .tencol,
  .elevencol {
    margin-right: 3.8%;
    float: left;
    min-height: 1px;
  }

  .row .onecol {
    width: 4.85%;
  }

  .row .twocol {
    width: 13.45%;
  }

  .row .threecol {
    width: 22.05%;
  }

  .row .fourcol {
    width: 30.75%;
  }

  .row .fivecol {
    width: 39.45%;
  }

  .row .sixcol {
    width: 48%;
  }

  .row .sevencol {
    width: 56.75%;
  }

  .row .eightcol {
    width: 65.4%;
  }

  .row .ninecol {
    width: 74.05%;
  }

  .row .tencol {
    width: 82.7%;
  }

  .row .elevencol {
    width: 91.35%;
  }

  .row .twelvecol {
    width: 100%;
    float: left;
  }

  .last {
    margin-right: 0px;
  }

  @media handheld, only screen and (max-width: 875px) {
    body {
      -webkit-text-size-adjust: none;
    }

    .row,
    body,
    .container {
      width: 100%;
      min-width: 0;
      margin-left: 0px;
      margin-right: 0px;
      padding-left: 0px;
      padding-right: 0px;
    }

    .row .onecol,
    .row .twocol,
    .row .threecol,
    .row .fourcol,
    .row .fivecol,
    .row .sixcol,
    .row .sevencol,
    .row .eightcol,
    .row .ninecol,
    .row .tencol,
    .row .elevencol,
    .row .twelvecol {
      width: auto;
      float: none;
      margin-left: 0px;
      margin-right: 0px;
      padding-left: 20px;
      padding-right: 20px;
    }
}

/* FONTS */
@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@400;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;700&display=swap');

/* BASE STYLES */
@import url("basic.css");

/* BODY ELEMENTS */
body {
    font-family: 'Libre Franklin', "Helvetica", "Liberation Sans", Arial, sans-serif;;
    font-size: 20px;
    background-color: #FFFFFF;
    text-align: left;
}
@media (max-width: 875px) {
    body {
        font-size: 0.85em;
    }
}

div.document {
    margin: 0 auto;
}

div.document.wide {
    width: 975px;
}

div.document.narrow {
    width: 755px;
}

div.documentwrapper {
    display: flex;
    width: 100%;
}

div.bodywrapper {
    width: 100%;
}

div.document.wide div.bodywrapper {
    max-width: 755px;
    margin: 0 auto;
}

div.sphinxsidebar {
    width: 220px;
    margin-top: 90px;
    line-height: 1.5;
    overflow-wrap: break-word;
}

div.sphinxsidebar a,
div.sphinxsidebar a:visited {
  color: #686868;
  text-decoration: none;
}

div.sphinxsidebar a:hover {
  text-decoration: underline;
  border-bottom: none;
}

div.sphinxsidebarwrapper {
    padding: 0 22px 0 0;
}

div.sphinxsidebar h1.logo {
  font-size: 25px;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 5px;
  text-align: left;
  color: #000000
}

div.sphinxsidebar h3 {
  color: #444;
  font-size: 22px;
  font-weight: normal;
  margin: 0 0 5px 0;
  padding: 0;
}

div.sphinxsidebar ul {
  margin: 2px 0;
  padding: 0;
  list-style: none;
  font-size: 16px;
  line-height: 1.5;
}

div.sphinxsidebar .caption-text {
    line-height: 1.125;
    font-size: 0.75em;
}

div.body {
    background-color: #FFFFFF;
    min-width: 0;
    padding: 0;
}

@media screen and (max-width: 875px) {
    div.document,
    div.document.wide,
    div.document.narrow {
        width: 100%;
        margin: 0;
    }
}

@media screen and (max-width: 875px) {
    div.body, div.footer {
        min-height: 0;
        padding: 0 20px;
    }
}

@media screen and (max-width: 975px) {
    div.sphinxsidebar {
        display: none;
    }
}

/* NAV BAR */
.nav {
    display: block;
    margin-top: 0.75em;
    margin-bottom: 0.5em;
    font-size: 1em;
    line-height: 1.7em;
}

div.document.wide .nav {
    max-width: 755px;
}

.nav .shingle {
    font-size: 1.7em;
    font-weight: 700;
    text-align: left;
    padding-left: 0.15em;
}
.nav .shingle a {
    text-decoration: none;
    font-weight: bold;
    color: #000;
}
.nav .shingle a:hover {
    color: #686868;
}
@media (max-width: 875px) {
    .nav .shingle {
        float: left;
        margin-bottom: 5px;
        padding-left: 0;
   }
}
.nav .links {
    text-align: right;
}
.nav .links ul {
    float: right;
    list-style-type: none;
}
.nav .links li {
    float: left;
    list-style-position: inside;
    margin-left: 0.5em;
    font-size: 0.9em;
    font-weight: 300;
}
@media (max-width: 875px) {
    .nav .links li {
       font-size: .825em;
    }
}
.last {
    margin-right: 0;
}
.topbar {
    border-bottom: solid 10px #e5e5e5;
    margin-bottom: 20px;
    width: 100%;
}

/* -- body styles ----------------------------------------------------------- */

a {
    color: #686868;
    text-decoration: none;
    border-bottom: none;
}

a:visited {
    color: #686868;
}

a:hover {
    color: #686868;
    text-decoration: underline;
}

hr {
    border: 1px solid #e5e5e5;
}

div.body h1,
div.body h2,
div.body h3,
div.body h4,
div.body h5,
div.body h6 {
    font-family: 'Libre Franklin', "Helvetica", "Liberation Sans", Arial, sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 1.25em 0 0.3em 0;
    padding: 0;
    color: #000000;
}

div.body h1 {
    font-size: 2.2em;
    margin: 0 0 0.2em;
    line-height: 1.1;
    font-weight: 800;
}
div.body h2 { font-size: 1.15em; }
div.body h3 { font-size: 1.05em; }
div.body h4 { font-size: 1em; }
div.body h5 { font-size: 1em; }
div.body h6 { font-size: 1em; }

a.headerlink {
    visibility: hidden;
}

div.body p {
    line-height: 1.45em;
    margin-top: 0.625em;
    margin-bottom: 0.625em;
    font-weight: 300;
}

div.body h1 + p { margin-top: 0.125em; }
div.body h2 + p { margin-top: 0.125em; }
div.body h3 + p { margin-top: 0.125em; }
div.body h4 + p { margin-top: 0.125em; }
div.body h5 + p { margin-top: 0.125em; }
div.body h6 + p { margin-top: 0.125em; }

div.body h1 a,
div.body h2 a,
div.body h3 a,
div.body h4 a,
div.body h5 a,
div.body h6 a {
    color: #000000;
    text-decoration: none;
}

/* Code highlights */
div.highlight {
    background-color: #FFFFFF;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    margin-bottom: 1.25em;
}

pre, code {
    font-family: 'IBM Plex Mono', 'Droid Sans Mono', monospace;;
    font-size: 1rem;
    overflow-y: hidden;
    overflow-x: auto;
}
@media (max-width: 875px) {
    pre, code {
        font-size: 0.85em;
    }
}

pre {
    padding: 10px 7px;
    line-height: 1.3em;
}

.hll {
    background-color: #FFF9D9;
    margin: 0 -12px;
    padding: 0 12px;
    display: block;
}

div.admonition {
    margin: 20px 0;
    padding: 1em;
    background-color: ;
    border: 1px solid #E5E5E5;
}

div.admonition p.admonition-title {
    font-family: 'Libre Franklin', "Helvetica", "Liberation Sans", Arial, sans-serif;
    font-weight: 400;
    font-size: 1.25em;
    margin: 0 0 10px 0;
    padding: 0;
    line-height: 1;
}

div.admonition p.last {
    margin-bottom: 0;
}

p.admonition-title {
    display: inline;
}

p.admonition-title:after {
    content: ":";
}

/* Overrides for the default TOC box styles */
div.topic {
    background-color: ;
    margin: 0;
    padding: 8px 12px;
}

div.body p.topic-title {
    margin: 0;
    font-size: 1.1em;
    font-weight: 700;
}

div.topic ul {
    margin-top: 6px;
}

nav.contents, aside.topic, div.topic {
  border: 1px solid #e5e5e5;
  padding: 7px 10px;
  margin: 10px 0;
}

/* UNORDERED LIST */
div.body ul.simple {
    margin: 10px 0 10px 25px;
    padding: 0;
}
div.body ul.simple li {
    list-style-type: disc;
}
div.body ul.simple li p {
    margin: 4px 0;
}

/* FOOTER */
div.footer {
    text-align: left;
    margin: 1em auto;
    font-size: 0.8em;
    border-top: solid 2px #e5e5e5;
    padding-top: 0.5em;
}

@media screen and (max-width: 875px) {
    div.footer {
        width: auto;
        font-size: 0.65em;
    }
    .rtd_doc_footer {
        display: none;
    }
}

dl.function,
dl.class {
    margin: 1em 0;
}

.sig-name,
.sig-object,
.descname,
.descclassname {
    font-family: 'IBM Plex Mono', 'Droid Sans Mono', monospace;;
    font-weight: 700;
}

dl.function dd,
dl.class dd {
    padding-left: 8px;
}

dl.function strong,
dl.class strong {
    font-family: 'IBM Plex Mono', 'Droid Sans Mono', monospace;;
    font-weight: 700;
}

dl.function em,
dl.class em {
    font-family: 'IBM Plex Mono', 'Droid Sans Mono', monospace;;
    font-style: italic;
}

dl.function .rubric,
dl.class .rubric {
    margin-bottom: 2px;
}

.table-container {
    overflow-x: auto;
}

table.docutils {
  width: 100%;
  position: relative;
  margin: 10px 0;
  border-collapse: collapse;
  border: 1px solid #888;
  box-shadow: 2px 2px 4px #eee;
}

table.docutils td, table.docutils th {
    border: 1px solid #888;
    padding: 0.25em 0.7em;
}

table.docutils th {
    text-align: left;
    padding-right: 5px;
    font-weight: 700;
}

table.docutils th p {
    font-weight: 700;
}

table.docutils th>:first-child,
table.docutils td>:first-child {
    margin-top: 0
}

table.docutils th>:last-child,
table.docutils td>:last-child {
    margin-bottom: 0
}

table.docutils td.name {
  max-width: 200px;
}

table.docutils .center {
  text-align: center;
}

table.docutils .right {
  text-align: right;
}

@media (max-width: 875px) {
  table.docutils thead th {
      white-space: nowrap;
  }
}

/* LISTS */

div.body ol, div.body ul {
  margin: 2px 0 2px 20px;
  padding: 0;
  list-style-type: disc;
}

div.body li {
    margin-bottom: 1px;
    line-height: 1.45;
    list-style-type: disc;
}
.toctree-wrapper p.caption {
    margin-top: 4px;
    margin-bottom: 0;
}

/* rel links */

nav#rellinks {
  margin-top: .75em;
  margin-bottom: .5em;
  font-size: 1em;
  line-height: 1.7em;
  clear: both;
  width: 100%;
}

nav#rellinks ul {
  margin: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  width: 100%;
}

nav#rellinks li {
  flex: 1;
  display: inline;
}

nav#rellinks li.prev {
    text-align: left;
    padding-left: 10px;
}

nav#rellinks li.next {
    text-align: right;
    padding-right: 10px;
}

.breadcrumbs {
    text-transform: uppercase;
    font-size: 0.8em;
    letter-spacing: 0.02rem;
    padding-bottom: 0.375em;
}

@media screen and (min-width: 875px) {
    .hide-desktop {
        display: none;
    }
}

img {
    max-width: 100%;
}

.cell_output.docutils {
  padding-left: 0 !important;
  margin-top: 0 !important;
  overflow: auto !important;
}

.tag_hide-cell {
  overflow: auto !important;
  display: none !important;
}

div.cell div.cell_input {
    border-radius: 0 !important;
    border-left-color: #E5E5E5 !important;
    border-color: #E5E5E5 !important;
    background-color: #E5E5E5 !important;
}