:root {
    --header-height: 57px;
    --doc-menu-height: 45px;

    --fade_transition: 1s ease-in-out;
    --slide_transition: 1s ease-in-out;

    --color-background: var(--color-white);
    --color-foreground: var(--color-black);
}

.dark {
    --color-background: var(--color-black-900);
    --color-foreground: var(--color-white);
}

html,
body,
#root,
.site-container {
    min-height: 100%;
}

html, body {
    overscroll-behavior: none;
    scrollbar-gutter: stable;
    scroll-padding-top: calc(var(--spacing-32px) + var(--header-height));
}
html:has(.docs-page) {
    scroll-padding-top: calc(var(--spacing-32px) + var(--header-height) + var(--doc-menu-height));
}

body {
    font-weight: 400;
    color: var(--color-foreground);
    font-family: "Inter", sans-serif;
    font-size: 16px;
    line-height: 1.6;
    word-break: keep-all;
    line-break: normal;
    min-height: 100vh;
    overflow-y: scroll;
    background-color: var(--color-background);
}

button, a {
    &:is(:hover, :active) {
        outline: none;
        cursor: pointer;
    }
    
    transition: .2s ease;
    -webkit-transition: .2s ease;
    -moz-transition: .2s ease;
    -ms-transition: .2s ease;
    -o-transition: .2s ease;
}

button, a, input, textarea {
    &:disabled {
        cursor: no-drop;
    }
}

/* Disable touch */
@media (hover: none) {
    body.disable-scroll {
        overflow: hidden;
        overscroll-behavior: contain;
    }
}

@media screen and (min-width: 992px) {
    html:has(.docs-page) {
        scroll-padding-top: calc(var(--spacing-32px) + var(--header-height));
    }
}