:root {
    --light-pink: #e991bc;
    --dark-gray: #141414;
    --light-gray: #313131;
    --nice-white: #fefefe;
    --light-blue: #93bcf4;
    --dark-blue: #2b4fc4;
    --light-purple: #4b49ec;
    --dark-purple: #2d2bc4;

    --main-bg: var(--light-pink);
    --secondary-bg: var(--light-blue);
    --text-main: var(--dark-gray);
    --unclicked-link: var(--light-blue);
    --clicked-link: var(--light-purple);
}

* {
    box-sizing: border-box;
}

a:link {
    color: var(--unclicked-link);
}

a:visited {
    color: var(--clicked-link);
}

html {
    background-color: var(--secondary-bg);
}

h1 {
    letter-spacing: 0.3em;
}

body > :first-child {
    margin-top: 0.4em;
}

body {
    margin: auto;
    margin-top: 2em;
    max-width: 700px;

    padding: 1em;
    
    background-color: var(--main-bg);
    border: 2px solid rgb(0, 0, 0);
    font-family: sans-serif;
    text-align: justify;
    color: var(--text-main);
}

blockquote {
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-style: italic;
}

blockquote::before {
    content: '"';
    float: left;
    font-size: 2rem;
    margin-left: -1.8rem;
    margin-top: -0.3rem;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    body {
        margin-top: 0;
        max-width: 100%;
        width: 100%;
        border: none;
    }

    html {
        background-color: var(--main-bg);
    }

    body > :first-child {
        margin-top: 0.2em;
    }
}

@media screen and (prefers-color-scheme: dark) {
    :root {
        --main-bg: var(--light-gray);
        --secondary-bg: var(--dark-gray);
        --text-main: var(--nice-white);
    }
}