/* Keep location modals above page content */
#locationModal,
#changeAddressModal {
	z-index: 10001 !important;
}

/* Delivery/search modal cards */
#locationModal > div,
#changeAddressModal > div {
	background: #ffffff !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: 1px solid #e5e7eb !important;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.14) !important;
}

/* Modal titles */
#locationModal h3,
#changeAddressModal h3 {
	color: #2d3436 !important;
	font-size: clamp(1.25rem, 3.5vw, 1.4rem) !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(255, 255, 255, 0.9);
	letter-spacing: -0.01em;
	line-height: 1.3;
}

/* Modal helper labels */
#locationModal div[style*="color: #999"],
#changeAddressModal div[style*="color: #999"] {
	color: #636e72 !important;
	font-size: clamp(0.8rem, 2vw, 0.85rem) !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 1px rgba(255, 255, 255, 0.5);
	line-height: 1.5;
}

/* Current location card inside modal */
#currentLocationInModal {
	background-color: #ffffff !important;
	border: 1px solid #e0e9ff !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-radius: clamp(8px, 2vw, 12px) !important;
	padding: clamp(10px, 2.5vw, 12px) !important;
}

/* Main location text in modal cards */
#currentAddressInModal,
#currentLocationInModal div {
	color: #2d3436 !important;
	font-size: clamp(0.95rem, 2.2vw, 1rem) !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.08), 0 1px 1px rgba(255, 255, 255, 0.7);
	line-height: 1.5;
}

/* Search input in change-address modal */
#changeAddressSearch {
	background: #ffffff !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: 2px solid rgba(200, 200, 210, 0.5) !important;
	color: #2d3436 !important;
	font-size: clamp(0.95rem, 2.2vw, 1rem) !important;
	padding: clamp(10px, 2.5vw, 12px) clamp(14px, 3vw, 16px) !important;
	border-radius: clamp(8px, 2vw, 12px) !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

#changeAddressSearch::placeholder {
	color: #636e72 !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

#changeAddressSearch:focus {
	background: #ffffff !important;
	border-color: #667eea !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* Search suggestions dropdown */
#changeSuggestionsDropdown {
	background: #ffffff !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: 2px solid rgba(200, 200, 210, 0.5) !important;
	border-radius: clamp(8px, 2vw, 12px) !important;
}

#changeSuggestionsDropdown div {
	color: #2d3436 !important;
	border-bottom: 1px solid rgba(200, 200, 210, 0.3) !important;
	font-size: clamp(0.9rem, 2vw, 0.95rem) !important;
	padding: clamp(10px, 2.5vw, 12px) clamp(14px, 3vw, 16px) !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 1px rgba(255, 255, 255, 0.6);
	line-height: 1.5;
}

#changeSuggestionsDropdown div:hover {
	background-color: rgba(102, 126, 234, 0.1) !important;
}

@media (max-width: 640px) {
	#locationModal > div,
	#changeAddressModal > div {
		width: 90vw !important;
		max-width: 90vw !important;
		padding: 20px 16px !important;
		border-radius: 16px !important;
		max-height: 85vh !important;
		margin: auto !important;
	}

	#locationModal h3,
	#changeAddressModal h3 {
		font-size: 1.2rem !important;
		margin-bottom: 12px !important;
	}

	#changeAddressSearch {
		padding: 12px 14px !important;
		font-size: 0.95rem !important;
		border-radius: 10px !important;
		width: 100% !important;
	}
}

@media (max-width: 480px) {
	#locationModal > div,
	#changeAddressModal > div {
		width: 95vw !important;
		max-width: 95vw !important;
		padding: 16px 12px !important;
		border-radius: 14px !important;
	}

	#locationModal h3,
	#changeAddressModal h3 {
		font-size: 1.1rem !important;
	}
}
