/**
 * Modali: #eventModal, #eventPreviewModal, #rolesModal, contenuti modali
 */
#eventModal {
    position: fixed !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    overscroll-behavior: contain;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    touch-action: pan-y;
    overflow: hidden;
}
#eventModal > div {
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    max-height: 85vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    touch-action: pan-y;
}

@media (max-width: 640px) {
    #rolesList > div > div.flex.items-start.justify-between,
    #membersList > div > div.flex.items-center.justify-between {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.5rem;
    }
    #rolesList select, #membersList select {
        width: 100% !important;
    }
    #rolesList .font-bold.text-slate-900,
    #membersList .font-bold.text-slate-900 {
        word-break: break-all;
    }

    #eventPreviewModal {
        position: fixed !important;
        top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        transform: translateZ(0);
        -webkit-transform: translateZ(0);
        touch-action: pan-y;
        overflow: hidden;
    }
    #eventPreviewModal > div {
        transform: translateZ(0);
        -webkit-transform: translateZ(0);
        max-height: 85dvh !important;
        overflow: hidden !important;
    }
    #eventPreviewModal #previewContent {
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y;
        overflow-y: auto !important;
    }
    #eventPreviewModal button, #eventPreviewModal .py-3 {
        min-height: 44px !important;
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }
    body.modal-open {
        overflow: hidden !important;
    }
}

/* Modale Cerca in archivio: sopra tutto, opaco, centrato, clickabili */
.search-archive-modal-overlay {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    pointer-events: auto !important;
    isolation: isolate;
}
#searchArchiveModal.hidden {
    pointer-events: none !important;
}
.search-archive-modal-card {
    position: relative;
    z-index: 1;
    background-color: #fff !important;
}
.dark .search-archive-modal-card,
.dark #searchArchiveModal .search-archive-modal-card {
    background-color: #1e293b !important;
}
#searchArchiveModal #searchArchiveInput {
    background-color: #fff !important;
    opacity: 1 !important;
}
.dark #searchArchiveModal #searchArchiveInput {
    background-color: #1e293b !important;
}
#searchArchiveResults {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

/* Modal Elimina Serie: usa <dialog> nativo, centrato */
#deleteSeriesModal::backdrop {
    background: rgba(0, 0, 0, 0.75);
}