/* Mr. Moto native Showcase detail skin — public listing detail 1.0.1.
 * Scoped to the native listing-detail body class .mm-idx-detail-page and loaded
 * after the provider stylesheet. Search/account pages are outside this scope.
 * Derived from revised Figma and saved native source; selectors inspected in logged-in native detail DOM.
 * Undocumented hooks: sidx-main-header, sidx-listing-details, sidx-columns, sidx-left-column,
 * sidx-right-column, sidx-price-area, sidx-price, sidx-price-type,
 * sidx-days-online, sidx-listing-heading, sidx-sub-address, sidx-info-title,
 * sidx-reversing, sidx-call, sidx-call-text, sidx-population-insight,
 * sidx-household-insight (also used by native EmploymentInsight),
 * sidx-info-value, sidx-call-to-actions, sidx-details-table,
 * sidx-details-table__friends, sidx-details-table__timeline, sidx-heading, sidx-schools,
 * sidx-listing-description, sidx-disclaimer, sidx-disclaimers,
 * sidx-listing-disclaimer, sidx-listing-disclaimer-center, sidx-powered-by,
 * sidx-primary-actions outside its documented jumbo combination,
 * sidx-primary-action, sidx-primary-action-text-container, sidx-times,
 * sidx-walkscore-iframe-holder, mortgage-calculator,
 * mortgage-calculator__form-group, mortgage-calculator__disclaimer,
 * sidx-main-app-body, sidx-view-nav, sidx-prev, sidx-next, sidx-menu-item,
 * sidx-selected, sidx-primary-info-top, sidx-primary-info-item-title-top,
 * sidx-primary-info-item-title-bottom,
 * sidx-list-item-label, sidx-list-item-value, sidx-primary-info-bottom,
 * sidx-modal-container, sidx-modal-chrome, sidx-modal-heading,
 * sidx-main-heading, sidx-modal-input, sidx-modal-main-button, sidx-policy__text,
 * primary-action icon state classes blue/yellow. See README.md for limits.
 */
/* Targets the native detail root; does not affect cards/search/account pages. */
.mm-idx-detail-page .sidx-container .sidx-listing-details { width:100%; min-width:0; max-width:1200px; margin-inline:auto; padding:24px 0; color:#2b2b2b; font:400 17px/1.65 Lato,sans-serif; }
/* Targets native columns; swap only their visual direction, not provider data. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns { display:flex; flex-direction:row-reverse; gap:32px; align-items:flex-start; }
/* Targets native left rail; retains its original children and disclaimer slots. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-left-column { flex:0 0 328px; width:328px; min-width:0; margin:0; padding:24px 20px; align-self:flex-start; box-sizing:border-box; background:#141414; border:1px solid #2e2e2e; border-radius:16px; color:#fff; overflow-wrap:anywhere; }
/* Targets native right/main column; allows long facts/remarks to wrap. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-right-column { flex:1 1 840px; width:auto; min-width:0; margin:0; overflow-wrap:anywhere; }
/* Targets the rail price row; long real prices may wrap the status pill. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-price-area { flex-wrap:wrap; gap:8px; }
/* Targets native price; actual feed value is unchanged. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-price { font:500 42px/1.15 Oswald,sans-serif; color:#fec830; }
/* Targets native address and h1; preserve the one real listing heading. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-listing-heading,
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-listing-heading h1 { font:500 24px/1.3 Oswald,sans-serif; color:#fff; }
/* Targets the address wrapper in the rail, overriding the native tablet 50%
 * split without changing address/status content or their DOM order. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-left-column .sidx-reversing > .sidx-listing-heading { width:100%; min-width:0; }
/* Targets the native status line; keep body type under the Oswald address. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-sub-address { font:700 12px/1.5 Lato,sans-serif; }
/* Targets native rail labels/status/price units; readable on the dark rail. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column :is(.sidx-sub-address,.sidx-info-title,.sidx-price-type) { color:#b8bdbf; }
/* Targets native rail fact values; no field ordering changes. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-info-value { color:#fff; }
/* Targets native days-online and documented new-listing ribbon; keep text. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(.sidx-days-online,.sidx-ribbon.sidx-new-listing) { background:#010101; color:#fec830; border-radius:999px; padding:7px 12px; font:700 12px/1.4 Lato,sans-serif; }
/* Targets native section headings and the retained calculator heading. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(.sidx-heading,.mortgage-calculator h2) { color:#010101; font:500 28px/1.25 Oswald,sans-serif; }
/* Targets native listing remarks; no text edits or excerpting. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-listing-description { color:#2b2b2b; font:400 17px/1.65 Lato,sans-serif; }
/* Targets native main-column tables and the original mortgage calculator.
 * Calculator stays in its native rail slot, unlike Figma; see README.md. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-right-column .sidx-details-table,
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator { background:#fff; color:#2b2b2b; border:1px solid #e3e6e8; border-radius:12px; padding:24px 20px; margin-block:24px; }
/* Targets genuine native Ask/Tour/Calculate buttons, never replacement forms. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(.sidx-call-to-actions,.mortgage-calculator) button { min-height:44px; padding:14px 18px; border:0; border-radius:6px; background:linear-gradient(135deg,#fec830,#ea7a33); color:#010101; font:700 16px/1.3 Lato,sans-serif; }
/* Targets the existing rail Ask/Tour buttons, including the provider's tablet
 * width rule. The original modal handlers stay on the original controls. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-left-column .sidx-call-to-actions button { width:100%; max-width:100%; box-sizing:border-box; }
/* Targets the provider's optional rail phone prompt/link on the dark card. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-left-column .sidx-call-to-actions .sidx-call-text { color:#b8bdbf; }
/* Targets the same native phone link; its actual configured phone is retained. */
.mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > .sidx-left-column .sidx-call-to-actions .sidx-call a { color:#fec830; }
/* Targets native calculator heading/form spacing within the narrow rail. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator h2 { margin:0 0 20px; }
/* Targets the calculator's own form, removing the native second set of gutters. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator form { padding:0; min-width:0; }
/* Targets the exact calculator disclosure; retain all text at readable contrast. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator .mortgage-calculator__disclaimer { color:#2b2b2b; font:400 13px/1.6 Lato,sans-serif; padding:16px 0 0; }
/* Targets calculator labels/inputs; maintain contrast inside its white card. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator :is(label,input,select) { color:#2b2b2b; font-family:Lato,sans-serif; }
/* Targets calculator fields; touch-size and font avoid mobile input zoom. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .mortgage-calculator :is(input,select) { min-height:44px; max-width:100%; font-size:16px; border:1px solid #c9ced2; border-radius:4px; background:#fff; }
/* Targets native main action bar; original Save/Ask/Tour/Share actions remain. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-right-column .sidx-primary-actions.sidx-primary-jumbo { padding:24px 20px; border:1px solid #e3e6e8; border-radius:12px; background:#fff; }
/* Targets native action labels and inactive icons only. Do not erase the
 * provider's saved-state class by applying a single color to every icon. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-primary-actions :is(.sidx-primary-action-text-container,.sidx-primary-action-icon-container i.blue) { color:#2b2b2b; }
/* Targets native active Save icons; dark gold is distinct and exceeds 3:1 on
 * the white bar. State remains controlled entirely by the provider. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-primary-actions .sidx-primary-action-icon-container i.yellow { color:#926700; }
/* Targets only Friends & Family and Recent Activity containers, verified in
 * provider source. Does not target generic facts/history/disclaimer tables. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(.sidx-details-table__friends,.sidx-details-table__timeline) { display:none; }
/* Targets duplicate toolbars: one main bar only, per task. Rail mini-toolbar
 * is omitted despite Figma showing it; Ask/Tour buttons remain in the rail. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column > .sidx-primary-actions,
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-right-column > .sidx-primary-actions ~ .sidx-primary-actions { display:none; }
/* Targets only the primary Hide action, not other controls with close icons.
 * Validate the actual action icon/state in logged-in DOM before deployment. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-primary-actions .sidx-primary-action:has(.sidx-times) { display:none; }
/* Targets native school block only; field facts such as school district stay. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-schools { display:none; }
/* Targets Neighborhood & Commute's Walkscore wrapper and its source line.
 * Confirm the iframe timing and adjacent source line in logged-in DOM. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-details-table:has(.sidx-walkscore-iframe-holder),
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-details-table:has(.sidx-walkscore-iframe-holder) + .sidx-listing-disclaimer-center { display:none; }
/* Targets only source-confirmed premium demographic sections. Employment uses
 * sidx-household-insight too. Keep their parent span and sibling disclosures /
 * conditional brokerage credits; never hide the entire premium wrapper. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-right-column :is(.sidx-population-insight,.sidx-household-insight) { display:none; }
/* Targets all required native attribution/disclaimer/powered-by text. No
 * provider text is removed, paraphrased, line-clamped, or replaced. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(.sidx-disclaimer,.sidx-disclaimers,.sidx-listing-disclaimer,.sidx-powered-by,.sidx-powered-by a) { font:400 13px/1.6 Lato,sans-serif; color:#2b2b2b; }
/* Targets the same required attribution when emitted inside the dark rail. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column :is(.sidx-disclaimer,.sidx-disclaimers,.sidx-listing-disclaimer,.sidx-powered-by,.sidx-powered-by a) { color:#d6d9db; }
/* Targets real links/buttons/fields with visible keyboard focus. */
.mm-idx-detail-page .sidx-container .sidx-listing-details :is(a,button,input,select,[role="button"],[tabindex]):focus-visible { outline:3px solid #a84310; outline-offset:3px; }
/* Targets dark-rail focus targets with gold for contrast. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column :is(a,button,input,select,[role="button"],[tabindex]):focus-visible { outline-color:#fec830; }
@media(max-width:1024px) {
 /* Targets the native columns on touch layouts: rail before main details. */
 .mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns { flex-direction:column; gap:24px; }
 /* Targets both native columns: fit the 390px viewport with 16px gutters. */
 .mm-idx-detail-page .sidx-container .sidx-listing-details > .sidx-columns > :is(.sidx-left-column,.sidx-right-column) { width:100%; max-width:100%; flex-basis:auto; }
 /* Targets the native outer detail root only. */
 .mm-idx-detail-page .sidx-container .sidx-listing-details { padding:24px 16px; }
 /* Targets native tap controls; leaves their original actions intact. */
 .mm-idx-detail-page .sidx-container .sidx-listing-details :is(button,[role="button"],.sidx-primary-action) { min-height:44px; min-width:44px; }
}

/* Targets only the editor-opted-in detail page background. */
body.mm-idx-detail-page { background:#f6f8f9; }
/* Targets native modal portals (they are siblings of the listing app). */
.mm-idx-detail-page .sidx-modal-container .sidx-modal-chrome { background:#fff; color:#2b2b2b; font:400 16px/1.6 Lato,sans-serif; border-radius:16px; }
/* Targets native Ask/Tour/signup headings; provider text is retained. */
.mm-idx-detail-page .sidx-modal-container .sidx-modal-heading .sidx-main-heading { color:#010101; font:500 28px/1.25 Oswald,sans-serif; }
/* Targets native modal fields; no new form, labels, consent or handlers. */
.mm-idx-detail-page .sidx-modal-container .sidx-modal-input { font:400 16px/1.5 Lato,sans-serif; color:#2b2b2b; background:#fff; border:1px solid #c9ced2; border-radius:6px; min-height:44px; }
/* Targets the provider's existing consent and policy slots, including blanks. */
.mm-idx-detail-page .sidx-modal-container :is(.sidx-policy__text,label) { color:#2b2b2b; font:400 13px/1.6 Lato,sans-serif; }
/* Targets native modal submit buttons without submitting or changing consent. */
.mm-idx-detail-page .sidx-modal-container .sidx-modal-main-button { background:linear-gradient(135deg,#fec830,#ea7a33); color:#010101; min-height:44px; border:0; border-radius:6px; font:700 16px/1.4 Lato,sans-serif; }
/* Targets real modal field/button keyboard focus. */
.mm-idx-detail-page .sidx-modal-container :is(a,button,input,textarea,select,[tabindex]):focus-visible { outline:3px solid #a84310; outline-offset:3px; }

/* Targets source-verified native rail list labels (County/Subdivision). */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-list-item-label { color:#b8bdbf; }
/* Targets the corresponding native values without changing feed content. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-list-item-value { color:#fff; }
/* Targets the original rail's secondary fact group, preserving its hierarchy. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-primary-info-bottom { color:#b8bdbf; }
/* Targets the provider app canvas on this preview only; white table cards stay. */
.mm-idx-detail-page main .sidx-container { background-color:#f6f8f9; }
/* Targets our native Elementor footer fragment, outside all provider markup. */
.mm-idx-detail-page .mm-idx-detail-footer { margin:0; width:100%; }
/* Targets only the footer draft's section spacing using its existing globals. */
.mm-idx-detail-page .mm-idx-detail-footer .iv-section-3026 { padding:40px 24px; }
/* Targets native CTA band content, retaining shared R5 styling and editable copy. */
.mm-idx-detail-page .mm-idx-detail-footer .iv-band-3026 { padding:48px 40px; }
/* Targets our fragment's call link keyboard focus. */
.mm-idx-detail-page .mm-idx-detail-footer a:focus-visible { outline:3px solid #010101; outline-offset:4px; }
@media(max-width:767px) {
 /* Targets only our native CTA band gutters on phones. */
 .mm-idx-detail-page .mm-idx-detail-footer .iv-band-3026 { padding:32px 24px; }
}

/* Targets native photo navigation; original click handlers and count stay. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-view-nav { background:#010101; border-radius:6px; }
/* Targets both native carousel arrows without making replacement controls. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-view-nav :is(.sidx-prev,.sidx-next) { color:#fec830; min-width:44px; min-height:44px; }
/* Targets only original arrow icons; keep their actual icon glyphs. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-view-nav :is(.sidx-prev,.sidx-next) i { color:#fec830; }
/* Targets main photo/map/nearby tab labels on the light canvas. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-right-column .sidx-menu-item { color:#2b2b2b; }
/* Targets mobile photo tabs in their native dark-rail position. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column .sidx-menu-item { color:#b8bdbf; }
/* Targets the actual selected photo tab; no selection state is simulated. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu-item.sidx-selected { background:#010101; color:#fec830; border-radius:20px; }
/* Targets native rail fact values with brand display type. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column :is(.sidx-primary-info-top,.sidx-primary-info-bottom) { color:#fff; font:500 24px/1.3 Oswald,sans-serif; }
/* Targets the corresponding native fact labels at readable compact body size. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-left-column :is(.sidx-primary-info-item-title-top,.sidx-primary-info-item-title-bottom) { color:#b8bdbf; font:400 12px/1.5 Lato,sans-serif; }
@media(max-width:1024px) {
 /* Targets only the existing page 77 Elementor shortcode host gutters. */
 .mm-idx-detail-page .elementor-77 > .e-con { padding-inline:0; }
 /* Targets the host inner padding so our 16px detail gutter is applied once. */
 .mm-idx-detail-page .elementor-77 > .e-con > .e-con-inner { padding-block:0; max-width:none; }
 /* Targets native app-body padding; detail root retains its own 16px gutter. */
 .mm-idx-detail-page .sidx-container .sidx-main-app-body { padding-inline:0; }
}

/* Targets the native photo-array paging button, with no replacement action. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-photo-array button { color:#fec830; background:#010101; min-height:44px; border:1px solid #fec830; border-radius:6px; font:700 14px/1.5 Lato,sans-serif; }

/* Targets the native CTA title in this fragment only; shared global is intact. */
.mm-idx-detail-page .mm-idx-detail-footer .iv-h2-3026 { font-size:52px; line-height:1.15; }
/* Targets spacing between the referenced R7 block and its lender/program slot. */
.mm-idx-detail-page .mm-idx-detail-footer .iv-disclosures-3026 .iv-content-3026 { gap:14px; }
@media(max-width:767px) {
 /* Targets only the private footer's native mobile CTA heading. */
 .mm-idx-detail-page .mm-idx-detail-footer .iv-h2-3026 { font-size:30px; }
}

/* Targets the native photo/map/nearby row: Figma 16px photo gap and 8px tab gaps. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu { padding-top:16px; gap:8px; justify-content:flex-start; }
/* Targets native tabs with Figma pill shape, white surface, border and label type. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item { box-sizing:border-box; display:flex; align-items:center; justify-content:center; height:40px; min-width:0; padding:0 12px; margin:0; border:1px solid #c9ced2; border-radius:20px; background:#fff; color:#2b2b2b; font:700 13px/18px Lato,sans-serif; }
/* Targets the three existing tab widths from Figma; shrink together on phones. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item:nth-child(1) { flex:0 1 120px; }
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item:nth-child(2) { flex:0 1 100px; }
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item:nth-child(3) { flex:0 1 160px; }
/* Targets decorative tab icons only: Figma uses text labels. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item i { display:none; }
/* Targets the real selected tab, preserving native state and Figma black/gold. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item.sidx-selected { background:#010101; border-color:#010101; color:#fec830; }
/* Targets inactive tab hover with Alex's approved gold fill and black text. */
.mm-idx-detail-page .sidx-container .sidx-listing-details .sidx-menu .sidx-menu-item:not(.sidx-selected):hover { background:#fec830; border-color:#fec830; color:#010101; }

/* Targets the native main app canvas only; individual white cards retain their surfaces. */
.mm-idx-detail-page .sidx-container .sidx-main-app-body { background:transparent; }

/* Native Showcase search/account navbar duplicates the shared site header.
 * Provider inline display:flex requires this one scoped important override. */
body.mm-idx-detail-page .sidx-container .sidx-main-header { display:none !important; }
/* Native app starts below the existing fixed shared site header. */
body.mm-idx-detail-page #sidx-main-container { padding-top:98px; }
@media(max-width:1024px) {
  /* Match the shared tablet/mobile header's 90px height. */
  body.mm-idx-detail-page #sidx-main-container { padding-top:90px; }
}
