.patient-feedback-prompt {
  font-family: inherit;
}

.patient-feedback-prompt__launcher {
  display: none;
}

@media (min-width: 640px) {
  .patient-feedback-prompt__launcher {
    display: block;
  }
}

.patient-feedback-prompt--no-launcher .patient-feedback-prompt__launcher {
  display: none !important;
}

.patient-feedback-prompt__backdrop {
  position: fixed;
  inset: 0;
  z-index: 9999;
  opacity: 0;
  transition: opacity 180ms ease-out;
}

@layer web-app-overrides {
  .patient-feedback-prompt__backdrop[hidden] {
    display: none !important;
  }

  body:has([id^="groove-container-"]) .patient-feedback-prompt__launcher {
    bottom: 100px !important;
  }

  @media (min-width: 640px) {
    .patient-feedback-prompt__backdrop {
      align-items: center !important;
      padding: 1.25rem !important;
    }

    .patient-feedback-prompt__dialog {
      max-height: calc(100vh - 40px) !important;
    }
  }
}

.patient-feedback-prompt__backdrop.is-open {
  opacity: 1;
}

.patient-feedback-prompt__dialog {
  opacity: 0;
  transform: translateY(12px) scale(0.98);
  transition: opacity 180ms ease-out, transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

.patient-feedback-prompt__backdrop.is-open .patient-feedback-prompt__dialog {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.patient-feedback-prompt__close {
  transition: background-color 160ms ease, transform 160ms ease;
}

.patient-feedback-prompt__close:hover {
  transform: rotate(6deg);
}

.patient-feedback-prompt__status {
  color: #b42318;
}

.patient-feedback-prompt__status.is-success {
  color: #15803d;
}

body.patient-feedback-prompt-open {
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  .patient-feedback-prompt__backdrop,
  .patient-feedback-prompt__dialog,
  .patient-feedback-prompt__close {
    transition: none;
  }
}
