/**
 * ChoirSuite — Styles des formulaires d'inscription aux événements.
 * Styles minimalistes, pensés pour hériter du thème Divi 5.
 * Toutes les classes sont préfixées .choirsuite-events-*.
 */

.choirsuite-events-register {
	box-sizing: border-box;
	max-width: 480px;
}

.choirsuite-events-register * {
	box-sizing: border-box;
}

.choirsuite-events-form {
	display: flex;
	flex-direction: column;
	gap: 0.75em;
}

.choirsuite-events-field {
	display: flex;
	flex-direction: column;
	gap: 0.3em;
	margin: 0;
}

.choirsuite-events-field input,
.choirsuite-events-field select {
	padding: 0.5em;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 4px;
}

.choirsuite-events-submit {
	align-self: flex-start;
	cursor: pointer;
	background: linear-gradient(135deg, #3d5551 0%, #114f47 50%, #041a16 100%) !important;
	border: none !important;
	color: #f5f3ef !important;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.6);
	border-radius: 4px;
	padding: 0.65em 1.6em;
	font-weight: 600;
	font-size: 0.9em;
	letter-spacing: 0.02em;
	transition: background 0.2s ease;
}

.choirsuite-events-submit:hover {
	background: linear-gradient(135deg, #4f6965 0%, #17665c 50%, #0a2a24 100%) !important;
	color: #f5f3ef !important;
}

/* .choirsuite-events-ticketing est un <a>, pas un enfant flex de
   .choirsuite-events-form (il apparaît seul, hors formulaire, quand
   l'accès est refusé) — display: inline-block nécessaire pour que le
   padding hérité de .choirsuite-events-submit s'applique correctement. */
.choirsuite-events-ticketing {
	display: inline-block;
	text-decoration: none;
}

.choirsuite-events-unregister {
	/* Centré plutôt qu'aligné à gauche comme le bouton d'inscription
	   classique (.choirsuite-events-submit, align-self: flex-start) — seul
	   bouton de son formulaire, un centrage est plus lisible ici. */
	align-self: center;
	background: #fff !important;
	color: #b32d2e !important;
	border: 1px solid #b32d2e !important;
}

.choirsuite-events-unregister:hover {
	background: rgba(179, 45, 46, 0.08) !important;
	color: #b32d2e !important;
}

.choirsuite-events-success,
.choirsuite-events-full,
.choirsuite-events-restricted,
.choirsuite-events-already-registered,
.choirsuite-events-error,
.choirsuite-events-remaining {
	padding: 0.75em 1em;
	border-radius: 4px;
	margin: 0 0 0.75em;
}

/* Ces messages sont tous des <p> directs : une règle du thème
   (p:not(.has-background):last-of-type) force padding-bottom à 0
   dessus dès qu'ils sont le dernier <p> de leur contexte, resserrant le
   padding côté bas. .choirsuite-events-remaining exclu : son padding est
   déjà remis à 0 plus bas, rien à corriger pour lui. */
.choirsuite-events-success,
.choirsuite-events-full,
.choirsuite-events-restricted,
.choirsuite-events-already-registered,
.choirsuite-events-error {
	padding-bottom: 0.75em !important;
}

.choirsuite-events-success {
	background: rgba(0, 138, 32, 0.08);
	border: 1px solid rgba(0, 138, 32, 0.3);
}

.choirsuite-events-error {
	background: rgba(179, 45, 46, 0.08);
	border: 1px solid rgba(179, 45, 46, 0.3);
}

.choirsuite-events-full,
.choirsuite-events-restricted,
.choirsuite-events-already-registered {
	background: rgba(0, 0, 0, 0.04);
	border: 1px dashed rgba(0, 0, 0, 0.2);
}

.choirsuite-events-remaining {
	font-style: italic;
	padding: 0;
	border: none;
}
