@font-face {
    font-family: 'DejaVu Sans Mono';
    font-display: swap;
    src: url("/fonts/DejaVuSansMono.ttf");
    font-weight: normal;
    font-style: normal
}

@font-face {
    font-family: 'DejaVu Sans Mono';
    font-display: swap;
    src: url("/fonts/DejaVuSansMono-Bold.ttf");
    font-weight: bold;
    font-style: normal
}

html, body {
    height: 100%;
    width: 100%; /* 5000px; /* can be made wider */
    margin: 0 auto;
    background-color: rgb(253, 253, 180);
    color: #263238;
    font-size: 16px; /* Base for rem sizes */
}

@media (prefers-color-scheme: dark) {
    html, body {
        background-color: black;
        color: white;
    }
}

* {
    -webkit-text-size-adjust:100%;
}

a {
    color: rgb(90, 90, 255);
}

/*
 * ASCII Blog Style
 */

.ascii-container:has(> .pre-like-blog) {
    display: flex;
    justify-content: center;
    padding: 1rem;
    
    figure {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

.pre-like-blog {
    unicode-bidi: embed;
    font-family: 'DejaVu Sans Mono', monospace;
    font-size: 1.5rem;
    width: 100%;
    max-width: 56rem;
}

pre {
    overflow: scroll;
    background: #ffffff;
    color: black;
    font-family: 'DejaVu Sans Mono', monospace;
    font-size: 1rem;
    padding: 1rem;
    margin: 1rem;
    border-radius: 1rem;
}

/*
 * ASCII Tree Style
 */

.pre-like-tree {
    unicode-bidi: embed;
    white-space: pre;
    font-family: 'DejaVu Sans Mono', monospace;
    font-size: 2rem;
    padding: 1rem;
    margin-right: 3rem;
    margin-bottom: 10rem;
}

/*
 * ASCII Tree Node Styles
 */

div.node-container {
    height: 2.375rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    padding-right: 3rem;
    /* opacity: 50%; */
}

*:has(> .node-content) {
    display: flex;
    justify-content: center;
    align-items: center;
}

.node-content {
    position: relative;
    display: inline;
}

.textbox {
    background: white;
    color: black;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 60%;
}