/* Approved room-detail PC V2. No declarations for the public/room selection cards or mobile. */
@media (min-width:769px) {
  .desktop-house-detail-dialog.rmp-modal { width:min(1320px,calc(100vw - 64px)); }
  .rmp-info { --rmp-line:#e2eaf3; --rmp-muted:#8190a7; --rmp-ink:#243d60; }
  .rmp-info>.detail-content { display:grid!important; grid-template-columns:repeat(12,minmax(0,1fr)); gap:10px 12px; align-content:start; align-items:stretch; padding:12px 18px 22px!important; background:#f1f6fb; }
  .rmp-info .detail-top-bar { grid-column:1/-1; grid-row:1; margin:0!important; }
  .rmp-info #room-tabs-scroll { grid-column:1/-1; grid-row:2; min-height:59px; }
  .rmp-info #ym-room-header { grid-column:1/10; grid-row:3; display:grid!important; grid-template-columns:minmax(0,1.18fr) minmax(0,1fr); gap:12px; height:auto!important; min-height:286px; margin:0!important; background:transparent!important; border:0!important; box-shadow:none!important; padding:0!important; max-height:none!important; overflow:visible!important; }
  .rmp-info #ym-rh-photos,.rmp-info #ym-rh-info,.rmp-info #dt-info>.glass-card,.rmp-info #svc-policy-slot>.glass-card,.rmp-info #ym-room-rent-info>.glass-card,.rmp-info .tenant-card-v2,.rmp-info .tc-vacant,.rmp-info .rmp-device-group,.rmp-info .drp-followup,.rmp-info .rmp-contract-summary { min-width:0; box-sizing:border-box; margin:0!important; background:#fff!important; border:1px solid var(--rmp-line)!important; border-radius:8px!important; box-shadow:0 2px 6px #29466a09!important; padding:14px!important; max-height:none!important; }
  .rmp-info #ym-rh-photos { position:relative; display:grid!important; grid-template-columns:minmax(0,1fr) 56px; grid-template-rows:28px minmax(0,1fr); column-gap:8px; min-width:0!important; width:auto!important; height:286px!important; flex:none!important; overflow:hidden; }
  .rmp-info .rmp-photo-heading,.rmp-info .rmp-status-heading { color:var(--rmp-ink); font-size:14px; font-weight:700; min-height:22px; }
  .rmp-info .rmp-photo-heading { grid-column:1/-1; display:flex; align-items:start; justify-content:space-between; }
  .rmp-info .ym-rh-edit-overlay { position:static!important; border:0!important; background:#eef4ff!important; color:#4766a0!important; font-size:12px!important; padding:2px 6px!important; border-radius:4px!important; box-shadow:none!important; }
  .rmp-info #ym-rh-scroll { grid-column:1; grid-row:2; position:static!important; width:100%!important; height:100%!important; min-height:0; display:flex!important; overflow-x:auto!important; overflow-y:hidden!important; border-radius:5px; scroll-snap-type:x mandatory; }
  .rmp-info .ym-rh-slide { width:100%!important; min-width:100%!important; height:100%!important; scroll-snap-align:start; }
  .rmp-info .ym-rh-slide img { width:100%!important; height:100%!important; object-fit:contain!important; background:#f0f3f7; }
  .rmp-info .rmp-photo-strip { grid-column:2; grid-row:2; display:flex; flex-direction:column; gap:6px; min-height:0; }
  .rmp-info .rmp-photo-strip button { flex:1; min-height:0; width:56px; padding:0; border:1px solid #dce5f0; border-radius:5px; background:#eff4fa; overflow:hidden; color:#607da4; cursor:pointer; }
  .rmp-info .rmp-photo-strip img { width:100%; height:100%; object-fit:cover; }
  .rmp-info .rmp-photo-arrow { position:absolute; top:55%; z-index:1; width:27px; height:27px; border:0; border-radius:50%; color:#fff; background:#1c2a4265; font-size:23px; line-height:1; cursor:pointer; }
  .rmp-info .rmp-photo-arrow.prev { left:18px; } .rmp-info .rmp-photo-arrow.next { right:82px; }
  .rmp-info #ym-rh-count { bottom:20px!important; right:84px!important; background:#273a566d!important; border-radius:4px!important; font-size:11px!important; }
  .rmp-info .rmp-photo-empty { position:absolute; inset:50px 14px 14px; display:grid; place-items:center; background:#f4f7fb; color:#9ca8b8; border-radius:5px; }
  .rmp-info #ym-rh-info { width:auto!important; flex:none!important; display:flex; flex-direction:column; gap:8px; overflow:visible!important; }
  .rmp-info .ym-rh-status-row { flex-wrap:wrap; gap:6px; margin:0!important; padding-bottom:10px; border-bottom:1px solid #edf2f7; }
  .rmp-info #ym-rh-price { font-size:24px!important; color:#385da0!important; }
  .rmp-info .ym-rh-unit { color:#8b98aa; font-size:11px!important; }
  .rmp-info #ym-rh-device-tags { display:flex!important; flex-direction:column!important; gap:0!important; flex:1; }
  .rmp-info #ym-rh-device-tags .v2-devrow,.rmp-info #ym-rh-device-tags .v2-line-clean { display:flex!important; align-items:center; gap:8px; min-height:29px; border-bottom:1px solid #edf2f7; }
  .rmp-info #ym-rh-device-tags .d-val { margin-left:auto; }
  .rmp-info #ym-rh-device-tags .v2-sep { display:none; }
  .rmp-info #ym-rh-device-tags .v2-clean-tag { margin-left:auto; }
  .rmp-info #ym-rh-consult { margin-top:0!important; }
  .rmp-info #ym-room-rent-info { grid-column:1/10; grid-row:4; margin:0!important; }
  .rmp-info .dt-rent-info { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0!important; padding:0!important; }
  .rmp-info .dt-rent-info-item { display:flex!important; align-items:baseline; gap:10px; padding:0 14px!important; border-right:1px solid #e7edf5; min-width:0; background:transparent!important; border-radius:0!important; }
  .rmp-info .dt-rent-info-item:first-child { padding-left:0!important; } .rmp-info .dt-rent-info-item:last-child { border:0; }
  .rmp-info .dt-rent-info-label { color:var(--rmp-muted)!important; font-size:11px!important; margin:0!important; }
  .rmp-info .dt-rent-info-value { font-size:16px!important; color:#405c88!important; }
  .rmp-info #ym-status-tags { grid-column:1/10; grid-row:5; margin:0!important; }
  .rmp-info .rmp-action-strip { grid-column:1/10; grid-row:6; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:6px; padding:8px; background:#fff; border:1px solid var(--rmp-line); border-radius:8px; }
  .rmp-info .rmp-action-strip #ym-room-actions,.rmp-info .rmp-action-strip #ym-room-smart-actions { display:contents!important; }
  .rmp-info .rmp-action-strip #ym-room-actions[style*="display: none"],.rmp-info .rmp-action-strip #ym-room-actions[style*="display:none"],.rmp-info .rmp-action-strip #ym-room-smart-actions[style*="display: none"],.rmp-info .rmp-action-strip #ym-room-smart-actions[style*="display:none"] { display:none!important; }
  .rmp-info .rmp-action-strip .ra-btn,.rmp-info .rmp-action-strip .sa-btn { min-width:0!important; width:auto!important; margin:0!important; min-height:48px; background:#eef4ff!important; color:#365787!important; border:1px solid #dbe5f5!important; border-radius:6px!important; box-shadow:none!important; font-size:12px!important; }
  .rmp-info .rmp-action-strip .rb-ic { font-size:16px!important; }
  .rmp-info #ym-tenant-card { grid-column:1/10; grid-row:7; margin:0!important; }
  .rmp-info .tenant-card-v2 { padding:12px 14px!important; }
  .rmp-info .tenant-card-v2 .v2-idrow { padding:0 0 8px!important; }
  .rmp-info .tenant-card-v2 .v2-det:empty { display:none; }
  .rmp-info .tenant-card-v2 .v2-period { padding:8px 0!important; gap:10px; }
  .rmp-info .tenant-card-v2 .v2-g3 { padding:8px 0!important; }
  .rmp-info .tenant-card-v2__billing { padding:8px 0 0!important; }
  .rmp-info #detail-tabs { grid-column:1/10; grid-row:8; margin:0!important; padding:0 10px!important; display:flex!important; justify-content:space-between; min-height:42px; background:#fff!important; border:1px solid var(--rmp-line); border-radius:8px; }
  .rmp-info #detail-tabs .dt-tab { font-size:12px!important; padding:10px 4px!important; }
  .rmp-info .detail-main-wrap,.rmp-info .detail-main-left,.rmp-info #dt-info.active,.rmp-info #svc-policy-slot { display:contents!important; }
  .rmp-info .dt-sub-content:not(.active) { display:none!important; }
  .rmp-info :is(#dt-workorder,#dt-log).active { grid-column:1/10; grid-row:9; display:block!important; min-width:0; width:auto!important; padding:0!important; margin:0!important; }
  .rmp-info #dt-info>.glass-card { grid-column:1/10; min-width:0; }
  .rmp-info .rmp-follow { grid-row:10; }
  .rmp-info .rmp-base { grid-row:10; }
  .rmp-info .rmp-community { grid-column:1/5!important; grid-row:11; }
  .rmp-info .rmp-intro { grid-column:5/-1!important; grid-row:11; }
  .rmp-info .rmp-business { grid-column:1/5!important; grid-row:12; }
  .rmp-info .rmp-metro { grid-column:5/9!important; grid-row:12; }
  .rmp-info .rmp-org { grid-column:9/-1!important; grid-row:12; }
  .rmp-info .rmp-tags { grid-column:1/10!important; grid-row:9; }
  .rmp-info .rmp-service { grid-column:1/5; grid-row:13; }
  .rmp-info .rmp-policy { grid-column:5/9; grid-row:13; }
  .rmp-info .rmp-note { grid-column:9/-1!important; grid-row:13; }
  .rmp-info .rmp-community,.rmp-info .rmp-intro { min-height:200px; height:auto!important; overflow:visible!important; }
  .rmp-info .rmp-business,.rmp-info .rmp-metro,.rmp-info .rmp-org { min-height:103px; }
  .rmp-info .rmp-service,.rmp-info .rmp-policy,.rmp-info .rmp-note { min-height:230px; }
  .rmp-info .gc-title { display:flex!important; align-items:center; gap:8px; font-size:14px!important; color:var(--rmp-ink)!important; font-weight:700!important; margin:0 0 10px!important; padding:0 0 8px!important; border-bottom:1px solid #edf2f7; }
  .rmp-info .gc-title>[onclick] { margin-left:auto; font-size:12px!important; font-weight:500!important; color:#476fa8!important; }
  .rmp-info .rmp-follow .gc-title>[onclick],.rmp-info .rmp-note .gc-title>[onclick] { width:auto!important; height:26px!important; border-radius:5px!important; padding:0 9px!important; background:#edf4ff!important; color:#476fa8!important; box-shadow:none!important; }
  .rmp-info .dt-room-core { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px 16px; }
  .rmp-info .dt-room-base { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; }
  .rmp-info .dt-room-base-item { display:grid!important; grid-template-columns:78px minmax(0,1fr); gap:7px; align-items:start; min-width:0; border:0!important; padding:0!important; margin:0!important; }
  .rmp-info .dt-room-base-label { color:var(--rmp-muted)!important; font-size:11px!important; }
  .rmp-info .dt-room-base-value { color:var(--rmp-ink)!important; font-size:12px!important; line-height:1.5; white-space:normal!important; overflow-wrap:anywhere; }
  .rmp-info .rmp-community .dt-room-base-item { grid-template-columns:68px minmax(0,1fr); }
  .rmp-info .dt-ci-text { font-size:12px!important; color:#71839b!important; line-height:1.8!important; -webkit-line-clamp:3; }
  .rmp-info .dt-ci-toggle { float:right; margin-top:6px; font-size:12px; }
  .rmp-info .rmp-business .kv-row,.rmp-info .rmp-metro .kv-row { align-items:flex-start!important; padding:0!important; gap:7px; }
  .rmp-info .kv-title,.rmp-info .staff-label { font-size:14px!important; font-weight:700!important; color:var(--rmp-ink)!important; padding-bottom:8px; margin:0 0 9px!important; border-bottom:1px solid #edf2f7; }
  .rmp-info .kv-icon,.rmp-info .staff-avatar { width:24px!important; height:24px!important; font-size:13px!important; background:#eef4fc!important; border-radius:5px!important; }
  .rmp-info .kv-text,.rmp-info .staff-value { font-size:12px!important; color:var(--rmp-ink)!important; line-height:1.7; white-space:normal!important; overflow-wrap:anywhere; }
  .rmp-info .dt-room-staff { padding:0!important; gap:8px; align-items:start; }
  .rmp-info .fac-tag-wrap { gap:6px!important; }
  .rmp-info .fac-tag { font-size:11px!important; padding:4px 8px!important; border-radius:5px!important; }
  .rmp-info .rmp-service>.gc-title>span>span { display:none; }
  .rmp-info .rmp-service>.gc-title+div { display:flex!important; flex-direction:column; gap:6px!important; }
  .rmp-info .rmp-service>.gc-title+div>div:last-child[style*="max-width"] { flex-direction:row!important; max-width:none!important; width:auto!important; justify-content:space-between!important; padding:4px 0!important; border:0!important; background:transparent!important; }
  .rmp-info .rmp-service>.gc-title+div>div:last-child[style*="max-width"]>div:first-child { width:auto!important; height:auto!important; border:0!important; line-height:1.4!important; }
  .rmp-info .rmp-service>.gc-title+div>div:first-child>div { padding:8px 0!important; }
  .rmp-info .rmp-service a { font-size:12px!important; }
  .rmp-info .rmp-policy { height:auto!important; min-height:230px; }
  .rmp-info .rmp-policy>.gc-title~div { box-sizing:border-box; min-height:34px; padding:8px 0!important; margin:0!important; font-size:12px; line-height:18px!important; border-bottom:1px solid var(--rmp-line)!important; }
  .rmp-info .rmp-policy>.gc-title~div:last-child { border-bottom:0!important; }
  .rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy) { display:block!important; }
  .rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy)>div:first-child,.rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy)>div:last-child { display:none!important; }
  .rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy)>div:nth-child(2),.rmp-info .rmp-contract-policy { display:grid!important; grid-template-columns:44px minmax(0,1fr); gap:7px; align-items:start; min-width:0; width:100%; }
  .rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy)>div:nth-child(2)>div,.rmp-info .rmp-contract-policy>* { min-width:0; font-size:12px!important; line-height:18px!important; margin:0!important; white-space:pre-wrap!important; overflow-wrap:anywhere; }
  .rmp-info .rmp-policy>.gc-title~div:not(.rmp-contract-policy)>div:nth-child(2)>div:first-child,.rmp-info .rmp-contract-policy span { color:var(--rmp-muted)!important; white-space:nowrap!important; }
  .rmp-info #detail-right-panel { grid-column:10/-1; grid-row:3/11; width:auto!important; min-width:0!important; max-width:none!important; padding:0!important; margin:0!important; border:0!important; background:transparent!important; position:static!important; align-self:start; }
  .rmp-info .drp-tabs { display:flex!important; justify-content:space-between; background:#fff!important; border:1px solid var(--rmp-line); border-radius:8px; padding:9px!important; margin-bottom:10px; }
  .rmp-info .drp-tab { font-size:12px!important; padding:3px!important; }
  .rmp-info #drp-quick { padding:0!important; }
  .rmp-info #drp-quick>.drp-followup,.rmp-info #drp-quick>.rmp-contract-summary { margin-top:10px!important; }
  .rmp-info #drp-quick>.drp-followup { display:none!important; }
  .rmp-info #drp-quick>.rmp-follow { margin:10px 0 0!important; padding:14px!important; background:#fff!important; border:1px solid var(--rmp-line)!important; border-radius:8px!important; box-shadow:0 2px 6px #29466a09!important; min-width:0; }
  .rmp-info .drp-device-card { padding:10px 0!important; margin:0!important; border:0!important; border-bottom:1px solid #edf2f7!important; background:transparent!important; box-shadow:none!important; }
  .rmp-info .drp-device-card:first-child { padding-top:0!important; }
  .rmp-info .drp-device-card:last-child { padding-bottom:0!important; border:0!important; }
  .rmp-info .drp-device-name { font-size:13px!important; }
  .rmp-info .drp-device-status,.rmp-info .drp-device-info { font-size:11px!important; }
  .rmp-info .drp-device-actions { display:flex!important; flex-wrap:wrap; gap:6px; }
  .rmp-info .drp-device-btn,.rmp-info .tenant-card-v2__contract-btn,.rmp-info #ym-rh-consult button,.rmp-info .tc-vacant button,.rmp-info .rmp-contract-button { background:#eef4ff!important; color:#466596!important; border:1px solid #dbe5f5!important; box-shadow:none!important; border-radius:5px!important; font-size:12px!important; padding:6px 9px!important; min-height:29px!important; font-weight:500!important; cursor:pointer; }
  .rmp-info .drp-device-btn:hover,.rmp-info .tenant-card-v2__contract-btn:hover,.rmp-info #ym-rh-consult button:hover,.rmp-info .rmp-contract-button:hover { background:#e1ecfc!important; border-color:#b8d0f2!important; }
  .rmp-info .drp-followup textarea { box-sizing:border-box; width:100%; min-height:74px; font-size:12px; border:1px solid #dfe7f1; border-radius:5px; background:#fafcff; padding:8px; resize:vertical; }
  .rmp-info .rmp-summary-row { display:grid; grid-template-columns:68px minmax(0,1fr); gap:8px; min-height:28px; font-size:12px; align-items:center; }
  .rmp-info .rmp-summary-row span { color:var(--rmp-muted); } .rmp-info .rmp-summary-row b { color:var(--rmp-ink); font-weight:500; overflow-wrap:anywhere; }
  .rmp-info .rmp-contract-button { width:100%; margin-top:8px; }
  .rmp-info .followup-list { font-size:12px!important; }
}
@media (min-width:769px) and (max-width:1100px) {
  .rmp-info .rmp-action-strip { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .rmp-info .dt-room-core { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rmp-info .dt-room-base { grid-template-columns:minmax(0,1fr); }
  .rmp-info .rmp-community { min-height:260px; }
  .rmp-info .rmp-intro { min-height:260px; }
}

/* Only the two vacant-room primary actions use the system blue, retaining native sizes. */
.desktop-house-detail-dialog #ym-tenant-card .tc-vacant button:is([onclick^="openLockModal("],[onclick="openRoomContract()"]):not(:disabled){background:var(--wp-color-primary,#2563eb)!important;color:#fff!important;border-color:var(--wp-color-primary,#2563eb)!important}
.desktop-house-detail-dialog #ym-tenant-card .tc-vacant button:is([onclick^="openLockModal("],[onclick="openRoomContract()"]):not(:disabled):hover{background:var(--wp-color-primary-hover,#1d4ed8)!important;color:#fff!important;border-color:var(--wp-color-primary-hover,#1d4ed8)!important}

/* Shared room photo standard: main image fills the card; keep the house-management edit control. */
@media (min-width:769px) {
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) {padding:0!important;grid-template-rows:minmax(0,1fr)!important;grid-template-columns:minmax(0,1fr) 64px!important;column-gap:8px}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-heading {position:absolute;top:8px;right:76px;z-index:2;display:block;min-height:0;font-size:0;line-height:0}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .ym-rh-edit-overlay {font-size:12px!important;line-height:20px;background:#ffffffeb!important;color:#2563eb!important}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) #ym-rh-scroll {grid-row:1!important;border-radius:7px 0 0 7px}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .ym-rh-slide img {object-fit:cover!important}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-strip {grid-row:1!important;margin:8px 8px 8px 0}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-arrow {top:50%;transform:translateY(-50%)}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-arrow.prev {left:8px}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-arrow.next {right:76px}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) #ym-rh-count {bottom:8px!important;right:76px!important}
body #desktop-house-detail-modal .rmp-info #ym-rh-photos:not(.find-photos-enabled) .rmp-photo-empty {inset:0 64px 0 0;border-radius:7px 0 0 7px}
}

/* --- 跟进卡中间态外露修复 (2026-10-17) ---
   同 house-public-area-v3.css 的说明：房间详情重渲染时渲染器会先在
   #dt-info 里画一张「最新跟进」卡（位于基础信息上方），随后才搬入
   #drp-quick 并去重。搬家前的一瞬会露出该卡。宽屏(>=1101px)有侧栏，
   故隐藏仍留在 #dt-info 且未获搬家标记 rmp-follow 的跟进卡；
   搬家后自动恢复。仅 CSS，不动 JS 与数据。 */
@media (min-width:1101px) {
  body #desktop-house-detail-modal .rmp-info #dt-info > .rmp-follow:not(.gqu-moved-follow),
  body #desktop-house-detail-modal .rmp-info #dt-info > .gq-section-follow:not(.gqu-moved-follow):not(.rmp-follow) {
    display:none!important;
  }
}
