/* =====================================================================
   GUIDE MAISON BOIS — Simulateur de coût (UI)
   ===================================================================== */
.simulator{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-6);align-items:start;margin-top:var(--sp-6)}
@media(max-width:900px){.simulator{grid-template-columns:1fr}}

/* Panneau de saisie */
.sim-panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-sm)}
.sim-panel h2{font-size:var(--fs-lg);margin-bottom:var(--sp-5)}
.sim-group{margin-bottom:var(--sp-5)}
.sim-group>label,.sim-legend{display:block;font-weight:600;font-size:var(--fs-sm);margin-bottom:.5rem}
.sim-range-val{color:var(--forest-700);font-weight:600}
input[type="range"]{width:100%;accent-color:var(--forest-700);height:6px}
.sim-hint{font-size:var(--fs-xs);color:var(--ink-500);margin-top:.4rem}

/* Segmented control */
.segmented{display:flex;flex-wrap:wrap;gap:.4rem}
.segmented input{position:absolute;opacity:0;width:0;height:0}
.segmented label{flex:1;min-width:fit-content;text-align:center;padding:.6rem .8rem;border:1.5px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:pointer;transition:.15s;background:#fff}
.segmented label:hover{border-color:var(--forest-500)}
.segmented input:checked+label{background:var(--forest-700);color:#fff;border-color:var(--forest-700)}
.segmented input:focus-visible+label{outline:3px solid var(--forest-500);outline-offset:2px}

/* Options checkboxes */
.sim-options{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
@media(max-width:520px){.sim-options{grid-template-columns:1fr}}
.sim-check{display:flex;align-items:center;gap:.6rem;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:.6rem .75rem;cursor:pointer;font-size:var(--fs-sm);transition:.15s}
.sim-check:hover{border-color:var(--forest-500)}
.sim-check input{accent-color:var(--forest-700);width:18px;height:18px}
.sim-check.checked{border-color:var(--forest-700);background:var(--forest-050)}
.sim-check b{margin-left:auto;color:var(--forest-700);font-size:var(--fs-xs);white-space:nowrap}

.sim-toggle{display:flex;align-items:center;gap:.6rem;font-size:var(--fs-sm)}
.sim-terrain{margin-top:.5rem}

/* Panneau résultat */
.sim-result{position:sticky;top:96px;background:linear-gradient(160deg,var(--forest-800),var(--forest-900));color:var(--cream);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-lg)}
@media(max-width:900px){.sim-result{position:static}}
.sim-result h2{color:#fff;font-size:var(--fs-md);margin-bottom:var(--sp-2)}
.sim-total-label{color:var(--forest-100);font-size:var(--fs-sm)}
.sim-total{font-family:var(--font-serif);font-size:var(--fs-3xl);color:var(--wood-300);line-height:1.05;margin:.2rem 0}
.sim-range{color:var(--forest-100);font-size:var(--fs-sm);margin-bottom:var(--sp-4)}
.sim-m2{display:inline-block;background:rgba(255,255,255,.1);border-radius:var(--r-full);padding:.3rem .8rem;font-size:var(--fs-xs);color:#fff;margin-bottom:var(--sp-5)}

/* Ventilation (barres) */
.sim-breakdown{margin-top:var(--sp-4)}
.sim-breakdown h3{color:#fff;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--sp-3);font-family:var(--font-sans)}
.sim-bar-row{margin-bottom:.7rem}
.sim-bar-head{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--cream);margin-bottom:.25rem}
.sim-bar-head span:last-child{color:var(--wood-300);font-weight:600}
.sim-bar-track{height:8px;background:rgba(255,255,255,.12);border-radius:var(--r-full);overflow:hidden}
.sim-bar-fill{height:100%;background:linear-gradient(90deg,var(--wood-500),var(--wood-300));border-radius:var(--r-full);transition:width .5s var(--ease)}

/* Détail annexes */
.sim-lines{margin-top:var(--sp-5);border-top:1px solid rgba(255,255,255,.15);padding-top:var(--sp-4)}
.sim-line{display:flex;justify-content:space-between;font-size:var(--fs-sm);padding:.35rem 0;color:var(--cream)}
.sim-line span:last-child{font-weight:600}
.sim-line--total{border-top:1px solid rgba(255,255,255,.2);margin-top:.4rem;padding-top:.6rem;font-family:var(--font-serif);font-size:var(--fs-md);color:#fff}
.sim-line--muted{color:var(--forest-100);font-size:var(--fs-xs)}

.sim-actions{display:flex;gap:.6rem;margin-top:var(--sp-5);flex-wrap:wrap}
.sim-actions .btn{flex:1;min-width:140px}
.sim-note{font-size:var(--fs-xs);color:var(--forest-100);opacity:.85;margin-top:var(--sp-4)}

/* Impression du récap */
@media print{
  .site-header,.site-footer,.mobile-cta,.sim-panel,.sim-actions,.breadcrumb,#devis,.article-faq,.related,.sidebar,.hero__actions{display:none!important}
  body{background:#fff;color:#000}
  .sim-result{position:static;background:#fff!important;color:#000!important;box-shadow:none;border:1px solid #ccc}
  .sim-result h2,.sim-total,.sim-line--total{color:#000!important}
  .sim-total{color:#1E5631!important}
  .sim-bar-fill{background:#1E5631!important}
}

/* Jauge d'endettement (financement) */
.fin-gauge{margin-top:var(--sp-4);padding:var(--sp-4);border-radius:var(--r-md);background:rgba(255,255,255,.08)}
.fin-gauge-head{display:flex;justify-content:space-between;font-weight:600;margin-bottom:.4rem;color:#fff}
.fin-gauge.ok .fin-gauge-head span:last-child{color:var(--wood-300)}
.fin-gauge.danger .fin-gauge-head span:last-child{color:#FFB4A2}
.fin-gauge.danger .sim-bar-fill{background:linear-gradient(90deg,#C0392B,#FFB4A2)}

/* Calculateur énergétique */
.ener-row{margin-bottom:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:rgba(255,255,255,.06)}
.ener-row-head{display:flex;justify-content:space-between;gap:.5rem;font-size:var(--fs-sm);color:#fff;margin-bottom:.4rem}
.ener-badge{color:var(--wood-300);font-weight:600;white-space:nowrap}
.ener-row-foot{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--forest-100);margin-top:.3rem}
.ener-row.ok .sim-bar-fill{background:linear-gradient(90deg,#3C8C57,#8ED6A4)}
.ener-row.ko .sim-bar-fill{background:linear-gradient(90deg,#C0392B,#FFB4A2)}
.ener-verdict{margin-top:var(--sp-4);padding:var(--sp-4);border-radius:var(--r-md);background:rgba(255,255,255,.08)}
.ener-verdict-title{font-family:var(--font-serif);font-size:var(--fs-lg);color:#fff}
.ener-verdict.ok .ener-verdict-title{color:#8ED6A4}
.ener-verdict.mid .ener-verdict-title{color:var(--wood-300)}
.ener-verdict.ko .ener-verdict-title{color:#FFB4A2}
.ener-verdict p{color:var(--forest-100);font-size:var(--fs-sm);margin-top:.3rem}
