/* Build 514.12 — estabilização final dos relatórios impressos */
@media print {
  body.d7hs-printing #d7hs-print-root {
    box-sizing: border-box !important;
    width: 196mm !important;
    max-width: 196mm !important;
    overflow: visible !important;
  }

  body.d7hs-printing #d7hs-print-root .report-sheet {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.d7hs-printing #d7hs-print-root > #report-content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  /* O logotipo do cabeçalho nunca pode herdar a largura de uma fotografia. */
  body.d7hs-printing #d7hs-print-root .report-header .mark,
  body.d7hs-printing #d7hs-print-root .report-logo-standard {
    box-sizing: border-box !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    flex: 0 0 40px !important;
    overflow: hidden !important;
  }

  body.d7hs-printing #d7hs-print-root .report-header .mark > img,
  body.d7hs-printing #d7hs-print-root .report-logo-standard > img {
    display: block !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    object-fit: contain !important;
  }

  /* APID: as cinco vistas permanecem na mesma linha. */
  body.d7hs-printing #d7hs-print-root .apid-report-images,
  body.d7hs-printing #d7hs-print-root .ai-photo-grid,
  body.d7hs-printing #d7hs-print-root .report-postural-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 4px !important;
    width: 100% !important;
    align-items: start !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  body.d7hs-printing #d7hs-print-root .apid-report-images figure,
  body.d7hs-printing #d7hs-print-root .ai-photo-grid figure,
  body.d7hs-printing #d7hs-print-root .report-postural-grid figure {
    display: block !important;
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  body.d7hs-printing #d7hs-print-root .apid-report-images img,
  body.d7hs-printing #d7hs-print-root .ai-photo-grid img,
  body.d7hs-printing #d7hs-print-root .report-postural-grid img {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 47mm !important;
    max-height: 47mm !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }

  /* AFID/OHS: frontal e laterais permanecem em três colunas. */
  body.d7hs-printing #d7hs-print-root .ohs-report-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 3mm !important;
    width: 100% !important;
    align-items: start !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  body.d7hs-printing #d7hs-print-root .ohs-report-grid figure {
    display: block !important;
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
  }

  body.d7hs-printing #d7hs-print-root .ohs-report-grid img {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 54mm !important;
    max-height: 54mm !important;
    object-fit: contain !important;
  }

  /* Preserva os agrupamentos visuais que precisam continuar lado a lado. */
  body.d7hs-printing #d7hs-print-root .report-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  body.d7hs-printing #d7hs-print-root .clinical-report-grid {
    display: grid !important;
  }

  body.d7hs-printing #d7hs-print-root .comparison-grid,
  body.d7hs-printing #d7hs-print-root .report-section.clinical-layout,
  body.d7hs-printing #d7hs-print-root .ai-suggestion-report .report-section.clinical-layout {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.d7hs-printing #d7hs-print-root figure,
  body.d7hs-printing #d7hs-print-root img,
  body.d7hs-printing #d7hs-print-root svg,
  body.d7hs-printing #d7hs-print-root canvas {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  body.d7hs-printing #d7hs-print-root img,
  body.d7hs-printing #d7hs-print-root svg,
  body.d7hs-printing #d7hs-print-root canvas {
    max-width: 100% !important;
  }

  @page { size: A4 portrait; margin: 7mm; }
}
