body {
    font-family: serif;
    padding: 0px;
    margin: 0px;
    margin-left: auto;
    margin-right: auto;
    width: 75%;
    max-width: 65em;
    overflow-y: scroll;
    line-height: 1.7;

    background:
        repeating-linear-gradient(
            0deg,
            transparent,
            transparent 2px,
            rgba(255, 255, 255, 0.03) 2px,
            rgba(255, 255, 255, 0.03) 4px
        ),
        linear-gradient(
            135deg,
            #cfe8a8 0%,
            #e6f0c4 30%,
            #f4f8e8 50%,
            #edf5d6 70%,
            #cfe8a8 100%
        );

    position: relative;
    min-height: 100vh;
}

/* For aged paper spots/stains effect */
body::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(140, 160, 100, 0.15) 0%, transparent 23%),
        radial-gradient(circle at 80% 70%, rgba(170, 190, 120, 0.1) 0%, transparent 15%);
    pointer-events: none;
}

body > * {
    position: relative;
    z-index: 1;
}

h1 {
    font-size: 25px;
    font-family: monospace;
}

h1::before {
    font-size: 200%;
    display: block;
    float:left;
    margin-right: 1ex;
    color: darkolivegreen;
    content: "💀 "
}

h2 {
    font-size: 22px;
    font-family: monospace;
}

h3 {
    font-size: 18px;
    font-family: monospace;
}

footer {
    margin-top: 2em;
    padding-top: 2em;
    padding-bottom: 2em;
    text-align: center;
}

section {
    position: relative;
    border: 2px solid rgba(120, 140, 80, 0.4);
    padding: 0 2em 1em;
    margin-top: 1em;
    box-shadow: inset 0 0 1em rgba(120, 140, 80, 0.1);
}

/* Dashed inner border */
section::before {
  content: '';
  position: absolute;
  top: 1em;
  left: 1em;
  right: 1em;
  bottom: 1em;
  border: 1px dashed rgba(120, 140, 80, 0.3);
  pointer-events: none;
  z-index: 0;
}

h2 > a, h3 > a {
    color: black;
    text-decoration: none;
}

table {
    margin-left: 2em;
}

.title {
    font-style: italic;
}
