/*
 * Starkwood ONE v2.1.104 — Print / Save as PDF isolation repair (cumulative)
 *
 * Several independently-loaded module stylesheets used global @media print
 * rules (body > * {display:none} / body * {visibility:hidden}). Because all
 * module stylesheets are loaded at the same time, those rules could hide the
 * report belonging to a different module and Chrome would show a blank page.
 *
 * This stylesheet does not contain report data or business values. It only
 * isolates the report that is actually present when printing and restores its
 * visibility with higher specificity than the legacy module print rules.
 */

@media print {
  /* ----------------------------------------------------------------------
   * Detached print documents used by Team Performance and core documents
   * (including Deed of Restrictions). These are printed from an iframe and
   * contain only the cloned printable sheet(s).
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(> .sw-team-report-sheet) > *:not(.sw-team-report-sheet),
  html body:not(#sw-print-v2197-guard):has(> #doc-print-area) > *:not(#doc-print-area),
  html body:not(#sw-print-v2197-guard):has(> .legal-page) > *:not(.legal-page) {
    display: none !important;
  }

  html body:not(#sw-print-v2197-guard):has(> .sw-team-report-sheet) > .sw-team-report-sheet,
  html body:not(#sw-print-v2197-guard):has(> #doc-print-area) > #doc-print-area,
  html body:not(#sw-print-v2197-guard):has(> .legal-page) > .legal-page {
    visibility: visible !important;
  }

  html body:not(#sw-print-v2197-guard):has(> .sw-team-report-sheet) > .sw-team-report-sheet {
    display: block !important;
  }

  html body:not(#sw-print-v2197-guard):has(> #doc-print-area) > #doc-print-area {
    display: block !important;
  }

  html body:not(#sw-print-v2197-guard):has(> .legal-page) > .legal-page {
    display: flex !important;
  }

  html body:not(#sw-print-v2197-guard):has(> .sw-team-report-sheet) > .sw-team-report-sheet *,
  html body:not(#sw-print-v2197-guard):has(> #doc-print-area) > #doc-print-area *,
  html body:not(#sw-print-v2197-guard):has(> .legal-page) > .legal-page * {
    visibility: visible !important;
  }

  /* ----------------------------------------------------------------------
   * Team Performance fallback (if the browser prints the preview document
   * itself instead of its detached iframe).
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-team-performance-report-modal-v2179) > *:not(#sw-team-performance-report-modal-v2179) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-team-performance-report-modal-v2179) > #sw-team-performance-report-modal-v2179,
  html body:not(#sw-print-v2197-guard):has(#sw-team-performance-report-modal-v2179) > #sw-team-performance-report-modal-v2179 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-team-performance-report-modal-v2179) > #sw-team-performance-report-modal-v2179 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    background: #fff !important;
  }

  /* ----------------------------------------------------------------------
   * My HR
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-my-hr-report-v2184) > *:not(#sw-my-hr-report-v2184) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-my-hr-report-v2184) > #sw-my-hr-report-v2184,
  html body:not(#sw-print-v2197-guard):has(#sw-my-hr-report-v2184) > #sw-my-hr-report-v2184 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-my-hr-report-v2184) > #sw-my-hr-report-v2184 {
    display: block !important;
  }

  /* ----------------------------------------------------------------------
   * Equity Calculator
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-eq-doc-print-area) > *:not(.sw-eq-modal) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-eq-doc-print-area) > .sw-eq-modal,
  html body:not(#sw-print-v2197-guard):has(#sw-eq-doc-print-area) > .sw-eq-modal * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-eq-doc-print-area) > .sw-eq-modal {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    isolation: auto !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-eq-doc-print-area) #sw-eq-doc-print-area {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  /* ----------------------------------------------------------------------
   * Account Services
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-account-services-report-modal-v2153) > *:not(#sw-account-services-report-modal-v2153) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-account-services-report-modal-v2153) > #sw-account-services-report-modal-v2153,
  html body:not(#sw-print-v2197-guard):has(#sw-account-services-report-modal-v2153) > #sw-account-services-report-modal-v2153 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-account-services-report-modal-v2153) > #sw-account-services-report-modal-v2153 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    isolation: auto !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-account-services-report-modal-v2153) #sw-as-print-root {
    position: static !important;
    left: auto !important;
    top: auto !important;
  }

  /* ----------------------------------------------------------------------
   * Client Database
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-client-db-report-modal-v2156) > *:not(#sw-client-db-report-modal-v2156) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-client-db-report-modal-v2156) > #sw-client-db-report-modal-v2156,
  html body:not(#sw-print-v2197-guard):has(#sw-client-db-report-modal-v2156) > #sw-client-db-report-modal-v2156 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-client-db-report-modal-v2156) > #sw-client-db-report-modal-v2156 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    isolation: auto !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-client-db-report-modal-v2156) #sw-client-db-print-root {
    position: static !important;
    left: auto !important;
    top: auto !important;
  }

  /* ----------------------------------------------------------------------
   * Broker's Database
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-broker-db-report-modal-v2157) > *:not(#sw-broker-db-report-modal-v2157) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-broker-db-report-modal-v2157) > #sw-broker-db-report-modal-v2157,
  html body:not(#sw-print-v2197-guard):has(#sw-broker-db-report-modal-v2157) > #sw-broker-db-report-modal-v2157 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-broker-db-report-modal-v2157) > #sw-broker-db-report-modal-v2157 {
    display: block !important;
  }

  /* ----------------------------------------------------------------------
   * Account Cancellations
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-cancellation-report-modal-v2158) > *:not(#sw-cancellation-report-modal-v2158) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-cancellation-report-modal-v2158) > #sw-cancellation-report-modal-v2158,
  html body:not(#sw-print-v2197-guard):has(#sw-cancellation-report-modal-v2158) > #sw-cancellation-report-modal-v2158 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-cancellation-report-modal-v2158) > #sw-cancellation-report-modal-v2158 {
    display: block !important;
  }

  /* ----------------------------------------------------------------------
   * Contract to Sell
   * ---------------------------------------------------------------------- */
  html body:not(#sw-print-v2197-guard):has(#sw-cts-report-modal-v2160) > *:not(#sw-cts-report-modal-v2160) {
    display: none !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-cts-report-modal-v2160) > #sw-cts-report-modal-v2160,
  html body:not(#sw-print-v2197-guard):has(#sw-cts-report-modal-v2160) > #sw-cts-report-modal-v2160 * {
    visibility: visible !important;
  }
  html body:not(#sw-print-v2197-guard):has(#sw-cts-report-modal-v2160) > #sw-cts-report-modal-v2160 {
    display: block !important;
  }

  /* Preserve printed colors for all repaired reports. */
  html body:not(#sw-print-v2197-guard) {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }


  /* ======================================================================
   * v2.1.98 additions
   * The five report modules below already generate their own live report DOM.
   * This repair only makes the currently-open report printable. It contains
   * no report rows, names, amounts, rates, dates, or other business data.
   * ====================================================================== */

  /* ----------------------------------------------------------------------
   * Broker's Commission Report
   * ---------------------------------------------------------------------- */
  html body:has(> #sw-broker-commission-report-modal-v2165) > *:not(#sw-broker-commission-report-modal-v2165) {
    display: none !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) > #sw-broker-commission-report-modal-v2165,
  html body:has(> #sw-broker-commission-report-modal-v2165) > #sw-broker-commission-report-modal-v2165 * {
    visibility: visible !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) > #sw-broker-commission-report-modal-v2165 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) .sw-bc-modal-panel {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) .sw-bc-modal-toolbar {
    display: none !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) .sw-bc-modal-scroll {
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
  }
  html body:has(> #sw-broker-commission-report-modal-v2165) .sw-bc-report-sheet {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  /* ----------------------------------------------------------------------
   * PDC & Payments Report
   * ---------------------------------------------------------------------- */
  html body:has(> #sw-pdc-report-modal-v2170) > *:not(#sw-pdc-report-modal-v2170) {
    display: none !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) > #sw-pdc-report-modal-v2170,
  html body:has(> #sw-pdc-report-modal-v2170) > #sw-pdc-report-modal-v2170 * {
    visibility: visible !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) > #sw-pdc-report-modal-v2170 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) .sw-pdc-modal-card-v2170 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    overflow: visible !important;
    box-shadow: none !important;
    background: #fff !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) .sw-pdc-modal-toolbar-v2170 {
    display: none !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) .sw-pdc-paper-scroll-v2170 {
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-pdc-report-modal-v2170) .sw-pdc-report-page-v2170 {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  /* ----------------------------------------------------------------------
   * Receivables Report
   * ---------------------------------------------------------------------- */
  html body:has(> #sw-receivables-report-modal-v2171) > *:not(#sw-receivables-report-modal-v2171) {
    display: none !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) > #sw-receivables-report-modal-v2171,
  html body:has(> #sw-receivables-report-modal-v2171) > #sw-receivables-report-modal-v2171 * {
    visibility: visible !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) > #sw-receivables-report-modal-v2171 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) .sw-receivables-modal-card-v2171 {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-shadow: none !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) .sw-receivables-modal-toolbar-v2171 {
    display: none !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) .sw-receivables-paper-scroll-v2171 {
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-receivables-report-modal-v2171) .sw-receivables-report-page-v2171 {
    display: block !important;
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  /* ----------------------------------------------------------------------
   * Bank Financing Receivables Report
   * ---------------------------------------------------------------------- */
  html body:has(> #sw-bank-receivable-report-modal-v2172) > *:not(#sw-bank-receivable-report-modal-v2172) {
    display: none !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) > #sw-bank-receivable-report-modal-v2172,
  html body:has(> #sw-bank-receivable-report-modal-v2172) > #sw-bank-receivable-report-modal-v2172 * {
    visibility: visible !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) > #sw-bank-receivable-report-modal-v2172 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) .sw-bank-receivable-modal-card-v2172 {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-shadow: none !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) .sw-bank-receivable-modal-toolbar-v2172 {
    display: none !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) .sw-bank-receivable-paper-scroll-v2172 {
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-bank-receivable-report-modal-v2172) .sw-bank-receivable-report-page-v2172 {
    display: block !important;
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  /* ----------------------------------------------------------------------
   * Bank Incentive Reports
   * ---------------------------------------------------------------------- */
  html body:has(> #sw-bank-incentive-report-modal-v2173) > *:not(#sw-bank-incentive-report-modal-v2173) {
    display: none !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) > #sw-bank-incentive-report-modal-v2173,
  html body:has(> #sw-bank-incentive-report-modal-v2173) > #sw-bank-incentive-report-modal-v2173 * {
    visibility: visible !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) > #sw-bank-incentive-report-modal-v2173 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) .sw-bank-incentive-modal-card-v2173 {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-shadow: none !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) .sw-bank-incentive-modal-toolbar-v2173 {
    display: none !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) .sw-bank-incentive-paper-scroll-v2173 {
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    background: #fff !important;
  }
  html body:has(> #sw-bank-incentive-report-modal-v2173) .sw-bank-incentive-report-page-v2173 {
    display: block !important;
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    box-shadow: none !important;
  }



  /* ======================================================================
   * v2.1.101 addition — Inhouse Premiums
   * Print-only repair. Existing live/generated report data remains the source.
   * ====================================================================== */
  html body:has(> #sw-inhouse-premiums-report-modal-v2174) > *:not(#sw-inhouse-premiums-report-modal-v2174) {
    display: none !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) > #sw-inhouse-premiums-report-modal-v2174,
  html body:has(> #sw-inhouse-premiums-report-modal-v2174) > #sw-inhouse-premiums-report-modal-v2174 * {
    visibility: visible !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) > #sw-inhouse-premiums-report-modal-v2174 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) .sw-inhouse-premiums-modal-card-v2174 {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: #fff !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) .sw-inhouse-premiums-modal-toolbar-v2174 {
    display: none !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) .sw-inhouse-premiums-paper-scroll-v2174 {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  html body:has(> #sw-inhouse-premiums-report-modal-v2174) .sw-inhouse-premiums-report-page-v2174 {
    display: block !important;
    position: static !important;
    width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
  }



  /* ======================================================================
   * v2.1.102 addition — Construction Progress Report — Preview
   *
   * The core app prints this report through swPrintElement(), which clones
   * the live #progress-report-print element into a temporary iframe. Because
   * all application stylesheets are copied into that iframe too, unrelated
   * module @media print rules can hide the cloned report and leave Chrome's
   * Print / Save as PDF preview blank.
   *
   * These rules restore only the live cloned report element. No report data,
   * units, buyers, milestones, percentages, dates, or history are embedded.
   * ====================================================================== */

  /* Primary path: detached A4 iframe created by swPrintElement(). */
  html body:has(> #progress-report-print) > *:not(#progress-report-print) {
    display: none !important;
  }

  html body:has(> #progress-report-print) > #progress-report-print,
  html body:has(> #progress-report-print) > #progress-report-print * {
    visibility: visible !important;
  }

  html body:has(> #progress-report-print) > #progress-report-print {
    display: block !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  html body:has(> #progress-report-print) .progress-report-unit {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  html body:has(> #progress-report-print) .progress-history-table {
    font-size: 9px !important;
  }

  /* Fallback path: if the browser falls back to printing the live app page,
   * keep #root visible because the Construction Progress modal is rendered
   * inside the React root rather than as a direct child of <body>.
   */
  html body:has(#root .sw-progress-report-modal) > *:not(#root) {
    display: none !important;
  }

  html body:has(#root .sw-progress-report-modal) > #root {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  html body:has(#root .sw-progress-report-modal) #root .sw-progress-report-modal,
  html body:has(#root .sw-progress-report-modal) #root .sw-progress-report-modal *,
  html body:has(#root .sw-progress-report-modal) #progress-report-print,
  html body:has(#root .sw-progress-report-modal) #progress-report-print * {
    visibility: visible !important;
  }

  html body:has(#root .sw-progress-report-modal) #root .sw-progress-report-modal {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  html body:has(#root .sw-progress-report-modal) #root .sw-progress-report-modal > div:not(.no-print) {
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    background: #fff !important;
  }

  html body:has(#root .sw-progress-report-modal) #progress-report-print {
    display: block !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }



  /* ======================================================================
   * v2.1.103 addition — HR Management Report
   *
   * HR Management already generates the report dynamically from the live
   * HR API payload. The blank PDF is caused by competing global @media print
   * rules from other modules, not by missing HR report data.
   *
   * This section only restores the currently-open HR report modal during
   * print media. No HR records or business values are embedded here.
   * ====================================================================== */

  html body:has(> #sw-hr-report-modal-v2181) > *:not(#sw-hr-report-modal-v2181) {
    display: none !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) > #sw-hr-report-modal-v2181,
  html body:has(> #sw-hr-report-modal-v2181) > #sw-hr-report-modal-v2181 * {
    visibility: visible !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) > #sw-hr-report-modal-v2181 {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) #sw-hr-report-modal-v2181 .sw-hr-report-bar {
    display: none !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) #sw-hr-report-modal-v2181 .sw-hr-report-shell {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    border-radius: 0 !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) #sw-hr-report-modal-v2181 .sw-hr-paper {
    display: block !important;
    position: static !important;
    width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 20mm !important;
    transform: none !important;
    box-shadow: none !important;
    background: #fff !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) #sw-hr-report-modal-v2181 .sw-hr-report-table {
    break-inside: auto !important;
    page-break-inside: auto !important;
  }

  html body:has(> #sw-hr-report-modal-v2181) #sw-hr-report-modal-v2181 .sw-hr-report-table tr {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }



  /* ======================================================================
   * v2.1.104 addition — Processes
   *
   * The Processes module builds the selected process from the live/database-
   * backed process payload, then clones .sw-process-print-sheet into a small
   * print iframe. The iframe intentionally inherits the application's loaded
   * stylesheets, so unrelated legacy @media print rules can hide the cloned
   * sheet and leave Chrome Print / Save as PDF blank.
   *
   * These rules restore only the live process print sheet/modal. They do not
   * contain process names, steps, reminders, owners, channels, or other data.
   * ====================================================================== */

  /* Primary path: the temporary iframe contains the generated sheet as a
   * direct child of <body>. The :is() selector contains a non-matching ID only
   * to give this repair enough specificity to override older module print
   * selectors that used :not(#some-report-id) with !important.
   */
  html body:has(> .sw-process-print-sheet)
    > .sw-process-print-sheet:is(#sw-process-print-sheet-v21104-boost, .sw-process-print-sheet) {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  html body:has(> .sw-process-print-sheet)
    > .sw-process-print-sheet:is(#sw-process-print-sheet-v21104-boost, .sw-process-print-sheet) *,
  html body:has(> .sw-process-print-sheet)
    > .sw-process-print-sheet:is(#sw-process-print-sheet-v21104-boost, .sw-process-print-sheet) {
    visibility: visible !important;
  }

  /* Fallback path: if the iframe cannot be used and Processes falls back to
   * window.print(), restore the existing live print modal instead.
   */
  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176:is(#sw-process-print-modal-v21104-boost, .sw-process-print-modal-v2176) {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    backdrop-filter: none !important;
  }

  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176:is(#sw-process-print-modal-v21104-boost, .sw-process-print-modal-v2176) *,
  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176:is(#sw-process-print-modal-v21104-boost, .sw-process-print-modal-v2176) {
    visibility: visible !important;
  }

  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176 .sw-process-print-toolbar {
    display: none !important;
  }

  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176 .sw-process-print-scroll {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
  }

  html body:has(> .sw-process-print-modal-v2176)
    > .sw-process-print-modal-v2176 .sw-process-print-sheet {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

}
