/**
 * Shared print styles — proposals, contracts, invoices, and document pages.
 */
@media print {
  @page {
    size: A4 portrait;
    margin: 20mm;
  }

  :root {
    color-scheme: light;
  }

  html,
  body,
  body.funnel-site {
    background: #fff !important;
    color: #000 !important;
    font-size: 11pt;
    line-height: 1.55;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  * {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  .skip-link,
  nav,
  .funnel-topbar,
  .funnel-footer,
  .funnel-progress,
  footer:not(.invoice-print-footer):not(.contract-footer),
  button,
  .btn,
  .rev1714-cc-banner,
  .cookie-consent,
  .no-print,
  .proposal-topbar,
  .proposal-footer,
  .proposal-banner,
  .proposal-actions,
  .proposal-confirm,
  .proposal-feedback,
  .proposal-cta,
  .proposal-cta-secondary,
  .proposal-approved,
  .contract-topbar,
  .contract-sign-panel,
  .contract-sign-form,
  .contract-status-badge,
  .invoice-topbar,
  .invoice-actions {
    display: none !important;
  }

  #approvalSection {
    display: none !important;
  }

  .proposal-loading,
  .proposal-error,
  .contract-loading,
  .contract-error,
  .invoice-loading,
  .invoice-error {
    display: none !important;
  }

  .proposal-document,
  .contract-wrap,
  .invoice-document {
    display: block !important;
  }

  a {
    color: #000 !important;
    text-decoration: underline;
  }

  a[href^="http"]::after,
  a[href^="/"]::after,
  a[href^="https"]::after {
    content: " (" attr(href) ")";
    font-size: 0.8em;
    font-weight: normal;
    color: #333 !important;
  }

  a[href^="#"]::after,
  a[href^="mailto:"]::after,
  a[href^="tel:"]::after,
  a[href^="javascript:"]::after {
    content: none;
  }

  h1,
  h2,
  h3,
  .funnel-headline {
    page-break-after: avoid;
    break-after: avoid;
    color: #000 !important;
  }

  p,
  li,
  dt,
  dd,
  span,
  strong {
    color: #000 !important;
  }

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

  .funnel-kicker,
  .funnel-muted,
  .proposal-cover__company,
  .contract-kicker,
  .invoice-meta dt,
  .invoice-signature__label,
  .invoice-signature__hint {
    color: #333 !important;
  }

  .contract-signatures,
  .invoice-signature {
    display: grid !important;
    page-break-inside: avoid;
    break-inside: avoid;
    margin-top: 1.5cm;
  }

  .contract-signatures__line,
  .invoice-signature__line {
    display: block !important;
    border-bottom: 1px solid #000 !important;
    min-height: 2.25em;
    margin-top: 0.35cm;
    padding-top: 0.15cm;
    width: 100%;
  }
}
