#mucc-image-lightbox.mucc-lightbox {
    position: fixed;
    inset: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 64px 20px 24px;
    border: 0;
    background: transparent;
    color: #fff;
    overflow: auto;
    text-align: center;
    font: 16px/1.5 sans-serif;
}
#mucc-image-lightbox::backdrop { background: rgba(0, 0, 0, .88); }
#mucc-image-lightbox[open] { display: flex; align-items: center; justify-content: center; }
#mucc-image-lightbox .mucc-lightbox-figure { margin: auto; padding: 0; max-width: 100%; }
#mucc-image-lightbox .mucc-lightbox-image {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(100vh - 180px);
    margin: 0 auto;
    padding: 0;
    border: 0;
    object-fit: contain;
}
#mucc-image-lightbox .mucc-lightbox-close {
    position: fixed;
    top: 12px;
    right: 16px;
    box-sizing: border-box;
    min-height: 44px;
    padding: 8px 16px;
    border: 1px solid #fff;
    border-radius: 4px;
    background: #222;
    color: #fff;
    cursor: pointer;
    font: inherit;
}
#mucc-image-lightbox .mucc-lightbox-caption { margin: 12px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
#mucc-image-lightbox .mucc-lightbox-status { margin: 8px 0; }
#mucc-image-lightbox .mucc-lightbox-status:empty { display: none; }
#mucc-image-lightbox .mucc-lightbox-original { display: inline-block; margin: 8px 0 0; color: #fff; text-decoration: underline; }
#mucc-image-lightbox .mucc-lightbox-close:focus-visible,
#mucc-image-lightbox .mucc-lightbox-original:focus-visible { outline: 3px solid #80d4ff; outline-offset: 3px; }
@media (max-width: 600px) {
    #mucc-image-lightbox.mucc-lightbox { padding: 64px 12px 20px; }
    #mucc-image-lightbox .mucc-lightbox-image { max-height: calc(100vh - 190px); }
}
