@import url('https://rsms.me/inter/inter.css');

@supports (font-variation-settings: normal) {
  html { 
      font-family: 'Inter var', sans-serif;
      font-feature-settings: "frac", "cpsp", "ss02", "ss03";
    }
}

html {
    font-family: 'Inter', sans-serif;
    line-height: 1.2;
}

h1, h2, h3, h4, h5 {
    font-family: 'Merriweather', serif;
}

body {
    display: flex;
    width: 99vw;
    margin: 0 auto;
}

img {
    max-width: 100%;
    max-height: 100vh;
}

blockquote {
    margin: 0;
    padding-left: 2em;
    border-left: 3px solid lightgray;
}

pre, code {
    background: #F8F8FC;
}

code {
    padding: .05em;
}

pre {
    padding: 1em;
    overflow-x: auto;
    word-wrap: normal;
}

a:visited {
    color: darkblue;
}

li {
    margin: .15em 0;
}

li p {
    margin: 0;
}

.anchor {
    text-decoration: none;
    opacity: .5;
    color: lightgray;
}

.anchor:after {
    content: "#";
    margin-right: .15em;
    font-size: 80%;
}

h2 .anchor:after {
    content: "##";
}

h3 .anchor:after {
    content: "###";
}

h4 .anchor:after {
    content: "####";
}

h5 .anchor:after {
    content: "#####";
}

.anchor:visited {
    color: lightgray;
}

aside h1 {
    font-size: 16pt;
    text-decoration: underline;
    font-variant: small-caps;
}

aside h2 {
    font-size: 12pt;
}

@media screen and (max-width: 800px) {
    body {
        flex-direction: column-reverse;
    }
    nav, main {
        padding: 0 2em;
    }
    aside {
        border-top: 1px solid gray;
    }
    aside h1 {
        text-align: center;
    }
    aside li {
        display: inline-block;
    }
}

@media screen and (min-width: 800px) {
    aside {
        display: flex;
        flex: 0 0 18vw;
        flex-direction: column;
        justify-content: space-between;
        min-height: 100vh;
        border-right: 1px solid gray;
    }
    nav {
        padding: 0 1em;
    }
    main {
        padding: 0 2em;
        flex-grow: 1;
        /* god dammit flexbox */
        min-width: 1px;
    }
}

nav h1 {
    text-align: center;
}

nav h1 a {
    color: black;
}

nav h1 a:visited {
    color: inherit;
}

nav ul {
    list-style: none;
    padding-left: 0;
}

nav li {
    margin: .25em 0;
}

nav ul a {
    text-decoration: none;
}

nav .filepath {
    text-decoration: underline;
}

nav .file {
    font-style: italic;
    opacity: .8;
}

nav .not-last {
    opacity: .5;
}

nav .timestamp {
    opacity: .8;
}

nav .timestamp:before {
    content: "[";
}

nav .timestamp:after {
    content: "]";
}

nav .graph-view {
    text-align: center;
}

.tag .count {
    opacity: .5;
}

footer {
    padding: 1em 0;
    color: gray;
}

aside footer {
    text-align: center;
}

aside footer a {
    color: gray;
}

main footer {
    text-align: right;
}

.message {
    text-align: center;
    padding: 2em;
}

@media (prefers-color-scheme: dark) {
    body {
        background: #141414;
        color: #e3e3e3;
    }
    a {
        color: #90d7e5;
    }
    a:visited {
        color: #3d9bb3;
    }
    nav h1 a {
        color: white;
    }
    code {
        background: black;
        color: #F8F8FC;
    }
}