/**
 * Anthélie — Bloc « Recherche de sépulture couverte » (front).
 * Réutilise les tokens du design system (astra-child/assets/css/tokens.css) ;
 * repli statique = valeur réelle du token, pas une couleur inventée.
 */

.anthelie-sepulture {
	display: block;
	max-width: 34rem;
	font-family: var(--anth-font-body, "Hanken Grotesk", "Segoe UI", system-ui, sans-serif);
	color: var(--anth-text, #2E2823);
}

.anthelie-sepulture,
.anthelie-sepulture.is-style-anth-center {
	margin-inline: auto;
}

.anthelie-sepulture.is-style-anth-left {
	margin-inline: 0;
}

.anthelie-sepulture__label {
	display: block;
	margin-bottom: 0.35rem;
	font-weight: var(--anth-weight-semibold, 600);
	color: var(--anth-text, #2E2823);
}

.anthelie-sepulture .anthelie-sepulture__label,
.anthelie-sepulture .anthelie-sepulture__status {
	text-align: center;
}

.anthelie-sepulture.is-style-anth-left .anthelie-sepulture__label,
.anthelie-sepulture.is-style-anth-left .anthelie-sepulture__status {
	text-align: left;
}

.anthelie-sepulture__controls {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: stretch;
}

.anthelie-sepulture .anthelie-sepulture__controls {
	justify-content: center;
}

.anthelie-sepulture.is-style-anth-left .anthelie-sepulture__controls {
	justify-content: flex-start;
}

.anthelie-sepulture .anthelie-sepulture__postal-row,
.anthelie-sepulture .anthelie-sepulture__cemeteries {
	margin-inline: auto;
}

.anthelie-sepulture.is-style-anth-left .anthelie-sepulture__postal-row,
.anthelie-sepulture.is-style-anth-left .anthelie-sepulture__cemeteries {
	margin-inline: 0;
}

.anthelie-sepulture__postal {
	flex: 1 1 10rem;
	min-width: 0;
	padding: 0.55rem 0.75rem;
	font-family: inherit;
	font-size: var(--anth-text-base, 1rem);
	color: var(--anth-text, #2E2823);
	background: var(--anth-surface, #FFFDF8);
	border: 1px solid var(--anth-border, #CEC9C2);
	border-radius: var(--anth-radius-sm, 6px);
}

.anthelie-sepulture__postal:focus-visible {
	border-color: var(--anth-focus-ring, #B07A3F);
	box-shadow: var(--anth-shadow-glow, 0 0 0 6px rgba(216, 155, 69, .14));
	outline: none;
}

.anthelie-sepulture__validate {
	flex: 0 0 auto;
	padding: 0.55rem 1.1rem;
	font-family: inherit;
	font-size: var(--anth-text-base, 1rem);
	font-weight: var(--anth-weight-semibold, 600);
	cursor: pointer;
	color: var(--anth-sand-900, #2E2823);
	background: var(--anth-gold-500, #D89B45);
	border: 1px solid transparent;
	border-radius: var(--anth-radius-pill, 999px);
	transition: background-color .18s ease, color .18s ease;
}

.anthelie-sepulture__validate:where(:hover, :focus-visible) {
	background: var(--anth-gold-700, #885C36);
	color: var(--anth-sand-50, #FBF7F0);
}

.anthelie-sepulture__validate:focus-visible {
	box-shadow: var(--anth-shadow-glow, 0 0 0 6px rgba(216, 155, 69, .14));
	outline: none;
}

.anthelie-sepulture__validate:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.anthelie-sepulture__status {
	margin: 0.75rem 0 0;
	font-size: var(--anth-text-sm, 0.875rem);
	color: var(--anth-text-muted, #79736D);
}

.anthelie-sepulture.is-busy .anthelie-sepulture__status::after {
	content: '';
	display: inline-block;
	width: 0.85em;
	height: 0.85em;
	margin-left: 0.5em;
	vertical-align: -0.1em;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: anthelie-sep-spin 0.7s linear infinite;
}

@keyframes anthelie-sep-spin {
	to {
		transform: rotate(360deg);
	}
}

.anthelie-sepulture__cemeteries {
	margin: 0.5rem 0 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--anth-border, #CEC9C2);
	border-radius: var(--anth-radius-sm, 6px);
	overflow: hidden;
	background: var(--anth-surface-raised, #FFFFFF);
	box-shadow: var(--anth-shadow-sm, 0 1px 2px rgba(46, 40, 35, .06), 0 1px 3px rgba(46, 40, 35, .08));
}

.anthelie-sepulture__cemeteries[hidden] {
	display: none;
}

.anthelie-sepulture__cemetery {
	padding: 0.6rem 0.85rem;
	cursor: pointer;
	font-size: var(--anth-text-sm, 0.875rem);
	line-height: 1.35;
	color: var(--anth-text, #2E2823);
	border-bottom: 1px solid var(--anth-border, #CEC9C2);
}

.anthelie-sepulture__cemetery:last-child {
	border-bottom: 0;
}

.anthelie-sepulture__cemetery:where(:hover, :focus) {
	background: var(--anth-accent-subtle, #F6EAD6);
	outline: none;
}

/* Alignement de bloc (barre d'outils WP) : élargit le conteneur, garde le
   formulaire compact et centré/aligné selon le style choisi ci-dessus. */
.anthelie-sepulture.alignwide,
.anthelie-sepulture.alignfull {
	max-width: none;
}

.anthelie-sepulture.alignwide .anthelie-sepulture__postal-row,
.anthelie-sepulture.alignwide .anthelie-sepulture__status,
.anthelie-sepulture.alignwide .anthelie-sepulture__cemeteries,
.anthelie-sepulture.alignfull .anthelie-sepulture__postal-row,
.anthelie-sepulture.alignfull .anthelie-sepulture__status,
.anthelie-sepulture.alignfull .anthelie-sepulture__cemeteries {
	max-width: 34rem;
}
