html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

.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;
}

.navbar-expand-lg {
    height: 60px;
}

/* Desktop navbar layout */
@media (min-width: 992px) {
    .navbar-collapse {
        position: static !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        background-color: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
}

/* Mobile base navbar layout */
@media (max-width: 991.98px) {
    .navbar-collapse {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 1031;
        padding: 1rem 1rem 1.25rem 1rem;
        background-color: var(--bs-body-bg);
        border-bottom-left-radius: 0.5rem;
        border-bottom-right-radius: 0.5rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        gap: 0.5rem;
    }

        .navbar-collapse .nav-item {
            width: 100%;
        }

        .navbar-collapse .nav-link {
            display: block;
            width: 100%;
            text-align: left;
            padding: 0.5rem 0.75rem;
            font-weight: 500;
        }

        .navbar-collapse .form-select {
            width: auto;
            max-width: 150px;
        }

        .navbar-collapse .btn {
            font-weight: 500;
            width: auto;
        }

        .navbar-collapse .icon-btn {
            align-self: flex-start;
            width: auto;
        }
}

/* Highlight active nav tab (shared) */
.navbar-nav .nav-link.active {
    background-color: rgba(0, 0, 0, 0.075);
    border-radius: 0.25rem;
    font-weight: 600;
}

.disabled-area {
    opacity: 0.5;
    pointer-events: none;
}

#delBtnContainer button:disabled {
    opacity: 0.6;
    pointer-events: none;
}
