 /* dropdown.css */
 /* Styles for the custom multi-select dropdown component */
 
/* Base container for the multi-select */
 .multiselect-container {
 	position: relative;
 	width: 100%;
 }
 
 /* Styles for the main clickable area of the complex multiselect */
 .multiselect-dropdown {
	width: 100%;
	position: relative;
	border: 2px solid #eef1f5; /* Default border */
	border-radius: 8px;
	transition: border-color 0.3s;
	background-color: white;
	height: 48px; /* Standard height, matches simple select */
	box-sizing: border-box;
 }
 
 .multiselect-dropdown:hover,
 .multiselect-dropdown.active {
	border-color: #087aa8; /* Highlight border on hover/active */
 }
 
 /* Styles for the filter input field within the multiselect */
 .multiselect-filter {
	flex: 1; /* Take up available space in .multiselect-input-container */
	border: none;
	padding: 0;
	outline: none;
	font-size: 16px;
	width: 100%;
	background: transparent;
	color: #333;
	font-family: 'Poppins', Arial, sans-serif; /* Consistent font */
	height: 100%; /* Fill the container height */
 }
 .multiselect-filter::placeholder { color: #999; opacity: 1; }
 .multiselect-filter:disabled { background-color: transparent; cursor: not-allowed; color: #6c757d; }
 
 /* Options menu styling */
 .multiselect-options {
	position: absolute;
	top: calc(100% - 2px); /* Overlap with parent's bottom border */
	left: -2px; /* Align with parent's outer border */
	right: -2px; /* Align with parent's outer border */
 	max-height: 300px;
 	overflow-y: auto;
 	background-color: white;
	border-radius: 0 0 8px 8px; /* Adjust radius for seamless look */
 	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
 	z-index: 100;
	margin-top: 0; /* Remove gap when active */
	border: 2px solid #087aa8; /* Match active dropdown border color */
	border-top: none; /* Avoid double border */
 	display: none;
 }
 
 /* Show options when dropdown is active */
 .multiselect-dropdown.active .multiselect-options {
	display: block;
 }
 
 /* Option item styling */
  .multiselect-option { padding: 10px 12px; display: flex; align-items: center; transition: background-color 0.2s; cursor: pointer; }
  .multiselect-option:hover { background-color: #f0f7fb; }
  .multiselect-option input[type="checkbox"] { margin-right: 8px; cursor: pointer; }
  .multiselect-option label { margin-bottom: 0; font-weight: normal; color: #333; flex-grow: 1; cursor: pointer; font-size: 14px; font-family: 'Segoe UI', Arial, sans-serif; }
  
  /* Group header styling (e.g., for states in county list) */
  .multiselect-group-header { padding: 10px 12px; font-weight: 600; background-color: #eef1f5; color: #495057; border-top: 1px solid #dee2e6; border-bottom: 1px solid #dee2e6; font-size: 14px; }
  
  /* Specific styling for county options under a state group */
  .multiselect-option.county-option { padding-left: 24px; } /* Indent counties */
  
  /* Display area for selected items (tags) */
  .selection-display {
	display: flex;
	flex-wrap: wrap;
	margin: 5px 0 10px 0; /* Space below the dropdown */
	min-height: 30px; /* Ensure space even if empty */
	gap: 5px; /* Space between tags */
  }
  
  /* Styling for individual selected item tags */
  .type-tag {
	display: inline-flex;
	align-items: center;
	background-color: #e3f2fd; /* Light blue background */
	border: 1px solid #bbdefb; /* Light blue border */
	border-radius: 6px;
	padding: 4px 8px;
	margin: 2px; /* Small margin around tags */
	font-size: 14px;
	white-space: nowrap; /* Prevent tag text from wrapping */
  }
  
  .tag-text {
	margin-right: 4px; /* Space between text and remove icon */
  }
  
  .tag-remove {
	margin-left: 8px; /* Space from text */
	cursor: pointer;
	color: #087aa8; /* Blue color for icon */
	font-weight: bold;
	font-size: 16px;
	line-height: 1; /* Vertically align icon */
  }
  
  .tag-remove:hover {
	color: #e57373; /* Red color on hover */
  }
  
  /* Messages within the dropdown options (loading, error, no results) */
  .loading-message,
  .error-message,
  .no-results {
	padding: 12px;
	text-align: center;
	color: #666;
	font-size: 14px;
  }
  .error-message { color: #e74c3c; } /* Specific color for errors */