/* EnterHome compare and share controls. Brand palette stays navy, white and red. */
.ehcs-live-status { display:inline-block; min-height:1em; color:#364254; font-size:13px; }
.ehcs-share-compare,.ehcs-clear-compare,.ehcs-share-search {
  display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:8px 14px;
  border:1px solid #d5dbe3; border-radius:8px; background:#fff; color:#a81031; font:inherit; font-weight:700;
  line-height:1.2; text-decoration:none; cursor:pointer;
}
.ehcs-share-compare:hover,.ehcs-clear-compare:hover,.ehcs-share-search:hover { background:#fff3f5; }
.ehcs-map-share { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:8px 0; padding-top:8px; border-top:1px solid #e2e5e9; }
.ehcs-map-share .ehcs-live-status { flex-basis:100%; }
.ehcs-household-note { flex-basis:100%; margin:2px 0 0; color:#536173; font-size:13px; line-height:1.45; }
.ehcs-guest-prompt {
  position:fixed; z-index:30000; left:50%; bottom:max(18px,env(safe-area-inset-bottom)); transform:translateX(-50%);
  display:flex; align-items:center; gap:12px; width:min(620px,calc(100vw - 28px)); box-sizing:border-box;
  padding:14px 16px; border:1px solid #d8dfe8; border-left:4px solid #a81031; border-radius:12px;
  background:#fff; color:#1e2938; box-shadow:0 8px 30px #17223438; font:500 14px/1.4 system-ui,sans-serif;
}
.ehcs-guest-prompt span { flex:1 1 auto; }
.ehcs-guest-prompt a { flex:0 0 auto; color:#a81031; font-weight:750; white-space:nowrap; }
.ehcs-guest-prompt button { flex:0 0 36px; width:36px; height:36px; border:1px solid #d5dbe3; border-radius:50%; background:#fff; color:#263445; font-size:22px; cursor:pointer; }
.ehpr-mobile-comparison { display:none; }
body:has(.ehpr-comparison) .eh-map-return-link,
body:has(.ehpr-comparison) .eh9-detail > a[href="/map"] {
  position:sticky; top:70px; z-index:100; display:flex; align-items:center; width:max-content; max-width:calc(100vw - 32px);
  min-height:46px; box-sizing:border-box; margin:0 0 14px; padding:0 16px; border:1px solid #a81031;
  border-radius:0 0 10px 10px; background:#fff; color:#a81031; box-shadow:0 4px 14px #17223420;
  font-weight:750; line-height:1.2; text-decoration:none;
}
body:has(.ehpr-comparison) main:has(.eh-map-return-link) .eh9-detail > a[href="/map"] { display:none; }

@media (max-width:760px) {
  .ehpr-compare-controls { position:relative; z-index:2; gap:8px; padding:10px 8px; margin:0 -4px 12px; background:#fff; border-bottom:1px solid #e1e5eb; }
  .ehpr-compare-controls label { flex:1 0 100%; font-size:14px; }
  .ehpr-compare-controls button,.ehpr-compare-controls .ehcs-clear-compare { min-height:44px; padding:9px 12px; font-size:14px; }
  .ehpr-compare-controls .ehcs-live-status { flex-basis:100%; }
  .eh9-detail:has(.ehpr-comparison) { padding-top:0; }
  body:has(.ehpr-comparison) .eh-map-return-link,
  body:has(.ehpr-comparison) .eh9-detail > a[href="/map"] { top:58px; min-height:48px; font-size:14px; }
  .eh9-table-scroll:has(.ehpr-comparison) { display:none !important; }
  .ehpr-mobile-comparison { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; margin:12px 0 24px; }
  .ehpr-mobile-compare-card { min-width:0; padding:14px; border:1px solid #dce1e8; border-radius:13px; background:#fff; box-shadow:0 2px 10px #1722340c; }
  .ehpr-mobile-compare-head { display:grid; grid-template-columns:88px minmax(0,1fr); gap:12px; align-items:center; }
  .ehpr-mobile-compare-head img { display:block; width:88px; height:72px; object-fit:cover; border-radius:8px; background:#f0f2f5; }
  .ehpr-mobile-compare-title { min-width:0; }
  .ehpr-mobile-compare-title a { color:#1c2939; font-size:16px; font-weight:750; line-height:1.3; overflow-wrap:anywhere; }
  .ehpr-mobile-compare-title small { display:block; margin-top:4px; color:#596678; font-size:13px; }
  .ehpr-mobile-remove { display:inline-flex; min-height:40px; align-items:center; margin:10px 0 2px; padding:0 12px; border:1px solid #d6dce4; border-radius:8px; color:#a81031; font-weight:700; text-decoration:none; }
  .ehpr-mobile-compare-facts { display:grid; grid-template-columns:minmax(0,1fr); margin:10px 0 0; border-top:1px solid #e6e9ee; }
  .ehpr-mobile-compare-fact { display:grid; grid-template-columns:minmax(0,44%) minmax(0,56%); gap:8px; padding:9px 2px; border-bottom:1px solid #edf0f3; font-size:14px; line-height:1.35; }
  .ehpr-mobile-compare-fact dt { color:#5c6878; font-weight:650; }
  .ehpr-mobile-compare-fact dd { min-width:0; margin:0; color:#1d2837; overflow-wrap:anywhere; }
  .ehpr-compare-controls ~ .eh9-source { margin:12px 0; font-size:13px; line-height:1.5; }
  .ehcs-guest-prompt { align-items:flex-start; gap:9px; bottom:max(12px,env(safe-area-inset-bottom)); padding:12px; font-size:13px; }
  .ehcs-guest-prompt button { flex-basis:34px; width:34px; height:34px; }
  .ehcs-share-search { width:44px; min-width:44px; height:44px; padding:0; font-size:20px; }
}

@media print {
  .eh-map-return-link,.ehpr-compare-controls,.ehpr-remove,.ehpr-mobile-remove,.ehcs-share-compare,.ehcs-clear-compare { display:none !important; }
  .ehpr-mobile-comparison { display:none !important; }
  .eh9-table-scroll:has(.ehpr-comparison) { display:block !important; }
}
