.landing-panel { background: #ffffff; border-radius: 20px; padding: 16px 0; border: none; }
.search-form { position: relative; }
.search-form.compact input { width: 100%; height: 36px; border: 0; border-radius: 10px; background: rgba(2, 32, 71, 0.05); padding: 0 40px 0 42px; font-size: 15px; color: #5b6470; outline: none; }
.search-form.compact input:focus { box-shadow: 0 0 0 2px #111827; }
.search-form.compact input::placeholder { color: #7a8491; }
.search-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #8592a3; font-size: 30px; }
.clear-q { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); width: 22px; height: 22px; border: 0; border-radius: 999px; background: rgba(2, 32, 71, 0.12); color: #51606f; display: none; align-items: center; justify-content: center; font-size: 15px; line-height: 1; cursor: pointer; padding: 0; }
.clear-q:hover { background: rgba(2, 32, 71, 0.2); }

.section { margin-top: 28px; }
.rank-list { list-style: none; padding: 0; margin: 0; cursor: pointer; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.rank-list li { display: grid; grid-template-columns: 1fr; align-items: center; gap: 10px; padding: 14px 2px; border-radius: 10px; cursor: pointer; touch-action: manipulation; }
.rank-list li:hover { background: #f1f3f5; }

@media (hover: none) and (pointer: coarse) {
  .rank-list li:hover,
  .rank-list li:active,
  .rank-list li:focus-within {
    background: transparent;
  }
  .rank-list li,
  .rank-list li a,
  .rank-list li span {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    user-select: none;
  }
  .rank-list li::selection,
  .rank-list li a::selection,
  .rank-list li span::selection {
    background: transparent;
  }
}
.rank-list li * { cursor: pointer; }
.rank { color: #355e3b; font-weight: 700; font-size: 16px; text-align: center; }
.name { color: #1f2937; text-decoration: none; font-size: 16px; touch-action: manipulation; display: inline-flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; max-width: 100%; width: 100%; padding: 0; box-sizing: border-box; }
.name-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: inline-block; }
.type-pill { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; min-width: 22px; height: 22px; padding: 0 8px; font-size: 11px; line-height: 1; font-weight: 600; flex: 0 0 auto; }
.type-pill-apartment { color: #5b4a2f; background: #f8f0dc; border: 1px solid #efdfbe; }
.type-pill-officetel { color: #3f4f63; background: #eaf2fb; border: 1px solid #d7e7f8; }
.type-pill-villa { color: #435941; background: #ecf6ea; border: 1px solid #d9ebd6; }
.type-pill-contract-active { color: #6b5aa6; background: #f1edfb; border: 1px solid #ddd4f4; }
.type-pill-contract-closed { color: #8c4d4d; background: #fbebeb; border: 1px solid #f1d6d6; }
.change { color: #ff4d5a; font-weight: 500; font-size: 15px; margin-right: 8px; }

