body {
    padding: 0;
    margin: 0;

    background-color: var(--background);

    color: var(--foreground);
    font-family: sans-serif;
    text-shadow: 1px 1px 2px var(--background);

    min-height: 100vh;
}

main {
    padding: 8px;
}

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

a {
    color: var(--anchor);
}

a:visited {
    color: var(--anchor-visited);
}

a:active {
    color: var(--anchor-active);
}

input, button, textarea {
    padding: 8px;

    color: var(--foreground);
    background-color: var(--interactable);

    border-width: 2px;
    border-color: var(--border);
    border-radius: 16px;

    font-size: 1em;
    font-family: sans-serif;

    vertical-align: middle;

    text-align: inherit;
    font-weight: inherit;

    width: 100%;
}

input[type="text"], input[type="file"] {
    border-style: inset;
}

button, input[type="submit"] {
    border-style: outset;
    text-align: center;
}

button:active:not([disabled]), input[type="submit"]:active:not([disabled]) {
    border-style: inset;
}

textarea {
    border-style: inset;
    border-radius: 16px 16px 0 16px;

    resize: vertical;
}

pre {
    white-space: pre-wrap;
}