/* Variables */

:root {
    color-scheme: light dark;
    --background-color: white;
    --text-color: black;
    --link-color: blue;
    --visited-color: #551a8b;
    --font-weight: 500;
}

/* dark mode colors */
@media (prefers-color-scheme: dark) {
    :root {
        --background-color: #1a1a1a;
        --text-color: #f0f0f0;
        --link-color: #6ab0f3;
        --visited-color: #b19cd9;
    }
}

/*
@media (resolution >= 2x) {
    :root {
        --font-weight: 400;
    }
}
*/

/* Fonts */

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-Italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-MediumItalic.woff2') format('woff2');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexSerif";
    src: url('fonts/woff2/IBMPlexSerif-BoldItalic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: "IBMPlexMono";
    src: url('fonts/woff2/IBMPlexMono-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "IBMPlexMono";
    src: url('fonts/woff2/IBMPlexMono-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
}

    
body {
    background-color: var(--background-color);
    color: var(--text-color);
}

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

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

div.content {
    max-width: 1000px;
    margin-left: 5vw;
    font-family: 'IBMPlexSerif', serif;
    font-weight: var(--font-weight);
}

div.outline-text-2 > ul {
    margin-top: 0;
    padding-left: 1em;
}

div.content pre {
    white-space: pre-wrap;
    font-family: 'IBMPlexMono', monospace;
    font-weight: 500;
}

div.content code {
    font-family: 'IBMPlexMono', monospace;
    font-weight: 500;
}

li > ul {
    padding-inline-start: 1em;
}

h2 {
    margin-top: 30px;
    margin-bottom: 5px;
}

h2 > a:link {
    color: var(--text-color);
    text-decoration: none;
}

h2 > a:visited {
    color: var(--text-color);
    text-decoration: none;
}

h3 > a:link {
    color: var(--text-color);
    text-decoration: none;
}

h3 > a:visited {
    color: var(--text-color);
    text-decoration: none;
}

h4 > a:link {
    color: var(--text-color);
    text-decoration: none;
}

h4 > a:visited {
    color: var(--text-color);
    text-decoration: none;
}

.page-break-before {
    break-before: page;
}

