/* Versions */
.rst-versions.shift-up { overflow-y: auto; }
dd.current-version { font-weight: 700; }

/* Monospace font */
/* License: fonts/RobotoMono-LICENSE.txt */
/* See https://github.com/readthedocs/sphinx_rtd_theme/issues/1435 */
@font-face {
  font-family: 'roboto-mono';
  src: url('fonts/RobotoMono-Regular.woff2') format('woff2'),
       url('fonts/RobotoMono-Regular.woff') format('woff'),
       url('fonts/RobotoMono-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'roboto-mono';
  src: url('fonts/RobotoMono-Italic.woff2') format('woff2'),
       url('fonts/RobotoMono-Italic.woff') format('woff'),
       url('fonts/RobotoMono-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: 'roboto-mono';
  src: url('fonts/RobotoMono-Bold.woff2') format('woff2'),
       url('fonts/RobotoMono-Bold.woff') format('woff'),
       url('fonts/RobotoMono-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'roboto-mono';
  src: url('fonts/RobotoMono-BoldItalic.woff2') format('woff2'),
       url('fonts/RobotoMono-BoldItalic.woff') format('woff'),
       url('fonts/RobotoMono-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
}

:root { --font-monospace: 'roboto-mono'; }

.rst-content code,
.rst-content tt,
.rst-content kbd,
.rst-content pre,
.rst-content pre.literal-block,
.rst-content div[class^=highlight] pre,
.rst-content samp,
.rst-content .linenodiv pre,
.rst-content footer span.commit tt,
footer span.commit .rst-content tt,
footer span.commit code,
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,
code {
  font-family: var(--font-monospace);
}

/* Fix version styling */
/* (see https://github.com/readthedocs/sphinx_rtd_theme/issues/1624) */
.wy-side-nav-search div.version {
  margin-top: -.4045em;
  margin-bottom: .809em;
  font-weight: 400;
  color: hsla(0, 0%, 100%, .3);
}

/* Wrapping long inline code snippets and class/function definitions */
/* See https://github.com/readthedocs/sphinx_rtd_theme/issues/1436 */
.rst-content code.literal, .rst-content tt.literal, span#footer-version {
  overflow-wrap: break-word;
}

html.writer-html5 .rst-content
  dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)
  > dt.sig { display: block; overflow-wrap: break-word; }

/* Use white background and foreground */
/* See https://github.com/readthedocs/sphinx_rtd_theme/issues/1437 */
.wy-dropdown-menu, .wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu,
.wy-menu-vertical li.on a, .wy-menu-vertical li.on a:hover, .wy-menu-vertical li.current > a,
.wy-body-for-nav, .wy-nav-content, .wy-nav-content-wrap {
  background: white;
}

.wy-side-nav-search, .wy-side-nav-search > a, .wy-side-nav-search .wy-dropdown > a,
.rst-versions, .rst-versions .rst-other-versions dd a,
.rst-versions .rst-current-version .fa,
.rst-versions .rst-current-version .icon {
  color: white;
}

/* Styles for jupyter-sphinx */
/* (see packages/theme-light-extension/style/variables.css) */
:root {
  --md-grey-100: #f5f5f5;
  --md-grey-400: #bdbdbd;
  --md-blue-50: #e3f2fd;
  --md-blue-500: #2196f3;
  --jp-layout-color3: var(--md-grey-400);
}

.fa.fa-tag { font-family: inherit; }
section div.jupyter_container:last-of-type { margin-bottom: 24px; }
div.jupyter_container { box-shadow: none; border: none; background-color: transparent; }
div.jupyter_container div.code_cell {
  border: 1px solid #e0e0e0;
  border-left: 2px solid var(--md-blue-500);
  border-radius: 0px;
  background: #f5f5f5;
}
div.jupyter_container div.cell_input { padding-left: 3px; padding-right: 5px; } /* - left border */
div.jupyter_container div.cell_output {
  padding-left: 5px;
  padding-right: 5px;
  margin-bottom: 18px;
  overflow: auto;
}

/* Tables */
div.jupyter_container div.cell_output div.text_html { padding: 7px; }
div.jupyter_container div.cell_output table.dataframe {
  margin-top: 5px;
  margin-bottom: 10px;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 14px;
}
div.jupyter_container div.cell_output table.dataframe thead {
  border-bottom: 0.75px solid var(--jp-layout-color3);
  vertical-align: bottom;
}
div.jupyter_container div.cell_output table.dataframe tr,
div.jupyter_container div.cell_output table.dataframe th,
div.jupyter_container div.cell_output table.dataframe td {
  border: none;
  padding: 4px 8px;
  text-align: right;
  vertical-align: middle;
  line-height: normal;
  white-space: normal;
  max-width: none;
}
div.jupyter_container div.cell_output table.dataframe tbody tr:nth-child(even) {
  background: var(--md-grey-100);
}
div.jupyter_container div.cell_output table.dataframe tbody tr:hover {
  background: var(--md-blue-50);
}

/* Images */
div.jupyter_container div.cell_output img {
  width: 672px;
  max-width: unset;
  padding: 7px 7px 0px 7px;
  margin-top: 5px;
}

/* Improved, more fluid responsive design that maximizes content space */
/* Extend tablet breakpoint from 768px to 1100px */
/* Navigation now only changes below 480px */
/* See https://github.com/readthedocs/sphinx_rtd_theme/issues/1438 */
@media screen and (max-width: 1099px) {
  .wy-tray-container { bottom: auto; top: 0; width: 100%; }
  .wy-tray-container li { width: 100%; }
  .tablet-hide { display: none; }
  .wy-body-for-nav { background: white; }
  .wy-nav-top { display: block; min-height: 63px; }
  .wy-nav-top i { padding-top: 8px; }
  .wy-nav-side { left: -300px; }
  .wy-nav-side.shift { width: 300px; left: 0; }
  .wy-menu.wy-menu-vertical, .wy-side-nav-search, .wy-side-scroll { width: auto; }
  .wy-nav-content-wrap { margin-left: 0; }
  .wy-nav-content-wrap .wy-nav-content { padding: 1.618em 3.236em; }
  .wy-nav-content-wrap.shift {
    position: fixed;
    min-width: unset;
    left: 300px;
    top: 0;
    height: 100%;
    overflow: hidden;
  }
  .wy-nav-content-wrap.shift .wy-nav-top a { display: none; }
  .rst-versions { width: 300px; display: none; }
  .rst-versions.shift { display: block; }

  /* Make navigation sticky */
  .wy-nav-top { position: sticky; top: 0; z-index: 1000; }
}

/* Use compact padding and parameters */
@media screen and (max-width: 790px) {
  .wy-nav-content-wrap .wy-nav-content { padding: 1.618em; }

  html.writer-html5 .rst-content dl.field-list { display: block; }
  html.writer-html5 .rst-content dl.field-list > dt { margin-bottom: 8px; }
  html.writer-html5 .rst-content dl.field-list > dd { margin-bottom: 12px; }
  html.writer-html5 .rst-content dl.attribute dl.field-list { display: grid; }
  html.writer-html5 .rst-content dl.attribute dl.field-list > dt { margin-bottom: 0px; }
  html.writer-html5 .rst-content dl.attribute dl.field-list > dd { margin-bottom: 0px; }
}

/* Use dynamic-width navigation */
@media screen and (max-width: 480px) {
  .wy-nav-side.shift { width: 85%; }
  .rst-versions { width: 85%; }
  .wy-nav-content-wrap.shift { min-width: 100%; left: 85%; }
}

/* Use white on gray background */
@media screen and (min-width: 1100px) {
  .wy-nav-content-wrap { background: rgba(0, 0, 0, .055); }
  .wy-nav-content { margin: 0; background: white; }
}
