/*
 * Anti-CLS (page de recherche) : réservation de la hauteur de la barre de recherche du header.
 *
 * #searchMenuBarStickyContainer (dans le nav partagé) est display:none jusqu'à l'hydratation React
 * (MenuSearchBar pose data-hydrated="true" -> display:flex). Sans réservation, la bande apparaît au
 * montage et pousse le contenu vers le bas (layout shift). On réserve donc sa hauteur finale UNIQUEMENT
 * en pré-hydratation (sélecteur :not([data-hydrated="true"]), spécificité ID+attr > la classe) ;
 * React reprend la main au montage sans décalage.
 *
 * Hauteurs : 106px jusqu'à 1280px INCLUS (la barre se replie sur 2 lignes tant que viewport <=
 * --containerFluidMaxWidth = 1280px), 60px à partir de 1281px (1 ligne). Frontière mesurée nette à
 * 1280/1281, pas la convention Bootstrap 1279.98.
 *
 * /!\ Chargé UNIQUEMENT par les templates search.*.html.twig (via {% block stylesheets %}) : ne PAS
 * le passer en CSS global, sinon la bande vide se réserverait sur toutes les pages du site.
 */
#searchMenuBarStickyContainer:not([data-hydrated="true"]) {
    display: block;
    min-height: 60px;
}

@media (max-width: 1280px) {
    #searchMenuBarStickyContainer:not([data-hydrated="true"]) {
        min-height: 106px;
    }
    /* Pages search a barre 1 ligne (sans 2e ligne de filtres lieu : news/people/recipe/cuisiniers-demain).
       La bande reelle = 58px ; sans cet override la reservation 106px serait 48px trop haute => le contenu
       remonte de 48px quand React hydrate (CLS ~0.058 mesure mobile). Marquees `single-line-search` (nav). */
    #searchMenuBarStickyContainer.single-line-search:not([data-hydrated="true"]) {
        min-height: 58px;
    }
}
