/* ============================================================
   Central de Relatórios — papel pro contador, banco e comprador.
   O .rel-papel imita uma folha A4: na tela é um cartão branco;
   no print é a ÚNICA coisa visível (resto some).
   ============================================================ */

.pagina-central-rel { padding-bottom: var(--gap-xxl); }

.pagina-central-rel .custos-pro-tag { margin-right: var(--gap-xs); }

/* Controles acima do papel (seletores de safra/ano/período) */
.pagina-central-rel .rel-controles { margin-bottom: var(--gap-sm); }

/* --- A folha --- */
.pagina-central-rel .rel-papel {
    background: #FFFFFF;
    border: 1px solid var(--bege-medio);
    border-radius: 10px;
    padding: var(--gap-xl) var(--gap-lg);
    box-shadow: 0 2px 10px rgba(42, 37, 32, 0.08);
    color: #2A2520; /* papel é sempre claro, mesmo no tema escuro */
}

.pagina-central-rel .rel-cabec {
    border-bottom: 2px solid var(--verde-escuro);
    padding-bottom: var(--gap-md);
    margin-bottom: var(--gap-lg);
}

.pagina-central-rel .rel-cabec-fazenda {
    font-weight: 700;
    font-size: var(--fs-subtitulo);
    color: var(--verde-escuro);
}

.pagina-central-rel .rel-cabec-meta {
    font-size: var(--fs-mini);
    color: #8B847E;
    margin-top: 2px;
}

.pagina-central-rel .rel-titulo {
    font-size: var(--fs-titulo);
    color: #2A2520;
    margin: var(--gap-md) 0 0;
}

.pagina-central-rel .rel-sub {
    font-size: var(--fs-pequeno);
    color: #5C5550;
    margin-top: 2px;
}

.pagina-central-rel .rel-secao {
    font-size: var(--fs-base);
    color: var(--verde-escuro);
    margin: var(--gap-lg) 0 var(--gap-sm);
    border: none;
    padding: 0;
}

/* --- Tabelas de papel --- */
.pagina-central-rel .rel-tabela {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--fs-pequeno);
    background: transparent;
    box-shadow: none;
}

.pagina-central-rel .rel-tabela th {
    text-align: left;
    font-size: var(--fs-micro);
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #8B847E;
    padding: 6px 6px;
    border-bottom: 1px solid var(--bege-medio);
}

.pagina-central-rel .rel-tabela td {
    padding: 7px 6px;
    border-bottom: 1px solid var(--bege-suave);
    color: #2A2520;
    vertical-align: top;
}

.pagina-central-rel .rel-tabela th.rel-num,
.pagina-central-rel .rel-tabela td.rel-num {
    text-align: right;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.pagina-central-rel .rel-tabela tr.rel-total td {
    font-weight: 700;
    border-top: 2px solid var(--verde-escuro);
    border-bottom: none;
}

.pagina-central-rel .rel-nota {
    font-size: var(--fs-mini);
    color: #8B847E;
    font-style: italic;
    margin-top: var(--gap-md);
}

.pagina-central-rel .rel-rodape {
    margin-top: var(--gap-xl);
    padding-top: var(--gap-sm);
    border-top: 1px solid var(--bege-medio);
    text-align: center;
    font-size: var(--fs-micro);
    color: #8B847E;
}

/* --- Celular: relatórios com muitas colunas (livro caixa, fechamento de
   safra, vendas por comprador, produtividade por talhão…) não cabem na largura.
   Aqui a folha aperta a margem lateral, a tabela encolhe um pouco a fonte e o
   padding e, se ainda não couber, ROLA na horizontal em vez de vazar/cortar
   pra fora da tela. Vale só na TELA — o PDF (A4) sai completo e com fonte cheia. */
@media screen and (max-width: 600px) {
    .pagina-central-rel .rel-papel {
        padding: var(--gap-lg) var(--gap-md);
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .pagina-central-rel .rel-tabela {
        font-size: var(--fs-micro);
    }
    .pagina-central-rel .rel-tabela th,
    .pagina-central-rel .rel-tabela td {
        padding: 6px 4px;
    }
}

/* --- Impressão: só o papel existe --- */
@media print {
    @page { margin: 1.2cm; }

    body * { visibility: hidden; }

    .pagina-central-rel .rel-papel,
    .pagina-central-rel .rel-papel * { visibility: visible; }

    .pagina-central-rel .rel-papel {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        border: none;
        box-shadow: none;
        border-radius: 0;
        padding: 0;
    }

    .pagina-central-rel .rel-sem-print { display: none !important; }
    .pagina-central-rel .rel-secao { page-break-after: avoid; }
    .pagina-central-rel .rel-tabela tr { page-break-inside: avoid; }
}
