/* ================================================================
   BLOC PÉTITION — styles frontend
   Utilise les tokens du thème ma-ville (:root)
   ================================================================ */

.petition-block {
	max-width: 640px;
	margin-inline: auto;
	padding: 2.5rem 2rem;
	background: var(--color-white, #fff);
	border: 1px solid var(--color-border, #e4e9f3);
	border-radius: 12px;
	box-shadow: var(--sh-md, 0 4px 12px rgba(30,45,78,.08));
	font-family: var(--font-base, system-ui, sans-serif);
}

/* ── Compteur ── */
.petition-counter {
	text-align: center;
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid var(--color-border, #e4e9f3);
}

.petition-counter__number {
	display: block;
	font-size: var(--step-4, 3.5rem);
	font-weight: 800;
	line-height: 1;
	color: var(--color-primary, #2b5bbf);
	letter-spacing: -0.02em;
}

.petition-counter__label {
	display: block;
	margin-top: 0.35rem;
	font-size: var(--step-1, 1.25rem);
	font-weight: 600;
	color: var(--color-ink-soft, #576080);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

/* ── Liste des signataires ── */
.petition-signatories {
	margin-bottom: 2rem;
}

.petition-signatories__heading {
	font-size: var(--step--1, 0.875rem);
	font-weight: 600;
	color: var(--color-ink-soft, #576080);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 0.6rem;
}

.petition-signatories__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.petition-signatories__list li {
	background: var(--color-primary-tint, #edf2fd);
	color: var(--color-primary-ink, #162c54);
	border-radius: 999px;
	padding: 0.25em 0.85em;
	font-size: var(--step--1, 0.875rem);
	font-weight: 500;
}

/* ── Formulaire ── */
.petition-form__field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin-bottom: 1.25rem;
}

.petition-form__field label {
	font-size: var(--step--1, 0.875rem);
	font-weight: 600;
	color: var(--color-ink, #1e2d4e);
}

.petition-form__optional {
	font-weight: 400;
	color: var(--color-ink-soft, #576080);
}

.petition-form__required {
	color: var(--color-coral, #dd6b4d);
}

.petition-form__field input[type="text"],
.petition-form__field input[type="email"] {
	width: 100%;
	padding: 0.65rem 0.9rem;
	border: 1.5px solid var(--color-border, #e4e9f3);
	border-radius: 8px;
	font-size: var(--step-0, 1rem);
	font-family: inherit;
	color: var(--color-ink, #1e2d4e);
	background: var(--color-bg, #f8fafd);
	transition: border-color 0.18s, box-shadow 0.18s;
	box-sizing: border-box;
}

.petition-form__field input:focus {
	outline: none;
	border-color: var(--color-primary, #2b5bbf);
	box-shadow: 0 0 0 3px var(--color-primary-tint, #edf2fd);
	background: var(--color-white, #fff);
}

/* ── Message d'état ── */
.petition-form__message {
	margin-bottom: 1rem;
	font-size: var(--step--1, 0.875rem);
	min-height: 1.4em;
}

.petition-form__message--error {
	color: var(--color-coral, #dd6b4d);
	font-weight: 500;
}

/* ── Bouton ── */
.petition-form__submit {
	display: inline-block;
	padding: 0.75rem 1.75rem;
	background: var(--color-primary, #2b5bbf);
	color: #fff;
	font-family: inherit;
	font-size: var(--step-0, 1rem);
	font-weight: 700;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	box-shadow: var(--sh-sm, 0 1px 2px rgba(30,45,78,.06));
	transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.petition-form__submit:hover:not(:disabled) {
	background: var(--color-primary-dark, #1a3d8f);
	transform: translateY(-2px);
	box-shadow: var(--sh-md, 0 4px 12px rgba(30,45,78,.08));
}

.petition-form__submit:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

/* ── Message de succès ── */
.petition-success {
	padding: 1rem 1.25rem;
	background: var(--color-green-t, #e2f5ec);
	color: var(--color-green, #38a169);
	border-radius: 8px;
	font-weight: 600;
	text-align: center;
}

/* ── Honeypot ── */
.petition-hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

/* ── Notice erreur de config ── */
.petition-notice {
	color: var(--color-ink-soft, #576080);
	font-style: italic;
}

/* ── Preview éditeur Gutenberg ── */
.petition-editor-placeholder,
.petition-editor-active {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
	padding: 2rem;
	border: 2px dashed var(--color-border, #e4e9f3);
	border-radius: 8px;
	text-align: center;
	background: var(--color-surface2, #f2f5fb);
}

.petition-editor-placeholder__icon,
.petition-editor-active__icon {
	font-size: 2rem;
}
