.tb-video-lightbox .tb-video-lightbox-trigger{
    position:relative;
    display:block;
    width:100%;
    aspect-ratio:16 / 9;
    padding:0;
    overflow:hidden;
    border:0;
    background:#000;
    color:#fff;
    cursor:pointer;
}

.tb-video-lightbox.wp-embed-aspect-4-3 .tb-video-lightbox-trigger{aspect-ratio:4 / 3}
.tb-video-lightbox.wp-embed-aspect-3-2 .tb-video-lightbox-trigger{aspect-ratio:3 / 2}
.tb-video-lightbox.wp-embed-aspect-1-1 .tb-video-lightbox-trigger{aspect-ratio:1 / 1}
.tb-video-lightbox.wp-embed-aspect-9-16 .tb-video-lightbox-trigger{aspect-ratio:9 / 16}
.tb-video-lightbox.wp-embed-aspect-18-9 .tb-video-lightbox-trigger{aspect-ratio:18 / 9}
.tb-video-lightbox.wp-embed-aspect-21-9 .tb-video-lightbox-trigger{aspect-ratio:21 / 9}

.tb-video-lightbox-preview{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.tb-video-lightbox-shade{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.18);
    transition:background-color .18s ease;
}

.tb-video-lightbox-play{
    position:absolute;
    top:50%;
    left:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:74px;
    height:74px;
    border:2px solid currentColor;
    border-radius:999px;
    background:rgba(0,0,0,.62);
    transform:translate(-50%,-50%);
    transition:transform .18s ease,background-color .18s ease;
}

.tb-video-lightbox-play>span{
    display:block;
    width:0;
    height:0;
    margin-left:5px;
    border-top:11px solid transparent;
    border-bottom:11px solid transparent;
    border-left:18px solid currentColor;
}

.tb-video-lightbox-trigger:hover .tb-video-lightbox-shade,
.tb-video-lightbox-trigger:focus-visible .tb-video-lightbox-shade{
    background:rgba(0,0,0,.08);
}

.tb-video-lightbox-trigger:hover .tb-video-lightbox-play,
.tb-video-lightbox-trigger:focus-visible .tb-video-lightbox-play{
    background:rgba(0,0,0,.78);
    transform:translate(-50%,-50%) scale(1.06);
}

.tb-video-lightbox-trigger:focus-visible{
    outline:2px solid currentColor;
    outline-offset:3px;
}

.tb-video-lightbox-modal[hidden]{display:none!important}

.tb-video-lightbox-modal{
    position:fixed;
    inset:0;
    z-index:100000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:4vh 4vw;
}

.tb-video-lightbox-backdrop{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:rgba(0,0,0,.92);
    cursor:pointer;
}

.tb-video-lightbox-dialog{
    position:relative;
    z-index:1;
    width:min(1200px,92vw);
    max-height:92vh;
}

.tb-video-lightbox-frame{
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#000;
}

.tb-video-lightbox-frame iframe,
.tb-video-lightbox-frame video{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
}

.tb-video-lightbox-frame video{
    object-fit:contain;
    background:#000;
}

.tb-video-lightbox-close{
    position:fixed;
    top:max(12px, env(safe-area-inset-top));
    right:max(12px, env(safe-area-inset-right));
    bottom:auto;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid currentColor;
    border-radius:999px;
    background:#000;
    color:#fff;
    font:400 34px/1 Arial,sans-serif;
    cursor:pointer;
}

.tb-video-lightbox-close:hover,
.tb-video-lightbox-close:focus-visible{
    background:#fff;
    color:#000;
}

.tb-video-lightbox-close:focus-visible{
    outline:2px solid currentColor;
    outline-offset:3px;
}

html.tb-video-lightbox-open,
body.tb-video-lightbox-open{
    overflow:hidden!important;
}

@media (max-width:767px){
    .tb-video-lightbox-play{
        width:60px;
        height:60px;
    }

    .tb-video-lightbox-modal{
        padding:54px 3vw 3vw;
    }

    .tb-video-lightbox-dialog{
        width:94vw;
    }

    .tb-video-lightbox-close{
        top:max(10px, env(safe-area-inset-top));
        right:max(10px, env(safe-area-inset-right));
        bottom:auto;
    }
}
