/* ========================================================================
   signal-search-override.css
   - landdata 검색박스 시그널 톤만 통합 (색상/폰트만)
   - 레이아웃은 deploy의 landsearch-mo.css(815줄)에 맡김
   ======================================================================== */

/* ====== 색상 토큰 — 시그널 violet ====== */
.rsl-page--landsearch,
.rsl-search--landsearch {
  --mo-accent:       var(--violet);
  --mo-bg-quick:     var(--violet-soft);
  --mo-bg-segment:   var(--gray-100);
  --mo-text:         var(--gray-900);
  --mo-muted:        var(--gray-500);
  --mo-placeholder:  var(--gray-400);
  --mo-border:       var(--gray-200);
  --mo-bg:           var(--white);
}

/* ====== 폰트 ====== */
.rsl-page--landsearch,
.rsl-page--landsearch *,
.rsl-search--landsearch,
.rsl-search--landsearch * {
  font-family: var(--font-base) !important;
  letter-spacing: -0.02em;
}

/* ====== 페이지 컨테이너 ====== */
.rsl-page--landsearch {
  max-width: var(--container-max);
  margin: 0 auto;
  background: var(--white);
  padding-bottom: calc(var(--tabbar-h) + 16px);
}

/* ====== A안 적용 — 카드 보더 제거, row 구분선만 (.s-list 패턴) ====== */
.rsl-page--landsearch .rsl-search,
.rsl-page--landsearch .rsl-search__card,
.rsl-page--landsearch form.rs--search-card {
  background: var(--white) !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid {
  padding: 0 !important;
  background: var(--white) !important;
  row-gap: 0 !important;
  column-gap: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row {
  padding: 6px 10px !important;
  border-bottom: 1px solid var(--gray-100) !important;
  margin-bottom: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--yongdo > .rs-form-row__line--yongdo {
  margin-bottom: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid .rs-form-row > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid .rs-form-row .rs-form-row__line--yongdo > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid > .rs-form-row--status-combo > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid .rs-form-row--special-shortcut > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--region > .rs-label--region-desktop {
  flex: 0 0 60px !important;
  width: 60px !important;
  min-width: 60px !important;
  max-width: 60px !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--status,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--uchal,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--agency {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  /* 라벨~필드 간격 8px — 다른 행과 동일 시작선(86px)으로 통일 */
  gap: 8px !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--status > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--uchal > .rs-label,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--agency > .rs-label {
  flex-shrink: 0 !important;
  width: 56px !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--status > .rs-field--status {
  flex: 1 1 0% !important;
  min-width: 0 !important;
  max-width: none !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-inline--uchal {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 1 1 0% !important;
  min-width: 0 !important;
  flex-wrap: nowrap !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-inline--uchal .rs-select--uchal {
  flex: 1 1 0% !important;
  min-width: 0 !important;
  max-width: none !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rsl-search__more-wrap,
.rgm-search .rgm-more-wrap {
  padding: 0 !important;
  border-top: none !important;
  border-bottom: 1px solid var(--gray-100) !important;
  background: var(--white) !important;
}
.rsl-page--landsearch .rsl-search__more-btn,
.rsl-page--landsearch .rs-expand,
.rgm-search .rgm-more-btn {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--white) !important;
  color: var(--violet-strong) !important;
  border: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
/* 공매검색 rgm-more-btn::before "+" 아이콘 제거 — 종합검색·예정물건과 통일 */
.rgm-search .rgm-more-btn::before {
  content: none !important;
}

/* ====== 공매검색 (rgm-search) 검색박스 row/label 종합검색 기준 통일 ======
   ─ filter-row 안에 .filter-col이 2개씩 들어있음 → 모바일에서는 1 col per row 로 풀어
     종합검색과 동일한 1 row = 1 필드 = 53px 패턴으로 통일 */
.rgm-search .filter-rows {
  gap: 0 !important;
}
.rgm-search .filter-row {
  min-height: 0 !important;
  border-bottom: none !important;
  flex-wrap: wrap !important;
  display: flex !important;
}
.rgm-search .filter-col {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 6px 10px !important;
  box-sizing: border-box !important;
  min-height: 53px !important;
  border-bottom: 1px solid var(--gray-100) !important;
}
.rgm-search .filter-rows > .filter-row:last-child > .filter-col:last-child {
  border-bottom: none !important;
}
.rgm-search .filter-label {
  width: 60px !important;
  min-width: 60px !important;
  max-width: 60px !important;
  flex: 0 0 60px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--gray-900) !important;
  letter-spacing: -0.42px !important;
}
/* filter-ctrl(라벨 옆 컨트롤 영역) 가변 폭 */
.rgm-search .filter-ctrl {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
}
/* 면적 입력(토지·건물) — 고정 182px 대신 유연한 폭으로 */
.rgm-search .filter-ctrl .price-input--area {
  width: auto !important;
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
/* 평 버튼 — 패딩 줄여서 한 줄에 들어오게 */
.rgm-search .filter-ctrl .btn-unit-toggle {
  flex-shrink: 0 !important;
  padding: 0 10px !important;
  height: 36px !important;
  font-size: 13px !important;
}

/* ── price-input / area-input wrapper 박스 제거 (박스 안에 박스 해결)
   외곽 wrapper의 border/bg/padding 모두 투명화 → 안쪽 select(.price-input__value)가
   종합검색 .rs-select 와 동일한 단일 박스 역할 */
.rgm-search .price-input,
.rgm-search .area-input {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  height: auto !important;
  gap: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
}
/* 안쪽 select — 종합검색 .rs-select 와 동일한 스타일 (옅은 회색 박스 단일) */
.rgm-search .price-input__value,
.rgm-search .area-input__value {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  height: 40px !important;
  border: 1px solid #d0d5dd !important;
  border-radius: 6px !important;
  background: #f6f8fb !important;
  padding: 0 20px 0 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--gray-900) !important;
  box-sizing: border-box !important;
}
/* unit 텍스트 (만원/㎡) */
.rgm-search .price-input__unit,
.rgm-search .area-input__unit {
  flex: 0 0 auto !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--gray-700) !important;
  white-space: nowrap !important;
}
.rsl-page--landsearch .rsc-heading,
.rgm-search .rsc-heading {
  padding: 16px 20px 8px;
  border-bottom: 1px solid var(--gray-100);
}
/* 헤딩 — landsearch_list_full.css 24px 룰 / rsl-mosearch.css 룰 강제 오버라이드
   .rgm-search 추가: 공매(public/new_search_box.php)도 동일 헤딩 통일 */
.rsl-page--landsearch .rsc-heading,
.rsl-page--landsearch.rsl-page > .rsc-heading,
.rsl-page--landsearch .rsl-search > .rsc-heading,
.rgm-search .rsc-heading,
.rgm-search > .rc-search__box > .rsc-heading {
  padding: 20px 20px 12px !important;
  border-bottom: 1px solid var(--gray-100) !important;
  background: var(--white) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.rsl-page--landsearch .rsc-heading .rsc-heading__title,
.rsl-page--landsearch.rsl-page > .rsc-heading .rsc-heading__title,
.rsl-page--landsearch .rsl-search > .rsc-heading .rsc-heading__title,
.rsl-page--landsearch .rsc-heading__title,
.rgm-search .rsc-heading .rsc-heading__title,
.rgm-search .rsc-heading__title {
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.03em !important;
  color: var(--gray-900) !important;
  margin: 0 !important;
}

/* ====== 자주검색 가로행 영역 제거 — 사용자 지시 ====== */
.rsl-page--landsearch .rs-recommend {
  display: none !important;
}

/* ====== 버튼 시그널 톤 ====== */
/* 복수선택: 최초값도 보라 채움 — 색상 없는 상태 없이 통일.
   .rs-main 포함(3클래스)으로 landsearch_list_full .rs-main .btn-small12(흰배경) 이김 */
.rsl-page--landsearch .rs-main .btn-small12,
.rsl-page--landsearch .btn-small12 {
  background: var(--violet) !important;
  color: var(--white) !important;
  border-color: var(--violet) !important;
}
.rsl-page--landsearch .rs-main .btn-small12:hover,
.rsl-page--landsearch .btn-small12:hover {
  background: var(--violet-strong) !important;
  border-color: var(--violet-strong) !important;
  color: var(--white) !important;
}
/* 클릭(패널 열림, JS .is-active) = 짙은 보라로 변경 */
.rsl-page--landsearch .rs-main .btn-small12.is-active,
.rsl-page--landsearch .btn-small12.is-active {
  background: var(--violet-strong) !important;
  border-color: var(--violet-strong) !important;
  color: var(--white) !important;
}
.rsl-page--landsearch .btn-small13 {
  color: var(--violet) !important;
  border-color: var(--violet) !important;
}
.rsl-page--landsearch .btn-small13:hover {
  background: var(--violet) !important;
  color: var(--white) !important;
}
/* 공매검색 ㎡·평 단위 전환 버튼 — refresh 아이콘 제거 + 보라 테두리 통일 */
.rgm-search .btn-unit-toggle {
  flex: 0 0 auto !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid var(--violet) !important;
  border-radius: 6px !important;
  background: var(--white) !important;
  color: var(--violet) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}
.rgm-search .btn-unit-toggle::before {
  content: none !important;
  display: none !important;
}
.rgm-search .btn-unit-toggle:hover {
  background: var(--violet) !important;
  color: var(--white) !important;
}
.rsl-page--landsearch .btn-small14 {
  background: var(--white) !important;
  color: var(--gray-700) !important;
  border-color: var(--gray-200) !important;
}
.rsl-page--landsearch .btn-small15 {
  background: var(--violet) !important;
  color: var(--white) !important;
  border-color: var(--violet) !important;
}
.rsl-page--landsearch .btn-small15:hover {
  background: var(--violet-strong) !important;
}

/* ====== 입력 / select 포커스 ====== */
.rsl-page--landsearch .rs-input:focus,
.rsl-page--landsearch .rs-select:focus,
.rsl-page--landsearch input:focus,
.rsl-page--landsearch select:focus {
  outline-color: var(--violet) !important;
  border-color: var(--violet) !important;
}

/* ====== 체크박스 칩 selected ====== */
.rsl-page--landsearch input[type="checkbox"]:checked + label.checkboxopt,
.rsl-page--landsearch .rsl-yongdo-multi__chip.is-selected,
.rsl-page--landsearch .rsl-yongdo-multi__chip:has(input:checked) {
  background: var(--violet-soft) !important;
  color: var(--violet-strong) !important;
  border-color: var(--violet) !important;
}

/* ====== 용도지역 + 레거시 그룹 패널 숨김 (사용자 지시) ====== */
.rsl-page--landsearch .rs-expands--yongdo,
.rsl-page--landsearch .rs-expands--legacy-yongdo,
.rsl-page--landsearch #rslYongdoExpandBtn,
.rsl-page--landsearch #rslYongdoPanelBlock {
  display: none !important;
}

/* ====== 매각기일 표시 — landsearch-mo.css 숨김 오버라이드 ====== */
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--sale-date {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--sale-date .rs-inline--sale-date {
  flex: 1 1 0% !important;
  min-width: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--sale-date .rs-field.date {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.rsl-page--landsearch .rsl-search--landsearch .rs-form-row--sale-date input.calendar {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* ====== 건물면적 / 토지면적 삭제 (사용자 지시) ====== */
.rsl-page--landsearch .rs-form-row--barea,
.rsl-page--landsearch .rs-form-row--larea,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid .rs-form-row--barea,
.rsl-page--landsearch .rsl-search--landsearch .rs-form-grid .rs-form-row--larea {
  display: none !important;
}

/* ========================================================================
   푸터 영역 — 초기화/검색 버튼만 (관심검색/불러오기 제거 - 사용자 지시)
   ======================================================================== */
.rsl-page--landsearch .rs-footer {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 12px 0 calc(var(--tabbar-h) + 12px) 0 !important;
  background: var(--white) !important;
  border-top: 1px solid var(--gray-100) !important;
  margin-top: 16px !important;
}

/* 관심검색 영역 제거 */
.rsl-page--landsearch .rs-footer__left,
.rsl-page--landsearch .rs-footer__save-row,
.rsl-page--landsearch .rs-footer__save-stack,
.rsl-page--landsearch .rs-footer__save,
.rsl-page--landsearch .rs-footer__saved {
  display: none !important;
}

/* 검색조건 불러오기 제거 — specificity 강화 (id + class 다중) */
.rsl-page--landsearch .rs-footer .rs-footer__load,
.rsl-page--landsearch .rs-footer #rslOpenLoadSearchBtn,
.rsl-page--landsearch button#rslOpenLoadSearchBtn,
#rslOpenLoadSearchBtn {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* 초기화 / 검색 버튼 — 높이 44px + 전체 너비 꽉 채움 (1:2 비율) */
.rsl-page--landsearch .rs-footer__btns {
  display: flex !important;
  gap: 0 !important;
  width: 100% !important;
}
.rsl-page--landsearch .rs-footer__btns .btn-small14 {
  flex: 1 1 0 !important;
  width: auto !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  background: var(--white) !important;
  color: var(--gray-700) !important;
  border: 1px solid var(--gray-200) !important;
  border-radius: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.rsl-page--landsearch .rs-footer__btns .btn-small14:hover {
  background: var(--gray-50) !important;
  color: var(--gray-900) !important;
  border-color: var(--gray-200) !important;
}
.rsl-page--landsearch .rs-footer__btns .btn-small15 {
  flex: 2 1 0 !important;
  width: auto !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  background: var(--violet) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 0 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}
.rsl-page--landsearch .rs-footer__btns .btn-small15:hover {
  background: var(--violet-strong) !important;
  color: var(--white) !important;
}

/* ========================================================================
   모달 3종 시그널 톤 (지역복수 / 관심검색 저장 / 불러오기)
   ======================================================================== */
.rs-region-addj-backdrop,
.rsl-save-search-backdrop,
.rsl-load-search-backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(15, 16, 35, 0.45) !important;
  z-index: 9000 !important;
}
.rs-region-addj,
.rsl-save-search-modal,
.rsl-load-search-modal {
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: calc(100% - 32px) !important;
  max-width: 398px !important;
  background: var(--white) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 48px rgba(15, 16, 35, 0.24) !important;
  z-index: 9100 !important;
  overflow: hidden !important;
}
.rs-region-addj__head,
.searchjo-header,
.rsl-save-search-modal__head,
.rsl-load-search-modal__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--gray-100) !important;
}
.rs-region-addj__head strong,
.searchjo-title,
.sj2-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--gray-900) !important;
}
.rs-region-addj__close,
.searchjo-close,
.sj2-close {
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--gray-100) !important;
  color: var(--gray-700) !important;
  border: none !important;
  border-radius: 50% !important;
  font-size: 20px !important;
  cursor: pointer !important;
}
.rs-region-addj__footer,
.searchjo-actions {
  display: flex !important;
  gap: 8px !important;
  padding: 16px 20px !important;
  border-top: 1px solid var(--gray-100) !important;
}
.rs-region-addj__btn,
.searchjo-btn {
  flex: 1 1 0 !important;
  padding: 12px !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border: none !important;
  cursor: pointer !important;
}
.rs-region-addj__btn--submit,
.searchjo-btn--save {
  background: var(--violet) !important;
  color: var(--white) !important;
}
.rs-region-addj__btn--reset,
.searchjo-btn--cancel {
  background: var(--gray-100) !important;
  color: var(--gray-700) !important;
}
.searchjo-input {
  width: 100% !important;
  padding: 12px 14px !important;
  border: 1px solid var(--gray-200) !important;
  border-radius: 10px !important;
}
.searchjo-input:focus {
  outline: none !important;
  border-color: var(--violet) !important;
}

/* ===== 마이옥션 검색박스 보조 (관심/최근/모의입찰 공통) ===== */
.my-src-tabs {
  display: flex;
  gap: 6px;
  margin: 0 0 12px;
}
.my-src-tabs .my-src-tab {
  flex: 1 1 0;
  text-align: center;
  padding: 10px 6px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-600);
  background: var(--gray-100);
  border: 1px solid var(--gray-200);
  text-decoration: none;
}
.my-src-tabs .my-src-tab--on {
  color: var(--white);
  background: var(--violet);
  border-color: var(--violet);
}
.agency-check.agency-check--wrap {
  flex-wrap: wrap;
  gap: 6px 8px;
  align-items: center;
}
.my-folder-edit {
  margin-left: auto;
}
.my-src-note {
  margin: 4px 0 0;
  font-size: 12px;
  color: var(--red, #e2433b);
  line-height: 1.5;
}
.my-src-note b { font-weight: 700; }

/* ===== 나의폴더 가로스크롤 pill (landata favorite.php 패턴) ===== */
.rs-folder-scroll {
  flex: 1 1 0%;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 2px 0;
}
.rs-folder-scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }

.rs-folder-pill {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border: 1px solid var(--gray-200);
  border-radius: 20px;
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  color: var(--gray-700);
  white-space: nowrap;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.rs-folder-pill input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0; height: 0;
}
.rs-folder-pill:has(input:checked) {
  background: var(--violet);
  border-color: var(--violet);
  color: #fff;
}

.rs-folder-edit {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  border: 1px solid var(--violet);
  border-radius: 20px;
  background: #fff;
  color: var(--violet);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  margin-left: 4px;
}
.rs-folder-edit:hover { background: var(--violet-bg, rgba(124,92,255,0.08)); }

/* ====== 공매 복수선택 패널 모바일 반응형 ====== */
@media (max-width: 767px) {
  .rgm-yongdo-multi .rs-yongdo-multi__group {
    grid-template-columns: 80px 1fr !important;
    gap: 0 12px !important;
    --yongdo-left-col: 80px !important;
  }
  .rgm-yongdo-multi .rs-yongdo-multi__chips {
    grid-template-columns: repeat(2, 1fr) !important;
    column-gap: 8px !important;
  }
  .rgm-yongdo-multi .rs-yongdo-multi__chip {
    font-size: 13px !important;
    min-height: 28px !important;
    gap: 6px !important;
  }
  .rgm-yongdo-multi .rs-yongdo-multi__all {
    font-size: 13px !important;
    gap: 6px !important;
  }
}
