/* ===============================
   Prenotazioni Spettacolo - CSS
   v1.5.4
   =============================== */

/* --- MODAL CSS-only (:target) --- */
.cdf-modal{position:fixed; inset:0; display:none; z-index:9999;}
.cdf-modal:target{display:block;}
.cdf-modal__overlay{position:absolute; inset:0; background:rgba(0,0,0,.7);}
.cdf-modal__dialog{position:relative; margin:5vh auto; max-width:600px; width:clamp(280px,90vw,600px); background:#fff; padding:20px; border-radius:10px; box-shadow:0 10px 40px rgba(0,0,0,.3); z-index:2;}
.cdf-modal__close{position:absolute; top:8px; right:10px; background:transparent; border:none; font-size:22px; line-height:1; cursor:pointer; text-decoration:none; color:#222;}
.cdf-modal__close:hover{opacity:.8;}

/* --- ACCORDION CSS-only (wrapper robusto) --- */
.cdf-acc-wrap{display:block; margin:0; padding:0;}
.cdf-acc-toggle{position:absolute; left:-9999px;} /* nascosto ma togglabile via label */
.cdf-acc-wrap .cdf-accordion{display:none !important; margin-top:15px;} /* chiuso di default */
.cdf-acc-wrap .cdf-acc-toggle:checked ~ .cdf-accordion{display:block !important;} /* apri */

/* --- Pulsante stile generico + variante “Marchestorie” --- */
.cdf-btn{
  display:inline-block; background:#00a8e8; color:#fff;
  padding:12px 28px; border-radius:30px; font-weight:600; font-size:16px;
  text-decoration:none; transition:all .3s ease; cursor:pointer; border:none;
}
.cdf-btn:hover{background:#0077b6; transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.25);}
.cdf-btn:active{transform:translateY(0); box-shadow:none;}
.cdf-btn:focus{outline:2px solid #90e0ef; outline-offset:2px;}

/* Variante estetica tipo Marchestorie (se preferisci non usare classi del tema) */
.cdf-btn.cdf-btn--marchestorie{
  padding:14px 34px; border-radius:40px;
  background: linear-gradient(180deg, #00b2ff 0%, #0091cc 100%);
  font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  box-shadow: 0 8px 18px rgba(0,145,204,.28);
}
.cdf-btn.cdf-btn--marchestorie:hover{
  box-shadow: 0 10px 24px rgba(0,145,204,.35);
  filter: brightness(1.03);
}

/* --- FORM interno --- */
.cdf-prenotazioni .cdf-form{display:block;}
.cdf-prenotazioni .cdf-form p{margin:0 0 12px 0;}
.cdf-prenotazioni .cdf-form label{font-weight:600;}
.cdf-prenotazioni .cdf-form input[type="text"],
.cdf-prenotazioni .cdf-form input[type="email"],
.cdf-prenotazioni .cdf-form input[type="number"]{
  width:100%; padding:10px 12px; border:1px solid #e0e0e0; border-radius:8px; font-size:16px; box-sizing:border-box;
}
.cdf-prenotazioni .cdf-form input:focus{
  border-color:#00a8e8; box-shadow:0 0 0 3px rgba(0,168,232,.15); outline:none;
}
.cdf-prenotazioni .cdf-form button[type="submit"]{
  background:#00a8e8; color:#fff; border:none; border-radius:10px; padding:10px 20px; font-weight:700; cursor:pointer;
  transition:background .2s, transform .2s, box-shadow .2s;
}
.cdf-prenotazioni .cdf-form button[type="submit"]:hover{
  background:#0077b6; transform:translateY(-1px); box-shadow:0 2px 8px rgba(0,0,0,.2);
}

/* --- Notices --- */
.notice{border-left:4px solid; padding:10px; margin:10px 0; border-radius:6px;}
.notice-success{background:#f6fff6; border-color:#46b450;}
.notice-error{background:#fff6f6; border-color:#dc3232;}

/* --- Responsive --- */
@media (max-width:480px){
  .cdf-modal__dialog{padding:16px;}
  .cdf-btn{width:100%; text-align:center;}
}

/* Hard overrides se il tema forza display:block
.cdf-prenotazioni .cdf-accordion{display:none !important;}
.cdf-acc-wrap .cdf-acc-toggle:checked ~ .cdf-accordion{display:block !important;}
*/