/* R29 — filtre uniquement : fenêtre modale centrée, jamais ancrée en bas. */
.all-filter-panel {
  position: fixed !important;
  z-index: 60 !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  width: min(720px, calc(100vw - 24px)) !important;
  max-height: min(78dvh, 680px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 24px !important;
  box-shadow: 0 24px 70px rgba(31, 35, 40, .20), 0 0 0 100vmax rgba(18, 9, 4, .22), inset 0 0 0 1px rgba(255, 255, 255, .98) !important;
  animation: r29FilterPopup .18s ease both !important;
  overscroll-behavior: contain;
}

@keyframes r29FilterPopup {
  from { opacity: 0; transform: translate(-50%, -48%) scale(.985); }
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@media (max-width: 600px) {
  .all-filter-panel {
    width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 40px) !important;
    padding: 18px 16px max(18px, env(safe-area-inset-bottom)) !important;
    border-radius: 22px !important;
  }
}
