/* SoluCalc v271 — piloto de relatório/ impressão */
.solucalc-report-button{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;padding:10px 14px;font-weight:850;cursor:pointer;background:#0D1B3D!important;color:#fff!important;box-shadow:0 10px 20px rgba(13,27,61,.14);min-height:40px;line-height:1.1;text-decoration:none!important;}
.solucalc-report-button:hover{filter:brightness(1.05)}
.solucalc-report-button:focus{outline:3px solid rgba(10,102,255,.28);outline-offset:2px}
.solucalc-report-modal[hidden]{display:none!important}
.solucalc-report-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.55);backdrop-filter:blur(2px)}
.solucalc-report-dialog{width:min(620px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));overflow:auto;background:#fff;border:1px solid rgba(15,23,42,.12);border-radius:22px;box-shadow:0 30px 80px rgba(15,23,42,.28);padding:22px;color:#0f172a}
.solucalc-report-dialog h2{margin:0 0 6px;font-size:1.3rem;line-height:1.15;color:#0D1B3D}
.solucalc-report-dialog p{margin:0 0 14px;color:#475569;line-height:1.45}
.solucalc-report-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0 16px}
.solucalc-report-option{display:flex;align-items:center;gap:9px;border:1px solid #dbeafe;background:#f8fbff;border-radius:14px;padding:10px 11px;color:#0f172a;font-weight:750;line-height:1.2;cursor:pointer}
.solucalc-report-option input{width:17px;height:17px;accent-color:#0A66FF;flex:0 0 auto}
.solucalc-report-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:9px;margin-top:12px}
.solucalc-report-actions button{border:0;border-radius:12px;padding:10px 14px;font-weight:850;cursor:pointer;font:inherit}
.solucalc-report-print{background:#0A66FF;color:#fff;box-shadow:0 10px 22px rgba(10,102,255,.18)}
.solucalc-report-cancel{background:#e2e8f0;color:#0f172a}
.solucalc-print-root{display:none}
.solucalc-report-warning{display:none;margin-top:10px;padding:10px 12px;border-radius:12px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:.92rem;line-height:1.35}
.solucalc-report-warning.show{display:block}
@media(max-width:640px){.solucalc-report-dialog{padding:18px;border-radius:18px}.solucalc-report-options{grid-template-columns:1fr}.solucalc-report-actions{justify-content:stretch}.solucalc-report-actions button{flex:1}}
@media print{
  @page{size:auto;margin:12mm}
  body.solucalc-printing > *:not(.solucalc-print-root){display:none!important}
  body.solucalc-printing .solucalc-print-root{display:block!important;position:static!important;width:auto!important;max-width:none!important;background:#fff!important;color:#111827!important;font-family:Arial,Helvetica,sans-serif!important;font-size:10.5pt!important;line-height:1.35!important}
  .solucalc-print-report{display:block!important;color:#111827!important}
  .solucalc-print-header{border-bottom:2px solid #0D1B3D;padding-bottom:10px;margin-bottom:14px;break-inside:avoid;page-break-inside:avoid}
  .solucalc-print-brand{font-weight:900;color:#0D1B3D;font-size:17pt;letter-spacing:-.02em;margin-bottom:3px}
  .solucalc-print-title{font-size:14pt;font-weight:800;margin:0 0 4px;color:#0f172a}
  .solucalc-print-meta{font-size:8.8pt;color:#475569;margin:0}
  .solucalc-print-section{break-inside:auto;page-break-inside:auto;margin:0 0 12px;padding:0 0 8px;border-bottom:1px solid #e5e7eb}
  .solucalc-print-section h2{font-size:12pt;color:#0D1B3D;margin:0 0 7px;break-after:avoid;page-break-after:avoid}
  .solucalc-print-section h3{font-size:10.5pt;color:#0f172a;margin:8px 0 5px;break-after:avoid;page-break-after:avoid}
  .solucalc-print-section p{margin:4px 0;color:#111827}
  .solucalc-print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}
  .solucalc-print-kv{border:1px solid #e5e7eb;border-radius:6px;padding:5px 7px;break-inside:avoid;page-break-inside:avoid;background:#fff}
  .solucalc-print-kv small{display:block;color:#64748b;font-size:8pt;font-weight:700;margin-bottom:2px}
  .solucalc-print-kv strong{display:block;color:#111827;font-size:9.5pt;overflow-wrap:anywhere}
  .solucalc-print-clone{width:100%;max-width:100%;overflow:visible!important;break-inside:auto;page-break-inside:auto}
  .solucalc-print-clone article,.solucalc-print-clone .ms163-visual,.solucalc-print-clone .numera-v93-visual-card,.solucalc-print-clone .ntt-v1-visual-card,.solucalc-print-clone .numera-v93-metric,.solucalc-print-clone .ms163-metric{break-inside:avoid;page-break-inside:avoid;margin-bottom:8px;box-shadow:none!important}
  .solucalc-print-clone svg{max-width:100%!important;width:100%!important;height:auto!important;display:block!important;overflow:visible!important;break-inside:avoid;page-break-inside:avoid}
  .solucalc-print-clone table{width:100%!important;border-collapse:collapse!important;font-size:8.5pt!important;table-layout:auto!important;break-inside:auto;page-break-inside:auto}
  .solucalc-print-clone th,.solucalc-print-clone td{border:1px solid #d1d5db!important;padding:4px 5px!important;text-align:left!important;vertical-align:top!important;word-break:break-word!important;white-space:normal!important;background:#fff!important;color:#111827!important}
  .solucalc-print-clone th{font-weight:800!important;background:#f3f4f6!important}
  .solucalc-print-clone .ms163-table-scroll,.solucalc-print-clone .numera-v93-table-wrap,.solucalc-print-clone .ntt-v1-table-wrap{max-height:none!important;overflow:visible!important;border:0!important}
  .solucalc-print-clone button,.solucalc-print-clone input,.solucalc-print-clone select,.solucalc-print-clone textarea,.solucalc-print-clone .numera-v94-zoom-hint,.solucalc-print-clone .ms163-caption,.solucalc-print-clone .numera-v93-caption{display:none!important}
  .solucalc-print-footer{margin-top:12px;padding-top:8px;border-top:1px solid #d1d5db;color:#64748b;font-size:8.5pt;text-align:center}
}

/* v272 — robustez do piloto */
.solucalc-print-clone .ntt-v1-rep-card,.solucalc-print-clone .numera-v93-visual-card,.solucalc-print-clone .ms163-visual{break-inside:avoid;page-break-inside:avoid;overflow:visible!important;max-height:none!important;}
.solucalc-print-clone svg{max-width:100%!important;height:auto!important;overflow:visible!important;}
.solucalc-print-clone canvas,.solucalc-print-clone img{max-width:100%!important;height:auto!important;}


/* v273 — impressão completa das representações do piloto */
@media print{
  .solucalc-print-clone .lp-visual-card,
  .solucalc-print-clone .ware236-visual,
  .solucalc-print-clone .numera-v94-dist-visual,
  .solucalc-print-clone .calc-visual-card,
  .solucalc-print-clone .po-v94-logistics-visual{
    break-inside:avoid!important;
    page-break-inside:avoid!important;
    overflow:visible!important;
    max-height:none!important;
    box-shadow:none!important;
    margin-bottom:9px!important;
  }
  .solucalc-print-clone .lp-visual-card > div,
  .solucalc-print-clone .ware236-visual > div,
  .solucalc-print-clone .numera-v94-dist-visual > div,
  .solucalc-print-clone .calc-visual-card > div{
    overflow:visible!important;
    max-height:none!important;
  }
  .solucalc-print-clone .numera-v94-dist-table-wrap,
  .solucalc-print-clone .ware236-table-wrap,
  .solucalc-print-clone .data-table-wrap{
    max-height:none!important;
    overflow:visible!important;
  }
}


/* v275 — estilos de Programação Linear preservados na impressão */
@media print{
  body.solucalc-printing .solucalc-print-root,
  body.solucalc-printing .solucalc-print-root *{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .solucalc-print-clone .lp-visual-card{
    border:1px solid #d7e5f7!important;
    border-radius:18px!important;
    background:#fff!important;
    padding:13px 14px!important;
    box-shadow:none!important;
  }
  .solucalc-print-clone .lp-visual-card h4{margin:0 0 8px!important;color:#071442!important;font-size:15px!important;line-height:1.2!important;}
  .solucalc-print-clone .lp-visual-card p.lp-caption{margin:7px 0 0!important;color:#64738f!important;font-size:11.5px!important;line-height:1.35!important;}
  .solucalc-print-clone .lp-region-wrap{display:grid!important;gap:8px!important;min-width:0!important;}
  .solucalc-print-clone .lp-region-svg{display:block!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;}
  .solucalc-print-clone .lp-legend{display:grid!important;gap:5px!important;margin-top:2px!important;}
  .solucalc-print-clone .lp-legend-row{display:grid!important;grid-template-columns:12px minmax(0,1fr)!important;gap:7px!important;align-items:start!important;color:#53617a!important;font-size:11.4px!important;line-height:1.25!important;min-width:0!important;}
  .solucalc-print-clone .lp-legend-dot{width:10px!important;height:10px!important;border-radius:999px!important;margin-top:2px!important;display:block!important;}
  .solucalc-print-clone .lp-legend-row span:last-child{overflow-wrap:anywhere!important;}
  .solucalc-print-clone .lp-bar-list{display:grid!important;gap:8px!important;margin-top:2px!important;}
  .solucalc-print-clone .lp-bar-row{display:grid!important;grid-template-columns:minmax(78px,.85fr) minmax(0,1fr) minmax(58px,.48fr)!important;gap:8px!important;align-items:center!important;color:#53617a!important;font-size:11.8px!important;line-height:1.2!important;min-width:0!important;}
  .solucalc-print-clone .lp-bar-label{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-weight:820!important;color:#071442!important;}
  .solucalc-print-clone .lp-track{height:12px!important;border-radius:999px!important;background:#eaf2fd!important;overflow:hidden!important;min-width:0!important;display:block!important;width:100%!important;}
  .solucalc-print-clone .lp-fill{display:block!important;height:100%!important;border-radius:999px!important;min-width:4px!important;}
  .solucalc-print-clone .lp-fill-active{background:#0aa680!important;}
  .solucalc-print-clone .lp-fill-free{background:#0967f4!important;}
  .solucalc-print-clone .lp-fill-warn{background:#ff7a1a!important;}
  .solucalc-print-clone .lp-bar-value{text-align:right!important;font-weight:820!important;color:#071442!important;white-space:nowrap!important;}
  .solucalc-print-clone .lp-chip{display:inline-flex!important;border-radius:999px!important;padding:3px 7px!important;font-size:10.5px!important;font-weight:870!important;white-space:nowrap!important;vertical-align:middle!important;}
  .solucalc-print-clone .lp-chip.ok{background:#e8f7ef!important;color:#047857!important;}
  .solucalc-print-clone .lp-chip.free{background:#eef5ff!important;color:#0967f4!important;}
  .solucalc-print-clone .lp-empty{border:1px dashed #c9d8eb!important;border-radius:14px!important;background:#f8fbff!important;color:#64738f!important;font-size:12px!important;line-height:1.35!important;padding:10px!important;}
}


/* v277 — captura e impressão visual robusta para cards HTML/SVG heterogêneos */
@media print{
  .solucalc-print-clone [class*="visual"],
  .solucalc-print-clone [class*="Visual"],
  .solucalc-print-clone [class*="viz"],
  .solucalc-print-clone [class*="Viz"],
  .solucalc-print-clone [class*="chart"],
  .solucalc-print-clone [class*="Chart"],
  .solucalc-print-clone [class*="graph"],
  .solucalc-print-clone [class*="Graph"],
  .solucalc-print-clone [class*="repr"],
  .solucalc-print-clone [class*="rep-"],
  .solucalc-print-clone [data-numera-extra-visual],
  .solucalc-print-clone [data-v94-tight-visual],
  .solucalc-print-clone [data-numera-zoomable-v2]{
    max-height:none!important;
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
    box-shadow:none!important;
  }
  .solucalc-print-clone [class*="bar"],
  .solucalc-print-clone [class*="Bar"],
  .solucalc-print-clone [class*="fill"],
  .solucalc-print-clone [class*="Fill"],
  .solucalc-print-clone [class*="track"],
  .solucalc-print-clone [class*="Track"],
  .solucalc-print-clone [class*="chip"],
  .solucalc-print-clone [class*="Chip"],
  .solucalc-print-clone [class*="dot"],
  .solucalc-print-clone [class*="Dot"],
  .solucalc-print-clone [class*="node"],
  .solucalc-print-clone [class*="Node"],
  .solucalc-print-clone [class*="edge"],
  .solucalc-print-clone [class*="Edge"]{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
}


/* v278 — deduplicação e normalização visual das representações impressas */
@media print{
  .solucalc-print-section .solucalc-print-clone{
    display:block!important;
  }
  .solucalc-print-section .solucalc-print-clone > article,
  .solucalc-print-section .solucalc-print-clone > section,
  .solucalc-print-section .solucalc-print-clone > div{
    max-width:100%!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  .solucalc-print-clone .numera-v94-zoomable,
  .solucalc-print-clone [data-v94-zoom],
  .solucalc-print-clone [data-numera-extra-visual],
  .solucalc-print-clone [data-v94-tight-visual],
  .solucalc-print-clone [data-numera-zoomable-v2],
  .solucalc-print-clone [class*="visual"],
  .solucalc-print-clone [class*="Visual"]{
    transform:none!important;
    zoom:1!important;
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  .solucalc-print-clone svg{
    width:100%!important;
    max-width:160mm!important;
    height:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* v280 — separação de blocos e tabelas completas no relatório */
@media print{
  .solucalc-print-clone [class*="table-wrap"],
  .solucalc-print-clone [class*="TableWrap"],
  .solucalc-print-clone [class*="tableWrap"],
  .solucalc-print-clone .ms163-table-scroll,
  .solucalc-print-clone .numera-v93-table-wrap,
  .solucalc-print-clone .ntt-v1-table-wrap,
  .solucalc-print-clone .table-wrap,
  .solucalc-print-clone .data-table-wrap,
  .solucalc-print-clone .numera-v94-abs-table-wrap,
  .solucalc-print-clone .ishi297-table-wrap{
    max-height:none!important;
    height:auto!important;
    overflow:visible!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    border:0!important;
  }
  .solucalc-print-clone table,
  .solucalc-print-clone .numera-v94-abs-table,
  .solucalc-print-clone .ishi297-table{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
    border-collapse:collapse!important;
  }
  .solucalc-print-clone th,
  .solucalc-print-clone td{
    white-space:normal!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
  }
}


/* v281 — Relatório como impressão limpa da própria página da ferramenta */
@media print{
  @page{size:A4;margin:10mm}

  html[data-solucalc-page-printing="1"],
  html[data-solucalc-page-printing="1"] body{
    background:#fff!important;
    color:#111827!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  body.solucalc-page-printing{
    background:#fff!important;
    color:#111827!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:9.5pt!important;
    line-height:1.35!important;
  }

  body.solucalc-page-printing *,
  body.solucalc-page-printing *::before,
  body.solucalc-page-printing *::after{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
    box-sizing:border-box!important;
  }

  /* Oculta navegação, busca, rodapés amplos, anúncios, botões e elementos interativos não necessários */
  body.solucalc-page-printing .topbar,
  body.solucalc-page-printing .site-header,
  body.solucalc-page-printing header:not(main header):not(.numera-tool-hero):not(.tool-hero),
  body.solucalc-page-printing nav,
  body.solucalc-page-printing .search-box,
  body.solucalc-page-printing .search-panel,
  body.solucalc-page-printing .numera-search,
  body.solucalc-page-printing .footer,
  body.solucalc-page-printing footer,
  body.solucalc-page-printing .numera-promo-slot,
  body.solucalc-page-printing .promo,
  body.solucalc-page-printing .ad,
  body.solucalc-page-printing [class*="ads"],
  body.solucalc-page-printing [id*="ads"],
  body.solucalc-page-printing [class*="Ads"],
  body.solucalc-page-printing [id*="Ads"],
  body.solucalc-page-printing .related-tools,
  body.solucalc-page-printing .tool-related,
  body.solucalc-page-printing .numera-related,
  body.solucalc-page-printing .breadcrumb,
  body.solucalc-page-printing .breadcrumbs,
  body.solucalc-page-printing .solucalc-report-modal,
  body.solucalc-page-printing .solucalc-report-button,
  body.solucalc-page-printing button,
  body.solucalc-page-printing input[type="button"],
  body.solucalc-page-printing input[type="submit"],
  body.solucalc-page-printing input[type="reset"],
  body.solucalc-page-printing [role="button"],
  body.solucalc-page-printing .numera-v94-zoom-hint,
  body.solucalc-page-printing .zoom-hint,
  body.solucalc-page-printing [class*="zoom-hint"],
  body.solucalc-page-printing [class*="ZoomHint"]{
    display:none!important;
  }

  /* Mantém conteúdo principal visível e sem efeitos de tela */
  body.solucalc-page-printing main,
  body.solucalc-page-printing .numera-tool-content,
  body.solucalc-page-printing #toolWorkspace,
  body.solucalc-page-printing .tool-workspace,
  body.solucalc-page-printing [id*="Workspace"],
  body.solucalc-page-printing [class*="workspace"],
  body.solucalc-page-printing [class*="Workspace"]{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:visible!important;
    max-height:none!important;
  }

  /* Desarma grids de duas colunas que cortariam no A4; preserva os cards em sequência */
  body.solucalc-page-printing .ms163-workspace,
  body.solucalc-page-printing .ntt-v1-workspace,
  body.solucalc-page-printing .numera-v94-workspace,
  body.solucalc-page-printing .numera-v93-workspace,
  body.solucalc-page-printing .v213-template-workspace,
  body.solucalc-page-printing [class*="workspace"],
  body.solucalc-page-printing [class*="Workspace"],
  body.solucalc-page-printing [class*="grid"],
  body.solucalc-page-printing [class*="Grid"]{
    grid-template-columns:1fr!important;
    grid-auto-flow:row!important;
    gap:9px!important;
    align-items:start!important;
  }

  /* Remove sticky/fixed/scroll interno */
  body.solucalc-page-printing aside,
  body.solucalc-page-printing section,
  body.solucalc-page-printing article,
  body.solucalc-page-printing div{
    position:static!important;
    max-height:none!important;
  }

  body.solucalc-page-printing [style*="overflow"],
  body.solucalc-page-printing [class*="scroll"],
  body.solucalc-page-printing [class*="Scroll"],
  body.solucalc-page-printing [class*="table-wrap"],
  body.solucalc-page-printing [class*="TableWrap"],
  body.solucalc-page-printing [class*="rows"],
  body.solucalc-page-printing [class*="Rows"],
  body.solucalc-page-printing [id*="Rows"],
  body.solucalc-page-printing [id*="rows"],
  body.solucalc-page-printing .ms163-table-scroll,
  body.solucalc-page-printing .numera-v93-table-wrap,
  body.solucalc-page-printing .ntt-v1-table-wrap,
  body.solucalc-page-printing .table-wrap,
  body.solucalc-page-printing .data-table-wrap{
    max-height:none!important;
    height:auto!important;
    overflow:visible!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
  }

  /* Cards e blocos */
  body.solucalc-page-printing article,
  body.solucalc-page-printing section,
  body.solucalc-page-printing .card,
  body.solucalc-page-printing [class*="card"],
  body.solucalc-page-printing [class*="Card"],
  body.solucalc-page-printing [class*="visual"],
  body.solucalc-page-printing [class*="Visual"]{
    break-inside:avoid!important;
    page-break-inside:avoid!important;
    box-shadow:none!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  /* Títulos */
  body.solucalc-page-printing h1{
    font-size:16pt!important;
    line-height:1.15!important;
    margin:0 0 8px!important;
    color:#0D1B3D!important;
  }
  body.solucalc-page-printing h2{
    font-size:12.5pt!important;
    line-height:1.2!important;
    margin:10px 0 6px!important;
    color:#0D1B3D!important;
    break-after:avoid!important;
    page-break-after:avoid!important;
  }
  body.solucalc-page-printing h3,
  body.solucalc-page-printing h4{
    break-after:avoid!important;
    page-break-after:avoid!important;
  }

  /* Campos: manter valores visíveis, sem aparência interativa pesada */
  body.solucalc-page-printing input:not([type="button"]):not([type="submit"]):not([type="reset"]),
  body.solucalc-page-printing select,
  body.solucalc-page-printing textarea{
    display:inline-block!important;
    max-width:100%!important;
    color:#111827!important;
    background:#fff!important;
    border:1px solid #cbd5e1!important;
    box-shadow:none!important;
    min-height:20px!important;
    height:auto!important;
    overflow:visible!important;
    white-space:normal!important;
  }
  body.solucalc-page-printing textarea{
    min-height:48px!important;
    resize:none!important;
  }

  /* Tabelas: expandir, quebrar texto e evitar cortes laterais */
  body.solucalc-page-printing table{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    border-collapse:collapse!important;
    table-layout:auto!important;
    font-size:7.8pt!important;
    break-inside:auto!important;
    page-break-inside:auto!important;
  }
  body.solucalc-page-printing thead{
    display:table-header-group!important;
  }
  body.solucalc-page-printing tr{
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  body.solucalc-page-printing th,
  body.solucalc-page-printing td{
    border:1px solid #d1d5db!important;
    padding:3.5px 4px!important;
    white-space:normal!important;
    word-break:break-word!important;
    overflow-wrap:anywhere!important;
    vertical-align:top!important;
    color:#111827!important;
    background:#fff!important;
  }
  body.solucalc-page-printing th{
    background:#f3f4f6!important;
    font-weight:800!important;
  }

  /* Imagens, SVGs, canvas e representações */
  body.solucalc-page-printing svg,
  body.solucalc-page-printing canvas,
  body.solucalc-page-printing img{
    max-width:100%!important;
    height:auto!important;
    overflow:visible!important;
    page-break-inside:avoid!important;
    break-inside:avoid!important;
  }

  body.solucalc-page-printing [class*="track"],
  body.solucalc-page-printing [class*="Track"],
  body.solucalc-page-printing [class*="fill"],
  body.solucalc-page-printing [class*="Fill"],
  body.solucalc-page-printing [class*="bar"],
  body.solucalc-page-printing [class*="Bar"],
  body.solucalc-page-printing [class*="chip"],
  body.solucalc-page-printing [class*="Chip"],
  body.solucalc-page-printing [class*="dot"],
  body.solucalc-page-printing [class*="Dot"]{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  /* Evita links com URL impressa após o texto em alguns navegadores */
  body.solucalc-page-printing a[href]::after{
    content:""!important;
  }
}


/* v282 — supressão de vazios e preservação de cards visuais com role=button */
@media print{
  body.solucalc-page-printing .solucalc-print-skip{
    display:none!important;
  }

  /* A v281 ocultava [role=button], mas muitos cards de representação usam esse atributo para zoom.
     Reexibir cards/visualizações com role=button e manter ocultos apenas botões reais. */
  body.solucalc-page-printing article[role="button"],
  body.solucalc-page-printing section[role="button"],
  body.solucalc-page-printing div[role="button"].numera-v94-zoomable,
  body.solucalc-page-printing .numera-v94-zoomable[role="button"],
  body.solucalc-page-printing [data-v94-zoom][role="button"],
  body.solucalc-page-printing [data-numera-extra-visual][role="button"],
  body.solucalc-page-printing [class*="visual"][role="button"],
  body.solucalc-page-printing [class*="Visual"][role="button"]{
    display:block!important;
  }

  body.solucalc-page-printing .solucalc-report-button,
  body.solucalc-page-printing button,
  body.solucalc-page-printing input[type="button"],
  body.solucalc-page-printing input[type="submit"],
  body.solucalc-page-printing input[type="reset"]{
    display:none!important;
  }

  /* Reduzir espaços vazios causados por min-height, sticky, wrappers e páginas empurradas por break-inside. */
  body.solucalc-page-printing main,
  body.solucalc-page-printing aside,
  body.solucalc-page-printing section,
  body.solucalc-page-printing article,
  body.solucalc-page-printing .numera-info-card,
  body.solucalc-page-printing .tool-card,
  body.solucalc-page-printing .card,
  body.solucalc-page-printing [class*="card"],
  body.solucalc-page-printing [class*="Card"],
  body.solucalc-page-printing [class*="workspace"],
  body.solucalc-page-printing [class*="Workspace"],
  body.solucalc-page-printing [class*="wrap"],
  body.solucalc-page-printing [class*="Wrap"],
  body.solucalc-page-printing [class*="host"],
  body.solucalc-page-printing [class*="Host"]{
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    break-inside:auto!important;
    page-break-inside:auto!important;
  }

  /* Evitar que blocos grandes reservem uma página inteira vazia. */
  body.solucalc-page-printing [style*="min-height"],
  body.solucalc-page-printing [style*="height"]{
    min-height:0!important;
    height:auto!important;
  }

  /* Cards visuais podem evitar quebra, mas sem reservar altura excessiva. */
  body.solucalc-page-printing .numera-v94-zoomable,
  body.solucalc-page-printing [data-v94-zoom],
  body.solucalc-page-printing [data-numera-extra-visual],
  body.solucalc-page-printing [data-v94-tight-visual],
  body.solucalc-page-printing [data-numera-zoomable-v2],
  body.solucalc-page-printing [class*="visual"],
  body.solucalc-page-printing [class*="Visual"]{
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  /* Se a ferramenta tiver duas colunas, não deixar o aside vazio ocupar página própria. */
  body.solucalc-page-printing aside:empty,
  body.solucalc-page-printing section:empty,
  body.solucalc-page-printing article:empty,
  body.solucalc-page-printing div:empty{
    display:none!important;
  }
}


/* v285 — correção funcional segura: botão à direita sem reposicionamento recorrente */
.solucalc-report-button{order:999!important;margin-left:auto!important;}
@media print{
  body.solucalc-page-printing .numera-related-top-card,
  body.solucalc-page-printing .numera-tool-explain,
  body.solucalc-page-printing .lower-content,
  body.solucalc-page-printing .numera-promo-slot,
  body.solucalc-page-printing .related-tools,
  body.solucalc-page-printing .tool-related,
  body.solucalc-page-printing .numera-related{display:none!important;}
  body.solucalc-page-printing .solucalc-report-button{display:none!important;}
}


/* v290 — ampliação adaptativa efetiva e supressão de resíduos finais */
@media print{
  @page{
    size:A4 portrait;
    margin:7mm;
  }

  body.solucalc-page-printing .solucalc-print-skip,
  body.solucalc-page-printing .solucalc-print-skip *{
    display:none!important;
  }

  body.solucalc-page-printing .solucalc-print-visual-adaptive{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
    margin-bottom:10px!important;
  }

  body.solucalc-page-printing .solucalc-print-visual-adaptive,
  body.solucalc-page-printing .solucalc-print-visual-adaptive *{
    transform:none!important;
    transform-origin:center top!important;
  }

  body.solucalc-page-printing .solucalc-print-graphic-adaptive,
  body.solucalc-page-printing .solucalc-print-htmlvisual-adaptive{
    display:block!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:visible!important;
  }

  body.solucalc-page-printing .solucalc-print-visual-adaptive h2,
  body.solucalc-page-printing .solucalc-print-visual-adaptive h3,
  body.solucalc-page-printing .solucalc-print-visual-adaptive h4{
    font-size:11.5pt!important;
    line-height:1.18!important;
  }

  body.solucalc-page-printing .solucalc-print-visual-adaptive p{
    font-size:9.2pt!important;
    line-height:1.28!important;
  }

  /* Evitar que linhas/campos externos ao conteúdo principal gerem páginas isoladas. */
  body.solucalc-page-printing .numera-tool-explain,
  body.solucalc-page-printing .numera-related-top-card,
  body.solucalc-page-printing .lower-content,
  body.solucalc-page-printing .numera-promo-slot,
  body.solucalc-page-printing .search-box,
  body.solucalc-page-printing .search-results,
  body.solucalc-page-printing footer,
  body.solucalc-page-printing .footer,
  body.solucalc-page-printing .topbar{
    display:none!important;
  }
}


/* v291 — ajuste fino: ampliação ~150% e supressão adicional de resíduos finais */
@media print{
  body.solucalc-page-printing .solucalc-print-visual-adaptive{
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
  body.solucalc-page-printing .solucalc-print-visual-adaptive svg,
  body.solucalc-page-printing .solucalc-print-visual-adaptive canvas,
  body.solucalc-page-printing .solucalc-print-visual-adaptive img{
    object-fit: contain !important;
  }
}


/* v293 — EVM com SVG preservado e limpeza adicional da página final */
@media print{
  body.solucalc-page-printing .solucalc-print-skip,
  body.solucalc-page-printing .solucalc-print-skip *{
    display:none!important;
  }

  /* EVM: não aplicar transform/scale nos cards nem nos descendentes.
     Importante: NÃO definir transform:none nos filhos, pois isso anula os transform nativos dos grupos SVG. */
  body.solucalc-page-printing .numera-v94-evm-visual{
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  body.solucalc-page-printing .numera-v94-evm-visual > div{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    text-align:center!important;
  }

  body.solucalc-page-printing .numera-v94-evm-visual svg{
    display:block!important;
    width:100%!important;
    max-width:520px!important;
    height:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:visible!important;
  }

  /* Resíduos órfãos frequentes: controles de busca/campos fora da ferramenta. */
  body.solucalc-page-printing header input,
  body.solucalc-page-printing header select,
  body.solucalc-page-printing header textarea,
  body.solucalc-page-printing footer input,
  body.solucalc-page-printing footer select,
  body.solucalc-page-printing footer textarea,
  body.solucalc-page-printing .topbar input,
  body.solucalc-page-printing .search-box input,
  body.solucalc-page-printing .search-results input{
    display:none!important;
  }

  body.solucalc-page-printing .lower-content,
  body.solucalc-page-printing .numera-promo-slot,
  body.solucalc-page-printing .numera-related-top-card,
  body.solucalc-page-printing .numera-tool-explain{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
}
