/* ==========================================================================
   Portail-Habitat.fr - rubrique Chauffage et pompe à chaleur.
   Chargé après menuiserie.css, isolation.css et borne.css (dont la rubrique
   réutilise les tableaux empilés, fiches produit et cartes), uniquement sur
   les pages de la catégorie Chauffage.
   ========================================================================== */

/* ---------- Outils ---------- */
.mn-simulateur label[hidden], .ch-dimensionnement [hidden] { display: none !important; }
.ch-choix-liste a { color: #fff; font-weight: 700; text-decoration: underline; }
.mn-resultat .bo-sim-details li + li { margin-top: .35rem; }
.mn-resultat .bo-sim-details a { color: #fff; font-weight: 700; }

/* ---------- Coût du kWh de chaleur (barres) ---------- */
.ch-barres { margin: 1.5rem 0; padding: 1.2rem 1.3rem; background: #fff; border: 1px solid #E3DED5; border-radius: 1rem; }
.ch-barres-titre { margin: 0 0 .8rem; font-size: 1.02rem; font-weight: 800; color: var(--mag-nuit); }
.ch-barre { display: grid; grid-template-columns: 13rem minmax(0, 1fr) 4.4rem; align-items: center; gap: .6rem; margin: 0 0 .45rem; font-size: .93rem; color: #34403F; }
.ch-barre strong { text-align: right; font-weight: 700; color: var(--mag-nuit); white-space: nowrap; }
.ch-barre-fond { display: block; height: .85rem; background: var(--mag-pale); border-radius: 999px; overflow: hidden; }
.ch-barre-fond span { display: block; height: 100%; background: #9AA6A6; border-radius: 999px; }
.ch-barre-pac .ch-barre-fond span { background: var(--terre); }
.ch-barre-pac > span:first-child { font-weight: 700; color: var(--mag-nuit); }
.ch-barres-note { margin: .7rem 0 0; font-size: .85rem; line-height: 1.45; color: #4A5555; }

/* ---------- Codes erreur ---------- */
.ch-codes { margin: 1.25rem 0; }
.ch-codes-recherche { display: flex; flex-direction: column; gap: .3rem; max-width: 22rem; margin: 0 0 .5rem; }
.ch-codes-recherche span { font-size: .78rem; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; color: #4A5555; }
.ch-codes-recherche input { height: 2.8rem; padding: 0 .8rem; border: 2px solid var(--mag); border-radius: .6rem; font: inherit; font-size: 1.05rem; }
.ch-codes-compte { margin: 0 0 .6rem; font-size: .9rem; font-weight: 700; color: var(--mag); }
.ch-codes tbody tr[hidden] { display: none; }
.ch-codes tbody th strong { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 1rem; white-space: normal; overflow-wrap: anywhere; }

/* ---------- Encadré local ---------- */
.ch-local .chiffres-cles { margin-top: 0; }
.ch-local .iso-barre { grid-template-columns: 13rem minmax(0, 1fr) 3.6rem; }

@media (max-width: 640px) {
	.ch-barre, .ch-local .iso-barre { grid-template-columns: minmax(0, 1fr) 4.2rem; gap: .2rem .6rem; }
	.ch-barre > span:first-child, .ch-local .iso-barre > span:first-child { grid-column: 1 / -1; }
	.ch-barres { padding: 1rem; }
	.ch-codes-recherche { max-width: none; }
}
/* Résultats des outils : un libellé long passe à la ligne au lieu de déborder */
.ch-aides .mn-res-lignes p strong, .ch-simulateur .mn-res-lignes p strong, .ch-dim .mn-res-lignes p strong { min-width: 0; text-align: right; overflow-wrap: anywhere; }
.ch-aides .mn-res-lignes p span { flex: 0 1 auto; }
@media (max-width: 640px) {
	.bo-empile td strong, .bo-empile th strong { white-space: normal; overflow-wrap: anywhere; }
}
