/* Almaro map overlay. Its controls only change the displayed saved scenario. */
.investment-hud {
  position:absolute; z-index:36; left:90px; right:calc(460px + 48px); bottom:90px; max-width:650px;
  container-type:inline-size; box-sizing:border-box; padding:12px 16px 10px;
  color:#f4f6fc; background:#111723e8; border:1px solid #ffffff26; border-radius:18px;
  box-shadow:0 16px 44px #03071366,inset 0 1px 0 #ffffff0b;
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
  font:12px/1.35 system-ui,-apple-system,sans-serif; pointer-events:auto;
}
.investment-hud * { box-sizing:border-box; }
.ih-mobile-head { display:none; }
.ih-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.ih-title { color:#d3ff61; font-size:10px; letter-spacing:.14em; text-transform:uppercase; font-weight:750; }
.ih-scenarios { display:flex; padding:3px; gap:2px; background:#ffffff09; border:1px solid #ffffff12; border-radius:9px; }
.ih-scenarios button { border:0; border-radius:6px; background:transparent; color:#bec7da; padding:5px 9px; font:650 11px/1.4 system-ui,sans-serif; cursor:pointer; min-height:28px; }
.ih-scenarios button:hover { background:#ffffff12; color:#fff; }
.ih-scenarios button[aria-pressed="true"] { background:#d3ff61; color:#172209; box-shadow:0 2px 12px #d3ff6119; }
.ih-scenarios button:focus-visible { outline:2px solid #f5ffe0; outline-offset:3px; }
.ih-details:focus-visible { outline:2px solid #d3ff61; outline-offset:3px; }
.ih-numbers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.ih-metric { min-width:0; display:flex; flex-direction:column; gap:5px; }
.ih-label { color:#bec7da; font-size:9px; letter-spacing:.1em; text-transform:uppercase; font-weight:650; }
.ih-metric strong { white-space:nowrap; font-size:clamp(15px,3.5cqw,28px); line-height:1.1; font-weight:720; letter-spacing:-.055em; font-variant-numeric:tabular-nums; color:#f4f6fc; }
.ih-buy strong { color:#d3ff61; }
.ih-invest strong { color:#ffad96; }
.ih-total strong { color:#f4f6fc; }
.ih-cash strong { color:#c7b4ff; }
.ih-metric.is-negative strong { color:#ff9cad; }
.ih-metric small { color:#adb8cf; font-size:9px; line-height:1.3; }
.ih-note { margin:9px 0 0; color:#aeb9d0; font-size:9px; line-height:1.4; }
.ih-model-note { display:block; color:#c4b7dc; margin-top:2px; }
.ih-pending { color:#c7b4ff; font-size:11px; }
body.is-opportunity-tour .investment-hud { opacity:0; visibility:hidden; pointer-events:none; }
body:has(#hospitalityCollection:not([hidden])) .investment-hud { visibility:hidden; pointer-events:none; }
@media(max-width:1040px) {
  .investment-hud { position:fixed; left:90px; right:24px; bottom:90px; max-width:650px; z-index:45; padding:10px 14px 8px; border-radius:14px; }
  .ih-top { margin-bottom:6px; }
  .ih-mobile-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:4px; }
  .ih-property { font-size:12px; color:#f4f6fc; font-weight:650; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .ih-details { flex:none; font:650 10px/1.3 system-ui,sans-serif; padding:6px 9px; border:1px solid #ffffff30; border-radius:7px; background:#ffffff0b; color:#d3ff61; cursor:pointer; min-height:28px; }
  .ih-title { font-size:9px; }
  .ih-scenarios button { padding:4px 7px; min-height:24px; }
  .ih-numbers { grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
  .ih-metric { gap:3px; }
  .ih-metric strong { font-size:clamp(15px,4.7vw,22px); }
  .ih-label { font-size:8px; letter-spacing:.025em; }
  .ih-metric small { font-size:8px; }
  .ih-note { margin-top:6px; font-size:8px; }
  body.has-investment-hud:not(.is-investment-details-open) .hp-almaro-card { display:none!important; }
  body.is-investment-details-open .investment-hud { z-index:70; }
  body.is-investment-details-open .ih-top,body.is-investment-details-open .ih-numbers,body.is-investment-details-open .ih-note { display:none; }
  body.is-investment-details-open .ih-mobile-head { margin-bottom:0; }
}
@media(max-width:768px) {
  .investment-hud { left:12px; right:12px; bottom:calc(var(--mtab-h,58px) + 18px); max-width:none; }
}
