/* Pygment CSS transfer to reduce CSS assets */
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: #ffffcc }
.highlight { background: #eeffcc; }
.highlight .c { color: #408090; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #007020; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #408090; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #007020 } /* Comment.Preproc */
.highlight .cpf { color: #408090; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */
.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #FF0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00A000 } /* Generic.Inserted */
.highlight .go { color: #333333 } /* Generic.Output */
.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #007020 } /* Keyword.Pseudo */
.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #902000 } /* Keyword.Type */
.highlight .m { color: #208050 } /* Literal.Number */
.highlight .s { color: #4070a0 } /* Literal.String */
.highlight .na { color: #4070a0 } /* Name.Attribute */
.highlight .nb { color: #007020 } /* Name.Builtin */
.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
.highlight .no { color: #60add5 } /* Name.Constant */
.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #007020 } /* Name.Exception */
.highlight .nf { color: #06287e } /* Name.Function */
.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */
.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #bb60d5 } /* Name.Variable */
.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #208050 } /* Literal.Number.Bin */
.highlight .mf { color: #208050 } /* Literal.Number.Float */
.highlight .mh { color: #208050 } /* Literal.Number.Hex */
.highlight .mi { color: #208050 } /* Literal.Number.Integer */
.highlight .mo { color: #208050 } /* Literal.Number.Oct */
.highlight .sa { color: #4070a0 } /* Literal.String.Affix */
.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */
.highlight .sc { color: #4070a0 } /* Literal.String.Char */
.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */
.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #4070a0 } /* Literal.String.Double */
.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */
.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
.highlight .sx { color: #c65d09 } /* Literal.String.Other */
.highlight .sr { color: #235388 } /* Literal.String.Regex */
.highlight .s1 { color: #4070a0 } /* Literal.String.Single */
.highlight .ss { color: #517918 } /* Literal.String.Symbol */
.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #06287e } /* Name.Function.Magic */
.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */
.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */
.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */
.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */
.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */
/* End Pygment */

@media screen and (min-width: 1400px) {
	.wy-nav-content {
		height: auto;
		max-width: 100%;
	}
}

html, body {
	height: 100%;
	overflow: hidden;
}

footer {
	padding-bottom: 30px;
}

/* Thermometer */
.c-thermometer {
	padding: 1rem 0;
    display: block;
    width: 20em;
    text-align: center;
    position: fixed;
    z-index: 999;
    right: 1rem;
    bottom: 0;
    border-radius: 20px;
}
.c-thermometer__trigger {
	cursor: pointer;
	filter: grayscale(100%);
    font-size: 2rem;
    text-align: right;
    padding-right: 2rem;
}
.c-thermometer__trigger div {
    display: inline-flex;
    width: 3rem;
    height: 3rem;
    background: white;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    box-shadow: 0 0 8px #00000024;
}
.c-thermometer__trigger:hover {
	filter: grayscale(0);
}
.c-thermometer__popup p {
	margin: 0 2rem;
}

.c-thermometer .c-thermometer__paragraph {
	margin-bottom: 0.8rem;
}

.c-thermometer__close {
    cursor: pointer;
    position: absolute;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: 1.4rem;
    right: 0.4rem;
    top: 0.4rem;
}

.c-thermometer__close:hover {
	color: #444;
}

.c-thermometer__popup {
	display: none;
	position: absolute;
    bottom: 5rem;
    right: 2rem;
    min-width: 19rem;
    height: auto;
    background: #fff;
    padding: 1rem;
    box-shadow: 0 0 8px #00000024;
    border-radius: 1rem;
}
.c-thermometer__emojis {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 1.6em;
}
.c-thermometer__emojis p {
	margin: 0;
	font-size: 0.5em;
}
.c-thermometer__emojis a {
	z-index: 2;
	position: relative;
	opacity: .6;
	color: inherit;
	text-decoration: none;
	transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	filter: grayscale(100%);
	flex: 1;
}
.c-thermometer__emojis a:hover {
	filter: grayscale(0);
	opacity: 1;
}
/* Thermometer ends */


.features__table {
	margin-bottom: 50px;
}

.features__table td {
	padding: 10px 20px;
	width: 50%;
}

.features__table img {
	width: 100%;
}

.features__table p {
	font-size: 15px;
	line-height: 1.5;
	margin-top: 10px;
	opacity: .7;
}

.features__table h4 {
	margin-bottom: 10px;
	font-size: 17px;
	color: #555;
}

.rst-versions .rst-other-versions {
	color: rgba(255, 255, 255, 0.6);
	display: none;
	font-size: 90%;
	padding: 12px;
}

.rst-versions .rst-current-version {
	background-color: rgba(255, 255, 255, 0.1);
	color: #fff;
	text-transform: uppercase;
}

.rst-versions {
	background: #404040 none repeat scroll 0 0;
	border-style: none; /* removes the underlying theme's top border */
}

.rst-versions .rst-current-version .fa-cog {
	float: left;
}

.rst-versions.shift-up .rst-current-version .fa.fa-angle-up:before {
	/* converts to angle-down when the .shift-up class is applied (e.g. the options pane is visible) */
	content: "\f107";
}

.rst-content tt.literal, .rst-content tt.literal, .rst-content code.literal {
	color: #151515;
	background: #EEEEEE;
}

.rst-content .heading-link h4 {
	font-size: 105%;
}

.rst-content li > *:not(.first).admonition {
	margin-top: 12px;
	margin-bottom: 12px;
}

.rst-content li > img:not(.first) {
	margin-bottom: 12px;
}

.wy-grid-for-nav {
	padding-top: 70px;
}

.rst-versions {
	width: 350px;
}

.wy-nav-content {
	height: auto;
	width: 100%;
    max-width: 100%;
	padding-top: 26px;
}

.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a {
	padding-left: 4rem;
	border: none;
}

.wy-table td, .rst-content table.docutils td, .rst-content table.field-list td {
	vertical-align: top;
}

.wy-nav-content .document {
	max-width: 1000px;
}

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

.wy-menu-vertical li.toctree-l2.current li.toctree-l3.current >a {
    background: #E0E0E0;
}

.wy-menu-vertical li.toctree-l3.current li.toctree-l4.current > a {
	background: #cacaca;
}
.wy-menu-vertical li.toctree-l3.current li.toctree-l4 > a {
	font-weight: bold;
    font-size: 0.95em;
}

.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a {
	background: transparent;
	padding-right: 1em;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wy-menu-vertical li.toctree-l3.current li.toctree-l4> a code {
	font-size: 1em;
    font-family: "Lato","proxima-nova","Helvetica Neue",Arial,sans-serif;
}

.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a {
	background: transparent;
	border: none;
	font-size: 1em;
}

.wy-menu-vertical li.toctree-l2.current>a {
	background: #E0E0E0;
	border-color: #ddd;
	border-top: none;
}

.wy-menu-vertical li a {
	white-space: nowrap;
}

.wy-menu-vertical li.on a, .wy-menu-vertical li.current>a {
	border-bottom: 1px solid #ddd;
}

.wy-menu-vertical p.caption {
	color: #555;
	font-weight: bold;
	margin: 4px 0;
	height: 33px;
	background: #CACACA;
	cursor:pointer;
}

.wy-menu-vertical p.caption:first-child {
	margin-top: -6px;
	border-top: 0;
}

.rst-content tt, .rst-content tt, .rst-content code {
	white-space: normal;
}

.rst-content .line-block {
	margin-left: 0;
	line-height: 24px;
}

.rst-content .highlight>pre {
	line-height: 1.5;
}

.rst-content dl dt {
	margin-bottom: 5px;
	line-height: 24px;
}

.wy-nav-content-wrap {
	margin-left: 350px;
	height: 100%;
	overflow: auto;
}

h1, h2, .rst-content .toctree-wrapper p.caption, h3, h4, h5, h6, legend {
	font-family: "Lato","proxima-nova","Helvetica Neue",Arial,sans-serif;
}

.wy-menu-vertical a {
	color: #888;
	font-size: 15px;
}

.wy-menu-vertical li.current a {
	font-size: 14.5px;
	padding-left: 2em;
}

.wy-menu-vertical li.toctree-l2.current>a {
	padding-left: 2.4em;
}

.wy-menu-vertical li.toctree-l2 a {
	padding-left: 2.4em;
}

.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a {
	padding-left: 3.3em;
}

.wy-menu-vertical li.current {
	background: #ececec;
}

.wy-menu-vertical a:hover {
	background-color: #E7EFF5;
}

.wy-side-scroll {
	width: 100%;
}

.wy-menu-vertical {
	width: 100%;
	top: 130px;
	position: relative;
}

.wy-nav-side {
	width: 350px;
	border-right: 1px solid #ddd;
	background: #f9f9f9;
}

.wy-side-nav-search {
	width: 350px;
	margin-top: 70px;
	border-right: 1px solid #ddd;
}

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

.wy-body-for-nav {
	position: relative;
	width: 100%;
	height: 100%;
	background: transparent;
}

.wy-side-nav-search input[type=text] {
	border: 1px solid #ddd;
}

.wy-side-nav-search {
	background: #f9f9f9;
	position: fixed;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
}

header .links__icon {
	cursor: pointer;
	display: none;
	float: right;
	font-size: 20px;
	padding: 0 20px;
	position: relative;
}

header .search__icon {
	cursor: pointer;
	display: none;
	float: left;
	font-size: 20px;
	padding: 0 20px;
	position: relative;
}

.wy-nav-top {
	background: #F5F5F5;
	padding: 0 10px;
	color: #222;
	border-bottom: 1px solid #ccc;
}

.wy-nav-top a {
	color: inherit;
}

.wy-nav-top i {
	color: #999;
	font-size: 20px;
	top: 14px;
	left: 5px;
	position: relative;
}

header {
	height: 60px;
	line-height: 60px;
	z-index: 999;
	position: fixed;
	top: 0;
	width: 100%;
}

header .header__container {
	background: #fff;
	border-bottom: 1px solid #ddd;
	color: #444;
	height: 70px;
	line-height: 67px;
}

header .header__logo img {
	top: -1px;
	position: relative;
}

header .header__logo {
	margin-left: 15px;
	float: left;
}

header .header__links {
	float: right;
	padding: 0 5px 0 0;
}

header .header__links li {
	float: left;
	display: block;
}

header .header__links li a.active {
	color: #2e97e2;
	border-color: #2e97e2;
}

header .header__links li a {
	font-size: 15px;
	padding: 0 1em;
	color: inherit;
	display: block;
	border-top: 3px solid transparent;
}

header .header__searchbar {
	display: none;
	float: left;
	padding: 0 5px 0 0;
}

@media (max-width: 768px){
	.wy-nav-side {
		left: -350px;
	}

	header .links__icon {
		display: block;
	}
	.wy-nav-top {
		display: none;
	}
	.wy-side-nav-search {
		position: relative;
	}
	.wy-menu-vertical {
		top: 0;
	}
	.wy-nav-content-wrap {
		margin-left: 0;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.wy-nav-content-wrap.shift {
		top: 70px;
	}
	header .header__container {
		text-align:center;
	}
	header .links__icon {
		display: block;
	}
	header .search__icon {
		display: block;
	}
	header .header__logo {
		position: relative;
		margin-left: auto;
		margin-right: auto;
		float:none;
	}
	header .header__logo img {
		width: 176px;
	}
	header .header__searchbar {
		border-bottom: 1px solid #ccc;
		display: none;
		background: #fff;
		line-height: 40px;
		padding: 0 15px 5px;
		width: 100%;
	}
	header .header__searchbar input[type="text"] {
		width: 100%;
		border-radius: 50px;
		border: 1px solid #ddd;
		padding: 6px 12px;
	}
	header .header__searchbar input:focus {
		outline: none;
	}
	header .header__links {
		border-bottom: 1px solid #ccc;
		display: none;
		background: #fff;
		line-height: 40px;
		padding: 0 15px 5px;
		width: 100%;
	}
	header .header__links li {
		float: none;
	}
	header .header__links li a {
		display: block;
		padding-left: 0;
	}
	img {
		max-width: 100%;
		width: auto;
	}
}

@media screen and (min-width: 1400px) {
	.wy-nav-content-wrap {
    	background: #fcfcfc; /* gets rid of the wony gray bottom of the page when viewed on a wide screen */
	}
}


/* override table width restrictions */
@media screen and (min-width: 767px) {

   .wy-table-responsive table td {
      /* !important prevents the common CSS stylesheets from overriding
         this as on RTD they are loaded after this stylesheet */
      white-space: normal !important;
   }

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

@media print {
	body,
	div.wy-grid-for-nav,
	section.wy-nav-content-wrap {
		height: auto;
	}

	body {
		overflow: visible;
	}

	section.wy-nav-content-wrap {
		margin-left: 0px;
	}

	header {
		position: absolute;
	}

	.header__container > :not(.header__logo) {
		display: none;
	}

	div.c-thermometer__trigger {
		display: none;
	}
}

/* Notification Banner */

.notification-bar {
	color: #0058cc;
    text-align: center;
    display: none;
    width: 100%;
    align-items: center;
    justify-content: center;
    height: 64px;
    white-space: nowrap;
    background-image: -webkit-gradient(linear,left top,right top,from(#f0f6ff),to(#d7e7ff));
    background-image: linear-gradient(90deg,#f0f6ff 0,#d7e7ff 100%);
    position: fixed;
    z-index: 9999;
}

.notification-bar.flex {
	display: flex;
}

.notification-bar.closed {
    display: none;
}

.notification-bar__content {
    padding: 2rem 3.6rem;
    font-size: 16px;
    line-height: 1.4;
    width: 100%;
}

.notification-bar__content > div {
	overflow: hidden;
    text-overflow: ellipsis;
}

.notification-bar a {
    color: #0058cc;
}

.notification-bar__close {
    font-size: 36px;
    font-weight: 300;
    position: absolute;
    cursor: pointer;
    right: 0px;
    opacity: .3;
    top: 0;
    width: 64px;
    line-height: 64px;
}

.notification-bar-hide:hover {
    opacity: .5;
}

header.with-notification {
	top: 64px;
}

.wy-grid-for-nav {
	padding-top: 134px;
}

.wy-grid-for-nav.no-notification {
	padding-top: 70px;
}
