.PriceRangeFilter{flex-direction:column;gap:0;width:340px;padding:1rem 1.25rem 1.25rem;display:flex}.PriceRangeFilter__histogram{border-bottom:1px solid #d0d0d0;align-items:flex-end;gap:1px;height:80px;margin-bottom:0;display:flex}.PriceRangeFilter__bar{height:var(--bar-height,0%);background:#d0d0d0;border-radius:1px 1px 0 0;flex:1 1 0;transition:background .1s}.PriceRangeFilter__bar--active{background:var(--color-primary-green,#2563eb)}.PriceRangeFilter__slider-track{height:20px;position:relative}.PriceRangeFilter__slider-track:before{content:"";pointer-events:none;background:#d0d0d0;border-radius:2px;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.PriceRangeFilter__range-input{appearance:none;pointer-events:none;background:0 0;outline:none;width:calc(100% + 20px);height:100%;margin:0;padding:0;position:absolute;top:-9px}.PriceRangeFilter__range-input--min{left:-10px}.PriceRangeFilter__range-input--max{right:-10px}.PriceRangeFilter__range-input::-webkit-slider-runnable-track{background:0 0;height:4px}.PriceRangeFilter__range-input::-moz-range-track{background:0 0;border:none;height:4px}.PriceRangeFilter__range-input::-webkit-slider-thumb{appearance:none;background:var(--color-primary-green,#2563eb);cursor:pointer;pointer-events:all;z-index:1;border:2px solid #fff;border-radius:50%;width:20px;height:20px;position:relative;box-shadow:0 1px 4px #00000040}.PriceRangeFilter__range-input::-moz-range-thumb{background:var(--color-primary-green,#2563eb);cursor:pointer;pointer-events:all;border:2px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #00000040}.PriceRangeFilter__axis{font-size:var(--font-xs,.75rem);color:#888;justify-content:space-between;margin-top:4px;margin-bottom:1rem;display:flex}.PriceRangeFilter__inputs-row{align-items:flex-end;gap:.5rem;margin-bottom:1rem;display:flex}.PriceRangeFilter__input-group{flex-direction:column;flex:1;gap:.25rem;display:flex}.PriceRangeFilter__input-label{font-size:var(--font-xs,.75rem);color:var(--color-reading-black,#1a1a1a);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.PriceRangeFilter__input{font-size:var(--font-sm,.875rem);color:var(--color-reading-black,#1a1a1a);background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;outline:none;width:100%;padding:.6rem .75rem;transition:border-color .15s}.PriceRangeFilter__input:focus{border-color:var(--color-primary-green,#2563eb);background:#fff}.PriceRangeFilter__dash{font-size:var(--font-sm,.875rem);color:#999;padding-bottom:.6rem}.PriceRangeFilter__apply{background:var(--color-primary-green,#2563eb);color:#fff;width:100%;font-size:var(--font-sm,.875rem);cursor:pointer;border:none;border-radius:6px;padding:.75rem;font-weight:700;transition:opacity .15s}.PriceRangeFilter__apply:hover{opacity:.9}
.FilterBar{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--background);border-bottom:1px solid #e0e0e0;flex-wrap:wrap;display:flex}.FilterBar.desktop{padding:var(--space-sm) var(--space-lg);gap:var(--space-lg);flex-wrap:nowrap}.FilterBar.tablet{padding:var(--space-sm) var(--space-md);flex-wrap:nowrap;justify-content:space-between}.FilterBar.mobile{padding:var(--space-sm);flex-flow:row;justify-content:space-between;align-items:center}.FilterBar__filters-group{align-items:center;gap:var(--space-md);gap:var(--space-lg);flex-flow:wrap;flex:auto;display:flex}.FilterBar__filters-group.desktop{gap:var(--space-lg)}.FilterBar__group--geo-name{align-items:center;gap:var(--space-sm);background:var(--color-primary-green);min-width:0;color:var(--color-neutral-cream);border:1px solid #ccc;border-radius:4px;flex-direction:row;padding:.5rem;display:flex}.FilterBar.desktop .FilterBar__group--geo-name{margin-right:var(--space-xl)}.FilterBar__group--geo-name .FilterBar__label{color:var(--color-neutral-cream-dark)}.FilterBar__label--geo-name{color:var(--color-neutral-cream)}.FilterBar__group{align-items:center;gap:var(--space-sm);flex-direction:row;min-width:0;display:flex}.FilterBar__group--price-dropdown{gap:var(--space-xs)}.FilterBar__group--home-type{flex:auto}.FilterBar.mobile .FilterBar__group{flex-wrap:wrap}.FilterBar__label{font-size:var(--font-xs);color:var(--color-reading-black);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-weight:600}.FilterBar__filters-group .FilterBar__label,.FilterBar__overlay-filters .FilterBar__label{background:var(--color-primary-green-opaque);color:var(--color-primary-green);border:1px solid #ccc;border-radius:4px;padding:.35rem .5rem}.FilterBar__label--sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.FilterBar__select{font-size:var(--font-sm);color:var(--color-reading-black);background:var(--background);cursor:pointer;border:1px solid #ccc;border-radius:4px;outline:none;min-width:80px;padding:.35rem .5rem;transition:border-color .15s}.FilterBar__select:focus{border-color:var(--color-primary-green)}.FilterBar__dropdown{position:relative}.FilterBar__select,.FilterBar__dropdown-trigger{border:1px solid var(--color-primary-green)}.FilterBar__dropdown-trigger{font-size:var(--font-sm);color:var(--color-reading-black);background:var(--background);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:.4rem;min-width:120px;padding:.35rem .5rem;transition:border-color .15s;display:flex}.FilterBar__dropdown-trigger:focus{border-color:var(--color-primary-green);outline:none}.FilterBar__dropdown-trigger--active{border-color:var(--color-primary-green);color:var(--color-primary-green);font-weight:600}.FilterBar__dropdown-panel--price{min-width:0;padding:0}.FilterBar__dropdown-caret{color:#888;margin-left:auto;font-size:.7rem}.FilterBar__dropdown-panel{z-index:100;background:#fff;border:1px solid #ccc;border-radius:4px;min-width:160px;padding:.4rem 0;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 4px 12px #0000001f}.FilterBar__dropdown-option{font-size:var(--font-sm);color:var(--color-reading-black);cursor:pointer;white-space:nowrap;align-items:center;gap:.5rem;padding:.35rem .75rem;display:flex}.FilterBar__dropdown-option:hover{background:#f5f5f5}.FilterBar__checkbox{accent-color:var(--color-primary-green);cursor:pointer;flex-shrink:0;width:14px;height:14px}.FilterBar__clear{font-size:var(--font-xs);color:#fff;cursor:pointer;white-space:nowrap;background:#e53e3e;border:none;border-radius:4px;align-items:center;gap:.3rem;padding:.35rem .6rem;font-weight:600;transition:background .15s;display:flex}.FilterBar__clear:hover{background:#c53030}.FilterBar__toggle-btn{font-size:var(--font-sm);color:var(--color-reading-black);background:var(--background);border:1px solid var(--color-primary-green);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-weight:600;transition:background .15s,color .15s;display:flex}.FilterBar__toggle-btn.mobile{font-size:var(--font-xs)}.FilterBar__toggle-btn:hover{background:var(--color-primary-green-opaque)}.FilterBar__toggle-btn--active{background:var(--color-primary-green-opaque);color:var(--color-primary-green)}.FilterBar__overlay{pointer-events:none;z-index:200;align-items:center;display:flex;position:fixed;top:0;bottom:0;right:0}.FilterBar__overlay-panel{pointer-events:auto;padding:var(--space-lg);background:#fff;border-radius:16px 0 0 16px;transition:transform .3s cubic-bezier(.25,.46,.45,.94);transform:translate(100%);box-shadow:-4px 0 32px #0000002e}.FilterBar__overlay-panel--open{transform:translate(0)}.FilterBar__overlay-panel.tablet{width:33vw;min-width:260px}.FilterBar__overlay-panel.mobile{border-radius:0;width:100vw}.FilterBar__overlay-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.FilterBar__overlay-title{font-size:var(--font-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-reading-black);font-weight:700}.FilterBar__overlay-close{font-size:var(--font-md);cursor:pointer;color:#888;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;line-height:1;transition:color .15s,background .15s}.FilterBar__overlay-close:hover{color:var(--color-reading-black);background:#f5f5f5}.FilterBar__overlay-filters{gap:var(--space-lg);flex-direction:column;display:flex}.FilterBar__overlay-filters .FilterBar__group{justify-content:space-between;width:100%}.FilterBar__overlay-filters .FilterBar__group--home-type{flex:none}.FilterBar__overlay-filters .FilterBar__dropdown{flex:1;min-width:0}.FilterBar__overlay-filters .FilterBar__dropdown-trigger{width:100%;min-width:0}.FilterBar__overlay-filters .FilterBar__select{flex:1;min-width:0}.FilterBar__backdrop{z-index:199;background:#0003;position:fixed;inset:0}
.ListingsPanel{background:#fff;flex-direction:column;height:100%;display:flex;overflow:hidden}.ListingsPanel__filter-bar{z-index:10;background:#fff;border-bottom:1px solid #e0e0e0;position:sticky;top:0}.ListingsPanel__header{border-bottom:1px solid #f0f0f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.ListingsPanel__count{font-size:var(--font-sm,.875rem);color:#333;font-weight:600}.ListingsPanel__sort{align-items:center;gap:.4rem;display:flex}.ListingsPanel__sort-label{font-size:var(--font-xs,.75rem);color:#666}.ListingsPanel__sort-select{font-size:var(--font-xs,.75rem);cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:4px;padding:.2rem .4rem}.ListingsPanel__sort-select.tablet{max-width:100px}.ListingsPanel__sort-select.mobile{font-size:var(--font-xs,.75rem)}.ListingsPanel__list{padding:var(--space-md) var(--space-lg);flex-direction:column;flex:1;gap:2rem;display:flex;overflow-y:auto}.ListingsPanel__list.desktop{padding:var(--space-md) var(--space-lg)}.ListingsPanel__list.tablet{padding:var(--space-md) var(--space-md)}.ListingsPanel__list.mobile{padding:var(--space-md)}.ListingsPanel__skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:8px;flex-shrink:0;height:160px;margin:.5rem 1rem;animation:1.4s infinite ListingsPanel__shimmer}@keyframes ListingsPanel__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ListingsPanel__sentinel{flex-shrink:0;height:1px}.ListingsPanel__empty,.ListingsPanel__end,.ListingsPanel__error{text-align:center;font-size:var(--font-sm,.875rem);color:#888;flex-shrink:0;padding:2rem 1rem}.ListingsPanel__error{color:#c0392b}.ListingsPanel.mobile .ListingsPanel__header{padding:.5rem .75rem}.ListingsPanel.mobile .ListingsPanel__skeleton{height:130px;margin:.4rem .75rem}
