html {
    box-sizing: border-box
}

*, :after, :before {
    box-sizing: inherit
}

html {
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none
}

body {
    margin: 0
}

hr {
    overflow: visible;
    box-sizing: content-box
}

a {
    -webkit-text-decoration-skip: objects
}

a, button, input, label {
    -webkit-tap-highlight-color: transparent
}

a {
    color: inherit;
    text-decoration: none
}

a:active, a:hover {
    outline-width: 0
}

small, sub, sup {
    font-size: 80%
}

sub, sup {
    position: relative;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    font-weight: 400;
    vertical-align: top
}

button {
    padding: 0;
    background: transparent;
    font-size: inherit
}

button, input {
    border: 0;
    outline: 0
}

.admonition:before, .md-icon, .md-nav__button, .md-nav__link_lv1:after, .md-nav__link_lv2:after, .md-nav__title:before, .md-typeset .critic.comment:before, .md-typeset .footnote-backref, .md-typeset .task-list-control .task-list-indicator:before {
    font-family: "Material Icons";
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    white-space: nowrap;
    speak: none;
    word-wrap: normal;
    direction: ltr
}

.md-content__edit, .md-footer-nav__button, .md-header-nav__button, .md-nav__button, .md-nav__title_lv1:before {
    display: inline-block;
    margin: .4rem;
    padding: .8rem;
    font-size: 2.4rem;
    cursor: pointer
}

.md-icon--arrow-back:before {
    content: "arrow_back"
}

.md-icon--arrow-forward:before {
    content: "arrow_forward"
}

.md-icon--menu:before {
    content: "menu"
}

.md-icon--search:before {
    content: "search"
}

.md-icon--home:before {
    content: "school"
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

body, input {
    color: rgba(0, 0, 0, .87);
    -webkit-font-feature-settings: "kern", "onum", "liga";
    font-feature-settings: "kern", "onum", "liga";
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 400
}

code, kbd, pre {
    color: rgba(0, 0, 0, .87);
    -webkit-font-feature-settings: "kern", "onum", "liga";
    font-feature-settings: "kern", "onum", "liga";
    font-family: Courier New, Courier, monospace;
    font-weight: 400
}

.md-typeset {
    font-size: 1.6rem;
    line-height: 1.6;
    -webkit-print-color-adjust: exact
}

.md-typeset blockquote, .md-typeset ol, .md-typeset p, .md-typeset ul {
    margin: 1em 0
}

.md-typeset h1 {
    margin: 0 0 4rem;
    color: rgba(0, 0, 0, .54);
    font-size: 3.125rem;
    line-height: 1.3
}

.md-typeset h1, .md-typeset h2 {
    font-weight: 300;
    letter-spacing: -.01em
}

.md-typeset h2 {
    margin: 4rem 0 1.6rem;
    font-size: 2.5rem;
    line-height: 1.4
}

.md-typeset h3 {
    margin: 3.2rem 0 1.6rem;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: -.01em;
    line-height: 1.5
}

.md-typeset h2+h3 {
    margin-top: 1.6rem
}

.md-typeset h4 {
    font-size: 1.6rem
}

.md-typeset h4, .md-typeset h5, .md-typeset h6 {
    margin: 1.6rem 0;
    font-weight: 700;
    letter-spacing: -.01em
}

.md-typeset h5, .md-typeset h6 {
    color: rgba(0, 0, 0, .54);
    font-size: 1.28rem
}

.md-typeset h5 {
    text-transform: uppercase
}

.md-typeset hr {
    margin: 1.5em 0;
    border-bottom: .1rem dotted rgba(0, 0, 0, .26)
}

.md-typeset a {
    color: #3f51b5;
    word-break: break-word
}

.md-typeset a, .md-typeset a:before {
    -webkit-transition: color .125s;
    transition: color .125s
}

.md-typeset a:active, .md-typeset a:hover {
    color: #536dfe
}

.md-typeset code, .md-typeset pre {
    background-color: hsla(0, 0%, 93%, .5);
    color: #37474f;
    font-size: 85%
}

.md-typeset code {
    margin: 0 .29412em;
    padding: .07353em 0;
    border-radius: .2rem;
    box-shadow: .29412em 0 0 hsla(0, 0%, 93%, .5), -.29412em 0 0 hsla(0, 0%, 93%, .5);
    word-break: break-word;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone
}

.md-typeset h1 code, .md-typeset h2 code, .md-typeset h3 code, .md-typeset h4 code, .md-typeset h5 code, .md-typeset h6 code {
    margin: 0;
    background-color: transparent;
    box-shadow: none
}

.md-typeset a>code {
    margin: inherit;
    padding: inherit;
    border-radius: none;
    background-color: inherit;
    color: inherit;
    box-shadow: none
}

.md-typeset pre {
    margin: 1em 0;
    padding: 1rem 1.2rem;
    border-radius: .2rem;
    line-height: 1.4;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.md-typeset pre::-webkit-scrollbar {
    width: .4rem;
    height: .4rem
}

.md-typeset pre::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .26)
}

.md-typeset pre::-webkit-scrollbar-thumb:hover {
    background-color: #536dfe
}

.md-typeset pre>code {
    margin: 0;
    background-color: transparent;
    font-size: inherit;
    box-shadow: none;
    -webkit-box-decoration-break: none;
    box-decoration-break: none
}

.md-typeset kbd {
    padding: 0 .29412em;
    border: .1rem solid #c9c9c9;
    border-radius: .2rem;
    border-bottom-color: #bcbcbc;
    background-color: #fcfcfc;
    color: #555;
    font-size: 85%;
    box-shadow: 0 .1rem 0 #b0b0b0;
    word-break: break-word
}

.md-typeset mark {
    margin: 0 .25em;
    padding: .0625em 0;
    border-radius: .2rem;
    background-color: rgba(255, 235, 59, .5);
    box-shadow: .25em 0 0 rgba(255, 235, 59, .5), -.25em 0 0 rgba(255, 235, 59, .5);
    word-break: break-word;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone
}

.md-typeset abbr {
    border-bottom: .1rem dotted rgba(0, 0, 0, .54);
    cursor: help
}

.md-typeset small {
    opacity: .75
}

.md-typeset sub, .md-typeset sup {
    margin-left: .07812em
}

.md-typeset blockquote {
    padding-left: 1.2rem;
    border-left: .4rem solid rgba(0, 0, 0, .26);
    color: rgba(0, 0, 0, .54)
}

.md-typeset ul {
    list-style-type: disc
}

.md-typeset ol, .md-typeset ul {
    margin-left: .625em;
    padding: 0
}

.md-typeset ol ol, .md-typeset ul ol {
    list-style-type: lower-alpha
}

.md-typeset ol ol ol, .md-typeset ul ol ol {
    list-style-type: lower-roman
}

.md-typeset ol li, .md-typeset ul li {
    margin-bottom: .5em;
    margin-left: 1.25em
}

.md-typeset ol li blockquote, .md-typeset ol li p, .md-typeset ul li blockquote, .md-typeset ul li p {
    margin: .5em 0
}

.md-typeset ol li:last-child, .md-typeset ul li:last-child {
    margin-bottom: 0
}

.md-typeset ol li ol, .md-typeset ol li ul, .md-typeset ul li ol, .md-typeset ul li ul {
    margin: .5em 0 .5em .625em
}

.md-typeset iframe, .md-typeset img, .md-typeset svg {
    max-width: 100%
}

.md-typeset table:not([class]) {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    margin: 2em 0;
    border-radius: .2rem;
    font-size: 1.28rem;
    overflow: hidden
}

.no-js .md-typeset table:not([class]) {
    display: inline-block;
    max-width: 100%;
    margin: .8em 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.md-typeset table:not([class]) td:not([align]), .md-typeset table:not([class]) th:not([align]) {
    text-align: left
}

.md-typeset table:not([class]) th {
    min-width: 10rem;
    padding: 1.2rem 1.6rem;
    background-color: rgba(0, 0, 0, .54);
    color: #fff;
    vertical-align: top
}

.md-typeset table:not([class]) td {
    padding: 1.2rem 1.6rem;
    border-top: .1rem solid rgba(0, 0, 0, .07);
    vertical-align: top
}

.md-typeset table:not([class]) tr:first-child td {
    border-top: 0
}

.md-typeset table:not([class]) a {
    word-break: normal
}

.md-typeset .md-typeset__table {
    margin: 1.6rem 0rem;
    /* overflow-x: auto; */
    /* -webkit-overflow-scrolling: touch */
}

.md-typeset .md-typeset__table table {
    display: inline-block;
    margin: 0 0rem
}

html {
    font-size: 72%
}

body, html {
    height: 100%
}

body {
    position: relative
}

hr {
    display: block;
    height: .1rem;
    padding: 0;
    border: 0
}

.md-svg {
    display: none
}

.md-grid {
    max-width: 122rem;
    margin-right: auto;
    margin-left: auto
}

.md-container, .md-main {
    overflow: auto
}

.md-container {
    display: table;
    width: 100%;
    height: 100%;
    padding-top: 5.6rem;
    table-layout: fixed
}

.md-main {
    display: table-row;
    height: 100%
}

.md-main__inner {
    min-height: 100%;
    padding-top: 3rem;
    overflow: auto
}

.md-toggle {
    display: none
}

.md-overlay {
    position: fixed;
    top: 0;
    width: 0;
    height: 0;
    -webkit-transition: width 0s .25s, height 0s .25s, opacity .25s;
    transition: width 0s .25s, height 0s .25s, opacity .25s;
    background-color: rgba(0, 0, 0, .54);
    opacity: 0;
    z-index: 2
}

.md-flex {
    display: table
}

.md-flex__cell {
    display: table-cell;
    position: relative;
    vertical-align: top
}

.md-flex__cell--shrink {
    width: 0
}

.md-flex__cell--stretch {
    display: table;
    width: 100%;
    table-layout: fixed
}

.md-flex__ellipsis {
    display: table-cell;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

@page {
    margin: 25mm
}

.md-content__inner {
    margin: 2.4rem 1.6rem
}

.md-content__edit {
    float: right
}

.md-header {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    height: 5.6rem;
    -webkit-transition: background-color .25s;
    transition: background-color .25s;
    background-color: #3f51b5;
    color: #fff;
    z-index: 1
}

.md-header-nav {
    padding: .4rem
}

.md-header-nav__button {
    position: relative;
    -webkit-transition: opacity .25s;
    transition: opacity .25s;
    z-index: 1
}

.md-header-nav__button:hover {
    opacity: .7
}

.md-header-nav__button.md-logo img {
    display: block
}

.no-js .md-header-nav__button.md-icon--search {
    display: none
}

.md-header-nav__title {
    padding: 0 2rem;
    font-size: 1.8rem;
    line-height: 4.8rem
}

.md-header-nav__parent {
    color: hsla(0, 0%, 100%, .7)
}

.md-header-nav__parent:after {
    display: inline;
    color: hsla(0, 0%, 100%, .3);
    content: "/"
}

.md-header-nav__source {
    display: none
}

.md-footer-nav {
    background-color: rgba(0, 0, 0, .87);
    color: #fff
}

.md-footer-nav__inner {
    padding: .4rem;
    overflow: auto
}

.md-footer-nav__link {
    padding-top: 2.8rem;
    padding-bottom: .8rem;
    -webkit-transition: opacity .25s;
    transition: opacity .25s
}

.md-footer-nav__link:hover {
    opacity: .7
}

.md-footer-nav__link--prev {
    width: 25%;
    float: left
}

.md-footer-nav__link--next {
    width: 75%;
    float: right;
    text-align: right
}

.md-footer-nav__button {
    -webkit-transition: background .25s;
    transition: background .25s
}

.md-footer-nav__title {
    position: relative;
    padding: 0 2rem;
    font-size: 1.8rem;
    line-height: 4.8rem
}

.md-footer-nav__direction {
    position: absolute;
    right: 0;
    left: 0;
    margin-top: -2rem;
    padding: 0 2rem;
    color: hsla(0, 0%, 100%, .7);
    font-size: 1.5rem
}

.md-footer-meta {
    background: rgba(0, 0, 0, .895)
}

.md-footer-meta__inner {
    padding: .4rem;
    overflow: auto
}

html .md-footer-meta.md-typeset a {
    color: hsla(0, 0%, 100%, .7)
}

.md-footer-copyright {
    margin: 0 1.2rem;
    padding: .8rem 0;
    color: hsla(0, 0%, 100%, .3);
    font-size: 1.28rem
}

.md-footer-copyright__highlight {
    color: hsla(0, 0%, 100%, .7)
}

.md-footer-social {
    margin: 0 .8rem;
    padding: .4rem 0 1.2rem
}

.md-footer-social__link {
    display: inline-block;
    width: 3.2rem;
    height: 3.2rem;
    border: .1rem solid hsla(0, 0%, 100%, .12);
    border-radius: 100%;
    color: hsla(0, 0%, 100%, .7);
    font-size: 1.6rem;
    text-align: center
}

.md-footer-social__link:before {
    line-height: 1.9
}

.md-nav {
    font-size: 1.4rem;
    line-height: 1.3
}

.md-nav--secondary {
    -webkit-transition: border-left .25s;
    transition: border-left .25s;
    border-left: .4rem solid #3f51b5
}

.md-nav__title_lv1 {
    display: block;
    padding: 1.2rem 1.2rem 0;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden
}

.md-nav__title:before {
    display: none;
    content: "arrow_back"
}

.md-nav__title .md-nav__button {
    display: none
}

.md-nav__list {
    margin: 0;
    padding: 0;
    list-style: none
}

.md-nav__item {
    padding: .625em 1.2rem 0
}

.md-nav__item:last-child {
    padding-bottom: 1.2rem
}

.md-nav__item .md-nav__item {
    padding-right: 0
}

.md-nav__item .md-nav__item:last-child {
    padding-bottom: 0
}

.md-nav__button img {
    width: 100%;
    height: auto
}

.md-nav__link_lv1 {
    display: block;
    -webkit-transition: color .125s;
    transition: color .125s;
    text-overflow: ellipsis;
    cursor: pointer;
    overflow: hidden;
    color: #272838;
    font-weight: bolder;
}


.md-nav__link_lv2 {
    display: block;
    -webkit-transition: color .125s;
    transition: color .125s;
    text-overflow: ellipsis;
    cursor: pointer;
    overflow: hidden;
    color: #333333;
    font-weight: bold;
}

.md-nav__link_lv3 {
    display: block;
    -webkit-transition: color .125s;
    transition: color .125s;
    text-overflow: ellipsis;
    cursor: pointer;
    overflow: hidden;
    color: #272838
}

.md-nav__item--nested>.md-nav__link_lv1:after, .md-nav__item--nested>.md-nav__link_lv2:after  {
    content: "keyboard_arrow_down"
}


html .md-nav__link_lv1[for=toc], html .md-nav__link_lv1[for=toc]+.md-nav__link_lv1:after, html .md-nav__link_lv1[for=toc]~.md-nav {
    display: none
}

.md-nav__link_lv1[data-md-state=blur] {
    color: rgba(0, 0, 0, .54)
}

.md-nav__link--active, .md-nav__link:active {
    color: #0050FF
}

.md-nav__link:focus, .md-nav__link:hover {
    color: #536dfe
}

.md-nav__source, .no-js .md-search {
    display: none
}

.md-search__overlay {
    display: none;
    pointer-events: none
}

.md-search__inner {
    width: 100%
}

.md-search__form {
    position: relative
}

.md-search__input {
    position: relative;
    padding: 0 1.6rem 0 7.2rem;
    text-overflow: ellipsis;
    z-index: 1
}

.md-search__input+.md-search__icon, .md-search__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, .54)
}

.md-search__input+.md-search__icon, .md-search__input::-moz-placeholder {
    color: rgba(0, 0, 0, .54)
}

.md-search__input+.md-search__icon, .md-search__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, .54)
}

.md-search__input+.md-search__icon, .md-search__input::placeholder {
    color: rgba(0, 0, 0, .54)
}

.md-search__input::-ms-clear {
    display: none
}

.md-search__icon {
    position: absolute;
    top: .8rem;
    left: 1.2rem;
    -webkit-transition: color .25s;
    transition: color .25s;
    font-size: 2.4rem;
    cursor: pointer;
    z-index: 1
}

.md-search__icon:before {
    content: "search"
}

.md-search__output {
    position: absolute;
    width: 100%;
    border-radius: 0 0 .2rem .2rem;
    overflow: hidden
}

.md-search__scrollwrap {
    height: 100%;
    background: -webkit-linear-gradient(top, #fff 10%, hsla(0, 0%, 100%, 0)), -webkit-linear-gradient(top, rgba(0, 0, 0, .26), rgba(0, 0, 0, .07) 35%, transparent 60%);
    background: linear-gradient(180deg, #fff 10%, hsla(0, 0%, 100%, 0)), linear-gradient(180deg, rgba(0, 0, 0, .26), rgba(0, 0, 0, .07) 35%, transparent 60%);
    background-attachment: local, scroll;
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 100% 2rem, 100% 1rem;
    box-shadow: inset 0 .1rem 0 rgba(0, 0, 0, .07);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
}

.md-search-result__meta {
    padding: 0 1.6rem;
    background-color: rgba(0, 0, 0, .07);
    color: rgba(0, 0, 0, .54);
    font-size: 1.28rem;
    line-height: 4rem
}

.md-search-result__list {
    margin: 0;
    padding: 0;
    border-top: .1rem solid rgba(0, 0, 0, .07);
    list-style: none
}

.md-search-result__item {
    box-shadow: 0 -.1rem 0 rgba(0, 0, 0, .07)
}

.md-search-result__link {
    display: block;
    padding: 0 1.6rem;
    -webkit-transition: background .25s;
    transition: background .25s;
    overflow: auto
}

.md-search-result__link:hover {
    background-color: rgba(83, 109, 254, .1)
}

.md-search-result__article {
    margin: 1em 0
}

.md-search-result__title {
    margin-top: .5em;
    margin-bottom: 0;
    color: rgba(0, 0, 0, .87);
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.4
}

.md-search-result__teaser {
    margin: .5em 0;
    color: rgba(0, 0, 0, .54);
    font-size: 1.28rem;
    line-height: 1.4;
    word-break: break-word
}

.md-sidebar {
    position: relative;
    width: 24.2rem;
    /* padding: 2.4rem 0; */
    float: left;
    overflow: visible
}

.md-sidebar[data-md-state=lock] {
    position: fixed;
    top: 5.6rem;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.md-sidebar--secondary {
    display: none
}

.md-sidebar__scrollwrap {
    max-height: 100%;
    margin: 0 .4rem;
    overflow-y: auto
}

.md-sidebar__scrollwrap::-webkit-scrollbar {
    width: .4rem;
    height: .4rem
}

.md-sidebar__scrollwrap::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .26)
}

.md-sidebar__scrollwrap::-webkit-scrollbar-thumb:hover {
    background-color: #536dfe
}

@-webkit-keyframes a {
    0% {
        height: 0
    }
    to {
        height: 1.3rem
    }
}

@keyframes a {
    0% {
        height: 0
    }
    to {
        height: 1.3rem
    }
}

@-webkit-keyframes b {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        opacity: 0
    }
    50% {
        opacity: 0
    }
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes b {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        opacity: 0
    }
    50% {
        opacity: 0
    }
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

.md-source {
    display: block;
    -webkit-transition: opacity .25s;
    transition: opacity .25s;
    font-size: 1.3rem;
    line-height: 1.2;
    white-space: nowrap
}

.md-source:hover {
    opacity: .7
}

.md-source:after, .md-source__icon {
    display: inline-block;
    height: 4.8rem;
    content: "";
    vertical-align: middle
}

.md-source__icon {
    width: 4.8rem
}

.md-source__icon svg {
    margin-top: 1.2rem;
    margin-left: 1.2rem
}

.md-source__icon+.md-source__repository {
    margin-left: -4.4rem;
    padding-left: 4rem
}

.md-source__repository {
    display: inline-block;
    max-width: 100%;
    margin-left: 1.2rem;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden;
    vertical-align: middle
}

.md-source__facts {
    margin: 0;
    padding: 0;
    font-size: 1.1rem;
    font-weight: 700;
    list-style-type: none;
    opacity: .75;
    overflow: hidden
}

[data-md-state=done] .md-source__facts {
    -webkit-animation: a .25s ease-in;
    animation: a .25s ease-in
}

.md-source__fact {
    float: left
}

[data-md-state=done] .md-source__fact {
    -webkit-animation: b .4s ease-out;
    animation: b .4s ease-out
}

.md-source__fact:before {
    margin: 0 .2rem;
    content: "\00B7"
}

.md-source__fact:first-child:before {
    display: none
}

.admonition {
    position: relative;
    margin: 1.5625em 0;
    padding: .8rem 1.2rem;
    border-left: 3.2rem solid rgba(68, 138, 255, .4);
    border-radius: .2rem;
    background-color: rgba(68, 138, 255, .15);
    font-size: 1.28rem
}

.admonition:before {
    position: absolute;
    left: -2.6rem;
    color: #fff;
    font-size: 2rem;
    content: "edit";
    vertical-align: -.25em
}

.admonition:first-child {
    margin-top: 0
}

.admonition:last-child {
    margin-bottom: 0
}

.admonition.summary, .admonition.tldr {
    border-color: rgba(0, 176, 255, .4);
    background-color: rgba(0, 176, 255, .15)
}

.admonition.summary:before, .admonition.tldr:before {
    content: "subject"
}

.admonition.hint, .admonition.important, .admonition.tip {
    border-color: rgba(0, 191, 165, .4);
    background-color: rgba(0, 191, 165, .15)
}

.admonition.hint:before, .admonition.important:before, .admonition.tip:before {
    content: "whatshot"
}

.admonition.check, .admonition.done, .admonition.success {
    border-color: rgba(0, 230, 118, .4);
    background-color: rgba(0, 230, 118, .15)
}

.admonition.check:before, .admonition.done:before, .admonition.success:before {
    content: "done"
}

.admonition.attention, .admonition.caution, .admonition.warning {
    border-color: rgba(255, 145, 0, .4);
    background-color: rgba(255, 145, 0, .15)
}

.admonition.attention:before, .admonition.caution:before, .admonition.warning:before {
    content: "warning"
}

.admonition.fail, .admonition.failure, .admonition.missing {
    border-color: rgba(255, 82, 82, .4);
    background-color: rgba(255, 82, 82, .15)
}

.admonition.fail:before, .admonition.failure:before, .admonition.missing:before {
    content: "clear"
}

.admonition.danger, .admonition.error {
    border-color: rgba(255, 23, 68, .4);
    background-color: rgba(255, 23, 68, .15)
}

.admonition.danger:before, .admonition.error:before {
    content: "flash_on"
}

.admonition.bug {
    border-color: rgba(245, 0, 87, .4);
    background-color: rgba(245, 0, 87, .15)
}

.admonition.bug:before {
    content: "bug_report"
}

.admonition-title {
    font-weight: 700
}

html .admonition-title {
    margin-bottom: 0
}

html .admonition-title+* {
    margin-top: 0
}

.codehilite .o, .codehilite .ow {
    color: inherit
}

.codehilite .ge {
    color: #000
}

.codehilite .gr {
    color: #a00
}

.codehilite .gh {
    color: #999
}

.codehilite .go {
    color: #888
}

.codehilite .gp {
    color: #555
}

.codehilite .gs {
    color: inherit
}

.codehilite .gu {
    color: #aaa
}

.codehilite .gt {
    color: #a00
}

.codehilite .gd {
    background-color: #fdd
}

.codehilite .gi {
    background-color: #dfd
}

.codehilite .k {
    color: #3b78e7
}

.codehilite .kc {
    color: #a71d5d
}

.codehilite .kd, .codehilite .kn {
    color: #3b78e7
}

.codehilite .kp {
    color: #a71d5d
}

.codehilite .kr, .codehilite .kt {
    color: #3e61a2
}

.codehilite .c, .codehilite .cm {
    color: #999
}

.codehilite .cp {
    color: #666
}

.codehilite .c1, .codehilite .ch, .codehilite .cs {
    color: #999
}

.codehilite .na, .codehilite .nb {
    color: #c2185b
}

.codehilite .bp {
    color: #3e61a2
}

.codehilite .nc {
    color: #c2185b
}

.codehilite .no {
    color: #3e61a2
}

.codehilite .nd, .codehilite .ni {
    color: #666
}

.codehilite .ne, .codehilite .nf {
    color: #c2185b
}

.codehilite .nl {
    color: #3b5179
}

.codehilite .nn {
    color: #ec407a
}

.codehilite .nt {
    color: #3b78e7
}

.codehilite .nv, .codehilite .vc, .codehilite .vg, .codehilite .vi {
    color: #3e61a2
}

.codehilite .nx {
    color: #ec407a
}

.codehilite .il, .codehilite .m, .codehilite .mf, .codehilite .mh, .codehilite .mi, .codehilite .mo {
    color: #e74c3c
}

.codehilite .s, .codehilite .sb, .codehilite .sc {
    color: #0d904f
}

.codehilite .sd {
    color: #999
}

.codehilite .s2 {
    color: #0d904f
}

.codehilite .se, .codehilite .sh, .codehilite .si, .codehilite .sx {
    color: #183691
}

.codehilite .sr {
    color: #009926
}

.codehilite .s1, .codehilite .ss {
    color: #0d904f
}

.codehilite .err {
    color: #a61717
}

.codehilite .w {
    color: transparent
}

.codehilite .hll {
    display: block;
    margin: 0 -1.2rem;
    padding: 0 1.2rem;
    background-color: rgba(255, 235, 59, .5)
}

.md-typeset .codehilite {
    margin: 1em 0;
    padding: 1rem 1.2rem .8rem;
    border-radius: .2rem;
    background-color: hsla(0, 0%, 93%, .5);
    color: #37474f;
    line-height: 1.4;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.md-typeset .codehilite::-webkit-scrollbar {
    width: .4rem;
    height: .4rem
}

.md-typeset .codehilite::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .26)
}

.md-typeset .codehilite::-webkit-scrollbar-thumb:hover {
    background-color: #536dfe
}

.md-typeset .codehilite pre {
    display: inline-block;
    min-width: 100%;
    margin: 0;
    padding: 0;
    background-color: transparent;
    overflow: visible;
    vertical-align: top
}

.md-typeset .codehilitetable {
    display: block;
    margin: 1em 0;
    border-radius: .2em;
    font-size: 1.6rem;
    overflow: hidden
}

.md-typeset .codehilitetable tbody, .md-typeset .codehilitetable td {
    display: block;
    padding: 0
}

.md-typeset .codehilitetable tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.md-typeset .codehilitetable .codehilite, .md-typeset .codehilitetable .linenodiv {
    margin: 0;
    border-radius: 0
}

.md-typeset .codehilitetable .linenodiv {
    padding: 1rem 1.2rem .8rem
}

.md-typeset .codehilitetable .linenodiv, .md-typeset .codehilitetable .linenodiv>pre {
    height: 100%
}

.md-typeset .codehilitetable .linenos {
    background-color: rgba(0, 0, 0, .07);
    color: rgba(0, 0, 0, .26);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.md-typeset .codehilitetable .linenos pre {
    margin: 0;
    padding: 0;
    background-color: transparent;
    color: inherit;
    text-align: right
}

.md-typeset .codehilitetable .code {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow: hidden
}

.md-typeset>.codehilitetable {
    box-shadow: none
}

.md-typeset .footnote {
    color: rgba(0, 0, 0, .54);
    font-size: 1.28rem
}

.md-typeset .footnote ol {
    margin-left: 0
}

.md-typeset .footnote li {
    -webkit-transition: color .25s;
    transition: color .25s
}

.md-typeset .footnote li:before {
    display: block;
    height: 0
}

.md-typeset .footnote li:target {
    color: rgba(0, 0, 0, .87)
}

.md-typeset .footnote li:target:before {
    margin-top: -9rem;
    padding-top: 9rem;
    pointer-events: none
}

.md-typeset .footnote li:first-child {
    margin-top: 0
}

.md-typeset .footnote li:hover .footnote-backref, .md-typeset .footnote li:target .footnote-backref {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
}

.md-typeset .footnote li:hover .footnote-backref:hover, .md-typeset .footnote li:target .footnote-backref {
    color: #536dfe
}

.md-typeset .footnote-backref {
    display: inline-block;
    -webkit-transform: translateX(.5rem);
    transform: translateX(.5rem);
    -webkit-transition: color .25s, opacity .125s .125s, -webkit-transform .25s .125s;
    transition: color .25s, opacity .125s .125s, -webkit-transform .25s .125s;
    transition: transform .25s .125s, color .25s, opacity .125s .125s;
    transition: transform .25s .125s, color .25s, opacity .125s .125s, -webkit-transform .25s .125s;
    color: rgba(0, 0, 0, .26);
    font-size: 0;
    opacity: 0;
    vertical-align: text-bottom
}

.md-typeset .footnote-backref:before {
    font-size: 1.6rem;
    content: "keyboard_return"
}

.md-typeset .headerlink {
    display: inline-block;
    margin-left: 1rem;
    -webkit-transform: translateY(.5rem);
    transform: translateY(.5rem);
    -webkit-transition: color .25s, opacity .125s .25s, -webkit-transform .25s .25s;
    transition: color .25s, opacity .125s .25s, -webkit-transform .25s .25s;
    transition: transform .25s .25s, color .25s, opacity .125s .25s;
    transition: transform .25s .25s, color .25s, opacity .125s .25s, -webkit-transform .25s .25s;
    opacity: 0
}

html body .md-typeset .headerlink {
    color: rgba(0, 0, 0, .26)
}

.md-typeset [id]:before {
    display: inline-block;
    content: ""
}

.md-typeset [id]:target:before {
    margin-top: -9.8rem;
    padding-top: 9.8rem
}

.md-typeset [id] .headerlink:focus, .md-typeset [id]:hover .headerlink, .md-typeset [id]:target .headerlink {
    -webkit-transform: translate(0);
    transform: translate(0);
    opacity: 1
}

.md-typeset [id] .headerlink:focus, .md-typeset [id]:hover .headerlink:hover, .md-typeset [id]:target .headerlink {
    color: #536dfe
}

.md-typeset h1[id] {
    padding-top: .8rem
}

.md-typeset h1[id].headerlink {
    display: none
}

.md-typeset h2[id]:before {
    display: block;
    margin-top: -.4rem;
    padding-top: .4rem
}

.md-typeset h2[id]:target:before {
    margin-top: -8.4rem;
    padding-top: 8.4rem
}

.md-typeset h3[id]:before {
    display: block;
    margin-top: -.7rem;
    padding-top: .7rem
}

.md-typeset h3[id]:target:before {
    margin-top: -8.7rem;
    padding-top: 8.7rem
}

.md-typeset h4[id]:before {
    display: block;
    margin-top: -.8rem;
    padding-top: .8rem
}

.md-typeset h4[id]:target:before {
    margin-top: -8.8rem;
    padding-top: 8.8rem
}

.md-typeset h5[id]:before {
    display: block;
    margin-top: -1.1rem;
    padding-top: 1.1rem
}

.md-typeset h5[id]:target:before {
    margin-top: -9.1rem;
    padding-top: 9.1rem
}

.md-typeset h6[id]:before {
    display: block;
    margin-top: -1.1rem;
    padding-top: 1.1rem
}

.md-typeset h6[id]:target:before {
    margin-top: -9.1rem;
    padding-top: 9.1rem
}

.md-typeset .MJXc-display {
    margin: .75em 0;
    padding: .25em 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.md-typeset .MathJax_CHTML {
    outline: 0
}

.md-typeset .comment.critic, .md-typeset del.critic, .md-typeset ins.critic {
    margin: 0 .25em;
    padding: .0625em 0;
    border-radius: .2rem;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone
}

.md-typeset del.critic {
    background-color: #fdd;
    box-shadow: .25em 0 0 #fdd, -.25em 0 0 #fdd
}

.md-typeset ins.critic {
    background-color: #dfd;
    box-shadow: .25em 0 0 #dfd, -.25em 0 0 #dfd
}

.md-typeset .critic.comment {
    background-color: hsla(0, 0%, 93%, .5);
    color: #37474f;
    box-shadow: .25em 0 0 hsla(0, 0%, 93%, .5), -.25em 0 0 hsla(0, 0%, 93%, .5)
}

.md-typeset .critic.comment:before {
    padding-right: .125em;
    color: rgba(0, 0, 0, .26);
    content: "chat";
    vertical-align: -.125em
}

.md-typeset .critic.block {
    display: block;
    margin: 1em 0;
    padding-right: 1.6rem;
    padding-left: 1.6rem;
    box-shadow: none
}

.md-typeset .critic.block:first-child {
    margin-top: .5em
}

.md-typeset .critic.block:last-child {
    margin-bottom: .5em
}

.md-typeset .emojione {
    width: 2rem;
    vertical-align: text-top
}

.md-typeset code.codehilite {
    margin: 0 .29412em;
    padding: .07353em 0
}

.md-typeset .task-list-item {
    position: relative;
    list-style-type: none
}

.md-typeset .task-list-item [type=checkbox] {
    position: absolute;
    top: .45em;
    left: -2em
}

.md-typeset .task-list-control .task-list-indicator:before {
    position: absolute;
    top: .05em;
    left: -1.25em;
    color: rgba(0, 0, 0, .26);
    font-size: 1.5em;
    content: "check_box_outline_blank";
    vertical-align: -.25em
}

.md-typeset .task-list-control [type=checkbox]:checked+.task-list-indicator:before {
    content: "check_box"
}

.md-typeset .task-list-control [type=checkbox] {
    opacity: 0;
    z-index: -1
}

@media print {
    .md-typeset a:after {
        color: rgba(0, 0, 0, .54);
        content: " [" attr(href) "]"
    }
    .md-typeset code {
        box-shadow: none;
        -webkit-box-decoration-break: initial;
        box-decoration-break: slice
    }
    .md-content__edit, .md-footer, .md-header, .md-sidebar, .md-typeset .headerlink {
        display: none
    }
}

/* @media only screen and (max-width:44.9375em) {
    .md-typeset pre {
        margin: 1em -1.6rem;
        padding: 1rem 1.6rem;
        border-radius: 0
    }
    .md-footer-nav__link--prev .md-footer-nav__title {
        display: none
    }
    .codehilite .hll {
        margin: 0 -1.6rem;
        padding: 0 1.6rem
    }
    .md-typeset>.codehilite {
        padding: 1rem 1.6rem .8rem
    }
    .md-typeset>.codehilite, .md-typeset>.codehilitetable {
        margin: 1em -1.6rem;
        border-radius: 0
    }
    .md-typeset>.codehilitetable .codehilite, .md-typeset>.codehilitetable .linenodiv {
        padding: 1rem 1.6rem
    }
    .md-typeset>p>.MJXc-display {
        margin: .75em -1.6rem;
        padding: .25em 1.6rem
    }
} */

/* @media only screen and (min-width:100em) {
    html {
        font-size: 78%
    }
} */

/* @media only screen and (min-width:125em) {
    html {
        font-size: 75%
    }
} */

/* @media only screen and (max-width:29.9375em) {
    .md-header-nav__parent {
        display: none
    }
    [data-md-toggle=search]:checked~.md-header .md-search__overlay {
        -webkit-transform: scale(45);
        transform: scale(45)
    }
}

@media only screen and (min-width:30em) and (max-width:44.9375em) {
    [data-md-toggle=search]:checked~.md-header .md-search__overlay {
        -webkit-transform: scale(60);
        transform: scale(60)
    }
}

@media only screen and (min-width:45em) and (max-width:59.9375em) {
    [data-md-toggle=search]:checked~.md-header .md-search__overlay {
        -webkit-transform: scale(75);
        transform: scale(75)
    }
}

@media only screen and (min-width:60em) and (max-width:76.1875em) {
    .md-search__scrollwrap, [data-md-toggle=search]:checked~.md-header .md-search__form {
        width: 46.8rem
    }
}

@media only screen and (min-width:60em) and (min-width:76.25em) {
    .md-sidebar--secondary[data-md-state=lock] {
        margin-left: 122rem
    }
} */

@media only screen and (max-width:59.9375em) {
    body[data-md-state=lock] {
        overflow: hidden
    }
    .ios body[data-md-state=lock] .md-container {
        display: none
    }
    .md-content__edit {
        margin-right: -.8rem
    }
    .md-nav--secondary {
        border-left: 0
    }
    html .md-nav__link_lv2[for=toc], html .md-nav__link_lv1[for=toc], html .md-nav__link_lv3[for=toc]{
        display: block;
        padding-right: 4.8rem
    }
    html .md-nav__link_lv1[for=toc]:after,html .md-nav__link_lv2[for=toc]~.md-nav  {
        color: inherit;
        content: "toc"
    }
    html .md-nav__link_lv1[for=toc]+.md-nav__link_lv1 {
        display: none
    }
    html .md-nav__link_lv1[for=toc]~.md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .md-nav__source {
        display: block;
        padding: .4rem;
        background-color: rgba(50, 64, 144, .9675);
        color: #fff
    }
    .md-search__overlay {
        display: block;
        position: absolute;
        top: .4rem;
        left: .4rem;
        width: 4rem;
        height: 4rem;
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transition: opacity .2s .2s, -webkit-transform .3s .1s;
        transition: opacity .2s .2s, -webkit-transform .3s .1s;
        transition: transform .3s .1s, opacity .2s .2s;
        transition: transform .3s .1s, opacity .2s .2s, -webkit-transform .3s .1s;
        border-radius: 2rem;
        background-color: #fff;
        opacity: 0;
        overflow: hidden;
        z-index: 1
    }
    [data-md-toggle=search]:checked~.md-header .md-search__overlay {
        -webkit-transition: opacity .1s, -webkit-transform .4s;
        transition: opacity .1s, -webkit-transform .4s;
        transition: transform .4s, opacity .1s;
        transition: transform .4s, opacity .1s, -webkit-transform .4s;
        opacity: 1
    }
    .md-search__inner {
        position: fixed;
        top: 0;
        left: 100%;
        height: 100%;
        -webkit-transform: translateX(5%);
        transform: translateX(5%);
        -webkit-transition: left 0s .3s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.4, 0, .2, 1) .15s;
        transition: left 0s .3s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.4, 0, .2, 1) .15s;
        transition: left 0s .3s, transform .15s cubic-bezier(.4, 0, .2, 1) .15s, opacity .15s .15s;
        transition: left 0s .3s, transform .15s cubic-bezier(.4, 0, .2, 1) .15s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.4, 0, .2, 1) .15s;
        opacity: 0;
        z-index: 2
    }
    [data-md-toggle=search]:checked~.md-header .md-search__inner {
        left: 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: left 0s 0s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.1, .7, .1, 1) .15s;
        transition: left 0s 0s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.1, .7, .1, 1) .15s;
        transition: left 0s 0s, transform .15s cubic-bezier(.1, .7, .1, 1) .15s, opacity .15s .15s;
        transition: left 0s 0s, transform .15s cubic-bezier(.1, .7, .1, 1) .15s, opacity .15s .15s, -webkit-transform .15s cubic-bezier(.1, .7, .1, 1) .15s;
        opacity: 1
    }
    .md-search__input {
        width: 100%;
        height: 5.6rem;
        font-size: 1.8rem
    }
    .md-search__icon {
        top: 1.6rem;
        left: 1.6rem
    }
    .md-search__icon:before {
        content: "arrow_back"
    }
    .md-search__output {
        top: 5.6rem;
        bottom: 0
    }
}

@media only screen and (max-width:76.1875em) {
    [data-md-toggle=drawer]:checked~.md-overlay {
        width: 100%;
        height: 100%;
        -webkit-transition: width 0s, height 0s, opacity .25s;
        transition: width 0s, height 0s, opacity .25s;
        opacity: 1
    }
    .md-header-nav__button.md-icon--home, .md-header-nav__button.md-logo {
        display: none
    }
    .md-nav {
        background-color: #fff
    }
    .md-nav--primary, .md-nav--primary .md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 100%;
        z-index: 1
    }
    .md-nav--primary .md-nav__item_lv1,.md-nav--primary .md-nav__item_lv2, .md-nav--primary .md-nav__item_lv3,.md-nav--primary .md-nav__title {
        font-size: 1.6rem;
        line-height: 1.5
    }
    html .md-nav--primary .md-nav__title {
        position: relative;
        /* height: 11.2rem; */
        padding: 1rem 1.6rem .4rem;
        background-color: rgba(0, 0, 0, .07);
        color: rgba(0, 0, 0, .54);
        font-weight: 400;
        line-height: 4.8rem;
        white-space: nowrap;
        cursor: pointer
    }
    html .md-nav--primary .md-nav__title:before {
        display: block;
        position: absolute;
        top: .4rem;
        left: .4rem;
        width: 4rem;
        height: 4rem;
        color: rgba(0, 0, 0, .54)
    }
    html .md-nav--primary .md-nav__title~.md-nav__list {
        background: -webkit-linear-gradient(top, #fff 10%, hsla(0, 0%, 100%, 0)), -webkit-linear-gradient(top, rgba(0, 0, 0, .26), rgba(0, 0, 0, .07) 35%, transparent 60%);
        background: linear-gradient(180deg, #fff 10%, hsla(0, 0%, 100%, 0)), linear-gradient(180deg, rgba(0, 0, 0, .26), rgba(0, 0, 0, .07) 35%, transparent 60%);
        background-attachment: local, scroll;
        background-color: #fff;
        background-repeat: no-repeat;
        background-size: 100% 2rem, 100% 1rem;
        box-shadow: inset 0 .1rem 0 rgba(0, 0, 0, .07)
    }
    html .md-nav--primary .md-nav__title~.md-nav__list>.md-nav__item:first-child {
        border-top: 0
    }
    html .md-nav--primary .md-nav__title--site {
        position: relative;
        background-color: #3f51b5;
        color: #fff
    }
    html .md-nav--primary .md-nav__title--site .md-nav__button {
        display: block;
        position: absolute;
        top: .4rem;
        left: .4rem;
        width: 6.4rem;
        height: 6.4rem;
        font-size: 4.8rem
    }
    html .md-nav--primary .md-nav__title--site:before {
        display: none
    }
    .md-nav--primary .md-nav__list {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        overflow-y: auto
    }
    .md-nav--primary .md-nav__item {
        padding: 0;
        border-top: .1rem solid rgba(0, 0, 0, .07)
    }
    .md-nav--primary .md-nav__item--nested>.md-nav__link_lv1, .md-nav--primary .md-nav__item--nested>.md-nav__link_lv2,.md-nav--primary .md-nav__item--nested>.md-nav__link_lv3 {
        padding-right: 4.8rem
    }
    .md-nav--primary .md-nav__item--nested>.md-nav__link_lv1:after,.md-nav--primary .md-nav__item--nested>.md-nav__link_lv2:after {
        content: "keyboard_arrow_right"
    }
    .md-nav--primary .md-nav__link_lv1,.md-nav--primary .md-nav__link_lv2,.md-nav--primary .md-nav__link_lv3 {
        position: relative;
        padding: 1.6rem
    }
    .md-nav--primary .md-nav__link_lv1:after, .md-nav--primary .md-nav__link_lv2:after{
        position: absolute;
        top: 50%;
        right: 1.2rem;
        margin-top: -1.2rem;
        color: rgba(0, 0, 0, .54);
        font-size: 2.4rem
    }
    .md-nav--primary .md-nav__link_lv1:focus:after, .md-nav--primary .md-nav__link_lv1:hover:after {
        color: inherit
    }
    .md-nav--primary .md-nav--secondary .md-nav {
        position: static
    }
    .md-nav--primary .md-nav--secondary .md-nav .md-nav__link_lv1 {
        padding-left: 2.8rem
    }
    .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link_lv1 {
        padding-left: 4rem
    }
    .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link_lv1 {
        padding-left: 5.2rem
    }
    .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link_lv1 {
        padding-left: 6.4rem
    }
    .md-nav__toggle~.md-nav {
        display: none
    }
    .csstransforms3d .md-nav__toggle~.md-nav {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        -webkit-transition: opacity .125s .05s, -webkit-transform .25s cubic-bezier(.8, 0, .6, 1);
        transition: opacity .125s .05s, -webkit-transform .25s cubic-bezier(.8, 0, .6, 1);
        transition: transform .25s cubic-bezier(.8, 0, .6, 1), opacity .125s .05s;
        transition: transform .25s cubic-bezier(.8, 0, .6, 1), opacity .125s .05s, -webkit-transform .25s cubic-bezier(.8, 0, .6, 1);
        opacity: 0
    }
    .csstransforms3d .md-nav__toggle~.md-nav, .md-nav__toggle:checked~.md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
    .csstransforms3d .md-nav__toggle:checked~.md-nav {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: opacity .125s .125s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        transition: opacity .125s .125s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        transition: transform .25s cubic-bezier(.4, 0, .2, 1), opacity .125s .125s;
        transition: transform .25s cubic-bezier(.4, 0, .2, 1), opacity .125s .125s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        opacity: 1
    }
    .md-sidebar--primary {
        position: fixed;
        top: 0;
        left: -24.2rem;
        width: 24.2rem;
        height: 100%;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: box-shadow .25s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        transition: box-shadow .25s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        transition: transform .25s cubic-bezier(.4, 0, .2, 1), box-shadow .25s;
        transition: transform .25s cubic-bezier(.4, 0, .2, 1), box-shadow .25s, -webkit-transform .25s cubic-bezier(.4, 0, .2, 1);
        background-color: #fff;
        z-index: 2
    }
    .no-csstransforms3d .md-sidebar--primary {
        display: none
    }
    [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary {
        box-shadow: 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12), 0 5px 5px -3px rgba(0, 0, 0, .4);
        -webkit-transform: translateX(24.2rem);
        transform: translateX(24.2rem)
    }
    .no-csstransforms3d [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary {
        display: block
    }
    .md-sidebar--primary .md-sidebar__scrollwrap {
        overflow: hidden;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0
    }
}

@media only screen and (min-width:60em) {
    .md-content {
        /* margin-right: 24.2rem */
    }
    .md-header-nav__button.md-icon--search {
        display: none
    }
    .md-header-nav__source {
        display: block;
        width: 23rem;
        max-width: 23rem;
        padding-right: 1.2rem
    }
    .md-search {
        margin-right: 2.8rem;
        padding: .4rem
    }
    .md-search__inner {
        display: table;
        position: relative;
        clear: both
    }
    .md-search__form {
        width: 23rem;
        float: right;
        -webkit-transition: width .25s cubic-bezier(.1, .7, .1, 1);
        transition: width .25s cubic-bezier(.1, .7, .1, 1);
        border-radius: .2rem
    }
    .md-search__input {
        width: 100%;
        height: 4rem;
        padding-left: 4.8rem;
        -webkit-transition: background-color .25s, color .25s;
        transition: background-color .25s, color .25s;
        border-radius: .2rem;
        background-color: rgba(0, 0, 0, .26);
        color: #fff;
        font-size: 1.6rem
    }
    .md-search__input+.md-search__icon, .md-search__input::-webkit-input-placeholder {
        -webkit-transition: color .25s;
        transition: color .25s;
        color: #fff
    }
    .md-search__input+.md-search__icon, .md-search__input::-moz-placeholder {
        -webkit-transition: color .25s;
        transition: color .25s;
        color: #fff
    }
    .md-search__input+.md-search__icon, .md-search__input:-ms-input-placeholder {
        -webkit-transition: color .25s;
        transition: color .25s;
        color: #fff
    }
    .md-search__input+.md-search__icon, .md-search__input::placeholder {
        -webkit-transition: color .25s;
        transition: color .25s;
        color: #fff
    }
    .md-search__input:hover {
        background-color: hsla(0, 0%, 100%, .12)
    }
    [data-md-toggle=search]:checked~.md-header .md-search__input {
        border-radius: .2rem .2rem 0 0;
        background-color: #fff;
        color: rgba(0, 0, 0, .87);
        text-overflow: none
    }
    [data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon, [data-md-toggle=search]:checked~.md-header .md-search__input::-webkit-input-placeholder {
        color: rgba(0, 0, 0, .54)
    }
    [data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon, [data-md-toggle=search]:checked~.md-header .md-search__input::-moz-placeholder {
        color: rgba(0, 0, 0, .54)
    }
    [data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon, [data-md-toggle=search]:checked~.md-header .md-search__input:-ms-input-placeholder {
        color: rgba(0, 0, 0, .54)
    }
    [data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon, [data-md-toggle=search]:checked~.md-header .md-search__input::placeholder {
        color: rgba(0, 0, 0, .54)
    }
    .md-search__output {
        top: 4rem;
        -webkit-transition: opacity .4s;
        transition: opacity .4s;
        opacity: 0
    }
    [data-md-toggle=search]:checked~.md-header .md-search__output {
        box-shadow: 0 6px 10px 0 rgba(0, 0, 0, .14), 0 1px 18px 0 rgba(0, 0, 0, .12), 0 3px 5px -1px rgba(0, 0, 0, .4);
        opacity: 1
    }
    .md-search__scrollwrap {
        max-height: 0
    }
    [data-md-toggle=search]:checked~.md-header .md-search__scrollwrap {
        max-height: 75vh
    }
    .md-search__scrollwrap::-webkit-scrollbar {
        width: .4rem;
        height: .4rem
    }
    .md-search__scrollwrap::-webkit-scrollbar-thumb {
        background-color: rgba(0, 0, 0, .26)
    }
    .md-search__scrollwrap::-webkit-scrollbar-thumb:hover {
        background-color: #536dfe
    }
    .md-search-result__link, .md-search-result__meta {
        padding-left: 4.8rem
    }
    .md-sidebar--secondary {
        display: block;
        float: right
    }
    .md-sidebar--secondary[data-md-state=lock] {
        margin-left: 100%;
        -webkit-transform: translate(-100%);
        transform: translate(-100%)
    }
}

@media only screen and (min-width:76.25em) {
    .md-content {
        margin-left: 24.2rem;
        overflow: auto
    }
    .md-content__inner {
        margin: 2.4rem
    }
    .md-content__inner:last-child {
        margin-bottom: 0
    }
    .md-header-nav__button.md-icon--menu {
        display: none
    }
    .md-nav[data-md-state=animate] {
        -webkit-transition: max-height .25s cubic-bezier(.86, 0, .07, 1);
        transition: max-height .25s cubic-bezier(.86, 0, .07, 1)
    }
    .md-nav__toggle~.md-nav {
        max-height: 0;
        overflow: hidden
    }
    .md-nav[data-md-state=expand], .md-nav__toggle:checked~.md-nav {
        max-height: 100%
    }
    .md-nav__item--nested>.md-nav>.md-nav__title {
        display: none
    }
    .md-nav__item--nested>.md-nav__link_lv1:after {
        display: inline-block;
        -webkit-transform-origin: .45em .45em;
        transform-origin: .45em .45em;
        -webkit-transform-style: preserve-3d;
        transform-style: preserve-3d;
        vertical-align: -.125em
    }
    .js .md-nav__item--nested>.md-nav__link_lv1:after {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }
    .md-nav__item--nested .md-nav__toggle:checked~.md-nav__link_lv1:after {
        -webkit-transform: rotateX(180deg);
        transform: rotateX(180deg)
    }
    .md-search__scrollwrap, [data-md-toggle=search]:checked~.md-header .md-search__form {
        width: 68.8rem
    }
    .md-sidebar__inner {
        border-right: .1rem solid rgba(0, 0, 0, .07)
    }
}

@media only screen and (min-width:45em) {
    .md-footer-nav__link {
        width: 50%
    }
    .md-footer-copyright {
        max-width: 75%;
        float: left
    }
    .md-footer-social {
        padding: 1.2rem 0;
        float: right
    }
}
