:root {
  --dark-text-color: #c1c1c1;
  --dark-link-color: #249ee8;
}

html[data-theme='dark'] body {
  color: #bfbfbf;
}

html[data-theme='dark'] .wy-nav-content-wrap {
  background-color: #22272e;
}

html[data-theme='dark'] .wy-body-for-nav {
  background-color: #1e2329;
}

html[data-theme='dark'] .wy-nav-content {
  background-color: #1e2329;
}

html[data-theme='dark'] .section {
  color: var(--dark-text-color);
}

html[data-theme='dark'] .highlight {
  background-color: #22272e;
}

html[data-theme='dark'] .highlight .nn {
  color: var(--dark-text-color);
  font-weight: normal;
}

html[data-theme='dark'] .highlight .nv,
html[data-theme='dark'] .highlight .nb,
html[data-theme='dark'] .highlight .fm,
html[data-theme='dark'] .highlight .nd {
  color: #dcbdfb;
}

html[data-theme='dark'] .highlight .si,
html[data-theme='dark'] .highlight .bp {
  color: unset;
  font-weight: normal;
}

html[data-theme='dark'] .highlight .nc,
html[data-theme='dark'] .highlight .ne {
  color: #f69d50;
}

html[data-theme='dark'] .highlight .ow {
  color: #6cb6ff;
}

html[data-theme='dark'] .highlight .o,
html[data-theme='dark'] .highlight .vm,
html[data-theme='dark'] .highlight .mi,
html[data-theme='dark'] .highlight .mf,
html[data-theme='dark'] .highlight .sa {
  color: unset;
}

html[data-theme='dark'] .highlight .kn,
html[data-theme='dark'] .highlight .k {
  color: #f47067;
}

html[data-theme='dark'] .highlight .kc {
  color: #6cb6ff;
}

html[data-theme='dark'] .highlight .ss,
html[data-theme='dark'] .highlight .s1,
html[data-theme='dark'] .highlight .s,
html[data-theme='dark'] .highlight .se,
html[data-theme='dark'] .highlight .sd,
html[data-theme='dark'] .highlight .s2 {
  color: #96d0ff;
}

html[data-theme='dark'] .highlight .nt {
  color: #ccb350;
}

html[data-theme='dark'] .highlight .nf {
  color: #dcbdfb;
}

html[data-theme='dark'] .highlight .c1 {
  color: #768390;
}

html[data-theme='dark'] .rst-content div[class^='highlight'] {
  border-color: #444c56;
}

html[data-theme='dark'] .wy-nav-content a,
html[data-theme='dark'] .wy-nav-content a:visited {
  color: var(--dark-link-color);
}

html[data-theme='dark'] .btn-neutral {
  background-color: #2d333b !important;
  border-color: #444c56;
  color: #c1c1c1 !important;
}

html[data-theme='dark'] .btn-neutral:hover {
  background-color: #101114 !important;
}

html[data-theme='dark'] .btn-neutral:visited {
  color: #c1c1c1 !important;
}

html[data-theme='dark'] .btn {
  box-shadow: none;
}

html[data-theme='dark'] footer {
  color: #bdbdbd;
}

html[data-theme='dark'] .wy-nav-side {
  background-color: #2d333b;
}

html[data-theme='dark'] .wy-menu-vertical li.current {
  background-color: #3a414a;
}

html[data-theme='dark'] .wy-menu-vertical li.current > a,
html[data-theme='dark'] .wy-menu-vertical li.on a {
  background-color: #1e2329;
  color: var(--dark-text-color);
}

html[data-theme='dark'] .wy-menu-vertical li.toctree-l1.current > a,
html[data-theme='dark'] .wy-menu-vertical li.current a {
  border-color: #0b0c0d;
}

html[data-theme='dark'] .wy-menu-vertical li.current a {
  color: #bbb;
}

html[data-theme='dark'] .wy-menu-vertical li.current a:hover {
  background-color: #222;
}

html[data-theme='dark'] .wy-menu-vertical a:hover,
html[data-theme='dark'] .wy-menu-vertical li.current > a:hover,
html[data-theme='dark'] .wy-menu-vertical li.on a:hover {
  background-color: #1e1e1e;
}

html[data-theme='dark'] .wy-menu-vertical li.toctree-l2.current > a,
html[data-theme='dark']
  .wy-menu-vertical
  li.toctree-l2.current
  li.toctree-l3
  > a {
  background-color: #1e1e1e;
}

html[data-theme='dark'] .wy-side-nav-search {
  background-color: #1e2329;
}

html[data-theme='dark'] .wy-side-nav-search .wy-dropdown > a,
html[data-theme='dark'] .wy-side-nav-search > a {
  color: #ddd;
}

html[data-theme='dark'] .wy-side-nav-search input[type='text'] {
  border-color: #111;
  background-color: #1e2329;
  color: var(--dark-text-color);
}

html[data-theme='dark'] .theme-switcher {
  background-color: #0b0c0d;
  color: var(--dark-text-color);
}

html[data-theme='dark'].writer-html4 .rst-content dl:not(.docutils) > dt,
html[data-theme='dark'].writer-html5
  .rst-content
  dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)
  > dt {
  background-color: #0b0b0b;
  color: #007dce;
  border-color: #282828;
}

html[data-theme='dark'] .rst-content code,
html[data-theme='dark'] .rst-content tt {
  color: #ce6a5f;
}

html[data-theme='dark'].writer-html4
  .rst-content
  dl:not(.docutils)
  dl:not(.field-list)
  > dt,
html[data-theme='dark'].writer-html5
  .rst-content
  dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)
  dl:not(.field-list)
  > dt {
  background-color: #0f0f0f;
  color: #959595;
  border-color: #2b2b2b;
}

html[data-theme='dark'] .rst-content code,
html[data-theme='dark'] .rst-content tt,
html[data-theme='dark'] code {
  background-color: #1e2329;
  border-color: #444c56;
}

html[data-theme='dark'] .rst-content code.xref,
html[data-theme='dark'] .rst-content tt.xref,
html[data-theme='dark'] a .rst-content code,
html[data-theme='dark'] a .rst-content tt {
  color: #cecece;
}

html[data-theme='dark'] .rst-content .hint,
html[data-theme='dark'] .rst-content .important,
html[data-theme='dark'] .rst-content .tip,
html[data-theme='dark'] .rst-content .wy-alert-success.admonition,
html[data-theme='dark'] .rst-content .wy-alert-success.admonition-todo,
html[data-theme='dark'] .rst-content .wy-alert-success.attention,
html[data-theme='dark'] .rst-content .wy-alert-success.caution,
html[data-theme='dark'] .rst-content .wy-alert-success.danger,
html[data-theme='dark'] .rst-content .wy-alert-success.error,
html[data-theme='dark'] .rst-content .wy-alert-success.note,
html[data-theme='dark'] .rst-content .wy-alert-success.seealso,
html[data-theme='dark'] .rst-content .wy-alert-success.warning,
html[data-theme='dark'] .wy-alert.wy-alert-success {
  background-color: #00392e;
}

html[data-theme='dark'] .rst-content .hint .admonition-title,
html[data-theme='dark'] .rst-content .hint .wy-alert-title,
html[data-theme='dark'] .rst-content .important .admonition-title,
html[data-theme='dark'] .rst-content .important .wy-alert-title,
html[data-theme='dark'] .rst-content .tip .admonition-title,
html[data-theme='dark'] .rst-content .tip .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.admonition-todo
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.admonition-todo
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.admonition
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.admonition
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.attention
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.attention
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.caution
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.caution .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-success.danger .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.danger .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-success.error .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.error .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-success.note .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.note .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.seealso
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.seealso .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-success.warning
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-success.warning .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert.wy-alert-success
  .admonition-title,
html[data-theme='dark']
  .wy-alert.wy-alert-success
  .rst-content
  .admonition-title,
html[data-theme='dark'] .wy-alert.wy-alert-success .wy-alert-title {
  background-color: #006a56;
}

html[data-theme='dark'] .rst-content .note,
html[data-theme='dark'] .rst-content .seealso,
html[data-theme='dark'] .rst-content .wy-alert-info.admonition,
html[data-theme='dark'] .rst-content .wy-alert-info.admonition-todo,
html[data-theme='dark'] .rst-content .wy-alert-info.attention,
html[data-theme='dark'] .rst-content .wy-alert-info.caution,
html[data-theme='dark'] .rst-content .wy-alert-info.danger,
html[data-theme='dark'] .rst-content .wy-alert-info.error,
html[data-theme='dark'] .rst-content .wy-alert-info.hint,
html[data-theme='dark'] .rst-content .wy-alert-info.important,
html[data-theme='dark'] .rst-content .wy-alert-info.tip,
html[data-theme='dark'] .rst-content .wy-alert-info.warning,
html[data-theme='dark'] .wy-alert.wy-alert-info {
  background-color: #002c4d;
}

html[data-theme='dark'] .rst-content .note .admonition-title,
html[data-theme='dark'] .rst-content .note .wy-alert-title,
html[data-theme='dark'] .rst-content .seealso .admonition-title,
html[data-theme='dark'] .rst-content .seealso .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-info.admonition-todo
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-info.admonition-todo
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-info.admonition
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.admonition .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.attention .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.attention .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.caution .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.caution .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.danger .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.danger .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.error .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.error .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.hint .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.hint .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.important .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.important .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.tip .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.tip .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-info.warning .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-info.warning .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert.wy-alert-info .admonition-title,
html[data-theme='dark'] .wy-alert.wy-alert-info .rst-content .admonition-title,
html[data-theme='dark'] .wy-alert.wy-alert-info .wy-alert-title {
  background-color: #004a7b;
}

html[data-theme='dark'] .rst-content .admonition-todo,
html[data-theme='dark'] .rst-content .attention,
html[data-theme='dark'] .rst-content .caution,
html[data-theme='dark'] .rst-content .warning,
html[data-theme='dark'] .rst-content .wy-alert-warning.admonition,
html[data-theme='dark'] .rst-content .wy-alert-warning.danger,
html[data-theme='dark'] .rst-content .wy-alert-warning.error,
html[data-theme='dark'] .rst-content .wy-alert-warning.hint,
html[data-theme='dark'] .rst-content .wy-alert-warning.important,
html[data-theme='dark'] .rst-content .wy-alert-warning.note,
html[data-theme='dark'] .rst-content .wy-alert-warning.seealso,
html[data-theme='dark'] .rst-content .wy-alert-warning.tip,
html[data-theme='dark'] .wy-alert.wy-alert-warning {
  background-color: #533500;
}

html[data-theme='dark'] .rst-content .admonition-todo .admonition-title,
html[data-theme='dark'] .rst-content .admonition-todo .wy-alert-title,
html[data-theme='dark'] .rst-content .attention .admonition-title,
html[data-theme='dark'] .rst-content .attention .wy-alert-title,
html[data-theme='dark'] .rst-content .caution .admonition-title,
html[data-theme='dark'] .rst-content .caution .wy-alert-title,
html[data-theme='dark'] .rst-content .warning .admonition-title,
html[data-theme='dark'] .rst-content .warning .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-warning.admonition
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-warning.admonition
  .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.danger .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.danger .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.error .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.error .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.hint .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.hint .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-warning.important
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-warning.important
  .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.note .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.note .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-warning.seealso
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.seealso .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.tip .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-warning.tip .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert.wy-alert-warning
  .admonition-title,
html[data-theme='dark']
  .wy-alert.wy-alert-warning
  .rst-content
  .admonition-title,
html[data-theme='dark'] .wy-alert.wy-alert-warning .wy-alert-title {
  background-color: #803b00;
}

html[data-theme='dark'] .rst-content .danger,
html[data-theme='dark'] .rst-content .error,
html[data-theme='dark'] .rst-content .wy-alert-danger.admonition,
html[data-theme='dark'] .rst-content .wy-alert-danger.admonition-todo,
html[data-theme='dark'] .rst-content .wy-alert-danger.attention,
html[data-theme='dark'] .rst-content .wy-alert-danger.caution,
html[data-theme='dark'] .rst-content .wy-alert-danger.hint,
html[data-theme='dark'] .rst-content .wy-alert-danger.important,
html[data-theme='dark'] .rst-content .wy-alert-danger.note,
html[data-theme='dark'] .rst-content .wy-alert-danger.seealso,
html[data-theme='dark'] .rst-content .wy-alert-danger.tip,
html[data-theme='dark'] .rst-content .wy-alert-danger.warning,
html[data-theme='dark'] .wy-alert.wy-alert-danger {
  background-color: #82231a;
}

html[data-theme='dark'] .rst-content .danger .admonition-title,
html[data-theme='dark'] .rst-content .danger .wy-alert-title,
html[data-theme='dark'] .rst-content .error .admonition-title,
html[data-theme='dark'] .rst-content .error .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.admonition-todo
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.admonition-todo
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.admonition
  .admonition-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.admonition
  .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.attention
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.attention .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.caution .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.caution .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.hint .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.hint .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert-danger.important
  .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.important .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.note .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.note .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.seealso .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.seealso .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.tip .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.tip .wy-alert-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.warning .admonition-title,
html[data-theme='dark'] .rst-content .wy-alert-danger.warning .wy-alert-title,
html[data-theme='dark']
  .rst-content
  .wy-alert.wy-alert-danger
  .admonition-title,
html[data-theme='dark']
  .wy-alert.wy-alert-danger
  .rst-content
  .admonition-title,
html[data-theme='dark'] .wy-alert.wy-alert-danger .wy-alert-title {
  background-color: #b9372b;
}

html[data-theme='dark'] .wy-nav-top {
  background-color: #7289da;
}

html[data-theme='dark'] .rst-content table.docutils thead,
html[data-theme='dark'] .rst-content table.field-list thead,
html[data-theme='dark'] .wy-table thead {
  color: var(--dark-text-color);
}

html[data-theme='dark']
  .rst-content
  table.docutils:not(.field-list)
  tr:nth-child(2n-1)
  td,
html[data-theme='dark'] .wy-table-backed,
html[data-theme='dark'] html[data-theme='dark'] .wy-table-odd td,
html[data-theme='dark'] .wy-table-striped tr:nth-child(2n-1) td {
  background-color: #2d333b;
}

html[data-theme='dark'] .rst-content table.docutils td,
html[data-theme='dark'] .wy-table-bordered-all td,
html[data-theme='dark'].writer-html5 .rst-content table.docutils th,
html[data-theme='dark'] .rst-content table.docutils,
html[data-theme='dark'] .wy-table-bordered-all {
  border-color: #444c56;
}

html[data-theme='dark'] .rst-content table.docutils caption,
html[data-theme='dark'] .rst-content table.field-list caption,
html[data-theme='dark'] .wy-table caption {
  color: var(--dark-text-color);
}

html[data-theme='dark'] .wy-menu-vertical li.toctree-l3.current > a,
html[data-theme='dark']
  .wy-menu-vertical
  li.toctree-l3.current
  li.toctree-l4
  > a {
  background-color: #18181a;
}
