* {
    margin: 0;
    box-sizing: border-box;
}

body {
    height: 100svh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background-color: var(--color-background);
    color: var(--color-text);
    font-family: var(--font-sans);
    scrollbar-color: var(--color-scrollbar) transparent;
    -webkit-tap-highlight-color: transparent;
}

button,
input {
    font: inherit;
}

.hr {
    border-bottom: var(--border);
    margin: var(--space-1) 0;
}

.vr {
    border-right: var(--border);
    margin: 0 var(--space-3);
}

.d-none {
    display: none !important;
}

button.nav-item,
button.dropdown-item {
    border: none;
    background: none;
    color: inherit;
    text-align: inherit;
}

/* No focus rings: while the keyboard moves the focus (.keyboard, see
   keyboard.js; not :focus-visible, which Chrome sometimes leaves off after
   a key) the control that has it shows its hover look, next to each :hover */
:focus {
    outline: none;
}

kbd {
    font-family: inherit;
    font-size: 0.85em;
    color: var(--color-text-muted);
}
