/* print.css */
@page {
  margin: 14mm;
}

@media print {
  body {
    background: white !important;
    color: black !important;
    font-size: 12pt;
  }

  body::before {
    display: none !important;
  }

  .site-header,
  .site-footer,
  .hero,
  .ad-slot,
  .lang-toggle,
  .breadcrumb,
  .stats-bar,
  .service-sidebar,
  .madam-tip,
  .btn,
  #faq,
  .eligibility-checker {
    display: none !important;
  }

  .service-layout {
    display: block !important;
  }

  .print-only-footer {
    display: block !important;
    margin-top: 4rem;
    padding-top: 1rem;
    border-top: 2px solid black;
    text-align: center;
    font-size: 10pt;
  }

  .document-checklist {
    list-style: none;
    padding: 0;
  }

  .document-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
    page-break-inside: avoid;
  }

  .document-checklist li::before {
    content: "☐";
    font-size: 18pt;
    line-height: 1;
  }

  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 90%;
    color: #333;
  }

  body.print-mode-checklist > *:not(.print-checklist-sheet) {
    display: none !important;
  }

  body.print-mode-checklist .print-checklist-sheet {
    display: block !important;
  }

  body.print-mode-checklist .print-checklist-card {
    width: min(100%, 180mm);
    margin: 0 auto;
    padding: 14mm 12mm 10mm;
    border: 1.5pt solid #111;
    background: #fff;
  }

  body.print-mode-checklist .print-checklist-title {
    margin: 0 0 0.75rem;
    text-align: center;
    font-size: 18pt;
    font-weight: 700;
  }

  body.print-mode-checklist .print-checklist-heading {
    margin: 0 0 1.5rem;
    text-align: center;
    font-size: 12pt;
    font-weight: 600;
  }

  body.print-mode-checklist .print-checklist-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  body.print-mode-checklist .print-checklist-list li {
    display: grid;
    grid-template-columns: 16pt 1fr;
    gap: 0.75rem;
    align-items: start;
    padding: 0.4rem 0;
    border-bottom: 1px dotted #bbb;
    page-break-inside: avoid;
  }

  body.print-mode-checklist .print-checklist-list li::before {
    content: none;
  }

  body.print-mode-checklist .print-checklist-box {
    width: 12pt;
    height: 12pt;
    border: 1.4pt solid #111;
    display: inline-block;
    margin-top: 2pt;
  }

  body.print-mode-checklist .print-checklist-text {
    font-size: 11.5pt;
    line-height: 1.5;
  }

  body.print-mode-checklist .print-checklist-meta {
    margin-top: 1.75rem;
    padding-top: 0.9rem;
    border-top: 1.5pt solid #111;
    text-align: center;
    font-size: 10.5pt;
  }

  body.print-mode-checklist .print-checklist-meta p {
    margin: 0.35rem 0;
  }
}

@media screen {
  .print-only-footer,
  .print-checklist-sheet {
    display: none !important;
  }
}
