/* Audiencias/seguimientos: un solo contenedor de desplazamiento. */
.cdk-global-overlay-wrapper:has(.lw-activity-dialog) {
  align-items: center !important;
  justify-content: center !important;
  padding: 16px !important;
  box-sizing: border-box;
}
.cdk-overlay-pane:has(.lw-activity-dialog) {
  width: min(1344px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: 0 !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) :is(.mat-mdc-dialog-container, .mat-mdc-dialog-inner-container) {
  height: auto !important;
  min-height: 0 !important;
  max-height: inherit !important;
  padding: 0 !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) :is(.mat-mdc-dialog-surface, .mat-dialog-container) {
  height: auto !important;
  min-height: 0 !important;
  max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border-radius: 24px !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) app-registroactividad,
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog,
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog .lw-dialog-body {
  display: block;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog .lw-dialog-header {
  position: static !important;
  height: auto !important;
  min-height: 0 !important;
  flex-wrap: wrap;
  padding: 16px 24px !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog .lw-dialog-body {
  padding: 16px 22px 24px !important;
}
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-aud-safe-field { min-width: 0; }
.cdk-overlay-pane:has(.lw-activity-dialog) .lw-aud-safe-field :is(input,select,textarea) {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
@media (max-width: 600px) {
  .cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog .lw-dialog-header { padding: 12px 16px !important; }
  .cdk-overlay-pane:has(.lw-activity-dialog) .lw-activity-dialog .lw-dialog-body { padding: 10px 0 18px !important; }
  .cdk-overlay-pane:has(.lw-activity-dialog) .lw-aud-safe-grid { grid-template-columns: minmax(0,1fr) !important; }
}

/* Agenda mobile: keep the explanatory note above its save action in normal flow. */
@media (max-width: 768px) {
  html body .cdk-overlay-pane:has(.lw-activity-dialog) .lw-mobile-dialog-actions {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    margin: 16px 0 0 !important;
  }
  html body .cdk-overlay-pane:has(.lw-activity-dialog) .lw-mobile-dialog-actions .lw-save-bottom {
    margin-top: 0 !important;
  }
  html body .cdk-overlay-pane:has(.lw-activity-dialog) .lw-note {
    height: auto !important;
    max-height: none !important;
    align-items: flex-start !important;
  }
  html body .cdk-overlay-pane:has(.lw-activity-dialog) .lw-note > span {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
