/* Modal di conferma generico (Bootstrap-like, auto-contenuta).
   Usata da:
     - shortcode video (player.php → "TERMINA E INVIA")
     - shortcode corso-form (form.php → aggiungi/rimuovi evento associato)
   Esposto come `.gx-fad-modal*`. Niente dipendenze esterne. */

/* `!important` necessario per resistere a regole CSS aggressive di temi/page builder
   che applicano `display: none` a elementi sconosciuti dentro `.entry-content`
   o simili. Il modal è cruciale per la UX (es. conferma eliminazione partecipazione)
   e non può essere accidentalmente nascosto. */
.gx-fad-modal { position: fixed; inset: 0; z-index: 99999; align-items: center; justify-content: center; padding: 1rem; }
.gx-fad-modal[hidden] { display: none !important; }
.gx-fad-modal:not([hidden]) { display: flex !important; }
.gx-fad-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.55); cursor: pointer; }
.gx-fad-modal__dialog { position: relative; max-width: 500px; width: 100%; animation: gxFadModalIn .15s ease-out; }
.gx-fad-modal__content { background: #fff; border-radius: 6px; box-shadow: 0 5px 20px rgba(0,0,0,.4); overflow: hidden; }
.gx-fad-modal__header { padding: 1rem 1.25rem; border-bottom: 1px solid #dee2e6; }
.gx-fad-modal__title { margin: 0; font-size: 1.2rem; line-height: 1.3; }
.gx-fad-modal__body { padding: 1.25rem; line-height: 1.5; }
.gx-fad-modal__body p { margin: 0 0 .5rem; }
.gx-fad-modal__body p:last-child { margin-bottom: 0; }
.gx-fad-modal__footer { padding: .75rem 1.25rem; border-top: 1px solid #dee2e6; display: flex; justify-content: flex-end; gap: .5rem; flex-wrap: wrap; }
.gx-fad-modal__btn { padding: .45rem 1.1rem; border: 0; border-radius: 4px; font-size: .95rem; cursor: pointer; font-family: inherit; }
.gx-fad-modal__btn--secondary { background: #6c757d; color: #fff; }
.gx-fad-modal__btn--secondary:hover { background: #5a6268; }
.gx-fad-modal__btn--danger { background: #c62828; color: #fff; font-weight: 600; letter-spacing: .02em; }
.gx-fad-modal__btn--danger:hover { background: #a31f1f; }
.gx-fad-modal__btn--primary { background: #1976d2; color: #fff; font-weight: 600; }
.gx-fad-modal__btn--primary:hover { background: #1259a0; }
.gx-fad-modal__btn[disabled] { opacity: .55; cursor: not-allowed; }
body.gx-fad-modal-open { overflow: hidden; }
@keyframes gxFadModalIn { from { transform: translateY(-12px); opacity: 0; } to { transform: none; opacity: 1; } }
