html, body {
    overscroll-behavior: none;
    overflow: hidden;
    height: 100dvh;
}

main {
    background: var(--bs-tertiary-bg) !important;
}

pre[class*="language-"],
code[class*="language-"] {
    background: var(--bs-tertiary-bg) !important;
    color: var(--bs-body-color) !important;
    text-shadow: none !important;
}

a {
    text-decoration: none !important;
    color: var(--bs-body-color);
}
    a:link {
        color: var(--bs-body-color);
    }

    a:hover {
        color: royalblue !important;
    }

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

.text-purple {
    color: #6f42c1 !important;
}

.fit-content {
    width: fit-content;
}

.h-stretch {
    height: stretch !important;
}

.pulse-animation {
    animation: pulse alternate infinite 0.5s ease-in-out;
}

.spin-animation {
    animation: spin infinite 2s linear;
}

.fadein-animation {
    animation: fadein 0.5s ease-in;
}

@keyframes pulse {

    0% {
        opacity: 1;
    }

    100% {
        opacity: 0.5;
    }
}

@keyframes fadein{

    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes spin {

    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}