/*
Theme Name: fnec25
Description: Tema child Divi.
Author: Andrea Balboni
Template: Divi
*/

ul.sessioni-stile {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
}

ul.sessioni-stile li.sessione-voce {
  background: #eddada;
  color: #222;
  padding: 0.4rem 0.8rem;
  border-radius: 20px;
  font-size: 0.9rem;
  border: 1px solid #cc363b;
}

/* Contenitore dati personali */
.dati-personali {
  background-color: #fefefe;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* Titolo sezione */
.dati-personali h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
  color: #cc363b;
  font-size: 1.2rem;
  border-bottom: 2px solid #cc363b;
  padding-bottom: 0.4rem;
}

/* Lista interna dei dati */
.dati-personali p {
  margin: 0.4rem 0;
  font-size: 1rem;
  color: #333;
}

/* Label in grassetto (etichetta campi) */
.dati-personali p strong {
  display: inline-block;
  width: 6rem;
  color: #222;
}

.btn-modifica {
  background-color: #cc363b;
  color: #fff;
  padding: 0.6rem 1.2rem;
  border-radius: 6px;
  text-decoration: none;
  font-weight: bold;
  display: inline-block;
  transition: background-color 0.3s;
}

.btn-modifica:hover {
  background-color: #e74a52;
}


/* Stili di base per il layout dei filtri */
.frm_forms .frm_row {
display: flex !important;
justify-content: space-between;
margin-bottom: 20px;
gap: 20px; /* Spazio tra le colonne */
}

.frm_forms .frm_col_6 {
 flex: 1; /* Le colonne occupano equamente lo spazio */
 min-width: 250px; /* Larghezza minima per evitare che si schiaccino troppo */
}

.frm_forms label {
 display: block;
 margin-bottom: 5px;
 font-weight: bold;
 color: #333;
}

.frm_forms input[type="text"],.frm_forms select {
 width: 100%;
 padding: 8px 10px;
 border: 1px solid #ccc;
 border-radius: 4px;
 box-sizing: border-box; /* Include padding e border nel width totale */
}

/* Stili per la tabella di accreditamento */
.accreditation-table {
 width: 100%; /* La tabella occupa tutta la larghezza disponibile del suo contenitore */
 table-layout: fixed; /* Questo è fondamentale: forza le colonne ad avere una larghezza fissa */
 border-collapse: collapse; /* Bordo unificato */
 margin-top: 20px; /* Spazio sopra la tabella */
}

.accreditation-table th, .accreditation-table td {
 border: 1px solid #ddd; /* Bordo leggero */
 padding: 8px; /* Spaziatura interna */
 text-align: left; /* Allineamento del testo */
 white-space: nowrap; /* Evita il wrap del testo nelle celle, mantiene tutto su una riga */
 overflow: hidden; /* Nasconde il testo che eccede se nowrap è attivo e la cella è piccola */
 text-overflow: ellipsis; /* Aggiunge "..." al testo troncato */
}

/* Stili per il riquadro Riepilogo Accreditamento */
.accreditation-summary {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 15px;
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.accreditation-summary h3 {
    text-align: center;
    margin-top: 0;
    margin-bottom: 15px;
    color: #333;
}

.accreditation-stats {
    display: flex !important; /* Questo forza Flexbox per i conteggi */
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    gap: 20px;
}

.accreditation-stats p {
    margin: 0;
    font-size: 1.1em;
    color: #555;
    white-space: nowrap;
}

.accreditation-stats p span {
    font-weight: bold;
    color: #cc363b;
    font-size: 1.2em;
    margin-left: 5px;
}

/* Stili per la tabella di accreditamento */
.accreditation-table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    margin-top: 20px;
}

.accreditation-table th,
.accreditation-table td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* Regole per le prime 3 colonne (Nome, Cognome, Email) */
.accreditation-table th:nth-child(1),.accreditation-table td:nth-child(1) { width: 15%; } /* Nome */
.accreditation-table th:nth-child(2),.accreditation-table td:nth-child(2) { width: 15%; } /* Cognome */
.accreditation-table th:nth-child(3),.accreditation-table td:nth-child(3) { width: 25%; } /* Email (più larga per gli indirizzi) */

/* Regole per le colonne dei checkbox (dalla 4a in poi) */
.accreditation-table th:nth-child(n+4), .accreditation-table td:nth-child(n+4) {
 width: 5%; /* Larghezza ridotta per i checkbox */
 text-align: center; /* Centra il checkbox */
}

/* Stile per i messaggi di stato */
#statusMessage {
 display: none;
 padding: 10px;
 margin-bottom: 15px;
 border-radius: 5px;
 font-weight: bold;
 text-align: center;
}

#statusMessage.success {
 background-color: #d4edda;
 color: #155724;
}

#statusMessage.error {
 background-color: #f8d7da;
 color: #721c24;
}

#statusMessage.info {
 background-color: #d1ecf1;
 color: #0c5460;
}

/* Per le righe nascoste dal JS */
.hidden {
 display: none;
}

/* Media Query per schermi più piccoli */
@media (max-width: 768px) {
 .frm_forms .frm_row {
 flex-direction: column !important; /* Impila i filtri su schermi piccoli */
 gap: 15px;
 }
 .frm_forms .frm_col_6 {
 min-width: 100%;
 }
}

/* Stile per le righe VIP */
#accreditationTable tbody tr[data-is-vip="1"] {
    background-color: #FCEFEF; /* Un verde chiaro, puoi scegliere il tuo colore */
    border-left: 5px solid #D35355; /* Un bordo verde più scuro per evidenziare */
}

/* Puoi anche cambiare il colore del testo se necessario per la leggibilità */
#accreditationTable tbody tr[data-is-vip="1"] td {
    /* color: #333; */
}