.browse-topbar{display:flex;align-items:center;gap:14px;padding:14px 24px;background:var(--bg-elevated);border-bottom:1px solid var(--border);flex-wrap:wrap}
.browse-search-form{display:flex;flex:1;min-width:220px;gap:8px}
.browse-search-form input{flex:1;padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;background:var(--bg-elevated);color:var(--text)}
.browse-search-form button{background:var(--primary);color:#fff;border:0;padding:0 16px;border-radius:6px;cursor:pointer;font-size:13px}
.browse-sort-form select{padding:9px 10px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--bg-elevated);color:var(--text)}
.view-toggle{display:flex;gap:4px}
.view-toggle a{padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:15px;color:var(--text)}
.view-toggle a.active{background:var(--primary);color:#fff;border-color:var(--primary)}

.browse-layout{display:flex;gap:24px;max-width:1300px;margin:20px auto;padding:0 20px;align-items:flex-start}
.browse-sidebar{width:290px;flex-shrink:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:22px}
.browse-sidebar h3{font-size:16px;margin:20px 0 10px;color:var(--text-muted)}
.browse-sidebar h3:first-child{margin-top:0}
.browse-sidebar select,.browse-sidebar input{width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:6px;font-size:15px;margin-bottom:10px;background:var(--bg-elevated);color:var(--text)}
.clear-filters{display:block;text-align:center;font-size:14px;margin-top:12px;color:var(--text-muted)}

.browse-results{flex:1;min-width:0}
.browse-results h1{font-size:20px;margin:0 0 16px}
.result-count{font-size:13px;color:var(--text-muted);font-weight:normal}

.listing-grid.view-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.listing-grid.view-list{display:flex;flex-direction:column;gap:10px}

.browse-card{display:block;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;overflow:hidden;color:var(--text);position:relative}
.browse-card:hover{border-color:var(--primary);text-decoration:none}
.browse-card img{width:100%;height:150px;object-fit:cover;display:block;background:var(--bg)}
.browse-card .no-img{width:100%;height:150px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px}
.browse-card-body{padding:10px 12px}
.browse-card-title{font-size:14px;font-weight:bold;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.browse-card-price{color:var(--primary);font-weight:bold;font-size:14px;margin-bottom:4px}
.browse-card-meta{font-size:12px;color:var(--text-muted)}
.browse-card.featured{border-color:#e0b400}
.featured-badge{position:absolute;top:8px;right:8px;background:#fff3cd;color:#7a5c00;font-size:11px;padding:2px 8px;border-radius:10px}

.listing-grid.view-list .browse-card{display:flex;gap:12px}
.listing-grid.view-list .browse-card img,.listing-grid.view-list .browse-card .no-img{width:140px;height:100px;flex-shrink:0}
.listing-grid.view-list .browse-card-body{padding:10px 12px 10px 0;flex:1}

.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}
.pagination{display:flex;gap:6px;margin-top:20px;flex-wrap:wrap}
.pagination a{padding:7px 13px;border:1px solid var(--border);border-radius:5px;font-size:13px;color:var(--text)}
.pagination a.active{background:var(--primary);color:#fff;border-color:var(--primary)}

@media(max-width:820px){
  .browse-layout{flex-direction:column;align-items:stretch}
  .browse-sidebar{width:100%}
  .browse-results{width:100%}
  /* نمایش روی نقشه: تمام عرض صفحه (قبلا در موبایل خیلی باریک می‌شد) */
  #listingsMap{width:100%;height:65vh!important;min-height:380px}
}

/* ---- فیلتر فیلدهای اختصاصی دسته (چک‌باکس + بازه‌ی عدد) ---- */
.custom-field-filter-check{display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:10px;cursor:pointer;color:var(--text)}
.custom-field-filter-check input{width:auto;margin:0;transform:scale(1.15)}
.custom-field-filter-range{margin-bottom:12px}
.custom-field-filter-range label{display:block;font-size:15px;margin-bottom:6px;color:var(--text)}
.custom-field-filter-range-inputs{display:flex;gap:8px}
.custom-field-filter-range-inputs input{width:50%;margin-bottom:0}
.custom-field-filter-select{margin-bottom:12px}
.custom-field-filter-select label{display:block;font-size:15px;margin-bottom:6px;color:var(--text)}
.custom-field-filter-select select{width:100%}