/* SEU – stili del plugin (area organizzatori, elenco e scheda eventi). Stesse regole del prototipo. */
.seu-area, .seu-eventi, .seu-contatti { --seu-nero: #141414; --seu-rosso: #C8102E; --seu-carta: #FAF7F2; --seu-linea: #E2DBD0; --seu-pietra: #5E5953; --seu-r: 6px; }
.seu-area, .seu-eventi, .seu-scheda { max-width: var(--wp--style--global--wide-size, 1200px); }

/* Barra utente e schede */
.seu-barra { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; background: #fff; border: 1px solid var(--seu-linea); border-radius: var(--seu-r); padding: .75rem 1rem; margin-bottom: 1.25rem; font-size: .95rem; }
.seu-tabs { display: flex; gap: .25rem; border-bottom: 2px solid var(--seu-linea); margin-bottom: 1.5rem; flex-wrap: wrap; }
.seu-tabs a { padding: .75rem 1rem; font-weight: 700; text-decoration: none; border-bottom: 3px solid transparent; margin-bottom: -2px; }
.seu-tabs a[aria-current="page"] { border-bottom-color: var(--seu-rosso); color: var(--seu-rosso); }
.seu-testa { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.seu-testa h2 { margin: 0; }

/* Avvisi */
.seu-avviso { border-left: 4px solid #1F4E79; background: #EEF3F8; padding: .9rem 1rem; border-radius: 0 var(--seu-r) var(--seu-r) 0; margin: 0 0 1rem; font-size: .95rem; }
.seu-avviso.seu-ok { border-color: #1E6B34; background: #E3F0E6; }
.seu-avviso.seu-warn { border-color: #7A5000; background: #FFF1D6; }
.seu-avviso.seu-err { border-color: #A1121F; background: #FCE8EA; }
.seu-small { font-size: .85rem; }
.seu-muted { color: var(--seu-pietra); }
.seu-vuoto { text-align: center; padding: 2.5rem 1rem; border: 2px dashed var(--seu-linea); border-radius: var(--seu-r); color: var(--seu-pietra); }

/* Tabella "I miei eventi" */
.seu-tabella { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--seu-linea); font-size: .95rem; }
.seu-tabella th, .seu-tabella td { text-align: left; padding: .75rem .9rem; border-bottom: 1px solid var(--seu-linea); vertical-align: top; }
.seu-tabella th { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--seu-pietra); background: var(--seu-carta); }
.seu-azioni { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.seu-inline { display: inline; margin: 0; }
.seu-stato { display: inline-block; font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; padding: .2rem .5rem; border-radius: 3px; white-space: nowrap; }
.seu-stato-pubblicato { background: #E3F0E6; color: #1E6B34; }
.seu-stato-in_revisione { background: #FFF1D6; color: #7A5000; }
.seu-stato-bozza { background: #ECEAE6; color: #4D4943; }
.seu-stato-rifiutato { background: #FCE8EA; color: #A1121F; }

/* Pulsanti secondari */
.seu-btn-sec, .seu-btn-danger { display: inline-block; font: inherit; font-size: .9rem; font-weight: 700; padding: .45rem .8rem; border-radius: var(--seu-r); border: 2px solid var(--seu-nero); background: transparent; color: var(--seu-nero); text-decoration: none; cursor: pointer; line-height: 1.2; }
.seu-btn-sec:hover { background: var(--seu-nero); color: #fff; }
.seu-btn-danger { border-color: #A1121F; color: #A1121F; }
.seu-btn-danger:hover { background: #A1121F; color: #fff; }

/* Modulo */
.seu-form { display: grid; gap: 1.25rem; }
.seu-blocco { background: #fff; border: 1px solid var(--seu-linea); border-radius: var(--seu-r); padding: 1.5rem; margin: 0; display: grid; gap: 1rem; min-width: 0; }
.seu-blocco > legend { font-weight: 800; font-size: 1.2rem; display: flex; align-items: center; gap: .6rem; padding: 0 .25rem; }
.seu-n { width: 28px; height: 28px; border-radius: 50%; background: var(--seu-nero); color: #fff; font-size: .9rem; display: inline-flex; align-items: center; justify-content: center; }
.seu-campo { display: flex; flex-direction: column; gap: .35rem; border: 0; padding: 0; margin: 0; min-width: 0; }
.seu-campo > label, .seu-campo > legend { font-weight: 700; font-size: .95rem; padding: 0; }
.seu-campo input[type=text], .seu-campo input[type=email], .seu-campo input[type=url], .seu-campo input[type=date], .seu-campo input[type=time], .seu-campo textarea, .seu-campo select { font: inherit; font-size: 1rem; padding: .7rem .75rem; border: 1px solid #BFB6A8; border-radius: var(--seu-r); background: #fff; color: var(--seu-nero); width: 100%; box-sizing: border-box; }
.seu-campo [aria-invalid="true"] { border-color: #A1121F; box-shadow: 0 0 0 1px #A1121F; }
.seu-req { color: var(--seu-rosso); }
.seu-aiuto { font-size: .86rem; color: var(--seu-pietra); }
.seu-errore { font-size: .88rem; color: #A1121F; font-weight: 600; }
.seu-righe-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.seu-righe-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; }
.seu-opzioni { display: flex; flex-wrap: wrap; gap: .5rem; }
.seu-opzione { position: relative; }
.seu-opzione input { position: absolute; opacity: 0; inset: 0; cursor: pointer; margin: 0; }
.seu-opzione span { display: inline-block; border: 1px solid #BFB6A8; border-radius: var(--seu-r); padding: .5rem .9rem; font-size: .95rem; background: #fff; }
.seu-opzione input:checked + span { background: var(--seu-nero); color: #fff; border-color: var(--seu-nero); }
.seu-opzione input:focus-visible + span { outline: 3px solid #1F4E79; outline-offset: 2px; }
.seu-check { display: flex; gap: .6rem; align-items: flex-start; }
.seu-check input { width: 20px; height: 20px; margin-top: 2px; flex: none; accent-color: var(--seu-nero); }
.seu-anteprima { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; }
.seu-anteprima img { max-width: 140px; height: auto; border-radius: var(--seu-r); border: 1px solid var(--seu-linea); }
.seu-riepilogo { border: 2px solid #A1121F; background: #FCE8EA; border-radius: var(--seu-r); padding: 1rem 1.25rem; }
.seu-riepilogo h3 { margin: 0 0 .4rem; color: #A1121F; font-size: 1.05rem; }
.seu-riepilogo ul { margin: 0; padding-left: 1.25rem; }
.seu-form .seu-azioni { gap: 1rem; }
.seu-login { max-width: 460px; }
.seu-login input[type=text], .seu-login input[type=password] { width: 100%; padding: .7rem; font: inherit; border: 1px solid #BFB6A8; border-radius: var(--seu-r); box-sizing: border-box; }

/* Modulo contatti */
.seu-contatti .seu-form { gap: 1rem; }
.seu-contatti .seu-campo > label .seu-muted { font-weight: 400; }
.seu-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Elenco eventi pubblico */
.seu-titolo-lista { font-size: .9rem !important; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; color: var(--seu-pietra); margin: 2rem 0 .9rem; }
.seu-riga { display: grid; grid-template-columns: 72px 1fr; gap: 1.25rem; align-items: center; background: #fff; border: 1px solid var(--seu-linea); border-radius: var(--seu-r); padding: .9rem 1.1rem; margin-bottom: .6rem; }
.seu-riga h3 { margin: .25rem 0 .15rem; font-size: 1.15rem; }
.seu-riga h3 a { text-decoration: none; }
.seu-meta { font-size: .93rem; color: var(--seu-pietra); }
.seu-passato { opacity: .72; }
.seu-data-box { text-align: center; border: 2px solid var(--seu-rosso); border-radius: var(--seu-r); padding: .35rem 0 .45rem; }
.seu-data-box .seu-g { display: block; font-size: 1.8rem; font-weight: 800; line-height: 1; color: var(--seu-rosso); }
.seu-data-box .seu-m { display: block; font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.seu-passato .seu-data-box { border-color: var(--seu-pietra); }
.seu-passato .seu-data-box .seu-g { color: var(--seu-pietra); }
.seu-chip { display: inline-block; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: .15rem .55rem; border-radius: 999px; border: 1px solid var(--seu-linea, #E2DBD0); background: #fff; }

/* Pagina evento */
.seu-evento { --seu-nero: #141414; --seu-rosso: #C8102E; --seu-carta: #FAF7F2; --seu-linea: #E2DBD0; --seu-pietra: #5E5953; --seu-r: 6px; }
.seu-indietro { font-size: .95rem; margin-bottom: .5rem !important; }
.seu-indietro a { text-decoration: none; font-weight: 700; }
.seu-pagina-evento .wp-block-post-title { margin-top: 0; overflow-wrap: anywhere; }
.seu-evento-testa { margin: .75rem 0 1.75rem; }
.seu-evento-quando { font-size: 1.25rem; font-weight: 700; margin: .6rem 0 .15rem; }
.seu-evento-dove { color: var(--seu-pietra); margin: 0; }
.seu-chip-concluso { border-color: var(--seu-pietra); color: var(--seu-pietra); }
.seu-evento-griglia { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr); gap: 2rem; align-items: start; }
.seu-evento-griglia.seu-senza-foto { grid-template-columns: minmax(0, 1fr); max-width: 640px; }
.seu-locandina { margin: 0; }
.seu-locandina img { display: block; width: 100%; height: auto; max-height: 80vh; object-fit: contain; background: var(--seu-carta); border: 1px solid var(--seu-linea); border-radius: var(--seu-r); }
.seu-evento .seu-scheda { margin: 0; position: sticky; top: 1.5rem; }
.seu-scheda-azioni { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--seu-linea); }
.seu-scheda-azioni .seu-btn-sec { padding: .7rem 1rem; font-size: 1rem; }
.seu-evento-sezione { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid var(--seu-linea); max-width: 760px; }
.seu-evento-sezione > h2 { font-size: 1.4rem; margin: 0 0 1rem; }
.seu-evento-sezione.seu-eventi { max-width: none; }
.seu-descrizione { overflow-wrap: anywhere; line-height: 1.65; }
.seu-descrizione a, .seu-scheda dd a { overflow-wrap: anywhere; }
.seu-organizza p { margin: 0 0 .5rem; }

/* Scheda evento */
.seu-scheda { background: #fff; border: 1px solid #E2DBD0; border-radius: 6px; padding: 1.25rem 1.5rem; margin: 0 0 2rem; }
.seu-scheda dl { margin: 0; }
.seu-scheda dt { font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #5E5953; margin-top: 1rem; }
.seu-scheda dt:first-child { margin-top: 0; }
.seu-scheda dd { margin: .25rem 0 0; }
.seu-prossime { margin: .3rem 0 0; padding-left: 1.1rem; }

@media (max-width: 760px) {
	.seu-righe-2, .seu-righe-3 { grid-template-columns: 1fr; }
	.seu-riga { grid-template-columns: 60px 1fr; }
	.seu-evento-griglia { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
	.seu-evento .seu-scheda { position: static; }
	.seu-evento-quando { font-size: 1.1rem; }
	.seu-tabella thead { display: none; }
	.seu-tabella tr { display: block; border-bottom: 1px solid var(--seu-linea); padding: .5rem 0; }
	.seu-tabella td { display: block; border: 0; padding: .25rem .9rem; }
}
