html {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: url(/static/drops.png) #181822;
}

body {
    background-color: #181822;
    color: #bbc;
    font-family: 'Roboto', sans-serif;

    max-width: min(100%, 800px);
    box-sizing: border-box;
    line-height: 1.45;
    font-size: 1.2rem;
    margin: 0 auto;
    padding: 20px;
    box-shadow: 0 0 50px 50px #181822;
}

.flex-post-list {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin-bottom: 0.5em;
    text-wrap: balance;
}

.post-title {
    margin-bottom: 0.1em;
}

.post-published {
    font-size: 0.75em;
    color: color-mix(in srgb, currentcolor, black 20%);
    /* align with the bottom of the parent box */
    margin-top: auto;
    margin-bottom: 3px;
    white-space: nowrap;
}

.post-header {
    margin-bottom: 1em;
}

.url-chevron:first-child {
    display: none;
}

h1,
h2,
h3,
h4,
h5 {
    color: color-mix(in srgb, currentcolor, white 40%);
}

h3 {
    margin-bottom: 0.5em;
}

.title {
    color: #bbc;
}


/*.title:hover {
    animation: shine 1.0s ease forwards;
}*/

.title,
.index {
    text-align: center;
}

a {
    color: color-mix(in srgb, currentcolor, white 40%);
    text-decoration: underline dotted 0.1em;
}

a:hover {
    color: color-mix(in srgb, currentcolor, white 60%);
}

nav.relnav {
    font-size: 0.75em;
    color: color-mix(in srgb, currentcolor, black 30%);
    margin-top: 1em;
}

img.emoji {
    max-height: 1em;
    margin-left: 0.5em;
    transform: scale(2);
}

p>img.emoji {
    transform: translateY(2px);
    max-height: 1em;
    height: 1em;
    margin: 0;
}

.float-right {
    float: right;
    image-rendering: pixelated;
    max-width: 50%;
}

footer {
    color: #889;
    text-align: center;
    margin-top: 2rem;
    margin-bottom: 1em;
    font-size: 0.75rem;
    color: color-mix(in srgb, currentcolor, black 30%);
}

.wave {
    animation: 1s ease-in-out 0s infinite bounce;
    display: inline-block;
}

figure {
    max-width: 75%;
    margin: 2em auto;
}

figure img {
    max-width: 100%;
}

figure figcaption {
    margin-top: 1em;
    text-align: center;
    font-size: 0.9em;
    color: color-mix(in srgb, currentcolor, black 10%);
    font-style: italic;
}

@keyframes bounce {
    0% {
        transform: translateY(-2px);
    }

    50% {
        transform: translateY(2px);
    }

    100% {
        transform: translateY(-2px);
    }
}

@keyframes shine {
    from {
        background-position: 20%;
    }

    to {
        background-position: -80%;
    }
}

.footnote-ref {
    font-size: 0.83em;
    vertical-align: super;
    line-height: normal;
}

.footnote-backref {
    color: color-mix(in oklab, currentcolor, black 10%);
    font-size: 0.83em;
    vertical-align: middle;
}

.sourceCode {
    font-size: 1rem;
}

#gallery {
    columns: 2;
    column-gap: 1rem;
}

#gallery img {
    max-width: 100%;
    margin-bottom: 1rem;
}

.col-span {
    column-span: all;
    display: block;
}

.comment-note {
    display: inline-block;
    width: 100%;
    text-align: center;
    color: color-mix(in oklab, currentcolor, 10% black);
}

ul {
    margin-top: 0.5em;
}
