/* styles.css */

/* --- Shared base --- */
body {
  font-family: sans-serif;
  margin: 0;
  padding: 0;
  background-color: #000000;
}

/* --- Carousel (“roulette”) --- */
#roulette,
#selector {
  display: flex;
  overflow-x: auto;
  padding: 10px;
  gap: 10px;
  scroll-snap-type: x mandatory;
  background: #000000; /* or whatever you prefer */
}

.thumb {
  flex: 0 0 auto;
  width: 100px;
  height: auto;          /* 16:9 aspect */
  opacity: 0.3;
  scroll-snap-align: center;
  cursor: pointer;
  object-fit: cover;
  text-decoration: none;
}

.thumb:hover,
.thumb.active {
  opacity: 1;
  transform: scale(1.1);
}

/* If you have labels under thumbs on gallery.html */
.thumb span {
  display: block;
  text-align: center;
  margin-top: 5px;
  font-size: 0.9em;
  color: #333;
}

/* --- Grid of images/videos --- */
#grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 10px;
  padding: 10px;
  background: none;  /* or your desired page bg */
}

.media-box {
  position: relative;
  width: 100%;
}

.media-box img,
.media-box video {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain; /* or “cover” if you still want cropping */
  cursor: pointer;
}

/* Lightbox overlay */
#lightbox-overlay {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(8px);
  z-index: 1000;
}

#lightbox-overlay img,
#lightbox-overlay video {
  max-width: 90%;
  max-height: 90%;
  box-shadow: 0 0 20px rgba(0,0,0,0.8);
  cursor: pointer;
}

/* helper to blur background elements */
.blur {
  filter: blur(8px);
}
/* --- Separator line --- */
.footer-separator {
  border: none;
  border-top: 1px dotted #ccc;
  width: 40%;
  margin: 20px auto;
}

/* --- Footer container --- */
.footer {
  text-align: center;
  padding: 20px 10px;
  font-size: 0.9em;
  color: #666;
  background: none; /* or match body BG */
}

/* --- Logo in footer --- */
.footer-logo {
  max-width: 120px;
  height: auto;
  margin-bottom: 10px;
}

/* --- Disclaimer text --- */
.footer-disclaimer {
  margin: 0;
  line-height: 1.4;
}