/* Calculateurs et modèles imprimables (guide/) */
.calc { border: 1px solid var(--border); border-radius: var(--r-lg); background: var(--bg-card); padding: 24px; margin: 22px 0 30px; }
.calc h3 { margin: 0 0 4px; font-size: 20px; }
.calc .calc-hint { margin: 0 0 18px; font-size: 15px; color: var(--text-secondary); }
.calc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; }
.calc label { display: block; font-size: 14px; font-weight: 700; color: var(--text-primary); }
.calc input { display: block; width: 100%; margin-top: 6px; padding: 12px; font: inherit; font-size: 16px; color: var(--text-primary); background: var(--bg-primary); border: 1px solid var(--border); border-radius: var(--r-md); }
.calc input:focus-visible { outline: 3px solid var(--lime); outline-offset: 1px; }
.calc-result { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-top: 20px; }
.calc-result div { padding: 14px; border-radius: var(--r-md); background: var(--lime-wash); }
.calc-result dt { font-size: 13px; color: var(--text-secondary); margin: 0 0 4px; }
.calc-result dd { margin: 0; font-size: 22px; font-weight: 800; color: var(--text-primary); }
.calc-note { font-size: 14px; color: var(--text-secondary); margin: 14px 0 0; }
.tpl-actions { margin: 18px 0; }
.tpl-sheet input { width: 100%; min-width: 70px; padding: 8px; font: inherit; font-size: 14px; color: var(--text-primary); background: transparent; border: 0; border-bottom: 1px solid var(--border); }
.src-date { font-size: 14px; color: var(--text-secondary); }
@media print {
  header[role=banner], .offre-bandeau, footer, .article-cta, .author-box, .faq, .related-pages, .tpl-actions, .back-home, .skip-link { display: none !important; }
  body { background: #fff; color: #000; }
  .tpl-sheet table { min-width: 0; font-size: 12px; }
  .tpl-sheet th, .tpl-sheet td { border: 1px solid #000; color: #000; }
  .tpl-sheet input { border: 0; }
}
