/* Corpo da Planilha de Demanda (specs.md §5.1 a §5.4). A página A4, o cabeçalho e o rodapé vêm do kit
   (../../compartilhado/css/documento.css, classes doc-*). Tabelas em grade de <div> (o motor de PDF do kit desenha
   fundos, bordas por lado e textos de qualquer elemento; specs.md KP-5). Paleta do kit (QP-01). */

.doc-page { --pd-zebra: #f3f4f9; }
.doc-page > .pd-ficha, .doc-page > .pd-saldo, .doc-page > .pd-obs, .doc-page > .pd-final { flex: none; }

/* Ficha do contrato: rótulo à direita (MAIÚSCULAS, QP-07) | valor */
.pd-ficha { display: grid; grid-template-columns: 178px minmax(0, 1fr); border-top: 1px solid var(--uern-line); }
.pd-ficha__rotulo, .pd-ficha__valor { border-bottom: 1px solid var(--uern-line); padding: 3px 8px; }
.pd-ficha__rotulo { background: var(--uern-muted); text-align: right; font-size: 9.5px; font-weight: 600;
                    letter-spacing: .04em; text-transform: uppercase; color: var(--uern-ink-3); line-height: 14px; }
.pd-ficha__valor { font-size: 10.5px; line-height: 14px; overflow-wrap: anywhere; }

/* Controle de Saldo: 7 colunas na largura útil (714 px) */
.pd-saldo { display: flex; flex-direction: column; }
.pd-saldo__titulo { background: var(--uern-navy); color: #fff; text-align: center; font-size: 12px; font-weight: 700;
                    letter-spacing: .08em; padding: 4px 0; line-height: 14px; }
.pd-linha { display: grid; grid-template-columns: 30px 156px 66px 92px 120px 120px minmax(0, 1fr); align-items: center; }
.pd-linha > div { padding: 0 5px; white-space: nowrap; overflow: hidden; }
.pd-cab { background: var(--uern-navy); color: #fff; font-size: 8.5px; font-weight: 700; letter-spacing: .03em;
          text-transform: uppercase; line-height: 10px; border-top: 1px solid #fff; }
.pd-cab > div { text-align: center; white-space: normal; padding: 3px 3px; }
.pd-lin { font-size: 10px; line-height: 16px; height: 16px; font-variant-numeric: tabular-nums; }
.pd-lin--zebra { background: var(--pd-zebra); }
.pd-lin > .pd-c { text-align: center; }
.pd-lin > .pd-r { text-align: center; }
.pd-lin--evento > .pd-evento { grid-column: 2 / span 4; text-align: center; font-weight: 600; }
.pd-tot { background: var(--uern-navy); color: #fff; font-size: 10px; font-weight: 700; line-height: 18px; height: 18px;
          font-variant-numeric: tabular-nums; }
.pd-tot > .pd-tot__rotulo { grid-column: 1 / span 5; text-align: right; letter-spacing: .04em; }
.pd-tot > .pd-r { text-align: center; }
.pd-vazia { font-size: 10px; color: var(--uern-ink-3); text-align: center; padding: 6px 0; border-bottom: 1px solid var(--uern-line); }

/* Observação da planilha estimativa (D-P15): abaixo dos totais, itálico, justificada */
.pd-obs { font-size: 9px; line-height: 12px; font-style: italic; text-align: justify; padding-top: 6px; }

/* Local, data e signatários: à direita, sem linha (RP-41, RP-42); os signatários (lado a lado, com o espaço de 56 px
   do carimbo e a imagem da assinatura, D-P20) são do kit: .doc-sign-dir (KO-4) */
.pd-final { display: flex; flex-direction: column; align-items: flex-end; text-align: right; padding-top: 2px; }
.pd-final__local { font-size: 11px; }
