/* A2Z Airport Assist — styles front.
   Reprend le design actuel (recherche, onglets, cartes) + mise en page responsive. */

.a2z-aa { overflow-x: hidden; }

/* --- Champ de recherche --- */
.a2z-aa .a2z-input-container {
	position: relative;
	display: inline-block;
	width: 100%;
}
.a2z-aa .a2z-search-input {
	width: 100%;
}
.a2z-aa .a2z-clear {
	position: absolute;
	top: 50%;
	right: 50px;
	transform: translateY(-50%);
	cursor: pointer;
	font-size: 30px;
	padding: 11px;
}
.a2z-aa[dir="rtl"] .a2z-clear {
	right: auto;
	left: 50px;
}

/* --- Liste de suggestions --- */
.a2z-aa .a2z-suggestions {
	list-style: none;
	padding: 0;
	margin: 0;
	display: none;
}
.a2z-aa .a2z-suggestions li {
	cursor: pointer;
	padding: 20px;
	border: 1px solid #ddd;
	background-color: #f9f9f9;
}
.a2z-aa .a2z-suggestions li:hover {
	background-color: #f0f0f0;
}

/* --- Onglets (style Elementor d'origine) --- */
.a2z-aa .a2z-tabs {
	display: flex;
	margin-right: 1px;
	border-bottom: 2px solid #ddd;
	margin-bottom: 10px;
}
.a2z-aa .a2z-tab-title {
	padding: 10px 20px;
	cursor: pointer;
	background-color: #f5f5f5;
	transition: background-color 0.3s, border-color 0.3s;
	border: 1px solid transparent;
	border-radius: 5px 5px 0 0;
	border-color: #ddd;
}
.a2z-aa .a2z-tab-title.a2z-active {
	background-color: #fff;
	border-color: #ddd;
	border-bottom: none;
	font-weight: bold;
}
.a2z-aa .a2z-tab-title:hover {
	background-color: #e0e0e0;
}

/* --- Cartes : largeur selon le nombre de cartes, alignées (pas de retour à la ligne sur desktop) --- */
.a2z-aa .a2z-tab-content {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: flex-start;
	justify-content: flex-start; /* 1 carte : à gauche (LTR) / à droite (RTL) */
}
.a2z-aa .a2z-card {
	box-sizing: border-box;
	flex: 1 1 100%;   /* mobile : empilées */
	max-width: 100%;
}
.a2z-aa .a2z-card-table {
	width: 100%;
	height: auto;
	margin: 0;
}
/* Compacte l'intérieur des cartes : supprime les espaces sous boutons / titres / descriptions */
.a2z-aa .a2z-card-table h4,
.a2z-aa .a2z-card-table h5 { margin: 0 0 6px; }
.a2z-aa .a2z-card-table th { padding-bottom: 8px; }
.a2z-aa .a2z-card-table td { vertical-align: top; }
.a2z-aa .a2z-card-table td,
.a2z-aa .a2z-card-table th { word-wrap: break-word; overflow-wrap: break-word; }
.a2z-aa .a2z-card-table a { display: inline-block; margin: 4px 0 0; }
.a2z-aa .a2z-card-table a button { margin: 0; }

/* --- Textes --- */
.a2z-aa .small-text { font-weight: normal; font-size: 15px; }
.a2z-aa .a2z-desc { font-size: 14px; text-align: left; }
.a2z-aa[dir="rtl"] .a2z-desc { text-align: right; }

/* Mots-clés dorés des titres (remplace le style inline supprimé par wp_kses_post).
   !important pour passer outre la couleur blanche de l'en-tête .table-dark. */
.a2z-aa .a2z-card-table .a2z-gold { color: #D7B65D !important; }

/* --- Tablette : 2 par ligne --- */
@media (min-width: 601px) and (max-width: 992px) {
	.a2z-aa .a2z-card { flex: 1 1 calc(50% - 5px); max-width: calc(50% - 5px); }
}

/* --- Desktop : largeur selon le nombre de cartes, une seule ligne --- */
@media (min-width: 993px) {
	.a2z-aa .a2z-tab-content { flex-wrap: nowrap; }
	.a2z-aa .a2z-card { min-width: 0; }
	.a2z-aa .a2z-cards-1 .a2z-card,
	.a2z-aa .a2z-cards-2 .a2z-card { flex: 0 0 calc(50% - 5px); max-width: calc(50% - 5px); }
	.a2z-aa .a2z-cards-3 .a2z-card { flex: 0 0 calc(33.333% - 6.667px); max-width: calc(33.333% - 6.667px); }
	.a2z-aa .a2z-cards-4 .a2z-card { flex: 0 0 calc(25% - 7.5px); max-width: calc(25% - 7.5px); }
	.a2z-aa .a2z-cards-5 .a2z-card { flex: 0 0 calc(20% - 8px); max-width: calc(20% - 8px); }
	.a2z-aa .a2z-cards-6 .a2z-card { flex: 0 0 calc(16.666% - 8.333px); max-width: calc(16.666% - 8.333px); }
	.a2z-aa .a2z-cards-7 .a2z-card { flex: 0 0 calc(14.285% - 8.571px); max-width: calc(14.285% - 8.571px); }
}

/* --- Onglets : repli sur petit écran --- */
@media (max-width: 600px) {
	.a2z-aa .a2z-tabs { flex-wrap: wrap; }
}
