:root {
    --button-color: #CFDBD5;
    --background-color: #E8EDDF;
    --link-color: #0099ff;
    --primary-font: 'Gambetta', sans-serif;
    --secondary-font: 'General Sans', sans-serif;
}

html {
    font-size: calc(20/16 * 1rem);
}

body{
    margin: 0 auto;
    font-family: var(--primary-font), Palatino, serif;
    font-weight: 400;
    color: #444444;
    line-height: 1;
    max-width: 700px;
    padding: 30px;
    font-display: swap;
}
h1, h2, h3, h4 {
    font-weight: 400;
    font-family: var(--secondary-font), Palatino, serif;
}
h1, h2, h3, h4, h5, p {
    margin-bottom: 1rem;
    padding: 0;
}
main h1:first-child {
    font-size: 3rem;
}
h1 {
    font-size: 2rem;
}
h1 code, h2 code {
    font-family: inherit;
    font-size: inherit;
}
h1 + h2 {
    color:grey;
}
h2 {
    font-size: 1.5rem;
    margin-top: 2rem;
}
h3 {
    font-size: 1.25rem;
}
h4 {
    font-size: 1.1rem;
}
h5 {
    font-size: 1rem;
}
a {
    color: var(--link-color);
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
ul, ol {
    padding: 0;
    margin: 0;
    padding-inline-start: 1rem;
}
li {
    line-height: 2rem;
}
li ul, li ul {
    margin-left: 24px;
}
p, ul, ol {
    font-size: 1rem;
    line-height: 1.5rem;
}
pre {
    padding: 0px 24px;
    max-width: 100%;
    white-space: pre-wrap;
    font-size: 0.7rem!important;
    position: relative;
}
pre[class*=language-]:before, 
pre[class*=language-]:after {
    box-shadow: none!important;
}
code {
    font-family: Consolas, Monaco, Andale Mono, monospace;
    margin-top: 1rem;
    line-height: 1.5;
    font-size: 0.75em;
    background: #eee;
    border-radius: 0.2rem;
    padding: 0.2rem;
}
aside {
    display: block;
    float: right;
    width: 390px;
}
blockquote {
    margin: 1em 2em;
}
blockquote p {
    color: #666;
}
hr {
    width: 540px;
    text-align: left;
    margin: 0 auto 0 0;
    color: #999;
}
table {
    border-collapse: collapse;
    margin: 1em 1em;
    border: 1px solid #CCC;
}
table thead {
    background-color: #EEE;
}
table thead td {
    color: #666;
}
table td {
    padding: 0.5em 1em;
    border: 1px solid #CCC;
}
img, pre {
    border: 2px solid #353839;
    max-width: 100%;
}

header {
    margin-bottom: 2em;
}

.category-tag {
    margin: 0.25rem;
    padding: 0.1rem 0.25rem;
    background-color: blanchedalmond;
    border-radius: 5px;
}

.copy-button {
    all: unset;
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    background-color: var(--button-color);
    padding: 0.1rem 0.5rem;
}

pre[class*=language-] {
    background: #eee!important;
}