/* KEEP / utility print one-pager */
@media print {
  @page { margin: 12mm; }
  html, body {
    background: #fff !important;
    color: #111 !important;
    font-size: 11pt;
    line-height: 1.35;
  }
  body { padding: 0 !important; margin: 0 !important; }
  .wrap { max-width: none !important; padding: 0 !important; margin: 0 !important; }
  .site-bar, nav.top, .theme-controls, .theme-swatches, .bg-swatches,
  .sister-top, .magic-top, .magic-dock, .toast,
  .keep-sticky-impact, .keep-share-presets, .keep-compare-cta,
  [data-share-page], [data-print-page], .copy-nums,
  .cur-panel, .calc-currency-bar, aside.keep-next, .more-tools,
  #more-tools, .presets, .btn, button.preset, .extra-dir,
  footer, .keep-next-ctas, .sources-aff {
    display: none !important;
  }
  a { color: #111 !important; text-decoration: none !important; }
  .card, .hero-keep, .keep-stage, details, .tool-card {
    break-inside: avoid;
    border: 1px solid #ccc !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  .keep-num, .big, .kc-val, .tool-big {
    color: #000 !important;
    font-size: 22pt !important;
  }
  .keep-compare {
    border: 1px solid #999 !important;
    background: #f7f7f7 !important;
    box-shadow: none !important;
  }
  .keep-compare-cta, .keep-compare-ftc { display: none !important; }
  h1 { font-size: 16pt !important; margin: 0 0 8pt !important; }
  .lede, .keep-cap, .sub, .hint { color: #333 !important; }
  input, select {
    border: 1px solid #bbb !important;
    background: #fff !important;
    color: #111 !important;
  }
  /* One-pager: hide long FAQ after first paint card + metrics */
  article details:nth-of-type(n+4),
  .faq details:nth-of-type(n+4) {
    display: none !important;
  }
  .keep-print-banner {
    display: block !important;
    font-size: 9pt;
    color: #444;
    margin: 0 0 8pt;
    border-bottom: 1px solid #ddd;
    padding-bottom: 6pt;
  }
}
.keep-print-banner { display: none; }
