@media print {
  /* Force dark theme in PDF — override browser white-background default */
  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }

  body {
    background: #131810 !important;
    color: #dcd7c0 !important;
    font-size: 10pt;
  }

  #topbar, #sidebar, #bottom-nav, .btn, .tabs, .calc-subnav,
  .settings-tab-bar, .guide-cat-bar, .guide-search-wrap,
  .guide-print-actions, .guide-pdf-hint, #ls-pdf-hint,
  .sp-clear-row, .profile-chip { display: none !important; }

  #main-content { margin: 0; padding: 8px; }

  .section { display: block !important; }
  .section:not(.print-target) { display: none !important; }

  /* Cards */
  .card, .results-panel, .guide-card2, .scenario-card, .shop-category {
    background: #20291a !important;
    border: 1px solid #2e3c20 !important;
    break-inside: avoid;
    margin-bottom: 10pt;
  }

  /* Guide cards — force open */
  .guide-card2-body { display: block !important; max-height: none !important; overflow: visible !important; }
  .guide-sec-body   { display: block !important; max-height: none !important; overflow: visible !important; }
  .guide-card2-chevron { display: none !important; }
  .guide-sec-btn i  { display: none !important; }

  /* Typography */
  h1, h2, h3 { color: #c9a84c !important; }
  .shop-category-title { color: #c9a84c !important; }
  .shop-item-qty { color: #c9a84c !important; }
  .text-secondary { color: #8a8368 !important; }
  a { color: #c9a84c !important; }

  /* Alerts */
  .alert { background: #20291a !important; border-color: #2e3c20 !important; }

  /* Checklist */
  .checklist-item.checked .checklist-label { opacity: 0.55; }

  /* Tables */
  .data-table th, .data-table td { border: 1px solid #2e3c20 !important; }

  /* Priority badges visible in print */
  .ls-priority-badge, .ls-scenario-badge { border: 1px solid #c8852a !important; color: #c8852a !important; }
  .shop-category.ls-priority { border-left: 3px solid #c8852a !important; padding-left: 8pt; }
  .shop-category.ls-section-extra { border-left: 3px solid #c9a84c !important; padding-left: 8pt; }
}
