html {
    max-width: 80ch;
    margin: auto;
    line-height: 1.75;
    font-size: 1.4em;
    font-family: monospace;
    padding: 0em clamp(1.25rem, 5vw, 3rem);

    box-sizing: border-box;
}

body {
    display: flex;
    flex-direction: column;
    margin: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
}

h1,h2,h3,h4,h5,h6 {
    margin: 2em 0 1em;
}

a {
    color: #1d1d1d;
    text-decoration: underline;
    text-decoration-thickness: 1.5px;
}
  
p,ul,ol {
    margin-bottom: 1em;
    color: #1d1d1d;
}

.post-meta {
    text-align: right;
}

img {
    max-width: 100%;
    margin: 0 auto;
    display: block;
}

blockquote {
    font-style: italic;
    border: thin solid black;
    padding: 1rem;
}

blockquote p {
    margin: 0;
}

pre {
    overflow-x: auto;
    padding: 1rem;
}

pre, code {
    background: #e0e0e0;
}

table { width: 100%; }

table, th, td {
  border: thin solid black;
  border-collapse: collapse;
  padding: 0.4rem;
}

.table-wrapper {
    overflow-x: auto;
}

footer {
    width: 100%;
    max-width: 80ch;
    padding: 1rem 0;
}

footer a {
    float: right;
    text-decoration: none;
}
