@media (prefers-color-scheme: light) {
  :root {
    --filler-bg-color: white;
    --main-bg-color: white;
    --main-fg-color: black;
    --main-bg-highlight: #666;
    --main-fg-highlight: #111;
    --main-fg-focus: #eee;
    --main-fg-contrast: #ccc;
    --side-discrete-fg: #666;
    --main-container-shadow: rgba(0, 0, 0, .175)
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --filler-bg-color: #171717;
    --main-bg-color: #202020;
    --main-fg-color: #e9e9e9;
    --main-bg-highlight: #ccc;
    --main-fg-highlight: #fff;
    --main-fg-focus: #3a3a3a;
    --main-fg-contrast: #E5D231;
    --side-discrete-fg: #666;
  }
}

body {
    color: var(--main-fg-color);
    background: var(--filler-bg-color)
}

.container {
    background: var(--main-bg-color);
    grid-template-rows: auto auto auto;
    max-width: 50em;
    overflow-wrap: break-word;
    margin: 0 auto;
    padding: 1em 2em;
    -webkit-box-shadow: 0 1rem 3rem var(--main-container-shadow) !important;
    box-shadow: 0 1rem 3rem var(--main-container-shadow) !important
}

@media (max-width: 719px) {
    .container {
        padding: .75em 1em;
    }

    footer {
        padding: 0;
    }
}

.content-blog img {
    max-width: 100vw;
    width: calc(100% + 4rem);
    margin-left: -2em;
}

a {
    color: var(--main-fg-color);
    text-decoration: none;
    border-bottom: 1px solid;
    padding-bottom: .05em
}

a:visited {
    color: var(--main-fg-highlight)
}

.container header {
    border-bottom: 5px solid var(--main-fg-focus);
    font-size: 2em;
    font-weight: 100;
    letter-spacing: .30rem;
    text-transform: uppercase;
    padding-bottom: .3em;
    text-align: center
}

.container header a {
    text-decoration: none;
    font-weight: 300;
    border: none
}

.container main {
    color: var(--main-fg-color);
    background: var(--main-bg-color)
}

footer {
    border-top: 5px solid var(--main-fg-focus);
    color: var(--main-bg-highlight);
    padding: 1em 0;
    text-align: right;
}

footer span {
    white-space: nowrap;
}

footer p {

    margin: .1em 0
}

@media (min-width: 720px) {
    main .content-blog {
        text-align: justify;
        text-justify: distribute;
    }
}

aside.social a {
    border: none
}

nav a {
    color: var(--main-fg-color)
}

nav .metadata {
    display: block;
    font-size: .8em;
    font-style: italic
}

* {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-size: 1em;
    font-weight: normal;
    margin: 0;
    padding: 0
}

/* Text layout */
strong {
    font-weight: bold
}

em {
    font-style: italic
}

body {
    font-size: 16px
}

h1,h2,h3 {
    color: var(--main-fg-highlight);
}

h1 {
    font-size: 1.8em;
    font-weight: 200;
    margin: .5em 0;
    padding-bottom: .5em;
    border-bottom: 10px solid var(--main-fg-focus)
}

h2 {
    font-size: 1.4em;
    margin: 1.5em 0 1em
}

h3 {
    font-size: 1.2em;
    margin: 1.5em 0 1em
}

p, blockquote, li {
    line-height: 1.6;
}

/* Text block layout  */
p,
blockquote {
    margin: 1em 0 1.5em;
}

ul {
    margin: 0 0 1.5em;
}

li {
    margin: .5em 1.5em .5em;
}

li>ul { margin: 0; }

blockquote {
    margin: 2em 0;
    padding: .1em 1em;
    font-size: 1.2em;
    font-weight: lighter;
    border-left: 5px solid var(--main-fg-contrast);
    color: var(--main-fg-color)
}

blockquote>*:first-child {
    margin-top: .75em;
}

blockquote>*:last-child {
    margin-bottom: .75em;
}

blockquote p {
    font-weight: 200;
}

code, pre {
    font-family: 'Courier New', Courier, monospace;
}

pre {
    overflow-x: auto;
    max-width: 100%;
}
