/*
 * HomeBe — Carte du marche  ([homebe_carte])
 * Repris de l'export Claude Design (Carte outils HomeBe.dc.html).
 * Les regles globales d'origine (html, body, *, a, button, ::selection) ont
 * ete scopees sous .hb-carte-app : telles quelles elles ecrasaient le theme
 * sur tout le site. Aucun autre changement : structure, textes et valeurs
 * sont ceux de la maquette.
 */
.hb-carte-app { -webkit-text-size-adjust: 100%; }
  .hb-carte-app { width: 100%; background: #FFFFFF; color: #1B2A4E; font-family: 'DM Sans', system-ui, sans-serif; font-size: 15px; line-height: 1.6; }
  .hb-carte-app, .hb-carte-app *, .hb-carte-app *::before, .hb-carte-app *::after { box-sizing: border-box; }
  .hb-carte-app a { color: #B8852B; text-decoration: none; }
  .hb-carte-app a:hover { color: #1B2A4E; text-decoration: underline; }
  .hb-carte-app button, .hb-carte-app input { font-family: inherit; }
  .hb-carte-app ::selection { background: #D9A441; color: #1B2A4E; }
  .hb-carte-app [data-hb="scroll"]::-webkit-scrollbar { width: 8px; }
  .hb-carte-app [data-hb="scroll"]::-webkit-scrollbar-thumb { background: #D7DBE3; border-radius: 999px; }
  @media (max-width: 1000px) {
    .hb-carte-app [data-hb="app"] { grid-template-columns: minmax(0, 1fr) !important; }
    .hb-carte-app [data-hb="tools"] { display: none !important; }
    .hb-carte-app [data-hb="app"] { height: calc(100vh - 64px) !important; min-height: 420px !important; }
    .hb-carte-app [data-hb="info"] { left: 12px !important; right: 12px !important; top: auto !important; bottom: 12px !important; width: auto !important; }
    .hb-carte-app [data-hb="rail"] { display: flex !important; top: 142px !important; }
    .hb-carte-app [data-hb="toggle"] { display: none !important; }
    .hb-carte-app [data-hb="recherche"] { max-width: 100% !important; flex: 1 1 100% !important; }
    .hb-carte-app [data-hb="ctrl"] { position: static !important; }
    .hb-carte-app [data-hb="legende"] { bottom: 34px !important; padding: 9px 12px !important; }
    .hb-carte-app [data-hb="legende"] p:last-child { display: none !important; }
  }
  /* équivalents des style-hover du design */
  .hb-carte-app [data-hb="entete"] a:hover { color: #1B2A4E; text-decoration: none; }
  .hb-carte-app [data-hb="h-masquer"]:hover { border-color: #1B2A4E; color: #1B2A4E; }
  .hb-carte-app [data-hb="h-carte"]:hover { border-color: #1B2A4E; }
  .hb-carte-app [data-hb="h-sug"]:hover { background: #F4F5F7; }
  .hb-carte-app [data-hb="h-fermer"]:hover { border-color: #1B2A4E; color: #1B2A4E; }
  .hb-carte-app [data-hb="h-action"]:hover { background: #B8852B; }

/* Le theme ne fournit ni header ni footer sur cette page (modele Canevas) :
   l'entete de la maquette reste, comme dans le design d'origine. */
.hb-carte-app { margin: 0; padding: 0 }
.hb-carte-app p, .hb-carte-app h1, .hb-carte-app h2 { margin: 0 }

/* Boutons a icone : le theme, Elementor et WooCommerce posent leur propre
   padding, min-width et line-height sur <button>. Sans ce garde-fou, la croix
   de fermeture de la fiche et les commandes de zoom sortent de leur cercle. */
.hb-carte-app button { margin: 0; min-width: 0; line-height: 1.2; letter-spacing: normal; text-transform: none; -webkit-appearance: none; appearance: none; }
.hb-carte-app [data-hb="h-fermer"],
.hb-carte-app #hbPlus,
.hb-carte-app #hbMoins {
  padding: 0 !important; min-width: 0 !important; flex: none;
  display: inline-flex !important; align-items: center; justify-content: center;
}
.hb-carte-app [data-hb="h-fermer"] { font-size: 18px !important; line-height: 1 !important; }

/* Noms de communes longs — « Saint-Pierre-du-Perray », « Villeneuve-d'Ascq » :
   le libelle passe a la ligne dans le bouton, il ne deborde jamais. */
.hb-carte-app [data-hb="h-action"],
.hb-carte-app [data-hb="h-sug"],
.hb-carte-app [data-hb="h-carte"],
.hb-carte-app [data-hb="h-masquer"] {
  white-space: normal !important; overflow-wrap: anywhere; word-break: break-word;
  line-height: 1.25; height: auto;
}

/* ── mur de connexion ─────────────────────────────────────────────
   Même traitement que sur Invest et Documents : la page reste visible
   derrière, voile léger et flou, et la scène du mur, peinte en crème
   pour les pages où elle occupe tout l'écran, redevient transparente. */
.hb-carte-mur {
  position: fixed; inset: 0; z-index: 120;
  overflow: auto; background: rgba(15, 26, 51, .28);
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
}
.hb-carte-mur[hidden] { display: none; }
.hb-carte-mur .hb-mur-wrap,
.hb-carte-mur .hb-mur-scene { background: transparent !important; }
.hb-carte-mur .hb-mur-scene { min-height: 100%; padding: 72px 20px; }
.hb-carte-mur .hb-mur-apercu { display: none; }
.hb-carte-mur .hb-mur-voile { display: none; }

/* Pas de croix : sur la carte le mur s'impose, il n'y a pas de version
   libre de l'outil. Le visiteur se connecte, ou quitte la page. */
