/* ===== 打印样式：仅输出题单/图纸，隐藏所有导航/控制面板 ===== */
@media print {
  /* 隐藏站点级元素 */
  .site-header,
  .site-footer,
  .tbs-no-print,
  .breadcrumb,
  .tbs-subnav,
  .tbs-toolbar,
  .cross-link,
  .related {
    display: none !important;
  }

  /* 取消双栏，让打印区独占页面 */
  .tbs-wrap {
    display: block !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* 清零容器边距，内容从纸张左上角起排 */
  main#body,
  main#body > .container,
  main#body .container,
  main#body .container.py-3 {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
    width: 100% !important;
    border: none !important;
  }

  /* 打印区：纯白底，统一安全页边距 */
  .tbs-print-area {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 10mm 12mm !important;
    box-sizing: border-box;
    border: none !important;
    background: #fff !important;
    box-shadow: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  /* 整页 A4 图纸（SVG 按 210×297mm 排版）：保持出血，不叠加边距 */
  .tbs-print-area.tbs-print-bleed { padding: 0 !important; }

  /* 题单自带内边距，与打印区边距二选一 */
  .tbs-print-area .tbs-sheet { padding: 0 !important; }

  /* 整页 A4 图纸等比铺满 */
  .tbs-print-area .tbs-svg-box svg {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    display: block !important;
  }
  .tbs-print-area svg {
    max-width: 100% !important;
    display: block !important;
    height: auto !important;
    margin-inline: auto;
  }

  /* 水印：仅右下角一次 */
  .tbs-watermark {
    display: block !important;
    position: fixed;
    right: 6mm;
    bottom: 5mm;
    font-size: 11px;
    color: #9aa0a6;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    z-index: 9999;
    line-height: 1;
  }

  @page { size: A4; margin: 0; }
  html, body {
    background: #fff !important;
    width: 100% !important;
    overflow: visible !important;
    margin: 0 !important;
  }

  /* 整页 A4 图纸：锁定恰好一页高，杜绝第二张空白页 */
  .tbs-svg-box {
    display: block !important;
    height: 100vh !important;
    overflow: hidden !important;
    line-height: 0;
    page-break-after: avoid;
  }
  .tbs-svg-box svg {
    width: 100% !important;
    height: 100% !important;
    max-height: calc(100vh - 1px) !important;
    display: block !important;
  }

  /* 非整页图纸恢复自然高度 */
  .tbs-svg-box.tbs-print-natural {
    height: auto !important;
    overflow: visible !important;
  }
  .tbs-svg-box.tbs-print-natural svg {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: none !important;
  }

  /* 多页图纸：每页一张 A4，逐页分页 */
  .tbs-svg-box.tbs-multi {
    height: auto !important;
    overflow: visible !important;
    page-break-after: auto;
    break-after: auto;
  }
  .tbs-svg-box.tbs-multi svg {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    display: block !important;
    page-break-after: always;
    break-after: page;
    page-break-inside: avoid;
  }
  .tbs-svg-box.tbs-multi svg:last-child {
    page-break-after: auto;
    break-after: auto;
  }

  /* 长表格跨页不拆行 */
  .tbs-table tr { break-inside: avoid; page-break-inside: avoid; }

  /* 隐藏答案开关状态下的答案 */
  .tbs-print-area:not(.tbs-show-ans) .tbs-ans,
  .tbs-print-area:not(.tbs-show-ans) .tbs-fill-blank,
  .tbs-print-area.tbs-show-ans.tbs-ans-separate .tbs-ans,
  .tbs-print-area.tbs-show-ans.tbs-ans-separate .tbs-fill-blank {
    color: transparent !important;
    border-bottom: 1px solid #64748b;
  }
  .tbs-print-area:not(.tbs-show-ans) .tbs-ans-block,
  .tbs-print-area.tbs-show-ans.tbs-ans-separate .tbs-ans-block {
    visibility: hidden;
  }
}
