/* ---------- Overlay / Root ---------- */
#dcModal{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: clamp(12px, 3vw, 28px);
}
#dcModal[aria-hidden="false"]{ display: flex; }

/* COMPATIBILITÀ LEGACY: Manteniamo i vecchi selettori richiesti */
#contentModal, .content-modal{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: clamp(12px, 3vw, 28px);
  background: rgba(0,0,0,0.45);
}
#contentModal.show, .content-modal.show{ display: flex; }

#dcModal .dc-modal__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
}

body.modal-open{ overflow: hidden; }

/* ---------- Dialog / Card ---------- */
#dcModal .dc-modal__dialog,
#contentModal .modal-content,
.content-modal .modal-content {
  position: relative;
  width: min(920px, 92vw);
  
  /* GEMINI: Alzata l'altezza a 900px per far spazio al bottone Copyright */
  max-height: min(90vh, 900px); 
  
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 60px rgba(0,0,0,0.35);
  display: flex;
  flex-direction: column;
}

/* ---------- Header ---------- */
.dc-modal__header, .modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.dc-modal__title, .modal-header h2 {
  margin: 0;
  font-family: "Cinzel", serif;
  font-weight: 700;
  font-size: 1.35rem;
  color: #2d1b4e;
}

.dc-modal__close, .modal-close {
  border: 0; background: transparent; cursor: pointer;
  font-size: 1.6rem; color: #2d1b4e;
}

/* ---------- Body ---------- */
.dc-modal__body, .modal-body {
  padding: 16px;
  
  /* GEMINI: "auto" permette di scorrere verso il basso se il testo è lungo */
  overflow: auto; 
  
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

/* ---------- Media Elements ---------- */
.dc-modal__iframe, .dc-modal__media iframe, .modal-body iframe {
  width: 100%;
  max-width: 100%;
  background: #000;
  aspect-ratio: 16 / 9;
  
  /* GEMINI: Limitiamo il video al 60% dello schermo per non tagliare il bottone sotto */
  max-height: 60vh; 
  
  border: 0;
  border-radius: 10px;
}

/* ---------- AGGIUNTA: MODALITÀ GIGANTE (80-90%) ---------- */
/* Sovrascrive i limiti solo quando la classe .is-large è presente */

#dcModal .dc-modal__dialog.is-large {
  width: 92vw !important;
  max-width: 1450px !important;
  height: 90vh !important;
  max-height: 90vh !important;
}

#dcModal .dc-modal__dialog.is-large .dc-modal__body {
  padding: 0 !important; /* Più spazio per il PDF */
}

#dcModal .dc-modal__dialog.is-large .dc-modal__iframe {
  height: 100% !important;
  aspect-ratio: auto !important; /* Rimuove il formato video */
  max-height: none !important;
  border-radius: 0;
}

.dc-modal__text {
  font-size: 1.3rem;
  line-height: 1.6;
  max-width: 820px;
  padding: 20px;
}

/* -------------------------------------------------------------------------- */
/* GEMINI: SEGUE IL RIPRISTINO ESATTO DEI BLOCCHI ORIGINALI PER SICUREZZA     */
/* -------------------------------------------------------------------------- */

#dcModal .dc-modal__header,
#contentModal .modal-header,
.content-modal .modal-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

#dcModal .dc-modal__body,
#contentModal .modal-body,
.content-modal .modal-body{
  padding: 16px;
  overflow: auto;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

#dcModal .dc-modal__iframe,
#dcModal .dc-modal__media iframe,
#contentModal iframe,
.content-modal iframe{
  width: 100%;
  max-width: 100%;
  border: 0;
  border-radius: 10px;
  background: #000;
  aspect-ratio: 16 / 9;
  height: auto;
  
  /* GEMINI: Applicata la stessa logica di sicurezza anche qui */
  max-height: 60vh; 
}

@media (max-width: 520px){
  #dcModal .dc-modal__dialog,
  #contentModal .modal-content,
  .content-modal .modal-content{
    width: 96vw;
    max-height: 86vh;
  }
}

/* =======================================================
   MODALITÀ GIGANTE (80-90%) - AGGIUNTA
   ======================================================= */

#dcModal .dc-modal__dialog.is-large {
  width: 92vw !important;
  max-width: 1500px !important;
  height: 90vh !important;
  max-height: 90vh !important;
}

#dcModal .dc-modal__dialog.is-large .dc-modal__body {
  padding: 0 !important; 
}

#dcModal .dc-modal__dialog.is-large .dc-modal__iframe,
#dcModal .dc-modal__dialog.is-large .dc-modal__media iframe {
  height: 100% !important;
  aspect-ratio: auto !important;
  max-height: none !important;
  border-radius: 0;
}

#dcModal .dc-modal__text {
  font-size: 1.35rem;
  line-height: 1.6;
  max-width: 820px;
  padding: 30px;
  color: #333;
}

#dcModal .dc-modal__dialog.is-large .dc-modal__body,
#dcModal .dc-modal__iframe {
  background-color: #ffffff !important;
}