/* =========================================================
   호출 시작 · 목적지 검색 (바로접수_목적지검색_v12)
   ========================================================= */

/* 검색 영역 */
.search-area {
    display: flex;
    flex-direction: column;
    gap: var(--space-12);
    padding: var(--space-8) var(--page-padding) var(--space-16) var(--space-16);
}

.search-area__row {
    display: flex;
    align-items: center;
    gap: var(--space-10);
}

.search-area__back {
    display: flex;
    color: var(--color-text);
}

.search-box {
    display: flex;
    flex: 1;
    align-items: center;
    gap: var(--space-8);
    min-width: 0;
    height: 52px;
    padding: 0 var(--space-6) 0 var(--space-14);
    border: 2px solid var(--color-primary);
    border-radius: var(--radius-lg);
    background: var(--color-bg);
    color: var(--color-icon);
}

.search-box__input {
    flex: 1;
    min-width: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: none;
    font: inherit;
    font-size: var(--fs-17);
    font-weight: var(--font-weight-medium);
    line-height: 1.4;
    color: var(--color-text);
}

.search-box__input::placeholder { color: var(--color-text-placeholder); }
.search-box__input::-webkit-search-cancel-button { display: none; }

.search-box__voice {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-full);
    background: var(--color-primary-soft);
    color: var(--color-primary);
}

/* 34px = 뒤로 아이콘(24) + 간격(10) — 검색창 왼쪽 끝에 맞춤 */
.search-area__quick {
    padding-left: 34px;
}

.map-chip {
    display: inline-flex;
    align-items: center;
    gap: var(--space-6);
    height: 40px;
    padding: 0 var(--space-14) 0 var(--space-12);
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-lg);
    background: var(--color-bg);
    font-size: var(--fs-14);
    font-weight: var(--font-weight-medium);
    color: var(--color-text);
}

.search-area__help {
    font-size: var(--fs-14);
    line-height: var(--lh-20);
    color: var(--color-text-sub);
}

/* 구분 띠 */
.divider {
    height: 8px;
    margin: 0;
    border: 0;
    background: var(--color-bg-gray);
}

.divider--thick { height: 10px; }

/* 장소 블록 (자주 가는 곳 · 최근 목적지 같은 여백) */
.place-block {
    display: flex;
    flex-direction: column;
    padding: var(--space-16) var(--page-padding) var(--space-8);
}

.place-block__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: var(--space-4);
    line-height: 1.4;
}

.place-block__title {
    font-size: var(--fs-16);
    font-weight: var(--font-weight-bold);
    line-height: 1.4;
}

.place-block__action {
    font-size: var(--fs-13);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-secondary);
}

/* 장소 목록 */
.place-list__item {
    display: flex;
    align-items: center;
    gap: var(--space-12);
    padding: var(--space-12) 0;
    border-bottom: 1px solid var(--color-border);
}

.place-list li:last-child .place-list__item,
.place-list__item:last-child {
    border-bottom: 0;
}

.place-list--recent .place-list__item {
    padding: var(--space-10) 0;
}

.place-list__tile {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-md);
    background: var(--color-bg-tile);
    color: var(--color-icon);
}

.place-list__text {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--space-2);
    min-width: 0;
    line-height: 1.4;
}

.place-list__name {
    font-size: var(--fs-16);
    font-weight: var(--font-weight-bold);
}

.place-list--recent .place-list__name {
    font-size: var(--fs-15);
    font-weight: var(--font-weight-medium);
}

.place-list__addr {
    font-size: var(--fs-13);
    color: var(--color-text-secondary);
}

.place-list__map {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--color-text-placeholder);
    border-radius: var(--radius-full);
    color: var(--color-icon);
}

/* 검색 결과 없음 */
.search-empty {
    padding: var(--space-24) 0;
    font-size: var(--fs-15);
    line-height: var(--lh-22);
    color: var(--color-text-sub);
    text-align: center;
}
