/* Complementos do Hope DP sobre o style.css do Fiscal (mesmo design system). */
.badge-azul { background: rgba(37,99,235,0.14); color: #1d4ed8; }
button.pq { padding: 4px 10px; font-size: 12.5px; }
.sub-cabecalho { margin: 4px 0 16px; color: var(--muted); font-size: 14px; }
.card-resumo.clic { cursor: pointer; transition: transform .12s ease, box-shadow .12s ease; }
.card-resumo.clic:hover { transform: translateY(-2px); box-shadow: 0 8px 18px -8px rgba(0,0,0,.25); }
.card-resumo.alerta { border-left: 4px solid var(--vermelho); } .card-resumo.aviso { border-left: 4px solid #f59e0b; } .card-resumo.bom { border-left: 4px solid var(--hope); }
.card h3 { margin: 0 0 10px; font-size: 15px; }
.grade2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } @media (max-width: 1000px) { .grade2 { grid-template-columns: 1fr; } }
.toolbar-filtros { align-items: center; } .toolbar-filtros input[type=month] { width: auto; } .toolbar-filtros .esp { flex: 1; }
.toolbar-filtros label { flex-direction: row; align-items: center; font-weight: 500; }
.toolbar-filtros label input[type=checkbox] { width: auto; }
.cartao-tabela.rolavel { max-height: calc(100vh - 330px); overflow: auto; }
.cartao-tabela.rolavel th { position: sticky; top: 0; z-index: 1; }
.tabela td.num, .tabela th.num { text-align: right; } .tabela td.ctr, .tabela th.ctr { text-align: center; }
.mini { color: var(--muted); font-size: 12px; font-weight: 400; }
.vazio { padding: 28px; text-align: center; color: var(--muted); }
.celula { width: 62px; padding: 5px 0; border-radius: 7px; border: 1px solid var(--sec-borda); background: #fff; font-weight: 700; font-size: 12.5px; color: #9aa0a6; }
.celula:hover { background: var(--sec-hover); color: #9aa0a6; }
.celula.OK { background: rgba(47,224,196,0.2); color: var(--hope-escuro); border-color: rgba(47,224,196,0.6); } .celula.OK:hover { background: rgba(47,224,196,0.32); color: var(--hope-escuro); }
.celula.X { background: var(--sec-track); color: #555; }
.ajuda-leg { display: flex; gap: 14px; align-items: center; color: var(--muted); font-size: 12.5px; margin-bottom: 10px; flex-wrap: wrap; }
.aviso-box { background: #fef3c7; border: 1px solid #fcd34d; border-radius: 10px; padding: 10px 14px; margin-bottom: 14px; color: #6b3d05; font-size: 13px; }
.info-box { background: #dbeafe; border: 1px solid #93c5fd; border-radius: 10px; padding: 10px 14px; margin-bottom: 14px; color: #1e3a8a; font-size: 13px; }
.toast { position: fixed; bottom: 22px; left: 50%; transform: translateX(-50%); background: #111; color: #fff; padding: 10px 18px; border-radius: 10px; z-index: 400; }
.toast.erro { background: var(--vermelho); }
.modal-caixa.largo { max-width: 900px; } .modal-caixa textarea { font: inherit; padding: 10px 12px; border: 1px solid var(--sec-borda); border-radius: 8px; width: 100%; }
.modal-caixa .campo { display: flex; flex-direction: column; gap: 10px; }
.sino-painel { z-index: 60; }
.sidebar-dp-secao { font-size: 11px; font-weight: 700; text-transform: uppercase; }
.toolbar-filtros input, .toolbar-filtros select { width: auto; } .toolbar-filtros input[type=search] { flex: 1; min-width: 240px; width: auto; }
.campo label > span { display: flex; align-items: center; gap: 8px; font-weight: 500; } .campo input[type=checkbox] { width: auto; }
