/**
 * Searchable Select Dropdown Styles
 * Mobile-friendly, searchable dropdown replacement for the city filter.
 */

.searchable-select-container {
  position: relative;
  width: 100%;
  margin-bottom: 10px;
}

.searchable-select-input {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px !important; /* Prevent iOS zoom */
  border: 1px solid #ced4da;
  border-radius: 4px;
  box-shadow: none;
}

.searchable-select-dropdown {
  background-color: #ffffff;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2);
  z-index: 9999;
  overflow-y: auto;
}

.searchable-select-option {
  transition: background-color 0.2s;
}

.searchable-select-option:hover,
.searchable-select-option:focus {
  background-color: #f5f5f5;
}

.no-matches-message {
  padding: 15px;
  text-align: center;
  color: #6c757d;
  font-style: italic;
}

/* Mobile Specific Styles */
@media (max-width: 768px) {
  .searchable-select-input {
    height: 44px !important;
    font-size: 16px !important;
  }
  
  .searchable-select-dropdown {
    max-height: 60vh;
  }
  
  .searchable-select-option {
    padding: 14px !important;
  }
  
  #dropdown-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9998;
  }
}
