.home-details-dialog{width:min(520px,calc(100vw - 32px));max-height:80vh;overflow:auto;padding:24px;border:1px solid #33443f;border-radius:10px;background:#182129;color:#e5f1ed;font-family:var(--sans,Arial,sans-serif)}
.home-details-dialog::backdrop{background:rgba(0,0,0,.65)}
.home-details-dialog h2{margin:0 0 14px;color:goldenrod;font-size:22px}
.home-details-dialog p{line-height:1.6;margin:10px 0}
.home-details-dialog .home-sale-status{color:#ff6060;font-weight:700}
.home-details-dialog .home-price{font-size:24px;font-weight:700}
.home-details-dialog .home-description{white-space:pre-wrap;overflow-wrap:anywhere}
.home-details-dialog button{padding:8px 18px;margin-top:12px;border:1px solid #65e7c1;border-radius:6px;background:#80e3c2;color:#13251f;cursor:pointer}
.realtor-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:16px;margin-top:14px}
.realtor-map{height:520px;min-height:320px;width:100%;background:#e5e3df;z-index:0}
.realtor-home-form{display:grid;gap:10px;align-content:start}
.realtor-home-form label{display:grid;gap:5px;color:#abbcb5;font-size:13px}
.realtor-home-form input:not([type=checkbox]),.realtor-home-form textarea{box-sizing:border-box;width:100%;min-width:0;padding:8px;border:1px solid #33443f;border-radius:5px;background:#111820;color:#e5f1ed;font:inherit}
.realtor-home-form textarea{resize:vertical;min-height:85px}
.realtor-home-form .realtor-check{display:flex;align-items:center;gap:8px}
.realtor-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.realtor-home-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.realtor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
#realtor-map .maplibregl-ctrl-group button,#overview-us-map .maplibregl-ctrl-group button{display:block!important;width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;color:#111!important}
#realtor-map .maplibregl-ctrl-group button:hover,#overview-us-map .maplibregl-ctrl-group button:hover{background:#f0f0f0!important}
#realtor-map .maplibregl-ctrl-group button+button,#overview-us-map .maplibregl-ctrl-group button+button{border-top:1px solid #ddd!important}
@media(max-width:850px){.realtor-layout{grid-template-columns:1fr}.realtor-map{height:400px}}

.home-details-dialog button+button{margin-left:8px}.property-workspace{width:100%;padding:20px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.property-workspace header{display:flex;align-items:center;justify-content:space-between;gap:12px}.property-workspace h1,.property-workspace h2{color:goldenrod}.property-workspace .home-price{font-size:28px;font-weight:700}.property-workspace .home-description{white-space:pre-wrap;overflow-wrap:anywhere}.property-facts{display:flex;flex-wrap:wrap;gap:24px;margin:24px 0}.property-facts dt{font-size:13px;color:var(--muted)}.property-facts dd{margin:5px 0 0;font-weight:600}

.property-home-photo{margin:14px 0;width:240px;max-width:100%}.property-home-photo img{display:block;width:100%;height:150px;object-fit:cover;border-radius:8px;background:#23332f}.property-home-photo figcaption{margin-top:7px;font-size:12px;color:var(--muted)}.property-home-photo a{color:var(--muted)}

.owned-properties{margin:18px 0;padding-bottom:18px;border-bottom:1px solid var(--border)}#owned-properties{display:flex;flex-wrap:wrap;gap:8px}

.home-keypad-dialog{box-sizing:border-box;width:350px;max-width:calc(100vw - 28px);padding:22px;border:2px solid #445951;border-radius:14px;background:linear-gradient(145deg,#24312f,#151e23);color:#e5f1ed;font-family:var(--sans,Arial,sans-serif)}.home-keypad-dialog::backdrop{background:rgba(0,0,0,.7)}.home-keypad-dialog header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.home-keypad-dialog h2{margin:5px 0 0;color:goldenrod;font-size:21px}.home-keypad-dialog small{color:#8cb5a5;font-size:10px;letter-spacing:2px}.home-keypad-close{border:0;background:transparent;color:#c5d7ce;font-size:28px;cursor:pointer}.home-keypad-screen{padding:16px 10px;margin-bottom:18px;border:2px solid #4d7762;border-radius:6px;background:#0b2014;box-shadow:inset 0 0 12px #000;text-align:center}.home-keypad-screen p{min-height:18px;margin:0 0 10px;color:#8dffa8;font:14px monospace}.home-keypad-screen input{box-sizing:border-box;width:100%;height:34px;border:0;background:transparent;color:#a4ffb7;text-align:center;font:26px monospace;letter-spacing:9px;outline:0}.home-keypad-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-keypad-keys button{height:56px;border:1px solid #5f746c;border-bottom:4px solid #34443e;border-radius:7px;background:#d9e3de;color:#17271e;font:700 22px var(--sans,Arial,sans-serif);cursor:pointer;box-shadow:0 3px 5px #0005}.home-keypad-keys button:active{transform:translateY(2px);border-bottom-width:2px}.home-keypad-keys button[data-home-back],.home-keypad-keys button[data-home-enter]{font-size:15px}.home-keypad-keys button[data-home-enter]{background:#83dbad}.home-keypad-keys button:disabled{opacity:.4;cursor:default}

.property-workspace{position:relative;margin-top:0;padding-top:0}.properties-navigation{position:absolute;top:0;right:20px;display:flex;justify-content:flex-end}.property-workspace .owned-properties{margin-top:0}.property-workspace .owned-properties h2{margin-top:0;padding-right:150px}

.property-floor-plan{margin:0;width:min(620px,100%);padding:8px;border:1px solid #39473e;border-radius:8px;background:#fff}.property-floor-plan svg{display:block;width:100%;height:auto;max-height:clamp(220px,calc(100vh - 440px),540px)}

.property-workspace .owned-properties h2{color:var(--green);font-size:calc(1.5em - 4pt)}

.property-interior-controls{margin:0 0 14px;display:flex;gap:8px}

.property-workspace-container{width:100%;min-width:0}

.property-services-panel{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--panel2)}.property-services-panel h3{margin:0;font-size:1.25em}

/* Utilities are displayed inside the property panel after entry. */
.property-workspace:has(#property-electricity-usage){padding-right:10px}

/* Reduce Utilities text by two points, including its nested services heading. */
.property-workspace:has(#property-electricity-usage){font-size:calc(1em - 2pt)}
.property-workspace:has(#property-electricity-usage) #property-details>h2{font-size:calc(1.5em + 1pt)}
.property-workspace:has(#property-electricity-usage) .property-services-panel h3{font-size:calc(1.25em + .5pt)}

.realtor-home-form select{width:100%;min-width:0;padding:8px;border:1px solid #33443f;border-radius:5px;background:#111820;color:var(--text);font:inherit}
