/* FUTKAR — Dedicated Print Stylesheet (A4 optimized) */
@media print {
  @page {
    size: A4 portrait;
    margin: 14mm 12mm 16mm 12mm;
  }

  html, body {
    background: #fff !important;
    color: #111 !important;
    font-size: 10pt !important;
    line-height: 1.45 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* Hide all non-checklist UI */
  #site-header,
  #mobile-nav,
  footer,
  #mobile-cta-bar,
  #celebration-modal,
  #download-toast,
  #hero,
  #checklist-sidebar,
  .no-print,
  #dark-mode-toggle,
  #mobile-nav-toggle,
  #sticky-progress {
    display: none !important;
  }

  /* Show print-only blocks */
  .print-only {
    display: block !important;
  }

  /* Print header */
  #print-header {
    margin-bottom: 6mm;
    padding-bottom: 4mm;
    border-bottom: 2px solid #F27A21;
  }
  #print-header h1 {
    font-size: 18pt !important;
    font-weight: 700 !important;
    color: #111 !important;
    margin: 0 0 2mm !important;
  }
  #print-header .print-subtitle {
    font-size: 11pt !important;
    color: #444 !important;
    margin: 0 0 2mm !important;
  }
  #print-header .print-url {
    font-size: 9pt !important;
    color: #F27A21 !important;
    margin: 0 !important;
  }

  /* Checklist section */
  #checklist {
    padding: 0 !important;
    background: #fff !important;
  }
  #checklist > div {
    max-width: 100% !important;
    padding: 0 !important;
  }
  #checklist .text-center.mb-12 {
    display: none !important;
  }
  #checklist-main {
    width: 100% !important;
    max-width: 100% !important;
  }

  .checklist-section {
    break-inside: auto;
    page-break-inside: auto;
    margin-bottom: 5mm !important;
    padding-top: 3mm;
  }
  .checklist-section + .checklist-section {
    break-before: page;
    page-break-before: always;
    padding-top: 0;
  }

  .checklist-section h2 {
    font-size: 12pt !important;
    color: #111 !important;
    margin: 0 0 1mm !important;
  }
  .checklist-section > div > div:first-child p {
    font-size: 9pt !important;
    color: #555 !important;
    margin: 0 0 2mm !important;
  }

  /* Hide section progress UI in print */
  .section-pct,
  .section-count,
  .section-bar,
  .checklist-section .h-1\.5,
  .checklist-section .flex-wrap.items-center.gap-3.mb-2,
  .checklist-section .text-right {
    display: none !important;
  }

  .check-item {
    break-inside: avoid;
    page-break-inside: avoid;
    border: 1px solid #ddd !important;
    background: #fff !important;
    padding: 2mm 3mm !important;
    margin-bottom: 1.5mm !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .check-item.checked {
    background: #f0fdf4 !important;
  }
  .check-item.checked .check-label {
    text-decoration: line-through;
    color: #666 !important;
  }

  .check-box {
    width: 12pt !important;
    height: 12pt !important;
    border: 1.5px solid #333 !important;
    border-radius: 2px !important;
  }
  .check-box:checked {
    background: #10b981 !important;
    border-color: #10b981 !important;
  }

  .check-label {
    font-size: 9.5pt !important;
    color: #111 !important;
  }

  .badge-critical,
  .badge-recommended,
  .badge-optional {
    font-size: 7pt !important;
    padding: 0.5mm 2mm !important;
    border: 1px solid #ccc !important;
    background: #f8f8f8 !important;
    color: #333 !important;
  }

  .tip-toggle,
  .no-print {
    display: none !important;
  }
  .tip-panel {
    max-height: none !important;
    overflow: visible !important;
    background: #f5f5f5 !important;
    border-left: 2px solid #F27A21;
    margin-top: 1mm !important;
    padding: 1mm 2mm !important;
    font-size: 8.5pt !important;
    color: #444 !important;
  }
  .tip-panel:not(.open) {
    display: none !important;
  }
  /* Show tips that were expanded, or all tips in print mode */
  body.is-printing .tip-panel {
    display: block !important;
    max-height: none !important;
  }

  /* Print footer */
  #print-footer {
    margin-top: 8mm;
    padding-top: 3mm;
    border-top: 1px solid #ccc;
    font-size: 8pt !important;
    color: #666 !important;
    text-align: center;
  }
  #print-footer strong {
    color: #111 !important;
  }

  /* Pro tips print block */
  #print-pro-tips {
    margin-top: 6mm;
    padding: 3mm;
    border: 1px solid #ddd;
    break-inside: avoid;
  }
  #print-pro-tips h3 {
    font-size: 11pt !important;
    margin: 0 0 2mm !important;
  }
  #print-pro-tips li {
    font-size: 9pt !important;
    margin-bottom: 1mm;
  }

  /* Reset dark mode for print */
  .dark,
  .dark * {
    background: transparent !important;
    color: #111 !important;
    border-color: #ddd !important;
  }
}
