.lightbox {
display: none;
position: fixed;
inset: 0;
z-index: 10000;
padding: 40px;
background: rgba(0, 0, 0, 0.9);
justify-content: center;
align-items: center;
flex-direction: column;
}
.lightbox.active,
.lightbox.is-active {
display: flex;
}
.lightbox-content {
max-width: 90%;
max-height: 80vh;
object-fit: contain;
border-radius: 4px;
}
.lightbox-close {
position: absolute;
top: 20px;
right: 30px;
padding: 10px;
border: none;
background: none;
color: var(--color-white);
font-size: 40px;
font-weight: 700;
line-height: 1;
cursor: pointer;
transition: opacity 0.2s ease;
}
.lightbox-close:hover {
opacity: 0.7;
}
.lightbox-caption {
max-width: 800px;
padding: 20px;
color: var(--color-white);
text-align: center;
font-size: 16px;
}
.lightbox-nav {
position: absolute;
top: 50%;
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 60px;
padding: 15px 20px;
border: none;
border-radius: 50%;
background: rgba(255, 255, 255, 0.1);
color: var(--color-white);
font-size: 30px;
cursor: pointer;
transform: translateY(-50%);
transition: background 0.2s ease;
}
.lightbox-nav:hover {
background: rgba(255, 255, 255, 0.2);
}
.lightbox-nav--prev {
left: 20px;
}
.lightbox-nav--next {
right: 20px;
}
@media (max-width: 768px) {
.lightbox-nav {
width: 40px;
height: 40px;
font-size: 20px;
}
}