:root{
    --blue: #0053fa;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #e55235;
    --orange: #fd7e14;
    --yellow: #ffe000;
    --green: #28a745;
    --teal: #20c997;
    --cyan: #17a2b8;
    --white: #fff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --primary: #0053fa;
    --secondary: #6c757d;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffe000;
    --danger: #e55235;
    --light: #f8f9fa;
    --dark: #343a40;
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --font-family-serif: "Linux Libertine", "Georgia", serif;
    --font-family-sans-serif: "Open Sans", "Segoe UI", roboto, "Helvetica Neue", arial, "Noto Sans", sans-serif;
    --font-family-monospace: sfmono-regular, menlo, monaco, consolas, "Liberation Mono", "Courier New", monospace
}
a:target, .footnote:target{
  background: lightyellow
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/Regular.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/Semibold.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 700;
  font-style: normal;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/Bold.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/Italic.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/SemiboldItalic.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Serif";
  font-weight: 700;
  font-style: italic;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Serif/BoldItalic.woff2") format("woff2")
}
@font-face {
  font-family: "Libertinus Mono";
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url("/Fonts/Libertinus/Mono/Regular.woff2") format("woff2")
}
/*@font-face {
  font-family: Inconsolata;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url("Inconsolata/Regular.ttf") format("truetype")
}*/
@font-face {
  font-family: "Inconsolata";
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
  src: url("/Fonts/Inconsolata/Medium.ttf") format("truetype")
}
*,*::before,*::after{
    box-sizing:border-box
}
html{
    font-family: "Libertinus Serif", "Georgia", serif;
    line-height:1.15;
}
article,figcaption,figure,footer,header,main,nav,section{
  display: block;
  clear: both;
}
body{
    margin:0;
    //font-family:"Linux Libertine",sans-serif; /*"Georgia","Open Sans","Segoe UI",roboto,"Helvetica Neue",arial,"Noto Sans",sans-serif;*/
    font-size:1rem;
    font-weight:400;
    line-height:1.2;
    color:black;
    text-align:left;
    background-color:#fff;
    counter-reset: figures;
}
h1,h2,h3,h4{
    margin-top:0;
    margin-bottom:.5rem;
    color:#d95a39;
}
h2{
    border-style: solid;
    border-width: 0px 0px 2px 0px;
    border-color: #d95a39; 
}
p{
    margin-top:0;
    margin-bottom:1rem
}
address{
    margin-bottom:1rem;
    font-style:normal;
    line-height:inherit
}
ul,dl{
    margin-top:0;
    margin-bottom:1rem;
  padding-inline-start: 2rem;
}
ul ul{
    margin-bottom:0
}
blockquote{
    margin:0 0 1rem
}
strong{
    font-weight:bolder
}
small{
    font-size:80%
}
a{
    color:#0053fa;
    text-decoration:none;
    background-color:transparent
}
a:hover{
    color:#003aae;
    text-decoration:underline
}
a:not([href]):not([class]){
    color:inherit;
    text-decoration:none
}
a:not([href]):not([class]):hover{
    color:inherit;
    text-decoration:none
}

pre, code, kbd, samp {
  font-family: Inconsolata, "Courier New", monospace;
  font-size: 87.5%; 
  border-radius: 0.25rem
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

code {
  word-wrap: break-word
}

a>code{
  color:inherit
}

kbd{
    padding:.2rem .4rem;
    font-size:87.5%;
    color:#fff;
    background-color:#212529;
    border-radius:.2rem
}
kbd kbd{
    padding:0;
    font-size:100%;
    font-weight:700
}
pre{
    display:block;
    font-size:87.5%;
    color:#212529
}
pre code{
    font-size:inherit;
    color:inherit;
    word-break:normal
}

pre{
    background:#fbf7f0;
    color:#1d2d35;
    line-height:1.5;
    margin:1rem 0;
    overflow:auto;
    padding:1rem 1rem;
    -moz-tab-size:4;
    -o-tab-size:4;
    tab-size:4
}
code{
    background:#fbf7f0;
    color:#1d2d35;
    padding:0.25rem 0.5rem
}
pre code{
    background:none;
    font-size:inherit;
    padding:0
}
@media (max-width: 575.98px){
    pre{
        margin:2rem -1.5rem
    }
    pre,code,kbd,samp{
        border-radius:0
    }
}

pre button {
  /*position: absolute;
  top: 5px;
  right: 5px;*/
  float: right;
  border: none;
}

blockquote{
    margin-bottom:1rem;
    /*font-size:1.25rem;*/
    border-left:3px solid #dee2e6;
    padding-left:1rem
}

figure {
  display: table;
  margin:0 0 1rem
}
figcaption {
  display: table-caption;
  caption-side: bottom;
  font-size: 0.9rem;
  font-style: italic;
  counter-increment: figures;
}
figcaption::before {
  content: 'Figure ' counter(figures) ': ';
}
.lastfig::before {
  content: 'figure ' counter(figures);
}
.Lastfig::before {
  content: 'Figure ' counter(figures);
}
/*.nextfig::before {
  content: 'figure ' calc(counter(figures)+1); -- one can dream...
}
.Nextfig::before {
  content: 'Figure ' calc(counter(figures)+1);
}*/
img{
    vertical-align:middle;
    border-style:none
}
svg{
    overflow:hidden;
    vertical-align:middle
}
aside{
  width: 30%;
  padding: 1rem;
  margin: 0 0 1rem 1rem;
  float: right;
}
@media (max-width: 1200px){
  aside{
    width: 100%;
    padding: 0.2rem 0.5rem;
    margin: 0;
    float: none; 
  }
}
aside, .footnote{
  font-size: 0.9rem;
  background-color: ghostwhite; 
  border-style: dashed;
  border-color: lightgray;
  border-width: thin;
}
.footnote{
  padding: 0.2rem 0.5rem;
}
.footnote p{
  margin-block-start: 0;
  margin-block-end: 0;
}

table {
  border-collapse:collapse
}

table.code {
  font-family: Inconsolata, "Courier New", monospace;
  font-size: 87.5%;
  background-color: #fbf7f0;
  border-radius: 0.25rem
}

caption{
  padding-top:.5rem;
  padding-bottom:.5rem;
  /*color:#6c757d;*/
  text-align:left;
  /*caption-side:bottom*/
  font-size: 0.9rem;
  font-style: italic;
}
label{
    display:inline-block;
    /*margin-bottom:.5rem*/
}
button{
    border-radius:0
}
button:focus:not(:focus-visible){
    outline:0
}
input,button,select{
    margin:0;
    font-family:inherit;
    font-size:inherit;
    line-height:inherit
}
button,input{
    overflow:visible
}
button,select{
    text-transform:none
}
[role="button"]{
    cursor:pointer
}
select{
    word-wrap:normal
}
/*button,[type="button"],[type="reset"]{
    -webkit-appearance:button
}*/
button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled){
    cursor:pointer
}
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner{
    padding:0;
    border-style:none
}
input[type="checkbox"]{
    box-sizing:border-box;
    padding:0
}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{
    height:auto
}
[type="search"]{
    outline-offset:-2px;
    -webkit-appearance:none
}
[type="search"]::-webkit-search-decoration{
    -webkit-appearance:none
}
output{
    display:inline-block
}
template{
    display:none
}
[hidden]{
    display:none !important
}
h1,h2,h3,h4,.h1,.h2,.h3,.h4{
    margin-bottom:.5rem;
    font-weight:700;
    line-height:1.2
}
h1,.h1{
    font-size:2rem
}
@media (max-width: 1200px){
    h1,.h1{
        font-size:calc(1.325rem + .9vw) 
    }
}
h2,.h2{
    font-size:1.75rem
}
@media (max-width: 1200px){
    h2,.h2{
        font-size:calc(1.3rem + .6vw) 
    }
}
h3,.h3{
    font-size:1.5rem
}
@media (max-width: 1200px){
    h3,.h3{
        font-size:calc(1.275rem + .3vw) 
    }
}
h4,.h4{
    font-size:1.3rem
}
@media (max-width: 1200px){
    h4,.h4{
        font-size:calc(1.25rem + .15vw) 
    }
}
h5,.h5{
    font-size:1.1rem;
    margin-block-start: 1.67em;
    margin-block-end: 1em;
}
@media (max-width: 1200px){
    h5,.h5{
        font-size:calc(1rem + .1vw) 
    }
}
.topnav{
  font-weight: 800
}
.lead{
    font-size:1.25rem;
    font-weight:400
}
small,.small{
    font-size:80%;
    font-weight:400
}
.list-unstyled{
    padding-left:0;
    list-style:none
}
.list-unstyled li{
    padding-bottom:0.2rem;
    border:none
}
.blockquote{
    margin-bottom:1rem;
    font-size:1.25rem
}
.img-fluid{
    max-width:100%;
    height:auto
}
.figure {
    display: inline-block;
    border: none;
}
.figure-caption{
    font-size:90%;
    color:#6c757d
}
.container,.container-fluid{
    width:100%;
    padding-right:24px;
    padding-left:24px;
    margin-right:auto;
    margin-left:auto
}
@media (min-width: 576px){
    .container{
        max-width:540px
    }
}
@media (min-width: 768px){
    .container{
        max-width:720px
    }
}
@media (min-width: 992px){
    .container{
        max-width:960px
    }
}
@media (min-width: 1200px){
    .container{
        max-width:1920px
    }
}
.row{
    display:flex;
    flex-wrap:wrap;
    margin-right:-24px;
    margin-left:-24px
}
.col-xl-9,.col-xl-8,.col-xl-4,.col-xl-3,.col-lg-12,.col-lg-11,.col-lg-10,.col-lg-9,.col-lg-5,.col-lg-4,.col-md-12{
    position:relative;
    width:100%;
    padding-right:24px;
    padding-left:24px
}
.order-0{
    order:0
}
.order-1{
    order:1
}
.order-3{
    order:3
}
.order-4{
    order:4
}
.order-5{
    order:5
}
.order-6{
    order:6
}
@media (min-width: 768px){
    .col-md-12{
        flex:0 0 75%;
        max-width:75%
    }
    .order-md-0{
        order:0
    }
    .order-md-1{
        order:1
    }
    .order-md-2{
        order:2
    }
    .order-md-5{
        order:5
    }
}
@media (min-width: 992px){
    .col-lg-4{
        flex:0 0 25%;
        max-width:25%
    }
    .col-lg-5{
        flex:0 0 31.25%;
        max-width:31.25%
    }
    .col-lg-9{
        flex:0 0 56.25%;
        max-width:56.25%
    }
    .col-lg-10{
        flex:0 0 62.5%;
        max-width:62.5%
    }
    .col-lg-11{
        flex:0 0 68.75%;
        max-width:68.75%
    }
    .col-lg-12{
        flex:0 0 75%;
        max-width:75%
    }
}
@media (min-width: 1200px){
    .col-xl-3{
        flex:0 0 18.75%;
        max-width:18.75%
    }
    .col-xl-4{
        flex:0 0 25%;
        max-width:25%
    }
    .col-xl-8{
        flex:0 0 50%;
        max-width:50%
    }
    .col-xl-9{
        flex:0 0 56.25%;
        max-width:56.25%
    }
}
.table{
    width:100%;
    margin-bottom:1rem;
    color:#1d2d35
}
.form-control{
    display:block;
    width:100%;
    height:calc(1.5em + .75rem + 2px);
    padding:.375rem .75rem;
    font-size:1rem;
    font-weight:400;
    line-height:1.2;
    color:#495057;
    background-color:#fff;
    background-clip:padding-box;
    border:1px solid #ced4da;
    border-radius:.25rem;
    transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out
}
@media (prefers-reduced-motion: reduce){
    .form-control{
        transition:none
    }
}
.form-control::-ms-expand{
    background-color:transparent;
    border:0
}
.form-control:-moz-focusring{
    color:transparent;
    text-shadow:0 0 0 #495057
}
.form-control:focus{
    color:#495057;
    background-color:#fff;
    border-color:#7ba6ff;
    outline:0;
    box-shadow:0 0 0 .2rem rgba(0,83,250,0.25)
}
.form-control::-moz-placeholder{
    color:#6c757d;
    opacity:1
}
.form-control:-ms-input-placeholder{
    color:#6c757d;
    opacity:1
}
.form-control::placeholder{
    color:#6c757d;
    opacity:1
}
.form-control:disabled{
    background-color:#e9ecef;
    opacity:1
}
input.form-control[type="date"],input.form-control[type="time"],input.form-control[type="month"]{
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
select.form-control:focus::-ms-value{
    color:#495057;
    background-color:#fff
}
select.form-control[size],select.form-control[multiple]{
    height:auto
}
.btn{
    display:inline-block;
    font-weight:400;
    color:#1d2d35;
    text-align:center;
    vertical-align:middle;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    background-color:transparent;
    border:1px solid transparent;
    padding:.375rem .75rem;
    font-size:1rem;
    line-height:1.5;
    border-radius:.25rem;
    transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out
}
@media (prefers-reduced-motion: reduce){
    .btn{
        transition:none
    }
}
.btn:hover{
    color:#1d2d35;
    text-decoration:none
}
.btn:focus,.btn.focus{
    outline:0;
    box-shadow:0 0 0 .2rem rgba(0,83,250,0.25)
}
.btn.disabled,.btn:disabled{
    opacity:.65
}
.btn:not(:disabled):not(.disabled){
    cursor:pointer
}
a.btn.disabled{
    pointer-events:none
}
.btn-primary{
    color:#fff;
    background-color:#0053fa;
    border-color:#0053fa
}
.btn-primary:hover{
    color:#fff;
    background-color:#0046d4;
    border-color:#0042c7
}
.btn-primary:focus,.btn-primary.focus{
    color:#fff;
    background-color:#0046d4;
    border-color:#0042c7;
    box-shadow:0 0 0 .2rem rgba(38,109,251,0.5)
}
.btn-primary.disabled,.btn-primary:disabled{
    color:#fff;
    background-color:#0053fa;
    border-color:#0053fa
}
.btn-primary:not(:disabled):not(.disabled):active,.btn-primary.active:not(:disabled):not(.disabled){
    color:#fff;
    background-color:#0042c7;
    border-color:#003eba
}
.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary.active:not(:disabled):not(.disabled):focus{
    box-shadow:0 0 0 .2rem rgba(38,109,251,0.5)
}
.btn-outline-primary{
    color:#0053fa;
    border-color:#0053fa
}
.btn-outline-primary:hover{
    color:#fff;
    background-color:#0053fa;
    border-color:#0053fa
}
.btn-outline-primary:focus,.btn-outline-primary.focus{
    box-shadow:0 0 0 .2rem rgba(0,83,250,0.5)
}
.btn-outline-primary.disabled,.btn-outline-primary:disabled{
    color:#0053fa;
    background-color:transparent
}
.btn-outline-primary:not(:disabled):not(.disabled):active,.btn-outline-primary.active:not(:disabled):not(.disabled){
    color:#fff;
    background-color:#0053fa;
    border-color:#0053fa
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.btn-outline-primary.active:not(:disabled):not(.disabled):focus{
    box-shadow:0 0 0 .2rem rgba(0,83,250,0.5)
}
.btn-link{
    font-weight:400;
    color:#0053fa;
    text-decoration:none
}
.btn-link:hover{
    color:#003aae;
    text-decoration:underline
}
.btn-link:focus,.btn-link.focus{
    text-decoration:underline
}
.btn-link:disabled,.btn-link.disabled{
    color:#6c757d;
    pointer-events:none
}
.btn-lg{
    padding:.5rem 1rem;
    font-size:1.25rem;
    line-height:1.5;
    border-radius:.3rem
}
.btn-sm{
    padding:.25rem .5rem;
    font-size:.875rem;
    line-height:1.5;
    border-radius:.2rem
}
.collapse:not(.show){
    display:none
}
.nav{
    display:flex;
    flex-wrap:wrap;
    padding-left:0;
    margin-bottom:0;
    list-style:none
}
.nav-link{
    display:block;
    padding:.5rem 1rem
}
.nav-link:hover,.nav-link:focus{
    text-decoration:none
}
.nav-link.disabled{
    color:#6c757d;
    pointer-events:none;
    cursor:default
}
.navbar{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    padding:0 0
}
.navbar .container,.navbar .container-fluid{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between
}
.navbar-brand{
    display:inline-block;
    padding-top:.3125rem;
    padding-bottom:.3125rem;
    margin-right:0;
    font-size:1.25rem;
    line-height:inherit;
    white-space:nowrap
}
.navbar-brand:hover,.navbar-brand:focus{
    text-decoration:none
}
.navbar-nav{
    display:flex;
    flex-direction:column;
    padding-left:0;
    margin-bottom:0;
    list-style:none
}
.navbar-nav .nav-link{
    padding-right:0;
    padding-left:0
}
.navbar-text{
    display:inline-block;
    padding-top:.5rem;
    padding-bottom:.5rem
}
.navbar-collapse{
    flex-basis:100%;
    flex-grow:1;
    align-items:center
}
@media (max-width: 767.98px){
    .navbar-expand-md>.container,.navbar-expand-md>.container-fluid{
        padding-right:0;
        padding-left:0
    }
}
@media (min-width: 768px){
    .navbar-expand-md{
        flex-flow:row nowrap;
        justify-content:flex-start
    }
    .navbar-expand-md .navbar-nav{
        flex-direction:row
    }
    .navbar-expand-md .navbar-nav .nav-link{
        padding-right:.5rem;
        padding-left:.5rem
    }
    .navbar-expand-md>.container,.navbar-expand-md>.container-fluid{
        flex-wrap:nowrap
    }
    .navbar-expand-md .navbar-collapse{
        display:flex !important;
        flex-basis:auto
    }
}
.navbar-light .navbar-brand{
    color:#0053fa
}
.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{
    color:#0053fa
}
.navbar-light .navbar-nav .nav-link{
    color:#1d2d35
}
.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{
    color:#0053fa
}
.navbar-light .navbar-nav .nav-link.disabled{
    color:rgba(29,45,53,0.3)
}
.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .nav-link.active{
    color:#0053fa
}
.navbar-light .navbar-text{
    color:#1d2d35
}
.navbar-light .navbar-text a{
    color:#0053fa
}
.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{
    color:#0053fa
}
.card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    word-wrap:break-word;
    background-color:#fff;
    background-clip:border-box;
    border:1px solid #e9ecef;
    border-radius:.25rem
}
.card-body{
    flex:1 1 auto;
    min-height:1px;
    padding:1.25rem
}
.breadcrumb{
    display:flex;
    flex-wrap:wrap;
    padding:.75rem 1rem;
    margin-bottom:1rem;
    list-style:none;
    background-color:#e9ecef;
    border-radius:.25rem
}
.pagination{
    display:flex;
    padding-left:0;
    list-style:none;
    border-radius:.25rem
}
.alert{
    position:relative;
    padding:1rem 1.5rem;
    margin-bottom:0;
    border:0 solid transparent;
    border-radius:0
}
.alert-primary{
    color:#0053fa;
    background-color:#0053fa;
    border-color:#0053fa
}
.alert-warning{
    color:#ffe000;
    background-color:#ffe000;
    border-color:#ffe000
}
@-webkit-keyframes progress-bar-stripes{
    from{
        background-position:1rem 0
    }
    to{
        background-position:0 0
    }
}
@keyframes progress-bar-stripes{
    from{
        background-position:1rem 0
    }
    to{
        background-position:0 0
    }
}
.close{
    float:right;
    font-size:1.5rem;
    font-weight:700;
    line-height:1;
    color:#1d2d35;
    text-shadow:0 1px 0 #fff;
    opacity:.5
}
@media (max-width: 1200px){
    .close{
        font-size:calc(1.275rem + .3vw) 
    }
}
.close:hover{
    color:#1d2d35;
    text-decoration:none
}
.close:not(:disabled):not(.disabled):hover,.close:not(:disabled):not(.disabled):focus{
    opacity:.75
}
button.close{
    padding:0;
    background-color:transparent;
    border:0
}
a.close.disabled{
    pointer-events:none
}
@-webkit-keyframes spinner-border{
    to{
        transform:rotate(360deg)
    }
}
@keyframes spinner-border{
    to{
        transform:rotate(360deg)
    }
}
@-webkit-keyframes spinner-grow{
    0%{
        transform:scale(0)
    }
    50%{
        opacity:1;
        transform:none
    }
}
@keyframes spinner-grow{
    0%{
        transform:scale(0)
    }
    50%{
        opacity:1;
        transform:none
    }
}
.bg-light{
    background-color:#f8f9fa !important
}
a.bg-light:hover,a.bg-light:focus,button.bg-light:hover,button.bg-light:focus{
    background-color:#dae0e5 !important
}
.border-top{
    border-top:1px solid #e9ecef !important
}
.d-none{
    display:none !important
}
.d-flex{
    display:flex !important
}
@media (min-width: 768px){
    .d-md-none{
        display:none !important
    }
}
@media (min-width: 1200px){
    .d-xl-block{
        display:block !important
    }
}
.flex-shrink-1{
    flex-shrink:1 !important
}
.justify-content-center{
    justify-content:center !important
}
.justify-content-between{
    justify-content:space-between !important
}
.align-items-baseline{
    align-items:baseline !important
}
@media (min-width: 1200px){
    .flex-xl-nowrap{
        flex-wrap:nowrap !important
    }
}
.position-relative{
    position:relative !important
}
.fixed-top{
    position:fixed;
    top:0;
    right:0;
    left:0;
    z-index:1030
}
.fixed-bottom{
    position:fixed;
    right:0;
    bottom:0;
    left:0;
    z-index:1030
}
.sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0, 0, 0, 0);
    white-space:nowrap;
    border:0
}
.shadow{
    box-shadow:0 0.5rem 1rem rgba(29,45,53,0.15) !important
}
.w-100{
    width:100% !important
}
.mt-0{
    margin-top:0 !important
}
.my-1{
    margin-top:.25rem !important
}
.mr-1{
    margin-right:.25rem !important
}
.my-1{
    margin-bottom:.25rem !important
}
.mb-2{
    margin-bottom:.5rem !important
}
.ml-2{
    margin-left:.5rem !important
}
.mt-3,.my-3{
    margin-top:1rem !important
}
.my-3{
    margin-bottom:1rem !important
}
.py-2{
    padding-top:.5rem !important
}
.py-2{
    padding-bottom:.5rem !important
}
.pb-3{
    padding-bottom:1rem !important
}
.px-4{
    padding-right:1.5rem !important
}
.px-4{
    padding-left:1.5rem !important
}
.mt-n3{
    margin-top:-1rem !important
}
.mr-auto{
    margin-right:auto !important
}
.ml-auto{
    margin-left:auto !important
}
@media (min-width: 1200px){
    .mx-xl-auto{
        margin-right:auto !important
    }
    .mx-xl-auto{
        margin-left:auto !important
    }
}
.stretched-link::after{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:1;
    pointer-events:auto;
    content:"";
    background-color:rgba(0,0,0,0)
}
.text-center{
    text-align:center !important
}
.text-body{
    color:#1d2d35 !important
}
.text-muted{
    color:#6c757d !important
}
@media print{
    *,*::before,*::after{
        text-shadow:none !important;
        box-shadow:none !important
    }
    a:not(.btn){
        text-decoration:underline
    }
    pre{
        white-space:pre-wrap !important
    }
    pre,blockquote{
        border:1px solid #adb5bd;
        page-break-inside:avoid
    }
    img{
        page-break-inside:avoid
    }
    p,h2,h3{
        orphans:3;
        widows:3
    }
    h2,h3{
        page-break-after:avoid
    }
    @page{
        size:a3
    }
    body{
        min-width:992px !important
    }
    .container{
        min-width:992px !important
    }
    .navbar{
        display:none
    }
    .table{
        border-collapse:collapse !important
    }
}
.contributors .content,.blog .content,.page .content,.error404 .content,.docs.list .content,.tutorial.list .content{
    padding-top:1rem;
    padding-bottom:3rem
}
h1,h2,h3,h4,.h1,.h2,.h3,.h4{
    margin:2rem 0 1rem
}
@media (min-width: 768px){
  body{
    font-size:1.125rem;
    padding-top:3rem !important
  }
  h1,h2,h3,h4,.h1,.h2,.h3,.h4{
    margin-bottom:1.125rem
  }
}
.home h1{
    font-size:calc(1.875rem + 1.5vw)
}
.section{
    padding-top:5rem;
    padding-bottom:5rem
}
.section-sm{
    padding-top:1rem;
    padding-bottom:1rem
}
body{
    padding-top:3.5625rem
}
.docs-sidebar{
    order:2
}
@media (min-width: 992px){
  .docs-sidebar{
    order:0;
    border-right:1px solid #e9ecef
  }
  @supports ((position: -webkit-sticky) or (position: sticky)){
    .docs-sidebar{
      position: -webkit-sticky;
      position: sticky;
      top: 3rem;
      z-index: 1000;
      height: calc(100vh - 3rem)
    }
  }
}
@media (min-width: 1200px){
    .docs-sidebar{
        flex:0 1 320px
    }
}
.docs-links{
    padding-bottom:5rem
}
@media (min-width: 992px){
    @supports ((position: -webkit-sticky) or (position: sticky)){
        .docs-links{
            max-height:calc(100vh - 4rem);
            overflow-y:scroll
        }
    }
}
@media (min-width: 992px){
    .docs-links{
        display:block;
        width:auto;
        margin-right:-1.5rem;
        padding-bottom:4rem
    }
}
.docs-toc{
    order:2
}
@supports ((position: -webkit-sticky) or (position: sticky)){
    .docs-toc{
        position:-webkit-sticky;
        position:sticky;
        top:4rem;
        height:calc(100vh - 4rem);
        overflow-y:auto
    }
}
.docs-content{
    padding-bottom:3rem;
    order:1
}
.docs-navigation{
    border-top:1px solid #e9ecef;
    margin-top:2rem;
    margin-bottom:0;
    padding-top:2rem
}
.docs-navigation a{
    font-size:.9rem
}
@media (min-width: 992px){
    .docs-navigation{
        margin-bottom:-1rem
    }
    .docs-navigation a{
        font-size:1rem
    }
}
#TableOfContents ul{
    padding-left:0;
    list-style:none
}
.bg-dots{
    background-image:radial-gradient(#dee2e6 15%, transparent 15%);
    background-position:0 0;
    background-size:1rem 1rem;
    -webkit-mask:linear-gradient(to top, #fff, transparent);
    mask:linear-gradient(to top, #fff, transparent);
    width:100%;
    height:9rem;
    margin-top:-10rem;
    z-index:-1
}
body.dark{
    background:#212529;
    color:#dee2e6
}
body.dark a{
    color:#8ed6fb
}
body.dark a.text-body{
    color:#dee2e6 !important
}
body.dark .btn-primary{
    color:#212529;
    background-color:#8ed6fb;
    border-color:#8ed6fb;
    color:#212529 !important
}
body.dark .btn-primary:hover{
    color:#212529;
    background-color:#69c9fa;
    border-color:#5dc4f9
}
body.dark .btn-primary:focus,body.dark .btn-primary.focus{
    color:#212529;
    background-color:#69c9fa;
    border-color:#5dc4f9;
    box-shadow:0 0 0 .2rem rgba(126,187,220,0.5)
}
body.dark .btn-primary.disabled,body.dark .btn-primary:disabled{
    color:#212529;
    background-color:#8ed6fb;
    border-color:#8ed6fb
}
body.dark .btn-primary:not(:disabled):not(.disabled):active,body.dark .btn-primary.active:not(:disabled):not(.disabled){
    color:#212529;
    background-color:#5dc4f9;
    border-color:#50c0f9
}
body.dark .btn-primary:not(:disabled):not(.disabled):active:focus,body.dark .btn-primary.active:not(:disabled):not(.disabled):focus{
    box-shadow:0 0 0 .2rem rgba(126,187,220,0.5)
}
body.dark .navbar{
    background:#212529;
    opacity:0.975;
    border-bottom:1px solid #1b1f22
}
body.dark.home .navbar{
    border-bottom:0
}
body.dark .navbar-light .navbar-brand{
    color:#dee2e6 !important
}
body.dark .navbar-light .navbar-nav .nav-link{
    color:#dee2e6
}
body.dark .navbar-light .navbar-nav .nav-link:hover,body.dark .navbar-light .navbar-nav .nav-link:focus{
    color:#8ed6fb
}
body.dark .navbar-light .navbar-nav .nav-link.disabled{
    color:rgba(255,255,255,0.25)
}
body.dark .navbar-light .navbar-nav .show>.nav-link,body.dark .navbar-light .navbar-nav .active>.nav-link,body.dark .navbar-light .navbar-nav .nav-link.show,body.dark .navbar-light .navbar-nav .nav-link.active{
    color:#8ed6fb
}
body.dark .navbar-light .navbar-text{
    color:#dee2e6
}
body.dark .alert-primary a{
    color:#212529
}
body.dark .alert-warning{
    background:#1b1f22;
    color:#dee2e6
}
body.dark .page-links a{
    color:#dee2e6
}
body.dark .showcase-meta a{
    color:#dee2e6
}
body.dark .showcase-meta a:hover,body.dark .showcase-meta a:focus{
    color:#8ed6fb
}
body.dark .docs-link:hover,body.dark .docs-link.active,body.dark .page-links a:hover{
    text-decoration:none;
    color:#8ed6fb
}
body.dark .navbar-light .navbar-text a{
    color:#8ed6fb
}
body.dark .docs-links h3.sidebar-link a,body.dark .page-links h3.sidebar-link a{
    color:#dee2e6
}
body.dark .navbar-light .navbar-text a:hover,body.dark .navbar-light .navbar-text a:focus{
    color:#8ed6fb
}
body.dark .navbar .btn-link{
    color:#dee2e6
}
body.dark .content .btn-link{
    color:#8ed6fb
}
body.dark .content .btn-link:hover{
    color:#8ed6fb
}
body.dark .navbar .btn-link:hover{
    color:#8ed6fb
}
body.dark .navbar .btn-link:active{
    color:#8ed6fb
}
body.dark .form-control.is-search{
    background:#1b1f22
}
body.dark .navbar-form::after{
    color:#495057;
    border:1px solid #212529
}
body.dark .form-control:focus{
    box-shadow:0 0 0 0.2rem #9adafb
}
body.dark .border-top{
    border-top:1px solid #1b1f22 !important
}
@media (min-width: 992px){
    body.dark .docs-sidebar{
        order:0;
        border-right:1px solid #1b1f22
    }
}
body.dark .docs-navigation{
    border-top:1px solid #1b1f22
}
body.dark ::-moz-selection{
    background:#9adafb
}
body.dark ::selection{
    background:#9adafb
}
body.dark pre{
    background:#1b1f22;
    color:#dee2e6
}
body.dark code{
    background:#1b1f22;
    color:#dee2e6
}
body.dark blockquote{
    border-left:3px solid #1b1f22
}
body.dark .footer{
    border-top:1px solid #1b1f22
}
body.dark .docs-links,body.dark .docs-toc{
    scrollbar-width:thin;
    scrollbar-color:#212529 #212529
}
body.dark .docs-links::-webkit-scrollbar,body.dark .docs-toc::-webkit-scrollbar{
    width:5px
}
body.dark .docs-links::-webkit-scrollbar-track,body.dark .docs-toc::-webkit-scrollbar-track{
    background:#212529
}
body.dark .docs-links::-webkit-scrollbar-thumb,body.dark .docs-toc::-webkit-scrollbar-thumb{
    background:#212529
}
body.dark .docs-links:hover,body.dark .docs-toc:hover{
    scrollbar-width:thin;
    scrollbar-color:#1b1f22 #212529
}
body.dark .docs-links:hover::-webkit-scrollbar-thumb,body.dark .docs-toc:hover::-webkit-scrollbar-thumb{
    background:#1b1f22
}
body.dark .docs-links::-webkit-scrollbar-thumb:hover,body.dark .docs-toc::-webkit-scrollbar-thumb:hover{
    background:#1b1f22
}
body.dark .docs-links h3:not(:first-child){
    border-top:1px solid #1b1f22
}
body.dark a.docs-link{
    color:#dee2e6
}
body.dark .page-links li:not(:first-child){
    border-top:1px dashed #1b1f22
}
body.dark .card{
    background:#212529;
    border:1px solid #1b1f22
}
body.dark .card.bg-light{
    background:#1b1f22 !important
}
body.dark .navbar .menu-icon .navicon{
    background:#dee2e6
}
body.dark .navbar .menu-icon .navicon::before,body.dark .navbar .menu-icon .navicon::after{
    background:#dee2e6
}
body.dark .logo-light{
    display:none !important
}
body.dark .logo-dark{
    display:inline-block !important
}
body.dark .bg-light{
    background:#1e2125 !important
}
body.dark .bg-dots{
    background-image:radial-gradient(#556370 15%, transparent 15%)
}
body.dark .text-muted{
    color:#c8cfd6 !important
}
body.dark .alert-primary{
    background:#8ed6fb;
    color:#212529
}
body.dark .figure-caption{
    color:#dee2e6
}
.alert{
    font-family:sfmono-regular,menlo,monaco,consolas,"Liberation Mono","Courier New",monospace;
    font-size:.875rem
}
.alert-icon{
    margin-right:0.75rem
}
.docs .alert{
    margin:2rem -1.5rem
}
.alert-warning{
    background:#fbf7f0;
    color:#1d2d35
}
.alert-primary{
    color:#fff;
    background-color:#0053fa
}
.navbar .btn-link{
    color:#1d2d35;
    padding:0.4375rem 0
}
#mode{
    margin-right:1.25rem
}
.btn-link:focus{
    outline:0;
    box-shadow:none
}
#navigation{
    margin-left:1.25rem
}
@media (min-width: 768px){
    #mode{
        margin-right:0.5rem
    }
    .navbar .btn-link{
        padding:0.5625em 0.25rem 0.5rem 0.125rem
    }
}
.navbar .btn-link:hover{
    color:#0053fa
}
.navbar .btn-link:active{
    color:#0053fa
}
.btn-clipboard{
    display:none
}
@media (min-width: 768px){
    .btn-clipboard{
        display:block;
        margin:2.0625rem 0.25rem -4rem auto
    }
}
.copy-status::after,.copy-status:hover::after{
    content:"Copy";
    display:block
}
.copy-status:focus::after,.copy-status:active::after{
    content:"Copied";
    display:block
}
.figure-caption{
    margin:0.25rem 0 0.75rem
}
.blur-up{
    filter:blur(5px)
}
.blur-up.lazyloaded{
    filter:unset
}
.img-simple{
    margin-top:0.375rem;
    margin-bottom:1.25rem
}
.navbar-form{
    position:relative
}
#suggestions{
    position:absolute;
    right:0;
    margin-top:0.5rem;
    width:calc(100vw - 3rem)
}
#suggestions a{
    display:block;
    text-decoration:none;
    padding:0.75rem;
    margin:0 0.5rem
}
#suggestions a:focus{
    background:#f8f9fa;
    outline:0
}
#suggestions div:not(:first-child){
    border-top:1px dashed #e9ecef
}
#suggestions div:first-child{
    margin-top:0.5rem
}
#suggestions div:last-child{
    margin-bottom:0.5rem
}
#suggestions a:hover{
    background:#f8f9fa
}
#suggestions span{
    display:flex;
    font-size:1rem
}
#suggestions span:first-child{
    font-weight:700;
    color:#1d2d35
}
#suggestions span:nth-child(2){
    color:#495057
}
@media (min-width: 576px){
    #suggestions{
        width:30rem
    }
    #suggestions a{
        display:flex
    }
    #suggestions span:first-child{
        width:9rem;
        padding-right:1rem;
        border-right:1px solid #e9ecef;
        display:inline-block;
        text-align:right
    }
    #suggestions span:nth-child(2){
        width:19rem;
        padding-left:1rem
    }
}
.footer{
    border-top:1px solid #e9ecef;
    padding-top:1.125rem;
    padding-bottom:1.125rem
}
.footer ul{
    margin-bottom:0
}
.footer li{
    font-size:.875rem;
    margin-bottom:0
}
@media (min-width: 768px){
    .footer li{
        font-size:1rem
    }
}
.navbar-text{
    margin-left:1rem
}
.navbar-brand{
    font-weight:700
}
.navbar-light .navbar-brand,.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:active{
    color:#1d2d35
}
@media (min-width: 768px){
    .navbar-brand{
        font-size:1.375rem
    }
    .navbar-text{
        margin-left:1.25rem
    }
}
.navbar-nav{
    flex-direction:row
}
.nav-item{
    margin-left:1.25rem
}
@media (min-width: 768px){
    .nav-item{
        margin-left:0.5rem
    }
}
@media (max-width: 767.98px){
    .nav-item:first-child{
        margin-left:0
    }
}
@media (max-width: 991.98px){
    .navbar .container{
        padding-left:1.5rem;
        padding-right:1.5rem
    }
}
.break{
    flex-basis:100%;
    height:0
}
.navbar{
    background-color:#fff;
    border-bottom:1px solid #e9ecef
}
.home .navbar{
    border-bottom:0
}
.navbar-form{
    position:relative;
    margin-top:0.25rem
}
@media (min-width: 768px){
    .navbar-brand{
        margin-right:1rem !important
    }
    .main-nav .nav-item:first-child .nav-link,.social-nav .nav-item:first-child .nav-link{
        padding-left:0
    }
    .main-nav .nav-item:last-child .nav-link,.social-nav .nav-item:last-child .nav-link{
        padding-right:0
    }
    .navbar-form{
        margin-top:0;
        margin-left:6rem;
        margin-right:1.5rem
    }
}
@media (min-width: 992px){
    .navbar-form{
        margin-left:15rem
    }
}
@media (min-width: 1200px){
    .navbar-form{
        margin-left:30rem
    }
}
.form-control.is-search{
    padding-right:2.5rem;
    background:#f8f9fa;
    border:0
}
.navbar-form::after{
    position:absolute;
    top:0.4625rem;
    right:0.5375rem;
    display:flex;
    align-items:center;
    justify-content:center;
    height:1.5rem;
    padding-right:0.4375rem;
    padding-left:0.4375rem;
    font-size:.75rem;
    color:#495057;
    content:"/";
    border:1px solid #dee2e6;
    border-radius:0.25rem
}
.algolia-autocomplete{
    display:flex !important
}
.algolia-autocomplete .ds-dropdown-menu{
    box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important
}
@media (max-width: 767.98px){
    .algolia-autocomplete .ds-dropdown-menu{
        max-width:512px !important;
        min-width:312px !important;
        width:auto !important
    }
    .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column::after{
        content:"|";
        margin-right:0.25rem
    }
}
.algolia-autocomplete .algolia-docsearch-suggestion--title{
    margin-bottom:0
}
.algolia-autocomplete .algolia-docsearch-suggestion--highlight{
    padding:0 0.05em
}
.algolia-autocomplete .algolia-docsearch-footer{
    margin-top:1rem;
    margin-right:0.5rem;
    margin-bottom:0.5rem
}
.navbar .menu-icon{
    cursor:pointer;
    padding:1.125rem 0.625rem;
    margin:0 0 0 -0.625rem;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
.navbar .menu-icon .navicon{
    background:#1d2d35;
    display:block;
    height:2px;
    position:relative;
    transition:background 0.2s ease-out;
    width:18px
}
.navbar .menu-icon .navicon::before,.navbar .menu-icon .navicon::after{
    background:#1d2d35;
    content:"";
    display:block;
    height:100%;
    position:absolute;
    transition:all 0.2s ease-out;
    width:100%
}
.navbar .menu-icon .navicon::before{
    top:5px
}
.navbar .menu-icon .navicon::after{
    top:-5px
}
.navbar .menu-btn{
    display:none
}
.navbar .menu-btn:checked~.navbar-collapse{
    display:block;
    max-height:100vh
}
.navbar .menu-btn:checked~.menu-icon .navicon{
    background:transparent
}
.navbar .menu-btn:checked~.menu-icon .navicon::before{
    transform:rotate(-45deg)
}
.navbar .menu-btn:checked~.menu-icon .navicon::after{
    transform:rotate(45deg)
}
.navbar .menu-btn:checked~.menu-icon:not(.steps) .navicon::before,.navbar .menu-btn:checked~.menu-icon:not(.steps) .navicon::after{
    top:0
}
.docs-content>h2[id]::before,.docs-content>h3[id]::before,.docs-content>h4[id]::before{
    display:block;
    height:6rem;
    margin-top:-6rem;
    content:""
}
.anchor{
    visibility:hidden;
    padding-left:0.5rem
}
h1:hover a,h2:hover a,h3:hover a,h4:hover a{
    visibility:visible;
    text-decoration:none
}
.card-list{
    margin-top:2.25rem
}
.edit-page{
    margin-top:3rem;
    font-size:1rem
}
.edit-page svg{
    margin-right:0.5rem;
    margin-bottom:0.25rem
}
p.meta{
    margin-top:0.5rem;
    font-size:1rem
}
.home .card,.contributors.list .card,.blog.list .card{
    margin-top:2rem;
    margin-bottom:2rem;
    transition:transform 0.3s
}
.home .card:hover,.contributors.list .card:hover,.blog.list .card:hover{
    transform:scale(1.025)
}
.home .card-body,.contributors.list .card-body,.blog.list .card-body{
    padding:0 2rem 1rem
}
.blog-header{
    text-align:center;
    margin-bottom:2rem
}
.docs-links,.docs-toc{
    scrollbar-width:thin;
    scrollbar-color:#fff #fff
}
.docs-links::-webkit-scrollbar,.docs-toc::-webkit-scrollbar{
    width:5px
}
.docs-links::-webkit-scrollbar-track,.docs-toc::-webkit-scrollbar-track{
    background:#fff
}
.docs-links::-webkit-scrollbar-thumb,.docs-toc::-webkit-scrollbar-thumb{
    background:#fff
}
.docs-links:hover,.docs-toc:hover{
    scrollbar-width:thin;
    scrollbar-color:#e9ecef #fff
}
.docs-links:hover::-webkit-scrollbar-thumb,.docs-toc:hover::-webkit-scrollbar-thumb{
    background:#e9ecef
}
.docs-links::-webkit-scrollbar-thumb:hover,.docs-toc::-webkit-scrollbar-thumb:hover{
    background:#e9ecef
}
.docs-links h3,.page-links h3{
    /*text-transform:uppercase;*/
    font-size:1rem;
    margin:1.25rem 0 0.5rem 0;
    padding:1.5rem 0 0 0
}
@media (min-width: 992px){
    .docs-links h3,.page-links h3{
        margin:1.125rem 1.5rem 0.75rem 0;
        padding:1.375rem 0 0 0
    }
}
.docs-links h3:not(:first-child){
    border-top:1px solid #e9ecef
}
a.docs-link{
    color:#1d2d35;
    display:block;
    padding:0.125rem 0;
    font-size:1rem
}
.page-links li{
    margin-top:0.2rem;
    padding-top:0.2rem;
    xfont-weight:700
}
.page-links>nav>ul>li{
    font-weight:700
}
.page-links>nav>ul>li>ul>li{
    font-weight:inherited
}
.page-links a{
    color:#1d2d35;
    display:block;
    padding:0.125rem 0;
    font-size:.9375rem
}
.docs-link:hover,.docs-link.active,.page-links a:hover{
    text-decoration:none;
    color:#0053fa
}
.docs-links h3.sidebar-link,.page-links h3.sidebar-link{
    text-transform:none;
    font-size:1.125rem;
    font-weight:normal
}
.docs-links h3.sidebar-link a,.page-links h3.sidebar-link a{
    color:#1d2d35
}
.docs-links h3.sidebar-link a:hover,.page-links h3.sidebar-link a:hover{
    text-decoration:underline
}
footer{
    margin-top:4em;
    width:100%
}
h3 a{
    color:#1d2d35
}
.menu-icon{
    padding:0.375rem 0.625rem !important
}
.navbar-brand{
    color:#0053fa !important
}
body.home .navbar-brand{
    display:none
}
main img{
    max-width:100%
}

details > summary {
  cursor: pointer;
}
input[type="email"], input[type="password"], input[type="text"] {
  border-style: none;
  border-bottom: 2px solid darkblue;
}
.footnote{
  font-size: 0.8rem
}