html,
body,
div,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 100%;
    vertical-align: baseline;
}
body {
    line-height: 1;
    color: #000;
    background: #fff;
}
ol,
ul {
    list-style: none;
}
table {
    border-collapse: separate;
    border-spacing: 0;
    vertical-align: middle;
}
caption,
th,
td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
a img {
    border: none;
}
input,
button {
    margin: 0;
    padding: 0;
}
input::-moz-focus-inner,
button::-moz-focus-inner {
    border: 0;
    padding: 0;
}
@font-face {
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/fontawesome-webfont.eot?v=#4.0.3");
    src:
        url("../fonts/fontawesome-webfont.eot?#iefix&v=#4.0.3") format("embedded-opentype"),
        url("../fonts/fontawesome-webfont.woff?v=#4.0.3") format("woff"),
        url("../fonts/fontawesome-webfont.ttf?v=#4.0.3") format("truetype"),
        url("../fonts/fontawesome-webfont.svg#fontawesomeregular?v=#4.0.3") format("svg");
}
html,
body,
#container {
    height: 100%;
}
body {
    background: #fff;
    -webkit-text-size-adjust: 100%;
}
.outer {
    max-width: 800px;
    margin: 0 auto;
}
.outer:before,
.outer:after {
    content: "";
    display: table;
}
.outer:after {
    clear: both;
}
@media screen and (max-width: 839px) {
    .outer {
        padding: 0 20px;
    }
}

#main {
    max-width: 100%;
}
.page-header {
    display: table;
    width: 100%;
    min-height: 240px;
    text-align: center;
    background-image: url(/img/header-background.png);
    background-size: 363px 213px;
}
@media screen and (max-width: 839px) {
    .page-header {
        padding: 30px 0;
    }
}
.page-header-lines {
    display: table-cell;
    vertical-align: middle;
}
.page-header-title {
    font-size: 2em;
    max-width: 1000px;
    margin: 0 auto;
    font-weight: 400;
    font-size: xxx-large;
    line-height: 1.3;
}
.page-header-subtitle {
    font-size: 2em;
    margin: 0 auto;
    max-width: 1000px;
    line-height: 1.4;
    font-weight: 300;
}

.left,
.alignleft {
    float: left;
}
.right,
.alignright {
    float: right;
}
.clear {
    clear: both;
}
#container {
    position: relative;
}
.lang-switch {
    width: 80px;
    height: 18px;
    margin: 20px 0;
    background: url("../img/lang-switch.png") no-repeat;
    background-size: 38px 18px;
    background-position: 43px 0px;
    color: #676767;
}
.feed-footer,
.lang-switch-footer {
    text-decoration: underline !important;
    color: #676767;
}
#main-nav-lang-inner {
    display: none;
}
@media screen and (max-width: 839px) {
    #main-nav-lang-outer {
        display: none;
    }
    #main-nav-lang-inner {
        display: block;
    }
}

.blog-author-place {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #333;
    font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 16px;
    line-height: 1.8em;
    word-wrap: break-word;
}
.blog-author-place__inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.blog-author-place__name {
    font-size: x-large;
    font-weight: 500;
}
.blog-author-place__inner p {
    margin-bottom: 10px;
}
.blog-author-place__inner img {
    width: 160px;
    border-radius: 50%;
    margin-bottom: 10px;
}
.blog-author-place__inner .action-link {
    display: block;
    color: #939393;
    text-decoration: underline;
    margin-right: 5px;
}
.blog-author-place .category-link {
    display: block;
    color: #939393;
    cursor: pointer;
    margin-right: 5px;
}
.blog-author-place .category-link:hover {
    text-decoration: underline;
}
.blog-author-place__cell {
    padding-right: 10px;
}
@media screen and (max-width: 439px) {
    .blog-author-place__name {
        text-align: center;
    }
}
@media screen and (max-width: 639px) {
    .blog-author-place__cell-avatar {
        text-align: center;
    }
}
@media screen and (min-width: 1250px) {
    .blog-author-place {
        display: block;
        position: absolute;
        top: 200px;
        left: 20px;
        line-height: 1.6em;
    }
    .blog-author-place__inner {
        max-width: 180px;
    }
    .blog-author-place__cell {
        padding: 0 10px;
    }
}

.article-meta {
    line-height: 1.8em;
}
.article-meta a,
a.article-title,
.article-entry:not(.markdown-body) a,
#comments a,
#page-nav a,
#footer a,
.article-entry:not(.markdown-body) .gist .gist-file .gist-meta a,
.layout-wrap-inner .category-list a,
.tag-cloud a {
    color: #111;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
}
.article-meta a:hover,
a.article-title:hover,
.article-entry:not(.markdown-body) a:hover,
#comments a:hover,
#page-nav a:hover,
#footer a:hover,
.article-entry:not(.markdown-body) .gist .gist-file .gist-meta a:hover,
.layout-wrap-inner .category-list a:hover,
.tag-cloud a:hover {
    border-bottom-color: #000;
}
.article-entry:not(.markdown-body) a {
    border-bottom: 1px dotted #000;
}
.article-entry:not(.markdown-body) h1 {
    font-size: 2em;
}
.article-entry:not(.markdown-body) h2 {
    font-size: 1.5em;
}
.article-entry:not(.markdown-body) h3 {
    font-size: 1.3em;
}
.article-entry:not(.markdown-body) h4 {
    font-size: 1.2em;
}
.article-entry:not(.markdown-body) h5 {
    font-size: 1em;
}
.article-entry:not(.markdown-body) h6 {
    font-size: 1em;
    color: #939393;
}
.article-entry:not(.markdown-body) hr {
    border: 1px dashed #ddd;
}
.article-entry:not(.markdown-body) strong {
    font-weight: bold;
}
.article-entry em,
.article-entry cite {
    font-style: italic;
}
.article-entry:not(.markdown-body) sup,
.article-entry:not(.markdown-body) sub {
    font-size: 0.75em;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
.article-entry:not(.markdown-body) sup {
    top: -0.5em;
}
.article-entry:not(.markdown-body) sub {
    bottom: -0.2em;
}
.article-entry:not(.markdown-body) small {
    font-size: 0.85em;
}
.article-entry:not(.markdown-body) acronym,
.article-entry:not(.markdown-body) abbr {
    border-bottom: 1px dotted;
}
.article-entry:not(.markdown-body) ul,
.article-entry:not(.markdown-body) ol,
.article-entry:not(.markdown-body) dl {
    margin: 0 20px;
    line-height: 1.4em;
}
.article-entry:not(.markdown-body) ul ul,
.article-entry:not(.markdown-body) ol ul,
.article-entry:not(.markdown-body) ul ol,
.article-entry:not(.markdown-body) ol ol {
    margin-top: 0;
    margin-bottom: 0;
}
.article-entry:not(.markdown-body) ul {
    list-style: disc;
}
.article-entry:not(.markdown-body) ol {
    list-style: decimal;
}
.article-entry:not(.markdown-body) dt {
    font-weight: bold;
}
#header {
    font-size: 14px;
    position: relative;
    border-bottom: 1px solid #ddd;
}
#header.mobile-on #main-nav,
#header.mobile-on #sub-nav {
    display: block;
}
#header-outer {
    height: 100%;
    position: relative;
}
#header-inner {
    position: relative;
    overflow: hidden;
}
#main-nav {
    float: left;
    margin-left: -15px;
}
.main-nav-link,
#main-nav-toggle {
    float: left;
    color: #000;
    text-decoration: none;
    -webkit-transition: opacity 0.2s;
    -moz-transition: opacity 0.2s;
    -ms-transition: opacity 0.2s;
    transition: opacity 0.2s;
    display: block;
    padding: 16px 15px;
}
.main-nav-link {
    font-weight: 400;
    font-size: 20px;
    line-height: normal;
    color: #939393;
}
@media screen and (max-width: 839px) {
    .main-nav-link {
        float: none;
        text-align: center;
    }
}
#main-nav-toggle {
    display: none;
    font-size: 16px;
    padding-left: 0;
    font-family: FontAwesome;
}
#main-nav-toggle:before {
    content: "\f0c9";
}
@media screen and (max-width: 839px) {
    #main-nav-toggle {
        display: block;
    }
}
.logo {
    float: left;
    width: 0px;
    height: 57px;
}
@media screen and (max-width: 839px) {
    .logo {
        float: none;
        width: 100%;
        display: block;
    }
}
#sub-nav {
    float: right;
}
@media screen and (max-width: 839px) {
    #main-nav,
    #sub-nav {
        display: none;
        float: none;
    }
}
.article {
    max-width: 800px;
    margin: 50px auto;
    border-bottom: 1px solid #ddd;
}
.article-inner {
    margin-bottom: 15px;
    overflow: hidden;
}
.article-meta:before,
.article-meta:after {
    content: "";
    display: table;
}
.article-meta:after {
    clear: both;
}
.article-meta a {
    color: #939393;
}
.article-date {
    float: left;
}
.article-category {
    float: left;
    margin-left: 8px;
    color: #939393;
}
.article-category:before {
    content: "\2022";
}
.article-category span {
    margin-left: 8px;
}
.article-category-link {
    margin-left: 8px;
}
.article-comment-link-wrap {
    float: left;
    margin-left: 8px;
    color: #939393;
}
.article-comment-link-wrap:before {
    content: "\2022";
}
.article-comment-link-wrap span {
    margin-left: 8px;
    cursor: pointer;
}
.article-comment-link-wrap span:hover {
    text-decoration: none;
    border-bottom: 1px dotted #000;
}
.article-header {
    margin-bottom: 10px;
}
.article-title {
    font-size: 2em;
    font-weight: 700;
    line-height: 1em;
}
.article-entry:not(.markdown-body) {
    color: #111;
    padding: 0;
}
.article-entry:not(.markdown-body):before,
.article-entry:not(.markdown-body):after {
    content: "";
    display: table;
}
.article-entry:not(.markdown-body):after {
    clear: both;
}
.article-entry:not(.markdown-body) p,
.article-entry:not(.markdown-body) table {
    line-height: 1.4em;
    margin: 1.4em 0;
}
.article-entry:not(.markdown-body) h1,
.article-entry:not(.markdown-body) h2,
.article-entry:not(.markdown-body) h3,
.article-entry:not(.markdown-body) h4,
.article-entry:not(.markdown-body) h5,
.article-entry:not(.markdown-body) h6 {
    font-weight: 600;
    line-height: 1.4em;
    margin: 1em 0;
}
.article-entry:not(.markdown-body) ul,
.article-entry:not(.markdown-body) ol,
.article-entry:not(.markdown-body) dl {
    margin-top: 1.4em;
    margin-bottom: 1.4em;
}
.article-entry:not(.markdown-body) img,
.article-entry:not(.markdown-body) video {
    max-width: 100%;
    height: auto;
    display: block;
    margin: auto;
}
.article-entry:not(.markdown-body) iframe {
    border: none;
}
.article-entry:not(.markdown-body) table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
.article-entry:not(.markdown-body) th {
    font-weight: 600;
    border-bottom: 3px solid #ddd;
    padding-bottom: 0.5em;
}
.article-entry:not(.markdown-body) td {
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
}
.article-entry:not(.markdown-body) .caption {
    color: #939393;
    display: block;
    font-size: 0.9em;
    margin-top: 0.5em;
    position: relative;
    text-align: center;
}
.article-entry:not(.markdown-body) .video-container {
    position: relative;
    padding-top: 56.25%;
    height: 0;
    overflow: hidden;
}
.article-entry:not(.markdown-body) .video-container iframe,
.article-entry:not(.markdown-body) .video-container object,
.article-entry:not(.markdown-body) .video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-top: 0;
}
.article-more-link {
    margin-top: 20px !important;
}
.article-more-link a {
    padding: 10px;
    margin-top: 5px;
    border: 1px solid #4078c0;
    border-radius: 3px;
    cursor: pointer;
    text-decoration: none !important;
}
.article-more-link a:hover {
    color: #fff;
    background-color: #4078c0;
}

.article-footer {
    font-size: 0.85em;
    padding-bottom: 1.4em;
    line-height: 1.4em;
    margin: 0;
}
.article-footer:before,
.article-footer:after {
    content: "";
    display: table;
}
.article-footer:after {
    clear: both;
}
.article-footer a {
    color: #939393;
    text-decoration: none;
}
.article-footer a:hover {
    color: #111;
}
.article-tag-list {
    overflow: hidden;
}
.article-tag-list-item {
    float: left;
}
.article-tag-list-link {
    margin-right: 5px;
}
.article-sign h4 {
    margin-bottom: 0px !important;
}
.article-sign p {
    color: #939393;
}
.share-holder {
    margin-top: 2.5em !important;
}
.learning-series-box {
    padding: 10px 30px;
    margin: 20px 0;
    border: 5px dashed;
    border-radius: 3px;
    border-color: #daeaff;
    /* background-color: #f5f8fa; */
}
.markdown-body .learning-series-box {
    margin-bottom: 30px;
}
.learning-series-box ul {
    line-height: 1.8;
    margin-bottom: 20px;
}
.learning-series-box__header {
    font-size: 1.5em;
    font-weight: 400;
    line-height: 1.43;
    margin-top: 20px;
    margin-bottom: 0px;
    text-align: center;
}
.learning-series-box__sub-header {
    font-size: 1.5em;
    line-height: 1.33;
    text-align: center;
    margin-bottom: 20px;
}
.learning-series-box .current-post {
    text-decoration: underline;
    color: #484848;
}
.learning-series-box__text {
}
.learning-series-box__subscribe-form {
    overflow: auto;
    margin: 30px 0 0px 0;
}
.details-box,
.remark-box {
    padding: 16px 16px 0px;
    margin: 20px 0;
    border: 5px dashed;
    border-radius: 3px;
    border-color: #daeaff;
}
.markdown-body .details-box p:empty,
.markdown-body .remark-box p:empty {
    margin-bottom: 0;
}
.details-box {
    padding: 0px 16px;
}
.attention-box {
    padding: 16px 16px;
    margin: 20px 0;
    border: 2px dashed;
    border-radius: 5px;
    border-color: #8d0008;
}
.attention-box__inner {
    margin: 10px 30px 0;
    color: #6d6d6d;
}
.markdown-body .attention-box a {
    color: #8d0008;
}
.markdown-body .attention-box p {
    margin-bottom: 0;
}
.email-subs-box {
    padding: 20px 40px 10px 40px;
    margin: 30px 0;
    border: 5px dashed;
    border-radius: 3px;
    border-color: #daeaff;
}
.email-subs-box__blog-post {
    padding: 0 30px;
    margin-top: 115px !important;
}
.email-subs-box__series {
    padding: 30px;
    margin-top: 0 !important
}
.formkit-powered-by-convertkit-container {
    display: none !important;
}
.badge-new {
    margin-left: 5px;
    /* color: #5c9505; */
    color: #fb5251;
    vertical-align: super;
    /* border: 2px solid #5c9505; */
    border: 2px solid #fb5251;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 600;
    padding: 0px 9px;
    user-select: none;
}
#article-nav {
    position: relative;
    margin: 20px 0;
}
#article-nav:before,
#article-nav:after {
    content: "";
    display: table;
}
#article-nav:after {
    clear: both;
}
.article-nav-link-wrap {
    text-decoration: none;
    text-shadow: 0 1px #fff;
    color: #939393;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    display: block;
}
.article-nav-link-wrap:hover {
    color: #111;
}
@media screen and (min-width: 840px) {
    .article-nav-link-wrap {
        width: 50%;
        margin-top: 0;
        margin-top: 50px;
    }
}
#article-nav-newer {
    float: left;
    text-align: left;
}
#article-nav-older {
    float: right;
    text-align: right;
}
.article-nav-caption {
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #ddd;
    line-height: 1em;
    font-weight: 600;
}
#article-nav-newer .article-nav-caption {
    margin-right: -2px;
}
.article-nav-title {
    font-size: 0.85em;
    line-height: 1.4em;
    margin-top: 0.5em;
}

.article-pager {
    max-width: 800px;
    margin: 0 auto;
}
.article-pager-inner {
    display: flex;
    flex-direction: column;
}
.article-pager-newer {
    align-self: center;
}
.article-pager-older {
    align-self: center;
}
.article-pager-counter {
    align-self: center;
    color: #939393;
}
@media screen and (min-width: 500px) {
    .article-pager-inner {
        flex-direction: row;
        justify-content: space-between;
    }
    .article-pager-newer {
        align-self: flex-start
    }
    .article-pager-older {
        align-self: flex-end
    }
}

.blog-index-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    line-height: 1.8em;
}
.blog-index-title {
    margin-top: 0;
    margin-bottom: 15px
}
.markdown-body .blog-index-link {
    color: #939393;
    display: block;
}
.markdown-body .tag-index-link {
    color: #939393;
    display: block;
    margin: 5px 0;
}

#comments {
    max-width: 800px;
    margin: 50px auto;
}
#page-nav {
    margin: 50px auto;
    text-align: center;
    overflow: hidden;
}
#page-nav:before,
#page-nav:after {
    content: "";
    display: table;
}
#page-nav:after {
    clear: both;
}
#page-nav a,
#page-nav span {
    width: 36px;
    height: 36px;
    margin: 0 5px;
    line-height: 36px;
    text-align: center;
}
#page-nav a.prev,
#page-nav a.next {
    margin: 0;
    width: auto;
}
#page-nav .prev {
    float: left;
}
#page-nav .next {
    float: right;
}
#page-nav .page-number {
    display: inline-block;
}
@media screen and (max-width: 839px) {
    #page-nav .page-number {
        display: none;
    }
}
#page-nav .current {
    color: #fff;
    -webkit-border-radius: 18px;
    border-radius: 18px;
    background-color: #000;
}
#page-nav .space {
    color: #ddd;
}
#footer {
    padding: 50px 0;
    text-align: center;
}
#footer a {
    font-weight: 600;
}
.footer-info {
    line-height: 1.4em;
    font-size: 0.85em;
}
.layout-wrap {
    margin: 50px 0;
}
.layout-title {
    font-size: 1.4em;
    margin-bottom: 1em;
}
.layout-wrap-inner .category-list,
.layout-wrap-inner .category-list-child {
    line-height: 1.8em;
}
.layout-wrap-inner .category-list:before,
.layout-wrap-inner .category-list-child:before,
.layout-wrap-inner .category-list:after,
.layout-wrap-inner .category-list-child:after {
    content: "";
    display: table;
}
.layout-wrap-inner .category-list:after,
.layout-wrap-inner .category-list-child:after {
    clear: both;
}
.layout-wrap-inner .category-list-child {
    margin-left: 24px;
}
.layout-wrap-inner li:before {
    content: '>';
    float: left;
    padding: 0 16px 0 0;
}
.layout-wrap-inner .category-list-count {
    margin-left: 8px;
    color: #939393;
}
.layout-wrap-inner .category-list-count:before {
    content: '(';
}
.layout-wrap-inner .category-list-count:after {
    content: ')';
}
.tag-cloud a {
    margin-right: 8px;
}
.tag-cloud a:before {
    content: '#';
}
.error-title {
    font-size: 2em;
    line-height: 1em;
    margin-top: 20px;
    text-align: center;
    color: #111;
}
.error-status-code {
    font-size: 1.5em;
    line-height: 1em;
    margin-top: 5px;
    text-align: center;
    color: #111;
}

.about-me-title {
    margin-top: 0 !important;
}
.about-me-row-intro {
    font-size: 17px;
    overflow: hidden;
    margin-top: 30px;
}
.about-me-col {
    overflow: hidden;
}
.about-me-photo {
    margin: 0 1.4em 1.4em 0;
}
@media screen and (min-width: 600px) {
    .about-me-col {
        float: left;
    }
    .about-me-photo {
        width: 280px;
    }
}
.about-me-intro {
    min-width: 200px;
    max-width: 630px;
    margin-right: 0;
    text-align: justify;
    word-wrap: break-word;
    float: none;
}
.about-me-row {
    font-size: 17px;
    overflow: hidden;
}
.about-me__under-the-hood {
    margin-bottom: 10px;
}

.interest-tags {
    list-style: none !important;
    margin: 0;
    overflow: hidden;
    padding: 0;
}
.interest-tags li {
    float: left;
}
.interest-tag {
    background: #eee;
    border-radius: 3px 0 0 3px;
    display: inline-block;
    height: 26px;
    line-height: 26px;
    padding: 0 20px 0 23px;
    position: relative;
    margin: 0 10px 10px 0;
    text-decoration: none;
    -webkit-transition: color 0.2s;
    border-bottom: none !important;
    cursor: pointer;
}


/* markdown-body */
@font-face {
    font-family: octicons-link;
    src: url(data:font/woff;charset=utf-8;base64,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) format('woff');
}

.markdown-body {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #333;
    font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 17px;
    line-height: 1.6;
    word-wrap: break-word;
}

.markdown-body a {
    background-color: transparent;
}

.markdown-body a:active,
.markdown-body a:hover {
    outline: 0;
}

.markdown-body details summary {
    cursor: pointer;
    color: #4078c0;
    margin: 20px 0;
}

.markdown-body strong {
    font-weight: bold;
}

.markdown-body h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

.markdown-body img {
    border: 0;
}

.markdown-body hr {
    box-sizing: content-box;
    height: 0;
}

.markdown-body pre {
    overflow: auto;
}

.markdown-body code,
.markdown-body kbd,
.markdown-body pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

.markdown-body input {
    color: inherit;
    font: inherit;
    margin: 0;
}

.markdown-body html input[disabled] {
    cursor: default;
}

.markdown-body input {
    line-height: normal;
}

.markdown-body input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0;
}

.markdown-body table {
    border-collapse: collapse;
    border-spacing: 0;
}

.markdown-body td,
.markdown-body th {
    padding: 0;
}

.markdown-body * {
    box-sizing: border-box;
}

.markdown-body input {
    font: 13px / 1.4 Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

.markdown-body a {
    color: #4078c0;
    text-decoration: none;
}

.markdown-body a:hover,
.markdown-body a:active {
    text-decoration: underline;
}

.markdown-body hr {
    height: 0;
    margin: 15px 0;
    overflow: hidden;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #ddd;
}

.markdown-body hr:before {
    display: table;
    content: "";
}

.markdown-body hr:after {
    display: table;
    clear: both;
    content: "";
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
    margin-top: 15px;
    margin-bottom: 15px;
    line-height: 1.1;
}

.markdown-body h1 {
    font-size: 30px;
}

.markdown-body h2 {
    font-size: 21px;
}

.markdown-body h3 {
    font-size: 16px;
}

.markdown-body h4 {
    font-size: 14px;
}

.markdown-body h5 {
    font-size: 12px;
}

.markdown-body h6 {
    font-size: 11px;
}

.markdown-body blockquote {
    margin: 0;
}

.markdown-body ul,
.markdown-body ol {
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
    list-style: inherit;
}

.markdown-body ol ol,
.markdown-body ul ol {
    list-style-type: lower-roman;
}

.markdown-body ul ul ol,
.markdown-body ul ol ol,
.markdown-body ol ul ol,
.markdown-body ol ol ol {
    list-style-type: lower-alpha;
}

.markdown-body dd {
    margin-left: 0;
}

.markdown-body code {
    font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
    font-size: 12px;
}

.markdown-body pre {
    margin-top: 0;
    margin-bottom: 0;
    font: 12px Consolas, "Liberation Mono", Menlo, Courier, monospace;
}

.markdown-body .select::-ms-expand {
    opacity: 0;
}

.markdown-body .octicon {
    font: normal normal normal 16px/1 octicons-link;
    display: inline-block;
    text-decoration: none;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.markdown-body .octicon-link:before {
    content: '\f05c';
}

.markdown-body:before {
    display: table;
    content: "";
}

.markdown-body:after {
    display: table;
    clear: both;
    content: "";
}

.markdown-body>*:first-child {
    margin-top: 1.5em !important;
}

.markdown-body>*:last-child {
    margin-bottom: 1.5em !important;
}

.markdown-body a:not([href]) {
    color: inherit;
    text-decoration: none;
}

.markdown-body .anchor {
    display: inline-block;
    padding-right: 2px;
    margin-left: -18px;
}

.markdown-body .anchor:focus {
    outline: none;
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
    margin-top: 1em;
    margin-bottom: 16px;
    font-weight: bold;
    line-height: 1.4;
}

.markdown-body h1 .octicon-link,
.markdown-body h2 .octicon-link,
.markdown-body h3 .octicon-link,
.markdown-body h4 .octicon-link,
.markdown-body h5 .octicon-link,
.markdown-body h6 .octicon-link {
    color: #000;
    vertical-align: middle;
    visibility: hidden;
}

.markdown-body h1:hover .anchor,
.markdown-body h2:hover .anchor,
.markdown-body h3:hover .anchor,
.markdown-body h4:hover .anchor,
.markdown-body h5:hover .anchor,
.markdown-body h6:hover .anchor {
    text-decoration: none;
}

.markdown-body h1:hover .anchor .octicon-link,
.markdown-body h2:hover .anchor .octicon-link,
.markdown-body h3:hover .anchor .octicon-link,
.markdown-body h4:hover .anchor .octicon-link,
.markdown-body h5:hover .anchor .octicon-link,
.markdown-body h6:hover .anchor .octicon-link {
    visibility: visible;
}

.markdown-body h1 {
    padding-bottom: 0.3em;
    font-size: 2.25em;
    line-height: 1.2;
    border-bottom: 1px solid #eee;
}

.markdown-body h1 .anchor {
    line-height: 1;
}

.markdown-body h2 {
    padding-bottom: 0.3em;
    font-size: 1.75em;
    line-height: 1.225;
    border-bottom: 1px solid #eee;
}

.markdown-body h2 .anchor {
    line-height: 1;
}

.markdown-body h3 {
    font-size: 1.5em;
    line-height: 1.43;
}

.markdown-body h3 .anchor {
    line-height: 1.2;
}

.markdown-body h4 {
    font-size: 1.25em;
}

.markdown-body h4 .anchor {
    line-height: 1.2;
}

.markdown-body h5 {
    font-size: 1em;
}

.markdown-body h5 .anchor {
    line-height: 1.1;
}

.markdown-body h6 {
    font-size: 1em;
    color: #777;
}

.markdown-body h6 .anchor {
    line-height: 1.1;
}

.markdown-body p,
.markdown-body blockquote,
.markdown-body ul,
.markdown-body ol,
.markdown-body dl,
.markdown-body table,
.markdown-body pre {
    margin-top: 0;
    margin-bottom: 16px;
}

.markdown-body hr {
    height: 4px;
    padding: 0;
    margin: 16px 0;
    background-color: #e7e7e7;
    border: 0 none;
}

.markdown-body ul,
.markdown-body ol {
    padding-left: 2em;
}

.markdown-body ul ul,
.markdown-body ul ol,
.markdown-body ol ol,
.markdown-body ol ul {
    margin-top: 0;
    margin-bottom: 0;
}

.markdown-body li>p {
    margin-top: 16px;
}

.markdown-body dl {
    padding: 0;
}

.markdown-body dl dt {
    padding: 0;
    margin-top: 16px;
    font-size: 1em;
    font-style: italic;
    font-weight: bold;
}

.markdown-body dl dd {
    padding: 0 16px;
    margin-bottom: 16px;
}

.markdown-body blockquote {
    padding: 0 15px;
    color: #777;
    border-left: 4px solid #ddd;
}

.markdown-body blockquote>:first-child {
    margin-top: 0;
}

.markdown-body blockquote>:last-child {
    margin-bottom: 0;
}

.markdown-body table {
    display: block;
    width: 100%;
    overflow: auto;
    word-break: normal;
    word-break: keep-all;
}

.markdown-body table th {
    font-weight: bold;
}

.markdown-body table th,
.markdown-body table td {
    padding: 6px 13px;
    border: 1px solid #ddd;
}

.markdown-body table tr {
    background-color: #fff;
    border-top: 1px solid #ccc;
}

.markdown-body table tr:nth-child(2n) {
    background-color: #f8f8f8;
}

.markdown-body img {
    max-width: 100%;
    box-sizing: content-box;
    background-color: #fff;
}

.markdown-body code {
    padding: 0;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    margin: 0;
    font-size: 85%;
    background-color: rgba(0,0,0,0.04);
    border-radius: 3px;
}

.markdown-body code:before,
.markdown-body code:after {
    letter-spacing: -0.2em;
    content: "\00a0";
}

.markdown-body pre>code {
    padding: 0;
    margin: 0;
    font-size: 100%;
    word-break: normal;
    white-space: pre;
    background: transparent;
    border: 0;
}

.markdown-body .highlight {
    margin-bottom: 16px;
}

.markdown-body .highlight pre,
.markdown-body pre {
    padding: 16px;
    overflow: auto;
    font-size: 85%;
    line-height: 1.45;
    background-color: #f7f7f7;
    background-color: #282c34;
    border-radius: 3px;
}

.markdown-body .highlight pre {
    margin-bottom: 0;
    word-break: normal;
}

.markdown-body pre {
    word-wrap: normal;
}

.markdown-body pre code {
    display: inline;
    max-width: initial;
    padding: 0;
    margin: 0;
    overflow: initial;
    line-height: inherit;
    word-wrap: normal;
    background-color: transparent;
    border: 0;
}

.markdown-body pre code:before,
.markdown-body pre code:after {
    content: normal;
}

.markdown-body kbd {
    display: inline-block;
    padding: 3px 5px;
    font-size: 11px;
    line-height: 10px;
    color: #555;
    vertical-align: middle;
    background-color: #fcfcfc;
    border: solid 1px #ccc;
    border-bottom-color: #bbb;
    border-radius: 3px;
    box-shadow: inset 0 -1px 0 #bbb;
}

.markdown-body .pl-c {
    color: #969896;
}

.markdown-body .pl-c1,
.markdown-body .pl-s .pl-v {
    color: #0086b3;
}

.markdown-body .pl-e,
.markdown-body .pl-en {
    color: #795da3;
}

.markdown-body .pl-s .pl-s1,
.markdown-body .pl-smi {
    color: #333;
}

.markdown-body .pl-ent {
    color: #63a35c;
}

.markdown-body .pl-k {
    color: #a71d5d;
}

.markdown-body .pl-pds,
.markdown-body .pl-s,
.markdown-body .pl-s .pl-pse .pl-s1,
.markdown-body .pl-sr,
.markdown-body .pl-sr .pl-cce,
.markdown-body .pl-sr .pl-sra,
.markdown-body .pl-sr .pl-sre {
    color: #183691;
}

.markdown-body .pl-v {
    color: #ed6a43;
}

.markdown-body .pl-id {
    color: #b52a1d;
}

.markdown-body .pl-ii {
    background-color: #b52a1d;
    color: #f8f8f8;
}

.markdown-body .pl-sr .pl-cce {
    color: #63a35c;
    font-weight: bold;
}

.markdown-body .pl-ml {
    color: #693a17;
}

.markdown-body .pl-mh,
.markdown-body .pl-mh .pl-en,
.markdown-body .pl-ms {
    color: #1d3e81;
    font-weight: bold;
}

.markdown-body .pl-mq {
    color: #008080;
}

.markdown-body .pl-mi {
    color: #333;
    font-style: italic;
}

.markdown-body .pl-mb {
    color: #333;
    font-weight: bold;
}

.markdown-body .pl-md {
    background-color: #ffecec;
    color: #bd2c00;
}

.markdown-body .pl-mi1 {
    background-color: #eaffea;
    color: #55a532;
}

.markdown-body .pl-mdr {
    color: #795da3;
    font-weight: bold;
}

.markdown-body .pl-mo {
    color: #1d3e81;
}

.markdown-body kbd {
    display: inline-block;
    padding: 3px 5px;
    font: 11px Consolas, "Liberation Mono", Menlo, Courier, monospace;
    line-height: 10px;
    color: #555;
    vertical-align: middle;
    background-color: #fcfcfc;
    border: solid 1px #ccc;
    border-bottom-color: #bbb;
    border-radius: 3px;
    box-shadow: inset 0 -1px 0 #bbb;
}

.markdown-body .task-list-item {
    list-style-type: none;
}

.markdown-body .task-list-item+.task-list-item {
    margin-top: 3px;
}

.markdown-body .task-list-item input {
    margin: 0 0.35em 0.25em -1.6em;
    vertical-align: middle;
}

.markdown-body :checked+.radio-label {
    z-index: 1;
    position: relative;
    border-color: #4078c0;
}

.markdown-body {
    box-sizing: border-box;
    min-width: 200px;
    max-width: 980px;
    margin: 0 auto;
}

/*

Atom One Dark by Daniel Gamage
Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax

base:    #282c34
mono-1:  #abb2bf
mono-2:  #818896
mono-3:  #5c6370
hue-1:   #56b6c2
hue-2:   #61aeee
hue-3:   #c678dd
hue-4:   #98c379
hue-5:   #e06c75
hue-5-2: #be5046
hue-6:   #d19a66
hue-6-2: #e6c07b

*/

.markdown-body .hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  color: #abb2bf;
  background: #282c34;
}

.markdown-body .hljs-comment,
.markdown-body .hljs-quote {
  color: #5c6370;
  font-style: italic;
}

.markdown-body .hljs-doctag,
.markdown-body .hljs-keyword,
.markdown-body .hljs-formula {
  color: #c678dd;
}

.markdown-body .hljs-section,
.markdown-body .hljs-name,
.markdown-body .hljs-selector-tag,
.markdown-body .hljs-deletion,
.markdown-body .hljs-subst {
  color: #e06c75;
}

.markdown-body .hljs-literal {
  color: #56b6c2;
}

.markdown-body .hljs-string,
.markdown-body .hljs-regexp,
.markdown-body .hljs-addition,
.markdown-body .hljs-attribute,
.markdown-body .hljs-meta-string {
  color: #98c379;
}

.markdown-body .hljs-built_in,
.markdown-body .hljs-class .hljs-title {
  color: #e6c07b;
}

.markdown-body .hljs-attr,
.markdown-body .hljs-variable,
.markdown-body .hljs-template-variable,
.markdown-body .hljs-type,
.markdown-body .hljs-selector-class,
.markdown-body .hljs-selector-attr,
.markdown-body .hljs-selector-pseudo,
.markdown-body .hljs-number {
  color: #d19a66;
}

.markdown-body .hljs-symbol,
.markdown-body .hljs-bullet,
.markdown-body .hljs-link,
.markdown-body .hljs-meta,
.markdown-body .hljs-selector-id,
.markdown-body .hljs-title {
  color: #61aeee;
}

.markdown-body .hljs-emphasis {
  font-style: italic;
}

.markdown-body .hljs-strong {
  font-weight: bold;
}

.markdown-body .hljs-link {
  text-decoration: underline;
}

