/* ═══════════════════════════════════
   PROGRESS TRACKER — fixed bottom bar
═══════════════════════════════════ */
.progress-tracker {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 800;
  background: var(--secondary-dark, #0a0a0f);
  border-top: 2px solid var(--accent-gold);
  display: flex;
  align-items: center;
  padding: 0 16px;
  gap: 12px;
}

.progress-label {
  font-size: 0.65em;
  letter-spacing: 1px;
  color: var(--accent-gold);
  white-space: nowrap;
  text-transform: uppercase;
}

.progress-track {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
}

.progress-pips {
  display: flex;
  gap: 4px;
  align-items: center;
}

/* ── Diamond Pip ── */
.pip {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  position: relative;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.pip svg {
  display: block;
  width: 100%;
  height: 100%;
}

.pip.empty .diamond-bg {
  fill: transparent;
  stroke: rgba(212, 165, 116, 0.4);
  stroke-width: 1.4;
}

.pip.empty .keyhole-circle {
  fill: rgba(212, 165, 116, 0.18);
}

.pip.empty .keyhole-rect {
  fill: rgba(212, 165, 116, 0.18);
}

.pip.filled .diamond-bg {
  fill: var(--accent-gold);
  stroke: var(--accent-gold);
  stroke-width: 0.8;
}

.pip.filled .keyhole-circle {
  fill: var(--secondary-dark);
}

.pip.filled .keyhole-rect {
  fill: var(--secondary-dark);
}

.pip.just-found {
  animation: pipPop 0.7s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes pipPop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.5);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
