@import url('https://fonts.googleapis.com/css2?family=Chivo+Mono:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap');

:root {
    @media (prefers-color-scheme: dark) {
        --fg: white;
        --bg: black;
        --hl: #2a82ea;
        --shadow: #6c6b6b;
        --dshadow: #1f1f1f;
    }
    @media (prefers-color-scheme: light) {
        --fg: black;
        --bg: white;
        --hl: #2063e0;
        --shadow: #a4a4a4;
        --dshadow: #d2d0d0;
    }
}

body {
    background-color: var(--bg);
    margin: 0;
    font-family: 'Chivo Mono', monospace;
    display: grid;
    grid-template-rows: auto 1fr auto;
    min-height: 100vh;
}

h1 {
    font-size: clamp(1.5rem, 4vw, 2.5rem);
}

div {
    font-size: clamp(1rem, 3vw, 1.25rem);
}

.big-text {
    font-size: clamp(2rem, 6vw, 3rem);
}

* {
    font-family: 'Chivo Mono', monospace;
    border-radius: 5px;
    color: var(--fg);
    box-sizing: border-box;
}

a {
    color: var(--hl);
    font-size: large;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease-in-out;
}

a:hover {
    color: var(--fg);
}

.content {
    width: 80%;
    max-width: 100vw;
    margin: 0 auto;
    padding: 12rem 0 1rem;
    display: block;
    position: relative;
    z-index: 1;
}

@media (max-width: 775px) {
    .content {
        width: 90%;
        padding: 12rem 1rem 1rem;
    }
    .obi {
        font-size: small;
    }
}

p {
    justify-self: left;
    line-height: 1.5;
    font-size: clamp(0.9rem, 2.5vw, 1.1rem);
}

.snippet{
    white-space: pre;
    padding: 0.5rem;
    background-color: var(--dshadow);
    width: fit-content;
    max-width: 100%;
    overflow-x: auto; /* Horizontal scrollbar */
    border-radius: 4px;
    font-family: monospace;
    box-sizing: border-box; /* Ensures padding is included in width */
}


.centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    justify-content: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer {
    width: 100%;
    text-align: center;
    padding: 1rem 0;
    background-color: var(--bg);
    color: var(--fg);
    position: relative;
    z-index: 1;
}

.footer-container{
    justify-content: center;
}

html {
    visibility: visible;
    opacity: 1;
}

header {
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: var(--bg);
    padding: 1rem;
    box-shadow: 0 2px 5px var(--shadow);
}

@media (max-width: 575px) {
    h1 {
        font-size: 1.5rem;
    }

    div, 
    p, 
    a {
        font-size: 1rem;
    }

    .big-text {
        font-size: 2rem;
    }
}

body > header + .content {
    margin-top: 3rem; /* Adjust this value based on the height of your navbar */
}

body > .content + .footer {
    margin-bottom: 3rem; /* Adjust this value based on the footer's height */
}
