
.table-of-contents {
}

.table-of-contents a {
    font-family: "FuturaBT-Medium", sans-serif;
    font-size: 1em;
    font-style: normal;
    font-weight: bold;
}

.table-of-contents ul {
    list-style-type: upper-roman;
}

.table-of-contents ol  {
    list-style-type: none;
}


.indented {
    margin-left: 0.35em;
    border-left: 2px solid var(--font-color);
    padding-left: 1.5em;
    padding-top: 0.2em;
    box-sizing: border-box;
}

.indented p {
    margin-block-start: 0;
}

.symbol {
    font-variant: petite-caps;
    font-style: normal;
    font-weight: bold;
}

ul {
    margin-block-start: 0.25em;
}

.hbar {
    width: 100%;
    height: 0px;
    border-top: 1px dashed black;
    margin-top: 1em;
    margin-bottom: 1em;
}

canvas {
    border: 2px solid var(--primary);
    border-radius: 1em;
}

th, td {
    padding-left: 1em;
    vertical-align: top;
}

a {
    color: var(--primary);
    font-weight: bold;
    text-decoration: none;
}

a:hover {
    color: var(--primary-accent);
}

a.external::before {
    display: inline-block;
    width: 1em;
    height: 1em;
    content: " ";
    mask-image: url(/externallink.svg);
    mask-size: contain;
    background-color: var(--primary);
    position: relative;
    top: 0.15em;
}

a.external:hover:before {
    background-color: var(--primary-accent);
}

blockquote {
    font-style: normal;
    font-size: 16px;
    margin-left: 32px;
    border-left: 4px solid #CCC;
    padding-left: 8px;
}

details > summary {
    cursor: pointer;
    user-select: none;
}

.details {
    border-left: 2px solid var(--font-color);
    padding-left: 0.7em;
}

.details p {
    margin-block-start: 0;
}

/* Allows for
<strong>Some caption</strong>
<pre>Some code</pre>
without a margin between them */
strong + pre {
    margin-block-start: 0;
}