@media print {
  @page {
    size: A4;
    margin: 12mm 15mm;
  }

  @page landscape {
    size: A4 landscape;
  }

  body {
    background: white !important;
    color: black !important;
    font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .no-print,
  header,
  footer,
  nav,
  .nav,
  .header,
  .footer,
  .ad-container,
  .ad-slot,
  .toolbar,
  .controls,
  .style-controls,
  .print-btn-wrap,
  .breadcrumb,
  .lang-switcher,
  .mobile-menu,
  .sidebar,
  .back-btn,
  #header,
  #footer,
  .site-nav,
  .site-footer,
  .advertisement,
  .no-print-item {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .main-content {
    padding-top: 0 !important;
    margin: 0 !important;
  }

  .print-area {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: none !important;
    page-break-inside: avoid;
  }

  .print-area.landscape {
    transform: rotate(90deg);
    transform-origin: center center;
    width: 277mm !important;
  }

  .table-wrapper {
    overflow: visible !important;
    max-width: 100% !important;
  }

  table {
    border-collapse: collapse !important;
    width: 100% !important;
    page-break-inside: auto;
  }

  table td, table th {
    border: 1px solid #333 !important;
    padding: 6px 10px !important;
    text-align: center !important;
    page-break-inside: avoid;
    font-size: inherit !important;
    background: white !important;
    color: black !important;
  }

  table th {
    background: #E8F0EC !important;
    font-weight: 700 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  table tr:nth-child(even) td {
    background: #F9F9F9 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .print-title {
    display: block !important;
    text-align: center !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    margin-bottom: 16px !important;
    color: black !important;
  }

  .print-subtitle {
    display: block !important;
    text-align: center !important;
    font-size: 0.9rem !important;
    color: #666 !important;
    margin-bottom: 20px !important;
  }

  .watermark-layer {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 9999 !important;
  }

  .blank-mode .answer-cell {
    color: transparent !important;
  }
}