:root {
    --background: hsl(266, 60.7%, 12%);
    --foreground: hsl(297, 79.7%, 74.9%);
    --text-size: calc(0.6rem + 0.6vw);
    --font-family: "Maple Mono";
}

::selection, ::-moz-selection {
    background: var(--foreground);
    color: var(--background);
}

@font-face {
    font-family: "Maple Mono";
    font-style: italic;
    font-weight: bold;
    src: url("fonts/MapleMono-BoldItalic.ttf.woff2") format("woff2");
}

@font-face {
    font-family: "Maple Mono";
    font-weight: bold;
    src: url("fonts/MapleMono-Bold.ttf.woff2") format("woff2");
}

@font-face {
    font-family: "Maple Mono";
    font-weight: italic;
    src: url("fonts/MapleMono-Italic.ttf.woff2") format("woff2");
}

@font-face {
    font-family: "Maple Mono";
    src: url("fonts/MapleMono-Regular.ttf.woff2") format("woff2");
}

html {
    margin: 0;
    color: var(--foreground);
    font-family: "Maple Mono";
    font-size: var(--text-size);
    font-weight: bold;
    background: linear-gradient(
        hsla(266, 60.7%, 12%, 85%),
        hsla(266, 60.7%, 12%, 85%)
    ),
    no-repeat url("images/Simplex.png"),
    url("images/Stars.svg"),
    var(--background);
    background-position: center, center, center, center;
    background-size: auto 75vh;
}

body {
    margin: 1.5rem;
}

main {
    height: 85vh;
    overflow: scroll;
}

h1, h2, h3, h4, h5, h6 {
    background: var(--foreground);
    width: fit-content;
    color: var(--background);
    padding-right: 1rem;
    padding-left: 0.5rem;
    border-radius: 0 2rem 2rem 0;
    transition: 0.2s;
}

h1 > a, h2 > a, h3 > a, h4 > a, h5 > a, h6 > a {
    text-decoration: 0.1rem solid underline;
}

header, footer {
    background: var(--foreground);
    color: var(--background);
    font-weight: bold;
    font-size: 1.25rem;
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 0.5rem;
}

header > p, footer > p {
    margin: 0;
    width: fit-content;
    text-align: center;
}

header > a {
    justify-self: start;
}

header > a, nav > a {
    text-decoration: none;
}

header > nav > a {
    border-radius: 4rem;
}

header > a:hover, nav > a:hover {
    color: var(--foreground);
    background: var(--background);
}

h1 {
    font-size: 1.5rem;
}

h2 {
    font-size: 1.25rem;
}

h3 {
    font-size: 1.125rem;
}

a {
    color: var(--text-color);
    transition: 0.2s;
}

a:hover {
    color: var(--background);
    background: var(--foreground);
    text-decoration: none;
}

nav {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    flex-wrap: nowrap;
}

p, ul {
    font-size: 1.25rem;
}

pre > code {
    display: block;
    width: fit-content;
    border-radius: 2rem;
    padding: 1rem;
}

code {
    color: var(--background);
    background: var(--foreground);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
