/* 2.87 (24/10) «Contatti per i clienti» nei moduli degli eventi (_ep_contatti.html) */
.ce-contacts, .ev-contacts { display: flex; flex-direction: column; gap: 12px; margin: 4px 0; padding: 16px; border: 1px solid rgba(10, 10, 20, .12); border-radius: 16px; }
.ce-contacts legend, .ev-contacts legend { padding: 0 6px; font-weight: 700; }
.ce-contacts legend small, .ev-contacts legend small { font-weight: 400; opacity: .65; }
.ce-contacts-p, .ev-contacts-p { margin: 0; font-size: 13.5px; opacity: .75; }
.ce-contact, .ev-contact { display: flex; flex-direction: column; gap: 10px; padding-top: 12px; border-top: 1px dashed rgba(10, 10, 20, .14); }
.ce-contact:first-of-type, .ev-contact:first-of-type { border-top: 0; padding-top: 0; }
.ce-contact[hidden], .ev-contact[hidden] { display: none; }
.ce-contacts .ce-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ce-contacts label { display: flex; flex-direction: column; gap: 4px; font-size: 13.5px; font-weight: 600; }
.ce-contacts .ce-check { flex-direction: row; align-items: center; gap: 8px; font-weight: 500; }
.ce-add, .ev-add { align-self: flex-start; min-height: 38px; padding: 0 14px; border: 0; border-radius: 999px; background: rgba(10, 10, 20, .06);
  font: inherit; font-size: 14px; font-weight: 600; color: inherit; cursor: pointer; }
@media (max-width: 560px) { .ce-contacts .ce-row2 { grid-template-columns: 1fr; } }
/* 3.18.1 (28/10) sul sito («Proponi un evento») i campi sono quelli del modulo (.ev-f, .ev-lab, .ev-check di
   site/nuovo/eventi-pubblici.css): qui solo gli spazi dentro il riquadro */
.ev-contact { gap: 0; }
.ev-contacts .ev-row2 { gap: 0 12px; }
.ev-contacts .ev-check { margin: 2px 0 12px; }
.ev-contacts > .ev-check { margin: 4px 0 0; }
.ev-add { margin: 2px 0 6px; background: #F2F2F7; }
.ev-add:hover { background: #E9E9EE; }
/* 3.03 (26/10) «Musica e video» (_ep_media.html, static/ep-media.js) */
.md-in { display: flex; flex-direction: column; gap: 6px; }
.md-in input { width: 100%; box-sizing: border-box; }
.md-ok { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; background: rgba(31, 157, 85, .09); font-size: 13px; }
.md-ok[hidden] { display: none; }
.md-ok img { width: 44px; height: 30px; border-radius: 6px; object-fit: cover; flex: none; }
.md-ok span { display: flex; flex-direction: column; min-width: 0; }
.md-ok b { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.md-ok small { color: #1F7A45; font-weight: 600; font-size: 12px; }
.md-ok.is-err { background: rgba(214, 40, 40, .08); }
.md-ok.is-err small { color: #B42318; }
.md-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.ev-sec .ev-contacts legend { flex-wrap: wrap; gap: 4px 10px; margin-bottom: 14px; padding: 0 4px; font-size: 22px; }
.ev-sec .ev-contacts legend small { font: 500 14px var(--text); letter-spacing: 0; color: var(--soft); opacity: 1; }
