/* Type-aware map filters. The existing map, results and account controls stay in place. */
.public-quick-filters #public-property-type-filter.public-filter-legacy,.public-quick-filters #public-trade-filter.public-filter-legacy{display:none!important}
.public-mode-fields{flex:none;min-width:max-content}
.public-filter-control{flex:none;display:inline-flex;align-items:center;gap:7px;height:36px;max-width:230px;padding:0 12px;border:1px solid #dadde2;border-radius:5px;background:#fff;color:#333;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.public-filter-control::after{content:'';flex:none;width:5px;height:5px;margin:0 1px 3px 3px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.public-filter-control:hover,.public-filter-control[aria-expanded=true],.public-filter-control.is-selected{border-color:#4a78f4;color:#346af0;background:#f7f9ff}
.public-search-panel.public-range-popover{position:fixed;top:var(--search-panel-top,120px);left:var(--search-panel-left,10px);bottom:auto;z-index:100;transform:none;width:min(430px,calc(100vw - 20px));max-height:calc(100dvh - var(--search-panel-top,120px) - 16px);padding:18px 22px 22px;border:1px solid #d9dde5;border-radius:8px;background:#fff;box-shadow:0 5px 18px #22324a26;overscroll-behavior:contain;scrollbar-width:thin}
.public-search-panel[hidden]{display:none!important}
.public-search-panel .public-range-heading{margin:0 0 12px;color:#222;font-size:17px}
.public-search-panel .public-filter-close{width:28px;height:28px;padding:0;color:#70757c;font-size:24px;font-weight:400}
.public-filter-section-title{margin:18px 0 10px;color:#30343b;font-size:13px;font-weight:700}
.public-filter-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.public-filter-choice{min-height:35px;padding:7px 5px;border:1px solid #e0e3e8;border-radius:4px;background:#fff;color:#444;font-size:12px;line-height:1.35;cursor:pointer}
.public-filter-choice:hover{background:#f7f9fc}
.public-filter-choice[aria-pressed=true]{color:#2864ef;border-color:#628cf5;background:#f2f6ff;font-weight:700}
.public-filter-range+.public-filter-range{margin-top:20px;padding-top:20px;border-top:1px solid #eceef2}
.public-filter-range-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.public-filter-range-heading h4{margin:0;color:#333;font-size:14px;font-weight:600}
.public-filter-range-value{color:#477af2;font-size:16px;font-weight:700;text-align:right;line-height:1.5}
.public-filter-range-tools{display:flex;align-items:center;gap:12px;margin:9px 0 25px}
.public-filter-link{padding:0;border:0;background:none;color:#777;font-size:12px;cursor:pointer}
.public-filter-link:hover{color:#326df0}
.public-filter-range-tools .public-filter-link:last-child{margin-left:auto}
.public-filter-link[hidden]{display:none}
.public-filter-ticks{display:flex;justify-content:space-between;margin:0 2px 1px;color:#888;font-size:11px;white-space:nowrap}
.public-search-panel .public-filter-slider{height:36px;margin:0 9px 0;touch-action:pan-y}
.public-search-panel .public-filter-slider::before{top:17px;height:3px;background:linear-gradient(to right,#e7e9ee 0 var(--min-percent,0%),#5181f5 var(--min-percent,0%) var(--max-percent,100%),#e7e9ee var(--max-percent,100%) 100%)}
.public-filter-slider input[type=range]:focus-visible{outline:none}
.public-filter-slider input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid #adcbff;outline-offset:2px}
.public-filter-slider input[type=range]::-webkit-slider-thumb{width:22px;height:22px;margin-top:-9px;border:1px solid #5181f5;border-radius:50%;background:#fff;box-shadow:0 2px 5px #2443741c;cursor:ew-resize}
.public-filter-slider input[type=range]::-moz-range-thumb{width:20px;height:20px;border:1px solid #5181f5;background:#fff;box-shadow:0 2px 5px #2443741c;cursor:ew-resize}
.public-filter-area-basis{display:flex;align-items:center;gap:7px;margin-top:14px;color:#555;font-size:12px;cursor:pointer}
.public-filter-area-basis input{width:16px;height:16px;accent-color:#5181f5}
dialog.public-filter-direct{position:fixed;inset:0;margin:auto;width:min(440px,calc(100vw - 32px));max-width:none;padding:22px;border:0;border-radius:9px;color:#333;background:#fff;box-shadow:0 12px 50px #18213e35}
dialog.public-filter-direct::backdrop{background:#15233b55}
dialog.public-filter-direct:not([open]){display:none}
dialog.public-filter-direct[open]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:14px 8px}
.public-filter-direct .public-range-heading{grid-column:1/-1}
.public-filter-direct input{width:100%;min-width:0;height:42px;border:1px solid #ccd1db;border-radius:4px;padding:0 10px;outline:0;color:#222;font-size:15px;text-align:right}
.public-filter-direct input:focus{border-color:#5181f5;box-shadow:0 0 0 2px #5181f51a}
.public-filter-direct>span{font-size:12px;color:#777}
.public-filter-apply{grid-column:1/-1;height:42px;border:0;border-radius:5px;background:#477af2;color:#fff;font-size:14px;font-weight:700;cursor:pointer}
.public-filter-input-error{grid-column:1/-1;color:#be3333;font-size:12px}
.public-filter-input-error:empty{display:none}
.public-filter-control:focus-visible,.public-filter-choice:focus-visible,.public-filter-link:focus-visible{outline:2px solid #5181f5;outline-offset:2px}
@media(min-width:761px){
 .public-header{height:112px;min-height:112px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:42px 42px;align-content:center;gap:6px 12px;padding:8px 16px;border-top:3px solid #d46e1b}
 .public-brand{grid-column:1;grid-row:1;align-self:center;min-width:0;margin:0}
 .public-session-controls{grid-column:2;grid-row:1;align-self:center;margin:0}
 .public-search-group{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;height:42px;min-width:0}
 .public-search{flex:0 1 265px;width:265px;min-width:180px;max-width:265px;height:38px}
 .public-quick-filters{flex:1 1 auto;width:auto;min-width:0;gap:7px;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
 .public-youtube-open{flex:0 0 auto;margin-left:0}
 .public-quick-filters .primary-button{flex:none;height:36px;min-height:36px;font-size:13px}
}
@media(max-width:760px){
 .public-filter-control{height:40px;min-height:40px;font-size:13px}
 .public-search-panel.public-range-popover{inset:auto 0 0;width:100%;max-height:76dvh;padding:18px 22px max(26px,env(safe-area-inset-bottom));border-radius:14px 14px 0 0;box-shadow:0 -5px 25px #22324a30}
 .public-filter-choice{min-height:40px}
}
