/**
 * FCES-UASD 171B96R1
 * Reserva integrada al flujo de la pagina del curso.
 *
 * El panel deja de seguir el desplazamiento y no se muestra ningun control
 * flotante persistente. La funcionalidad y el ancla #reservar se conservan.
 */

.course-approved-page .course-approved-side {
  position: static !important;
  top: auto !important;
  align-self: start !important;
}

.course-approved-page .course-approved-side .pym-reserve-right {
  position: static !important;
  top: auto !important;
}

.course-approved-page #reservar {
  scroll-margin-top: 24px;
}

/* El llamado principal del encabezado sigue llevando a la reserva integrada. */
.course-approved-page .course-approved-actions [data-course-primary-reserve] {
  scroll-behavior: smooth;
}

/* Retira el segundo llamado persistente que aparecia sobre el contenido movil. */
.mobile-sticky-reserve,
.course-approved-page + .mobile-sticky-reserve {
  display: none !important;
}

/* Estado sin grupos: aviso sereno, compacto y sin apariencia de modal. */
.course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) {
  padding: 22px !important;
  border-color: #d9e6de !important;
  border-radius: 16px !important;
  background: #fbfdfb !important;
  box-shadow: none !important;
}

.course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) .reserve-icon {
  width: 40px !important;
  height: 40px !important;
  margin-bottom: 10px !important;
  font-size: 20px !important;
}

.course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) h2 {
  margin-bottom: 6px !important;
  font-size: 24px !important;
}

.course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) > p {
  margin-bottom: 12px !important;
  font-size: 13px !important;
}

.course-approved-page .pym-inline-unavailable {
  gap: 9px !important;
}

.course-approved-page .pym-inline-unavailable .pym-reserve-security-note {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.course-approved-page .pym-inline-unavailable .pym-empty {
  gap: 4px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border-color: #d9e6de !important;
  border-radius: 12px !important;
  background: #f5f9f6 !important;
}

.course-approved-page .pym-inline-unavailable .pym-empty strong {
  font-size: 15px !important;
}

.course-approved-page .pym-inline-unavailable .pym-empty span {
  font-size: 13px !important;
}

@media (max-width: 1120px) {
  .course-approved-page .course-approved-side {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 760px) {
  .course-approved-page .course-approved-side {
    max-width: none !important;
  }

  .course-approved-page .course-approved-reserve-full,
  .course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) {
    padding: 18px !important;
    border-radius: 14px !important;
  }

  .course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) h2 {
    font-size: 22px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .course-approved-page {
    scroll-behavior: auto !important;
  }
}
