/*
  Toast layer fix: keep notifications above modals, drawers and loading overlays.
  Scope is limited to toast containers; modal overlay behavior is intentionally untouched.
*/
:root {
  --auto-toast-z-index: 2147483647;
}

[data-rht-toaster],
[data-sonner-toaster],
[data-radix-toast-viewport],
.Toastify__toast-container {
  position: fixed !important;
  z-index: var(--auto-toast-z-index) !important;
  pointer-events: none !important;
  isolation: isolate !important;
}

[data-rht-toaster] > *,
[data-sonner-toaster] > *,
[data-radix-toast-viewport] > *,
.Toastify__toast-container > * {
  pointer-events: auto !important;
}

[data-rht-toaster] [role="status"],
[data-rht-toaster] [role="alert"],
[data-sonner-toaster] [role="status"],
[data-sonner-toaster] [role="alert"],
[data-radix-toast-viewport] [role="status"],
[data-radix-toast-viewport] [role="alert"],
.Toastify__toast-container [role="status"],
.Toastify__toast-container [role="alert"] {
  pointer-events: auto !important;
}

@media (max-width: 640px) {
  [data-rht-toaster] {
    left: calc(12px + env(safe-area-inset-left)) !important;
    right: calc(12px + env(safe-area-inset-right)) !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
  }

  [data-rht-toaster] > * {
    justify-content: center !important;
  }

  [data-rht-toaster] [role="status"],
  [data-rht-toaster] [role="alert"] {
    max-width: calc(100vw - 32px) !important;
  }
}
