/* RoomScribe Settings Hub Flow Fix
   Scope: Settings hub only.
   Purpose: keep App settings compact and make the Settings hub scroll area reliable
   so Cloud photo maintenance, Legal documents, Reset and Diagnostics remain reachable. */

body.rs-settings-hub-open {
  overflow: hidden !important;
}

#rsSettingsHubOverlay.rs-settings-hub-overlay:not([hidden]) {
  overflow: hidden !important;
}

#rsSettingsHubOverlay .rs-settings-hub-panel {
  height: 100dvh !important;
  max-height: 100dvh !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  overflow: hidden !important;
}

#rsSettingsHubOverlay .rs-settings-hub-header {
  flex: 0 0 auto !important;
}

#rsSettingsHubOverlay .rs-settings-hub-scroll {
  min-height: 0 !important;
  height: 100% !important;
  max-height: 100% !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
  display: flex !important;
  flex-direction: column !important;
  align-content: normal !important;
  gap: 14px !important;
  padding: 16px 16px max(36px, env(safe-area-inset-bottom)) !important;
}

#rsSettingsHubOverlay .rs-settings-hub-scroll > .rs-settings-hub-section {
  flex: 0 0 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  position: relative !important;
  transform: none !important;
}

#rsSettingsHubAppSettingsSection,
#rsSettingsHubCloudSection,
#rsSettingsHubLegalSection,
#rsSettingsHubResetSection,
#rsSettingsHubDiagnosticsSection {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#rsSettingsHubMovedAppSettings {
  display: grid !important;
  gap: 12px !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

#rsSettingsHubMovedAppSettings > h2 {
  display: none !important;
}

#rsSettingsHubMovedAppSettings .dm-intro {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

#rsSettingsHubMovedAppSettings .rs-pdf-customiser {
  margin: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  display: grid !important;
  gap: 12px !important;
}

#rsSettingsHubMovedAppSettings .rs-pdf-customiser > h3 {
  margin-top: 0 !important;
}

#rsSettingsHubMovedAppSettings .rs-fields {
  min-height: 0 !important;
}

#rsSettingsHubMovedAppSettings .rs-logo-preview,
#rsSettingsHubAppSettingsSlot .rs-logo-preview,
#rsSettingsLogoPreview {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 88px !important;
  height: clamp(88px, 18dvh, 144px) !important;
  max-height: 144px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
}

#rsSettingsHubMovedAppSettings .rs-logo-preview img,
#rsSettingsHubAppSettingsSlot .rs-logo-preview img,
#rsSettingsLogoPreviewImg {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 112px !important;
  object-fit: contain !important;
  flex: 0 1 auto !important;
}

@media (max-width: 720px) {
  #rsSettingsHubOverlay .rs-settings-hub-scroll {
    padding: 14px 14px max(36px, env(safe-area-inset-bottom)) !important;
  }

  #rsSettingsHubMovedAppSettings .rs-logo-preview,
  #rsSettingsHubAppSettingsSlot .rs-logo-preview,
  #rsSettingsLogoPreview {
    height: 104px !important;
    max-height: 104px !important;
  }

  #rsSettingsHubMovedAppSettings .rs-logo-preview img,
  #rsSettingsHubAppSettingsSlot .rs-logo-preview img,
  #rsSettingsLogoPreviewImg {
    max-height: 82px !important;
  }
}
