/* Menu du haut (menu.php) et pied de page (menu_bas.php) communs a tout le site.
   Feuille autonome : chargee par meta__tags.php apres viaouest.css, et seule par les modules
   qui n'utilisent pas viaouest.css (search/bnf, phares, rues, economie). Toutes les regles
   sont limitees aux menus pour ne pas modifier le reste des pages. */
/* Ce que viaouest.css (body, A:link) donnait aux menus, repris ici pour les modules */
.via-header, .via-footer { font-family:Arial, sans-serif; color:#000; }
.via-header, .via-footer { font-size:20px; }
.viaouest-reference-badge a:link, .viaouest-reference-badge a:visited { font-family:Arial, sans-serif; font-size:20px; }

/* Menu du haut commun (menu.php) */
.via-header { box-sizing:border-box; width:100%; max-width:420px; margin:0 auto; padding:6px; background:#fff; }
.via-header * { box-sizing:border-box; }
.via-header-boutons { display:flex; gap:6px; align-items:center; margin-bottom:6px; }
.via-header-boutons > a { flex:1; display:block; height:40px; line-height:36px; border:thin outset #fff; font:28px Arial, sans-serif; text-align:center; text-decoration:none; white-space:nowrap; }
.via-header-boutons > a:hover { text-decoration:none; filter:brightness(1.1); }
.via-header-accueil { color:#FFF !important; background:#4686F1; border-top-left-radius:15px; }
.via-header-plan { color:#FFC !important; background:#02875F; border-top-right-radius:15px; }
.via-header-bandeau { display:flex; align-items:center; gap:4px; min-height:30px; padding:2px 4px; background:#FFCC00; font:14px Arial, sans-serif; color:#000; }
.via-header-date, .via-header-heure { flex:0 0 auto; }
.via-header-defilant { flex:1; min-width:0; overflow:hidden; }
.vo-share { position:relative; flex:0 0 48px; }
.vo-share-toggle { display:flex; text-decoration:none; width:48px; height:40px; align-items:center; justify-content:center; border-radius:8px; background:#2f3b45; color:#fff !important; box-shadow:0 1px 2px rgba(0, 0, 0, .3); cursor:pointer; }
.vo-share-toggle:hover, .vo-share-toggle:focus-visible, .vo-share-toggle[aria-expanded="true"] { background:#17212a; }
.vo-share-toggle svg { display:block; }
.vo-share-menu { position:absolute; top:46px; left:50%; z-index:1000; width:200px; margin-left:-100px; padding:6px 0; border:1px solid #d5dbe0; border-radius:10px; background:#fff; box-shadow:0 6px 18px rgba(0, 0, 0, .18); text-align:left; }
.vo-share-menu[hidden] { display:none; }
.vo-share-menu .vo-share-item { display:block; width:100%; padding:10px 16px; border:0; background:none; color:#1f2933 !important; font:16px/1.3 Arial, sans-serif; text-align:left; text-decoration:none !important; cursor:pointer; }
.vo-share-menu .vo-share-item:hover, .vo-share-menu .vo-share-item:focus-visible { background:#eef2f5; outline:none; }

/* Pied de page commun (menu_bas.php) */
.via-footer { box-sizing:border-box; width:100%; max-width:420px; margin:0 auto; background:#fff; text-align:center; }
.via-footer * { box-sizing:border-box; }
.via-footer ul { margin:0; padding:0; list-style:none; }
.via-footer li { display:inline; }
.via-footer li + li::before { content:" - "; }
.via-footer hr { margin:8px auto; }

.viaouest-reference-badge { width:min(368px, calc(100% - 32px)); margin:20px auto; padding:16px; border-radius:14px; background:#dff1bc; color:#15241d; text-align:center; font:16px/1.5 system-ui, sans-serif; }
.viaouest-reference-badge strong { display:block; margin-bottom:5px; font:800 19px/1.2 Georgia, serif; }
.viaouest-reference-badge .viaouest-annuaire-link,
.viaouest-reference-badge .viaouest-annuaire-link:visited { color:#176b4b !important; font-weight:800; text-decoration:underline; }
.viaouest-reference-badge .viaouest-reference-button,
.viaouest-reference-badge .viaouest-reference-button:visited,
.viaouest-reference-badge .viaouest-reference-button:hover,
.viaouest-reference-badge .viaouest-reference-button:active { display:inline-block; margin-top:10px; padding:10px 14px; border-radius:9px; background:#176b4b; color:#fff !important; font-weight:800; text-decoration:none; }
.viaouest-reference-badge .viaouest-reference-button:hover { background:#10543a; }

.via-footer-note { margin:6px; padding:6px; min-height:30px; background:#FFCC00; font-size:12px; line-height:18px; }
.via-footer-boutons { display:flex; gap:6px; padding:0 6px 6px; }
.via-footer-boutons a { flex:1; display:block; height:40px; line-height:36px; border:thin outset #fff; font:30px Arial, sans-serif; text-decoration:none; white-space:nowrap; }
.via-footer-boutons a:hover { text-decoration:none; filter:brightness(1.1); }
.via-footer-accueil { color:#FFF !important; background:#4686F1; border-bottom-left-radius:15px; }
.via-footer-plan { color:#FFC !important; background:#02875F; border-bottom-right-radius:15px; }

.via-footer-marque { margin:16px 0; color:#000; }
.via-footer-marque span { font-size:50px; }
.via-footer-liens { font-size:22px; }
.via-footer-liens .via-footer-petit { font-size:20px; }
/* A:link impose 20px a tous les liens : les liens du pied de page reprennent la taille de leur liste */
.via-footer-liens a:link, .via-footer-liens a:visited { font-size:inherit; font-family:Arial, sans-serif; color:#0000FF; text-decoration:none; }
.via-footer-cookies { padding:0; border:0; background:none; color:#02875F; font:inherit; font-size:22px; text-decoration:underline; cursor:pointer; }

.via-footer-google { padding:20px; }
.google-source-link { display:inline-flex; align-items:center; gap:6px; padding:7px 11px; border:1px solid #dadce0; border-radius:6px; background:#fff; color:#1f1f1f; font:500 13px/1.2 Arial, sans-serif; text-decoration:none; transition:background-color .15s ease, border-color .15s ease; }
.google-source-link span { color:#fbbc04; }
.google-source-link:hover { background:#f8fafd; border-color:#c9d7f8; }

/* Menus fluides par defaut (pages fluides comme actualite.php). Sur les pages dont le tableau principal
   fait 420 px fixes, la page deborde du telephone : les menus prennent alors la meme largeur pour rester alignes.
   Un tableau de 420 px avec une classe (viaouest-content-table, river-shell, nat-shell...) devient fluide
   sur mobile par sa propre CSS : les menus restent fluides avec lui. */
body:has(> table[width="420"]:not([class])) .via-header,
body:has(> table[width="420"]:not([class])) .via-footer { width:420px; max-width:none; }
