/* ============================================================
   Impressão — regras próprias da aplicação.

   Porque não chegam as utilities `d-print-*`: essas vêm do
   Bootstrap por CDN (jsdelivr). Se o CDN não responder — rede
   fechada do cliente, proxy, integrity a falhar — deixa de
   existir `.d-print-block`, mas `.d-none` continua a existir
   (vem do MudBlazor, que é local). O bloco marcado com
   "d-none d-print-block" fica então invisível também na
   impressão: era o que fazia a impressão dos formulários
   preenchidos sair só com o cabeçalho.

   Estas regras vivem numa folha local, carregada em último
   lugar, e não dependem de nada externo.
   ============================================================ */

.p25-print-only {
    display: none !important;
}

@media print {
    /* A folha é sempre branca com texto preto.

       Sem isto, com o Windows/Chrome em modo escuro o browser trata a
       página como dark (não há `color-scheme` declarado em lado nenhum)
       e, como o Chrome não imprime fundos por defeito, sai texto claro
       sobre papel branco. A aplicação só tem PaletteLight, por isso não
       há nada de tema a preservar aqui. */
    html {
        color-scheme: light !important;
    }

    html,
    body,
    .mud-layout,
    .mud-main-content {
        background: #fff !important;
        background-color: #fff !important;
        color: #000 !important;
    }

    .mud-paper {
        background-color: #fff !important;
        color: #000 !important;
    }

    .p25-no-print {
        display: none !important;
    }

    .p25-print-only {
        display: block !important;
    }

    /* Chrome da aplicação: barra de topo, menu lateral, overlays.

       A Lara (.ai-assistant-container) flutua por cima do conteúdo com
       position:fixed, por isso saía impressa a meio da folha — quer o
       balão fechado, quer a janela de conversa aberta. */
    .mud-appbar,
    .mud-drawer,
    .mud-overlay,
    .ai-assistant-container,
    #blazor-error-ui {
        display: none !important;
    }

    /* Sem o menu lateral, o conteúdo passa a ocupar a folha toda. */
    .mud-layout {
        display: block !important;
    }

    .mud-main-content {
        padding: 0 !important;
        margin: 0 !important;
    }

    /* A sombra do MudPaper imprime como um cinzento sujo. */
    .mud-paper {
        box-shadow: none !important;
    }

    /* Sem a barra lateral ao lado, a coluna de conteúdo ocupa a folha toda. */
    .p25-print-full {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    /* Não cortar um bloco de respostas a meio entre páginas. */
    .p25-print-keep {
        break-inside: avoid;
        page-break-inside: avoid;
    }
}
