/* ============================================
   MODAL FIX - FORZAR VISIBILIDAD
   Override para asegurar que el modal muestre contenido
   ============================================ */

/* FORZAR display del modal */
#dynamicModal {
    display: flex !important;
}

#dynamicModal[style*="display: none"] {
    display: none !important;
}

#dynamicModal[style*="display: flex"],
#dynamicModal[style*="display: block"] {
    display: flex !important;
}

/* FORZAR estructura del modal */
#dynamicModal .modal-content {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#dynamicModal .modal-header {
    display: flex !important;
    visibility: visible !important;
}

#dynamicModal .modal-body,
#dynamicModal #modalBody {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 300px !important;
}

/* FORZAR que TODO dentro del modal-body sea visible */
#dynamicModal .modal-body *:not(.hidden),
#dynamicModal #modalBody *:not(.hidden) {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Específico para formularios de actualización penal */
#dynamicModal .update-penal-form-container-full,
#dynamicModal #updatePenalFormCompleto,
#dynamicModal .case-identifier-header,
#dynamicModal .form-tabs-container,
#dynamicModal .tab-panel {
    display: block !important;
    visibility: visible !important;
}

/* Específico para case details */
#dynamicModal .case-details-full,
#dynamicModal .details-section {
    display: block !important;
    visibility: visible !important;
}

/* DEBUG: Bordes temporales para ver estructura */
/*
#dynamicModal .modal-body {
    border: 3px solid red !important;
}

#dynamicModal .modal-body > * {
    border: 2px solid blue !important;
}
*/