.address-search {
	position: relative;
	width: 408px;
}

.as-input {
	display: block;
	width: 100%;
	padding: 5px 8px;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.6;
	color: #333;
	background-color: #fff;
	border: 1px solid #d2d2d2;
	border-radius: 0.375rem;
	box-sizing: border-box;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.as-input:focus {
	border-color: #4c7fff;
	outline: none;
	box-shadow: 0 0 0 2px rgba(76, 127, 255, 0.15);
}

.as-dropdown {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 999;
	background: #fff;
	border: 1px solid #d2d2d2;
	border-radius: 0.375rem;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	margin-top: 3px;
	max-height: 280px;
	overflow-y: auto;
}

.as-item {
	padding: 7px 10px;
	cursor: pointer;
	font-size: 0.875rem;
	line-height: 1.4;
	border-bottom: 1px solid #f0f0f0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.as-item:last-child {
	border-bottom: none;
}

.as-item:hover,
.as-item:focus {
	background-color: #f0f5ff;
	outline: none;
}

.as-item .fa {
	color: #888;
	width: 14px;
	text-align: center;
}

.as-item .fa-map-marker {
	color: #4c7fff;
}

.as-item .as-name {
	font-weight: 500;
}

.as-item .as-desc {
	color: #999;
	font-size: 0.8rem;
	margin-left: 4px;
}

.as-loading {
	padding: 7px 10px;
	font-size: 0.875rem;
	color: #aaa;
}

.as-empty {
	padding: 10px;
	font-size: 0.875rem;
	color: #999;
	text-align: center;
}
