* {
    box-sizing: border-box;
}

html {
    background: #000;
}

html,
body {
    min-height: 100svh;
    overscroll-behavior: none;
}

body {
    margin: 0;
    display: flex;
    flex-direction: column;
    background: #000;
    color: var(--text);
    font-family:
        ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
        "Liberation Mono", monospace;
    min-height: var(--app-height, 100vh);
}

a {
    color: inherit;
    text-decoration: none;
}
button {
    font: inherit;
}

:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.85);
    outline-offset: 2px;
}

.link-reset,
.link-reset:hover,
.link-reset:focus,
.link-reset:active,
.link-reset:visited {
    color: inherit;
    text-decoration: none;
}
:root {
    --topbar-height: 80px;
}
:target {
    scroll-margin-top: var(--topbar-height, 80px);
}
