/* -------------------------------
   Base layout & scroll behaviour
---------------------------------*/

/* Reserve vertical scrollbar space on modern browsers (prevents layout shift) */
html {
    /* comment back in later if you like; not required for single scrollbar */
    /* scrollbar-gutter: stable; */
    overflow-y: scroll; /* one vertical scrollbar on the root only */
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

body {
    min-height: 100%;
    margin-bottom: 60px;
    /* Don't force overflow on body; let html own the scrollbar */
    overflow: auto; /* keeps body from becoming a second scroller */
}

/* -------------------------------
   Focus and accessibility styles
---------------------------------*/
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}
.card.shadow-sm {
    box-shadow: 0 .50rem .1rem rgba(0, 0, 0, 0.08);
    transition: box-shadow .2s ease;
}

    .card.shadow-sm:hover {
        box-shadow: 0 .5rem 1rem rgba(0, 0, 0, 0.12);
    }

