/* Shared styles, loaded by every page before its own stylesheet. */

body {
  margin: 0;
}

@keyframes blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

/* ---- "← back home" link at the top of subpages ---- */

.top-bar {
  display: flex;
  justify-content: center;
  padding: 16px 0 0;
}
.top-bar a {
  font-family: system-ui, sans-serif;
  font-size: 12px;
  color: #333;
  text-decoration: none;
}
/* White glowing link for pages with a dark photo background */
.top-bar.on-dark a {
  color: #fff;
  text-shadow:
    0 0 6px #000,
    0 0 12px #000;
}

/* ---- Filter pills (bird log species, library genres); pages set the size ---- */

.filter-pill {
  border-radius: 999px;
  font-family: system-ui, sans-serif;
  cursor: pointer;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.12);
  background: #e0e0e0;
  transition: outline 0.1s;
}
.filter-pill.active {
  outline: 2px solid #444;
}

/* ---- Click-to-enlarge overlay (markup and behavior in static/js/lightbox.js) ---- */

#lightbox {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1000;
  align-items: center;
  justify-content: center;
}
#lightbox.open {
  display: flex;
}
#lightbox img {
  max-width: 90vw;
  max-height: 90vh;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.5);
}

/* ---- Draggable image collage on the moodboard subpages (static/js/image-wall.js) ---- */
/* Pages set the wall height and position each image by id. */

.image-wall {
  position: relative;
  width: 1300px;
  flex-shrink: 0;
}
.image-wall img {
  position: absolute;
  display: block;
  box-shadow: 4px 4px 14px rgba(0, 0, 0, 0.4);
  cursor: grab;
  height: auto;
}
