body {
    font-family: Arial, sans-serif;
    background-color: #222;
    color: #fff;
    padding: 20px;
    line-height: 1.6;
}


.archive__item {
    display: flex;
    position: relative;
    margin-bottom: 2em;
    flex-direction: column
}

@media(min-width: 37.5em) {
    .archive__item {
        flex-direction:row
    }
}

.archive__item a {
    position: relative
}

.archive__item .archive__item-left {
    flex-grow: 0;
    flex-shrink: 0;
    margin-bottom: 1em
}

@media(min-width: 37.5em) {
    .archive__item .archive__item-left {
        margin-right:1em;
        margin-bottom: 0
    }
}

.archive__item .archive__item-right {
    flex-grow: 1
}

.archive__item-title {
    margin-top: 0;
    margin-bottom: .25em;
    line-height: initial
}

.archive__item-excerpt {
    margin-top: 0;
    margin-bottom: 0
}

.archive__item-excerpt+p {
    text-indent: 0
}

.archive__item-excerpt a {
    position: relative
}

.archive__item-teaser {
    position: relative;
    border-radius: 8px;
    overflow: hidden
}

@media(min-width: 37.5em) {
    .archive__item-teaser {
        width:10em
    }
}

@media(min-width: 48em) {
    .archive__item-teaser {
        width:13em
    }
}

@media(min-width: 64em) {
    .archive__item-teaser {
        width:15em
    }
}

@media(min-width: 101.25em) {
    .archive__item-teaser {
        width:20em
    }
}

.archive__item-teaser img {
    width: 100%;
    border: 1px solid #51555d;
    border-radius: 8px
}

@media(min-width: 64em) {
    .wide .archive {
        padding-right:0
    }
}

@media(min-width: 101.25em) {
    .wide .archive {
        padding-right:0
    }
}

.layout--single .feature__wrapper {
    display: inline-block
}

.tooltip-text {
    visibility: hidden;
    position: absolute;
    z-index: 2;
    width: 200px;
    color: #fff;
    background-color: #777;
    border-radius: 5px;
    padding: 5px 10px 5px 10px;
    top: -50%;
    left: 25px;
    font-weight: normal;
    font-size: 1em
}

.tooltip-text::before {
    content: "";
    position: absolute;
    transform: rotate(45deg);
    background-color: #777;
    padding: 5px;
    z-index: 1;
    top: 35%;
    left: -5px
}

.tooltip-base:hover .tooltip-text {
    visibility: visible
}

.tooltip-base {
    font-size: .6em;
    position: relative;
    display: inline-block;
    padding: 5px;
    cursor: help;
    vertical-align: super
}

div.highlighter-rouge,figure.highlight {
    position: relative;
    margin-bottom: 1em;
    border-radius: 8px;
    background: #272822;
    color: #f8f8f2;
    font-family: Monaco,Consolas,"Lucida Console",monospace;
    font-size: .8em;
    line-height: 1.8
}

div.highlighter-rouge>pre,div.highlighter-rouge pre.highlight,figure.highlight>pre,figure.highlight pre.highlight {
    margin: 0;
    padding: 1em
}

div.highlighter-rouge::selection,figure.highlight::selection {
    color: #000;
    background: #fff
}

.highlight table {
    margin-bottom: 0;
    font-size: 1em;
    border: 0
}

.highlight table td {
    padding: 0;
    width: calc(100% - 1em);
    border: 0
}

.highlight table td.gutter,.highlight table td.rouge-gutter {
    padding-right: 1em;
    width: 1em;
    color: #a59f85;
    border-right: 1px solid #a59f85;
    text-align: right
}

.highlight table td.code,.highlight table td.rouge-code {
    padding-left: 1em
}

.highlight table pre {
    margin: 0
}

.highlight pre {
    width: 100%
}

.highlight .hll {
    background-color: #f5f4f1
}

.highlight .c {
    color: #a59f85
}

.highlight .err {
    color: #f92672
}

.highlight .k {
    color: #ae81ff
}

.highlight .l {
    color: #fd971f
}

.highlight .n {
    color: #f8f8f2
}

.highlight .o {
    color: #a1efe4
}

.highlight .p {
    color: #f8f8f2
}

.highlight .cm {
    color: #a59f85
}

.highlight .cp {
    color: #a59f85
}

.highlight .c1 {
    color: #a59f85
}

.highlight .cs {
    color: #a59f85
}

.highlight .gd {
    color: #f92672
}

.highlight .ge {
    font-style: italic
}

.highlight .gh {
    color: #f8f8f2;
    font-weight: bold
}

.highlight .gi {
    color: #a6e22e
}

.highlight .gp {
    color: #a59f85;
    font-weight: bold
}

.highlight .gs {
    font-weight: bold
}

.highlight .gu {
    color: #a1efe4;
    font-weight: bold
}

.highlight .kc {
    color: #ae81ff
}

.highlight .kd {
    color: #ae81ff
}

.highlight .kn {
    color: #a1efe4
}

.highlight .kp {
    color: #ae81ff
}

.highlight .kr {
    color: #ae81ff
}

.highlight .kt {
    color: #f4bf75
}

.highlight .ld {
    color: #a6e22e
}

.highlight .m {
    color: #fd971f
}

.highlight .s {
    color: #a6e22e
}

.highlight .na {
    color: #66d9ef
}

.highlight .nb {
    color: #f8f8f2
}

.highlight .nc {
    color: #f4bf75
}

.highlight .no {
    color: #f92672
}

.highlight .nd {
    color: #a1efe4
}

.highlight .ni {
    color: #f8f8f2
}

.highlight .ne {
    color: #f92672
}

.highlight .nf {
    color: #66d9ef
}

.highlight .nl {
    color: #ae81ff
}

.highlight .nn {
    color: #f4bf75
}

.highlight .nx {
    color: #66d9ef
}

.highlight .py {
    color: #f8f8f2
}

.highlight .nt {
    color: #a1efe4
}

.highlight .nv {
    color: #f92672
}

.highlight .ow {
    color: #a1efe4
}

.highlight .w {
    color: #f8f8f2
}

.highlight .mf {
    color: #fd971f
}

.highlight .mh {
    color: #fd971f
}

.highlight .mi {
    color: #fd971f
}

.highlight .mo {
    color: #fd971f
}

.highlight .sb {
    color: #a6e22e
}

.highlight .sc {
    color: #f8f8f2
}

.highlight .sd {
    color: #a59f85
}

.highlight .s2 {
    color: #a6e22e
}

.highlight .se {
    color: #fd971f
}

.highlight .sh {
    color: #a6e22e
}

.highlight .si {
    color: #fd971f
}

.highlight .sx {
    color: #a6e22e
}

.highlight .sr {
    color: #a6e22e
}

.highlight .s1 {
    color: #a6e22e
}

.highlight .ss {
    color: #a6e22e
}

.highlight .bp {
    color: #f8f8f2
}

.highlight .vc {
    color: #f92672
}

.highlight .vg {
    color: #f92672
}

.highlight .vi {
    color: #f92672
}

.highlight .il {
    color: #fd971f
}

form.delegate-tool {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    border: 1px solid #51555d;
    border-radius: 8px;
    padding: .5em
}

form.delegate-tool table {
    background: none;
    margin: 0;
    padding: 0
}

form.delegate-tool td {
    margin: 0;
    padding: .3em 0;
    border: none
}

form.delegate-tool td.labels {
    width: 120px
}

form.delegate-tool td label {
    color: #bbb
}

form.delegate-tool input[type=checkbox] {
    border: 1px solid #51555d;
    border-radius: 8px;
    background-color: #333;
    color: #333;
    height: 1.5em;
    width: 1.5em;
    accent-color: #8F9BFF
}

form.delegate-tool input[type=checkbox]:checked {
    background-color: #8F9BFF;
    color: #8F9BFF;
    accent-color: #8F9BFF
}

form.delegate-tool input[type=text] {
    border: 1px solid #51555d;
    border-radius: 8px;
    background: #333
}

form.delegate-tool input[type=text]:hover {
    background: #222;
    border: 1px solid #666
}

form.delegate-tool input[type=text]:focus {
    box-shadow: none;
    border: 1px solid #8F9BFF
}

form.delegate-tool input[type=text].code {
    font-family: Monaco,Consolas,"Lucida Console",monospace
}

form.delegate-tool .code-output {
    font-family: Monaco,Consolas,"Lucida Console",monospace;
    font-size: .8em;
    margin: 0;
    background-color: #333;
    border-radius: 4px;
    padding: .5em
}

form.delegate-tool .code-output p {
    margin: 0
}

form.delegate-tool input[type=button] {
    font-weight: bold;
    padding: 4px 8px
}

form.delegate-tool input[type=button].major {
    border: 1px solid #8F9BFF;
    border-radius: 4px;
    padding: 8px
}

form.delegate-tool input[type=button].major:hover {
    border: 1px solid #8F9BFF;
    background: #8F9BFF;
    color: #fff
}

form.delegate-tool input[type=button]:focus {
    box-shadow: none
}

form.delegate-tool input[type=button]:hover {
    background: #333
}

form.delegate-tool input[type=button]:disabled {
    background: #777;
    color: #ddd;
    border: 1px solid #777
}

form.delegate-tool .delegatename {
    color: #fd971f
}

form.delegate-tool .dynamic {
    color: #a6e22e
}

form.delegate-tool .multicast {
    color: #f92672
}

form.delegate-tool .retval {
    color: #ae81ff
}

form.delegate-tool .params {
    color: #66d9ef
}

.page__footer {
    clear: both;
    float: left;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    color: #919191;
    background-color: #121212
}

.page__footer::after {
    clear: both;
    content: "";
    display: table
}

.page__footer a {
    color: inherit;
    text-decoration: none
}

.page__footer a:hover {
    text-decoration: underline
}

.page__footer a:visited {
    color: inherit
}

.page__footer .fas,.page__footer .fab,.page__footer .far,.page__footer .fal {
    color: #eee
}

.page__footer-copyright {
    font-size: .6875em
}

.page__footer-follow ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.page__footer-follow li {
    display: inline-block;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: .75em;
    text-transform: uppercase
}

.page__footer-follow li+li:before {
    content: "";
    padding-right: 5px
}

.page__footer-follow a {
    padding-right: 10px;
    font-weight: bold
}

.page__footer-follow .social-icons a {
    white-space: nowrap
}

.page__footer-follow .social-icons .svg-inline--fa {
    padding-right: 2px
}

button,input,select,textarea {
    margin: 0;
    font-size: 100%;
    vertical-align: middle
}

button,input {
    *overflow: visible;
    line-height: normal
}

button::-moz-focus-inner,input::-moz-focus-inner {
    padding: 0;
    border: 0
}

button,html input[type=button],input[type=reset],input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox] {
    cursor: pointer
}

input[type=search] {
    box-sizing: border-box;
    -webkit-appearance: textfield
}

input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    vertical-align: top
}

form {
    margin: 0 0 5px 0;
    padding: 1em
}

form fieldset {
    margin-bottom: 5px;
    padding: 0;
    border-width: 0
}

form legend {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    *margin-left: -7px;
    padding: 0;
    color: #f2f2f2;
    border: 0;
    white-space: normal
}

form p {
    margin-bottom: 2.5px
}

form ul {
    list-style-type: none;
    margin: 0 0 5px 0;
    padding: 0
}

form br {
    display: none
}

label,input,button,select,textarea {
    vertical-align: baseline;
    *vertical-align: middle
}

input,button,select,textarea {
    box-sizing: border-box
}

label {
    display: inline-block;
    margin-right: .25em;
    color: #f2f2f2;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

label small {
    font-size: .75em
}

label input,label textarea,label select {
    display: block
}

input,textarea,select {
    display: inline-block;
    width: 100%;
    padding: .25em;
    margin-bottom: .5em;
    color: #f2f2f2;
    background-color: #1a1a1a;
    border: 1px solid #484848;
    border-radius: 8px;
    box-shadow: 0 1px 1px rgba(0,0,0,.125)
}

input::placeholder {
    color: #919191
}

input:focus::placeholder {
    color: rgba(0,0,0,0)
}

.input-mini {
    width: 60px
}

.input-small {
    width: 90px
}

input[type=image],input[type=checkbox],input[type=radio] {
    width: auto;
    height: auto;
    padding: 0;
    margin: 3px 0;
    *margin-top: 0;
    line-height: normal;
    cursor: pointer;
    border-radius: 0;
    border: 0 \9 ;
    box-shadow: none
}

input[type=checkbox],input[type=radio] {
    box-sizing: border-box;
    padding: 0;
    *width: 13px;
    *height: 13px
}

input[type=image] {
    border: 0
}

input[type=file] {
    width: auto;
    padding: initial;
    line-height: initial;
    border: initial;
    background-color: rgba(0,0,0,0);
    background-color: initial;
    box-shadow: none
}

input[type=button],input[type=reset],input[type=submit] {
    width: auto;
    height: auto;
    cursor: pointer;
    *overflow: visible
}

select,input[type=file] {
    *margin-top: 4px
}

select {
    width: auto;
    background-color: #fff
}

select[multiple],select[size] {
    height: auto
}

textarea {
    resize: vertical;
    height: auto;
    overflow: auto;
    vertical-align: top
}

input[type=hidden] {
    display: none
}

.form {
    position: relative
}

.radio,.checkbox {
    padding-left: 18px;
    font-weight: normal
}

.radio input[type=radio],.checkbox input[type=checkbox] {
    float: left;
    margin-left: -18px
}

.radio.inline,.checkbox.inline {
    display: inline-block;
    padding-top: 5px;
    margin-bottom: 0;
    vertical-align: middle
}

.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline {
    margin-left: 10px
}

input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly] {
    opacity: .5;
    cursor: not-allowed
}

input:focus,textarea:focus {
    border-color: #8F9BFF;
    outline: 0;
    outline: thin dotted \9 ;
    box-shadow: inset 0 1px 3px rgba(242,242,242,.06),0 0 5px rgba(53,186,105,.7)
}

input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus,select:focus {
    box-shadow: none
}

.help-block,.help-inline {
    color: #919191
}

.help-block {
    display: block;
    margin-bottom: 1em;
    line-height: 1em
}

.help-inline {
    display: inline-block;
    vertical-align: middle;
    padding-left: 5px
}

.form-group {
    margin-bottom: 5px;
    padding: 0;
    border-width: 0
}

.form-inline input,.form-inline textarea,.form-inline select {
    display: inline-block;
    margin-bottom: 0
}

.form-inline label {
    display: inline-block
}

.form-inline .radio,.form-inline .checkbox,.form-inline .radio {
    padding-left: 0;
    margin-bottom: 0;
    vertical-align: middle
}

.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox] {
    float: left;
    margin-left: 0;
    margin-right: 3px
}

.form-search input,.form-search textarea,.form-search select {
    display: inline-block;
    margin-bottom: 0
}

.form-search .search-query {
    padding-left: 14px;
    padding-right: 14px;
    margin-bottom: 0;
    border-radius: 14px
}

.form-search label {
    display: inline-block
}

.form-search .radio,.form-search .checkbox,.form-inline .radio {
    padding-left: 0;
    margin-bottom: 0;
    vertical-align: middle
}

.form-search .radio input[type=radio],.form-search .checkbox input[type=checkbox] {
    float: left;
    margin-left: 0;
    margin-right: 3px
}

.form--loading:before {
    content: ""
}

.form--loading .form__spinner {
    display: block
}

.form:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,.7);
    z-index: 10
}

.form__spinner {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 11
}

.header-footer-inner-wrap {
    clear: both;
    margin-left: auto;
    margin-right: auto;
    padding: .5em 1em;
    max-width: 100%
}

.header-footer-inner-wrap::after {
    clear: both;
    content: "";
    display: table
}

@media(min-width: 101.25em) {
    .header-footer-inner-wrap {
        max-width:1620px
    }
}

.masthead {
    position: relative;
    font-size: .7em;
    z-index: 20
}

@media(min-width: 48em) {
    .masthead {
        font-size:1em
    }
}

@media(min-width: 48em) {
    .masthead {
        position:sticky;
        position: -webkit-sticky;
        top: 0;
        z-index: 9999;
        font-size: 1.2em
    }
}

.masthead__primary {
    border-bottom: 1px solid #484848;
    background-color: #0d0d0d
}

.masthead__secondary {
    border-bottom: 1px solid #484848;
    background-color: #141414;
    font-size: .75em
}

.masthead__secondary .masthead__inner-wrap {
    padding: 0
}

.masthead__secondary .masthead__menu-item {
    margin: 0;
    padding: 0;
    vertical-align: middle
}

.masthead__secondary .masthead__menu-item a {
    padding: .2em
}

.masthead__secondary .masthead__menu-item a::before {
    background: none
}

.masthead--lg {
    padding-right: 2em;
    font-weight: 700
}

.masthead__inner-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.masthead__inner-wrap nav {
    z-index: 10
}

.masthead__inner-wrap a {
    text-decoration: none
}

.site-logo img {
    max-height: 2rem
}

.site-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: center;
    align-self: center;
    font-weight: bold
}

.site-subtitle {
    display: block;
    font-size: .625em
}

#site-nav {
    margin-left: 0;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.masthead__menu {
    margin-left: 0;
    margin-right: 0;
    width: 100%
}

.masthead__menu ul {
    margin: 0;
    padding: 0;
    clear: both;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow: hidden;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.masthead__menu ul a {
    display: block;
    text-align: center
}

.masthead__menu ul a:visited {
    color: #8F9BFF
}

.masthead__menu ul a:hover {
    color: #c5cbff
}

.masthead__menu-item {
    display: block;
    list-style-type: none;
    white-space: nowrap
}

.masthead__menu-item--lg {
    padding-right: 2em;
    font-weight: 700
}

ul.visible-links li.masthead__menu-item {
    margin: 0 .5em
}

ul.visible-links li.masthead__menu-item a {
    margin: 0;
    text-align: center
}

ul.visible-links ul.sublinks {
    display: flex
}

ul.visible-links ul.sublinks li.masthead__menu-subitem {
    font-size: .8rem;
    display: inline
}

ul.visible-links ul.sublinks li.masthead__menu-subitem a {
    margin: 0 .5em
}

ul.visible-links ul.sublinks li.masthead__menu-subitem:first-child a {
    margin-left: 0
}

ul.visible-links ul.sublinks li.masthead__menu-subitem:last-child a {
    margin-right: 0
}

.breadcrumbs {
    clear: both;
    margin: 0 auto;
    max-width: 100%;
    padding: 0
}

.breadcrumbs::after {
    clear: both;
    content: "";
    display: table
}

@media(min-width: 101.25em) {
    .breadcrumbs {
        max-width:1620px
    }
}

.breadcrumbs ol {
    padding: 0;
    margin-top: 0;
    list-style: none;
    font-size: .75em
}

@media(min-width: 64em) {
    .breadcrumbs ol {
        width:calc(100% - 280px)
    }
}

@media(min-width: 101.25em) {
    .breadcrumbs ol {
        width:calc(100% - 320px)
    }
}

.breadcrumbs li {
    display: inline
}

.breadcrumbs .sep {
    display: none
}

.breadcrumbs li::after {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-top: 50px solid rgba(0,0,0,0);
    border-bottom: 50px solid rgba(0,0,0,0);
    border-left: 30px solid #fff;
    position: absolute;
    top: 50%;
    margin-top: -50px;
    margin-left: 1px;
    left: 100%;
    z-index: 1
}

.breadcrumbs .current {
    font-weight: bold
}

.pagination {
    clear: both;
    float: left;
    margin-top: 1em;
    padding-top: 1em;
    width: 100%
}

.pagination::after {
    clear: both;
    content: "";
    display: table
}

.pagination ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.pagination li {
    display: block;
    float: left;
    margin-left: -1px
}

.pagination li a {
    display: block;
    margin-bottom: .25em;
    padding: .5em 1em;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    color: #919191;
    border: 1px solid #363636;
    border-radius: 0
}

.pagination li a:hover {
    color: #c5cbff
}

.pagination li a.current,.pagination li a.current.disabled {
    color: #fff;
    background: #8F9BFF
}

.pagination li a.disabled {
    color: rgba(145,145,145,.5);
    pointer-events: none;
    cursor: not-allowed
}

.pagination li:first-child {
    margin-left: 0
}

.pagination li:first-child a {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px
}

.pagination li:last-child a {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px
}

.pagination--pager {
    display: block;
    padding: 1em 2em;
    float: left;
    width: 50%;
    font-size: 1em;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: #919191;
    border: 1px solid #363636;
    border-radius: 8px
}

.pagination--pager:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.pagination--pager:last-child {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.pagination--pager.disabled {
    color: rgba(145,145,145,.5);
    pointer-events: none;
    cursor: not-allowed
}

.page__content+.pagination,.page__meta+.pagination {
    margin-top: 2em;
    padding-top: 2em;
    border-top: 1px solid #484848
}

.nav__list {
    margin-bottom: 1.5em
}

.nav__list input[type=checkbox],.nav__list label {
    display: none
}

@media(max-width: 63.9375em) {
    .nav__list label {
        position:relative;
        display: inline-block;
        padding: .5em 2.5em .5em 1em;
        color: #7a8288;
        font-size: .75em;
        font-weight: bold;
        border: 1px solid #bdc1c4;
        border-radius: 8px;
        z-index: 20;
        cursor: pointer
    }

    .nav__list label:before,.nav__list label:after {
        content: "";
        position: absolute;
        right: 1em;
        top: 1.25em;
        width: .75em;
        height: .125em;
        line-height: 1;
        background-color: #7a8288
    }

    .nav__list label:after {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg)
    }

    .nav__list label:hover {
        color: #fff;
        border-color: #7a8288;
        background-color: #333
    }

    .nav__list label:hover:before,.nav__list label:hover:after {
        background-color: #fff
    }

    .nav__list input:checked+label {
        color: #fff;
        background-color: #333
    }

    .nav__list input:checked+label:before,.nav__list input:checked+label:after {
        background-color: #fff
    }

    .nav__list label:hover:after {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg)
    }

    .nav__list input:checked+label:hover:after {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }

    .nav__list ul {
        margin-bottom: 1em
    }

    .nav__list a {
        display: block;
        padding: .25em 0
    }
}

@media(max-width: 63.9375em)and (min-width: 64em) {
    .nav__list a {
        padding-top:.125em;
        padding-bottom: .125em
    }
}

@media(max-width: 63.9375em) {
    .nav__list a:hover {
        text-decoration:underline
    }
}

.nav__list .nav__items {
    margin: 0;
    font-size: 1.25rem
}

.nav__list .nav__items a {
    color: inherit
}

.nav__list .nav__items .active {
    margin-left: -0.5em;
    padding-left: .5em;
    padding-right: .5em;
    font-weight: bold
}

@media(max-width: 63.9375em) {
    .nav__list .nav__items {
        position:relative;
        max-height: 0;
        opacity: 0%;
        overflow: hidden;
        z-index: 10;
        -webkit-transform: translate(0, 10%);
        -ms-transform: translate(0, 10%);
        transform: translate(0, 10%)
    }
}

@media(max-width: 63.9375em) {
    .nav__list input:checked~.nav__items {
        max-height:9999px;
        overflow: visible;
        opacity: 1;
        margin-top: 1em;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

.nav__title {
    margin: 0;
    padding: .5rem .75rem;
    font-size: 1em;
    font-weight: bold
}

.nav__sub-title {
    display: block;
    margin: .5rem 0;
    padding: .25rem 0;
    font-size: .75em;
    font-weight: bold;
    text-transform: uppercase;
    border-bottom: 1px solid #484848
}

.toc {
    color: #7a8288;
    border: 1px solid #484848;
    border-radius: 8px
}

.toc .nav__title {
    color: #fff;
    font-size: .75em;
    background: #8F9BFF;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px
}

.toc__menu {
    margin: 0;
    padding: 0;
    width: 100%;
    list-style: none
}

.toc__menu a {
    display: block;
    padding: .25rem .75rem;
    color: #919191;
    font-weight: bold;
    line-height: 1.5;
    border-bottom: 1px solid #484848;
    border-radius: 8px
}

.toc__menu a:visited {
    color: #919191
}

.toc__menu a:hover {
    color: #f2f2f2
}

.toc__menu li ul>li a {
    padding-left: 1.25rem;
    font-weight: normal
}

.toc__menu li ul li ul>li a {
    padding-left: 1.75rem
}

.toc__menu li ul li ul li ul>li a {
    padding-left: 2.25rem
}

.toc__menu li ul li ul li ul li ul>li a {
    padding-left: 2.75rem
}

.toc__menu li ul li ul li ul li ul li ul>li a {
    padding-left: 3.25rem
}

.notice {
    margin-bottom: 2em;
    padding: 1em;
    color: #f2f2f2;
    font-size: .75em !important;
    text-indent: initial;
    border-radius: 8px;
    border-width: 1px;
    border-style: solid;
    max-width: 42em
}

.notice h1,.notice h2,.notice h3,.notice h4 {
    margin-top: 0 !important;
    margin-bottom: .75em;
    line-height: inherit
}

.notice h1:first-child,.notice h2:first-child,.notice h3:first-child,.notice h4:first-child {
    margin-top: 0
}

.page__content .notice h4 {
    margin-bottom: 0;
    font-size: 1em
}

.notice p:last-child,.notice ul:last-child,.notice .highlighter-rouge:last-child {
    margin-bottom: 0 !important
}

.notice h4+p {
    margin-top: 0;
    padding-top: 0
}

.notice pre code {
    background-color: inherit
}

.notice--info {
    background-color: #21343a;
    border-color: #34829a
}

.notice--info a {
    color: #3b9cba
}

.notice--info a:hover {
    color: #235e70
}

.notice--info strong {
    color: #62b0c8
}

.notice--warning {
    background-color: #402e16;
    border-color: #b06b09
}

.notice--warning a {
    color: #d67f05
}

.notice--warning a:hover {
    color: #804c03
}

.notice--warning strong {
    color: #de9937
}

.notice--success {
    background-color: #213621;
    border-color: #388a38
}

.notice--success a {
    color: #3fa63f
}

.notice--success a:hover {
    color: #c5cbff
}

.notice--success strong {
    color: #65b865
}

.notice--error {
    background-color: #442827;
    border-color: #c4514e
}

.notice--error a {
    color: #ee5f5b
}

.notice--error a:hover {
    color: #8f3937
}

.notice--error strong {
    color: #f17f7c
}

#main {
    clear: both;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1em;
    padding-left: 1em;
    padding-right: 1em;
    max-width: 100%;
    background-color: #1a1a1a;
    border-left: 1px solid #484848;
    border-right: 1px solid #484848
}

#main::after {
    clear: both;
    content: "";
    display: table
}

@media(min-width: 101.25em) {
    #main {
        max-width:1620px
    }
}

body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 100vh;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.initial-content,.search-content {
    flex: 1 0 auto
}

@media(min-width: 8em) {
    .page {
        float:right;
        width: calc(100% - 00px)
    }
}

@media(min-width: 64em) {
    .page {
        float:right;
        width: calc(100% - 280px)
    }
}

@media(min-width: 101.25em) {
    .page {
        float:right;
        width: calc(100% - 320px)
    }
}

.page>p {
    max-width: 62em
}

.page:first-child {
    margin-top: 0
}

.page .page__content,.page .page__meta {
    position: relative;
    float: left;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    clear: both
}

.page .page__content p,.page .page__content ul,.page .page__meta p,.page .page__meta ul {
    max-width: 62em
}

.page .page__content p,.page .page__meta p {
    margin-bottom: .5em
}

.page__title {
    margin-top: 0;
    line-height: 1
}

.page__title+.page__meta {
    margin-top: -0.5em
}

.page__lead {
    font-size: 1.25em
}

.page__content h2 {
    padding-bottom: .5em;
    border-bottom: 1px solid #484848
}

.page__content h1,.page__content h2,.page__content h3,.page__content h4,.page__content h5,.page__content h6 {
    scroll-margin-top: 5em
}

.page__content h1 .header-link,.page__content h2 .header-link,.page__content h3 .header-link,.page__content h4 .header-link,.page__content h5 .header-link,.page__content h6 .header-link {
    position: relative;
    left: .5em;
    opacity: 0;
    font-size: .8em
}

.page__content h1:hover .header-link,.page__content h2:hover .header-link,.page__content h3:hover .header-link,.page__content h4:hover .header-link,.page__content h5:hover .header-link,.page__content h6:hover .header-link {
    opacity: 1
}

.page__content p,.page__content li,.page__content dl {
    font-size: 1em
}

.page__content p {
    margin: 0
}

.page__content dt {
    margin-top: 1em;
    font-weight: bold
}

.page__content dd {
    margin-left: 1em;
    font-size: .75em
}

.page__content .small {
    font-size: .75em
}

.page__content blockquote+.small {
    margin-top: -1.5em;
    padding-left: 1.25rem
}

.page__hero {
    position: relative;
    border-bottom: 1px solid #51555d;
    background: -webkit-linear-gradient(left, #1F2024, #40423C);
    line-height: auto;
    clear: both
}

.page__hero::after {
    clear: both;
    content: "";
    display: table
}

.page__hero .hero_text {
    padding: 1em
}

.page__hero h1 {
    font-size: 2em;
    line-height: normal;
    margin: 0;
    padding: 0
}

@media(min-width: 48em) {
    .page__hero h1 {
        font-size:2.5em
    }
}

@media(min-width: 64em) {
    .page__hero h1 {
        font-size:3em
    }
}

.page__hero .reveal {
    height: 64vh
}

.page__hero .wrapper {
    max-width: 1920px;
    min-height: 12em;
    border-radius: 0;
    margin-left: auto;
    margin-right: auto;
    width: auto;
    display: block
}

.page__hero .text-only-wrapper {
    padding: 1em
}

.page__hero .wrapper--inline-image {
    background-position-x: 90%;
    background-position-y: -10%;
    background-repeat: no-repeat
}

.page__hero--overlay {
    position: relative;
    margin-bottom: 2em;
    padding: 3em 0;
    clear: both;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

.page__hero--overlay::after {
    clear: both;
    content: "";
    display: table
}

.page__hero--overlay a {
    color: #fff
}

.page__hero--overlay .wrapper {
    padding-left: 1em;
    padding-right: 1em
}

@media(min-width: 101.25em) {
    .page__hero--overlay .wrapper {
        max-width:1620px
    }
}

.page__hero--overlay .page__title,.page__hero--overlay .page__meta,.page__hero--overlay .page__lead {
    color: #ffffff;
    text-shadow: 1px 1px 4px rgba(0,0,0,.5)
}

.page__hero--overlay .page__lead {
    max-width: 768px;
    margin: 0
}

.page__hero--overlay .page__title {
    font-size: 1.953em
}

@media(min-width: 37.5em) {
    .page__hero--overlay .page__title {
        font-size:2.441em
    }
}

.page__hero-image {
    width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic
}

.hero_image {
    margin: 1em auto;
    display: block;
    max-height: 15em;
    max-width: 40em;
    filter: drop-shadow(10px 10px 5px #000)
}

.hero_image_transparent {
    max-height: 20em
}

.page__meta {
    margin-top: 2em;
    color: #919191;
    font-size: .75em
}

.page__meta p {
    margin: 0
}

.page__meta a {
    color: inherit
}

.page__meta-title {
    margin-bottom: 10px;
    font-size: .75em;
    text-transform: uppercase
}

.page__meta-sep::before {
    content: "•";
    padding-left: .5em;
    padding-right: .5em
}

.page__related {
    clear: both;
    float: left;
    margin-top: 2em;
    padding-top: 1em;
    border-top: 1px solid #484848
}

.page__related::after {
    clear: both;
    content: "";
    display: table
}

@media(min-width: 64em) {
    .page__related {
        float:right;
        width: calc(100% - 280px)
    }
}

@media(min-width: 101.25em) {
    .page__related {
        width:calc(100% - 320px)
    }
}

.page__related a {
    color: inherit;
    text-decoration: none
}

.page__related-title {
    margin-bottom: 10px;
    font-size: .75em;
    text-transform: uppercase
}

@media(min-width: 64em) {
    .wide .page {
        padding-right:0
    }
}

@media(min-width: 101.25em) {
    .wide .page {
        padding-right:0
    }
}

@media(min-width: 64em) {
    .wide .page__related {
        padding-right:0
    }
}

@media(min-width: 101.25em) {
    .wide .page__related {
        padding-right:0
    }
}

@media print {
    [hidden] {
        display: none
    }

    * {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    html {
        margin: 0;
        padding: 0;
        min-height: auto !important;
        font-size: 16px
    }

    body {
        margin: 0 auto;
        background: #fff !important;
        color: #000 !important;
        font-size: 1rem;
        line-height: 1.5;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        text-rendering: optimizeLegibility
    }

    h1,h2,h3,h4,h5,h6,h7 {
        color: #000;
        line-height: 1.2;
        margin-bottom: .75rem;
        margin-top: 0
    }

    h1 {
        font-size: 2.5rem
    }

    h2 {
        font-size: 2rem
    }

    h3 {
        font-size: 1.75rem
    }

    h4 {
        font-size: 1.5rem
    }

    h5 {
        font-size: 1.25rem
    }

    h6 {
        font-size: 1rem
    }
    h7 {
        font-size: .75rem
    }

    a,a:visited {
        color: #000;
        text-decoration: underline;
        word-wrap: break-word
    }

    table {
        border-collapse: collapse
    }

    thead {
        display: table-header-group
    }

    table,th,td {
        border-bottom: 1px solid #000
    }

    td,th {
        padding: 8px 16px
    }

    img {
        border: 0;
        display: block;
        max-width: 100% !important;
        vertical-align: middle
    }

    hr {
        border: 0;
        border-bottom: 2px solid #bbb;
        height: 0;
        margin: 2.25rem 0;
        padding: 0
    }

    dt {
        font-weight: bold
    }

    dd {
        margin: 0;
        margin-bottom: .75rem
    }

    abbr[title],acronym[title] {
        border: 0;
        text-decoration: none
    }

    table,blockquote,pre,code,figure,li,hr,ul,ol,a,tr {
        page-break-inside: avoid
    }

    h2,h3,h4,p,a {
        orphans: 3;
        widows: 3
    }

    h1,h2,h3,h4,h5,h6,h7 {
        page-break-after: avoid;
        page-break-inside: avoid
    }

    h1+p,h2+p,h3+p {
        page-break-before: avoid
    }

    img {
        page-break-after: auto;
        page-break-before: auto;
        page-break-inside: avoid
    }

    pre {
        white-space: pre-wrap !important;
        word-wrap: break-word
    }

    a[href^="http://"]:after,a[href^="https://"]:after,a[href^="ftp://"]:after {
        content: " (" attr(href) ")";
        font-size: 80%
    }

    abbr[title]:after,acronym[title]:after {
        content: " (" attr(title) ")"
    }

    #main {
        max-width: 100%
    }

    .page {
        margin: 0;
        padding: 0;
        width: 100%
    }

    .page-break,.page-break-before {
        page-break-before: always
    }

    .page-break-after {
        page-break-after: always
    }

    .no-print {
        display: none
    }

    a.no-reformat:after {
        content: ""
    }

    abbr[title].no-reformat:after,acronym[title].no-reformat:after {
        content: ""
    }

    .masthead,.toc,.page__related,.pagination,.ads,.page__footer,.nav__list,.sidebar,.adsbygoogle {
        display: none !important;
        height: 1px !important
    }
}

button:focus,a:focus {
    outline: thin dotted #6f777d;
    outline: 5px auto #6f777d;
    outline-offset: -2px
}

* {
    box-sizing: border-box
}

html {
    box-sizing: border-box;
    background: #1a1a1a url("/assets/icon-white-bg.webp") repeat fixed;
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}

@media(min-width: 48em) {
    html {
        font-size:18px
    }
}

@media(min-width: 64em) {
    html {
        font-size:20px
    }
}

@media(min-width: 101.25em) {
    html {
        font-size:22px
    }
}

body {
    margin: 0
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section {
    display: block
}

audio,canvas,video {
    display: inline-block;
    *display: inline;
    *zoom:1}

audio:not([controls]) {
    display: none
}

a {
    color: #8F9BFF
}

a:hover,a:active {
    outline: 0
}

sub,sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

img {
    max-width: 100%;
    width: auto\9 ;
    height: auto;
    vertical-align: middle;
    border: 0;
    -ms-interpolation-mode: bicubic
}

.search-sidebar {
    font-size: .7rem
}

.tag-link>a {
    text-decoration: none
}

button.filter-button,.tag-link>a {
    transition: background-color 200ms,color 200ms;
    background-color: rgba(0,0,0,0);
    font: inherit;
    cursor: pointer;
    display: inline-block;
    padding: 0 5px 0 3px;
    margin-right: .5em;
    color: #717171;
    border: 0;
    border-radius: 25px;
    white-space: nowrap
}

button.filter-button:hover,.tag-link>a:hover {
    background-color: #333;
    color: #fff !important
}

button.filter-button:focus,.tag-link>a:focus {
    outline-color: #fff !important;
    border-color: #fff !important
}

button.filter-button.is-active,.tag-link>a.is-active {
    background-color: #8F9BFF;
    border-color: #8F9BFF;
    color: #000
}

details {
    padding: .5em .5em 0;
    margin-bottom: 1em
}

details summary {
    font-weight: bold;
    margin: 0;
    padding: 0;
    cursor: pointer
}

p.url {
    font-size: .6875em;
    color: #919191;
    margin: 0
}

.sidebar {
    clear: both;
    top: 3em;
    margin-bottom: 1em
}

.sidebar::after {
    clear: both;
    content: "";
    display: table
}

@media(min-width: 48em) {
    .sidebar {
        float:left;
        width: calc(200px - 1em)
    }

    .sidebar.sticky {
        overflow-y: auto;
        top: 3em;
        max-height: calc(100vh - 2em - 2em)
    }
}

@media(min-width: 64em) {
    .sidebar {
        width:calc(280px - 1em)
    }
}

@media(min-width: 101.25em) {
    .sidebar {
        width:calc(320px - 1em)
    }

    .sidebar.sticky {
        top: 4em
    }
}

.sidebar h2,.sidebar h3,.sidebar h4,.sidebar h5,.sidebar h6 {
    margin-bottom: 0
}

.sidebar p,.sidebar li {
    font-size: .75em;
    line-height: 1.5
}

.sidebar img {
    width: 100%
}

.sidebar img.emoji {
    width: 20px;
    height: 20px
}

table {
    margin-bottom: 1em;
    width: 100%;
    font-size: .75em;
    border-collapse: collapse;
    overflow-x: auto
}

table+table {
    margin-top: 1em
}

thead {
    background-color: #484848;
    border-bottom: 2px solid #363636
}

th {
    padding: .5em;
    font-weight: bold;
    text-align: left
}

td {
    padding: .5em;
    border-bottom: 1px solid #363636
}

tr,td,th {
    vertical-align: middle
}

.hidden,.is--hidden {
    display: none;
    visibility: hidden
}

.load {
    display: none
}

.transparent {
    opacity: 0
}

.visually-hidden,.screen-reader-text,.screen-reader-text span,.screen-reader-shortcut {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px !important;
    width: 1px !important;
    border: 0 !important;
    overflow: hidden
}

body:hover .visually-hidden a,body:hover .visually-hidden input,body:hover .visually-hidden button {
    display: none !important
}

.screen-reader-text:focus,.screen-reader-shortcut:focus {
    clip: auto !important;
    height: auto !important;
    width: auto !important;
    display: block;
    font-size: 1em;
    font-weight: bold;
    padding: 15px 23px 14px;
    background: #fff;
    z-index: 100000;
    text-decoration: none;
    box-shadow: 0 0 2px 2px rgba(0,0,0,.6)
}

.skip-link {
    position: fixed;
    z-index: 20;
    margin: 0;
    white-space: nowrap
}

.skip-link li {
    height: 0;
    width: 0;
    list-style: none
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text-justify {
    text-align: justify
}

.text-nowrap {
    white-space: nowrap
}

.task-list {
    padding: 0
}

.task-list li {
    list-style-type: none
}

.task-list .task-list-item-checkbox {
    margin-right: .5em;
    opacity: 1
}

.task-list .task-list {
    margin-left: 1em
}

.cf {
    clear: both
}

.wrapper {
    margin-left: auto;
    margin-right: auto;
    width: 100%
}

@media(min-width: 64em) {
    .full {
        margin-right:-20.3389830508% !important
    }
}

.icon {
    display: inline-block;
    fill: currentColor;
    width: 1em;
    height: 1.1em;
    line-height: 1;
    position: relative;
    vertical-align: middle;
    pointer-events: none
}

.social-icons .fas,.social-icons .fab,.social-icons .far,.social-icons .fal {
    color: #f2f2f2
}

.social-icons .fa-github,.social-icons .fa-github-alt,.social-icons .fa-github-square {
    color: #171516
}

.social-icons .fa-linkedin,.social-icons .fa-linkedin-in {
    color: #007bb6
}

.social-icons .fa-mastodon,.social-icons .fa-mastodon-square {
    color: #2b90d9
}

.social-icons .fa-rss,.social-icons .fa-rss-square {
    color: #fa9b39
}

.social-icons .fa-twitter,.social-icons .fa-twitter-square {
    color: #55acee
}

.social-icons .fa-youtube {
    color: #b00
}

.navicon {
    position: relative;
    width: 1.5rem;
    height: .25rem;
    background: #8F9BFF;
    margin: auto
}

.navicon:before,.navicon:after {
    content: "";
    position: absolute;
    left: 0;
    width: 1.5rem;
    height: .25rem;
    background: #8F9BFF
}

.navicon:before {
    top: -0.5rem
}

.navicon:after {
    bottom: -0.5rem
}

.close .navicon {
    background: rgba(0,0,0,0)
}

.close .navicon:before,.close .navicon:after {
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 0;
    width: 1.5rem
}

.close .navicon:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg)
}

.close .navicon:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg)
}

@media(min-width: 48em) {
    .sticky {
        clear:both;
        position: -webkit-sticky;
        position: sticky;
        top: 2em
    }

    .sticky::after {
        clear: both;
        content: "";
        display: table
    }

    .sticky>* {
        display: block
    }
}

.well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.05)
}

.footnote {
    color: #9ba1a6;
    text-decoration: none
}

.footnotes {
    color: #9ba1a6
}

.footnotes ol,.footnotes li,.footnotes p {
    margin-bottom: 0;
    font-size: .75em
}

a.reversefootnote {
    color: #7a8288;
    text-decoration: none
}

a.reversefootnote:hover {
    text-decoration: underline
}

.required {
    color: #ee5f5b;
    font-weight: bold
}

.responsive-video-container {
    position: relative;
    margin-bottom: 1em;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 0%
}

.responsive-video-container iframe,.responsive-video-container object,.responsive-video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

:-webkit-full-screen-ancestor .masthead,:-webkit-full-screen-ancestor .page__footer {
    position: static
}

.unreal__prop {
    clear: both
}

.prop__item {
    clear: both;
    margin-bottom: 2em
}

.prop__item .left {
    font-size: .8em;
    color: #999
}

@media(min-width: 768px) {
    .prop__item .left {
        float:left;
        clear: both;
        width: 23.7288135593%
    }
}

.prop__item .left .box {
    background-color: rgba(0,0,0,.15);
    border-radius: 5px;
    padding: 5px;
    margin: 0;
    margin-bottom: 5px
}

.prop__item .left .box h5 {
    font-size: .75em;
    font-weight: normal;
    color: #999;
    margin: 0;
    padding: 0
}

.prop__item .left .box p {
    color: #f2f2f2;
    margin: 0;
    padding: 0
}

.prop__item .right {
    font-size: .8em;
    clear: both
}

.prop__item .right .body {
    display: block;
    position: relative
}

@media(min-width: 768px) {
    .prop__item .right {
        float:left;
        clear: none;
        width: 74.5762711864%;
        margin-left: 1.6949152542%
    }
}

.prop__item .right ::after {
    clear: both
}

ul.proplist {
    margin: 0;
    padding: 0;
    clear: both;
    list-style: none
}

ul.proplist li {
    margin: 0 !important
}

ul.proplist li a {
    text-decoration: none
}

ul.incompatible li {
    color: #ee5f5b
}

.unreal__group,.unreal__subgroup {
    clear: both
}

.unreal__position {
    border: 1px solid #999;
    border-radius: 5px;
    margin-top: .5em;
    margin-bottom: 1em;
    font-size: .8em
}

.unreal__position .entry {
    border-radius: 8px;
    text-align: center;
    display: inline-block;
    width: calc(50% - 4px);
    margin: 2px;
    padding: 0;
    border: 0
}

.unreal__position .selected {
    background-color: #a6a6a6;
    color: #000
}

.unreal__position .unselected {
    color: #595959
}

.unreal__prefix,.unreal__suffix {
    color: #999 !important
}

.unreal__prefix {
    text-align: right;
    margin-top: .3em
}

.unreal__suffix {
    display: inline
}

h3.unreal__prop {
    display: inline;
    font-size: 1.5em;
    margin-top: 2em
}

.unreal__type {
    color: #999;
    margin-bottom: 1em
}

.unreal__type .fas {
    margin-right: 3px;
    font-weight: 400
}

figure.unreal-doc {
    margin-top: 0;
    background-image: url("/assets/unreal/unreal-watermark-small.webp");
    background-repeat: no-repeat;
    background-position: bottom right;
    background-color: #1f242c;
    border-left: .25em solid #8F9BFF;
    padding: 1em
}

figure.unreal-doc blockquote {
    margin: 0;
    padding: 0;
    font-size: .9em;
    border-left: none
}

figure.unreal-doc blockquote p {
    margin-bottom: 0;
    color: #919191
}

figure.unreal-doc figcaption {
    margin: 0;
    text-align: right;
    font-size: .8em
}

.unreal__outer h1,.unreal__outer h2,.unreal__outer h3,.unreal__outer h4,.unreal__outer h5,.unreal__outer h6 {
    clear: both
}

#ux-example-result-good,#ux-example-result-bad {
    opacity: 0
}

.size-b {
    width: 200px;
    height: 200px
}

.motion-b {
    animation: wobble 2s ease infinite;
    background-color: #fff
}

@keyframes wobble {
    0% {
        transform: rotate(20deg)
    }

    50% {
        transform: rotate(-20deg)
    }

    100% {
        transform: rotate(20deg)
    }
}

.affordance-invite {
    color: #20aaff
}

.affordance-react {
    color: #ffa132
}

.affordance-confirm {
    color: #5bff8d
}

button.ux-example {
    font-size: 2em;
    font-weight: bold;
    color: #fff;
    margin: 0;
    padding: .3em .5em;
    border-radius: 10px
}

button.ux-example-bad {
    border: 0;
    background-color: rgba(0,0,0,0)
}

button.ux-example-bad:hover {
    cursor: default
}

button.ux-example-bad:active {
    cursor: default
}

button.ux-example-bad:focus {
    outline: none
}

button.ux-example-good {
    border-top: 4px solid #fff;
    border-left: 8px solid #fff;
    border-right: 8px solid #fff;
    border-bottom: 15px solid #fff;
    background-color: #222
}

button.ux-example-good:hover {
    background-color: #555
}

button.ux-example-good:active {
    background-color: #000;
    border-bottom: 4px solid #fff;
    margin-top: 11px
}

button.ux-example-good:focus {
    outline: none
}

.priority-box {
    vertical-align: middle
}

.priority-box .priority {
    display: inline-block;
    margin: 1em;
    width: 100px;
    height: 100px;
    background-color: #fff;
    color: #000;
    border-radius: 8px;
    text-align: center;
    vertical-align: middle;
    font-weight: bold
}

.priority-box .priority .text {
    display: none
}

.priority-box .colour-b {
    background-color: #f55
}

.priority-box .position-b {
    transform: translateY(50px)
}

button:focus,a:focus {
    outline: thin dotted #6f777d;
    outline: 5px auto #6f777d;
    outline-offset: -2px
}

html {
    box-sizing: border-box;
    background-color: #1a1a1a;
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    position: relative;
    min-height: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}

@media(min-width: 48em) {
    html {
        font-size:18px
    }
}

@media(min-width: 64em) {
    html {
        font-size:20px
    }
}

@media(min-width: 101.25em) {
    html {
        font-size:22px
    }
}

body {
    margin: 0;
    padding: 0;
    color: #f2f2f2;
    line-height: 1.5;
    font-family: sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 100vh;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

h1,h2,h3,h4 {
    margin: 2em 0 .5em;
    line-height: 1.2;
    font-family: "Lexend",sans-serif;
    font-weight: bold
}

h1 {
    margin-top: 0;
    font-size: 1.563em
}

h2 {
    font-size: 1.25em
}

h3 {
    font-size: 1.125em
}

h4 {
    font-size: 1.0625em
}

h5 {
    font-size: 1.03125em
}

h6 {
    font-size: 1em
}

h7 {
    font-weight: normal
}
small,.small {
    font-size: .75em
}

p {
    margin-bottom: 1.3em
}

u,ins {
    text-decoration: none;
    border-bottom: 1px solid #f2f2f2
}

u a,ins a {
    color: inherit
}

p,pre,blockquote,ul,ol,dl,figure,table,fieldset {
    orphans: 3;
    widows: 3
}

abbr[title],abbr[data-original-title] {
    text-decoration: none;
    cursor: help;
    border-bottom: 1px dotted #f2f2f2
}

blockquote {
    margin: 2em 1em 2em 0;
    padding-left: 1em;
    padding-right: 1em;
    font-style: italic;
    border-left: .25em solid #8F9BFF
}

blockquote cite {
    font-style: italic
}

blockquote cite:before {
    content: "—";
    padding-right: 5px
}

sub,sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

a {
    color: #8F9BFF
}

a:visited {
    color: #8F9BFF
}

a:hover {
    color: #c5cbff;
    outline: 0
}

a:active {
    outline: 0
}

a:focus {
    outline: none
}

a:focus-visible {
    border-color: #8F9BFF;
    border: 0;
    outline: 5px auto #8F9BFF;
    outline-color: #8F9BFF;
    outline-offset: -2px
}

tt,code,kbd,samp,pre {
    font-family: Monaco,Consolas,"Lucida Console",monospace;
    tab-size: 4
}

pre {
    overflow-x: auto
}

p>code,a>code,li>code,figcaption>code,td>code {
    padding-top: .1rem;
    padding-bottom: .1rem;
    font-size: .8em;
    background: #272822;
    border-radius: 8px
}

p>code:before,p>code:after,a>code:before,a>code:after,li>code:before,li>code:after,figcaption>code:before,figcaption>code:after,td>code:before,td>code:after {
    letter-spacing: -0.2em;
    content: " "
}

hr {
    display: block;
    margin: 1em 0;
    border: 0;
    border-top: 1px solid #484848
}

ul li,ol li {
    margin-bottom: .5em
}

li ul,li ol {
    margin-top: .5em
}

ul.no-bullet li {
    list-style: none
}

figure {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 2em 0
}

figure img,figure iframe,figure .fluid-width-video-wrapper {
    margin-bottom: 1em
}

figure img {
    width: 100%;
    border-radius: 8px
}

figure>a {
    display: block
}

a>img:hover {
    border-color: #8F9BFF
}

figcaption {
    margin-bottom: .5em;
    color: #919191;
    font-size: .75em
}

figcaption a:hover {
    color: #68cb8f
}

svg:not(:root) {
    overflow: hidden
}

nav ul {
    margin: 0;
    padding: 0
}

nav li {
    list-style: none
}

nav a {
    text-decoration: none
}

nav ul li,nav ol li {
    margin-bottom: 0
}

nav li ul,nav li ol {
    margin-top: 0
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

* {
    box-sizing: border-box
}

::-moz-selection,::selection {
    color: #fff;
    background-color: #888
}

img {
    max-width: 100%;
    width: auto\9 ;
    height: auto;
    vertical-align: middle;
    border: 0;
    -ms-interpolation-mode: bicubic
}

button,input,select,textarea {
    margin: 0;
    font-size: 100%;
    vertical-align: middle
}

button,input {
    *overflow: visible;
    line-height: normal
}

button::-moz-focus-inner,input::-moz-focus-inner {
    padding: 0;
    border: 0
}

button,html input[type=button],input[type=reset],input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

label,select,button,input[type=button],input[type=reset],input[type=submit],input[type=radio],input[type=checkbox] {
    cursor: pointer
}

input[type=search] {
    box-sizing: border-box;
    -webkit-appearance: textfield
}

input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    vertical-align: top
}

p {
    margin-top: 0;
    margin-bottom: 1.3em
}

small {
    font-size: .75em
}

.btn {
    display: inline-block;
    margin-bottom: .25em;
    padding: .5em 1em;
    font-size: .75em;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    border-width: 0;
    border-radius: 8px;
    cursor: pointer
}

.btn .icon {
    margin-right: .5em
}

.btn--primary {
    background-color: #8F9BFF;
    color: #fff
}

.btn--primary:visited {
    background-color: #288c4f;
    color: #fff
}

.btn--primary:hover {
    background-color: #8F9BFF;
    color: #fff
}

.btn--success {
    background-color: #27ae60;
    color: #fff
}

.btn--success:visited {
    background-color: #27ae60;
    color: #fff
}

.btn--success:hover {
    background-color: #1f8b4d;
    color: #fff
}

.btn--warning {
    background-color: #e67e22;
    color: #fff
}

.btn--warning:visited {
    background-color: #e67e22;
    color: #fff
}

.btn--warning:hover {
    background-color: #b8651b;
    color: #fff
}

.btn--danger {
    background-color: #c0392b;
    color: #fff
}

.btn--danger:visited {
    background-color: #c0392b;
    color: #fff
}

.btn--danger:hover {
    background-color: #9a2e22;
    color: #fff
}

.btn--info {
    background-color: #03a9f4;
    color: #fff
}

.btn--info:visited {
    background-color: #03a9f4;
    color: #fff
}

.btn--info:hover {
    background-color: #0287c3;
    color: #fff
}

.nav__list {
    margin-bottom: 1.5em
}

.nav__list .nav__items {
    margin: 0;
    font-size: 1.25rem
}

.nav__list .nav__items a {
    color: inherit
}

.nav__list .nav__items .active {
    margin-left: -0.5em;
    padding-left: .5em;
    padding-right: .5em;
    font-weight: bold
}

.hidden,.is--hidden {
    display: none;
    visibility: hidden
}

.load {
    display: none
}

.visually-hidden,.screen-reader-text,.screen-reader-text span,.screen-reader-shortcut {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px !important;
    width: 1px !important;
    border: 0 !important;
    overflow: hidden
}

body:hover .visually-hidden a,body:hover .visually-hidden input,body:hover .visually-hidden button {
    display: none !important
}

.screen-reader-text:focus,.screen-reader-shortcut:focus {
    clip: auto !important;
    height: auto !important;
    width: auto !important;
    display: block;
    font-size: 1em;
    font-weight: bold;
    padding: 15px 23px 14px;
    background: #fff;
    z-index: 100000;
    text-decoration: none;
    box-shadow: 0 0 2px 2px rgba(0,0,0,.6)
}

.cf {
    clear: both
}

.align-right {
    display: block;
    margin-left: auto;
    margin-right: auto
}

@media(min-width: 37.5em) {
    .align-right {
        float:right;
        margin-left: 1em
    }
}

.align-center {
    display: block;
    margin-left: auto;
    margin-right: auto
}

@media(min-width: 64em) {
    .full {
        margin-right:-20.3389830508% !important
    }
}

.close .navicon {
    background: rgba(0,0,0,0)
}

.close .navicon:before,.close .navicon:after {
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 0;
    width: 1.5rem
}

.close .navicon:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg)
}

.close .navicon:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg)
}

@media(min-width: 64em) {
    .sticky {
        clear:both;
        position: -webkit-sticky;
        position: sticky;
        top: 2em
    }

    .sticky::after {
        clear: both;
        content: "";
        display: table
    }

    .sticky>* {
        display: block
    }
}

.well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.05)
}

.required {
    color: #c0392b;
    font-weight: bold
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

nav.nav__list a:hover {
    text-decoration: underline
}

img.small-figure {
    max-height: 10em;
    object-fit: contain
}

h1.gradient {
    background: -webkit-linear-gradient(#d6daff, #8F9BFF);
    -webkit-background-clip: text;
    -webkit-text-fill-color: rgba(0,0,0,0)
}

figure {
    display: block;
    display: relative
}

figure img {
    width: auto;
    max-height: 30em;
    display: block;
    margin-left: auto;
    margin-right: auto
}

figcaption p.figure-title {
    font-weight: bold;
    font-size: 1.1em;
    margin: 0 0 .5em
}

ul.procon {
    list-style: none
}

ul.procon li::before {
    display: inline-block;
    width: 1em;
    margin-left: -1em
}

ul.procon li.pro::before {
    content: "+";
    color: #98d30b
}

ul.procon li.con::before {
    content: "–";
    color: #d60037
}

img.inline-logo {
    display: inline-block;
    width: auto
}

ul.taglist {
    font-size: .8em
}

ul.taglist li {
    display: inline;
    margin: .2em
}

ul.taglist li a {
    background-color: #333;
    border-radius: 8px;
    padding: .2em
}

table.propentry td {
    border: none;
    padding: 0;
    vertical-align: top
}

table.propentry td blockquote {
    margin-top: 0
}

.link-icon {
    margin-right: 5px
}

nav.nav__list a:hover {
    text-decoration: underline
}

img.small-figure {
    max-height: 10em;
    object-fit: contain
}

.permalink {
    user-select: none
}

.clearboth {
    clear: both
}

.clearboth::after {
    clear: both;
    content: "";
    display: table
}

.no-toc {
    width: 100%
}

.page .page__inner-wrap {
    margin-top: 0
}

.figcontent {
    position: relative
}

button.copy {
    position: absolute;
    right: 0;
    top: 0;
    border: 0;
    margin: 0;
    display: block;
    z-index: 1;
    user-select: none;
    padding: 1em;
    cursor: pointer;
    color: #8F9BFF;
    background: #101010;
    font-size: .75em;
    border-radius: 8px
}

button.copy .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: #000;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    position: absolute;
    z-index: 1;
    top: -5px;
    right: 105%
}

button.copy:focus .tooltiptext {
    visibility: visible
}

button.copy:hover {
    color: #c5cbff;
    background: #1a1a1a
}

button.copy:hover i.fas {
    color: #c5cbff
}

button.copy:focus,button.copy:active {
    border: 0;
    outline: 0
}

strong {
    color: #dddddd
}

table.code-comparison {
    margin-bottom: 2em
}

table.code-comparison th,table.code-comparison td {
    padding: 0 .5em
}

table.code-comparison th {
    color: #999
}

table.code-comparison td {
    width: 50%;
    border: none;
    vertical-align: top
}

table.code-comparison td figure.highlight {
    margin: 0;
    font-size: 1em !important
}

.entries-grid {
    display: inline-block
}

.bit {
    border: 1px solid #484848;
    border-radius: 8px;
    margin-bottom: 2em;
    padding: 1em
}

.bit h4 {
    margin-top: 0
}

.bit ul.tags {
    margin-left: 0;
    padding-left: 0;
    margin-bottom: 0;
    font-size: .8rem
}

.svg-inline--fa {
    height: 1em;
    display: inline-block;
    vertical-align: -0.125em;
    margin-right: 5px
}

.svg-suffix--fa {
    height: .8em;
    display: inline-block;
    vertical-align: -0.125em;
    margin-left: 5px
}

.svg-filter-white {
    filter: invert(100%) sepia(0%) saturate(7463%) hue-rotate(12deg) brightness(116%) contrast(112%)
}

.svg-filter-grey {
    filter: invert(47%) sepia(44%) saturate(0%) hue-rotate(260deg) brightness(88%) contrast(89%)
}

.svg-filter-link {
    filter: invert(76%) sepia(76%) saturate(1767%) hue-rotate(214deg) brightness(102%) contrast(100%)
}

div.highlighter-rouge,figure.highlight {
    position: relative;
    margin-bottom: 1em;
    border-radius: 8px;
    background: #272822;
    color: #f8f8f2;
    font-family: Monaco,Consolas,"Lucida Console",monospace;
    font-size: .8em;
    line-height: 1.8
}

div.highlighter-rouge>pre,div.highlighter-rouge pre.highlight,figure.highlight>pre,figure.highlight pre.highlight {
    margin: 0;
    padding: 1em
}

div.highlighter-rouge::selection,figure.highlight::selection {
    color: #000;
    background: #fff
}

.highlight table {
    margin-bottom: 0;
    font-size: 1em;
    border: 0
}

.highlight table td {
    padding: 0;
    width: calc(100% - 1em);
    border: 0
}

.highlight table td.gutter,.highlight table td.rouge-gutter {
    padding-right: 1em;
    width: 1em;
    color: #a59f85;
    border-right: 1px solid #a59f85;
    text-align: right
}

.highlight table td.code,.highlight table td.rouge-code {
    padding-left: 1em
}

.highlight table pre {
    margin: 0
}

.highlight pre {
    width: 100%
}

.highlight .hll {
    background-color: #f5f4f1
}

.highlight .c {
    color: #a59f85
}

.highlight .err {
    color: #f92672
}

.highlight .k {
    color: #ae81ff
}

.highlight .l {
    color: #fd971f
}

.highlight .n {
    color: #f8f8f2
}

.highlight .o {
    color: #a1efe4
}

.highlight .p {
    color: #f8f8f2
}

.highlight .cm {
    color: #a59f85
}

.highlight .cp {
    color: #a59f85
}

.highlight .c1 {
    color: #a59f85
}

.highlight .cs {
    color: #a59f85
}

.highlight .gd {
    color: #f92672
}

.highlight .ge {
    font-style: italic
}

.highlight .gh {
    color: #f8f8f2;
    font-weight: bold
}

.highlight .gi {
    color: #a6e22e
}

.highlight .gp {
    color: #a59f85;
    font-weight: bold
}

.highlight .gs {
    font-weight: bold
}

.highlight .gu {
    color: #a1efe4;
    font-weight: bold
}

.highlight .kc {
    color: #ae81ff
}

.highlight .kd {
    color: #ae81ff
}

.highlight .kn {
    color: #a1efe4
}

.highlight .kp {
    color: #ae81ff
}

.highlight .kr {
    color: #ae81ff
}

.highlight .kt {
    color: #f4bf75
}

.highlight .ld {
    color: #a6e22e
}

.highlight .m {
    color: #fd971f
}

.highlight .s {
    color: #a6e22e
}

.highlight .na {
    color: #66d9ef
}

.highlight .nb {
    color: #f8f8f2
}

.highlight .nc {
    color: #f4bf75
}

.highlight .no {
    color: #f92672
}

.highlight .nd {
    color: #a1efe4
}

.highlight .ni {
    color: #f8f8f2
}

.highlight .ne {
    color: #f92672
}

.highlight .nf {
    color: #66d9ef
}

.highlight .nl {
    color: #ae81ff
}

.highlight .nn {
    color: #f4bf75
}

.highlight .nx {
    color: #66d9ef
}

.highlight .py {
    color: #f8f8f2
}

.highlight .nt {
    color: #a1efe4
}

.highlight .nv {
    color: #f92672
}

.highlight .ow {
    color: #a1efe4
}

.highlight .w {
    color: #f8f8f2
}

.highlight .mf {
    color: #fd971f
}

.highlight .mh {
    color: #fd971f
}

.highlight .mi {
    color: #fd971f
}

.highlight .mo {
    color: #fd971f
}

.highlight .sb {
    color: #a6e22e
}

.highlight .sc {
    color: #f8f8f2
}

.highlight .sd {
    color: #a59f85
}

.highlight .s2 {
    color: #a6e22e
}

.highlight .se {
    color: #fd971f
}

.highlight .sh {
    color: #a6e22e
}

.highlight .si {
    color: #fd971f
}

.highlight .sx {
    color: #a6e22e
}

.highlight .sr {
    color: #a6e22e
}

.highlight .s1 {
    color: #a6e22e
}

.highlight .ss {
    color: #a6e22e
}

.highlight .bp {
    color: #f8f8f2
}

.highlight .vc {
    color: #f92672
}

.highlight .vg {
    color: #f92672
}

.highlight .vi {
    color: #f92672
}

.highlight .il {
    color: #fd971f
}

@media print {
    [hidden] {
        display: none
    }

    * {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }

    html {
        margin: 0;
        padding: 0;
        min-height: auto !important;
        font-size: 16px
    }

    body {
        margin: 0 auto;
        background: #fff !important;
        color: #000 !important;
        font-size: 1rem;
        line-height: 1.5;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        text-rendering: optimizeLegibility
    }

    h1,h2,h3,h4,h5,h6 {
        color: #000;
        line-height: 1.2;
        margin-bottom: .75rem;
        margin-top: 0
    }

    h1 {
        font-size: 2.5rem
    }

    h2 {
        font-size: 2rem
    }

    h3 {
        font-size: 1.75rem
    }

    h4 {
        font-size: 1.5rem
    }

    h5 {
        font-size: 1.25rem
    }

    h6 {
        font-size: 1rem
    }

    a,a:visited {
        color: #000;
        text-decoration: underline;
        word-wrap: break-word
    }

    table {
        border-collapse: collapse
    }

    thead {
        display: table-header-group
    }

    table,th,td {
        border-bottom: 1px solid #000
    }

    td,th {
        padding: 8px 16px
    }

    img {
        border: 0;
        display: block;
        max-width: 100% !important;
        vertical-align: middle
    }

    hr {
        border: 0;
        border-bottom: 2px solid #bbb;
        height: 0;
        margin: 2.25rem 0;
        padding: 0
    }

    dt {
        font-weight: bold
    }

    dd {
        margin: 0;
        margin-bottom: .75rem
    }

    abbr[title],acronym[title] {
        border: 0;
        text-decoration: none
    }

    table,blockquote,pre,code,figure,li,hr,ul,ol,a,tr {
        page-break-inside: avoid
    }

    h2,h3,h4,p,a {
        orphans: 3;
        widows: 3
    }

    h1,h2,h3,h4,h5,h6 {
        page-break-after: avoid;
        page-break-inside: avoid
    }

    h1+p,h2+p,h3+p {
        page-break-before: avoid
    }

    img {
        page-break-after: auto;
        page-break-before: auto;
        page-break-inside: avoid
    }

    pre {
        white-space: pre-wrap !important;
        word-wrap: break-word
    }

    a[href^="http://"]:after,a[href^="https://"]:after,a[href^="ftp://"]:after {
        content: " (" attr(href) ")";
        font-size: 80%
    }

    abbr[title]:after,acronym[title]:after {
        content: " (" attr(title) ")"
    }

    #main {
        max-width: 100%
    }

    .page {
        margin: 0;
        padding: 0;
        width: 100%
    }

    .page-break,.page-break-before {
        page-break-before: always
    }

    .page-break-after {
        page-break-after: always
    }

    .no-print {
        display: none
    }

    a.no-reformat:after {
        content: ""
    }

    abbr[title].no-reformat:after,acronym[title].no-reformat:after {
        content: ""
    }

    .masthead,.toc,.page__related,.pagination,.ads,.page__footer,.nav__list,.sidebar,.adsbygoogle {
        display: none !important;
        height: 1px !important
    }
}

code.hljs table {
    font-size: 1em !important
}

code.hljs td {
    font-family: Monaco,Consolas,"Lucida Console",monospace !important
}

.reveal table th,.reveal table td {
    border: none !important
}

.reveal ul {
    list-style: none !important
}

.reveal ul li::before {
    content: "•";
    color: #ccc;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em
}

.page__hero .reveal {
    height: 64vh
}

.reveal table th,.reveal table td {
    border: none !important
}

.reveal ul {
    list-style: none !important
}

.reveal ul li::before {
    content: "•";
    color: #ccc;
    font-weight: normal;
    display: inline-block;
    width: 1em;
    margin-left: -1em
}

li.done {
    color: #555
}

li.done strong {
    color: #888
}

li.done::before {
    color: #555 !important
}

#ux-example-result-good,#ux-example-result-bad {
    opacity: 0
}

.size-b {
    width: 200px;
    height: 200px
}

.motion-b {
    animation: wobble 2s ease infinite;
    background-color: #fff
}

@keyframes wobble {
    0% {
        transform: rotate(20deg)
    }

    50% {
        transform: rotate(-20deg)
    }

    100% {
        transform: rotate(20deg)
    }
}

.affordance-invite {
    color: #20aaff
}

.affordance-react {
    color: #ffa132
}

.affordance-confirm {
    color: #5bff8d
}

button.ux-example {
    font-size: 2em;
    font-weight: bold;
    color: #fff;
    margin: 0;
    padding: .3em .5em;
    border-radius: 10px
}

button.ux-example-bad {
    border: 0;
    background-color: rgba(0,0,0,0)
}

button.ux-example-bad:hover {
    cursor: default
}

button.ux-example-bad:active {
    cursor: default
}

button.ux-example-bad:focus {
    outline: none
}

button.ux-example-good {
    border-top: 4px solid #fff;
    border-left: 8px solid #fff;
    border-right: 8px solid #fff;
    border-bottom: 15px solid #fff;
    background-color: #222
}

button.ux-example-good:hover {
    background-color: #555
}

button.ux-example-good:active {
    background-color: #000;
    border-bottom: 4px solid #fff;
    margin-top: 11px
}

button.ux-example-good:focus {
    outline: none
}

.priority-box {
    vertical-align: middle
}

.priority-box .priority {
    display: inline-block;
    margin: 1em;
    width: 100px;
    height: 100px;
    background-color: #fff;
    color: #000;
    border-radius: 8px;
    text-align: center;
    vertical-align: middle;
    font-weight: bold
}

.priority-box .priority .text {
    display: none
}

.priority-box .colour-b {
    background-color: #f55
}

.priority-box .position-b {
    transform: translateY(50px)
}

.search-sidebar {
    font-size: .7rem
}

.tag-link>a {
    text-decoration: none
}

button.filter-button,.tag-link>a {
    transition: background-color 200ms,color 200ms;
    background-color: rgba(0,0,0,0);
    font: inherit;
    cursor: pointer;
    display: inline-block;
    padding: 0 5px 0 3px;
    margin-right: .5em;
    color: #717171;
    border: 0;
    border-radius: 25px;
    white-space: nowrap
}

button.filter-button:hover,.tag-link>a:hover {
    background-color: #333;
    color: #fff !important
}

button.filter-button:focus,.tag-link>a:focus {
    outline-color: #fff !important;
    border-color: #fff !important
}

button.filter-button.is-active,.tag-link>a.is-active {
    background-color: #8F9BFF;
    border-color: #8F9BFF;
    color: #000
}

details {
    padding: .5em .5em 0;
    margin-bottom: 1em
}

details summary {
    font-weight: bold;
    margin: 0;
    padding: 0;
    cursor: pointer
}

p.url {
    font-size: .6875em;
    color: #919191;
    margin: 0
}

form.delegate-tool {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    border: 1px solid #51555d;
    border-radius: 8px;
    padding: .5em
}

form.delegate-tool table {
    background: none;
    margin: 0;
    padding: 0
}

form.delegate-tool td {
    margin: 0;
    padding: .3em 0;
    border: none
}

form.delegate-tool td.labels {
    width: 120px
}

form.delegate-tool td label {
    color: #bbb
}

form.delegate-tool input[type=checkbox] {
    border: 1px solid #51555d;
    border-radius: 8px;
    background-color: #333;
    color: #333;
    height: 1.5em;
    width: 1.5em;
    accent-color: #8F9BFF
}

form.delegate-tool input[type=checkbox]:checked {
    background-color: #8F9BFF;
    color: #8F9BFF;
    accent-color: #8F9BFF
}

form.delegate-tool input[type=text] {
    border: 1px solid #51555d;
    border-radius: 8px;
    background: #333
}

form.delegate-tool input[type=text]:hover {
    background: #222;
    border: 1px solid #666
}

form.delegate-tool input[type=text]:focus {
    box-shadow: none;
    border: 1px solid #8F9BFF
}

form.delegate-tool input[type=text].code {
    font-family: Monaco,Consolas,"Lucida Console",monospace
}

form.delegate-tool .code-output {
    font-family: Monaco,Consolas,"Lucida Console",monospace;
    font-size: .8em;
    margin: 0;
    background-color: #333;
    border-radius: 4px;
    padding: .5em
}

form.delegate-tool .code-output p {
    margin: 0
}

form.delegate-tool input[type=button] {
    font-weight: bold;
    padding: 4px 8px
}

form.delegate-tool input[type=button].major {
    border: 1px solid #8F9BFF;
    border-radius: 4px;
    padding: 8px
}

form.delegate-tool input[type=button].major:hover {
    border: 1px solid #8F9BFF;
    background: #8F9BFF;
    color: #fff
}

form.delegate-tool input[type=button]:focus {
    box-shadow: none
}

form.delegate-tool input[type=button]:hover {
    background: #333
}

form.delegate-tool input[type=button]:disabled {
    background: #777;
    color: #ddd;
    border: 1px solid #777
}

form.delegate-tool .delegatename {
    color: #fd971f
}

form.delegate-tool .dynamic {
    color: #a6e22e
}

form.delegate-tool .multicast {
    color: #f92672
}

form.delegate-tool .retval {
    color: #ae81ff
}

form.delegate-tool .params {
    color: #66d9ef
}

ul.tags {
    list-style: none
}

ul.tags .icon {
    margin-right: 5px;
    font-size: .8em;
    pointer-events: none
}

ul.inline-tags {
    font-size: .7em;
    padding: 0;
    margin: 0
}

ul.inline-tags li {
    display: inline-block
}

#filter-row {
    margin-bottom: 2em;
    margin-left: .5em;
    margin-right: .5em
}

.filter-header {
    font-size: .75em;
    font-weight: 700;
    align-self: center;
    margin-right: .5em
}

.filter-enabled {
    color: #1a1a1a !important;
    border-color: #8F9BFF !important
}

.filter-enabled:hover {
    color: #8F9BFF !important
}

.filter-enabled .filter-toggle {
    border-color: #484848 !important;
    background-color: #1a1a1a !important;
    color: #fff !important
}

.filter-item {
    transition: .4s all ease
}

.entry-show {
    opacity: 100%;
    transition: .2s all ease;
    max-height: 500px;
    transform: translateX(0px)
}

.entry-hide {
    opacity: 0%;
    transition: .2s all ease;
    max-height: 0px;
    transform: translateX(-100px);
    visibility: collapse;
    margin: 0;
    padding: 0
}

@media(max-width: 576px) {
    .tag-entry-show,.tag-entry-hide {
        transition:unset
    }
}

.tag-link-count {
    background: rgba(0,0,0,.3);
    border-radius: 8px;
    padding-left: .2em;
    padding-right: .2em;
    margin-left: .2em;
    color: #fff
}

#filter-row-collapsed {
    display: none;
    padding-bottom: 1em
}

@media only screen and (max-width: 600px) {
    #filter-row {
        display:none
    }

    #filter-row.clicked {
        display: flex
    }

    #filter-row-collapsed {
        display: flex
    }
}

ul {
    /*list-style-type: none; /* Remove the dots */
    margin: 30px 0px 50px 50px; /* Adjust margins as needed */
    padding: 0px;
}

ul li {
    margin-bottom: 30px; /* Increase distance between rows */
    position: relative; /* For optional custom bullet styling */
}

/*# sourceMappingURL=main.css.map */

@media (min-width: 869px) {
    .container2 {
        padding: 0px;
        border-radius: 10px;
        display: flex;
        align-items: flex-start;
        margin-top: 20px;
    }
}

.text-content2 {
    flex: 1;
    margin-right: 20px;
}
.text-content2 h1 {
    padding-bottom: 10px;
}
.archive__item-teaser2 img {
    max-width: 600px;
    border-radius: 10px;
}

.archive__item-teaser2 {
    position: relative;
    border-radius: 8px;
    overflow: hidden
}

.archive__item-teaser2 img {
    width: 100%;
    border: 1px solid #51555d;
    border-radius: 8px
}

.container li {
    margin-bottom: 10px;
    color: #fff;
    font-weight: normal;
}


.text-content3 {
    flex: 1;
    margin-right: 0px;
}

.container4 {
    padding: 0px;
    padding-top: 40px;
    border-radius: 10px;
    display: flex;
    align-items: flex-start;
    margin-top: 0px;
    gap: 60px; 
}

iframe {
    position: relative;
    width: 100%;
    height: 100%; 
	aspect-ratio: 640/320;
}
