h1,
h2,
h3 {
    font-family: 'Sarabun', sans-serif;
    font-weight: normal;
    align-self: center;
    text-align: center;
}

a {
    color: light-dark(#aa20bb, #9750a9);
}

code {
    font-family: 'Iosevka Term Slab Light Extended', monospace;
    font-size: 0.9rem;
    color: light-dark(#8a0a0a, #ffdcef);
}

body {
    font-family: "Crimson", serif;
    display: flex;
    flex-direction: column;
    padding-bottom: 20px;
    scrollbar-gutter: stable;
    overflow-y: scroll;
    background-color: light-dark(#f6efef, #2d2d3f);
    color: light-dark(#0a0a2a, #efdcef);
}

p {
    line-height: 1.4;
}

nav {
    padding-top: 1rem;
    font-weight: bold;
}

nav a:hover {
    text-decoration: underline;
}

#content {
    align-self: center;
    box-sizing: border-box;
    padding: 0 30px;
    max-width: min(700px, 110vw);
}

#blog-navigation {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;

    #left,#right {
        max-width: 15em;
        font-size: 0.8em;
    }
}

#footer-links {
    align-self: center;
    box-sizing: border-box;
    padding: 30px 30px;
    max-width: min(600px, 100vw);
}

.centered {
    align-self: center;
    text-align: center;
}

.toc {
    font-family: 'Sarabun', sans-serif;
}

.overtitle.centered {
    font-weight: lighter;
}

.centered.title {
    letter-spacing: .5rem;
    font-size: 3em;
    font-weight: bolder;
}

.centered.subtitle {
    font-weight: lighter;
}

:root {
    color-scheme: light dark;
    font-size: 1rem;
    font-kerning: normal;
}

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

.block p {
    padding-top: 0;
    font-size: 0.8em;
    padding-left: 12px;
    padding-right: 12px;
}

@media screen and (min-width: 800px) and (max-width: 1000px) {
  :root {
    zoom: 1.0;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1200px) {
  :root {
    zoom: 1.05;
  }
}

@media screen and (min-width: 1200px) and (max-width: 1400px) {
  :root {
    zoom: 1.1;
  }
}

@media screen and (min-width: 1400px) and (max-width: 1600px) {
  :root {
    zoom: 1.15;
  }
}


@media screen and (min-width: 1400px) and (max-width: 1600px) {
  :root {
    zoom: 1.2;
  }
}

@media screen and (min-width: 1600px) and (max-width: 1800px) {
  :root {
    zoom: 1.25;
  }
}

@media screen and (min-width: 1800px) {
    :root {
        zoom: 1.3;
    }
}
