.carousel { display: flex; flex-direction: column; align-items: center; } .mainImage { max-width: 100%; max-height: 300px; cursor: zoom-in; border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .thumbnails { display: flex; gap: 0.5rem; margin-top: 1rem; flex-wrap: wrap; justify-content: center; } .thumbnail { width: 60px; height: 60px; object-fit: cover; opacity: 0.6; border-radius: 4px; cursor: pointer; transition: 0.2s; border: 2px solid transparent; } .thumbnail:hover, .thumbnail.active { opacity: 1; border-color: #0078e7; } /* Lightbox overlay */ .lightbox { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.85); display: flex; justify-content: center; align-items: center; z-index: 9999; cursor: default; overflow: hidden; } .lightboxImage { max-width: 90vw; max-height: 90vh; border-radius: 8px; z-index: 1; } /* Close (×) button */ .closeButton { position: absolute; top: 20px; right: 30px; font-size: 2.5rem; color: white; background: none; border: none; cursor: pointer; z-index: 2; } /* Left/right arrows */ .navButton { position: absolute; top: 50%; font-size: 3rem; color: white; background: none; border: none; cursor: pointer; padding: 0 1rem; z-index: 2; transform: translateY(-50%); user-select: none; } .left { left: 20px; } .right { right: 20px; } .caption { margin-top: 0.5rem; font-size: 0.8rem; color: #1c1e21; text-align: center; max-width: 90%; } .lightboxContent { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; } .lightboxCaption { color: #ccc; font-size: 0.9rem; text-align: center; max-width: 80vw; }