/*
 * Styles des composants partagés (en-tête, pied de page, marginalia).
 * Extraits des blocs <style> de SiteHeader.dc.html et SiteFooter.dc.html : la politique de
 * sécurité de contenu interdit les balises <style> en ligne (style-src-elem 'self').
 */

/* Reset box-sizing, posé ICI pour exactement la même raison que la règle sur les liens
   ci-dessous : `*{box-sizing:border-box;}` était dupliqué dans 12 des 15 CSS de page et
   ABSENT de trois (article, espace-client, infrastructure). L'en-tête et le pied étant
   partagés, ils repassaient en content-box sur ces pages et s'élargissaient de 88px, donc
   le logo sautait de 44px d'une page à l'autre (mesuré : bord à 136,5px sur / contre 92,5px
   sur /infrastructure, à 1425px de large). Le châssis ne doit pas dépendre du CSS de page. */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Base : aucun lien souligné par défaut (intention du site, reprise à l'identique dans chaque
   CSS de page). Posée ici car components.css est chargé sur TOUTES les pages : le châssis
   (en-tête, pied, marginalia) ne doit pas dépendre du CSS de page pour ça. Le redesign
   Infrastructure avait scopé la règle à « .infra-redesign a » et laissé le header souligné.
   Un contexte précis peut ré-activer l'underline avec plus de spécificité (ex. « .art__body a »). */
a {
    text-decoration: none;
}

/* --- En-tête : navigation en ligne au-dessus de 1040px, menu déroulant en dessous --- */
[data-nav-inline] {
    display: none;
}
[data-nav-toggle] {
    display: inline-flex;
}
/* Le panneau doit être caché à l'état FERMÉ. Sans cette règle de base, il n'était caché par
   personne sous 1040px : la règle d'ouverture ci-dessous ne fait que le montrer, et un enfant
   de <details> pour lequel une feuille de style fixe un `display` n'est plus masqué par le
   navigateur. Résultat mesuré à 885px, <details> fermé : le panneau s'affichait en
   `display:block`, 72x495px, à l'intérieur d'un en-tête de 71px, EN MÊME TEMPS que le bouton
   burger. C'est le « double menu », deux compositions visibles à la fois (8 liens en ligne
   contre 12 dans le panneau). */
[data-nav-panel] {
    display: none;
}
a[data-navlink]:hover {
    color: #1C2E63 !important;
}

/* Le menu mobile est un <details> : il s'ouvre sans JavaScript. */
[data-nav-toggle] > summary::-webkit-details-marker {
    display: none;
}
[data-nav-toggle][open] > [data-nav-panel] {
    display: flex;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 59;
}

@media (min-width: 1040px) {
    [data-nav-inline] {
        display: flex !important;
    }
    [data-nav-toggle] {
        display: none !important;
    }
    [data-nav-panel] {
        display: none !important;
    }
}

/* --- Pied de page --- */
a[data-footlink] {
    transition: color .15s;
}
a[data-footlink]:hover {
    color: #F2F3F1 !important;
}

/* --- Marginalia des pages internes --- */
a[data-aside-link]:hover {
    color: #1C2E63;
}

/* --- Bouton « Espace client » de l'en-tête --- */
[data-lxh="header-portal"]:hover {
    background: #14203f;
}
