/* PDF / Print — match letterhead preview + html2pdf export */
@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  .editor,
  .toast,
  .preview-label,
  .print-tip,
  .no-print,
  .view-toolbar,
  .db-status,
  .search-shell,
  .load-error {
    display: none !important;
  }

  .app {
    display: block !important;
  }

  .preview-wrap,
  .view-preview-wrap {
    padding: 0 !important;
    margin: 0 !important;
  }

  .invoice.pro-invoice {
    width: 210mm !important;
    max-width: 210mm !important;
    min-width: 210mm !important;
    margin: 0 auto !important;
    border: none !important;
    box-shadow: none !important;
    font-size: 11px !important;
  }

  .inv-accent-bar {
    background: linear-gradient(90deg, #e31e24 0%, #f7941d 55%, #e31e24 100%) !important;
  }

  .inv-letterhead {
    margin: 14px 22px 0 !important;
    border: 1px solid #cfd4dc !important;
    border-radius: 14px !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .lh-accent-curve {
    background: linear-gradient(160deg, #f7941d 0%, #e31e24 100%) !important;
  }

  .lh-logo {
    background: #fff !important;
  }

  .lh-ar,
  .lh-tagline {
    color: #e31e24 !important;
  }

  .lh-en {
    color: #1a2744 !important;
  }

  .lh-contact-pill {
    background: linear-gradient(135deg, #1a1a1a 0%, #5c1218 55%, #b9151a 100%) !important;
    color: #fff !important;
  }

  .inv-doc-strip {
    margin: 12px 22px 0 !important;
    border-bottom: 2px solid #e31e24 !important;
  }

  .inv-info-block {
    margin: 14px 22px 0 !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #e31e24 !important;
    font-family: Georgia, "Times New Roman", Times, serif !important;
  }

  .inv-ar-label {
    color: #e31e24 !important;
  }

  .inv-title-classic {
    color: #e31e24 !important;
  }

  .inv-customer-box {
    border-color: #e31e24 !important;
  }

  .inv-no-box {
    background: #eceef2 !important;
    border-color: #b8bec8 !important;
  }

  .inv-doc-strip .inv-title-pro {
    color: #e31e24 !important;
  }

  .inv-logo-wrap {
    background: #ffffff !important;
    border: 1px solid #e2e5eb !important;
  }

  .inv-hero-inner {
    display: flex !important;
    padding: 22px 26px 18px !important;
  }

  .inv-title-pro {
    color: #e31e24 !important;
  }

  .inv-hero-rule {
    background: linear-gradient(90deg, #e31e24 0%, #f7941d 50%, transparent 100%) !important;
  }

  .inv-meta-grid {
    display: grid !important;
    grid-template-columns: 1.4fr 0.9fr 0.9fr 0.9fr !important;
    gap: 10px !important;
    margin: 16px 26px 0 !important;
  }

  .meta-card::before {
    background: linear-gradient(90deg, #e31e24 0%, #f7941d 100%) !important;
  }

  .items-table thead {
    background: #e31e24 !important;
    color: #fff !important;
  }

  .balance-row td {
    background: #e31e24 !important;
    color: #fff !important;
  }

  .balance-words-box {
    background: #fff8f0 !important;
    border: 1px solid #f7941d !important;
  }

  .qr-box {
    border: 2px solid #e31e24 !important;
  }

  .inv-footer {
    background: #f3f4f6 !important;
    border-top: 3px solid #e31e24 !important;
  }

  .invoice.density-tight .inv-hero-inner {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
  }

  .invoice.density-tight .lh-inner {
    padding: 10px 12px 10px 20px !important;
  }

  .invoice.density-tight .items-table td {
    padding: 5px 8px !important;
    font-size: 0.72rem !important;
  }
}

.invoice.pro-invoice.pdf-export {
  box-shadow: none !important;
  margin: 0 !important;
}

body.pdf-export-active {
  background: #fff !important;
}

body.print-invoice .editor,
body.print-invoice .preview-label,
body.print-invoice .no-print {
  display: none !important;
}

body.print-invoice .app {
  display: block !important;
}

body.print-invoice .preview-wrap {
  padding: 0 !important;
}
