/* EnterHome red, charcoal and white map controls. */
.eh9-map-control-primary .eh9-restore-results,
.eh9-map-control-primary [data-eh-map-compare] {
  box-sizing:border-box!important; position:static!important; display:inline-flex!important; flex:0 0 46px!important;
  width:46px!important; min-width:46px!important; max-width:46px!important; height:46px!important; min-height:46px!important;
  align-items:center!important; justify-content:center!important; margin:0!important; padding:0!important; transform:none!important;
  border:1px solid #a81031!important; border-radius:12px!important; background:#a81031!important; color:#fff!important;
  box-shadow:0 2px 8px #17223430!important; font-size:0!important; line-height:1!important; white-space:nowrap!important;
}
.eh9-map-control-primary .eh9-restore-results::before { content:'☷'; font-size:23px; line-height:1; }
.eh9-map-control-primary .eh9-restore-results[aria-label="Return to map search"]::before,
.eh9-map-control-primary .eh9-restore-results[aria-label="Hide listing results"]::before,
.eh9-map-control-primary .eh9-restore-results[aria-label="Expand map to full view"]::before { content:'⌖'; font-size:26px; }
.eh9-map-control-primary .eh9-restore-results[aria-label="Browse property listings"]::before,
.eh9-map-control-primary .eh9-restore-results[aria-label="Show listing results"]::before { content:'☰'; }
.eh9-map-control-primary [data-eh-map-compare] { position:relative!important; background:#fff!important; color:#a81031!important; font-size:21px!important; cursor:pointer; }
.eh9-map-control-primary [data-eh-map-compare] > span:first-child { font-size:22px; line-height:1; }
.eh9-map-control-primary .ehmcc-count { position:absolute; top:-6px; right:-6px; display:flex; min-width:19px; height:19px; box-sizing:border-box; align-items:center; justify-content:center; padding:0 4px; border:2px solid #fff; border-radius:12px; background:#a81031; color:white; font:700 11px/1 system-ui,sans-serif; }
.eh9-map-control-primary .ehmcc-count[hidden] { display:none!important; }
.ehmcc-hint { position:fixed!important; z-index:30001!important; left:50%!important; bottom:max(84px,calc(env(safe-area-inset-bottom) + 76px))!important; width:max-content!important; max-width:calc(100vw - 28px)!important; box-sizing:border-box!important; transform:translateX(-50%)!important; padding:11px 14px!important; border:1px solid #d8dfe8!important; border-left:4px solid #a81031!important; border-radius:10px!important; background:#fff!important; color:#202a38!important; box-shadow:0 6px 24px #17223435!important; font:600 14px/1.35 system-ui,sans-serif!important; }
.ehmcc-hint[hidden] { display:none!important; }

/* Keep every layer option reachable on short screens and with browser safe areas. */
@media(max-width:800px) {
  body.eh9:has(#eh9-map) .eh9-map-tools-menu[open] .eh9-map-tools-content {
    position:fixed!important; z-index:10000!important; top:calc(env(safe-area-inset-top) + 150px)!important;
    right:max(10px,env(safe-area-inset-right))!important; bottom:calc(env(safe-area-inset-bottom) + 10px)!important;
    left:max(10px,env(safe-area-inset-left))!important; width:auto!important; max-width:none!important; height:auto!important;
    max-height:none!important; min-height:0!important; overflow-x:hidden!important; overflow-y:auto!important;
    overscroll-behavior:contain!important; -webkit-overflow-scrolling:touch!important; scrollbar-gutter:stable!important;
    box-sizing:border-box!important; padding-bottom:max(16px,env(safe-area-inset-bottom))!important;
  }
}

/* X only, with a fixed hit target that cannot be pushed outside the chat header. */
.ehqc-window-actions { display:flex!important; flex:0 0 auto!important; align-items:center!important; gap:6px!important; min-width:0!important; }
.ehqc-window-actions .ehqc-close { display:inline-flex!important; flex:0 0 44px!important; width:44px!important; min-width:44px!important; height:44px!important; min-height:44px!important; align-items:center!important; justify-content:center!important; box-sizing:border-box!important; padding:0!important; overflow:hidden!important; white-space:nowrap!important; font-size:0!important; line-height:1!important; border:1px solid #d7dde5!important; border-radius:10px!important; background:#fff!important; color:#a81031!important; }
.ehqc-window-actions .ehqc-close::before { content:'×'; font:400 27px/1 system-ui,sans-serif!important; }

.eh-auth-browse-return { position:sticky; top:0; z-index:400; display:flex; justify-content:flex-start; margin:0 auto 14px; padding:8px max(12px,env(safe-area-inset-left)); background:#fff; border-bottom:1px solid #e4e7ec; }
.eh-auth-browse-return a { display:inline-flex; min-height:42px; align-items:center; gap:8px; padding:0 13px; border:1px solid #a81031; border-radius:9px; background:#fff; color:#a81031; font-weight:750; text-decoration:none; }
.eh-auth-browse-return a:focus-visible { outline:3px solid #a8103180; outline-offset:2px; }
