/* "Near me" — pulsante flottante di Explore (solo mobile) + barra dei risultati.
   Colori del brand: amaranto #6a0631 e giallo #fcb900. */

/* ── Pulsante: in basso al centro, a portata di pollice ── */
.wrc-near-btn {
  position: fixed; left: 50%; bottom: calc(22px + env(safe-area-inset-bottom, 0px));
  transform: translateX(-50%); z-index: 1400;
  display: none; align-items: center; justify-content: center; gap: 10px;
  min-height: 56px; padding: 0 26px 0 20px; border-radius: 999px;
  background: rgba(106, 6, 49, .8); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  border: 2px solid rgba(252, 185, 0, .9); color: #fcb900;
  font: 800 1.05rem/1 system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; letter-spacing: .02em;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .35); cursor: pointer; -webkit-tap-highlight-color: transparent;
  animation: wrc-near-blink 1.6s ease-in-out infinite;
}
.wrc-near-btn svg { flex: none; }
.wrc-near-btn:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 768px) { .wrc-near-btn { display: inline-flex; } }

/* Lampeggio: il pulsante si illumina e un anello giallo si espande (ciclo di 1,6 s, lento, non stroboscopico) */
@keyframes wrc-near-blink {
  0%, 100% { background: rgba(106, 6, 49, .72); box-shadow: 0 8px 22px rgba(0, 0, 0, .35), 0 0 0 0 rgba(252, 185, 0, .7); }
  50%      { background: rgba(106, 6, 49, .95); box-shadow: 0 8px 22px rgba(0, 0, 0, .35), 0 0 0 16px rgba(252, 185, 0, 0); }
}
/* Dopo il primo uso, o mentre cerca la posizione, smette di lampeggiare */
.wrc-near-btn.is-busy, .wrc-near-btn.is-active { animation: none; }
.wrc-near-btn.is-busy { opacity: .85; }
.wrc-near-btn.is-active { background: rgba(252, 185, 0, .95); border-color: #6a0631; color: #6a0631; }
@media (prefers-reduced-motion: reduce) {
  .wrc-near-btn { animation: none; box-shadow: 0 8px 22px rgba(0, 0, 0, .35), 0 0 0 4px rgba(252, 185, 0, .55); }
}

/* ── Messaggio breve sopra il pulsante ── */
.wrc-near-toast {
  position: fixed; left: 50%; bottom: calc(92px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%);
  z-index: 1400; max-width: min(92vw, 420px); padding: 11px 16px; border-radius: 14px;
  background: rgba(26, 16, 8, .94); color: #fff; font: 600 .9rem/1.4 system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  text-align: center; box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
}
.wrc-near-toast[hidden] { display: none; }

/* ── Barra dei risultati sopra la lista ── */
.wrc-near-bar {
  margin: 0 0 1.6rem; padding: 14px 16px; border-radius: 14px; background: #fff;
  border: 1px solid rgba(106, 6, 49, .18); border-left: 5px solid #fcb900;
  box-shadow: 0 4px 16px rgba(106, 6, 49, .08); scroll-margin-top: 76px;
}
.wrc-near-bar[hidden] { display: none; }
.wrc-near-bar__title { margin: 0 0 4px; font-weight: 800; font-size: 1.02rem; color: #6a0631; }
.wrc-near-bar__note { margin: 0 0 10px; font-size: .88rem; line-height: 1.45; color: #444; }
.wrc-near-bar__row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.wrc-near-chip {
  min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1.5px solid #6a0631;
  background: transparent; color: #6a0631; font-weight: 700; font-size: .88rem; cursor: pointer;
}
.wrc-near-chip.active { background: #6a0631; color: #fff; }
.wrc-near-exit { margin-left: auto; min-height: 40px; padding: 0 6px; background: none; border: 0; color: #6a0631; font-weight: 700; font-size: .88rem; text-decoration: underline; cursor: pointer; }

/* ── Card fuori raggio nascoste; distanza sulle altre ── */
.iocos-metro-station.wrc-near-far { display: none !important; }
.wrc-near-dist {
  display: inline-block; margin-top: 8px; padding: 3px 11px; border-radius: 999px;
  background: #fcb900; color: #6a0631; font-weight: 800; font-size: .8rem; line-height: 1.3;
}

/* ── Mobile: barra a tutta larghezza, raggi 250 m / 500 m / 1 km sulla stessa riga ── */
@media (max-width: 768px) {
  .wrc-near-bar {
    box-sizing: border-box; width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
    border-radius: 0; border-left: 0; border-right: 0; border-top: 5px solid #fcb900; padding: 14px 16px;
  }
  .wrc-near-bar__row { flex-wrap: nowrap; gap: 8px; }
  .wrc-near-chip { flex: 1 1 0; min-width: 0; padding: 0 8px; white-space: nowrap; text-align: center; }
  .wrc-near-exit { flex: none; margin-left: 4px; white-space: nowrap; }
}
