:root {
    --bg-body: #fafafa;
    --bg-header: #f7f7f7;
    --text: #222222;
    --link: #0066cc;
    --grey: #5c5c5c;
}

body {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 768'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='239.67' y1='855.23' x2='606.28' y2='-152.04' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23f7f7f7'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%3E%3Cpath fill='url(%23a)' d='M0 0h1024v214L786.37 768H0V0z'/%3E%3C/g%3E%3C/svg%3E%0A");  
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: 100% 0;
    background-attachment: fixed;

    line-height: 1.6em;
    margin: 0;
    color: var(--text);
    /* background: var(--bg-body); */
    font-family: "Manrope", sans-serif;
}
a {
    text-decoration: none;
    color: var(--link);
}

#header {
    position: fixed;
    transition: top 0.3s ease 0s;
    top: 0px;
    width: 100%;
    height: 48px;
    padding: 2px;
    background: var(--bg-header);
    border-bottom: 1px solid rgba(0,0,0,0.14);
}
#header span {
    font-size: 24px;
    color: var(--link);
}
#header img {
    width: auto;
    height: 44px;
    padding-left: 7px;
    padding-right: 5px;
    padding-top: 1px;
    vertical-align: -13px;
}
#header button {
    display: inline;
    float: right;
    margin-right: 10px;
    margin-top: 6px;
    width: 36px;
    height: 36px;
    color: var(--bg-header);
    background: var(--link);
    border-radius: 3px;
    border: none;
}

#overlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 4;
}

nav {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    width: 300px;
    padding-top: 20px;
    padding-bottom: 35px;
    overflow: auto;
    background: var(--bg-body);
    border-right: 1px solid rgba(0,0,0,0.14);
    z-index: 5;
}
nav a {
    color: var(--text);
}

@media (min-width: 1211px) {
    nav {
        display: block!important;
        top: 60px;
        padding-top: 10px;
    /*    margin-top: 0;*/
        left: 0;
    }
    #header button {
        display: none;
    }
    #header {
        display: block!important;
        width: 296px;
        height: 60px;
        border-radius: 0 0px 3px 0;
        border-right: 1px solid rgba(0,0,0,0.14);
        z-index: 10;
    }
    #header img {
        height: 44px;
        padding-left: 20px;
        padding-top: 7px;
        vertical-align: -13px;
    }
    #header span {
        padding-left: 10px;
    }
}

nav::-webkit-scrollbar { width: 6px; }
nav::-webkit-scrollbar-thumb { background: #F1F0F4; }

.accordion {
    font-weight: 600;
    color: var(--text);
    background: var(--bg-body);
    padding: 0 30px;
    line-height: 30px;
    width: 100%;
    cursor: pointer;
    border: 0;
    text-align: left;
    font-size: 16px;
    margin-top: 15px;
}
.active, .accordion:hover {
    background: #F1F0F4;
}
.num {
    color: var(--link);
    font-family: "JetBrains Mono", sans-serif;
}
.panel {
    display: none;
}
.panel ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.panel li {
    padding: 7px 5px 7px 45px;
    line-height: 30px;
    font-size: 16px;
    font-weight: 500;
}

main {
    padding: 55px 15px 20px;
    font-size: 18px;
    line-height: 1.7em;
    font-weight: 500;
}
footer {
    margin: 20px 0 0;
    height: 48px;
    color: var(--grey);
    text-align: right;
    padding-right: 20px;
    line-height: 48px;
    border-top: 1px solid rgba(0,0,0,0.14);
}
@media (min-width: 931px) {
    main {
        max-width: 900px;
        margin: 0 auto;
    }
}
@media (min-width: 1211px) {
    main {
        margin-left: 330px;
        padding-top: 5px;
    }
}
@media (min-width: 1620px) {
    main {
        margin: 0 auto;
    }
}


h1 {
    font-size: 2.25em;
    line-height: 54px;
    color: var(--link);
    border-bottom: 1px solid rgba(80,80,80,0.14);
    padding-bottom: 10px;
    text-shadow: 3px 3px 2px rgba(0,0,0,0.1);
}
img {
    max-width: 100%;
    height: auto;
}
figure {
    text-align: center;
    margin: 1em 0;
}
figcaption {
    font-weight: 300;
}
@media(max-width: 500px) {
    figure, .ads {
        margin-left: -15px;
        margin-right: -15px;
    }
}
.center {
    text-align: center;
}

video {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

code {
    font-family: "JetBrains Mono", monospace;
    font-weight: 500;
    background: var(--bg-header);
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    border-radius: 3px;
    padding-left: 3px;
    padding-right: 3px;
}
pre {
    font-family: "JetBrains Mono", monospace;
    background: var(--bg-header);
    font-weight: 500;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding-left: 12px;
    overflow: auto;
    padding-top: 5px;
    padding-bottom: 5px;
}
kbd {
    font-family: "JetBrains Mono", monospace;
    border: 1px solid #ddd;
    padding-left: 2px;
    padding-right: 2px;
}
var, i, em {
    font-family: "JetBrains Mono", monospace;
    letter-spacing: -1px;
}
i {
    font-weight: 400;
}
#update {
    font-family: "JetBrains Mono", monospace;
    text-align: right;
    font-size: 14px;
    margin-top: -20px;
    margin-bottom: -10px;
    color: var(--grey);
}