html, body {
    height: 100%;
}
body {
    background-color: #f3f4f6;
    display: flex;
    flex-direction: column;
}
.fs-7 {
    font-size: 0.875rem !important;
}
.fs-8 {
    font-size: 0.75rem !important;
}
.narrow-navbar {
    border-top: 1px solid #e5e7eb;
}
.narrow-navbar .nav-links > a {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
.narrow-navbar .nav-links > a:hover,
.narrow-navbar .nav-links > a:active {
    background-color: #e9ecef;
}
.sticky-top.narrow-navbar {
    top: 66px;
}
.offcanvas .nav-item {
    border-top: 1px solid #e5e7eb;
}
.max-w-500 {
    max-width: 500px;
}
.min-w-300 {
    min-width: 300px;
}
.max-h-500 {
    max-height: 500px;
}
@media (min-width: 768px) {
    .min-w-md-300 {
        min-width: 300px;
    }
}
.toggle-password {
    cursor: pointer;
}
table.selectable tbody tr {
    cursor: pointer;
}
table.selectable tbody tr.selected,
table.selectable tbody tr.selected th,
table.selectable tbody tr.selected td {
    background-color: #e9ecef;
}
.form-switch.form-switch-md {
    display: flex;
    align-items: center;
}
.form-switch.form-switch-md .form-check-input {
    height: 1.5rem;
    width: calc(2rem + 0.75rem);
    border-radius: 3rem;
}
.form-switch.form-switch-md .form-check-label {
    padding-left: .75rem;;
}