*{box-sizing:border-box}body{margin:0;background:#f3f6f3;color:#17322d;font:14px/1.65 "Segoe UI","Microsoft YaHei",Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:#197b61;text-decoration:none}h1,h2,h3,h4,p{margin:0}button:focus-visible,a:focus-visible,input:focus,select:focus{outline:2px solid #277e68;outline-offset:2px}.shell{max-width:1240px;margin:0 auto;padding:32px 24px 18px}.hero{padding:0 4px 28px;border-bottom:1px solid #dbe5df;margin-bottom:24px}.eyebrow{font-size:12px;letter-spacing:.24em;color:#578273;font-weight:700;margin-bottom:10px}.hero-line{display:flex;align-items:center;justify-content:space-between;gap:20px}.hero h1{font-size:30px;letter-spacing:-.02em;line-height:1.3}.hero>p{margin-top:10px;color:#6e827b;font-size:15px}.quiet-link{font-size:12px;white-space:nowrap}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;color:#73877d}.hero-actions button{padding:9px 16px;border:1px solid #d9c7d2;color:#975173;border-radius:11px;background:white;font-weight:700}.pill{display:inline-block;background:#e5eee8;color:#35725f;padding:4px 10px;border-radius:7px;font-size:12px;font-weight:600}.pill.neutral{background:#f1f4f1;color:#6b7e75}.panel{background:#fff;border:1px solid #e1e9e3;border-radius:18px;padding:24px;margin-bottom:22px;box-shadow:0 8px 24px #1c4d3004}.section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.section-title h2{font-size:19px;line-height:1.4}.section-title p{color:#7a8d84;font-size:12px;margin-top:3px}.step{display:grid;place-items:center;flex:0 0 34px;height:34px;background:#e8f1eb;border-radius:10px;color:#288269;font-weight:700;font-size:11px}label{display:block;font-size:12px;font-weight:600;color:#4f6a5e;margin-bottom:6px}input:not([type=checkbox]):not([type=hidden]),select{width:100%;height:43px;background:#fff;border:1px solid #cfded3;border-radius:9px;padding:10px 12px;color:#224237;min-width:0}input::placeholder{color:#87938c;font-size:12px}.region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:740px}.field-hint{font-size:11px;color:#789083;margin-top:8px}.query-grid{display:grid;grid-template-columns:minmax(0,1fr) 150px 148px;gap:12px;align-items:end;margin-top:14px}.primary{background:#187b5c;color:#fff;border:0;border-radius:9px;padding:11px 14px;height:43px;font-weight:700}.primary:hover{background:#11674b}.query-note{display:flex;gap:12px;align-items:center;color:#7a8c82;font-size:11px;margin-top:10px;flex-wrap:wrap}.text-button{background:none;border:0;padding:0;color:#1a8268;font-size:11px}.query-panel #status{font-size:12px;color:#187b5c;margin-top:6px;min-height:20px}#status.error{color:#ad5349}.overview{margin:27px 0 24px}.freshness{margin-left:auto;color:#a06b32;font-size:11px;border:1px solid #e6d4b7;background:#fff7e6;border-radius:7px;padding:3px 8px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{min-width:0;background:#fff;border:1px solid #e0e8e1;border-radius:15px;padding:18px 20px;position:relative;min-height:150px}.metric.featured{grid-column:span 1;background:linear-gradient(110deg,#e6eee9,#f5f7ef);border-color:#d2e1d7}.residential-card{grid-column:span 3}.office-card{grid-column:span 2}.card-heading,.item-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.card-heading{margin-bottom:14px}.card-heading h3{font-size:13px;font-weight:650;color:#476858}.metric-label{font-size:12px;color:#5e786a}.grouped-metrics{display:grid;gap:20px}.residential-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.office-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-item{min-width:0}.metric-item+.metric-item{border-left:1px solid #e8eee9;padding-left:20px}.metric-value{display:flex;align-items:baseline;gap:6px;margin:8px 0;flex-wrap:wrap}.metric-value strong{font-size:28px;font-weight:650;line-height:1.15;letter-spacing:-.04em;white-space:nowrap}.metric.featured .metric-value strong{font-size:43px;color:#1b7258}.metric-value small{color:#8a998f;font-size:11px;white-space:nowrap}.metric-note{display:block;color:#86978b;font-size:10px;line-height:1.5}.module-state{position:static;font-size:10px;color:#8a9b90;white-space:nowrap}.metric.featured .module-state{color:#668b70}[data-status=error] .module-state{color:#b0594d}.overview.stale .metric{opacity:.68}.map-panel{padding-bottom:15px}.layers{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:center;margin:-2px 0 14px}.layers label{font-size:11px;font-weight:400;margin:0;display:flex;align-items:center;gap:5px;color:#627c6e}.layers input{accent-color:#1a7b5c;margin:0}.layers i{width:7px;height:7px;border-radius:50%;background:var(--layer);display:inline-block}#map{height:380px;border-radius:11px;overflow:hidden;background:#e7eee5;position:relative}#mapFallback{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#71917d;padding:20px;text-align:center}#mapFallback strong{font-size:17px}#mapFallback p{font-size:12px;margin-top:6px}.map-dot{width:14px;height:14px;border:2px solid white;border-radius:50%;box-shadow:0 2px 8px #0004}.tabs{display:flex;gap:6px;border-bottom:1px solid #e6ede6;padding-bottom:9px;overflow-x:auto;scrollbar-width:thin}.tabs button{flex:0 0 auto;padding:9px 15px;border:0;border-radius:8px;background:transparent;color:#76877b;font-weight:600;font-size:12px}.tabs button.active{background:#e9f2ed;color:#176b51}.detail-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin:22px 0 14px}.detail-heading h3{font-size:17px}.detail-heading p{font-size:11px;color:#8a988f;margin-top:3px}.detail-metrics{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.detail-metrics span{padding:5px 9px;border:1px solid #e1e9e2;border-radius:7px;font-size:11px;color:#627b6b;background:#fbfcfa}.group-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 20px}.group-card{padding:12px;border:1px solid #eee5eb;border-radius:10px;background:#fdfafb;min-width:0}.group-card strong{display:block;font-size:11px;color:#965277}.group-card p{font-size:15px;font-weight:700;margin-top:5px}.group-card small{display:block;color:#aa929e;font-size:10px;margin-top:3px}.band-wrap h4{font-size:12px;color:#657e6e;margin-bottom:6px}.table-scroll{max-width:100%;overflow-x:auto}.band-table{width:100%;font-size:11px;border-collapse:collapse;margin-bottom:20px}.band-table th,.band-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #eaf0e9;white-space:nowrap}.band-table th{font-weight:600;color:#7a8e7f;background:#f6f9f5}.detail-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.filter{display:flex;align-items:center;gap:6px}.filter label{margin:0;font-size:11px;white-space:nowrap}.filter select{width:auto;max-width:200px;height:34px;padding:5px 8px;font-size:11px}.sub-switch{display:flex;border:1px solid #d9e4da;border-radius:7px;overflow:hidden}.sub-switch button{background:#fff;border:0;font-size:11px;color:#7a8c7e;padding:7px 10px}.sub-switch button.active{background:#eaf2ec;color:#24745a}.secondary{padding:8px 12px;color:#277859;background:#f1f7f2;border:1px solid #d6e5d8;border-radius:8px;font-size:11px;margin-left:auto}.detail-message{font-size:12px;color:#7d8c81;margin:8px 0}.detail-message.error{color:#a65a4a}.list-table{border-collapse:collapse;font-size:11px;width:100%;min-width:680px}.list-table th,.list-table td{padding:11px 10px;text-align:left;border-bottom:1px solid #eaf0e9;vertical-align:top}.list-table th{color:#7d8c7f;font-weight:600;background:#f5f8f3;white-space:nowrap}.list-table tr:nth-child(even) td{background:#fcfdfb}.list-table td:first-child{min-width:160px;max-width:280px}.list-table td small{display:block;color:#99a698;font-size:10px;margin-top:2px}.row-point{border:0;background:transparent;padding:0;color:#28785c;text-align:left;font-size:11px}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:17px;font-size:11px;color:#7c8d7e}.pagination button{border:1px solid #d9e4d7;background:#fff;padding:5px 12px;border-radius:7px;color:#647e69;font-size:11px}.source-note{margin-top:18px;padding-top:13px;border-top:1px solid #ecf0e9;font-size:10px;color:#879488;line-height:1.8}.source-panel summary{cursor:pointer;color:#64836b;font-size:13px;font-weight:600}.source-panel ul{font-size:11px;color:#7c8d7d;padding-left:18px;margin:16px 0 0}.sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.sources article{background:#f7f9f5;padding:11px 13px;border-radius:9px;min-width:0}.sources h4{font-size:11px;color:#56725e}.sources p{font-size:10px;color:#8c9b8b;margin-top:4px}footer{font-size:10px;color:#9aaa99;display:flex;justify-content:space-between;gap:12px;margin-top:28px}#officeSwitch[hidden],#groupWrap[hidden],#groupCards[hidden],#bandWrap[hidden],[hidden]{display:none!important}.region-picker{position:relative}.region-picker input:not([type=hidden]){padding-right:40px}.region-toggle{position:absolute;right:2px;top:2px;bottom:2px;width:35px;border:0;background:transparent;border-radius:7px;color:#6d8376}.region-options{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:100;background:#fff;border:1px solid #d4e1d8;border-radius:10px;padding:5px;box-shadow:0 12px 30px #173a2020;max-height:280px;overflow:auto}.region-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 9px;text-align:left;border:0;border-radius:6px;background:transparent;color:#315744;font-size:12px}.region-options button:hover,.region-options button.active{background:#eaf3ec}.region-options small{font-size:10px;color:#93a38f;text-align:right;max-width:45%;overflow-wrap:anywhere}.region-empty{padding:12px;color:#93a38f;font-size:12px}
@media(max-width:760px){.shell{padding:22px 14px 16px}.hero{padding:0 3px 23px;margin-bottom:20px}.hero-line{align-items:flex-start;flex-direction:column;gap:9px}.hero h1{font-size:25px;max-width:100%}.hero>p{font-size:12px}.eyebrow{font-size:9px;letter-spacing:.19em}.hero-actions{gap:8px;font-size:11px;margin-top:16px}.hero-actions button{padding:8px 12px;font-size:11px}.pill{font-size:10px}.panel{padding:17px;border-radius:15px;margin-bottom:18px}.section-title{gap:10px;flex-wrap:wrap;margin-bottom:17px}.section-title h2{font-size:17px}.section-title p{font-size:10px;max-width:260px}.step{flex-basis:30px;height:30px;border-radius:8px}.region-grid{gap:10px}.query-grid{grid-template-columns:minmax(0,1fr) 128px;gap:10px}.query-grid>div:first-child{grid-column:1/-1}.query-grid .primary{width:128px}.field-hint{font-size:10px}.query-note{gap:7px;font-size:10px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:15px 13px;min-height:124px;border-radius:12px}.metric-label{font-size:11px}.metric-value strong{font-size:24px}.metric-value small{font-size:9px}.metric.featured .metric-value strong{font-size:38px}.module-state{font-size:9px;top:10px;right:10px}.metric-note{font-size:9px}.freshness{margin-left:40px;font-size:10px}.overview{margin-top:22px}.layers{gap:10px 14px}.layers label{font-size:10px}#map{height:300px}.tabs{gap:2px}.tabs button{padding:8px 10px;font-size:11px}.group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-heading h3{font-size:16px}.filter select{max-width:180px}.detail-toolbar{gap:8px}.secondary{margin-left:0}.sources{grid-template-columns:1fr}footer{font-size:9px;flex-wrap:wrap}.region-options{max-height:230px}.region-options button{font-size:11px;gap:5px}.region-options small{font-size:9px}.list-table{min-width:620px}}

/* Keep five overview cards in two rows on smaller screens as well. */
@media(max-width:760px){
 .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .metric{padding:13px 10px;min-height:0}
 .metric.featured{grid-column:span 1}
 .residential-card{grid-column:span 3}
 .office-card{grid-column:span 2}
 .card-heading{margin-bottom:10px;gap:3px}
 .card-heading h3{font-size:12px}
 .metric-label{font-size:10px;line-height:1.5}
 .metric-grid .metric-value strong{font-size:22px}
 .metric-grid .featured .metric-value strong{font-size:26px}
 .metric-value{gap:3px;margin:6px 0}
 .metric-value small{font-size:9px}
 .module-state{position:static;font-size:9px}
 .grouped-metrics{grid-template-columns:minmax(0,1fr);gap:10px}
 .metric-item+.metric-item{border-left:0;border-top:1px solid #e8eee9;padding-left:0;padding-top:10px}
 .residential-metrics .metric-item{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:6px;align-items:baseline}
 .residential-metrics .metric-value{margin:0}
 .residential-metrics .metric-note{grid-column:1/-1;margin-top:3px}
 .residential-metrics .metric-label{max-width:8em}
 .item-heading{gap:3px}
}
@media(max-width:380px){.metric-grid .metric-value strong{font-size:19px}.metric-grid .featured .metric-value strong{font-size:23px}.residential-metrics .metric-item{column-gap:3px}.residential-metrics .metric-label{font-size:9px}}