/* ============================================
   PRINT STYLES
   ============================================ */

@media print {
  /* Hide interactive / nav elements */
  .sidebar,
  .mobile-header,
  .sidebar-overlay,
  .search-overlay,
  .menu-toggle,
  .search-trigger,
  .alert-banner,
  .section-controls,
  .filter-chips,
  .hero-buttons,
  .btn,
  .nav-cards,
  .tab-list,
  .checklist-item input[type="checkbox"],
  .no-print {
    display: none !important;
  }

  /* Layout reset */
  .layout {
    display: block;
  }

  body {
    font-size: 11pt;
    line-height: 1.5;
    color: #000;
    background: white;
  }

  .main-content {
    max-width: 100%;
    padding: 0;
    margin: 0;
  }

  /* Typography for print */
  h1, h2, h3, h4, h5, h6 {
    color: #000;
    page-break-after: avoid;
  }

  h1 {
    font-size: 24pt;
    page-break-before: always;
  }

  h1:first-child {
    page-break-before: avoid;
  }

  h2 { font-size: 18pt; }
  h3 { font-size: 14pt; }
  h4 { font-size: 12pt; }

  p, li {
    orphans: 3;
    widows: 3;
  }

  /* Show all accordion content */
  .accordion-body {
    max-height: none !important;
    overflow: visible !important;
  }

  /* Show all tab panels */
  .tab-panel {
    display: block !important;
  }

  /* Table styling for print */
  table {
    font-size: 9pt;
  }

  th {
    background: #eee !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  tr {
    page-break-inside: avoid;
  }

  /* Star ratings as text */
  .stars::after {
    content: attr(data-rating) '/5';
  }

  /* Links show URLs */
  .content a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.8em;
    color: #666;
    word-break: break-all;
  }

  /* Cards lose shadows */
  .card,
  .accordion,
  .deadline-card,
  .callout {
    box-shadow: none;
    border: 1px solid #ddd;
  }

  /* Hero prints as text */
  .hero {
    background: none !important;
    color: #000 !important;
    padding: 0;
    border-bottom: 2px solid #000;
    margin-bottom: 1cm;
  }

  .hero-title,
  .hero-subtitle {
    color: #000 !important;
  }

  /* Comparison columns stack */
  .comparison-cols {
    display: block;
  }

  .comparison-col {
    margin-bottom: 1cm;
    border: 1px solid #ddd;
  }

  /* Checklist items show status */
  .checklist-item {
    padding-left: 2em;
    position: relative;
  }

  .checklist-item::before {
    content: '[ ]';
    position: absolute;
    left: 0;
    font-family: monospace;
  }

  .checklist-item.checked::before {
    content: '[x]';
  }

  /* Progress bars hidden */
  .progress-bar {
    display: none;
  }

  /* Footer */
  .page-footer {
    border-top: 1px solid #000;
    margin-top: 2cm;
    padding-top: 0.5cm;
  }

  @page {
    margin: 2cm;
  }
}
