/* Ajustes visuais do portal (o resto vem do Bootstrap) */
body { background: #f4f6f9; }
.barra-topo { background: var(--cor-empresa, #1f4e79); }
.resumo { border-left: 4px solid var(--cor-empresa, #1f4e79); }
.tabela-relatorio { font-size: .875rem; white-space: nowrap; }
.tabela-relatorio thead th { background: var(--cor-empresa, #1f4e79); color: #fff; position: sticky; top: 0; }
.tabela-relatorio tfoot th { background: #dde6f0; }
@media (max-width: 576px) {
    .tabela-relatorio { font-size: .8rem; }
}

/* Logo */
.logo-login { max-width: 160px; width: 60%; height: auto; }
.logo-topo { background: #fff; border-radius: 8px; padding: 3px 6px; display: inline-flex; }
.logo-topo img { height: 34px; width: auto; }

/* Botão do olho na senha */
.btn-olho { border-color: var(--bs-border-color); color: #6c757d; background: #fff; }
.btn-olho:hover, .btn-olho:focus { background: #f1f3f5; color: var(--cor-empresa, #1f4e79); border-color: var(--bs-border-color); }

/* Análises fora do padrão de qualidade */
.fora-padrao { color: #c62828 !important; font-weight: 700; }
.tabela-relatorio td.fora-padrao, .tabela-relatorio tfoot th.fora-padrao { --bs-table-bg-state: #fdecea; }
.resumo-fora { border-left-color: #c62828 !important; background: #fff6f5; }

/* Dicas importantes (CBT / CCS fora do padrão) */
.dica { border: 1px solid #f0c36d; border-left: 4px solid #e0a800; background: #fffbea; }
.dica-titulo { color: #8a5a00; font-weight: 700; }

/* Menu do topo (Relatório / Notas fiscais) */
.menu-topo { color: rgba(255,255,255,.75); text-decoration: none; font-size: .9rem; padding: .25rem .5rem; border-radius: 6px; white-space: nowrap; }
.menu-topo:hover { color: #fff; background: rgba(255,255,255,.12); }
.menu-topo.ativo { color: #fff; background: rgba(255,255,255,.2); font-weight: 600; }
@media (max-width: 400px) {
    .menu-topo { font-size: .8rem; padding: .2rem .35rem; }
}

/* Lista de notas fiscais */
.tabela-notas { font-size: .9rem; white-space: nowrap; }
.tabela-notas thead th { background: var(--cor-empresa, #1f4e79); color: #fff; }
.nota-cancelada td { color: #8a8a8a; }

/* Relatório de descontos / convênios: quebra por mês base */
.tabela-convenio tr.conv-mes td { background: #eef2f7; color: var(--cor-empresa, #1f4e79); font-weight: 600; text-align: center; }
.tabela-convenio tr.conv-espaco td { border: 0; height: 14px; background: #fff; }
.tabela-convenio tr.conv-futuros td { background: var(--cor-empresa, #1f4e79); color: #fff; font-weight: 700; text-align: center; letter-spacing: .03em; }
.tabela-convenio tr.conv-subtotal td { font-weight: 600; border-bottom: 2px solid #c9d1db; }
.tabela-convenio td { white-space: normal; }

/* Notas no celular: os botões (DANFE, XML, Compartilhar) quebram linha em vez de alargar a tabela */
.tabela-notas .botoes-nota { white-space: normal; display: flex; flex-wrap: wrap; gap: .25rem; }

/* Faixa do técnico (abaixo da barra do topo) */
.faixa-tecnico { background: #fff7e0; border-bottom: 1px solid #f0d58a; color: #5c4400; }

/* Demonstrativo de pagamento */
.resumo-destaque { background: var(--cor-empresa); color: #fff; border-color: var(--cor-empresa); }
.demo-tit { border-left: 4px solid var(--cor-empresa); }
.demo-descontos { border-left-color: #8a3b3b; }
.tabela-demo th, .tabela-demo td { white-space: nowrap; }
.tabela-demo thead th { font-weight: normal; color: #666; font-size: .8rem; }
.tabela-demo tfoot th { background: #f3f6fa; }
.demo-dias { display: grid; grid-template-columns: repeat(auto-fill, minmax(64px, 1fr)); gap: 6px; }
.demo-dia { border: 1px solid #e3e7ee; border-radius: 6px; text-align: center; padding: 3px 2px; background: #fff; }
.demo-dia-n { font-size: .72rem; color: #666; }
.demo-dia-l { font-weight: 600; }
.demo-dia-a { font-size: .68rem; color: #b26a00; }

/* Menu do topo no celular: segunda linha, ocupando a largura toda (cabe 4 ou mais itens) */
@media (max-width: 767.98px) {
    .menu-linha { order: 3; width: 100%; justify-content: space-around; overflow-x: auto; margin-right: 0 !important; }
    .menu-linha:empty { display: none !important; }
}

/* Registro de acessos (tecnico_acessos.php) */
.tabela-acessos td { vertical-align: top; }
.tabela-acessos .badge { font-size: .72rem; }
