/* Montenegro follows the collection's compact white-and-blue detail layout.
   All rules stay inside MSRF surfaces; workbook values and map models are unchanged. */
.msrf-launcher,
.msrf-dialog,
#v2DealCard.is-msrf-card,
.msrf-photo-dialog {
  --msrf-ink:#23354d;
  --msrf-soft:#647489;
  --msrf-blue:#2455a6;
  --msrf-line:#dfe6ef;
  --msrf-tint:#f3f7fe;
  color:var(--msrf-ink);
  font:400 13px/1.5 "IBM Plex Sans",system-ui,sans-serif;
}
.msrf-dialog *,
#v2DealCard.is-msrf-card *,
.msrf-photo-dialog * { box-sizing:border-box; }
.msrf-launcher {
  position:absolute;top:76px;left:84px;z-index:40;
  min-height:36px;max-width:calc(100% - 108px);padding:0 12px;
  background:#fff;border:1px solid var(--msrf-line);border-radius:6px;
  color:var(--msrf-blue);font-weight:500;box-shadow:0 2px 8px #14234b12;cursor:pointer;
}
.msrf-launcher[hidden],
#app.is-msrf-market:not([data-frame="map"]):not([data-frame="asset"]) .msrf-launcher,
#app.is-msrf-market :is(#v2MoreFilters,#v2MaskChips,#v2MtypeChips) { display:none!important; }
.msrf-dialog :focus-visible,
.is-msrf-card :focus-visible,
.msrf-photo-dialog :focus-visible,
.msrf-launcher:focus-visible { outline:2px solid #2455a6;outline-offset:2px; }
.msrf-close {
  display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;min-height:34px;
  padding:0;border:1px solid transparent;border-radius:6px;background:#fff;
  color:#53657c;font:400 25px/1 system-ui,sans-serif;cursor:pointer;
}
.msrf-close:hover { background:#edf3fc; }

/* The picker has one scrolling body, so search and filters cannot trap results. */
.msrf-dialog {
  display:none;flex-direction:column;margin:auto;padding:0;
  width:min(520px,calc(100vw - 32px));max-width:calc(100vw - 32px);
  max-height:calc(100dvh - 48px);min-height:0;overflow:hidden;
  border:1px solid var(--msrf-line);border-radius:8px;background:#fff;
  box-shadow:0 18px 70px #101a3340;
}
.msrf-dialog[open] { display:flex; }
.msrf-dialog::backdrop { background:#15234255; }
.msrf-dialog>header {
  display:flex;flex:none;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:16px;border-bottom:1px solid var(--msrf-line);background:#fff;
}
.msrf-dialog>header>div { min-width:0; }
.msrf-dialog h2 {
  margin:2px 0 0;padding:0;border:0;color:var(--msrf-ink);
  font:600 20px/1.3 "IBM Plex Sans",system-ui,sans-serif;letter-spacing:-.025em;overflow-wrap:anywhere;
}
.msrf-dialog>header p { margin:0 0 3px;color:var(--msrf-soft);font-size:10px;letter-spacing:.04em;text-transform:uppercase; }
.msrf-collection-body {
  flex:1 1 auto;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;
  overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
}
.msrf-list-search { padding:14px 16px 12px;border-bottom:1px solid #e8edf4; }
.msrf-list-search label { display:block;margin-bottom:6px;font-size:12px;font-weight:500;color:#526781; }
.msrf-list-search input {
  display:block;width:100%;min-width:0;min-height:40px;margin:0;padding:8px 10px;
  border:1px solid #d4dfed;border-radius:6px;background:#fff;color:var(--msrf-ink);
  font:400 13px/1.35 "IBM Plex Sans",system-ui,sans-serif;
}
.msrf-list-search p { margin:8px 0 0;font-size:11px;line-height:1.5;color:var(--msrf-soft);overflow-wrap:anywhere; }
.msrf-scope-switch { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;margin-top:12px;border-radius:6px;background:#edf2f8; }
.msrf-scope-switch button {
  min-width:0;min-height:36px;padding:7px 10px;border:1px solid transparent;border-radius:4px;
  background:transparent;color:#60718a;font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer;
}
.msrf-scope-switch button[aria-pressed="true"] { color:#234a83;background:#fff;border-color:#dae3ef;box-shadow:0 1px 3px #1834590d; }
.msrf-city-filters { display:flex;flex-wrap:wrap;gap:6px;margin-top:12px; }
.msrf-city-filters button {
  display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:34px;
  padding:6px 10px;border:1px solid #dce3ee;border-radius:6px;background:#fff;
  color:#526781;font:500 11px/1.3 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer;
}
.msrf-city-filters button[aria-pressed="true"] { color:#2455a6;background:#edf4ff;border-color:#98b1d4; }
.msrf-city-filters button span { color:inherit;opacity:.7;font-size:10px;font-variant-numeric:tabular-nums; }
.msrf-list-search [data-clear-area] {
  min-height:36px;max-width:100%;margin-top:8px;padding:8px 10px;
  border:1px solid #d9dfe9;border-radius:6px;background:#fff;color:#2455a6;
  font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;white-space:normal;cursor:pointer;
}
.msrf-list-search [data-clear-area][hidden] { display:none!important; }
.msrf-list-scroll,.msrf-list-results { min-width:0;max-height:none;overflow:visible; }
.msrf-list-results { padding:6px 8px; }
.msrf-list-row {
  display:flex;align-items:center;gap:12px;width:100%;min-width:0;margin:0;padding:12px 8px;
  border:0;border-bottom:1px solid #e8edf4;border-radius:6px;background:#fff;
  color:var(--msrf-ink);text-align:left;font:inherit;cursor:pointer;
}
.msrf-list-row:hover { background:#f4f7fd; }
.msrf-list-row[aria-current="true"] { background:#edf4ff;box-shadow:inset 3px 0 0 #2455a6; }
.msrf-list-visual {
  position:relative;flex:0 0 72px;width:72px;height:80px;min-width:0;
  overflow:hidden;border-radius:6px;background:#eff3f7;
}
.msrf-list-visual img { display:block;width:100%;height:100%;object-fit:cover; }
.msrf-list-visual .msrf-number {
  position:absolute;left:5px;bottom:5px;min-width:12px;padding:2px 5px;
  border-radius:4px;background:#fffef8;color:#2455a6;font-size:11px;line-height:1.25;
}
.msrf-list-copy { display:flex;flex:1 1 0;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere; }
.msrf-list-copy strong { display:block;color:var(--msrf-ink);font-size:14px;font-weight:600;line-height:1.35; }
.msrf-list-copy>span,.msrf-list-copy small { display:block;color:var(--msrf-soft);font-size:11px;line-height:1.4; }
.msrf-list-copy .msrf-list-price { display:block;margin:2px 0;color:#234a83;font-size:12px;font-weight:600;line-height:1.4; }
.msrf-list-row>[aria-hidden="true"] { flex:0 0 auto;color:#8291a5; }
.msrf-empty { margin:0;padding:16px;font-size:13px;color:#647489; }
.msrf-broker-mandates { padding:4px 16px 16px;color:#647489;font-size:12px;overflow-wrap:anywhere; }
.msrf-broker-mandates h3 { margin:10px 0 6px;padding:0;border:0;color:#23354d;font:600 13px/1.4 "IBM Plex Sans",system-ui,sans-serif; }
.msrf-broker-mandates p { margin:6px 0; }

/* Project details: fixed identity, tabs and exits; content scrolls between them. */
#v2DealCard.is-msrf-card {
  display:flex!important;flex-direction:column;position:absolute;
  left:84px;right:auto;top:124px;bottom:auto;width:min(430px,calc(100vw - 108px));
  max-width:calc(100vw - 108px);max-height:calc(100dvh - 148px);min-height:0;margin:0;padding:0;
  border:1px solid var(--msrf-line);border-radius:8px;background:#fff;
  box-shadow:0 8px 32px #11264520;overflow:hidden;pointer-events:auto;
}
#v2DealCard.is-msrf-card[hidden] { display:none!important; }
#v2DealCard.is-msrf-card :is(section,figure) { min-width:0;margin:0; }
#v2DealCard.is-msrf-card :is(h2,h3,h4) { padding:0;border:0;color:var(--msrf-ink);font-family:"IBM Plex Sans",system-ui,sans-serif; }
#v2DealCard.is-msrf-card :is(p,li,dt,dd,a,h2,h3,h4) { overflow-wrap:anywhere; }
#v2DealCard.is-msrf-card h3 { margin:0 0 8px;font-size:15px;font-weight:600;line-height:1.4; }
#v2DealCard.is-msrf-card h4 { margin:12px 0 6px;font-size:13px;line-height:1.4; }
#v2DealCard.is-msrf-card a { color:var(--msrf-blue);text-underline-offset:3px; }
.msrf-card-head {
  display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:10px;
  padding:14px 14px 10px 18px;background:#fff;
}
.msrf-card-head>div { flex:1 1 0;min-width:0; }
#v2DealCard.is-msrf-card .msrf-card-head h2 { margin:4px 0;font-size:19px;font-weight:600;line-height:1.25;letter-spacing:-.025em; }
.msrf-card-head p { margin:0;color:#647489;font-size:10px;line-height:1.4; }
.msrf-card-head>div>span { color:#647489;font-size:11px;line-height:1.4; }
.msrf-card-head .msrf-close { margin-top:1px; }
.msrf-card-tabs {
  display:grid;flex:0 0 auto;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;
  min-width:0;margin:0;padding:0 14px;border-bottom:1px solid var(--msrf-line);background:#fff;
}
.msrf-card-tabs button {
  min-width:0;min-height:44px;margin:0;padding:10px 3px;border:0;border-bottom:2px solid transparent;
  border-radius:0;background:none;color:#65758c;font:500 12px/1.2 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer;
}
.msrf-card-tabs button[aria-selected="true"] { color:#2455a6;border-bottom-color:#2455a6; }
.msrf-card-tabs button:hover { color:#2455a6;background:#f6f9fe; }
#v2DealCard.is-msrf-card>.msrf-card-scroll {
  flex:1 1 auto;min-width:0;min-height:0;padding:14px 18px;
  overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  scrollbar-width:thin;scrollbar-color:#bdcbdc transparent;
}
.is-msrf-card [data-msrf-panel] { min-width:0; }
.is-msrf-card [data-msrf-panel][hidden] { display:none!important; }
.is-msrf-card [data-msrf-panel]>p { margin:6px 0 12px; }
body.is-atlas #v2DealCard.is-msrf-card>footer {
  display:flex!important;flex:0 0 auto;align-items:center;justify-content:space-between;gap:10px;
  min-width:0;padding:10px 18px;border-top:1px solid var(--msrf-line);background:#fff;
}
.is-msrf-card>footer button {
  display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:36px;margin:0;padding:8px 10px;
  border:1px solid #dce4ef;border-radius:6px;background:#fff;color:#2455a6;
  font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;white-space:normal;cursor:pointer;
}
.is-msrf-card>footer [data-msrf-all] { border-color:transparent; }
.is-msrf-card>footer button:hover { background:#edf3fc; }

/* Sourced acquisition facts stay separate from the cached workbook scenario. */
#v2DealCard.is-msrf-card .msrf-acquisition { margin-bottom:14px; }
.msrf-decision-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0; }
.msrf-decision-grid>div { min-width:0;padding:10px;border:1px solid #e1e8f2;border-radius:6px;background:#f6f9fe; }
.msrf-decision-grid dt { color:#647489;font-size:10px;line-height:1.4; }
.msrf-decision-grid dd { margin:3px 0;color:#173965;font-size:18px;font-weight:600;line-height:1.25;letter-spacing:-.02em;font-variant-numeric:tabular-nums; }
.msrf-decision-grid p { margin:4px 0 0;color:#647489;font-size:10px;line-height:1.4; }
.msrf-decision-grid a { font-size:11px; }
.msrf-acquisition>p:not(.msrf-eyebrow) { margin:8px 0;color:#647489;font-size:11px; }
.msrf-number-link { width:100%;min-height:36px;margin:7px 0 0;padding:8px;border:0;border-radius:5px;background:#edf3fc;color:#2455a6;font:500 12px/1.4 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer; }

/* Overview: photographs, public asking evidence and practical actions. */
#v2DealCard.is-msrf-card .msrf-gallery { margin:0 0 12px; }
.msrf-photo-pending { margin:0 0 12px;padding:12px;border:1px dashed #dce4ef;border-radius:6px;color:#647489;background:#f8fafc;font-size:12px; }
.msrf-photo-open { display:block;position:relative;width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:6px;overflow:hidden;background:#edf2f8;cursor:zoom-in;text-align:left; }
.is-msrf-card .msrf-photo-open img { display:block;width:100%;height:180px;max-width:100%;object-fit:cover;border-radius:0; }
.msrf-photo-enlarge { position:absolute;bottom:8px;right:8px;padding:4px 7px;border-radius:4px;background:#ffffffef;color:#2455a6;font:500 11px/1.3 "IBM Plex Sans",system-ui,sans-serif;box-shadow:0 1px 5px #17223822; }
.msrf-photo-nav { display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:5px 0;color:#647489;font:12px/1.3 "IBM Plex Sans",system-ui,sans-serif; }
.msrf-photo-nav button { min-width:34px;min-height:32px;margin:0;padding:3px 8px;border:1px solid #dce4ef;border-radius:5px;background:#fff;color:#2455a6;font-size:18px;cursor:pointer; }
.msrf-gallery figcaption { color:#647489;font-size:10px;line-height:1.45; }
.msrf-gallery [data-photo-caption] { display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.msrf-photo-source { display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:4px;color:#647489;font-size:10px;overflow-wrap:anywhere; }
.msrf-photo-source span { text-transform:capitalize; }
.msrf-photo-source a { color:#2455a6;font-weight:500;text-decoration:none; }
.msrf-location { margin:0 0 12px;color:#647489;font-size:11px;line-height:1.5; }
.msrf-quick-links { display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px; }
.msrf-quick-links :is(a,button) {
  display:inline-flex;align-items:center;justify-content:center;min-width:0;max-width:100%;min-height:36px;margin:0;padding:8px 10px;
  border:1px solid #dce4ef;border-radius:6px;background:#fff;color:#2455a6!important;
  font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;text-align:center;text-decoration:none;cursor:pointer;
}
.msrf-quick-links a:first-child { color:#fff!important;background:#2455a6;border-color:#2455a6; }
.msrf-quick-links :is(a,button):hover { filter:brightness(.97); }
#v2DealCard.is-msrf-card .msrf-asking { margin:0 0 14px;padding:12px;border:1px solid #e1eaf7;border-radius:6px;background:#f6f9fe; }
.msrf-eyebrow { margin:0 0 6px!important;color:#647489!important;font-size:10px!important;font-weight:500;line-height:1.4;letter-spacing:.035em;text-transform:uppercase; }
#v2DealCard.is-msrf-card .msrf-asking h3 { margin:0 0 6px;font-size:21px;line-height:1.3;letter-spacing:-.025em; }
.msrf-asking p { margin:5px 0;color:#586980;font-size:12px;line-height:1.5; }
.msrf-price-option+.msrf-price-option { margin-top:12px;padding-top:12px;border-top:1px solid #dfe6ef; }
.msrf-price-label { color:#40536d!important;font-weight:500; }
.msrf-price-amount { display:block;color:#173965;font-size:27px;font-weight:600;line-height:1.25;letter-spacing:-.035em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums; }
.msrf-price-spec { color:#344a67!important;font-weight:500; }
.msrf-price-source { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:3px 10px;margin-top:8px;color:#748196;font-size:10px; }
.msrf-price-source a { font-size:11px;font-weight:500;text-decoration:none; }
.msrf-price-availability { color:#647489!important;font-size:11px!important; }
.msrf-price-caveat { margin-top:10px!important;color:#748196!important;font-size:10px!important;line-height:1.5; }
#v2DealCard.is-msrf-card .msrf-overview { margin-bottom:14px; }
.msrf-summary { margin:0 0 10px;color:#334962;font-size:13px;line-height:1.6; }
.msrf-status { display:flex;flex-wrap:wrap;gap:6px; }
.msrf-status span { max-width:100%;padding:4px 7px;border-radius:4px;background:#f1f5fb;color:#526781;font-size:11px;line-height:1.45;overflow-wrap:anywhere; }
.msrf-status .msrf-priority { color:#806117;background:#fff5d9; }
.msrf-highlights { margin:10px 0 0;padding-left:18px;color:#526781;font-size:12px;line-height:1.55; }
.msrf-highlights li+li { margin-top:5px; }
.msrf-highlights a { font-size:10px; }

/* Evidence stays readable without widening any card or table. */
.is-msrf-card details { min-width:0;margin:0;padding:12px 0;border-top:1px solid #e5ebf2; }
.is-msrf-card summary { min-height:32px;align-content:center;padding:2px 0;color:#345273;font-size:12px;font-weight:500;line-height:1.5;cursor:pointer;overflow-wrap:anywhere; }
.is-msrf-card details p { margin:6px 0 10px;color:#647489;font-size:12px;line-height:1.55; }
.msrf-model>p { margin:4px 0 10px;color:#647489;font-size:12px;line-height:1.55; }
/* The representative-unit model is visible immediately in Numbers. */
#v2DealCard.is-msrf-card .msrf-investor-model {
  margin:0 0 18px;padding:13px;border:1px solid #d9dfeb;border-radius:6px;
  background:var(--warm-raised,#faf9f5);
}
#v2DealCard.is-msrf-card .msrf-investor-model>h3 { margin:2px 0 5px;font-size:15px; }
.msrf-model-price-basis { margin:4px 0 11px;color:#6c582f;font-size:11px;font-weight:500;line-height:1.45; }
.msrf-investor-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px;margin:12px 0; }
.msrf-investor-grid>div { min-width:0; }
.msrf-investor-grid dt { color:#647489;font-size:10px;line-height:1.4; }
.msrf-investor-grid dd { margin:4px 0 0;color:#234a83;font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.025em;font-variant-numeric:tabular-nums; }
.msrf-investor-note { margin:8px 0;color:#647489;font-size:11px;line-height:1.55; }
.msrf-investor-returns { margin:14px 0;padding:11px 0;border-top:1px solid #e1e1da;border-bottom:1px solid #e1e1da; }
#v2DealCard.is-msrf-card .msrf-investor-returns h4 { margin:0 0 8px;font-size:12px; }
.msrf-investor-returns dl { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0; }
.msrf-investor-returns dt { color:#647489;font-size:10px;line-height:1.4; }
.msrf-investor-returns dd { margin:4px 0 0;color:#23354d;font-size:18px;font-weight:600;line-height:1.25;font-variant-numeric:tabular-nums; }
.msrf-investor-returns p { margin:9px 0 0;color:#647489;font-size:11px;line-height:1.5; }
.msrf-investor-model .msrf-facts>div { padding:6px 0; }
.msrf-investor-model .msrf-facts :is(dt,dd) { font-size:11px; }
.msrf-model-source { margin:12px 0 0;padding-top:10px;border-top:1px solid #e1e1da;color:#647489;font-size:10px;line-height:1.6; }
.msrf-model-source strong { font-weight:500;color:#40536d; }
.msrf-metrics { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0; }
.msrf-metrics>div { min-width:0; }
.msrf-metrics dt { color:#647489;font-size:10px;line-height:1.4; }
.msrf-metrics dd { margin:4px 0 0;color:#234a83;font-size:17px;font-weight:600;line-height:1.25;letter-spacing:-.025em;font-variant-numeric:tabular-nums; }
.msrf-facts { margin:10px 0; }
.msrf-facts>div { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid #edf1f6; }
.msrf-facts dt { min-width:0;color:#647489;font-size:12px; }
.msrf-facts dd { min-width:0;margin:0;color:#23354d;font-size:12px;font-weight:500;text-align:right; }
.msrf-contact-value { color:#23354d!important;overflow-wrap:anywhere; }
.msrf-contacts h3 { margin-top:10px!important; }
.msrf-links { display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:10px; }
.msrf-links p { margin:4px 0 0;color:#647489;font-size:12px; }
.msrf-note { padding:10px;border-radius:5px;background:#faf6ed;font-size:12px; }
.msrf-investment-case { margin:14px 0; }
.msrf-investment-case>p { margin:6px 0 10px;color:#647489;font-size:12px; }
.msrf-strategy { padding:10px;border:1px solid #e1eaf7;border-radius:6px;background:#f4f7fd; }
.msrf-strategy h4 { margin-top:0!important; }
.msrf-strategy p { margin:5px 0;font-size:12px; }
.msrf-case-metric { padding:9px 0;border-bottom:1px solid #edf1f6; }
.msrf-case-metric>div { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px;font-size:12px;line-height:1.5; }
.msrf-case-metric>div>strong { min-width:0;font-weight:500; }
.msrf-case-metric>div>span { min-width:0;text-align:right;white-space:normal;font-variant-numeric:tabular-nums;overflow-wrap:anywhere; }
.msrf-case-metric small { display:block;margin-top:3px;color:#647489;font-size:11px;overflow-wrap:anywhere; }
.msrf-diligence>div { margin-top:10px; }
.msrf-diligence p { margin:3px 0; }
.msrf-diligence a { display:inline-block;padding:7px 0; }
.msrf-next { margin:12px 0;padding:12px;border:1px solid #e1eaf7;border-radius:6px;background:#f6f9fe; }
.msrf-next p { margin:0 0 10px; }
.msrf-next button { width:100%;min-height:36px;padding:8px 10px;border:1px solid #2455a6;border-radius:6px;background:#2455a6;color:#fff;font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer; }

/* Gold identifies a visit priority. Source models remain separate evidence. */
.msrf-gold { color:#9b7016!important; }
.is-msrf-card .msrf-trip { margin:0 0 12px;padding:12px;border:1px solid #e8d9b2;border-radius:6px;background:#fffaf0; }
.msrf-trip p { margin:6px 0;font-size:12px; }
.msrf-trip ul { margin:8px 0;padding-left:18px;font-size:12px;line-height:1.55; }
.msrf-trip li+li { margin-top:6px; }
.msrf-trip details { padding-bottom:0; }
.msrf-trip-legend { color:#647489;font-size:11px; }
#v2DealCard.is-msrf-card .msrf-3d { margin:12px 0;padding:12px;border:1px solid #e1eaf7;border-radius:6px;background:#f6f9fe; }
.msrf-3d-basis { margin:0 0 8px;color:#53657a;font-size:12px;line-height:1.5; }
.msrf-3d-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.msrf-3d-actions button { min-width:0;min-height:36px;margin:0;padding:8px 10px;border:1px solid #c6d2ea;border-radius:6px;background:#fff;color:#2455a6;font:500 12px/1.3 "IBM Plex Sans",system-ui,sans-serif;cursor:pointer; }
.msrf-3d-actions [data-msrf-view3d] { background:#2455a6;border-color:#2455a6;color:#fff; }
.msrf-3d-actions button:disabled { opacity:.55;cursor:default; }
.msrf-3d-actions [aria-pressed="true"] { border-color:#2455a6;background:#eaf0ff; }
.msrf-3d-status { margin:7px 0;color:#53657a;font-size:12px; }
.is-msrf-card .msrf-3d details { padding-bottom:0; }
.msrf-3d ul { margin:8px 0;padding-left:18px;color:#53657a;font-size:12px; }
.msrf-3d li+li { margin-top:5px; }

/* Native image viewer keeps its close control visible as the image scrolls. */
.msrf-photo-dialog {
  margin:auto;padding:0;width:min(1000px,calc(100vw - 24px));max-width:calc(100vw - 24px);
  max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--msrf-line);border-radius:8px;
  background:#fff;box-shadow:0 18px 70px #101a3340;overscroll-behavior:contain;
}
.msrf-photo-dialog::backdrop { background:#101a33b0; }
.msrf-photo-dialog>header { position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--msrf-line);background:#fff; }
.msrf-photo-dialog h2 { min-width:0;margin:0;padding:0;border:0;font:600 16px/1.3 "IBM Plex Sans",system-ui,sans-serif;overflow-wrap:anywhere; }
.msrf-photo-stage { display:flex;justify-content:center;align-items:center;min-height:120px;background:#f1f4f8; }
.msrf-photo-stage img { display:block;width:100%;max-width:100%;height:min(65dvh,680px);object-fit:contain; }
body.is-atlas .msrf-photo-dialog footer { display:block!important;padding:8px 16px 12px;background:#fff; }
.msrf-photo-dialog footer p { margin:6px 0 0;color:#53657a;font-size:12px;overflow-wrap:anywhere; }
.msrf-gallery .has-photo-error,.msrf-photo-dialog .has-photo-error { display:block;padding:24px;color:#53657a;font:13px/1.4 "IBM Plex Sans",system-ui,sans-serif; }

@media(max-width:768px) {
  .msrf-launcher { top:calc(var(--mbar-h,68px) + 8px);left:var(--phone-gutter,10px);max-width:calc(100% - 20px);min-height:44px; }
  #app.is-msrf-market:has(#v2DealCard.is-msrf-card:not([hidden])) .msrf-launcher { display:none; }
  #app.is-msrf-market :is(#v2Mpeek,#v2Mfull,#v2Mchip,#v2Mback) { display:none!important; }
  .is-msrf-asset #v2DealCard.is-msrf-card {
    position:fixed;top:auto;left:var(--phone-gutter,10px);right:var(--phone-gutter,10px);
    bottom:calc(var(--mtab-h,72px) + 22px);width:auto;max-width:none;
    max-height:min(62dvh,calc(100dvh - var(--mbar-h,68px) - var(--mtab-h,72px) - 30px));
    margin:0;transform:none!important;
  }
  .msrf-card-head { padding:10px 10px 8px 14px;gap:6px; }
  #v2DealCard.is-msrf-card .msrf-card-head h2 { font-size:18px;line-height:1.25; }
  .msrf-card-head p { font-size:10px; }
  .msrf-close { flex-basis:44px;width:44px;height:44px;min-height:44px; }
  .msrf-card-tabs { padding:0 10px; }
  .msrf-card-tabs button { min-height:44px;padding:10px 2px;font-size:11px; }
  #v2DealCard.is-msrf-card>.msrf-card-scroll { padding:12px 14px; }
  body.is-atlas #v2DealCard.is-msrf-card>footer { padding:8px 12px;gap:6px; }
  .is-msrf-card>footer button { min-height:44px;padding:8px;font-size:12px; }
  .is-msrf-card summary { min-height:44px; }
  .is-msrf-card .msrf-photo-open img { height:160px; }
  .msrf-photo-nav button { min-height:44px;min-width:44px; }
  .msrf-quick-links :is(a,button),.msrf-3d-actions button,.msrf-next button,.msrf-number-link { min-height:44px; }
  .msrf-price-amount { font-size:25px; }
  .msrf-metrics { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  .msrf-metrics dd { font-size:18px; }
  .msrf-dialog {
    position:fixed;top:var(--mbar-h,68px);bottom:var(--mtab-h,72px);
    left:var(--phone-gutter,10px);right:var(--phone-gutter,10px);width:auto;max-width:none;
    max-height:calc(100dvh - var(--mbar-h,68px) - var(--mtab-h,72px));margin:0;
  }
  .msrf-dialog>header { padding:12px 10px 10px 14px;gap:6px; }
  .msrf-dialog h2 { font-size:19px; }
  .msrf-list-search { padding:12px 14px; }
  .msrf-list-search [data-area-note] { display:none; }
  .msrf-list-search input { min-height:44px;font-size:16px; }
  .msrf-scope-switch button,.msrf-city-filters button,.msrf-list-search [data-clear-area] { min-height:44px; }
  .msrf-scope-switch { margin-top:10px; }
  .msrf-city-filters { gap:6px;margin-top:10px; }
  .msrf-city-filters button { padding:8px 9px;font-size:11px; }
  .msrf-list-results { padding:4px 6px; }
  .msrf-list-row { gap:10px;padding:12px 8px; }
  .msrf-list-visual { flex-basis:64px;width:64px;height:76px; }
  .msrf-list-copy strong { font-size:13px; }
  .msrf-broker-mandates { padding:4px 14px 14px; }
  .msrf-photo-dialog { max-height:calc(100dvh - 16px); }
  .msrf-photo-dialog>header { padding:8px 10px 8px 12px; }
  .msrf-photo-stage img { height:55dvh; }
}
/* Short windows still retain a usable content area and an accessible exit. */
@media(max-height:500px) and (min-width:769px) {
  #v2DealCard.is-msrf-card { top:76px;max-height:calc(100dvh - 88px); }
  #app.is-msrf-market:has(#v2DealCard.is-msrf-card:not([hidden])) .msrf-launcher { display:none; }
  .msrf-card-head { padding-top:8px;padding-bottom:7px; }
  .msrf-dialog { max-height:calc(100dvh - 20px); }
}
@media(max-width:768px) and (max-height:500px) {
  .is-msrf-asset #v2DealCard.is-msrf-card { max-height:calc(100dvh - var(--mbar-h,68px) - var(--mtab-h,72px) - 30px); }
  .msrf-card-head>div>p:first-child { display:none; }
  .msrf-card-head { padding-top:6px;padding-bottom:6px; }
  #v2DealCard.is-msrf-card .msrf-card-head h2 { margin:0 0 3px;font-size:16px; }
  .msrf-photo-stage img { height:45dvh; }
}
@media(max-width:768px) and (max-height:380px) {
  #app.is-msrf-market .is-msrf-asset { z-index:60; }
  .is-msrf-asset #v2DealCard.is-msrf-card {
    top:calc(8px + env(safe-area-inset-top,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));
    max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));z-index:70;
  }
  .msrf-dialog { top:calc(8px + env(safe-area-inset-top,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)); }
}
@media(prefers-reduced-motion:reduce) { #v2DealCard.is-msrf-card { transition:none; } }
