/* Estate commissioning: matching Customer Zone white, slate and teal. */
.estate-dashboard{font-family:'DM Sans',Arial,sans-serif;color:#17323d;max-width:1280px}
.estate-heading,.estate-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.estate-heading h2{font-family:'Space Grotesk',Arial,sans-serif;font-size:28px;margin:4px 0}
.estate-heading p,.estate-section-title small,.estate-building small,.estate-note{color:#60737a;font-size:12px}
.estate-status{background:#fff8e8;color:#805922;border:1px solid #e7d5ab;border-radius:5px;padding:8px 12px;font-size:11px}
.estate-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.estate-kpis article{border:1px solid #dce8eb;background:#fff;border-radius:7px;padding:16px}
.estate-kpis small,.estate-kpis strong{display:block}
.estate-kpis small{font-size:11px;color:#60737a}.estate-kpis strong{font-size:26px;margin-top:7px}
.estate-kpis .estate-missing{font-size:17px;color:#60737a}
.estate-layout{display:grid;grid-template-columns:minmax(175px,.67fr) minmax(0,1.7fr);gap:15px}
.estate-building-panel,.estate-apartment-panel{border:1px solid #dce8eb;border-radius:7px;background:#fff;padding:16px;min-width:0}
.estate-section-title h3{font:700 18px 'Space Grotesk',Arial,sans-serif;margin:4px 0}
.estate-building-list{display:grid;gap:8px;margin-top:12px}
.estate-building{display:flex;flex-direction:column;text-align:left;gap:5px;padding:12px!important;background:#f4f8f9!important;color:#17323d!important;border:1px solid #dce8eb!important;border-radius:5px!important}
.estate-building.selected,.estate-building:hover{background:#e9f6f7!important;border-color:#0e7180!important}
.estate-building small{display:block}
.estate-edit{background:#0e7180;color:white;border:1px solid #0e7180;border-radius:4px;padding:9px 11px;font-size:12px}
.estate-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:17px}
.estate-flow>div{border:1px solid #dce8eb;background:#f4f8f9;border-radius:5px;padding:12px;display:grid;gap:6px}
.estate-flow span,.estate-flow small{font-size:11px;color:#60737a}.estate-flow b{font-size:22px;color:#60737a}
.estate-note{border-left:3px solid #b0cdd2;padding:11px;margin:15px 0;background:#f7fafb}
.estate-meter{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #dce8eb;font-size:12px}
.estate-meter small{display:block;color:#60737a}.estate-meter em{font-style:normal;color:#60737a}
.estate-config{margin-top:18px}.estate-config label{display:block;font-size:12px;font-weight:600}
.estate-config input{background:#fff;border:1px solid #bcd0d7;padding:9px;width:100%;border-radius:4px;margin-top:5px;color:#17323d}
.estate-config p{font-size:12px;color:#60737a}
.estate-config-list{display:grid;gap:8px;max-height:400px;overflow-y:auto}
.estate-config-row{display:grid;grid-template-columns:100px minmax(140px,1fr) minmax(160px,1fr);gap:10px;background:#f4f8f9;padding:10px;border-radius:5px}
.estate-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.estate-error{color:#963f2c;background:#fff2ef;padding:12px;margin-top:10px}
@media(max-width:860px){.estate-layout{grid-template-columns:1fr}.estate-kpis{grid-template-columns:repeat(2,1fr)}.estate-config-row{grid-template-columns:1fr}.estate-meter{grid-template-columns:1fr 1fr}}
