:root{--ink:#17283b;--muted:#5c6b79;--blue:#2856cb;--soft:#edf2fc;--line:#dce2e9;--paper:#fff;--back:#f5f7fa;--amber:#916014;--red:#a3323d;--green:#206353;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--back)}

*{box-sizing:border-box}
body{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,textarea{touch-action:manipulation}
button{cursor:pointer}
button:disabled{opacity:.42;cursor:default}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #6298ef;outline-offset:3px}
a{color:var(--blue)}
button{border:0;background:none}
h1,h2,h3,p{margin:0}
h1{font-family:Georgia,serif;font-size:2.4rem;font-weight:400;letter-spacing:-.045em;line-height:1.1}
h2{font-size:1rem}
h3{font-size:1.05rem}
.topbar{height:82px;display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 34px;gap:62px;background:var(--paper)}
.brand{color:var(--ink);text-decoration:none;font:bold 2.5rem/1 Georgia,serif;letter-spacing:-.07em;display:flex;align-items:center;gap:14px}
.brand span{font:500 .75rem/1.3 -apple-system,sans-serif;letter-spacing:.18em;border-left:1px solid #cad3dd;padding-left:14px}
.topbar nav{align-self:stretch;display:flex;gap:26px}
.nav{padding:3px 0 0;color:var(--muted);font-size:.9rem;border-bottom:3px solid transparent}
.nav.active{border-color:var(--blue);color:var(--ink);font-weight:600}
.nav span{display:inline-block;font-size:.75rem;border-radius:4px;background:var(--back);padding:0 6px;margin-left:5px}
.local-mark{margin-left:auto;color:var(--muted);font-size:.8rem;display:flex;align-items:center;gap:9px}
.local-mark i{width:7px;height:7px;background:var(--green);border-radius:50%}
.workspace{display:grid;grid-template-columns:270px minmax(0,1fr);max-width:1700px;margin:auto}
.rail{padding:26px 24px;border-right:1px solid var(--line);background:white;min-height:calc(100vh - 82px)}
.city{position:relative;margin-bottom:28px;overflow:hidden;border-radius:6px;background:var(--ink)}
.city img{width:100%;height:74px;object-fit:cover;display:block;opacity:.8}
.city>div{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;color:white}
.city strong{font-size:.9rem}
.city span{font-size:.75rem}
.city a{color:#dbe8ff}
.rail-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}
.text-button{color:var(--blue);font-size:.88rem;padding:4px}
.rail form{display:grid;gap:15px}
label{display:grid;gap:6px;font-size:.875rem;font-weight:550}
input:not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid #cbd4df;background:white;border-radius:5px;padding:9px 10px;font-size:.9rem;font-weight:400}
input::placeholder,textarea::placeholder{color:#788595}
input[type=checkbox]{width:17px;height:17px;accent-color:var(--blue);margin:0}
.check{display:flex;gap:9px;align-items:flex-start;font-size:.82rem;font-weight:400}
.check input{flex-shrink:0;margin-top:2px}
fieldset{padding:0;border:0;margin:0;min-width:0}
legend{font-size:.875rem;font-weight:550;padding:0;margin-bottom:6px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.compact{font-size:.875rem;color:var(--muted);font-weight:400}
.primary,.secondary{border-radius:5px;padding:9px 15px;font-weight:550;font-size:.88rem;border:1px solid transparent}
.primary{background:var(--blue);color:white}
.primary:hover{background:#1f47af}
.secondary{background:white;border-color:#cbd4df}
.secondary:hover{background:#f1f4f8}
.apply{margin-top:2px;width:100%}
.small,.photo-credit{font-size:.75rem;color:var(--muted);line-height:1.5}
.coverage{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:.875rem}
.coverage summary{cursor:pointer;font-weight:600;margin-bottom:10px}
.health-row{display:flex;justify-content:space-between;gap:8px;margin:7px 0;font-size:.76rem}
.health-row span:last-child{color:var(--muted)}
.photo-credit{margin-top:28px;font-size:.75rem}
.results{padding:30px clamp(22px,3vw,48px) 80px;min-width:0}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}
.eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.13em;color:var(--muted);margin-bottom:9px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:27px}
.metric{padding:0 20px;border-left:1px solid var(--line)}
.metric:first-child{padding-left:0;border:0}
.metric strong{font-size:1.45rem;font-weight:600;letter-spacing:-.04em;display:block;line-height:1.2}
.metric span{font-size:.76rem;color:var(--muted)}
.results-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}
.results-bar strong{font-size:.95rem}
.muted{color:var(--muted);font-size:.8rem;margin-left:8px}
.sort{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.75rem;font-weight:400;color:var(--muted)}
.sort select{font-size:.8rem;padding:7px 8px;max-width:180px}
.listings{display:grid;gap:12px}
.listing{background:white;border:1px solid var(--line);border-radius:7px;padding:19px 21px;display:grid;grid-template-columns:minmax(0,1fr) 155px;gap:14px;transition:border-color .15s}
.listing:hover{border-color:#99add0}
.card-meta{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted);margin-bottom:8px;flex-wrap:wrap}
.source-name{color:var(--blue);font-weight:650}
.source-badges{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}
.source-badge{display:inline-flex;align-items:center;padding:5px 10px;border:1px solid #cbd8f8;border-radius:7px;background:#edf3ff;color:#204fc3;font-size:12px;font-weight:650;line-height:1.35;text-decoration:none;white-space:nowrap}
.source-badge:hover{background:#dfeaff;border-color:#91acf0;text-decoration:none}.source-badge:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.source-badge.source-opened::after{content:'✓';margin-left:6px;font-size:11px}
.match-summary:empty{display:none}.match-summary{margin:9px 0 4px}.match-heading{padding:0;border:0;background:none;text-align:left;font-size:12px;font-weight:600;color:#2455b8;line-height:1.5}.match-heading:hover{text-decoration:underline}
.match-differences{color:#82560c;font-size:12px;line-height:1.5;margin:4px 0}.match-basis{color:var(--muted);font-size:11px;margin:4px 0}
.match-table{font-size:12px}.match-table th,.match-table td{padding:9px 12px}.match-conflict{background:#fff5df}.match-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;font-size:12px}.match-actions .text-button{font-size:12px}
.listing h2{font-weight:600;font-size:1.05rem;line-height:1.4;margin-bottom:6px}
.listing h2 button{text-align:left;font:inherit;padding:0}
.listing h2 button:hover{color:var(--blue)}
.facts{font-size:.875rem;display:flex;gap:16px;color:var(--muted);flex-wrap:wrap}
.card-price{text-align:right}
.price{font-size:1.4rem;font-weight:650;letter-spacing:-.04em}
.price-note{font-size:.75rem;color:var(--muted);display:block}
.card-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px;align-items:center}
.card-actions .check{font-size:.75rem}
.bookmark{font-size:.8rem;border:1px solid #cbd4df;border-radius:5px;padding:5px 11px;color:var(--blue)}
.bookmark.saved{background:var(--soft);border-color:var(--blue)}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}
.tag{display:inline-flex;align-items:center;font-size:.75rem;padding:3px 7px;border-radius:3px;background:#f0f3f7;color:#566577}
.tag.warn{background:#fff3dc;color:#81530b}
.tag.excluded{background:#fce9eb;color:var(--red)}
.tag.good{background:#e7f3ee;color:var(--green)}
.tag.opened-flag{background:#eaf0ff;color:#3055a0;font-weight:600}
.pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:25px;font-size:.8rem;color:var(--muted)}
.data-note{margin-top:24px;font-size:.77rem;color:var(--muted);max-width:700px}
.error{border:1px solid #e7b3bc;background:#fff0f2;color:var(--red);padding:15px;border-radius:5px;margin-bottom:15px}
.toast{background:#e7f3ee;color:var(--green);padding:10px 15px;border-radius:5px;margin-bottom:15px;font-size:.85rem}
.empty{text-align:center;padding:70px 20px;border:1px dashed #b9c5d4;border-radius:7px;background:white}
.empty h2{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;margin-bottom:8px}
.empty p{color:var(--muted);font-size:.9rem;max-width:420px;margin:auto}
dialog{border:0;box-shadow:0 15px 80px #14273d33;padding:24px 30px;color:var(--ink);max-height:95vh;border-radius:9px;width:min(600px,94vw)}
dialog::backdrop{background:#10273e66}
#detail-dialog{margin:0 0 0 auto;height:100dvh;max-height:100dvh;border-radius:0;width:min(580px,96vw)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.drawer-head .eyebrow{margin:0}
.detail-title{font:400 1.65rem/1.2 Georgia,serif;margin:12px 0 16px}
.detail-price{font-size:1.85rem;font-weight:650;letter-spacing:-.04em}
.detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.detail-facts dt{font-size:.75rem;color:var(--muted)}
.detail-facts dd{margin:4px 0 0;font-size:.95rem;font-weight:550}
.section{margin-top:24px}
.section h3{margin-bottom:12px}
.section p{font-size:.85rem;color:var(--muted)}
.finding{font-size:.875rem;padding:9px 12px;border-left:3px solid #d5a045;background:#fff7e9;margin:8px 0}
.finding small{display:block;color:var(--muted);font-size:.75rem}
.history{border-collapse:collapse;width:100%;font-size:.8rem}
.history th{text-align:left;font-size:.75rem;color:var(--muted);font-weight:500}
.history th,.history td{padding:9px 4px;border-bottom:1px solid var(--line)}
.history td small{display:block;color:var(--muted);font-size:.75rem}
.history-link{margin-top:12px;display:inline-block;font-size:.83rem}
.decision-form{display:grid;gap:13px;margin-top:16px}
.decision-form textarea{min-height:110px;resize:vertical}
.decision-form .details-input{min-height:90px}
.save-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.save-row .small{max-width:270px}
.compare-tray{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;padding:12px 16px;display:flex;gap:17px;align-items:center;box-shadow:0 8px 30px #13243a33;font-size:.875rem;z-index:2}
.compare-tray .text-button{color:#c6d8ff}
.compare-tray[hidden],[hidden]{display:none!important}
#compare-dialog{width:min(1080px,96vw)}
.comparison-scroll{overflow:auto}
.comparison{border-collapse:collapse;width:100%;font-size:.85rem;min-width:580px}
.comparison th,.comparison td{padding:13px 15px;border:1px solid var(--line);text-align:left;vertical-align:top}
.comparison th:first-child{width:120px;color:var(--muted);font-size:.76rem;font-weight:500}
.comparison thead td{min-width:210px;max-width:290px;background:var(--back)}
.comparison a{display:inline-block;font-weight:550}
.comparison .price{font-size:1.2rem}
.link-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.linked-item{display:flex;align-items:center;gap:10px;margin:8px 0;font-size:.85rem}
.source-summary{margin-top:8px}
.working{opacity:.6;pointer-events:none}

@media(min-width:1450px){.listings{grid-template-columns:1fr 1fr}
.listing{grid-template-columns:minmax(0,1fr);}
.card-price{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px}
.card-actions{margin:0}
.card-price>.price-group{flex-shrink:0}
.listing h2{min-height:3em}
.listing{padding:20px}
}

@media(max-width:850px){.topbar{padding:0 20px;gap:24px}
.local-mark{display:none}
.workspace{grid-template-columns:225px minmax(0,1fr)}
.rail{padding:22px 16px}
.results{padding:24px 18px 85px}
.page-heading{align-items:flex-start}
.page-heading .secondary{font-size:.75rem;padding:7px 9px}
h1{font-size:2rem}
.metrics{grid-template-columns:repeat(2,1fr);gap:18px}
.metric:nth-child(3){padding-left:0;border:0}
.listing{grid-template-columns:minmax(0,1fr);padding:16px}
.card-price{display:flex;align-items:center;justify-content:space-between;text-align:left}
.card-actions{margin:0}
.results-bar{align-items:flex-start;flex-direction:column;gap:9px}
}

@media(max-width:600px){.topbar{height:70px;padding:0 16px;gap:24px}
.brand{font-size:2rem}
.brand span{display:none}
.topbar nav{gap:18px}
.nav{font-size:.82rem}
.workspace{display:block}
.rail{min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:16px}
.city,.photo-credit{display:none}
.rail form{grid-template-columns:1fr 1fr;gap:12px}
.rail-title{grid-column:1/-1;margin:0}
.rail form>label:first-of-type{grid-column:1/-1}
.rail .price-range{grid-column:1/-1}
.rail .small{grid-column:1/-1}
.apply{align-self:end}
.coverage{margin-top:18px}
.results{padding:24px 16px 90px}
.results-bar{flex-direction:row;align-items:center}
.sort{font-size:0}
.sort select{font-size:.78rem;max-width:160px}
.metrics{grid-template-columns:repeat(4,1fr);gap:0}
.metric{padding:0 10px}
.metric:nth-child(3){padding-left:10px;border-left:1px solid var(--line)}
.metric strong{font-size:1.2rem}
.metric span{font-size:.75rem}
.card-price{align-items:flex-end}
.facts{gap:12px}
.compare-tray{width:calc(100% - 24px);justify-content:space-between;gap:8px;font-size:.75rem;padding:10px}
.compare-tray .primary{padding:8px;font-size:.78rem}
dialog{padding:22px 20px}
.detail-facts{grid-template-columns:repeat(2,1fr)}
}

@media(prefers-reduced-motion:reduce){*{transition:none!important}
}


.city-label{display:flex;flex-direction:column;gap:6px;padding:26px 0 22px;border-bottom:1px solid var(--line)}
.city-label strong{font-size:26px}.city-label span{font-size:13px;color:var(--muted)}
.refresh-actions{display:flex;gap:8px;flex-wrap:wrap}.refresh-note{max-width:780px;margin-top:0}
.health-row{display:flex;flex-direction:column;gap:5px;align-items:flex-start;padding:12px 0}
.listing-description{white-space:pre-wrap;line-height:1.65;font-size:15px;overflow-wrap:anywhere}
.captured-features{padding-left:20px;line-height:1.6}.card-actions{flex-wrap:wrap}.card-actions .history-link{font-size:13px}

.login-page{display:grid;place-items:center;min-height:100vh;padding:24px}.login-card{width:min(100%,420px);background:var(--paper,#fff);border:1px solid var(--line,#ddd);border-radius:18px;padding:36px}.login-card .eyebrow{margin-top:32px}.login-card h1{font-size:32px}.login-card form{display:grid;gap:16px;margin:28px 0}.login-card label{display:grid;gap:8px}.login-error{color:#983730;margin:0}.login-error:empty{display:none}.cloud-logout{display:inline}.cloud-logout[hidden]{display:none}.local-mark{gap:8px}

@media(max-width:850px){.local-mark:has(.cloud-logout:not([hidden])){display:flex}.local-mark i,.local-mark #deployment-label{display:none}}
@media(max-width:600px){.topbar{height:auto;min-height:70px;display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:12px 16px 0}.topbar nav{grid-row:2;grid-column:1/-1;min-height:42px}.local-mark{grid-row:1;grid-column:2}.cloud-logout .text-button{white-space:nowrap}}

/* A large lead photo and up to three genuinely different listing views. */
.listings{grid-template-columns:minmax(0,1fr)}
.listing{grid-template-columns:minmax(280px,40%) minmax(0,1fr);gap:24px;align-items:stretch}
.listing-gallery{min-width:0;display:grid;gap:7px;align-content:start}
.listing-preview,.photo-thumb{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4/3;padding:0;overflow:hidden;border-radius:5px;background:#edf1f5;color:var(--muted)}
.listing-preview:focus-visible,.photo-thumb:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.photo-thumb{border:1px solid transparent}
.photo-thumb:hover{border-color:var(--blue);filter:brightness(.96)}
.photo-thumb .photo-placeholder{font-size:.65rem;padding:5px}
.listing-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo-placeholder{font-size:.78rem;padding:12px;text-align:center}
.daily-summary{border:1px solid var(--line);border-radius:8px;background:#fff;padding:18px 22px;margin:20px 0;overflow-wrap:anywhere}
.daily-summary>summary{cursor:pointer;font-weight:600}.daily-summary>summary .muted{font-weight:400;font-size:13px}
.digest-prose{line-height:1.65;white-space:pre-wrap}.digest-highlights{padding-left:22px;line-height:1.6}
.digest-highlights li{padding:8px 0}.digest-highlights p{margin:5px 0}.digest-highlights .text-button{text-align:left}
.digest-counts{font-weight:600}.daily-summary details>summary{cursor:pointer;font-size:14px}
.digest-setup{display:grid;gap:12px;max-width:620px;margin-top:16px}.digest-setup label{display:grid;gap:8px}.digest-setup input{width:100%}
#daily-summary-content>p{margin:12px 0}
.listing-body{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:5px 0}
.listing .card-price{display:flex;text-align:left;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.listing .card-actions{margin:0;justify-content:flex-start;gap:10px}
.listing h2{min-height:0}
.location-filter{display:grid;gap:10px;grid-column:1/-1}.location-filter>label{gap:6px}.location-filter .secondary{justify-self:start}
.location-choices{display:grid;gap:6px}.location-choices button{text-align:left;font-size:13px;line-height:1.4;padding:8px;white-space:normal}
.location-note{color:var(--muted);font-size:13px;line-height:1.5;margin:10px 0}.location-note a{color:inherit}
#location-status{line-height:1.6}#location-selection{margin:0;overflow-wrap:anywhere}
@media(min-width:1700px){.listing{grid-template-columns:480px minmax(0,1fr)}}
@media(max-width:1050px){.listing{grid-template-columns:minmax(0,1fr);gap:16px}.listing-preview{aspect-ratio:3/2}.listing-preview.no-photo{height:64px;aspect-ratio:auto}.listing-body{gap:16px}}
@media(max-width:600px){.listing{padding:12px;gap:14px}.listing-preview{aspect-ratio:4/3}.listing-preview.no-photo{height:48px}.listing-body{gap:14px;padding:2px 4px}}
.quality-table{border-collapse:collapse;min-width:720px;width:100%;font-size:.8rem}.quality-table th,.quality-table td{text-align:left;padding:.6rem;border-bottom:1px solid var(--line);white-space:nowrap}.quality-table th{font-weight:600}#data-quality{margin:12px 0}#data-quality-content{padding:8px 0}.detail-facts>p{grid-column:1/-1}
/* Native touch/trackpad carousel; image requests are gated by proximity in JS. */
.listing-preview{display:block}.listing-preview.no-photo{display:grid}
.photo-track{position:absolute;inset:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;border-radius:inherit}
.photo-track::-webkit-scrollbar{display:none}.photo-track:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
.photo-track.dragging{scroll-snap-type:none;cursor:grabbing}
.photo-slide{position:relative;display:grid;place-items:center;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;user-select:none}
.photo-slide .listing-photo{pointer-events:none;user-select:none;-webkit-user-drag:none}
.photo-retry{display:block;margin:10px auto 0;cursor:pointer}
.photo-nav{position:absolute;z-index:2;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:40px;padding:0;background:rgba(255,255,255,.94);color:var(--ink);border:1px solid #dce2e9;border-radius:6px;font:30px/1 Arial,sans-serif;box-shadow:0 1px 6px #0002}
.photo-nav:hover{background:white}.photo-prev{left:10px}.photo-next{right:10px}
.photo-counter{position:absolute;z-index:2;bottom:10px;right:10px;border-radius:5px;background:#17283bdb;color:white;padding:4px 8px;font-size:12px;font-variant-numeric:tabular-nums;pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fact-evidence{display:block;margin-top:5px;font-size:.75rem;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}.fact-evidence summary{cursor:pointer}.fact-evidence p{margin-top:6px}

/* Neighbourhood explorer: the map stays in view while the photo rows flow. */
.explorer[hidden]{display:none}.result-feed{min-width:0}
body.exploring{background:#f6f7f4}
.exploring .workspace{display:block;max-width:1900px}
.exploring .rail{display:none}
.exploring .results{padding:26px 32px 70px}
.exploring .page-heading{margin-bottom:24px}
.exploring .page-heading h1{font-size:2.2rem}
.exploring .page-heading .eyebrow{color:#5e766b}
.exploring #metrics,.exploring #refresh-note,.exploring #daily-summary,.exploring #location-status,.exploring #enrichment-status,.exploring .sort{display:none}
.exploring #explore-layout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);align-items:start;gap:28px}
.exploring .results-bar{min-height:32px;margin-bottom:8px}
.exploring .explore-order{display:block;color:#587265;font-size:12px;white-space:nowrap}
.exploring #data-quality{margin:0 0 14px;padding:0;border:0;font-size:12px;color:var(--muted)}
.exploring #data-quality summary{margin:0}
.explorer{position:sticky;top:22px;border:1px solid #dbe3dd;border-radius:18px;padding:22px;background:#fff;box-shadow:0 6px 28px #16372b05;min-width:0}
.explore-map-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.explore-map-heading .eyebrow{font-size:10px;letter-spacing:.15em;color:#6b7f73;margin-bottom:7px}
.explore-map-heading h2{font:400 1.8rem/1.15 Georgia,serif;letter-spacing:-.04em;color:#233e32}
.explore-live{font-size:10px;border:1px solid #d8e7dd;background:#f4faf5;padding:5px 8px;border-radius:20px;white-space:nowrap;color:#427858;display:flex;gap:5px;align-items:center}
.explore-live i{height:5px;width:5px;background:#5b9b6a;border-radius:50%}
.explore-intro{font-size:13px;color:#728078;margin-top:8px}
.explore-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 14px}
.explore-tools label{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:12px;font-weight:500;color:#64736c}
.explore-tools select{width:100px;padding:6px 10px;border-radius:20px;border-color:#dce4de;font-size:12px;background:#f8faf7}
.explore-tools button{font-size:12px;padding:7px 13px;border-color:#dce4de;border-radius:20px}
.explore-map{height:clamp(330px,51vh,580px);position:relative;overflow:hidden;background:#f5f7f5;border:1px solid #e2e8e1;border-radius:12px;touch-action:none;cursor:crosshair;isolation:isolate}
#explore-basemap,#explore-markers{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#explore-map-image{opacity:1}
#explore-markers{contain:strict;transform:translateZ(0);z-index:2}
.explore-pin{will-change:transform}
#explore-radius-ring{stroke:#54766a;stroke-width:1.5;stroke-dasharray:5 5;fill:#7d9b8917;pointer-events:none}
.explore-map.dragging{cursor:grabbing}
/* One SVG silhouette morphs between a free pin and the selected asking price. */
.explore-pin{position:absolute;width:44px;height:58px;margin:-54px 0 0 -22px;z-index:8;filter:drop-shadow(0 4px 6px #20382930);touch-action:none;cursor:grab;padding:0;overflow:visible;background:none}
.explore-pin.snapped{width:128px;margin-left:-64px}
.explore-pin>svg{position:absolute;left:50%;top:0;width:128px;height:58px;transform:translateX(-50%);overflow:visible;pointer-events:none}
#explore-pin-shape{fill:#244d3b;stroke:#fff;stroke-width:2.5;stroke-linejoin:round}
#explore-pin-icon{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round}
#explore-pin-price{fill:#fff;font:650 12px -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:-.02em;opacity:0}
.explore-pin:focus-visible{outline:2px solid #427d65;outline-offset:2px;border-radius:14px}
.dragging .explore-pin{cursor:grabbing}
#explore-snap-line{stroke:#527b63;stroke-width:1.2;stroke-dasharray:3 4;opacity:.65}
#explore-snap-target{stroke:#527b63;stroke-width:1.5;fill:#e7f2e380}
.explore-snap-hint{position:absolute;transform:translateX(-50%);z-index:8;pointer-events:none;background:#fffef9ed;color:#476751;border:1px solid #dce6d9;border-radius:20px;padding:4px 9px;box-shadow:0 2px 8px #1e342b10;font-size:10px;white-space:nowrap}
.explore-pin-preview{position:absolute;z-index:9;display:flex;align-items:center;gap:8px;border-radius:10px;padding:7px 8px 7px 11px;background:#fffffffa;box-shadow:0 5px 18px #1d3b2b20;border:1px solid #d2dfcf;cursor:default;touch-action:pan-y}
.pin-preview-facts{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1;min-width:0;font-variant-numeric:tabular-nums}
.pin-preview-facts strong{font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;color:#36513d}
.pin-preview-facts strong+strong{border-left:1px solid #e5ebdf;padding-left:10px}
#pin-preview-close{flex:0 0 24px;width:24px;height:24px;padding:0;color:#7c8d78;border-radius:5px;font-size:17px;line-height:1}
#pin-preview-close:hover{background:#edf3e9}
.explore-marker{position:absolute;pointer-events:auto;transform:translate(-50%,-100%);z-index:2;padding:0 6px 7px;min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;touch-action:manipulation}
.explore-marker-price{position:relative;display:block;border:1px solid #d2dbd4;border-radius:6px;background:#fff;box-shadow:0 2px 4px #20382918;padding:2px 5px;font:650 10px/1.35 -apple-system,BlinkMacSystemFont,sans-serif;white-space:nowrap;color:#294738}
.explore-marker-dot{position:absolute;bottom:-3px;left:calc(50% - 3px);width:6px;height:6px;background:#315840;border:1px solid white;border-radius:50%;box-shadow:0 0 0 1px #31584040}
.explore-marker.approximate .explore-marker-dot,.map-dot.approximate{background:#fafcf9;border:1.5px solid #738876}
.explore-marker.approximate .explore-marker-price{border-style:dashed;color:#67766b}
.explore-marker:hover,.explore-marker:focus-visible{z-index:7}
.explore-marker:focus-visible .explore-marker-price{outline:2px solid #294f3e;outline-offset:2px}
.explore-marker.selected{z-index:6}
.explore-marker.selected .explore-marker-price{background:#294f3e;color:#fff;border-color:#294f3e;box-shadow:0 3px 12px #1b372933}
.explore-marker.selected .explore-marker-dot{background:#294f3e;box-shadow:0 0 0 4px #51746130}
.explore-map-controls{position:absolute;right:12px;bottom:40px;display:grid;border-radius:9px;border:1px solid #dce4dc;background:#fff;box-shadow:0 2px 8px #1733200c;z-index:7;overflow:hidden}
.explore-map-controls button{width:34px;height:34px;line-height:1;font-size:20px;color:#345240;padding:0;border-bottom:1px solid #e8ece6}
.explore-map-controls button:last-child{border:0}.explore-map-controls button:hover{background:#f1f6ef}
.explore-north{position:absolute;left:14px;top:12px;font-size:11px;font-weight:650;color:#657c6e;pointer-events:none}
.explore-coordinates{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);background:#ffffffdf;padding:4px 9px;border:1px solid #e0e7df;border-radius:6px;font-size:9px;letter-spacing:.04em;white-space:nowrap;color:#5e7465;pointer-events:none}
.explore-map-footer{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;color:#687a6c;margin:12px 0}
.explore-map-footer>span{display:flex;align-items:center;gap:5px}#explore-map-scale{margin-left:auto}
.map-dot{height:6px;width:6px;border-radius:50%;background:#315840;display:inline-block}
#explore-status{font-size:11px;min-height:33px}
.explore-attribution{font-size:9px;line-height:1.6;color:#889489;margin-top:10px;border-top:1px solid #edf0e9;padding-top:10px}
.exploring .listings{gap:14px}
.listing.explore-card{display:block;padding:15px 17px 11px;border:1px solid #e0e5dd;border-radius:13px;background:white;scroll-margin-top:20px;transition:border-color .18s,box-shadow .18s,opacity .15s;overflow:hidden}
.explore-card.map-selected{border-color:#809d86;box-shadow:0 0 0 2px #809d8617}
.explore-card.outside-radius{opacity:.38}
.explore-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}
.explore-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#7d877c;font-size:10px;min-width:0}
.explore-card .source-name{font-size:10px;color:#4b6c55}
.explore-card-meta .tag{padding:1px 4px;font-size:9px}
.explore-distance{color:#496e53;background:#f0f5ed;border-radius:15px;padding:4px 9px;white-space:nowrap;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}
.explore-card h2{font-size:14px;line-height:1.4;margin:0 0 10px}
.explore-card h2 button{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.explore-facts{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:10px 20px;margin:0 0 13px;text-align:left}
.explore-facts>div{flex:0 1 auto;max-width:150px;border-left:1px solid #edf0e9;padding-left:12px;min-width:0}.explore-facts>div:first-child{border:0;padding:0}
.explore-facts strong{font-size:14px;font-weight:600;display:block;letter-spacing:-.02em;line-height:1.35;overflow-wrap:anywhere}.explore-facts>div:first-child strong{font-size:19px;line-height:1;color:#233f30}
.explore-facts span{display:block;margin-top:4px;font-size:9px;color:#8a9388;text-transform:uppercase;letter-spacing:.06em}
.explore-photos.listing-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;min-width:0}
.explore-photos .listing-preview,.explore-photos .photo-thumb{aspect-ratio:1.42;height:auto;min-height:0;border-radius:5px;overflow:hidden;background:#f0f1eb;position:relative;padding:0;display:block;border:0}
.explore-photos .photo-strip{display:contents}
.explore-photos .photo-placeholder{font-size:9px;padding:6px}
.explore-photos .photo-nav{width:18px;height:24px;font-size:19px;opacity:0}.explore-photos:hover .photo-nav,.explore-photos:focus-within .photo-nav{opacity:1}
.explore-photos .photo-prev{left:2px}.explore-photos .photo-next{right:2px}
.explore-photos .photo-counter{font-size:8px;padding:1px 4px;right:4px;bottom:4px}
.explore-photos[data-count="0"]{display:block}.explore-photos[data-count="0"] .listing-preview{aspect-ratio:auto;height:48px;display:grid;border:1px dashed #dce1d4}
.explore-photos[data-count="1"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.explore-card-bottom{display:flex;align-items:center;gap:12px;margin-top:10px;font-size:10px;color:#7b887b;min-height:26px}
.explore-card-bottom>span{margin-right:auto}.explore-card-bottom .estimate{font-style:italic}
.explore-card-bottom .history-link{margin:0;font-size:10px;color:#50705b;white-space:nowrap}
.explore-card-bottom .check{font-size:10px;gap:4px}.explore-card-bottom input{width:12px;height:12px;margin-top:1px;accent-color:#416a4b}
.explore-card-bottom .bookmark{font-size:10px;border-color:#dce5d7;color:#4d7255;padding:3px 8px;border-radius:5px}
.explore-screening.tags{margin:5px 0 0;gap:4px}.explore-screening .tag{font-size:9px;padding:1px 5px}.explore-screening>.opened-flag{display:none}.explore-screening .tag:not(.warn):not(.excluded):not(.good){display:none}
.exploring .pagination{margin-top:20px}.exploring .data-note{font-size:10px}
.explore-filters-open .rail{display:block;position:fixed;z-index:20;top:82px;bottom:0;left:0;width:300px;min-height:0;overflow-y:auto;box-shadow:10px 0 60px #233f3033;border-right:1px solid #d5dfd0}
.exploring .location-filter>label:first-of-type,.exploring .location-filter>#find-location,.exploring .location-filter>#location-selection,.exploring .location-filter>#location-choices,.exploring .location-filter>label:has([name="radius_km"]),.exploring .location-filter>label:has([name="include_unknown_location"]){display:none}
@media(min-width:1600px){.exploring #explore-layout{grid-template-columns:minmax(420px,.8fr) minmax(0,1.2fr)}.explore-photos .listing-preview,.explore-photos .photo-thumb{aspect-ratio:1.65}.explore-card h2{font-size:16px}}
@media(max-width:1100px){.exploring .results{padding:22px 20px 60px}.exploring #explore-layout{grid-template-columns:minmax(310px,.85fr) minmax(0,1fr);gap:16px}.explorer{padding:16px}.explore-live{display:none}.explore-map-heading h2{font-size:1.6rem}.explore-card-bottom{gap:8px}.explore-card-bottom .check{display:none}}
@media(max-width:800px){.topbar{gap:20px;padding:0 18px}.topbar nav{gap:16px}.local-mark{font-size:0}.local-mark .text-button{font-size:11px}.brand span{display:none}.exploring #explore-layout{grid-template-columns:1fr}.explorer{position:relative;top:auto}.explore-map{height:340px}.exploring .page-heading h1{font-size:1.8rem}.exploring .refresh-actions{display:none}.explore-live{display:flex}.explore-card-bottom .check{display:flex}}
@media(max-width:480px){.topbar{height:70px;gap:20px;padding:0 14px}.brand{font-size:2rem}.topbar nav{gap:14px}.nav{font-size:11px}.nav span{display:none}.local-mark{display:none}.exploring .results{padding:18px 12px 50px}.exploring .page-heading{margin-bottom:18px}.explorer{padding:14px;border-radius:14px}.explore-map{height:300px}.explore-map-heading h2{font-size:1.6rem}.explore-facts{gap:6px}.explore-facts>div{padding-left:8px}.explore-facts strong{font-size:12px}.explore-facts>div:first-child strong{font-size:17px}.listing.explore-card{padding:13px 12px 10px}.explore-card-bottom{gap:8px}.explore-card-bottom .check{display:none}.explore-map-footer{gap:10px;font-size:9px}.explore-filters-open .rail{top:70px;width:280px}.explore-photos .photo-nav{opacity:1}}
@media(prefers-reduced-motion:reduce){.explore-card,.explore-marker{transition:none}}
.exploring .listings{grid-template-columns:1fr}
#explore-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.explore-area-label{position:absolute;transform:translate(-50%,-50%);font-size:10px;font-weight:500;letter-spacing:.02em;color:#78907f;white-space:nowrap;text-shadow:0 1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff}
@media(max-width:600px){.topbar{height:auto;min-height:92px;gap:4px 16px;padding:10px 16px 0}.topbar nav{min-height:39px}.explore-filters-open .rail{top:92px}}

/* Browse cards: gallery, facts, then the full description column. */
.listing:not(.explore-card){grid-template-columns:minmax(220px,32%) minmax(0,1fr)}
.listing-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-content:start;align-items:stretch;gap:20px}
.card-overview{min-width:0;display:grid;align-content:start;gap:18px}
.card-captured{min-width:0;border-top:1px solid var(--line);padding-top:14px}
.card-captured h3,.card-description h3{font-size:.8rem;font-weight:650;margin:0 0 10px}
.card-captured .detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:0;margin:0;border:0}
.card-captured .detail-facts dt{font-size:.68rem}
.card-captured .detail-facts dd{font-size:.8rem;overflow-wrap:anywhere}
.card-captured .fact-evidence{font-size:.65rem}
.card-description{min-width:0;display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:20px}
.card-description>p{font-size:.7rem;margin:0 0 10px}
.card-description .listing-description{flex:1;min-height:280px;max-height:520px;overflow-y:auto;scrollbar-gutter:stable;font-size:.85rem;line-height:1.7;padding:0 10px 0 0}
.card-description .listing-description:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.listing-body>.card-price{grid-column:1/-1}
.browse-map{display:none}
@media(min-width:1051px){
  body:not(.exploring) .workspace{grid-template-columns:300px minmax(0,1fr)}
  body:not(.exploring) .rail{position:sticky;top:0;height:100dvh;min-height:0;display:flex;flex-direction:column;padding:0;align-self:start}
  body:not(.exploring) .rail-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 20px}
  body:not(.exploring) .browse-map{display:block;flex-shrink:0;padding:18px 14px 14px;border-bottom:1px solid var(--line);background:#f8faf8}
}
.browse-map-heading{display:flex;justify-content:space-between;align-items:center;padding:0 4px 10px;gap:8px}
.browse-map-heading h2{font-size:.85rem}.browse-map-heading span{font-size:.65rem;color:var(--muted)}
#browse-map-canvas svg{display:block;width:100%;height:auto;border:1px solid #e0e7df;border-radius:8px;background:#f4f7f4}
#browse-map-title{font-size:.75rem;font-weight:600;margin:10px 4px 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}
#browse-map-status{font-size:.65rem;margin:0 4px;min-height:30px}
.browse-map-credit{font-size:.55rem;color:var(--muted);margin:6px 4px 0;display:block}
.browse-map-marker{opacity:0;transition:opacity .3s ease;pointer-events:none}
.browse-map-halo{fill:#2856cb12;stroke:#2856cb30;stroke-width:.7}
.browse-map-dot{fill:#547b65;stroke:#fff;stroke-width:1.7}
.browse-map-marker.approximate .browse-map-halo{stroke-dasharray:2 2}
.browse-map-marker.focused .browse-map-dot{fill:var(--blue);stroke-width:2}
.browse-map-marker.focused .browse-map-halo{fill:#2856cb25;stroke:#2856cb70}
@media(max-width:1250px) and (min-width:1051px){.listing:not(.explore-card){grid-template-columns:minmax(0,1fr)}.listing-gallery{max-width:480px}.listing-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:1050px){.listing:not(.explore-card){grid-template-columns:minmax(0,1fr)}.listing-body{grid-template-columns:minmax(0,1fr)}.card-description{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.card-description .listing-description{min-height:0;max-height:none;overflow:visible;scrollbar-gutter:auto}}
@media(prefers-reduced-motion:reduce){.browse-map-marker{transition:none}}

/* Put search controls above the feed; reserve the left column for a larger map. */
.workspace{max-width:2100px}
.search-toolbar{grid-column:1/-1;grid-row:1;padding:20px 28px 16px;background:#fff;border-bottom:1px solid var(--line);min-width:0}
#filters{display:grid;gap:12px}
#filters .rail-title{margin:0;justify-content:flex-start;gap:16px}
#filters .rail-title h2{font-size:.95rem}
.primary-filters{display:grid;grid-template-columns:1.2fr 1.15fr 1.15fr .7fr 1.05fr auto;gap:16px;align-items:end}
.primary-filters .apply{width:auto;white-space:nowrap;margin:0}
.primary-filters label,.primary-filters legend,.extra-filters label,.extra-filters legend{font-size:.75rem}
.primary-filters>label,.primary-filters>fieldset{min-width:0}
.more-filters>summary,.collection-updates>summary{cursor:pointer;font-size:.75rem;color:var(--muted);width:fit-content}
.extra-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:16px;padding:16px 0 4px}
.extra-filters .location-filter{grid-column:span 2;grid-row:span 4;grid-template-columns:1fr 1fr}
.extra-filters .location-filter>label:first-of-type,.extra-filters .location-choices,.extra-filters #location-selection{grid-column:1/-1}
.extra-filters>.small{grid-column:1/-1}
.collection-updates{margin-top:8px}
.collection-updates[open]{padding-top:8px}
.collection-updates .refresh-actions{display:flex;gap:8px;margin:14px 0}
.collection-updates #metrics{margin:14px 0;padding:14px 0}
.collection-updates .coverage{margin-top:12px;padding-top:12px}
.collection-updates #enrichment-status{margin:12px 0}
body:not(.exploring) .results{grid-column:2;grid-row:2;padding:22px 24px 70px}
body:not(.exploring) .rail{grid-column:1;grid-row:2;border:0;background:transparent}
@media(min-width:1051px){
 body:not(.exploring) .workspace{grid-template-columns:clamp(360px,28vw,520px) minmax(0,1fr)}
 body:not(.exploring) .rail{height:auto;top:18px;padding:22px 0 22px 22px}
 body:not(.exploring) .browse-map{padding:20px;border:1px solid #dce5df;border-radius:12px;background:#f7faf7}
 #browse-map-canvas svg{min-height:300px}
 .browse-map-heading{padding-bottom:16px}
 .browse-map-heading h2{font-size:1rem}
 #browse-map-title{font-size:.85rem;margin-top:16px}
 #browse-map-status{font-size:.75rem}
 .browse-map-credit{font-size:.6rem;margin-top:12px}
}
.exploring .workspace{display:block}
.exploring .search-toolbar{display:block}
.exploring .rail,.explore-filters-open .rail{display:none}
@media(max-width:1400px){.primary-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.primary-filters .apply{justify-self:start}.extra-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){body:not(.exploring) .workspace{display:block}body:not(.exploring) .rail{display:none}body:not(.exploring) .results{padding:20px 16px 60px}.search-toolbar{padding:16px}.extra-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.extra-filters .location-filter{grid-row:auto;grid-column:1/-1}}
@media(max-width:600px){.primary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.primary-filters>label:first-child{grid-column:1/-1}.primary-filters .apply{justify-self:stretch;grid-column:1/-1}.extra-filters .location-filter{grid-template-columns:1fr}.extra-filters .location-filter>*{grid-column:1/-1}.collection-updates #metrics{grid-template-columns:repeat(2,1fr)}}

/* Street names stay screen-sized while local vector geometry zooms beneath. */
#explore-street-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.street-map-label{position:absolute;font:500 10px/1.2 -apple-system,BlinkMacSystemFont,sans-serif;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;color:#657269;text-shadow:0 1px 2px #fff,0 -1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff;transform-origin:center}
.street-map-station{font-weight:650;font-size:10px;color:#526d81}
.street-map-station::before{content:'▣ ';color:#587b8d}
.street-map-park{color:#668563;font-style:italic}
.explore-attribution a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* A generous invisible hit band covers the whole dotted edge; the handle is keyboard accessible. */
.explore-map.radius-hover #explore-radius-ring,.explore-map.resizing #explore-radius-ring{stroke:#315f49;stroke-width:2.5;fill:#7d9b8924}
.explore-radius-handle{position:absolute;z-index:6;width:28px;height:28px;padding:0;transform:translate(-50%,-50%);border-radius:50%;cursor:ew-resize;touch-action:none}
.explore-radius-handle::after{content:"";position:absolute;inset:8px;border:2px solid #52785f;background:#fff;border-radius:50%;box-shadow:0 1px 4px #20382924;pointer-events:none}
.explore-radius-handle:hover::after,.resizing .explore-radius-handle::after{background:#315f49;border-color:#fff}

/* Homes is the combined migration view. The original views retain their layout. */
.homes-sort{display:none}
.homes-mode .homes-sort{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px}
.homes-mode .homes-sort select{width:auto;max-width:180px}
.homes-mode .explore-order,.homes-mode #explore-radius-ring,.homes-mode #explore-radius-handle,.homes-mode .explore-tools>label,.homes-mode .explore-live{display:none!important}
.homes-mode .explore-tools{justify-content:flex-end;margin:10px 0}
.homes-mode .explore-map{cursor:grab;height:clamp(350px,57vh,650px)}
.homes-mode #explore-pin-shape{fill:#2856cb}
.homes-mode .explore-map-heading .eyebrow{display:none}
.homes-mode .explore-map-heading h2{font-size:1.7rem}
.homes-mode .results-bar{align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.homes-mode .results-bar>div{flex:1;min-width:180px}
.homes-mode #result-context{display:block;font-size:11px;margin-top:4px}
.homes-mode .location-filter>label:first-of-type{display:flex}
.homes-mode .location-filter>#find-location{display:block}
.homes-mode .location-filter>#location-selection:not([hidden]),.homes-mode .location-filter>#location-choices:not([hidden]){display:block}
.homes-card{cursor:pointer}
.homes-card .homes-details{cursor:auto}
.homes-card.expanded{border-color:#547b65;box-shadow:0 0 0 1px #547b6533}
.homes-card .explore-card-bottom{flex-wrap:wrap;font-size:11px;gap:8px 12px}
.homes-card .explore-card-bottom .history-link,.homes-card .explore-card-bottom .bookmark,.homes-card .explore-card-bottom .check{font-size:11px}
.homes-expand{color:#315840;font-size:12px;font-weight:600;padding:6px 0;margin-left:auto;white-space:nowrap}
.homes-details{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;border-top:1px solid #e0e5dd;margin-top:14px;padding-top:18px}
.homes-details .card-captured{padding:0}
.homes-details .card-description{padding:0;border:0}
.homes-details .listing-description{max-height:none;min-height:0;overflow:visible}
@media(min-width:1600px){.homes-mode #explore-layout{grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr)}}
@media(max-width:1100px){.homes-details{grid-template-columns:1fr}.homes-details .card-description{border-top:1px solid #e0e5dd;padding-top:16px}.homes-card .explore-card-bottom .check{display:flex}}
@media(max-width:800px){.homes-mode .explore-map{height:330px}.homes-mode .explorer{position:relative}.homes-mode .homes-sort{font-size:11px}}
@media(max-width:600px){.topbar nav{overflow-x:auto;max-width:100%;gap:16px}.topbar .nav{flex-shrink:0}.homes-card .explore-card-bottom>span{flex-basis:100%}.homes-mode .explore-map{height:300px}.homes-details .detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Persistent, individually removable home tabs share their colour with map pins. */
.home-pins{margin:0 0 14px}
.home-pins-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:9px;font-size:10px;color:#617367}
.home-pins-heading>span:first-child{font-weight:650;letter-spacing:.04em;text-transform:uppercase}
#home-pin-count{margin-left:4px}
#home-pin-status{color:#9b4536}
.home-pin-tabs{display:flex;gap:8px;overflow-x:auto;padding:3px 2px 5px;scrollbar-width:thin}
.home-pin-tab{position:relative;flex:0 0 68px;width:68px;height:68px;color:var(--pin-color)}
.home-pin-open{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;width:100%;height:100%;padding:12px 7px 7px;border:1px solid var(--pin-color);border-top:4px solid var(--pin-color);border-radius:9px;background:var(--pin-tint);color:var(--pin-color);text-align:left}
.home-pin-open.selected{box-shadow:0 0 0 2px var(--pin-color);background:white}
.home-pin-open:hover{filter:brightness(.97)}
.home-pin-price{font-size:16px;font-weight:700;line-height:1.1;max-width:100%;white-space:nowrap}
.home-pin-zone{font-size:10px;line-height:1.2;letter-spacing:-.02em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-pin-remove{position:absolute;right:0;top:0;width:23px;height:23px;padding:0;font-size:17px;line-height:1;color:var(--pin-color);border-radius:0 8px 0 8px}
.home-pin-remove:hover{background:var(--pin-color);color:white}
.home-pin-tab.unmapped .home-pin-open{border-bottom-style:dashed}
.home-pins-empty{font-size:11px;color:#748177;margin:1px 0 5px}
.home-pin-action{font-size:11px;font-weight:600;color:#315840;padding:5px 0}
.home-pin-action.is-pinned{color:var(--pin-color)}
#home-pin-markers{position:absolute;inset:0;pointer-events:none;z-index:4}
.home-pin-marker{background:var(--pin-color);color:white;border:2px solid white;border-radius:8px;box-shadow:0 2px 5px #192d3333;min-width:40px;min-height:28px;padding:3px 7px;isolation:isolate}
.home-pin-marker::after{content:"";position:absolute;bottom:-6px;left:calc(50% - 4px);width:8px;height:8px;background:var(--pin-color);transform:rotate(45deg);z-index:-1}
.home-pin-marker span{display:block!important;background:none!important;color:inherit!important;padding:0!important;box-shadow:none!important;border:0!important;font-size:11px;font-weight:700}
.home-pin-marker.approximate{border-style:dashed}
.home-pin-marker.selected,.home-pin-marker:hover,.home-pin-marker:focus-visible{z-index:5;background:var(--pin-color);box-shadow:0 0 0 2px var(--pin-color),0 3px 8px #192d3344}
.pinned-focus{margin-bottom:20px;border-bottom:1px solid #dae2da;padding-bottom:20px}
.pinned-focus-label{font-size:11px;color:#617367;margin:0 0 9px}
body:not(.homes-mode) #home-pins,body:not(.homes-mode) #home-pin-markers,body:not(.homes-mode) #pinned-focus{display:none}
