.locator-favorite-btn {
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  color: var(--color-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
  flex-shrink: 0;
  padding: 0;
}

.locator-favorite-btn:hover {
  transform: scale(1.06);
  background: #fff;
}

.locator-favorite-btn.is-favorited,
.locator-favorite-btn[data-favorited="1"] {
  color: #e11d48;
}

.locator-favorite-btn:disabled {
  opacity: 0.65;
  cursor: wait;
}

.locator-map-preview__favorite {
  position: absolute;
  top: 0.65rem;
  left: 0.65rem;
  z-index: 4;
}

.locator-detail-offcanvas .locator-favorite-btn--header {
  width: 2.25rem;
  height: 2.25rem;
  background: var(--color-bot-bubble);
  box-shadow: none;
}

.locator-detail-offcanvas .locator-favorite-btn--header.is-favorited {
  background: rgba(225, 29, 72, 0.12);
}

[data-theme="dark"] .locator-favorite-btn {
  color: #111827;
}

[data-theme="dark"] .locator-favorite-btn.is-favorited {
  color: #fb7185;
}
