/* â•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گ
   Print Stylesheet â€” Medical Report Format (A4)
   Only the preview paper is printed.
   This file is for native browser print (Ctrl+P).
   The iframe-based print uses buildPrintHtml() in app.js.
   â•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گâ•گ */

@media print {

  /* â”€â”€ A4 Page â”€â”€ */
  @page {
    size: A4 portrait;
    margin: 12mm 14mm 30mm 14mm;
  }

  /* â”€â”€ Hide everything except the preview paper â”€â”€ */
  body * {
    visibility: hidden;
  }

  body {
    background: white !important;
    color: #000 !important;
    font-family: 'Cairo', 'Segoe UI', Tahoma, sans-serif !important;
    direction: ltr !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12pt !important;
    line-height: 1.8 !important;
  }

  /* Hide navigation, toolbar, editor panel, loading, toast */
  .navbar,
  .editor-toolbar,
  .editor-panel,
  .resize-handle,
  .preview-label,
  .loading-screen,
  .toast-container,
  #dashboardView,
  #departmentView {
    display: none !important;
  }

  /* Show only the preview panel and paper */
  .main-content,
  #editorView,
  .editor-container,
  .preview-panel,
  .preview-paper {
    visibility: visible !important;
    display: block !important;
  }

  .preview-paper * {
    visibility: visible !important;
  }

  /* Restore proper display for table elements */
  .preview-paper table { display: table !important; }
  .preview-paper tr { display: table-row !important; }
  .preview-paper td,
  .preview-paper th { display: table-cell !important; }
  .preview-paper span { display: inline !important; }
  .preview-paper img { display: inline-block !important; }

  /* Reset editor view layout */
  #editorView {
    position: static !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .editor-container {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
  }

  .preview-panel {
    position: static !important;
    overflow: visible !important;
    background: white !important;
    flex: none !important;
  }

  /* â”€â”€ Paper styling â”€â”€ */
  .preview-paper {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: white !important;
    color: #000 !important;
    width: 100% !important;
    min-height: auto !important;
    font-size: 12pt !important;
    line-height: 1.8 !important;
    overflow: visible !important;
    display: block !important;
    box-sizing: border-box !important;
    direction: ltr !important;
    text-align: left !important;
  }

  /* â•گâ•گâ•گ Top Banner â•گâ•گâ•گ */
  .report-top-banner {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    display: block !important;
    height: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: linear-gradient(90deg, #6b0010, #990010, #b81a2e, #990010, #6b0010) !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
    overflow: hidden !important;
    z-index: 99999 !important;
  }

  .report-top-banner .banner-pattern {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  /* â•گâ•گâ•گ Report Header â•گâ•گâ•گ */
    .report-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        width: 100%;
        /*
     Top padding clears the fixed 10px top banner.
     Horizontal padding keeps org names away from page edges.
  */
        padding: 16px 8mm 10px;
        direction: ltr !important;
        text-align: initial !important;
    }

  .report-header-en {
    order: 1 !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    text-align: left !important;
    direction: ltr !important;
  }

  .report-logo-section {
    order: 2 !important;
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .report-logo {
    width: 80px !important;
    height: 80px !important;
    object-fit: contain !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .report-header-ar {
    order: 3 !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    text-align: right !important;
    direction: rtl !important;
  }

  .header-org-name-ar { font-size: 15pt !important; font-weight: 800 !important; color: #000 !important; }
  .header-org-sub-ar { font-size: 8pt !important; color: #444 !important; }
  .header-org-name-en { font-size: 12pt !important; font-weight: 700 !important; color: #1a2a40 !important; }
  .header-org-sub-en { font-size: 8pt !important; color: #555 !important; }

  /* â•گâ•گâ•گ Department Title â•گâ•گâ•گ */
  .report-dept-title {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 3px 0 5px !important;
  }

  .dept-title-line {
    flex: 1 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, #990010, transparent) !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .dept-title-text {
    font-size: 12pt !important;
    font-weight: 700 !important;
    color: #990010 !important;
    letter-spacing: 1.5px !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  /* â•گâ•گâ•گ Dividers â•گâ•گâ•گ */
  .report-divider-pro {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 4px 0 !important;
  }

  .report-divider-pro.small { margin: 3px 0 !important; }

  .divider-wing {
    flex: 1 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, #990010 20%, #cc1a2e 50%, #990010 80%, transparent) !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .report-divider-pro.small .divider-wing { height: 1px !important; }

  .divider-diamond {
    color: #990010 !important;
    font-size: 7px !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .report-divider-pro.small .divider-diamond { font-size: 5px !important; }

  .report-divider {
    height: 2px !important;
    background: linear-gradient(90deg, transparent, #990010 15%, #cc1a2e 50%, #990010 85%, transparent) !important;
    margin: 6px 0 !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  /* ═══ Patient Info Table ═══
     Centered with auto layout so columns flex with content. */
  .report-patient-info {
    padding: 4px 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  .patient-info-table {
    width: 92% !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
    margin: 3px auto !important;
    direction: ltr !important;
  }

  .patient-info-table td {
    border: 1px solid #aaa !important;
    padding: 4px 10px !important;
    font-size: 9.5pt !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  .patient-info-table .info-label {
    background: linear-gradient(135deg, #f8f0f0, #f0e8e8) !important;
    font-weight: 700 !important;
    color: #6b0010 !important;
    font-size: 8.5pt !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    text-align: center !important;
    width: auto !important;
    white-space: nowrap !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .patient-info-table .info-value {
    color: #000 !important;
    font-weight: 600 !important;
    text-align: center !important;
    width: auto !important;
    min-width: 80px !important;
    font-size: 9.5pt !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  .report-info-row { font-size: 10pt !important; margin-bottom: 4px !important; }
  .info-label { font-weight: 700 !important; color: #222 !important; text-align: center !important; }
  .info-value { color: #000 !important; text-align: center !important; }

  /* ═══ Report Body ═══
     LTR, left-aligned text with comfortable horizontal padding. */
    .report-body {
        width: 100%;
        /*
     Comfortable A4 reading margins
  */
        padding: 10px 14mm 16px 14mm;
        line-height: 1.9;
        font-size: 12pt;
        color: #1a1a1a;
        direction: ltr !important;
        text-align: left !important;
    }

  .report-body p {
    margin-bottom: 8px !important;
    text-align: left !important;
  }

    .report-body .report-heading {
        font-weight: 700;
        color: #990010;
        border-bottom: 1.5px solid #990010;
        /*
     LEFT aligned
  */
        margin: 16px auto 8px 0;
        padding-bottom: 2px;
        /*
     Keep only the required width of the text
  */
        display: block;
        width: fit-content;
        clear: both;
        letter-spacing: 0.5px;
        font-size: 12.5pt;
        /*
     Sub-headings are LEFT aligned
  */
        text-align: left !important;
        direction: ltr !important;
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }

  .report-body ol {
    margin: 4px 0 8px 24px !important;
    padding: 0 !important;
    list-style: decimal !important;
    text-align: left !important;
    display: block !important;
  }

  .report-body ul {
    margin: 4px 0 8px 24px !important;
    padding: 0 !important;
    list-style: disc !important;
    text-align: left !important;
    display: block !important;
  }

  .report-body ol li,
  .report-body ul li {
    margin-bottom: 3px !important;
    line-height: 1.7 !important;
    display: list-item !important;
    text-align: left !important;
  }

  .report-body .report-spacer {
    display: block !important;
    height: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .report-placeholder { display: none !important; }

  /* â•گâ•گâ•گ Footer / Signature â•گâ•گâ•گ */
  .report-footer {
    margin-top: 10px !important;
    padding-top: 8px !important;
  }

  .report-signature {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 10px 0 6px !important;
    gap: 15px !important;
  }

  .signature-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    flex: 1 !important;
  }

  .signature-label { font-size: 9pt !important; font-weight: 700 !important; color: #444 !important; text-transform: uppercase !important; }
  .signature-value { font-size: 11pt !important; font-weight: 600 !important; color: #000 !important; }

  .signature-underline {
    display: block !important;
    width: 100px !important;
    height: 1px !important;
    background: #666 !important;
    margin-top: 25px !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .report-footer-strip { display: none !important; }

  /* â•گâ•گâ•گ Table Layout for Footer Space â•گâ•گâ•گ */
  .report-print-layout-table {
    width: 100% !important;
    border-collapse: collapse !important;
  }

  .report-print-layout-table tfoot {
    display: table-footer-group !important;
  }

  .print-footer-space {
    height: 40px !important;
  }

  /* â•گâ•گâ•گ Page Break Control â•گâ•گâ•گ */
  .report-header,
  .report-patient-info,
  .report-footer {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .report-body { page-break-before: avoid !important; }
  .report-body p, .report-body li { orphans: 3 !important; widows: 3 !important; }

  /* â•گâ•گâ•گ Repeating Print Footer â•گâ•گâ•گ */
  .print-repeating-footer,
  .print-repeating-footer * {
    visibility: visible !important;
  }

  .print-repeating-footer {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: auto !important;
    width: 100vw !important;
    overflow: visible !important;
    clip-path: none !important;
    clip: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    z-index: 99999 !important;
    pointer-events: none !important;
    page-break-inside: avoid !important;
  }

  .print-rf-strip {
    display: block !important;
    background: linear-gradient(90deg, #6b0010, #990010 25%, #b81a2e 50%, #990010 75%, #6b0010) !important;
    padding: 5px 15mm !important;
    margin: 0 !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .print-rf-content {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
  }

  .print-rf-item {
    font-size: 8pt !important;
    color: rgba(255, 255, 255, 0.92) !important;
    direction: ltr !important;
    letter-spacing: 0.3px !important;
    font-family: 'Cairo', 'Segoe UI', Tahoma, sans-serif !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .print-rf-sep {
    color: rgba(255, 255, 255, 0.4) !important;
    font-size: 8pt !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

}
