/* « Quartier » d'un bien (05/11/2026, spec §5.153) — styles communs au back-office et au site public (assets/js/quartier.js).
   Tout est préfixé .q- : aucune règle ne touche le reste de la page. Agencement relevé sur la vidéo du widget Yatmo
   (onglets en pastilles, une ligne par lieu, pastille ronde à gauche, temps en puces à droite). */
.q-repere { background: none; border: 0; }
.q-picto { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .35); box-sizing: border-box; flex: 0 0 auto; }
.q-picto svg { display: block; }
.q-picto.q-manuel { border-color: #f2c200; }          /* lieu ajouté par l'agence : liseré jaune */
.q-bulle { font: 12px/1.45 Roboto, "Helvetica Neue", Arial, sans-serif; color: #333; min-width: 170px; }
.q-bulle .q-temps { margin-top: 5px; }

.q-bloc { font: 13px/1.4 Roboto, "Helvetica Neue", Arial, sans-serif; color: #333; background: #fff; }
.q-onglets { display: flex; flex-wrap: wrap; gap: 6px; padding: 12px 12px 10px; border-bottom: 1px solid #e8ebee; }
.q-onglet { border: 0; background: none; padding: 6px 12px; border-radius: 6px; font: inherit; font-weight: 500; color: #4a5560; cursor: pointer; }
.q-onglet:hover { background: #eef3f8; }
.q-onglet.q-actif { background: #0ea5e9; color: #fff; }
.q-liste { padding: 0 12px; }
.q-ligne { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid #eef0f2; cursor: pointer; }
.q-ligne:hover { background: #f7fafc; }
.q-texte { flex: 1 1 auto; min-width: 0; }
.q-nom { font-weight: 600; color: #1f2933; }
.q-type { color: #7b8794; font-size: 12px; }
.q-temps { display: inline-flex; flex-wrap: wrap; gap: 5px; justify-content: flex-end; flex: 0 0 auto; }
.q-puce { background: #e8f4fc; color: #0b6fa4; border-radius: 5px; padding: 2px 7px; font-size: 12px; white-space: nowrap; }
.q-masquer { border: 0; background: none; color: #9aa5b1; font-size: 18px; line-height: 1; padding: 0 4px; cursor: pointer; visibility: hidden; }
.q-ligne:hover .q-masquer { visibility: visible; }
.q-masquer:hover { color: #c0392b; }
.q-pied-bloc { padding: 9px 12px 11px; color: #8a94a0; font-size: 11px; }
.q-reafficher { border: 0; background: none; color: #006ac9; font: inherit; cursor: pointer; padding: 0; text-decoration: underline; }

@media (max-width: 600px) {
    .q-ligne { flex-wrap: wrap; }
    .q-temps { width: 100%; justify-content: flex-start; padding-left: 36px; }
}

/* Bloc du quartier sous la carte de la fiche du back-office. */
.bien-quartier { border-top: 1px solid #e8ebee; }
.bien-quartier .q-liste { max-height: 330px; overflow-y: auto; }

/* Texte du quartier : bloc de la fiche du back-office (retouche) et bloc de la fiche publique. */
.bien-quartier-texte { border-top: 1px solid #e8ebee; }
.q-texte-tete { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid #eef0f2; }
.q-texte-langues .q-onglet { padding: 3px 9px; font-size: 12px; }
.q-texte-etat { color: #8a94a0; font-size: 12px; margin-right: auto; }
.q-texte-bouton { border: 1px solid #cfd6dd; background: #fff; color: #33475b; border-radius: 4px; padding: 4px 10px; font: inherit; font-size: 12px; cursor: pointer; }
.q-texte-bouton:hover { background: #f1f5f9; }
.q-texte-bouton.q-texte-principal { background: #0ea5e9; border-color: #0ea5e9; color: #fff; margin-right: 6px; }
.q-texte-corps { padding: 10px 12px 12px; max-height: 360px; overflow-y: auto; }
.q-texte-corps p, .q-texte-public p { margin: 0 0 8px; line-height: 1.55; }
.q-texte-titre { font-size: 14px; font-weight: 700; margin: 12px 0 5px; color: #1f2933; }
.q-texte-saisie { width: 100%; box-sizing: border-box; font: 13px/1.5 Roboto, "Helvetica Neue", Arial, sans-serif; padding: 8px; border: 1px solid #cfd6dd; border-radius: 4px; }
.q-texte-aide { color: #8a94a0; font-size: 11px; margin: 4px 0 8px; }
.q-texte-public { margin-top: 22px; }
.q-texte-public h5 { margin-bottom: 10px; }

/* Sous la carte de la fiche : origine de la position et « Déplacer le repère » (§5.153, autonomie sans Whise). */
.bien-carte-outils { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 7px 12px; background: #f7f9fb; border-top: 1px solid #e8ebee; font: 12px/1.4 Roboto, "Helvetica Neue", Arial, sans-serif; color: #5b6770; }
.bien-carte-outils .bien-carte-source { margin-right: auto; }
.bien-carte-outils button { border: 1px solid #cfd6dd; background: #fff; color: #33475b; border-radius: 4px; padding: 3px 9px; font: inherit; cursor: pointer; }
.bien-carte-outils button:hover { background: #eef3f8; }
.bien-carte-outils button.bien-carte-principal { background: #3cb44b; border-color: #3cb44b; color: #fff; }

/* Propositions d'adresses sous le champ « Rue » de la fenêtre du bien. */
.adr-hote { position: relative; }
.adr-liste { position: absolute; z-index: 3000; left: 15px; right: 15px; top: 100%; margin: 2px 0 0; padding: 4px 0; list-style: none; background: #fff; border: 1px solid #cfd6dd; border-radius: 4px; box-shadow: 0 6px 18px rgba(0, 0, 0, .15); max-height: 260px; overflow-y: auto; font: 13px/1.4 Roboto, "Helvetica Neue", Arial, sans-serif; }
.adr-liste li { padding: 6px 12px; cursor: pointer; color: #1f2933; }
.adr-liste li:hover { background: #e8f4fc; }

/* §5.153 ter : puce de distance et champ « distance et temps de trajet vers une adresse ». */
.q-puce.q-distance { background: #eef0f2; color: #3e4c59; }
.q-picto.q-arrivee { background: #0ea5e9; }
.q-trajet { padding: 12px; }
.q-trajet-titre { display: block; font-weight: 600; color: #1f2933; margin: 0 0 6px; }
.q-trajet-champ { position: relative; }
.q-trajet-saisie { width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid #cfd6dd; border-radius: 6px; font: inherit; }
.q-trajet-saisie:focus { outline: 0; border-color: #0ea5e9; box-shadow: 0 0 0 2px rgba(14, 165, 233, .18); }
.q-trajet-liste { position: absolute; z-index: 1200; left: 0; right: 0; top: 100%; margin: 2px 0 0; padding: 4px 0; list-style: none; background: #fff; border: 1px solid #cfd6dd; border-radius: 6px; box-shadow: 0 6px 18px rgba(0, 0, 0, .15); max-height: 240px; overflow-y: auto; }
.q-trajet-liste li { padding: 7px 12px; cursor: pointer; color: #1f2933; }
.q-trajet-liste li:hover { background: #e8f4fc; }
.q-trajet-resultat { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 9px; min-height: 22px; color: #5b6770; }
.q-trajet-resultat strong { color: #1f2933; }

/* §5.153 quater : mention sous le champ public et liste des adresses recherchées dans la fiche du back-office. */
.q-trajet-mention { margin-top: 7px; color: #8a94a0; font-size: 11px; }
.q-trajet-mention a { color: inherit; text-decoration: underline; }
.q-trajet-mention:empty { display: none; }
.bien-recherches { border-top: 1px solid #e8ebee; padding: 10px 12px; }
.bien-recherches-titre { font-weight: 600; color: #1f2933; margin-bottom: 6px; }
.bien-recherches-ligne { display: flex; flex-wrap: wrap; gap: 4px 10px; padding: 4px 0; border-bottom: 1px solid #f1f3f5; }

/* §5.153 sexies : distance mesurée à pied par les rues (et non à vol d'oiseau). */
.q-puce.q-distance.q-reel { background: #e3f4e6; color: #1b6e2c; }
