
    @media (max-width: 600px) {
      .chart-type-btn span {
        display: none;
      }

      .chart-type-btn {
        padding: 6px !important;
      }
    }

        @media (max-width: 1050px) {
      .top-actions-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
      }

      .pill-toolbar {
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
      }

      .pill-toolbar::-webkit-scrollbar {
        display: none;
      }
    }

    @media (max-width: 860px) {
      .sections-grid {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 860px) {
      #investChartsGrid {
        grid-template-columns: 1fr;
      }
    }

    @media print {
      @page {
        size: A4 portrait;
        margin: 10mm;
      }

      *,
      *::before,
      *::after {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
        box-shadow: none !important;
        text-shadow: none !important;
      }

      /* 1. FUNDO BRANCO ABSOLUTO EM TODAS AS SUPERFÍCIES RAIZ */
      html,
      body {
        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #14221D !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
      }

      /* 2. REMOVE COMPLETAMENTE O BACKDROP DO DIALOG NA IMPRESSÃO */
      dialog::backdrop,
      ::backdrop {
        display: none !important;
        background: transparent !important;
        background-color: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
      }

      /* 3. OCULTAÇÃO TOTAL DA INTERFACE REGULAR E DE OUTROS DIALOGS */
      body > :not(#reportDialog) {
        display: none !important;
        visibility: hidden !important;
      }

      dialog:not(#reportDialog) {
        display: none !important;
        visibility: hidden !important;
      }

      .app-container,
      .sidebar,
      .main-content,
      .topbar,
      .bottom-nav-bar,
      .ai-assistant-fab,
      .ai-assistant-panel,
      #toast-container {
        display: none !important;
        visibility: hidden !important;
      }

      /* 4. LIBERAÇÃO EXCLUSIVA DO DIALOG DE RELATÓRIO E DA ÁREA DE IMPRESSÃO */
      dialog#reportDialog {
        display: block !important;
        visibility: visible !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        box-shadow: none !important;
        overflow: visible !important;
        inset: auto !important;
        transform: none !important;
      }

      dialog#reportDialog .dialog-head,
      dialog#reportDialog .dialog-foot,
      dialog#reportDialog #reportFiltersCard,
      dialog#reportDialog .icon-btn,
      dialog#reportDialog .btn {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
      }

      dialog#reportDialog .dialog-body {
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        overflow: visible !important;
      }

      #reportPrintArea {
        display: block !important;
        visibility: visible !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        box-shadow: none !important;
        color: #14221D !important;
        overflow: visible !important;
      }

      /* 5. CABEÇALHO DO RELATÓRIO */
      #reportPrintHeader {
        display: block !important;
        border-bottom: 2px solid #1F7A5C !important;
        padding-bottom: 8px !important;
        margin-bottom: 12px !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        background: transparent !important;
      }

      #reportPreviewTitle {
        color: #14221D !important;
        font-size: 14pt !important;
        font-weight: 800 !important;
        margin: 0 0 4px 0 !important;
      }

      #reportPreviewSubtitle {
        color: #52635B !important;
        font-size: 8.5pt !important;
        font-weight: 600 !important;
        margin: 0 !important;
      }

      /* 6. CARDS DE RESUMO DO RELATÓRIO */
      #reportSummaryCards {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px !important;
        margin-bottom: 14px !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        background: transparent !important;
      }

      #reportSummaryCards > div {
        background: #F7FAF8 !important;
        background-color: #F7FAF8 !important;
        border: 1px solid #C8D8CE !important;
        border-radius: 6px !important;
        padding: 6px 8px !important;
        box-sizing: border-box !important;
        overflow: visible !important;
      }

      #reportSummaryCards .card-label,
      #reportSummaryCards div > div:first-child {
        font-size: 6.8pt !important;
        color: #52635B !important;
        font-weight: 800 !important;
        white-space: normal !important;
        word-break: normal !important;
        line-height: 1.15 !important;
        text-transform: uppercase !important;
        overflow: visible !important;
      }

      #reportSummaryCards .num {
        font-size: 9.5pt !important;
        font-weight: 800 !important;
        margin-top: 2px !important;
        white-space: nowrap !important;
        color: #14221D !important;
      }

      /* 7. TABELA DINÂMICA DO RELATÓRIO COM FORMATAÇÃO TABULAR NATIVA */
      #reportPrintArea div:has(#reportDynamicTable),
      #reportPrintArea div[style*="overflow-x:auto"] {
        overflow: visible !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
      }

      #reportDynamicTable {
        display: table !important;
        width: 100% !important;
        border-collapse: collapse !important;
        table-layout: auto !important;
        font-size: 7.8pt !important;
        margin: 0 !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        page-break-inside: auto !important;
      }

      #reportDynamicThead {
        display: table-header-group !important;
      }

      #reportDynamicTbody {
        display: table-row-group !important;
        background: #ffffff !important;
      }

      #reportDynamicTfoot {
        display: table-footer-group !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
      }

      #reportDynamicTable tr {
        display: table-row !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        background: #ffffff !important;
      }

      #reportDynamicTable th {
        display: table-cell !important;
        background: #EEF4F1 !important;
        background-color: #EEF4F1 !important;
        color: #14221D !important;
        font-weight: 800 !important;
        padding: 5px 6px !important;
        border: 1px solid #B8CCC1 !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        vertical-align: middle !important;
        text-align: left;
      }

      #reportDynamicTable td {
        display: table-cell !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        padding: 4.5px 6px !important;
        border: 1px solid #D3E0D8 !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        vertical-align: middle !important;
        color: #14221D !important;
      }

      #reportDynamicTable tfoot td {
        display: table-cell !important;
        background: #F1F6F3 !important;
        background-color: #F1F6F3 !important;
        color: #14221D !important;
        font-weight: 800 !important;
        border-top: 2px solid #1F7A5C !important;
        border-bottom: 1px solid #B8CCC1 !important;
      }

      #reportDynamicTable .num {
        white-space: nowrap !important;
        font-family: 'JetBrains Mono', monospace !important;
        text-align: right;
      }

      #reportDynamicTable .tag,
      #reportDynamicTable .status-badge {
        display: inline-block !important;
        border: 1px solid #B8CCC1 !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #14221D !important;
        padding: 1px 4px !important;
        font-size: 7pt !important;
        border-radius: 3px !important;
        white-space: nowrap !important;
      }
    }
