/* MekaGarage Auto — annuaire national (prototype). Réutilise la carte et la liste de « Garages » ; mobile d'abord. */
body.auto[data-ecran="annuaire"] .carte-panel { display: flex; flex-direction: column; gap: 10px; margin-top: 12px; }
body[data-ecran="annuaire"] .carte-barre .seg { flex: 1; max-width: 260px; }
body[data-ecran="annuaire"] .carte-barre .seg button { flex: 1; }
.ann-filtres { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; overscroll-behavior-x: contain; }
.ann-filtres::-webkit-scrollbar { display: none; }
.ann-filtres .chip-btn { flex: none; white-space: nowrap; }
.ann-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.ann-item { display: grid; grid-template-columns: minmax(0, 1fr) 20px; align-items: center; gap: 10px; padding: 14px 16px; border: 1px solid var(--mg-line, var(--border));
  border-radius: 18px; background: var(--mg-surface, var(--surface-raised)); color: inherit; text-decoration: none;
  -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; touch-action: manipulation;
  transition: transform var(--t-press, 140ms) var(--ease, ease), border-color var(--t-local, 200ms) var(--ease, ease); }
.ann-item:active { transform: scale(.985); border-color: var(--mg-accent, var(--brand)); transition-duration: 90ms; }
.ann-item.on { border-color: var(--mg-accent, var(--brand)); box-shadow: inset 0 0 0 1px var(--mg-accent, var(--brand)); }
.ann-t { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ann-t strong { font-size: 17px; overflow-wrap: anywhere; }
.ann-t small { color: var(--mg-copy, var(--ink-muted)); font-size: 14px; }
.ann-t .tag { align-self: flex-start; margin-top: 4px; }
.ann-go { font-size: 26px; line-height: 1; color: var(--mg-copy, var(--ink-muted)); }
#ann_plus { margin-top: 12px; width: 100%; }
.ann-statut { margin: -4px 0 12px; }
.ann-carte-fiche { display: flex; flex-direction: column; padding: 6px 16px; }
.ann-horaires { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 4px; }
.ann-horaires li { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-weight: 500; }
.ann-horaires li span:last-child { white-space: nowrap; }
.ann-source { margin-top: 18px; }
@media (prefers-reduced-motion: reduce) { .ann-item:active { transform: none; } }
@media (hover: hover) and (pointer: fine) { .ann-item:hover { border-color: var(--mg-accent, var(--brand)); } }
/* break-ui : avec « · du plus proche au plus loin », le compteur écrasait « Liste / Carte » (« Ca… ») : il passe au-dessus. */
body[data-ecran="annuaire"] .carte-barre { flex-wrap: wrap; row-gap: 8px; }
body[data-ecran="annuaire"] .carte-barre .hcount { flex: 1 1 160px; min-width: 0; }
body[data-ecran="annuaire"] .carte-barre .seg { flex: 1 0 200px; }
/* MekaGarage Pro : recherche de sa fiche. */
#ann_pro_q { width: 100%; min-height: 48px; }
/* Gestion : fiche d'annuaire en pleine largeur. */
body:not(.auto) #ann_source, body:not(.auto) #ann_revendication, body:not(.auto) #ann_abonnement { grid-column: 1 / -1; }
