/* =========================================================
   Image credit © badge + attribution popup
   ========================================================= */

/* Wrapper used when a standalone <img> has no positioned container.
   display:block keeps full-width fact images laid out as before. */
.credit-wrap{
  position: relative;
  display: block;
}

/* The © badge, pinned to the lower-left corner of the photo. */
.credit-badge{
  position: absolute;
  left: 8px;
  bottom: 10px;
  z-index: 3;
  width: 26px;
  height: 26px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: rgba(0, 0, 0, .55);
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  cursor: pointer;
}
/* SVG © glyph is symmetric in its viewBox, so flex-centering it sits it dead
   centre of the circle — unlike the font "©" character, which rides high. */
.credit-badge svg{
  width: 15px;
  height: 15px;
  display: block;
}
/* No movement on hover — just a slightly stronger background. */
.credit-badge:hover,
.credit-badge:focus-visible{
  background: rgba(0, 0, 0, .78);
  outline: none;
}

/* Sight (POI) hero — lower-left, lifted slightly off the bottom edge so it
   clears the scrim/title band. */
.credit-badge--sight{
  left: 8px;
  bottom: 20px;
}

/* Home walk slides — lower-right corner. */
.credit-badge--home{
  left: auto;
  right: 8px;
}

/* Walk hero — the audio player sits directly below the hero, and the title is
   bottom-left, so pin the badge bottom-right, lifted just above the player seam. */
.credit-badge--walk{
  left: auto;
  right: 12px;
  bottom: 16px;
}

/* Overlay + card */
.credit-pop-overlay{
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, .5);
}
/* Plain white box, plain black text — independent of the app theme so the
   credit is always clearly readable. */
.credit-pop-card{
  width: 100%;
  max-width: 340px;
  background: #fff;
  color: #000;
  border-radius: 14px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, .35);
  overflow: hidden;
}
.credit-pop-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, .12);
}
.credit-pop-title{
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: #000;
}
.credit-pop-close{
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  font-size: 22px;
  line-height: 1;
  color: #000;
  background: transparent;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
}
.credit-pop-close:hover{ background: rgba(0, 0, 0, .08); }
.credit-pop-body{
  padding: 14px 16px;
}
.credit-pop-row{
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.45;
  color: #000;
  word-break: break-word;
}
.credit-pop-row:last-child{ margin-bottom: 0; }
.credit-pop-key{ color: #000; opacity: .6; }
.credit-pop-row a{ color: #1a4fd6; }
