.search-container{min-height:100vh;background-color:hsl(var(--background))}.search-header{position:sticky;top:3.5rem;z-index:20;background-color:hsl(var(--card));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:640px){.search-header{top:4rem}}.search-header-content{margin-left:auto;margin-right:auto;max-width:80rem;padding:.75rem}@media (min-width:640px){.search-header-content{padding:1rem}}@media (min-width:768px){.search-header-content{padding:1.5rem}}.search-input-wrapper{margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;border-radius:.75rem;background-color:hsl(var(--muted));padding:.625rem .75rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-input-wrapper:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary))}@media (min-width:640px){.search-input-wrapper{margin-bottom:1rem;gap:.75rem;padding:.75rem 1rem}}.search-input{flex:1 1 0%;border-width:0;background-color:transparent;font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground))}.search-input::-moz-placeholder{color:hsl(var(--muted-foreground))}.search-input::placeholder{color:hsl(var(--muted-foreground))}.search-input:focus{outline:2px solid transparent;outline-offset:2px}@media (min-width:640px){.search-input{font-size:1rem;line-height:1.5rem}}.search-filter-tabs{margin-left:-.75rem;margin-right:-.75rem;display:flex;gap:.375rem;overflow-x:auto;padding-left:.75rem;padding-right:.75rem;padding-bottom:.5rem}@media (min-width:640px){.search-filter-tabs{margin-left:0;margin-right:0;gap:.5rem;padding-left:0;padding-right:0}}.search-filter-tabs{-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}.search-filter-tabs::-webkit-scrollbar{display:none}.search-filter-tab{flex-shrink:0;white-space:nowrap;border-radius:var(--radius);padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.search-filter-tab{border-radius:.75rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem}}.search-filter-tab--active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.search-filter-tab--inactive{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.search-filter-tab--inactive:hover{background-color:hsl(var(--accent))}.search-property-pills{margin-left:-.75rem;margin-right:-.75rem;margin-top:.5rem;display:flex;gap:.375rem;overflow-x:auto;padding-left:.75rem;padding-right:.75rem;padding-bottom:.25rem}@media (min-width:640px){.search-property-pills{margin-left:0;margin-right:0;margin-top:.75rem;gap:.5rem;padding-left:0;padding-right:0}}.search-property-pills{-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}.search-property-pills::-webkit-scrollbar{display:none}.search-property-pill{display:flex;flex-shrink:0;align-items:center;gap:.375rem;white-space:nowrap;border-radius:var(--radius);padding:.375rem .625rem;font-size:.75rem;line-height:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.search-property-pill{gap:.5rem;border-radius:.75rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem}}.search-property-pill--active{border-width:2px;border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1);color:hsl(var(--primary))}.search-property-pill--inactive{border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--muted-foreground))}.search-property-pill--inactive:hover{border-color:hsl(var(--primary)/.5)}.search-action-bar{border-bottom-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));padding:.5rem .75rem}@media (min-width:640px){.search-action-bar{padding:.75rem 1rem}}@media (min-width:768px){.search-action-bar{padding-left:1.5rem;padding-right:1.5rem}}.search-action-bar-content{margin-left:auto;margin-right:auto;display:flex;max-width:80rem;align-items:center;justify-content:space-between;gap:.5rem}.search-action-buttons{display:flex;gap:.375rem}@media (min-width:640px){.search-action-buttons{gap:.5rem}}.search-action-btn{display:flex;align-items:center;gap:.375rem;border-radius:var(--radius);background-color:hsl(var(--muted));padding:.375rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;color:hsl(var(--foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-action-btn:hover{background-color:hsl(var(--accent))}@media (min-width:640px){.search-action-btn{gap:.5rem;border-radius:.75rem;padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem}}.search-clear-btn{display:none;font-size:.75rem;line-height:1rem;font-weight:500;color:hsl(var(--destructive))}.search-clear-btn:hover{color:hsl(var(--destructive)/.8)}@media (min-width:640px){.search-clear-btn{display:block;font-size:.875rem;line-height:1.25rem}}.search-results-info{margin-left:auto;margin-right:auto;display:flex;max-width:80rem;align-items:center;justify-content:space-between;padding:.5rem .75rem}@media (min-width:640px){.search-results-info{padding:1rem}}@media (min-width:768px){.search-results-info{padding-left:1.5rem;padding-right:1.5rem}}.search-results-count{font-size:.75rem;line-height:1rem;color:hsl(var(--muted-foreground))}@media (min-width:640px){.search-results-count{font-size:.875rem;line-height:1.25rem}}.search-view-toggle{display:flex;gap:.125rem;border-radius:var(--radius);background-color:hsl(var(--muted));padding:.125rem}@media (min-width:640px){.search-view-toggle{gap:.25rem;padding:.25rem}}.search-view-btn{border-radius:calc(var(--radius) - 2px);padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.search-view-btn{padding:.5rem}}.search-view-btn--active{background-color:hsl(var(--card));color:hsl(var(--primary));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.search-view-btn--inactive{color:hsl(var(--muted-foreground))}.search-view-btn--inactive:hover{color:hsl(var(--foreground))}.search-listings-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem}@media (min-width:400px){.search-listings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:640px){.search-listings-grid{gap:1rem}}@media (min-width:768px){.search-listings-grid{gap:1.5rem}}@media (min-width:1024px){.search-listings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1280px){.search-listings-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.search-listing-card{cursor:pointer;overflow:hidden;border-radius:.75rem;border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-listing-card,.search-listing-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.search-listing-card:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}@media (min-width:640px){.search-listing-card{border-radius:1rem}}.search-listing-image-container{position:relative;overflow:hidden}.search-listing-image{height:9rem;width:100%;-o-object-fit:cover;object-fit:cover;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;animation-duration:.5s}@media (min-width:640px){.search-listing-image{height:11rem}}@media (min-width:768px){.search-listing-image{height:13rem}}.search-listing-card:hover .search-listing-image{transform:scale(1.05)}@media (hover:none){.search-listing-card:hover .search-listing-image{transform:none}}.search-listing-badges{position:absolute;top:.5rem;left:.5rem;display:flex;flex-direction:column;gap:.375rem}@media (min-width:640px){.search-listing-badges{top:.75rem;left:.75rem;gap:.5rem}}.search-listing-badge{border-radius:9999px;padding:.125rem .5rem;font-size:10px;font-weight:600}@media (min-width:640px){.search-listing-badge{padding:.25rem .75rem;font-size:.75rem;line-height:1rem}}.search-listing-badge--sale{background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.search-listing-badge--rent,.search-listing-badge--sale{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.search-listing-badge--rent{background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.search-listing-badge--featured{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.search-listing-favorite{position:absolute;top:.5rem;right:.5rem;border-radius:9999px;background-color:hsl(var(--card)/.9);padding:.5rem;--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-listing-favorite:hover{background-color:hsl(var(--card))}@media (min-width:640px){.search-listing-favorite{top:.75rem;right:.75rem;padding:.625rem}}.search-listing-content{padding:.75rem}@media (min-width:640px){.search-listing-content{padding:1rem}}@media (min-width:768px){.search-listing-content{padding:1.25rem}}.search-listing-price{margin-bottom:.125rem;font-size:1rem;line-height:1.5rem;font-weight:700;color:hsl(var(--primary))}@media (min-width:640px){.search-listing-price{margin-bottom:.25rem;font-size:1.125rem;line-height:1.75rem}}@media (min-width:768px){.search-listing-price{font-size:1.25rem;line-height:1.75rem}}.search-listing-title{margin-bottom:.375rem;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (min-width:640px){.search-listing-title{margin-bottom:.5rem;font-size:1rem;line-height:1.5rem}}.search-listing-card:hover .search-listing-title{color:hsl(var(--primary))}.search-listing-location{margin-bottom:.5rem;display:flex;align-items:center;gap:.25rem;font-size:.75rem;line-height:1rem;color:hsl(var(--muted-foreground))}@media (min-width:640px){.search-listing-location{margin-bottom:.75rem;font-size:.875rem;line-height:1.25rem}}.search-listing-features{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.75rem;line-height:1rem;color:hsl(var(--muted-foreground))}@media (min-width:640px){.search-listing-features{gap:1rem;font-size:.875rem;line-height:1.25rem}}.search-listing-feature{display:flex;align-items:center;gap:.125rem}@media (min-width:640px){.search-listing-feature{gap:.25rem}}.search-listings-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}@media (min-width:640px){.search-listings-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}}.search-listing-card--list{display:flex;cursor:pointer;gap:.75rem;border-radius:var(--radius);background-color:hsl(var(--card));padding:.75rem;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-listing-card--list,.search-listing-card--list:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.search-listing-card--list:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}@media (min-width:640px){.search-listing-card--list{gap:1rem;border-radius:.75rem;padding:1rem}}.search-listing-image--list{height:6rem;width:7rem;flex-shrink:0;border-radius:var(--radius);-o-object-fit:cover;object-fit:cover}@media (min-width:640px){.search-listing-image--list{height:8rem;width:10rem;border-radius:.75rem}}@media (min-width:768px){.search-listing-image--list{height:9rem;width:12rem}}.search-filter-modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background-color:rgba(0,0,0,.5)}@media (min-width:640px){.search-filter-modal-overlay{align-items:center}}.search-filter-modal{max-height:90vh;width:100%;overflow:hidden;border-top-left-radius:1rem;border-top-right-radius:1rem;background-color:hsl(var(--card))}@media (min-width:640px){.search-filter-modal{max-height:85vh;width:500px;border-radius:1rem}}.search-filter-header{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;border-color:hsl(var(--border));padding:.75rem}@media (min-width:640px){.search-filter-header{padding:1rem}}.search-filter-title{font-size:1.125rem;line-height:1.75rem;font-weight:700;color:hsl(var(--foreground))}@media (min-width:640px){.search-filter-title{font-size:1.25rem;line-height:1.75rem}}.search-filter-body{max-height:65vh;overflow-y:auto;padding:.75rem}@media (min-width:640px){.search-filter-body{max-height:60vh;padding:1rem}}.search-filter-section{margin-bottom:1rem}@media (min-width:640px){.search-filter-section{margin-bottom:1.5rem}}.search-filter-label{margin-bottom:.5rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--foreground))}@media (min-width:640px){.search-filter-label{margin-bottom:.75rem;font-size:1rem;line-height:1.5rem}}.search-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem}@media (min-width:640px){.search-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}}.search-filter-option{border-radius:var(--radius);padding:.5rem;text-align:center;font-size:.75rem;line-height:1rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.search-filter-option{border-radius:.75rem;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem}}.search-filter-option--active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.search-filter-option--inactive{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.search-filter-option--inactive:hover{background-color:hsl(var(--accent))}.search-filter-range{display:flex;align-items:center;gap:.5rem}@media (min-width:640px){.search-filter-range{gap:.75rem}}.search-filter-input{flex:1 1 0%;border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--background));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground))}.search-filter-input:focus{border-color:hsl(var(--primary));--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary))}@media (min-width:640px){.search-filter-input{border-radius:.75rem;padding:.625rem 1rem;font-size:1rem;line-height:1.5rem}}.search-filter-footer{display:flex;gap:.5rem;border-top-width:1px;border-color:hsl(var(--border));padding:.75rem}@media (min-width:640px){.search-filter-footer{gap:.75rem;padding:1rem}}.search-filter-clear{display:flex;flex:1 1 0%;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));padding-top:.625rem;padding-bottom:.625rem;font-size:.875rem;line-height:1.25rem;font-weight:500;color:hsl(var(--foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-filter-clear:hover{background-color:hsl(var(--muted))}@media (min-width:640px){.search-filter-clear{border-radius:.75rem;padding-top:.75rem;padding-bottom:.75rem;font-size:1rem;line-height:1.5rem}}.search-filter-apply{display:flex;flex:1 1 0%;align-items:center;justify-content:center;gap:.5rem;border-radius:var(--radius);background-color:hsl(var(--primary));padding-top:.625rem;padding-bottom:.625rem;font-size:.875rem;line-height:1.25rem;font-weight:500;color:hsl(var(--primary-foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-filter-apply:hover{background-color:hsl(var(--primary)/.9)}@media (min-width:640px){.search-filter-apply{border-radius:.75rem;padding-top:.75rem;padding-bottom:.75rem;font-size:1rem;line-height:1.5rem}}.search-filter-feature{display:flex;align-items:center;gap:.375rem;border-radius:var(--radius);border-width:2px;padding:.5rem;font-size:.75rem;line-height:1rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.search-filter-feature{gap:.5rem;border-radius:.75rem;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem}}.search-filter-feature--active{border-color:hsl(var(--primary));background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.search-filter-feature--inactive{border-color:hsl(var(--border));background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.search-filter-feature--inactive:hover{border-color:hsl(var(--primary)/.5)}.search-empty{padding-top:4rem;padding-bottom:4rem;text-align:center}.search-empty-icon{margin-bottom:1rem;font-size:3.75rem;line-height:1}.search-empty-title{font-size:1.25rem;line-height:1.75rem;font-weight:600;color:hsl(var(--foreground))}.search-empty-text{margin-top:.5rem;color:hsl(var(--muted-foreground))}.search-sort-dropdown{position:absolute;right:0;top:100%;z-index:30;margin-top:.5rem;min-width:200px;border-radius:.75rem;border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));padding-top:.5rem;padding-bottom:.5rem;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.search-sort-option{width:100%;padding:.625rem 1rem;text-align:left;font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.search-sort-option:hover{background-color:hsl(var(--muted))}.search-sort-option--active{background-color:hsl(var(--primary)/.1);font-weight:500;color:hsl(var(--primary))}@keyframes pulse{50%{opacity:.5}}.search-skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.search-skeleton-card{overflow:hidden;border-radius:1rem;background-color:hsl(var(--card))}.search-skeleton-image{height:13rem;background-color:hsl(var(--muted))}.search-skeleton-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.search-skeleton-content{padding:1.25rem}.search-skeleton-line{height:1rem;border-radius:.25rem;background-color:hsl(var(--muted))}.search-skeleton-line--short{width:66.666667%}.search-skeleton-line--medium{width:80%}