[hidden]{display:none!important}
.search-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:var(--space-8)}
.demo-pill{font-size:var(--text-xs);color:var(--orange);background:var(--surface);border:1px solid var(--line);padding:var(--space-2) var(--space-3);letter-spacing:.06em;white-space:nowrap;font-weight:700}
.demo-notice{font-size:var(--text-sm);color:var(--muted);background:var(--surface);padding:var(--space-4) var(--space-6);border-left:3px solid var(--orange);margin-bottom:var(--space-8)}
.demo-notice strong{color:var(--ink)}
.filters{display:grid;grid-template-columns:1.35fr 1fr .8fr .8fr auto;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--line);align-items:end}
.filters label,.sort-control label{display:block;font-size:var(--text-xs);font-weight:700;color:var(--muted);margin-bottom:var(--space-2)}
.filters select,.sort-control select{width:100%;min-height:48px;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);border-radius:0}
.filters .button{border:0;min-height:48px;white-space:nowrap}
.results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);padding-block:var(--space-6)}
#result-count{font-size:var(--text-sm);font-weight:700}
.subtle-button{font-size:var(--text-xs);border:0;border-bottom:1px solid var(--line);background:none;color:var(--muted);padding-block:var(--space-2)}
.subtle-button:hover{color:var(--orange)}
.sort-control{display:flex;align-items:center;gap:var(--space-3)}
.sort-control label{margin-bottom:0;white-space:nowrap}
.sort-control select{width:auto;min-height:44px}
.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6)}
.property-card{border:1px solid var(--line);background:var(--bg)}
.property-media{position:relative}
.property-media img{width:100%;height:220px;object-fit:cover}
.sample-tag{position:absolute;left:var(--space-3);top:var(--space-3);padding:var(--space-2) var(--space-3);background:#1c2455;color:white;font-size:var(--text-xs);font-weight:700}
.save-button{position:absolute;right:var(--space-3);top:var(--space-3);width:44px;height:44px;background:#fff;border:1px solid #ddd;color:#1c2455;font-size:var(--text-lg);border-radius:50%}
.save-button[aria-pressed=true]{background:#167f96;color:#fff;border-color:#167f96}
.property-content{padding:var(--space-6)}
.property-price{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-2)}
.property-content h3{font-family:var(--font-body);font-size:var(--text-base);font-weight:700;line-height:1.4;margin-bottom:var(--space-2)}
.property-neighborhood,.property-facts,.property-type{color:var(--muted);font-size:var(--text-sm)}
.property-facts{margin-block:var(--space-4);padding-block:var(--space-3);border-block:1px solid var(--line)}
.detail-button{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;background:transparent;border:0;border-bottom:1px solid var(--orange);padding-block:var(--space-2);margin-top:var(--space-4)}
.search-footnote{font-size:var(--text-xs);color:var(--muted);margin-block:var(--space-6);max-width:100%}
.empty-results{padding:var(--space-12);background:var(--surface);text-align:center}
.empty-results p{margin:var(--space-4) auto var(--space-6);color:var(--muted)}
.search-help{display:flex;justify-content:space-between;gap:var(--space-6);align-items:center;padding:var(--space-6);background:var(--surface);margin-top:var(--space-8)}
.search-help p{font-size:var(--text-sm);color:var(--muted)}
dialog{width:min(640px,calc(100% - 32px));max-height:90dvh;border:1px solid var(--line);padding:0;color:var(--ink);background:var(--bg);margin:auto;overflow:auto}
dialog::backdrop{background:#0d1928b8}
.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4)}
.dialog-top .demo-pill{font-size:var(--text-xs);white-space:normal}
#close-dialog{border:0;background:transparent;font-size:var(--text-lg);width:44px;height:44px;flex-shrink:0}
#dialog-image{width:100%;height:270px;object-fit:cover}
.dialog-body{padding:var(--space-8)}
.dialog-body h2{font-size:var(--text-lg)}
.dialog-body .eyebrow{margin-bottom:var(--space-3)}
.detail-price{font-size:var(--text-lg);font-weight:700;margin-block:var(--space-4)}
#dialog-description{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--muted)}
.detail-warning{margin-block:var(--space-6);background:var(--surface);padding:var(--space-4);font-size:var(--text-xs);color:var(--muted)}
@media(max-width:1050px){.filters{grid-template-columns:repeat(4,1fr)}.filters .location-field{grid-column:span 2}.filters button{grid-column:span 2}.property-media img{height:190px}}
@media(max-width:760px){.search-heading{align-items:flex-start;flex-direction:column}.filters{grid-template-columns:1fr 1fr;padding:var(--space-4)}.filters .location-field{grid-column:span 2}.filters button{grid-column:span 2}.property-grid{grid-template-columns:1fr}.property-media img{height:240px}.results-toolbar{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.sort-control{width:100%}.sort-control select{flex:1}.search-help{flex-direction:column;align-items:flex-start}.dialog-body{padding:var(--space-6)}#dialog-image{height:210px}.empty-results{padding:var(--space-8)}}
