html.foxus-dialog-locked { overflow: hidden !important; overscroll-behavior: none; }
body.foxus-dialog-locked {
  position: fixed !important;
  top: var(--foxus-lock-top) !important;
  left: var(--foxus-lock-left) !important;
  width: 100% !important;
  overflow: hidden !important;
  overscroll-behavior: none;
  box-sizing: border-box;
  padding-right: var(--foxus-lock-padding) !important;
}
[data-foxus-active-dialog] {
  overscroll-behavior: contain;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
}
dialog[data-foxus-active-dialog] {
  box-sizing: border-box;
  position: fixed;
  max-width: calc(100% - 24px);
  max-height: calc(100dvh - 24px);
  max-height: calc(var(--foxus-dialog-height, 100dvh) - 24px);
  overflow-y: auto;
  overflow-x: hidden;
}
dialog[data-foxus-active-dialog]::backdrop { touch-action: none; }
@media (max-width: 767px) {
  dialog[data-foxus-active-dialog] {
    inset: var(--foxus-dialog-top, 0px) 0 auto;
    margin: 12px auto;
    width: calc(100% - 24px);
  }
  [data-foxus-active-dialog] :is(input, select, textarea) {
    font-size: max(16px, 1em) !important;
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
  }
  [data-foxus-active-dialog] :is(form, label, .ops-form-grid) { min-width: 0; }
}
