@font-face{font-family:Manrope;src:url('manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--bg:#f5f6f2;--card:#fff;--ink:#202a25;--muted:#778078;--green:#215b43;--deep:#174e3b;--lime:#d7edba;--border:#e4e8e0;--radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}button{color:inherit}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}svg:not(.leaflet-zoom-animated){width:20px;height:20px}.icons{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:-60px;left:20px;background:var(--deep);color:white;padding:12px;z-index:9999}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #89b95d;outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px}[hidden]{display:none!important}
.site-header{background:#fff;border-bottom:1px solid var(--border);height:88px}.header-inner{max-width:1440px;margin:auto;height:100%;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px;font-size:33px;font-weight:800;letter-spacing:-2px}.brand-mark{display:grid;place-items:center;background:var(--deep);color:var(--lime);width:39px;height:42px;border-radius:10px}.brand-mark svg{width:24px;height:24px}.brand-dot{color:var(--green)}.brand-description{font-size:9px;line-height:1.6;letter-spacing:1px;font-weight:600;border-left:1px solid var(--border);padding-left:14px;margin-left:9px;color:var(--muted)}nav{height:100%;display:flex;gap:30px;font-size:12px;font-weight:600}nav a{display:flex;align-items:center;position:relative;color:#7a807b;white-space:nowrap}nav a:hover,nav .nav-active{color:var(--deep)}nav .nav-active:after{content:'';position:absolute;height:3px;bottom:0;left:0;right:0;background:var(--green);border-radius:3px}.region-label{font-size:11px;display:flex;align-items:center;gap:9px;white-space:nowrap;padding:9px 12px;background:#f4f7f1;border-radius:20px}.live-dot{width:6px;height:6px;border-radius:50%;background:#5f985a;display:inline-block;flex-shrink:0}.page{max-width:1440px;padding:42px 48px 0;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--green);display:flex;align-items:center;gap:9px}.eyebrow>span{height:1px;width:23px;background:var(--green)}h1{font-size:49px;letter-spacing:-2.4px;line-height:1.13;font-weight:650;margin:19px 0 17px}h1>span{color:var(--green)}.intro p{color:var(--muted);line-height:1.8;font-size:12px;margin:0}.intro-actions{align-self:flex-end;margin-bottom:5px;display:flex;align-items:flex-end;flex-direction:column;gap:12px}.source-caption{font-size:9px;font-weight:600;letter-spacing:1.2px;text-align:right;color:var(--muted);margin-bottom:5px}.source-caption>span{display:block;font-size:13px;color:var(--ink);letter-spacing:0;margin-top:6px}.source-dot{display:inline-block;width:9px;height:9px;border-radius:3px;background:var(--green);margin-right:6px}.muted{color:var(--muted);font-size:11px;font-weight:400}.button{border:1px solid var(--border);background:white;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:0 18px;border-radius:9px;font-size:11px;font-weight:650;transition:background .15s,transform .15s}.button:hover:not(:disabled){background:#edf3e7;transform:translateY(-1px)}.button-dark,.button-green{background:var(--deep);color:white;border-color:var(--deep)}.button-dark:hover:not(:disabled),.button-green:hover:not(:disabled){background:#287254}.button-dark{padding:0 18px;height:44px}.button-dark>span{font-size:9px;color:#c4d8ca;background:#ffffff15;padding:3px 5px;margin-left:10px;border-radius:4px}.button svg{width:16px;height:16px}.updated{font-size:10px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.source-status{display:flex;align-items:center;gap:12px;background:#eaf0e3;border:1px solid #dce6d3;border-radius:10px;padding:12px 17px;margin-bottom:21px;font-size:11px;min-height:60px}.source-status>div{display:flex;align-items:center;gap:13px;flex:1}.source-status strong{font-weight:700}.source-status>div>span{color:#6c7966}.source-status.waiting{background:#f4f0e4;border-color:#e9e0ca}.source-status.waiting>div>span{color:#887c5e}.status-dot{background:#769951;width:7px;height:7px;flex-shrink:0;border-radius:50%;box-shadow:0 0 0 4px #779a5012}.waiting .status-dot{background:#b89c54;box-shadow:0 0 0 4px #b89c5412}.text-button{border:0;background:transparent;display:inline-flex;gap:6px;align-items:center;padding:4px 0;font-size:10px;color:var(--green);font-weight:600;white-space:nowrap}.text-button svg{width:14px;height:14px}.filters{padding:18px 22px;margin-bottom:22px}.filter-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.filter-heading>span{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700}.filter-heading svg{width:16px;height:16px;color:var(--green)}.filter-main{display:grid;grid-template-columns:1.25fr 1.15fr 1fr 1fr;gap:16px}.filters label{display:block;font-size:10px;color:var(--muted)}select,input{color:var(--ink);background:white;border:1px solid #dfe4da;border-radius:7px;min-width:0;font-size:11px;height:38px;padding:0 10px;width:100%;outline-offset:1px}select{padding-right:24px}.filters label>select,.filters label>input,.filters label>.input-icon{margin-top:7px}.filter-secondary{display:grid;grid-template-columns:2.1fr 1.25fr 1.1fr auto;align-items:end;gap:16px;margin-top:15px}.filter-secondary fieldset{border:0;padding:0;margin:0;min-width:0}.filter-secondary legend{font-size:10px;color:var(--muted);margin-bottom:7px;padding:0}.range-input{display:flex;border:1px solid #dfe4da;border-radius:7px;height:38px;align-items:center}.range-input input{width:50%;border:0;height:34px}.range-input>span{color:#a5aba1;font-size:10px}.input-icon{position:relative}.input-icon svg{position:absolute;top:12px;left:10px;width:14px;height:14px;color:#8c998c}.input-icon input{padding-left:30px}.filter-secondary .button{height:38px;min-height:38px;width:130px}.form-error{color:#a13737;font-size:11px;margin-top:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:27px}.metric{padding:20px 22px 18px}.metric-label{display:flex;justify-content:space-between;align-items:center;color:#6d796e;font-size:11px;gap:6px}.metric-label svg{color:#7d9576;width:17px;height:17px}.metric-value{font-size:32px;font-weight:650;letter-spacing:-1.5px;line-height:1.3;margin:13px 0 12px;font-variant-numeric:tabular-nums}.metric-value small{font-size:16px;letter-spacing:-.5px;font-weight:500}.metric-note{font-size:9px;color:var(--muted)}.metric-accent{background:#edf3e5;border-color:#e0e8d6}.metric-accent .metric-value{color:var(--green)}.info{display:grid;place-items:center;width:15px;height:15px;border:1px solid #a6b0a1;border-radius:50%;font-size:9px;color:#819277}.explorer-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:20px}.explorer{overflow:hidden}.section-top{display:flex;justify-content:space-between;align-items:center;padding:22px 23px;gap:16px}.small{font-size:8px;letter-spacing:1.4px}h2{font-size:19px;font-weight:650;letter-spacing:-.6px;margin:6px 0 0}.view-tabs{display:flex;background:#f2f4ee;border-radius:7px;padding:3px}.view-tabs button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#84907f;font-size:10px;padding:6px 11px;border-radius:5px}.view-tabs svg{width:13px;height:13px}.view-tabs .selected{background:white;box-shadow:0 1px 4px #0000000c;color:var(--green)}.map-container{position:relative;height:480px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);isolation:isolate}#map{height:100%;background:#edf1e5;background-image:radial-gradient(#a3b29b30 .6px,transparent .6px);background-size:7px 7px;z-index:0}.leaflet-tile-pane{filter:saturate(.55)}.map-label{position:absolute;top:17px;left:18px;background:#ffffffed;box-shadow:0 2px 10px #23351d0a;border:1px solid #dfe7d8;display:flex;align-items:center;gap:8px;z-index:2;border-radius:7px;font-size:10px;font-weight:600;padding:10px 12px}.map-label>span:last-child{background:#eff3e9;font-size:9px;color:#829374;border-radius:4px;padding:2px 5px;margin-left:8px}.map-fit{position:absolute;right:12px;bottom:33px;z-index:2;width:34px;height:34px;display:grid;place-items:center;border:1px solid #ccd6c2;border-radius:6px;background:white;color:var(--green);box-shadow:0 1px 5px #0001}.map-fit svg{width:18px;height:18px}.map-empty{position:absolute;bottom:30px;left:20px;background:#fffffff3;padding:17px 19px;border:1px solid #dde5d4;border-radius:10px;z-index:2;box-shadow:0 4px 18px #3243260a;pointer-events:none;max-width:280px}.map-empty>span{width:28px;height:28px;background:#edf3e5;color:var(--green);border-radius:50%;display:grid;place-items:center;margin-bottom:8px}.map-empty>span svg{width:15px;height:15px}.map-empty strong{font-size:11px}.map-empty p{font-size:10px;line-height:1.7;color:var(--muted);margin:5px 0 0}.leaflet-control-zoom{border:1px solid #dce4d3!important;border-radius:7px!important;overflow:hidden;box-shadow:0 2px 10px #00000008!important}.leaflet-control-zoom a{width:32px!important;height:31px!important;font-weight:400!important;color:var(--green)!important;border-bottom-color:var(--border)!important}.leaflet-control-attribution{font-size:8px!important;background:#ffffffe3!important}.map-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 20px;font-size:9px;color:var(--muted)}.map-footer>span:first-child{display:flex;align-items:center;gap:7px}.map-footer i{display:inline-block;width:12px;height:7px;border:1px solid #507854;background:#b9d2b24d;border-radius:2px}.market-side{padding:25px 23px;display:flex;flex-direction:column}.market-side h2{font-size:18px;line-height:1.4;margin-top:9px}.section-description{font-size:10px;color:var(--muted);line-height:1.7;margin:12px 0 24px}.type-row{margin-bottom:19px}.type-row-head{display:flex;justify-content:space-between;font-size:11px;align-items:center}.type-row-head>span:first-child{display:flex;align-items:center;gap:7px}.type-row-head svg{width:13px;height:13px;color:#7c8d72}.type-row-head strong{font-size:11px;font-weight:600}.type-track{height:4px;border-radius:3px;background:#f0f3ec;margin-top:9px}.type-track>span{height:100%;border-radius:3px;display:block;background:var(--green);transition:width .4s}.type-row:nth-child(2) .type-track>span{background:#a6bd84}.type-row:nth-child(3) .type-track>span{background:#d2ddbd}.type-row:nth-child(4) .type-track>span{background:#819e72}.side-divider{height:1px;background:var(--border);margin:0 0 19px}.side-fact{display:grid;grid-template-columns:1fr auto;align-items:center}.side-fact>span{font-size:10px;color:var(--muted)}.side-fact strong{grid-column:2;grid-row:1/3;font-size:31px;font-weight:500;color:var(--green)}.side-fact p{font-size:10px;margin:3px 0;line-height:1.6}.side-bottom{display:flex;gap:9px;align-items:center;margin-top:auto;padding-top:22px}.side-bottom>svg{width:23px;height:23px;padding:4px;box-sizing:content-box;background:#edf3e5;border-radius:8px;color:var(--green)}.side-bottom p{font-size:9px;color:var(--muted);line-height:1.7;margin:0}.analytics-section{margin-top:34px}.analytics-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:20px}.analytics-heading h2{font-size:25px;margin-top:7px}.selection-label{font-size:10px;color:var(--muted)}.analytics-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.analytics-grid>article{padding:24px}.chart-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.chart-heading h3{font-size:13px;font-weight:650;letter-spacing:-.2px;margin:0}.chart-heading select{width:auto;height:28px;font-size:9px;padding:0 24px 0 8px;background:#f9faf6}.group-table-header{display:grid;grid-template-columns:1fr 60px 110px;font-size:8px;color:#9aa293;margin-top:25px;gap:10px;border-bottom:1px solid var(--border);padding-bottom:10px}.group-table-header span:not(:first-child){text-align:right}.geography-rows{max-height:270px;overflow:auto}.geo-row{border:0;border-bottom:1px solid #f0f2eb;width:100%;padding:12px 0;display:grid;grid-template-columns:1fr 60px 110px;gap:10px;background:white;text-align:left;align-items:center;font-size:10px}.geo-row:hover{background:#f7faf3}.geo-row>span:not(:first-child){text-align:right}.geo-row>span:first-child small{display:block;color:#929c8d;font-size:8px;margin-top:2px}.geo-count{color:var(--muted)}.mini-badge{font-size:8px;color:#819277;border:1px solid #e7ecdf;border-radius:5px;padding:4px 6px;white-space:nowrap}.chart-empty{min-height:178px;display:flex;justify-content:center;align-items:center;text-align:center;color:#9aa28f;font-size:11px;max-width:290px;margin:auto;line-height:1.9}.chart-footnote{font-size:8px;color:#9aa28f;line-height:1.7;margin:18px 0 0}.budget-bars{margin-top:28px;min-height:210px}.budget-row{display:grid;grid-template-columns:65px 1fr 26px;align-items:center;gap:12px;font-size:9px;margin-bottom:22px}.budget-row>span:last-child{text-align:right;color:var(--muted)}.budget-track{height:16px;background:#f0f3ec;border-radius:4px;overflow:hidden}.budget-track>span{height:100%;background:#427254;border-radius:4px;display:block;min-width:0}.budget-row:nth-child(2) .budget-track>span{background:#85a777}.budget-row:nth-child(3) .budget-track>span{background:#adbf8d}.budget-row:nth-child(4) .budget-track>span{background:#c6d4aa}.budget-row:nth-child(5) .budget-track>span{background:#dce4c9}.trend-card{grid-column:1/-1}.chart-heading p{font-size:10px;color:var(--muted);margin:6px 0 0}.trend{height:170px;margin-top:16px;position:relative}.trend svg{width:100%;height:100%;overflow:visible}.trend .chart-empty{height:100%;min-height:0}.trend-labels{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.method-note{display:flex;align-items:flex-start;gap:12px;margin:24px 0 30px;padding:4px 0;max-width:1000px}.method-note>span{margin-top:3px;width:18px;height:18px;border:1px solid #b8c4ad;border-radius:50%;display:grid;place-items:center;color:#839477;font-size:10px;flex-shrink:0}.method-note p{font-size:9px;color:#8c9685;line-height:1.9;margin:0}.method-note strong{color:#6d7d65;font-weight:600}footer{border-top:1px solid #dee4d6;display:flex;align-items:center;gap:25px;padding:22px 0 28px;font-size:8px;color:#929b89}footer>span:last-child{margin-left:auto}.footer-brand{font-size:21px;font-weight:750;letter-spacing:-1px;color:var(--green)}.list-toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;border-top:1px solid var(--border);gap:12px;font-size:10px}.list-toolbar label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px;white-space:nowrap}.list-toolbar select{width:auto;height:28px;font-size:9px}.table-scroll{overflow:auto}.offer-table{border-collapse:collapse;width:100%;min-width:540px;font-size:10px}.offer-table th{font-size:8px;font-weight:500;color:var(--muted);text-align:left;padding:9px 17px;background:#f8faf5;border-bottom:1px solid var(--border);white-space:nowrap}.offer-table td{padding:14px 17px;border-bottom:1px solid #edf0e8}.offer-table td:first-child{max-width:300px}.offer-title{display:block;text-align:left;border:0;padding:0;background:none;color:var(--green);font-size:11px;font-weight:650}.offer-address{font-size:9px;color:var(--muted);display:block;margin-top:4px}.offer-table td:nth-child(3){font-weight:650;white-space:nowrap}.offer-table td:nth-child(4){color:var(--muted);white-space:nowrap}.empty-state{height:350px;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);padding:30px}.empty-state svg{width:32px;height:32px;color:#a9b99b}.empty-state h3{font-size:14px;color:#68785e;font-weight:550;margin:16px 0 6px}.empty-state p{font-size:10px;max-width:290px;line-height:1.9}.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;gap:10px;font-size:9px;color:var(--muted)}.pagination>div{display:flex;gap:6px}.button-small{min-height:29px;padding:0 10px;font-size:9px}.price-marker{background:var(--deep);color:white;border:2px solid white;border-radius:16px;padding:6px 11px;font-size:10px;font-family:Manrope,Arial,sans-serif;font-weight:650;box-shadow:0 2px 7px #102c2a25;white-space:nowrap;display:inline-block}.point-price{background:white;color:var(--green);border:1px solid var(--green);font-size:9px;padding:4px 8px}.marker-cluster{border-radius:50%;background:#215b4326;display:grid;place-items:center}.marker-cluster>div{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--deep);color:white;font-size:10px}.leaflet-popup-content{font-family:Manrope,Arial,sans-serif;font-size:11px;line-height:1.8}.leaflet-popup-content a{color:var(--green);font-weight:650}.leaflet-popup-content strong{font-size:15px}.toast{position:fixed;right:25px;bottom:25px;background:#203d2c;color:white;border-radius:10px;padding:15px 20px;max-width:380px;z-index:10000;font-size:12px;box-shadow:0 6px 30px #0002}dialog{border:1px solid var(--border);border-radius:18px;padding:0;max-width:520px;width:calc(100% - 30px);color:var(--ink)}dialog::backdrop{background:#132c2460;backdrop-filter:blur(3px)}.dialog-content{padding:32px}.dialog-close{position:absolute;right:16px;top:16px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:#f0f4eb;color:var(--green)}.dialog-close svg{width:17px;height:17px}.detail-type{font-size:10px;color:var(--muted);margin-bottom:12px}.dialog-content h2{font-size:23px;line-height:1.4;max-width:380px}.detail-address{color:var(--muted);font-size:11px;line-height:1.8;margin-bottom:20px}.detail-price{font-size:31px;font-weight:650;letter-spacing:-1px}.detail-specs{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px;margin:20px 0}.detail-specs div{background:#f6f8f1;padding:12px;border-radius:8px}.detail-specs span{display:block;color:var(--muted);font-size:9px;margin-bottom:4px}.history-list{list-style:none;padding:0;margin:12px 0 24px;font-size:10px}.history-list li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.loading{opacity:.55;pointer-events:none}.spinning svg{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.page,.header-inner{max-width:1480px}.map-container{height:540px}h1{font-size:55px}}
@media(max-width:1100px){.page{padding:30px 28px 0}.header-inner{padding:0 28px;gap:15px}.brand-description{display:none}nav{gap:22px}.explorer-layout{grid-template-columns:minmax(0,1fr) 235px}.market-side{padding:23px 19px}.metric{padding:18px}.metric-value{font-size:28px}.metric-label{font-size:10px}.filter-main{gap:12px}.filter-secondary{gap:12px}.source-status>div{display:block}.source-status>div>span{display:block;font-size:10px;margin-top:3px}.map-container{height:470px}.analytics-grid{gap:15px}.analytics-grid>article{padding:20px}footer{gap:15px}.intro h1{font-size:45px}}
@media(max-width:800px){.site-header{height:72px}.header-inner{padding:0 20px}.brand{font-size:29px}.brand-mark{width:34px;height:36px}.region-label{font-size:9px;padding:7px 10px}nav{display:none}.page{padding:27px 20px 0}.intro{margin-bottom:24px;gap:15px}.intro h1{font-size:39px;letter-spacing:-1.7px}.eyebrow{font-size:8px;letter-spacing:1.1px}.intro p{font-size:10px}.intro-actions{gap:10px;max-width:190px}.source-caption{font-size:8px}.source-caption>span{font-size:11px}.intro-actions .button{font-size:10px;padding:0 12px}.button-dark>span{display:none}.updated{font-size:8px;text-align:right}.filter-main{grid-template-columns:1fr 1fr;gap:14px}.filter-secondary{grid-template-columns:1fr 1fr}.address-filter{grid-column:1/-1}.filter-secondary .button{grid-column:1/-1;width:100%;margin-top:2px}.filters{padding:17px}.metrics{grid-template-columns:repeat(2,1fr);gap:12px}.metric-value{font-size:30px}.explorer-layout{grid-template-columns:1fr}.market-side{display:grid;grid-template-columns:1fr 1.5fr;gap:8px 30px}.market-side>.eyebrow,.market-side>h2,.market-side>.section-description{grid-column:1}.market-side>.section-description{margin:0}.type-breakdown{grid-column:2;grid-row:1/5}.type-row{margin-bottom:14px}.side-divider,.side-bottom{display:none}.side-fact{grid-column:1;margin-top:8px}.side-fact strong{font-size:25px}.side-fact p{font-size:9px}.analytics-heading{align-items:flex-end}.analytics-heading h2{font-size:24px}.selection-label{font-size:8px;max-width:120px;text-align:right}.analytics-grid{grid-template-columns:1fr}.trend-card{grid-column:auto}.budget-bars{min-height:190px}.map-container{height:460px}.map-label{font-size:9px;left:12px}.map-label>span:last-child{display:none}.map-empty{left:12px;bottom:30px;max-width:230px;padding:15px}.map-empty strong{font-size:10px}.map-empty p{font-size:9px}.section-top{padding:19px}.section-top h2{font-size:18px}.small{font-size:7px}.geography-card .chart-empty{min-height:140px}footer{flex-wrap:wrap;gap:10px 20px}footer>span:last-child{margin-left:0;width:100%;padding-left:61px}.method-note p{font-size:8px}.group-table-header,.geo-row{grid-template-columns:1fr 55px 100px}}
@media(max-width:450px){.page{padding:22px 14px 0}.header-inner{padding:0 14px}.region-label{font-size:8px}.brand{font-size:27px}.intro{position:relative;align-items:flex-start;flex-direction:column;gap:20px}.intro h1{font-size:40px;margin:15px 0}.intro-actions{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;max-width:none;width:100%;margin:0}.source-caption{text-align:left;margin-bottom:0}.intro-actions .button{height:39px;min-height:39px}.updated{width:100%;text-align:left;font-size:8px}.desktop-break{display:none}.intro p{font-size:11px;max-width:300px}.source-status{padding:12px;font-size:10px;gap:10px}.source-status>div>span{font-size:9px;max-width:230px}.source-status .text-button span{display:none}.filters{padding:15px}.metrics{gap:9px}.metric{padding:16px 13px}.metric-value{font-size:26px}.metric-value small{font-size:13px}.metric-label{font-size:9px}.metric-note{font-size:8px;line-height:1.6}.section-top{padding:17px 14px}.section-top h2{font-size:16px}.view-tabs button{padding:6px 8px;font-size:9px}.view-tabs svg{display:none}.map-container{height:440px}.map-label{font-size:8px;padding:8px 10px}.map-empty{bottom:30px;max-width:210px}.map-footer{font-size:8px;padding:11px 13px}.market-side{padding:20px;gap:5px 20px}.market-side h2{font-size:16px}.market-side .section-description{font-size:9px}.type-row-head{font-size:9px}.type-row-head svg{display:none}.type-row-head strong{font-size:10px}.chart-heading h3{font-size:12px}.analytics-grid>article{padding:20px 17px}.group-table-header,.geo-row{grid-template-columns:1fr 40px 95px}.geo-row{font-size:9px}.chart-footnote{font-size:7px}.list-toolbar{padding:13px;font-size:9px}.list-toolbar label{font-size:8px}.list-toolbar select{font-size:8px;max-width:125px}.pagination{padding:13px}.selection-label{display:none}.dialog-content{padding:28px 23px}.dialog-content h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Nationwide territory selection. */
.filter-main{grid-template-columns:1.15fr 1.2fr 1fr 1fr .85fr}
@media(max-width:1000px){.filter-main{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.filter-main{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-main>label:first-child{grid-column:1/-1}}

/* Keep the selected territory, loading state and narrow layouts readable. */
.skip-link{top:10px;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus-visible{width:auto;height:auto;padding:12px;overflow:visible;clip-path:none}
.region-label{min-width:0;max-width:250px}
#active-territory{overflow:hidden;text-overflow:ellipsis}
.filter-main{align-items:end}
.filter-main>label,.metrics>.card,.chart-heading>*,.section-top>*,.geo-row>span{min-width:0}
.metric{display:flex;flex-direction:column}
.metric-label{min-height:32px;align-items:flex-start}
.metric-value{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;overflow-wrap:anywhere}
.metric-value small{white-space:nowrap}
.metric-note{margin-top:auto}
.source-status>div{min-width:0}
.map-label{max-width:calc(100% - 80px)}
#map-territory{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#map-scope{flex-shrink:0}
.map-footer{flex-wrap:wrap;align-items:flex-start}
#map-counter{text-align:right;margin-left:auto;overflow-wrap:anywhere}
.geo-row>span:first-child{overflow-wrap:anywhere}
.offer-object,.offer-address,.dialog-content{overflow-wrap:anywhere}
.offer-title,.offer-open .text-button{min-height:32px}
.offer-table .offer-open{width:48px}
.offer-table .offer-area{white-space:nowrap}
.dialog-content h2{padding-right:20px}
dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.detail-specs>div{min-width:0}
.is-loading .metrics,.is-loading .analytics-section .card:not(.ingestion-card){opacity:.55}
.is-loading .explorer{opacity:.65}
.is-loading #map,.is-loading #offers-body{pointer-events:none}
#list-view[aria-busy=true] #offers-body{opacity:.45;pointer-events:none}
#map-view[aria-busy=true] #map{opacity:.65}
#apply-filters[aria-busy=true] svg{animation:spin 1s linear infinite}

@media(max-width:800px){
  .metric-label{min-height:30px}
  .map-label{max-width:calc(100% - 68px)}
  .map-footer{font-size:10px}
  .geo-row{font-size:11px}
  .geo-row>span:first-child small{font-size:10px}
}
@media(max-width:650px){
  .filters label{font-size:11px}
  .filters input,.filters select{font-size:16px;min-height:44px}
  .filter-secondary .button{min-height:44px;height:44px;font-size:12px}
  .range-input{height:46px}
  .range-input input{min-width:0;padding:0 10px}
  .input-icon{min-height:46px}
  .metric-value{font-size:clamp(20px,6.1vw,29px);letter-spacing:-.7px}
  .metric-value small{font-size:13px}
  .metric-label{font-size:10px}
  .metric-note{font-size:9px}
  .region-label{max-width:145px;font-size:10px}
  .source-status{font-size:11px}
  .source-status>div>span{font-size:10px;max-width:none}
  .market-side{display:block;padding:20px}
  .market-side h2{font-size:20px}
  .market-side .section-description{font-size:11px}
  .type-breakdown{margin:18px 0 20px}
  .side-fact{grid-template-columns:minmax(0,1fr) auto;gap:0 12px;border-top:1px solid var(--border);padding-top:14px}
  .side-fact>span,.side-fact p{font-size:11px}
  .side-fact strong{font-size:30px}
  .list-toolbar{align-items:flex-start;flex-wrap:wrap;gap:10px;font-size:12px}
  .list-toolbar label{font-size:10px;flex-wrap:wrap}
  .list-toolbar select{font-size:12px;min-height:36px;max-width:none}
  .table-scroll{overflow:visible}
  .offer-table,.offer-table tbody{display:block;min-width:0;width:100%}
  .offer-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .offer-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:'object open' 'price price' 'area m2';gap:10px 16px;padding:18px;border-bottom:1px solid var(--border);position:relative}
  .offer-table td{display:block;padding:0;border:0;min-width:0}
  .offer-table td:first-child{max-width:none;grid-area:object;grid-column:1/-1;padding-right:42px}
  .offer-table .offer-open{grid-area:open;justify-self:end;align-self:start;width:36px;position:absolute;right:0;top:0}
  .offer-open .text-button{width:36px;height:36px;justify-content:center;border:1px solid var(--border);border-radius:8px}
  .offer-title{font-size:14px;line-height:1.5;min-height:0}
  .offer-address{font-size:11px;line-height:1.7;margin-top:5px}
  .offer-table .offer-price{grid-area:price;font-size:22px;font-weight:700;white-space:normal}
  .offer-table .offer-area{grid-area:area;white-space:normal;font-size:13px}
  .offer-table .offer-m2{grid-area:m2;white-space:normal;font-size:13px;color:var(--ink)}
  .offer-area:before,.offer-m2:before{content:attr(data-label);display:block;font-size:10px;color:var(--muted);margin-bottom:3px}
  .pagination{font-size:11px;flex-wrap:wrap;padding:16px;gap:12px}
  .pagination>div{margin-left:auto}
  .pagination .button{min-height:40px;font-size:11px}
  .chart-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}
  .chart-heading h3{font-size:14px}
  .group-table-header,.geo-row{grid-template-columns:minmax(0,1fr) 45px 90px;gap:8px}
  .group-table-header{font-size:9px}
  .geo-row{font-size:11px}
  .map-container{height:420px}
  .map-label{font-size:11px}
  .map-footer{gap:7px;font-size:10px}
  .detail-address,.detail-specs{font-size:13px}
  .detail-specs span,.detail-type{font-size:11px}
}
@media(max-width:360px){
  .filter-main{grid-template-columns:minmax(0,1fr)}
  .filter-secondary{grid-template-columns:minmax(0,1fr)}
  .region-label{max-width:125px;font-size:9px}
  .metric{padding:14px 11px}
  .metric-label{font-size:9px}
  .metric-value{font-size:21px}
  .metric-value small{font-size:12px}
  .metric-note{font-size:8px}
  .intro-actions{gap:8px}
  .section-top{flex-wrap:wrap}
  .view-tabs{margin-left:auto}
  .map-container{height:360px}
  .group-table-header,.geo-row{grid-template-columns:minmax(0,1fr) 37px 75px}
  .dialog-content{padding:26px 18px}
  .detail-specs{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){#apply-filters[aria-busy=true] svg{animation:none}}

/* Analytics controls and labels stay readable on narrow screens. */
.geography-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.analytics-grid>article{min-width:0}
.geography-controls label{display:flex;flex:1 1 170px;flex-direction:column;gap:5px;min-width:0;font-size:10px;color:var(--muted)}
.geography-controls select{width:100%;height:34px;font-size:11px;min-width:0}
.chart-heading>label,.chart-heading select{max-width:100%}
#city-hint{display:block;font-size:10px;line-height:1.5;margin-top:6px;color:var(--muted)}
.geography-card .group-table-header{margin-top:18px}
.trend{height:auto;min-width:0}
.trend-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.trend-scroll svg{display:block;max-width:none;overflow:visible;flex-shrink:0}
.trend-scroll text{stroke:none;font-family:inherit}
.trend-value{fill:var(--deep);font-size:13px;font-weight:650;paint-order:stroke;stroke:var(--card)!important;stroke-width:4px;stroke-linejoin:round}
.trend-date{fill:var(--ink);font-size:11px}
.trend-sample{fill:var(--muted);font-size:10px}
.trend-summary{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:10px;color:var(--muted);margin-top:10px}
.trend-freshness{flex-basis:100%}
.affordability-card{grid-column:1/-1;min-width:0}
.analysis-budget{display:flex;flex-direction:column;gap:5px;font-size:10px;color:var(--muted)}
.analysis-budget>span{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px;color:var(--ink)}
.analysis-budget input{width:110px;min-width:0;height:36px;border:1px solid var(--border);border-radius:7px;padding:6px 9px;background:#f9faf6;color:var(--ink)}
.analysis-budget input[aria-invalid=true]{border-color:#b95545}
.analysis-error{font-size:11px;color:#a13e2c;margin:12px 0 0}
.affordability-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}
.affordability-item{display:flex;flex-direction:column;gap:8px;padding:16px;background:#f5f8f0;border-radius:10px;min-width:0}
.affordability-item>span{font-size:11px;color:var(--muted)}
.affordability-item strong{font-size:25px;font-weight:600;color:var(--deep);overflow-wrap:anywhere}
.affordability-item strong small{font-size:13px;font-weight:500}
.affordability-item>small{font-size:10px;color:var(--muted)}
.affordability-results>.chart-empty{grid-column:1/-1;min-height:100px}
@media(max-width:800px){.affordability-results{grid-template-columns:repeat(2,minmax(0,1fr))}.affordability-card{grid-column:auto}}
@media(max-width:400px){.affordability-item{padding:12px}.affordability-item strong{font-size:21px}}

/* Origin and collection status stay visible across the national catalogue. */
.filter-main{grid-template-columns:repeat(3,minmax(0,1fr))}
.source-caption{max-width:360px}
.source-caption #source-names{font-size:13px;letter-spacing:0}
.sources-card{padding:22px;margin:0 0 24px}
.live-counters{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;margin-bottom:16px}
.live-counters>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.live-counter-label{display:flex;align-items:center;gap:7px;font-size:12px}
.live-counters strong{font-size:32px;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.live-counters #live-active,.live-counter-status{font-size:12px;color:var(--muted)}
.live-counter-status{text-align:right;line-height:1.6}
.live-counter-status small{font-size:10px}
.live-stale #live-status{color:#916b26}
@media(max-width:650px){.live-counters{align-items:flex-start;padding:16px;flex-direction:column;gap:12px}.live-counter-status{text-align:left}.live-counters strong{font-size:29px}}
.sources-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.source-item{min-width:0;padding:13px;border:1px solid var(--border);border-radius:9px;display:flex;flex-direction:column;gap:7px}
.source-item>div{display:flex;justify-content:space-between;align-items:start;gap:8px;font-size:11px}
.source-item a{font-weight:650;overflow-wrap:anywhere}
.source-item strong{white-space:nowrap;font-size:12px}
.source-health{font-size:10px;color:var(--green)}
.source-health.source-waiting{color:#89794b}
.source-item small{font-size:9px;color:var(--muted)}
.offer-source{display:block;margin-top:5px;font-size:10px;color:var(--green)}
@media(min-width:1200px){.filter-main{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:900px){.sources-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.filter-main{grid-template-columns:repeat(2,minmax(0,1fr))}.source-filter{grid-column:1/-1}.sources-card{padding:17px}.sources-card>.chart-heading{align-items:start;gap:10px;flex-direction:column}.source-item{padding:10px}.source-item>div{flex-direction:column;gap:5px}.source-item a{font-size:10px}.source-health{font-size:9px}}
/* Published property facts and their coverage. */
.property-coverage-card,.property-years-card,.property-comparison-card{padding:26px;min-width:0}
.property-comparison-card{grid-column:1/-1}
.property-coverage-row{margin:16px 0}.property-coverage-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}.property-coverage-row small{font-weight:400;color:#758070}
.property-coverage-track{height:5px;background:#eff2e9;border-radius:5px;margin-top:8px;overflow:hidden}.property-coverage-track i{display:block;height:100%;background:#799665;border-radius:5px}
.property-table{font-size:12px;margin:18px 0;max-height:390px;overflow:auto}.property-table-head,.property-table-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(65px,.8fr) minmax(75px,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0e7}.property-table-head{color:#718069;font-size:11px}.property-table-row small{display:block;color:#758070;margin-top:5px;font-size:11px}.property-table-row>span:nth-child(2),.property-table-row>strong,.property-table-head>span:not(:first-child){text-align:right}.property-table-row span,.property-table-row strong{overflow-wrap:anywhere}
.property-dimension{display:flex;align-items:center;gap:12px;font-size:13px}.property-dimension select{min-width:0;max-width:100%;padding:9px;border:1px solid #dfe6d4;border-radius:8px;background:#fff}
.detail-facts{margin:22px 0}.detail-facts dl{margin:12px 0}.detail-facts dl>div{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,1.5fr);gap:16px;padding:12px 0;border-bottom:1px solid #edf0e7}.detail-facts dt{color:#718069;font-size:13px}.detail-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}.detail-facts dd small{display:block;font-size:10px;color:#758070;margin-top:5px}.detail-description p{white-space:pre-line;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:600px){.property-coverage-card,.property-years-card,.property-comparison-card{padding:20px}.property-table-head,.property-table-row{gap:8px;grid-template-columns:minmax(0,1.4fr) 60px 77px}.property-dimension{align-items:flex-start;flex-direction:column;gap:7px}.property-dimension select{width:100%}}
.agent-section{margin-top:36px}.agent-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.agent-metric{padding:24px;text-align:left;display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);min-width:0}.agent-metric[aria-pressed=true]{border-color:#729766;background:#f2f7eb}.agent-metric>span{font-size:12px;color:var(--muted)}.agent-metric strong{font-size:34px;color:var(--deep);line-height:1.2;overflow-wrap:anywhere}.agent-metric small{color:var(--muted);font-size:10px}.agent-worklist{padding:26px}.agent-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.agent-toolbar h3{margin:0;font-size:17px}.agent-toolbar p{font-size:11px;color:var(--muted);margin:8px 0}.agent-controls{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.agent-controls label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:var(--muted)}.agent-controls select{border:1px solid var(--border);border-radius:8px;padding:8px;background:#fff;color:var(--ink)}
.agent-lead{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(140px,1fr) auto;gap:20px;align-items:center;padding:20px 0;border-top:1px solid var(--border)}.agent-lead:first-child{margin-top:20px}.agent-lead>div{min-width:0}.agent-lead p{margin:5px 0;font-size:12px;overflow-wrap:anywhere}.agent-lead small{display:block;font-size:10px;color:var(--muted)}.agent-open{font-size:13px;text-align:left}.agent-lead-price{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.agent-lead-price strong{font-size:17px}.agent-lead-price span{color:#3c7847;font-size:12px}.agent-compare{font-size:11px}.agent-worklist>a[aria-disabled=true]{pointer-events:none;opacity:.5}
.detail-comparables{margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.comparable-summary{padding:16px;background:#f2f7eb;border-radius:10px;margin:20px 0}.comparable-summary p{font-size:12px;margin:10px 0 0}.comparable-criteria{padding-left:18px;color:var(--muted);font-size:11px}.comparable-list{max-height:340px;overflow:auto;margin:20px 0}.comparable-list>div{display:flex;gap:15px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);font-size:12px}.comparable-list span{min-width:0;overflow-wrap:anywhere}.comparable-list small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.comparable-list strong{flex-shrink:0;font-size:11px}.comparable-report{margin:10px 0}
@media(max-width:1000px){.agent-toolbar{flex-direction:column}.agent-controls{width:100%}.agent-lead{grid-template-columns:minmax(0,1.5fr) minmax(110px,1fr)}.agent-compare{grid-column:1/-1;justify-self:start}}
@media(max-width:600px){.agent-metrics{gap:8px}.agent-metric{padding:14px 10px;gap:7px}.agent-metric strong{font-size:24px}.agent-metric>span{font-size:9px}.agent-metric small{font-size:8px}.agent-worklist{padding:20px 17px}.agent-controls{gap:10px}.agent-controls select{max-width:130px}.agent-lead{gap:12px;grid-template-columns:minmax(0,1.4fr) minmax(95px,1fr)}.agent-lead-price strong{font-size:14px}.agent-lead-price span,.agent-open,.agent-lead p{font-size:11px}.comparable-list>div{font-size:11px}.agent-controls .button{font-size:10px}}

/* First discoveries per Moscow day; preserve exact values on narrow screens. */
.live-counters .live-identity-note{display:block;max-width:460px;font-size:10px;color:var(--muted);line-height:1.6;margin-top:5px}
.ingestion-card{grid-column:1/-1}
.ingestion-chart{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-top:20px}
.ingestion-chart svg{display:block;max-width:none;stroke:none}
.ingestion-card .chart-footnote{font-size:11px;line-height:1.6}
.ingestion-bar{fill:var(--accent,#526c5d)}
.ingestion-zero{fill:#cbd3cc}
.ingestion-axis{stroke:var(--border)}
.ingestion-value{fill:var(--ink);font-size:11px;font-weight:600}
.ingestion-date{fill:var(--muted);font-size:10px}
.ingestion-details{font-size:12px;margin-top:10px}
.ingestion-details summary{cursor:pointer;min-height:35px;line-height:1.7}
.ingestion-table-scroll{max-height:320px;overflow:auto;overscroll-behavior:contain}
.ingestion-details table{border-collapse:collapse;width:100%;margin-top:0;font-variant-numeric:tabular-nums}
.ingestion-details thead th{position:sticky;top:0;background:var(--card);z-index:1}
.ingestion-details th,.ingestion-details td{padding:8px 6px;border-bottom:1px solid var(--border);text-align:right}
.ingestion-details th:first-child{text-align:left}
@media(max-width:650px){.ingestion-details{font-size:10px}.ingestion-card .mini-badge{font-size:9px}.live-counters .live-identity-note{font-size:10px}}

/* Keep native iPhone controls readable, including in landscape. */
@media(max-width:650px), (hover:none) and (pointer:coarse){
  input,select,.filters input,.filters select,.list-toolbar select,.chart-heading select,
  .geography-controls select,.analysis-budget input,.agent-controls select,.property-dimension select{
    font-size:16px;min-height:44px
  }
  .analysis-budget input{height:44px}
  .range-input{height:46px}
  .range-input input{height:44px}
  .dialog-close{width:44px;height:44px;right:8px;top:8px}
  .dialog-content h2{padding-right:32px}
}
