/* Compléments propres au nouveau site (le reste du visuel vient des feuilles du thème d'origine). */

/* Champs pièges anti-robots des formulaires */
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Cartes Leaflet */
.ae-pin { background: none; border: 0; }
.ae-pin svg { filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .35)); }
.ae-popup { display: block; width: 200px; color: inherit; text-decoration: none; }
.ae-popup__img { display: block; height: 100px; margin: -14px -20px 8px; background-size: cover; background-position: center; border-radius: 12px 12px 0 0; }
.ae-popup strong { display: block; font-size: 15px; line-height: 1.3; }
.ae-popup small { color: #919191; }
.listing-map { min-height: 260px; }
.page-listings .map .leaflet-control-attribution { font-size: 10px; }

/* Messages des listes et formulaires */
.no_job_listings_found { padding: 20px; text-align: center; }
.job_listings .grid__item[hidden] { display: none !important; }
.fm-message { padding: 12px 16px; margin-bottom: 20px; border-radius: 4px; }
.fm-notice-success { background: #e8f8ee; color: #16683a; }
.fm-notice-error { background: #fdecec; color: #a12020; }
.comment-awaiting-moderation { padding: 10px 14px; background: #fff7d6; border-radius: 4px; }

/* Formulaire de contact : bouton à la manière du thème */
.fm-form .button-submit { background: none; border: 0; color: inherit; font: inherit; cursor: pointer; padding: 0; }

/* Visionneuse de la galerie photo */
.ae-lightbox { position: fixed; inset: 0; z-index: 10000; background: rgba(0, 0, 0, .9); display: flex; align-items: center; justify-content: center; }
.ae-lightbox[hidden] { display: none; }
.ae-lightbox img { max-width: 90vw; max-height: 85vh; box-shadow: 0 0 30px rgba(0, 0, 0, .5); }
.ae-lightbox button { position: absolute; background: none; border: 0; color: #fff; font-size: 48px; line-height: 1; cursor: pointer; padding: 10px 18px; }
.ae-lightbox__close { top: 10px; right: 10px; }
.ae-lightbox__prev { left: 10px; top: 50%; transform: translateY(-50%); }
.ae-lightbox__next { right: 10px; top: 50%; transform: translateY(-50%); }
.ae-lightbox__count { position: absolute; bottom: 16px; color: #ccc; font-size: 14px; }

/* Page 404 */
.error-404 .page-content { max-width: 700px; margin: 0 auto; padding: 40px 20px; text-align: center; }
.error-404 .search-form { display: flex; gap: 8px; justify-content: center; }
.error-404 .search-field { flex: 1; max-width: 400px; }

/* Filtres des pages listes : l'ancien thème remplaçait ces listes par des widgets jQuery (select2, chosen)
   et masquait les listes natives. On les réaffiche avec l'apparence des autres champs. */
.page-listings .search_jobs #search_region,
.page-listings .search_jobs .tags-select {
	display: inline-block;
	vertical-align: baseline;
	width: 230px;
	height: 38.5px;
	margin-right: 16px;
	padding: 11px 30px 10px 15px;
	background: #fff url("../img/select-arrow.svg") no-repeat right 12px center;
	border: 1px solid rgba(72, 72, 72, 0.2);
	border-radius: 3px;
	font-size: 15px;
	color: #919191;
	-webkit-appearance: none;
	appearance: none;
}
.page-listings .search_jobs .tags-select { width: 190px; margin-right: 0; }
.page-listings .search_jobs #search_categories {
	padding-right: 30px;
	background: #fff url("../img/select-arrow.svg") no-repeat right 12px center;
}
