.bi-lightbox-modal .modal-content {
    background:
        linear-gradient(180deg, rgba(7, 14, 24, 0.96), rgba(6, 10, 18, 0.98));
    color: #f8fbff;
}

.bi-lightbox-stage {
    min-height: 0;
    background:
        radial-gradient(circle at top, rgba(64, 160, 255, 0.12), transparent 35%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0));
}

.bi-lightbox-image-wrap {
    min-height: 0;
}

.bi-lightbox-loading {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(4, 10, 18, 0.32);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
}

.bi-lightbox-stage.is-loading .bi-lightbox-loading {
    opacity: 1;
}

.bi-lightbox-image {
    max-width: 100%;
    max-height: min(78vh, calc(100dvh - 12rem));
    object-fit: contain;
    border-radius: .75rem;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.35);
    transition: opacity .18s ease;
}

.bi-lightbox-stage.is-loading .bi-lightbox-image {
    opacity: 0;
}

.bi-lightbox-meta {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
}

.bi-lightbox-nav {
    width: 2.75rem;
    height: 2.75rem;
}

.bi-lightbox-nav[disabled] {
    opacity: .35;
}

.bi-lightbox-hidden {
    display: none !important;
}

@media (max-width: 767.98px) {
    .bi-lightbox-image {
        max-height: calc(100dvh - 10.5rem);
    }

    .bi-lightbox-modal .modal-header,
    .bi-lightbox-modal .modal-footer {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .bi-lightbox-nav {
        width: 2.1rem;
        height: 2.1rem;
        padding: 0;
    }

    .bi-lightbox-meta {
        text-align: center;
    }

    .bi-lightbox-meta > div,
    .bi-lightbox-meta .d-flex {
        justify-content: center;
        width: 100%;
    }

    .bi-lightbox-meta .min-w-0 {
        width: 100%;
    }
}
