/* ═══════════════════════════════════════
   PRINT CSS · Rapport DCE Chantier
   Optimized for window.print() → PDF A4
   ═══════════════════════════════════════ */
@media print {
  @page {
    size: A4;
    margin: 14mm 12mm;
  }

  /* Force light theme even if user has dark mode active */
  html, body, html[data-theme="dark"], html[data-theme="dark"] body {
    background: #fbf8f1 !important;
    color: #1a1816 !important;
  }
  html[data-theme="dark"] .rapport-chantier { background: #fbf8f1 !important; color: #1a1816 !important; }
  html[data-theme="dark"] .rapport-chantier * { color: inherit !important; }

  /* Hide everything except the rapport */
  body > *:not(.results-section):not(.main),
  .header,
  .hazard-tape,
  .footer,
  .footer-chantier,
  .results-section .email-capture,
  .doc-content,
  .results-section ~ section,
  .cookie-banner,
  #cookieBanner,
  .modal-overlay,
  #cookieConsent,
  .progress-bar-bottom,
  .toast,
  .toast-container {
    display: none !important;
  }

  /* Main wrapper */
  .main {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
  }

  .results-section {
    display: block !important;
    background: #fbf8f1 !important;
  }

  /* Topbar: hide actions but keep brand as small page header */
  .rapport-chantier .r-topbar {
    position: static !important;
    background: #1a1816 !important;
    color: #ebe6dc !important;
    padding: 10px 16px !important;
    page-break-after: avoid;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-topbar .r-actions { display: none !important; }
  .rapport-chantier .r-topbar .r-brand { gap: 10px !important; }
  .rapport-chantier .r-topbar .r-brand-name { font-size: 11px !important; }
  .rapport-chantier .r-topbar .r-ref { font-size: 10px !important; }

  /* Page wrapper */
  .rapport-chantier {
    background: #fbf8f1 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .rapport-chantier .r-page {
    padding: 12mm 8mm 8mm !important;
  }

  /* Project header */
  .rapport-chantier .r-ph {
    padding: 8px 0 12px !important;
    page-break-after: avoid;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-ph h1 {
    font-size: 28pt !important;
    line-height: 1 !important;
    margin: 6px 0 8px !important;
  }
  .rapport-chantier .r-ph .r-meta {
    font-size: 8pt !important;
  }

  /* Verdict strip — keep colored! */
  .rapport-chantier .r-verdict {
    background: #1a1816 !important;
    color: #ebe6dc !important;
    margin-top: 10px !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-verdict::after {
    background: repeating-linear-gradient(135deg, #ee5a24 0 10px, #1a1816 10px 20px) !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-vc {
    padding: 14px 18px !important;
  }
  .rapport-chantier .r-vval {
    font-size: 32pt !important;
  }
  .rapport-chantier .r-vsub {
    font-size: 8pt !important;
  }

  /* Pills — keep colored */
  .rapport-chantier .r-pill {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    font-size: 7pt !important;
    padding: 2px 6px !important;
  }

  /* Sections — force page-break before key sections (alerts, lots, memo, gng) */
  .rapport-chantier section.r-s {
    margin-top: 18px !important;
    page-break-inside: avoid;
  }
  /* Page-break BEFORE these big sections so they don't get split */
  .rapport-chantier section.r-s:nth-of-type(2),  /* alerts */
  .rapport-chantier section.r-s:nth-of-type(5),  /* lots */
  .rapport-chantier section.r-s:nth-of-type(8),  /* memo */
  .rapport-chantier section.r-s:nth-of-type(9) { /* gng */
    page-break-before: always;
  }

  .rapport-chantier .r-sh {
    padding: 8px 0 !important;
    page-break-after: avoid;
  }
  .rapport-chantier .r-stitle {
    font-size: 14pt !important;
  }
  .rapport-chantier .r-snum {
    font-size: 9pt !important;
  }
  .rapport-chantier .r-scount {
    font-size: 8pt !important;
  }

  /* Summary */
  .rapport-chantier .r-summary {
    font-size: 10pt !important;
    line-height: 1.4 !important;
    padding: 14px 18px !important;
    background: #ebe6dc !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    page-break-inside: avoid;
  }

  /* Alerts */
  .rapport-chantier .r-alerts {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-al {
    padding: 8px 12px !important;
    page-break-inside: avoid;
    background: #fbf8f1 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-al .r-lab {
    font-size: 8pt !important;
  }
  .rapport-chantier .r-al .r-body {
    font-size: 9.5pt !important;
    line-height: 1.35 !important;
  }
  .rapport-chantier .r-al .r-aref {
    font-size: 8pt !important;
  }

  /* Project info grid */
  .rapport-chantier .r-grid-info {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-gi {
    padding: 8px 10px !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-gi .r-k { font-size: 7.5pt !important; }
  .rapport-chantier .r-gi .r-v { font-size: 10pt !important; margin-top: 3px !important; }

  /* Conditions */
  .rapport-chantier .r-cond {
    padding: 14px !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-cond .r-row {
    padding: 6px 10px !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-cond .r-row b { font-size: 8pt !important; }

  /* Lots table */
  .rapport-chantier table.r-lots {
    page-break-inside: auto;
  }
  .rapport-chantier table.r-lots tr {
    page-break-inside: avoid;
  }
  .rapport-chantier table.r-lots th {
    background: #1a1816 !important;
    color: #ebe6dc !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    padding: 6px 10px !important;
    font-size: 8pt !important;
  }
  .rapport-chantier table.r-lots td {
    padding: 8px 10px !important;
    font-size: 9pt !important;
  }
  .rapport-chantier table.r-lots tbody tr:nth-child(even) {
    background: #ebe6dc !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Critères + Calendrier */
  .rapport-chantier .r-two-col {
    gap: 12px !important;
  }
  .rapport-chantier .r-crit-bar .r-bar {
    background: #ebe6dc !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-crit-bar .r-bar > span {
    background: #ee5a24 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-tl {
    padding: 6px 0 !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-tl.r-tcrit {
    background: rgba(238,90,36,.08) !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Pieces */
  .rapport-chantier .r-pieces {
    gap: 10px !important;
  }
  .rapport-chantier .r-pieces li {
    font-size: 9pt !important;
    padding: 5px 8px !important;
    page-break-inside: avoid;
  }

  /* Mémo */
  .rapport-chantier .r-memo .r-step {
    padding: 10px 12px !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-memo .r-mnum { font-size: 18pt !important; }
  .rapport-chantier .r-memo .r-step h4 { font-size: 11pt !important; }
  .rapport-chantier .r-memo .r-step .r-mbody { font-size: 9pt !important; line-height: 1.4 !important; }
  .rapport-chantier .r-memo .r-step .r-tip { font-size: 8.5pt !important; }

  /* Go/No-Go */
  .rapport-chantier .r-gng {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .rapport-chantier .r-gng .r-col {
    padding: 12px 14px !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-gng li { font-size: 9pt !important; }

  /* CTA bar — lower visual prominence on print */
  .rapport-chantier .r-cta-bar {
    margin-top: 18px !important;
    padding: 12px 16px !important;
    background: #ee5a24 !important;
    color: #1a1816 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    page-break-inside: avoid;
  }
  .rapport-chantier .r-cta-bar a { display: none !important; }
  .rapport-chantier .r-cta-bar .r-head { font-size: 12pt !important; }
  .rapport-chantier .r-cta-bar .r-sub { font-size: 8pt !important; }

  /* Hazard divider */
  .rapport-chantier .r-hazard {
    height: 6px !important;
    margin: 18px 0 12px !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Footer */
  .rapport-chantier .r-foot {
    font-size: 7.5pt !important;
    padding-top: 8px !important;
  }

  /* Force orange to print */
  .rapport-chantier .r-num,
  .rapport-chantier .r-orange,
  .rapport-chantier .r-snum,
  .rapport-chantier .r-pill.r-orange,
  .rapport-chantier .r-vval.r-go,
  .rapport-chantier .r-pct {
    color: #ee5a24 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}
