@charset "utf-8";

.ir {
	display: block;
	border: 0;
	text-indent: -999em;
	overflow: hidden;
	background-color: transparent;
	background-repeat: no-repeat;
	text-align: left;
	direction: ltr;
	*line-height: 0
}
.ir br {
	display: none
}
.hidden {
	display: none !important;
	visibility: hidden
}

div[class^='highlight'] td.code {
	width: 100%
}

.rst-conten a[target=_blank]::after {
	font-family: 'FontAwesome';
	content: '\f08e';
	margin-left: .3em;
	font-size: 13px;
}

div[class^='highlight'] pre {
	white-space: pre;
	margin: 0;
	padding: 1.5rem;
	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-size: var(--quiet-font-size);
	line-height: 1.5;
	display: block;
	overflow: auto;
	color: #404040;
	border: 1px solid var(--color-dark-grey);
}

.wy-body-for-nav {
	background: left repeat-y #fcfcfc;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxOERBMTRGRDBFMUUxMUUzODUwMkJCOThDMEVFNURFMCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxOERBMTRGRTBFMUUxMUUzODUwMkJCOThDMEVFNURFMCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjE4REExNEZCMEUxRTExRTM4NTAyQkI5OEMwRUU1REUwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjE4REExNEZDMEUxRTExRTM4NTAyQkI5OEMwRUU1REUwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+EwrlwAAAAA5JREFUeNpiMDU0BAgwAAE2AJgB9BnaAAAAAElFTkSuQmCC);
	background-size: 300px 1px
}

.wy-nav-side {
	width: 25%;
	flex: 0 0 25%;
}

.wy-nav-content-wrap {
	width: calc(75% - 7.5rem);
	margin: 0 3rem 0 4.5rem;
}

@media (max-width: 960px) {
	.wy-nav-side {
		display: none;
	}

	.wy-nav-content-wrap {
		width: 100%;
		max-width: 50rem;
		margin: 0;
	}
}

.wy-nav-top {
	display: none;
}

.wy-body-mask {
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.2);
	display: none;
	z-index: 499
}
.wy-body-mask.on {
	display: block
}

.version-warning {
	padding: 1rem;
	background: #ffe8e8;
	width: var(--base-page-size);
	margin-left: var(--block-margin);
	margin-right: var(--block-margin);
	margin-top: 1rem;
}

.wy-grid-for-nav {
	width: var(--base-page-size);
	margin-left: var(--block-margin);
	margin-right: var(--block-margin);
	padding-top: calc(var(--block-vertical-padding) / 2 + 1rem);
	display: flex;
}

.version-warning + .wy-grid-for-nav {
	padding-top: 1rem;
}

.rst-content img {
	max-width: 100%;
	height: auto !important;
	display: block;
}
.rst-content div.figure {
	margin-bottom: 24px
}
.rst-content div.figure.align-center {
	text-align: center
}
.rst-content .section>img,
.rst-content .section>a>img,
.rst-content section>img,
.rst-content section>a>img {
	margin-bottom: 24px
}
.rst-content blockquote {
	margin: 0;
}

.rst-content .note .last,
.rst-content .attention .last,
.rst-content .caution .last,
.rst-content .danger .last,
.rst-content .error .last,
.rst-content .hint .last,
.rst-content .important .last,
.rst-content .tip .last,
.rst-content .warning .last,
.rst-content .seealso .last,
.rst-content .admonition-todo .last {
	margin-bottom: 0
}
.rst-content .admonition-title:before {
	margin-right: 4px
}
.rst-content .admonition table {
	border-color: rgba(0, 0, 0, 0.1)
}
.rst-content .admonition table td,
.rst-content .admonition table th {
	background: transparent !important;
	border-color: rgba(0, 0, 0, 0.1) !important
}

.rst-content .toc-backref {
	color: #404040
}
.rst-content .align-right {
	float: right;
	margin: 0px 0px 24px 24px
}
.rst-content .align-left {
	float: left;
	margin: 0px 24px 24px 0px
}


.rst-content figure.align-center,
.rst-content .figure.align-center {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.rst-content figure {
	margin: calc(1.5 * var(--text-margin));
}

.rst-content .footnote-reference,
.rst-content .citation-reference {
	vertical-align: super;
	font-size: 90%
}
.rst-content table.docutils.citation,
.rst-content table.docutils.footnote {
	background: none;
	border: none;
	color: #999
}
.rst-content table.docutils.citation td,
.rst-content table.docutils.citation tr,
.rst-content table.docutils.footnote td,
.rst-content table.docutils.footnote tr {
	border: none;
	background-color: transparent !important;
	white-space: normal
}
.rst-content table.docutils.citation td.label,
.rst-content table.docutils.footnote td.label {
	padding-left: 0;
	padding-right: 0;
	vertical-align: top
}
.rst-content table.field-list {
	border: none
}
.rst-content table.field-list td {
	border: none;
}
.rst-content table.field-list td>strong {
	display: inline-block;
}
.rst-content table.field-list .field-name {
	padding-right: 10px;
	text-align: left;
	white-space: nowrap
}
.rst-content table.field-list .field-body {
	text-align: left;
	padding-left: 0
}
.rst-content tt big,
.rst-content tt em,
.rst-content tt big,
.rst-content code big,
.rst-content tt em,
.rst-content code em {
	font-size: 100% !important;
	line-height: normal
}
.rst-content tt .xref,
a .rst-content tt,
.rst-content tt .xref,
.rst-content code .xref,
a .rst-content tt,
a .rst-content code {
	font-weight: bold
}

.rst-content p.rubric {
	margin-bottom: 12px;
	font-weight: bold
}
.rst-content tt.download,
.rst-content code.download {
	background: inherit;
	padding: inherit;
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	border: inherit;
	white-space: inherit
}
.rst-content tt.download span:first-child:before,
.rst-content code.download span:first-child:before {
	margin-right: 4px
}

.math {
	text-align: center
}


.rst-content dl.method dt tt.descclassname, .rst-content dl.attribute dt tt.descclassname {
	font-weight: normal;
}



/*
.wy-side-nav-search {
	background-color: #BF0F1E !important;
}

.wy-side-nav-search input[type=text] {
	border-color: #BF0F1E !important;
}

.wy-menu-vertical a:active {
	background-color: #BF0F1E !important;
}
*/


.aligned-middle, .row.aligned-middle > * { vertical-align: middle; }
.aligned-baseline, .row.aligned-baseline > * { vertical-align: baseline; }



.rst-content .figure img {
	display: inline-block;
}

.rst-content .section .figure .wrapped-figure,
.rst-content section .figure .wrapped-figure {
	float: left;
	margin: 0 20px 0 20px;
}

.deprecated {
	background: #ffe8e8;
	margin: 6px -12px 12px -12px;
}

.deprecated p {
	background: #ffe8e8;
	padding: 6px 12px;
}

.deprecated .versionmodified {
	padding: 6px 12px;
	margin: -6px -12px 10px -12px;
	line-height: 1;
	background: #f23041;
}


/* Global parameters */

.rst-content {
	--text-line-height: 1.7;
}

.float-left, .pull-left {
	float: left
}
.float-right, .pull-right {
	float: right
}

figcaption p {
	margin: .5rem;
}

.caption-text {
	font-style: italic;
	font-size: var(--quiet-font-size);
}

.rst-content .topic {
	margin: calc(1.5 * var(--text-margin)) 0;
}

.rst-content .topic-title {
	font-weight: bold;
	margin-bottom: 0;

}

.rst-content .topic-title + p {
	margin-top: 0;
}


/* Others */

.highlight {
	margin: calc(1.5 * var(--text-margin)) 0;
}

.rst-content hr.docutils {
	background-color: var(--color-grey);
	height: .8rem;
	border: none;
	margin: calc(1.5 * var(--text-margin)) 0;
}

.rst-content .headerlink {
	display: none;
	font-size: min(1em, 1rem);
	font-weight: normal;
}

.rst-content :hover > .headerlink {
	display: inline-block;
}

.rst-content .highlighted {
	background: #F1C40F;
	display: inline-block;
	font-weight: bold;
	padding: 0 .5rem;
}

/* Bullets and lists */

.rst-content ul
.rst-content ol,
.rst-content li {
	font-family: var(--text-font-family);
}

.rst-content li {
	margin: calc(var(--text-margin) / 2) 0;
}

.rst-content ul, .rst-content ol {
	margin: var(--text-margin) 0 var(--text-margin) 2rem;
}

.rst-content ol.loweralpha,
.rst-content ol.loweralpha li {
	list-style: lower-alpha
}

.rst-content ol.upperalpha,
.rst-content ol.upperalpha li {
	list-style: upper-alpha
}

.rst-content ul li p:last-child,
.rst-content ol li p:last-child {
	margin-bottom: calc(var(--text-margin) / 2);
}

.rst-content ul li p:first-child,
.rst-content ol li p:first-child {
	margin-top: calc(var(--text-margin) / 2);
}

/* Tables */

.rst-content td {
	vertical-align: top;
}

.rst-content table.docutils,
.rst-content table.field-list {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	margin-bottom: calc(1.5 * var(--text-margin));
	margin-top: calc(1.5 * var(--text-margin));
}

.rst-content table.docutils td,
.rst-content table.field-list td,
.rst-content table.docutils th,
.rst-content table.field-list th {
	font-size: 90%;
	margin: 0;
	overflow: visible;
	padding: .5rem 1rem;
}

.rst-content table.docutils td p,
.rst-content table.field-list td p,
.rst-content table.docutils th p,
.rst-content table.field-list th p {
	font-size: 100%;
}

.rst-content table.docutils td p,
.rst-content table.field-list td p,
.rst-content table.docutils th p,
.rst-content table.field-list th p {
	margin: 0;
}

.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td {
	background-color: var(--color-very-light-blue);
}

.rst-content table.docutils:not(.field-list) td,
.rst-content table.docutils:not(.field-list) th {
	border: 1px solid var(--color-light-blue)
}



/* Summary / auto-index */

table.autoindex.docutils caption {
	padding: 0.5em;
	font-weight: bold;
	display: block;
	color: var(--vibrant-color);
	text-align: left;
}

.rst-content table.autoindex tr:first-child td {
	border-top: 3px solid var(--vibrant-accent-color);
}

table.autoindex.docutils caption .caption-text {
	font-weight: bold;
	font-style: normal;
}

table.autoindex.docutils td {
	vertical-align: top;
}

table.autoindex.docutils {
	width: 100%;
	border: none;
}

table.autoindex.docutils caption a.headerlink {
	display: none;
}

table.autoindex a.reference code {
	color: var(--base-color);
	font-weight: bold;
}

/* Search box and search results */

.wy-side-nav-search {
	margin-bottom: 1em;
}

.wy-side-nav-search input[type=text] {
	width: 100%;
	padding: .8em 1.6em;
	border: 1px solid;
	border-radius: 0.3em;
	color: var(--base-color);
	background-image: url('search-logo.svg');
	background-size: auto calc(100% - 1.2em);
	background-repeat: no-repeat;
	background-position: 0.8em center;
	padding-left: 2.8em;
}

.wy-side-nav-search input[type=text]:focus,
.wy-side-nav-search input[type=text]:focus-visible {
	outline: none;
}

.wy-side-nav-search .icon-home {
	display: none;
}

#search-results p.search-summary:empty,
#search-results p.search-summary:-moz-only-whitespace {
	display: none;
}

#search-results {
	margin-top: 0;
}

#search-results ul.search {
	margin: calc(1.5 * var(--text-margin)) 0;
	padding: 0;
}

#search-results h2 {
	font-size: calc(var(--title-font-size) * 1.4);
	font-weight: 300;
	border: none;
	margin: 0;
	padding: 0;
}

#search-results .search li {
	margin-bottom: var(--text-margin);
	border-bottom: solid 1px var(--color-dark-grey);
	padding-bottom: var(--text-margin);
	list-style: none;
}

#search-results .search li a {
	display: inline-block;
}

#search-results .context {
	font-size: var(--quiet-font-size);
}

/* Buttons */

.btn.btn-default {
	padding: 0.8em 1.4em;
	display: inline-block;
	margin-top: var(--text-margin);
	font-family: var(--title-font-family);
	font-weight: 500;
	color: var(--button-text-color) !important;
	border-radius: 1.55em;
	border: var(--button-border-width) solid;
	border-color: var(--button-border-color);
	background-color: var(--button-background-color) !important;
	transition: var(--button-transition);
	font-size: var(--quiet-font-size);
	border-radius: 1.55em;
}

/* Breadcrumbs and navigation */

.rst-content div[role="navigation"] hr {
	display: none;
}

ul.wy-breadcrumbs {
	margin: 0 0 calc(2 * var(--text-margin)) 0;
}

.wy-breadcrumbs li {
	display: inline-block;
	line-height: var(--text-line-height);
	margin: 0;
}

.wy-breadcrumbs li.wy-breadcrumbs-aside {
	float: right;
}

.wy-breadcrumbs li a {
	display: inline-block;
}

.wy-breadcrumbs li a:first-child {
	padding-left: 0;
}

.rst-footer-buttons {
	margin-top: calc(4 * var(--text-margin));
}

.rst-footer-buttons .btn {
	color: var(--base-color);
	font-weight: bold;
	text-decoration: none;
}

.rst-footer-buttons .btn:not(.float-right)::before {
	font-family: 'FontAwesome';
	content: "\f060";
	margin-right: .5em;
}

.rst-footer-buttons .btn.float-right::after {
	font-family: 'FontAwesome';
	content: "\f061";
	margin-left: .5em;
}

/* Notes and warnings */

.versionchanged {
	background: #edeff8;
}

.versionmodified {
	color: #fff;
	font-weight: bold;
	display: block;
	color: #fff;
	background: #afc6e9;
	margin: -12px;
	padding: 6px 12px;
	margin-bottom: 12px;
}


.rst-content .danger,
.rst-content .error,
.rst-content .attention,
.rst-content .caution,
.rst-content .warning,
.rst-content .note,
.rst-content .hint,
.rst-content .important,
.rst-content .tip,
.rst-content .seealso,
.rst-content .admonition-todo,
.rst-content .versionchanged {
	padding: var(--text-margin);
	margin: calc(1.5 * var(--text-margin)) 0;
}

.rst-content .admonition-title,
.rst-content .versionmodified,
.rst-content .changed {
	font-weight: bold;
	display: block;
	margin: calc( -1 * var(--text-margin));
	padding: calc( var(--text-margin) / 3) var(--text-margin);
	margin-bottom: var(--text-margin);
}

.rst-content .note,
.rst-content .hint,
.rst-content .important,
.rst-content .tip,
.rst-content .seealso,
.rst-content .admonition-todo {
	background: var(--color-very-light-blue);
}

.rst-content .note .admonition-title,
.rst-content .hint .admonition-title,
.rst-content .important .admonition-title,
.rst-content .tip .admonition-title,
.rst-content .seealso .admonition-title,
.rst-content .admonition-todo .admonition-title {
	background: var(--color-blue--90);
	color: var(--color-white);
}

.rst-content .danger,
.rst-content .error,
.rst-content .attention,
.rst-content .caution,
.rst-content .warning {
	background: var(--color-light-red);
}

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

.rst-content .versionchanged p:first-child {
	margin-top: 0;
}

.rst-content .note p:last-child,
.rst-content .attention p:last-child,
.rst-content .caution p:last-child,
.rst-content .danger p:last-child,
.rst-content .error p:last-child,
.rst-content .hint p:last-child,
.rst-content .important p:last-child,
.rst-content .tip p:last-child,
.rst-content .warning p:last-child,
.rst-content .seealso p:last-child,
.rst-content .admonition-todo p:last-child,
.rst-content .versionchanged p:last-child {
	margin-bottom: 0
}


/* Toc-tree */

.toctree-wrapper {
	margin: 2rem 0;
}

.toctree-wrapper ul li {
	margin: calc(var(--text-margin) /2) 0;
}

/* Examples */

div.thumbnails {
	text-align: center;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: stretch;
	justify-content: center;
	gap: 1rem;
	margin: 2rem 0;
	--text-size: var(--quiet-font-size);
}

div.example {
	width: max(12rem, 30%);
	flex: 0 0 30%;
	border: 1px solid var(--color-dark-grey);
}

div.thumbnails figure,
div.thumbnails .figure {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: stretch;
	margin: 0;
}

div.thumbnails figcaption,
div.thumbnails p.caption {
	border-top: 1px solid var(--color-dark-grey);
	padding: .5em;
	--text-line-height: 1;
	margin: 0;
}

div.thumbnails .caption-text {
	font-style: normal;
}

div.thumbnails figcaption p {
	padding: 0;
	margin: 0;	
}

div.thumbnails a.image-reference {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 1rem;
}

div.thumbnails :hover > .headerlink {
	display: none;
}

div.thumbnails div.hide-example {
	display: none;
}

div.thumbnails .difficulty {
	display: inline-block;
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3wUNDiQM5/bTcAAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAEqSURBVDjLrdO/SlxBFAbw366rnSn0IqLWTrAQ0olWFpqUipWdYpFuukCw00ashOsD+AJqoY21jS+wEG7hC4QJtkHRm2YWzLK5ivHAYc4fvo85853hH5ZiaKcYZrxg7YbeBxz9D8Es1lMMY28l2MYQ9psIOimGNuqirOq+Xm/++b63afXioqzqVophDqv4lb3GNPYwhZ/YwVPGTWIE1/jRwR0+4ise8IhOdpjAaSbu1Y9xVpRV3crXGsInXGG8YeRbbKBblNUjtAbof4KtAeDDoqy+v0aFywG1e9y8Vsb4LO7mcwTLKYbhRoIUwzQWc/oNC9jN+Uom+nsP+vJN/MZmUVZnuXaQYujiAp9x3jTCElafgXsLc4k1fNHw+0ZTDJNNa5timMmSv5/9AeFPS3+kaMczAAAAAElFTkSuQmCC) repeat-x;
	height: 16px;
	vertical-align: text-bottom;
}

div.thumbnails .difficulty[data-value='1'] { width: 16px; }
div.thumbnails .difficulty[data-value='2'] { width: 32px; }
div.thumbnails .difficulty[data-value='3'] { width: 48px; }
div.thumbnails .difficulty[data-value='4'] { width: 64px; }

.epigraph {
	background-color: var(--color-very-light-blue);
	padding: 1em 1.3em 0.3em 1.3em;
	margin-bottom: 2.5em;
	border: 1px solid var(--color-light-blue);
}

.epigraph h2 {
	border: none;
	font-size: 1.5rem;
	margin-bottom: 0.3em;
}

dl.cmdline div.line {
	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-size: var(--quiet-font-size);
}

dl.cmdline div.line:before {
	font-weight: bold;
	font-family: monospace;
	margin-left: -1em;
}

dl.cmdline .line-block {
	margin: var(--text-margin) 0;
}

dl.cmdline.lsp div.line:before { content: "$ "; }
dl.cmdline.linux div.line:before { content: "$ "; }
dl.cmdline.windows div.line:before { content: "> "; }
.rst-content .section td.field-body ul { margin-bottom: 0; }
.rst-content section td.field-body ul { margin-bottom: 0; }

.rst-content .section .figure .wrapped-figure,
.rst-content section .figure .wrapped-figure,
.rst-content .section figure .wrapped-figure,
.rst-content section figure .wrapped-figure {
	float: left;
	margin: 0 1em .5em 1em;
	width: 33%;
}

/* Button examples */

.rst-content .exs-btns ul {
	display: block;
	margin: 0;
	padding: 0;
	text-align: center;
}

.rst-content .exs-btns ul li {
	display: inline-block;
	margin: 0;
}

.exs-btns li a {
	display: inline-block;
	text-decoration: none;
	color: var(--base-color);
	padding: 0.5rem 0.8rem;
	font-variant: all-small-caps;
	font-weight: bold;
	font-family: var(--title-font-family);
	font-size: var(--quiet-font-size);
	margin: 0.25rem;
	border: 2px solid var(--base-color);
	border-radius: 0.3rem;
	letter-spacing: .5px;
}

.exs-btns li a:hover {
	background-color: var(--color-light-blue);
	color: inherit;
}

.exs-btns li a:active, .exs-btns li a:visited {
	color: inherit;
}

.exs-btns li a.btn-activated {
	color: var(--color-white);
	background-color: var(--base-color);
}

/* Titles */
.rst-content h2:first-child,
.rst-content h3:first-child,
.rst-content h4:first-child,
.rst-content h5:first-child,
.rst-content h6:first-child,
.rst-content :empty + h2,
.rst-content :empty + h3,
.rst-content :empty + h4,
.rst-content :empty + h5,
.rst-content :empty + h6 {
	padding-top: .8em;
}


/* Vertical menu */

.wy-menu-vertical a, .wy-menu-vertical a:visited {
	color: inherit;
	line-height: 1em;
	font-size: var(--quiet-font-size);
	padding: .8em 1.6em;
	display: block;
}

.wy-menu-vertical a:active {
	cursor: pointer;
}

.wy-menu-vertical li.current {
	background: var(--color-very-light-blue);
}

.wy-menu-vertical li.current ul {
	display: block;
}

.wy-menu-vertical li.current a {
	color: var(--base-color);
}

.wy-menu-vertical li ul {
	display: none;
}

.wy-menu-vertical ul {
	margin-bottom: 0;
	list-style-type: none;
}

.wy-menu.wy-menu-vertical ul li {
	color: var(--base-color);
}

.wy-menu-vertical li.toctree-l1,
.wy-menu-vertical li:not([class]) {
	border-bottom: 1px solid var(--color-dark-white);
}

.wy-menu-vertical li.toctree-l1.current > a {
	font-weight: bold;
	background: var(--color-blue--90);
	color: white;
}

.wy-menu-vertical li.toctree-l1:not(.current) > a:hover,
.wy-menu-vertical li:not([class]) > a:hover {
	background: var(--color-blue--90);
	color: white;
}

.wy-menu-vertical li.toctree-l2.current > a {
	background: var(--color-light-blue);
	color: var(--base-color);
	border-bottom: 1px solid;
	font-weight: 500;
}

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

.wy-menu-vertical li.toctree-l2:not(.current) > a:hover {
	background: var(--color-light-blue);
	color: var(--base-color);
}

.wy-menu-vertical li.toctree-l2.current:last-child > a {
	border-bottom: none;
}

.wy-menu-vertical li.toctree-l2.current {
	border-bottom: 1px solid;
	border-top: 1px solid;
}

.wy-menu-vertical li.toctree-l1.current li.toctree-l2 > ul,
.wy-menu-vertical li.toctree-l2.current li.toctree-l3 > ul {
	display: none;
}
.wy-menu-vertical li.toctree-l1.current li.toctree-l2.current > ul,
.wy-menu-vertical li.toctree-l2.current li.toctree-l3.current > ul {
	display: block;
}

.wy-menu-vertical li.toctree-l3 > a {
	display: block;
	padding-left: 3em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wy-menu-vertical li.toctree-l3.current > a {
	background: var(--color-white);
}

.wy-menu-vertical li.toctree-l3:not(.current) > a:hover {
	background: var(--color-white);
}

.wy-menu-vertical .toctree-l4:not(.current) > a[href^="#"] {
	display: none !important;
}

/* Definition lists */

.rst-content dl.field-list.simple {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: baseline;
}

.rst-content dl.field-list.simple dt {
	color: var(--base-color);
	background: none;
	border: none;
	display: block;
	margin: 0 2rem 0 0;
	padding: 0;
	min-width: 6rem;
}

.rst-content dl.field-list.simple dt::after {
	content: ":";
}

.rst-content dl.field-list.simple dd {
	display: block;
	margin: 5px 0;
	padding: 0;
	height: auto;
}

.rst-content dl.field-list.simple dd p {
	margin: 0;
}

.rst-content dd > ul, .rst-content dd > ol {
	margin: 1em;
}

.rst-content dl {
	margin-bottom: 2rem;
}
.rst-content dl dt {
	font-weight: bold
}

.rst-content dl dd {
	margin: 0 0 1rem 2rem;
}
.rst-content dl:not(.docutils):not(.cmdline) {
	margin-top: calc(1.5 * var(--text-margin));
	margin-bottom: calc(2.5 * var(--text-margin));
}

.rst-content dl:not(.simple):not(.docutils):not(.cmdline) > dt {
	display: inline-block;
	margin: 0;
	font-size: 90%;
	background: var(--color-orange--20);
	color: var(--base-accent-color);
	border-top: solid 3px var(--vibrant-color);
	padding: .5em;
}

.rst-content dl:not(.docutils) dl dt {
	border-top: none !important;
	border-left: solid 3px var(--vibrant-color);
}

.rst-content dl:not(.docutils) dt:first-child {
	margin-top: 0;
}

.rst-content dl:not(.docutils) tt.descname,
.rst-content dl:not(.docutils) tt.descclassname,
.rst-content dl:not(.docutils) tt.descname,
.rst-content dl:not(.docutils) code.descname,
.rst-content dl:not(.docutils) tt.descclassname,
.rst-content dl:not(.docutils) code.descclassname {
	background-color: transparent;
	border: none;
	padding: 0;
	font-size: 100% !important
}
.rst-content dl:not(.docutils) tt.descname,
.rst-content dl:not(.docutils) tt.descname,
.rst-content dl:not(.docutils) code.descname {
	font-weight: bold
}
.rst-content dl:not(.docutils) .optional {
	display: inline-block;
	padding: 0 4px;
	color: #000;
	font-weight: bold
}
.rst-content dl:not(.docutils) .property {
	display: inline-block;
	padding-right: 8px
}


/* Tabs */

.rst-content .tabs {
	margin: calc(1.5 * var(--text-margin)) 0;
}

.rst-content .tabs-contents pre {
	max-height: 70rem;
}

.rst-content .tabs-headers ul {
	display: block;
	margin: 0;
	padding: 0;
}

.rst-content .tabs-headers ul li {
	display: inline-block;
	margin: 0;
}

.rst-content .tabs-contents .tabs-content {
	display: none;
}

.rst-content .tabs-content .highlight {
	margin: 0;
}

.rst-content .tabs-content div[class^='highlight'] pre {
	padding: 0;
	border: none;
}

.rst-content .tabs-content p + div[class^='highlight'] {
	border-top: 1px solid var(--color-dark-grey);
	padding-top: 1em;
}

.rst-content .tabs-content div[class^='highlight'] + p {
	border-top: 1px solid var(--color-dark-grey);
	padding-top: 1em;
}


.rst-content .tabs-headers li a {
	color: var(--base-accent-color);
	min-width: 6rem;
	text-align: center;
	margin-right: .4rem;
	padding: .6rem;
	display: inline-block;
	background: var(--color-grey);
}

.rst-content .tabs-headers li a:hover {
	color: inherit;
}

.rst-content .tabs-headers li a.active {
	background: var(--color-white);
	border: 1px solid var(--color-dark-grey);
	border-bottom: none;
	padding-bottom: 1rem;
}

.rst-content .tabs-contents .tabs-content {
	background: var(--color-white);
	border: 1px solid var(--color-dark-grey);
	margin-top: -1px;
	padding: 1rem;
}

.rst-content .tabs-contents .tabs-content {
	display: block;
}

.rst-content .tabs-contents .tabs-content.inactive {
	display: none;
}

/* Titles and sections */

.rst-content section {
	margin-top: calc(1.5 * var(--text-margin));
}

.rst-content section:first-child {
	margin-top: 0;
}

.rst-content h1 + section,
.rst-content h2 + section,
.rst-content h3 + section,
.rst-content h4 + section,
.rst-content h5 + section,
.rst-content h6 + section {
	margin-top: 0;
}

.rst-content section h1 {
	margin-top: 0;
	padding-top: 0;
}

.rst-content h1::after,
.rst-content #search-results > h2::after {
	display: block;
	content: "";
	background: linear-gradient(90deg, var(--color-light-orange), var(--color-light-orange) 33%, var(--color-dark-orange) 33%, var(--color-dark-orange) 80%, var(--color-blue) 80%);
	width: 50%;
	height: 1rem;
	margin: 1.5rem 0 2rem 0;
	transform: skewX(-45deg);
}

.rst-content h2 {
	border-bottom: 1px dotted var(--base-color);
}

/* Contentinfo */

.wy-grid-for-nav [role=contentinfo] {
	display: none;
}

.wy-grid-for-nav footer hr {
	display: none;
}


/* Syntax highlighting */

.rst-content .hll {
	background-color: #ffc;
	margin: 0 -12px;
	padding: 0 12px;
	display: block
}
.rst-content .c {
	color: #998;
	font-style: italic
}
.rst-content .err {
	color: #a61717;
	background-color: #e3d2d2
}
.rst-content .k {
	font-weight: bold
}
.rst-content o {
	font-weight: bold
}
.rst-content .cm {
	color: #998;
	font-style: italic
}
.rst-content .cp {
	color: #999;
	font-weight: bold
}
.rst-content .c1 {
	color: #998;
	font-style: italic
}
.rst-content .cs {
	color: #999;
	font-weight: bold;
	font-style: italic
}
.rst-content .gd {
	color: #000;
	background-color: #fdd
}
.rst-content .gd .x {
	color: #000;
	background-color: #faa
}
.rst-content .ge {
	font-style: italic
}
.rst-content .gr {
	color: #a00
}
.rst-content .gh {
	color: #999
}
.rst-content .gi {
	color: #000;
	background-color: #dfd
}
.rst-content .gi .x {
	color: #000;
	background-color: #afa
}
.rst-content .go {
	color: #888
}
.rst-content .gp {
	color: #555
}
.rst-content .gs {
	font-weight: bold
}
.rst-content .gu {
	color: purple;
	font-weight: bold
}
.rst-content .gt {
	color: #a00
}
.rst-content .kc {
	font-weight: bold
}
.rst-content .kd {
	font-weight: bold
}
.rst-content .kn {
	font-weight: bold
}
.rst-content .kp {
	font-weight: bold
}
.rst-content .kr {
	font-weight: bold
}
.rst-content .kt {
	color: #458;
	font-weight: bold
}
.rst-content .m {
	color: #099
}
.rst-content .s {
	color: #d14
}
.rst-content .n {
	color: #333
}
.rst-content .na {
	color: teal
}
.rst-content .nb {
	color: #0086b3
}
.rst-content .nc {
	color: #458;
	font-weight: bold
}
.rst-content .no {
	color: teal
}
.rst-content .ni {
	color: purple
}
.rst-content .ne {
	color: #900;
	font-weight: bold
}
.rst-content .nf {
	color: #900;
	font-weight: bold
}
.rst-content .nn {
	color: #555
}
.rst-content .nt {
	color: navy
}
.rst-content .nv {
	color: teal
}
.rst-content .ow {
	font-weight: bold
}
.rst-content .w {
	color: #bbb
}
.rst-content .mf {
	color: #099
}
.rst-content .mh {
	color: #099
}
.rst-content .mi {
	color: #099
}
.rst-content .mo {
	color: #099
}
.rst-content .sb {
	color: #d14
}
.rst-content .sc {
	color: #d14
}
.rst-content .sd {
	color: #d14
}
.rst-content .s2 {
	color: #d14
}
.rst-content .se {
	color: #d14
}
.rst-content .sh {
	color: #d14
}
.rst-content .si {
	color: #d14
}
.rst-content .sx {
	color: #d14
}
.rst-content .sr {
	color: #009926
}
.rst-content .s1 {
	color: #d14
}
.rst-content .ss {
	color: #990073
}
.rst-content .bp {
	color: #999
}
.rst-content .vc {
	color: teal
}
.rst-content .vg {
	color: teal
}
.rst-content .vi {
	color: teal
}
.rst-content .il {
	color: #099
}
.rst-content .gc {
	color: #999;
	background-color: #EAF2F5
}

/* Grid system */

.rst-content .col-5,
.rst-content .col-10,
.rst-content .col-15,
.rst-content .col-20,
.rst-content .col-25,
.rst-content .col-30,
.rst-content .col-35,
.rst-content .col-40,
.rst-content .col-45,
.rst-content .col-50,
.rst-content .col-55,
.rst-content .col-60,
.rst-content .col-65,
.rst-content .col-70,
.rst-content .col-75,
.rst-content .col-80,
.rst-content .col-85,
.rst-content .col-90,
.rst-content .col-95 {
	display: inline-block;
	vertical-align: top;
}

.rst-content .col-5 { width: 4.5%; }
.rst-content .col-10 { width: 9.5%; }
.rst-content .col-15 { width: 14.5%; }
.rst-content .col-20 { width: 19.5%; }
.rst-content .col-25 { width: 24.5%; }
.rst-content .col-30 { width: 29.5%; }
.rst-content .col-35 { width: 34.5%; }
.rst-content .col-40 { width: 39.5%; }
.rst-content .col-45 { width: 44.5%; }
.rst-content .col-50 { width: 49.5%; }
.rst-content .col-55 { width: 54.5%; }
.rst-content .col-60 { width: 59.5%; }
.rst-content .col-65 { width: 64.5%; }
.rst-content .col-70 { width: 69.5%; }
.rst-content .col-75 { width: 74.5%; }
.rst-content .col-80 { width: 79.5%; }
.rst-content .col-85 { width: 84.5%; }
.rst-content .col-90 { width: 89.5%; }
.rst-content .col-95 { width: 94.5%; }

.rst-content .col-sm-5,
.rst-content .col-sm-10,
.rst-content .col-sm-15,
.rst-content .col-sm-20,
.rst-content .col-sm-25,
.rst-content .col-sm-30,
.rst-content .col-sm-35,
.rst-content .col-sm-40,
.rst-content .col-sm-45,
.rst-content .col-sm-50,
.rst-content .col-sm-55,
.rst-content .col-sm-60,
.rst-content .col-sm-65,
.rst-content .col-sm-70,
.rst-content .col-sm-75,
.rst-content .col-sm-80,
.rst-content .col-sm-85,
.rst-content .col-sm-90,
.rst-content .col-sm-95 {
	display: inline-block;
	vertical-align: top;
}

.rst-content .col-sm-5 { width: 4.5%; } 
.rst-content .col-sm-10 { width: 9.5%; }
.rst-content .col-sm-15 { width: 14.5%; } 
.rst-content .col-sm-20 { width: 19.5%; }
.rst-content .col-sm-25 { width: 24.5%; } 
.rst-content .col-sm-30 { width: 29.5%; }
.rst-content .col-sm-35 { width: 34.5%; } 
.rst-content .col-sm-40 { width: 39.5%; }
.rst-content .col-sm-45 { width: 44.5%; } 
.rst-content .col-sm-50 { width: 49.5%; }
.rst-content .col-sm-55 { width: 54.5%; } 
.rst-content .col-sm-60 { width: 59.5%; }
.rst-content .col-sm-65 { width: 64.5%; } 
.rst-content .col-sm-70 { width: 69.5%; }
.rst-content .col-sm-75 { width: 74.5%; } 
.rst-content .col-sm-80 { width: 79.5%; }
.rst-content .col-sm-85 { width: 84.5%; } 
.rst-content .col-sm-90 { width: 89.5%; }
.rst-content .col-sm-95 { width: 94.5%; }

.rst-content .offset-sm-5 { margin-left: 4.5%; } 
.rst-content .offset-sm-7 { margin-left: 6.5%; }
.rst-content .offset-sm-8 { margin-left: 7.5%; } 
.rst-content .offset-sm-10 { margin-left: 9.5%; }
.rst-content .offset-sm-15 { margin-left: 14.5%; } 
.rst-content .offset-sm-20 { margin-left: 19.5%; }
.rst-content .offset-sm-25 { margin-left: 24.5%; } 
.rst-content .offset-sm-30 { margin-left: 29.5%; }
.rst-content .offset-sm-35 { margin-left: 34.5%; } 
.rst-content .offset-sm-40 { margin-left: 39.5%; }
.rst-content .offset-sm-45 { margin-left: 44.5%; } 
.rst-content .offset-sm-50 { margin-left: 49.5%; }
.rst-content .offset-sm-55 { margin-left: 54.5%; } 
.rst-content .offset-sm-60 { margin-left: 59.5%; }
.rst-content .offset-sm-65 { margin-left: 64.5%; } 
.rst-content .offset-sm-70 { margin-left: 69.5%; }
.rst-content .offset-sm-75 { margin-left: 74.5%; } 
.rst-content .offset-sm-80 { margin-left: 79.5%; }
.rst-content .offset-sm-85 { margin-left: 84.5%; } 
.rst-content .offset-sm-90 { margin-left: 89.5%; }
.rst-content .offset-sm-95 { margin-left: 94.5%; } 
.rst-content .offset-sm-3 { margin-left: 2.5%; }

.rst-content .push-right-sm-10 { padding-right: 9.5%; }
.rst-content .push-right-sm-20 { padding-right: 19.5%; }
.rst-content .push-right-sm-30 { padding-right: 29.5%; }
.rst-content .push-right-sm-40 { padding-right: 39.5%; }
.rst-content .push-right-sm-50 { padding-right: 49.5%; }