/* Estructura y animación adaptadas del componente de confirmación de RedMedicaSnI. */
.confirmacion-popup { width: min(560px, calc(100vw - 2rem)) !important; max-width: calc(100vw - 2rem) !important; }
.ti-xxl { font-size: 3.5rem !important; }
.confirmacion-popup__header { min-height: 64px; }
.confirmacion-popup__body { padding: 0 !important; }
.confirmacion-popup__content { min-height: 270px; }
.confirmacion-popup__icon {
    width: 64px; height: 64px; filter: drop-shadow(0 8px 9px currentColor);
    animation: confirmacion-icono-entrada 2s cubic-bezier(.22, 1, .36, 1) both;
}
.confirmacion-popup__icon svg { width: 1em; height: 1em; fill: currentColor; stroke: currentColor; }
.confirmacion-popup__message, .confirmacion-popup__secondary { max-width: 500px; line-height: 1.4; }
.confirmacion-popup__message { font-size: clamp(1.15rem, 3vw, 1.35rem); }
.confirmacion-popup__secondary { font-size: .95rem; }
.confirmacion-popup__action { min-width: 150px; }
@keyframes confirmacion-icono-entrada {
    0% { opacity: 0; transform: scale(.35) rotate(-14deg); }
    28% { opacity: 1; transform: scale(1.1) rotate(4deg); }
    48% { transform: scale(.96) rotate(-2deg); }
    68% { transform: scale(1.03) rotate(1deg); }
    100% { opacity: 1; transform: scale(1) rotate(0); }
}
@media (max-width: 576px) {
    .confirmacion-popup__header { min-height: 60px; }
    .confirmacion-popup__content { min-height: 250px; }
    .confirmacion-popup__icon { width: 58px; height: 58px; }
    .confirmacion-popup__action { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .confirmacion-popup__icon { animation: none; } }
