body { max-width: 100%; padding: 0; margin: 0; }
section { max-width: 800px; margin: 2em auto; padding: 0 1em; flex-grow: 2;}

.logo { max-width: 32px; vertical-align: middle; }

header {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 1em;
}

header .logo { max-width: 48px; }
header h1 { margin: 0 0.5em; }
h3 { border-bottom: 1px solid rgba(0,0,0,0.2); }

/* link button */
a > b {
    display: inline-block;
    color: var(--form-text);
    background-color: var(--background);
    font-family: inherit;
    font-size: inherit;
    font-weight: normal;
    margin-right: 6px;
    margin-bottom: 6px;
    padding: 8.5px 10px 9px 10px;
    border: none;
    border-radius: 6px;
    outline: none;
    transition: background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s ease;
}

a:hover > b { background: var(--button-hover); }
a:focus > b { box-shadow: 0 0 0 2px var(--focus); }
a:active > b { transform: translateY(2px); }

pre {
    padding: 1em;
    border-radius: 4px;
}


.cols {
    display: flex;
    flex-direction: row;
    justify-content: normal;
    align-items: start;
}

.darker {
    background-color:rgba(0,0,0,0.2);
    padding: 1em 0;
}

aside { margin: 2em; }

aside li.active a {
    background-color: var(--links);
    color: var(--background);
    font-weight: bold;
    padding: 0.2em 0.4em;
    border-radius: 4px;
}


footer { text-align: center; }

@media (max-width: 600px) {
    .cols { flex-direction: column; }
}
