.wepop-overlay {
position: fixed;
inset: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.8);
display: flex;
justify-content: center;
align-items: center;
opacity: 0;
transition: opacity .3s ease;
z-index: 9999;
}
.wepop-overlay.open {
opacity: 1;
}
body.wepop-noscroll {
overflow: hidden;
touch-action: none;
overscroll-behavior: none;
}
.wepop-content {
max-width: 90vw;
max-height: 90vh;
position: relative;
display: flex;
justify-content: center;
align-items: center;
}
.wepop-img-container {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
display: flex;
justify-content: center;
align-items: center;
transition: width .35s ease-out, height .35s ease-out;
}
.wepop-img {
max-width: 100%;
max-height: 90vh;
width: auto;
height: auto;
object-fit: contain;
will-change: transform;
transition: transform .35s ease-out;
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
}
.wepop-video-container {
display: flex;
justify-content: center;
align-items: center;
background-color: #000;
position: relative;
overflow: hidden;
}
.wepop-video-container.iframe {
width: min(90vw, 1920px);
max-height: 90vh;
aspect-ratio: 16 / 9;
}
.wepop-video-container.video {
max-width: 90vw;
max-height: 90vh;
}
.wepop-video-container iframe {
width: 100%;
height: 100%;
border: 0;
display: block;
object-fit: contain;
}
.wepop-video-container video {
max-width: 90vw;
max-height: 90vh;
width: auto;
height: auto;
object-fit: contain;
display: block;
}
.wepop-close {
position: fixed;
top: 10px;
right: 10px;
font-size: 40px;
width: 40px;
height: 40px;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
background: none;
border: none;
cursor: pointer;
z-index: 10001;
}
.wepop-prev,
.wepop-next {
position: fixed;
top: 50%;
transform: translateY(-50%);
width: 40px;
height: 40px;
background: none;
border: none;
cursor: pointer;
color: #fff;
font-size: 24px;
display: flex;
justify-content: center;
align-items: center;
z-index: 10001;
}
.wepop-prev { left: 10px; }
.wepop-next { right: 10px; }
.wepop-prev::before,
.wepop-next::before {
content: "";
width: 20px;
height: 20px;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
position: absolute;
}
.wepop-prev::before { transform: rotate(-135deg); }
.wepop-next::before { transform: rotate(45deg); }
.wepop-alt-text {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background-color: rgba(0,0,0,0.7);
color: #fff;
padding: 10px;
text-align: center;
font-size: 12px;
}
.wepop-close:focus,
.wepop-prev:focus,
.wepop-next:focus {
outline: none;
}
.wepop-close:hover,
.wepop-prev:hover,
.wepop-next:hover {
opacity: .8;
}