@media print {
  *, *::before, *::after { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
  body { margin: 0; padding: 0; font-family: "Times New Roman", Times, serif; font-size: 12pt; line-height: 1.5; }
  .site-nav, .theme-toggle, .to-top, .back-link, .breadcrumbs, #showMoreTools, .filter-bar, button { display: none !important; }
  header { background: none !important; color: #000 !important; padding: 0 0 1rem 0; border-bottom: 2px solid #000; margin-bottom: 1.5rem; }
  header h1 { font-size: 18pt; font-weight: bold; margin: 0 0 .25rem 0; }
  header p { font-size: 11pt; color: #555 !important; margin: 0; }
  .container { max-width: 100%; margin: 0; padding: 0 1cm; }
  section { padding: 0; margin: 0 0 1.5rem 0; border: none; border-bottom: 1px solid #ccc; page-break-inside: avoid; }
  h2 { font-size: 14pt; border-bottom: 1px solid #000; padding-bottom: .3rem; margin: 0 0 .5rem 0; }
  h3 { font-size: 12pt; font-weight: bold; }
  table { width: 100%; border-collapse: collapse; margin: .5rem 0; font-size: 10pt; }
  th, td { border: 1px solid #000; padding: .3rem .5rem; text-align: center; }
  th { background: #eee !important; color: #000 !important; font-weight: bold; }
  .tc-res-card { background: #f5f5f5 !important; border: 1px solid #ccc; border-radius: 0; padding: .5rem; text-align: center; }
  .tc-res-card .tc-res-value { font-size: 16pt; color: #000 !important; }
  .tc-results { gap: .5rem; }
  .tc-field input, .tc-field select { border: 1px solid #999; padding: .2rem .4rem; font-size: 10pt; }
  .dp-formula { background: #f5f5f5 !important; border: 1px solid #ccc; padding: .5rem; font-family: "Courier New", monospace; font-size: 10pt; }
  footer { display: none !important; }
  a { color: #000 !important; text-decoration: underline !important; }
  a[href]::after { content: " (" attr(href) ")"; font-size: 8pt; color: #666 !important; }
  .tc-tabs, .nav-drop { display: none !important; }
  .tc-panel { display: block !important; border: none !important; padding: 0 !important; }
  .version-card { border: 1px solid #ccc !important; border-radius: 0 !important; padding: .5rem; margin-bottom: .5rem; }
  .version-grid { display: block !important; }
  .extra-card { display: block !important; }
  .sig-note { font-size: 9pt; color: #555 !important; }
  @page { margin: 1.5cm; size: A4 portrait; }
  .print-header { display: block !important; text-align: right; font-size: 9pt; color: #666; margin-bottom: 1rem; }
  .print-header span { display: inline-block; border-bottom: 1px solid #999; padding: 0 .5rem; }
}
.print-header { display: none; }
