/**
 * FCES-UASD 171B96R3
 * Restauración controlada del formato original de la página pública del curso.
 *
 * Esta capa no redefine la portada, el contenedor, los indicadores ni la
 * cuadrícula principal. Conserva la composición aprobada y limita el ajuste a:
 * - reserva estática dentro de su columna, sin seguimiento ni superposición;
 * - eliminación del llamado flotante móvil;
 * - estado sin horarios compacto;
 * - cintillo de certificación compacto y adaptable.
 */

/* La columna original permanece; solo se desactiva el comportamiento pegajoso. */
.course-approved-page .course-approved-side {
  position: static !important;
  inset: auto !important;
  top: auto !important;
  align-self: start !important;
  transform: none !important;
}

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

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

/* No se permite una segunda reserva persistente sobre el contenido. */
html body .mobile-sticky-reserve,
html body [data-course-sticky-reserve] {
  display: none !important;
  position: static !important;
  inset: auto !important;
}

/* Estado sin horarios: aviso breve dentro de la tarjeta lateral original. */
.course-approved-page .course-approved-reserve-full:has(.pym-inline-unavailable) {
  padding: 20px !important;
  border-color: #d9e6de !important;
  border-radius: 16px !important;
  background: #fbfdfb !important;
  box-shadow: 0 10px 26px rgba(16, 24, 40, .045) !important;
}

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

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

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

.course-approved-page .pym-inline-unavailable {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 0 !important;
}

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

.course-approved-page .pym-inline-unavailable .pym-empty {
  display: grid !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 11px 13px !important;
  border-radius: 11px !important;
  background: #f4f8f5 !important;
}

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

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

/* Certificación: horizontal y compacta, sin la altura forzada heredada. */
.course-approved-page .course-certificate-banner-171b88 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 132px !important;
  align-items: center !important;
  gap: 18px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  padding: 17px 20px !important;
  border-radius: 15px !important;
}

.course-approved-page .course-certificate-banner-171b88::before {
  left: 20px !important;
  width: 70px !important;
}

.course-approved-page .course-certificate-copy-171b88 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto auto !important;
  align-items: center !important;
  column-gap: 18px !important;
  row-gap: 4px !important;
}

.course-approved-page .course-certificate-copy-171b88 > span,
.course-approved-page .course-certificate-copy-171b88 > h2,
.course-approved-page .course-certificate-copy-171b88 > p {
  grid-column: 1 !important;
}

.course-approved-page .course-certificate-copy-171b88 > span {
  margin: 0 !important;
  font-size: 10.5px !important;
  line-height: 1.25 !important;
}

.course-approved-page .course-certificate-copy-171b88 h2 {
  margin: 0 !important;
  font-size: clamp(20px, 1.65vw, 25px) !important;
  line-height: 1.1 !important;
  white-space: normal !important;
}

.course-approved-page .course-certificate-copy-171b88 p {
  max-width: 660px !important;
  margin: 3px 0 0 !important;
  font-size: 12.5px !important;
  line-height: 1.38 !important;
}

.course-approved-page .course-certificate-copy-171b88 a {
  grid-column: 2 !important;
  grid-row: 1 / 4 !important;
  align-self: center !important;
  min-height: 39px !important;
  padding: 8px 14px !important;
  white-space: nowrap !important;
  font-size: 12.5px !important;
}

.course-approved-page .course-certificate-media-171b88 {
  align-self: center !important;
  width: 132px !important;
  height: 84px !important;
  min-height: 0 !important;
  max-height: 84px !important;
  border-radius: 8px !important;
}

.course-approved-page .course-certificate-media-171b88 img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: contain !important;
}

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

  .course-approved-page .course-certificate-banner-171b88 {
    grid-template-columns: minmax(0, 1fr) 118px !important;
  }

  .course-approved-page .course-certificate-media-171b88 {
    width: 118px !important;
    height: 76px !important;
    max-height: 76px !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: 17px !important;
    border-radius: 14px !important;
  }

  .course-approved-page .course-certificate-banner-171b88 {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    padding: 18px 16px 16px !important;
    border-radius: 13px !important;
  }

  .course-approved-page .course-certificate-banner-171b88::before {
    left: 16px !important;
    width: 64px !important;
  }

  .course-approved-page .course-certificate-copy-171b88 {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .course-approved-page .course-certificate-copy-171b88 h2 {
    font-size: 21px !important;
  }

  .course-approved-page .course-certificate-copy-171b88 p {
    font-size: 12.5px !important;
  }

  .course-approved-page .course-certificate-copy-171b88 a {
    grid-column: 1 !important;
    grid-row: auto !important;
    justify-self: stretch !important;
    width: 100% !important;
    margin-top: 8px !important;
  }

  .course-approved-page .course-certificate-media-171b88 {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .course-approved-page .course-certificate-copy-171b88 a {
    transition: none !important;
  }
}
