body.wizard-preview-zoom-open { overflow: hidden; }

.wizard-preview-lightbox {
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: max(.5rem, env(safe-area-inset-top)) max(.5rem, env(safe-area-inset-right)) max(.5rem, env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));
    border: 0;
    background: #f4f6f8;
    box-sizing: border-box;
    overflow: hidden;
}
.wizard-preview-lightbox[open] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
}
.wizard-preview-lightbox::backdrop { background: #f4f6f8; }
.wizard-preview-lightbox__close {
    flex: 0 0 auto;
    align-self: flex-end;
    min-height: 44px;
    padding: .5rem 1rem;
    border: 1px solid #dce3e9;
    border-radius: .75rem;
    background: #fff;
    color: #263842;
    font: inherit;
    cursor: pointer;
}
.wizard-preview-lightbox .wizard-preview-lightbox__image {
    flex: 1 1 0;
    min-height: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: contain;
    cursor: zoom-out;
}
@media (max-width: 991.98px) {
    .wizard-preview-mode-frame, [data-stage5-preview-zoomable], [data-wizard-preview-zoomable] { cursor: zoom-in; }
    :is(.wizard-preview-mode-frame, [data-wizard-preview-zoomable]):focus-visible {
        outline: 2px solid #248ca5;
        outline-offset: 3px;
    }
    [data-wizard-preview-zoomable]:focus-visible { outline-offset: -3px; }
}
