/* Faturamento Convênio (nov/2026), na fundação mm-*. Só o que é próprio destas telas; o resto vem de mc-modulo.css. */

/* Controle de Glosas */
.gl-grade { --cols: 70px 170px 104px minmax(130px, 1fr) minmax(110px, .8fr) 100px minmax(170px, 1.6fr) 96px 110px 76px; }
.gl-grade .mm-ell, .cv-ell { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gl-valor { color: var(--p-red); }
.gl-recurso { color: var(--p-yellow); }
.gl-acoes { display: flex; justify-content: flex-end; align-items: center; gap: 4px; }
.gl-sel { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cv-link { padding: 0; border: none; background: none; color: var(--p-blue); font-weight: 700; cursor: pointer; }
.cv-link:hover { text-decoration: underline; }
.gl-acoes .prmd-iconbtn.ok:hover { background: var(--p-green-soft); color: var(--p-green); }

/* Lista com busca no servidor (ListaServidor) */
.cv-mais-busy { display: inline-flex; align-items: center; gap: 8px; font-size: .74rem; font-weight: 700; color: var(--p-faint); }

/* Tabelas de referência (CBHPM, Brasíndice, SIMPRO) */
.cv-sync { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.cv-cod { font-family: var(--p-mono); font-size: .74rem; font-weight: 700; color: var(--p-blue); }
.cv-sub { font-size: .68rem; color: var(--p-faint); }
.cv-grade-cbhpm { --cols: 110px minmax(280px, 1fr) 110px 110px 110px 60px 60px; }
.cv-grade-bras { --cols: minmax(220px, 1.3fr) minmax(180px, 1fr) 130px 120px 106px 106px 90px; }
.cv-grade-simpro { --cols: minmax(240px, 1.5fr) 130px minmax(100px, .6fr) 120px 150px 100px 100px 84px; }
.mm-dl.quatro { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cv-grade-busca { --cols: 100px minmax(260px, 1.6fr) minmax(120px, .8fr) 130px 120px 100px 100px; }

/* Configurações: atalhos */
.cv-atalho { display: flex; gap: 12px; align-items: flex-start; padding: 14px; text-decoration: none; }
.cv-atalho-ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 10px; background: var(--p-blue-soft); color: var(--p-blue); font-size: 18px; }

/* Painel do Faturamento */
.cv-painel { min-height: 240px; }
.cv-g75 { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 16px; align-items: start; }
.cv-g57 { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 16px; align-items: start; }
.cv-g84 { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: 16px; align-items: start; }
.cv-rolagem { max-height: 420px; overflow-y: auto; }
.cv-grade-falta { --cols: 66px 96px 108px minmax(120px, 1fr) minmax(90px, .7fr) minmax(100px, .8fr) minmax(110px, 1fr) 92px; }
.cv-funil-val { min-width: 150px; font-weight: 600; }
.cv-pendencias { margin: 4px 0 0; padding-left: 18px; font-size: .76rem; }
.cv-aviso { color: var(--p-yellow); }
@media (max-width: 767.98px) {
    .cv-g75, .cv-g57, .cv-g84, .cv-sync { grid-template-columns: minmax(0, 1fr); }
}

/* Preços por Plano */
.cv-plano { min-width: 260px; max-width: 360px; }
.cv-plano-card { text-align: left; width: 100%; }
.cv-plano-topo { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cv-grade-precos { --cols: 118px 100px minmax(280px, 1fr) 110px 90px 120px; }
.cv-riscado { text-decoration: line-through; }
.cv-texto-ajuda { padding: 12px 16px; border-bottom: 1px solid var(--p-border-soft); font-size: .74rem; color: var(--p-muted); line-height: 1.5; }
.cv-linha-atual td { background: var(--p-soft); }
.cv-dif-mais { color: var(--p-green); }
.cv-dif-menos { color: var(--p-red); }
.cv-check-abaixo { margin-top: 6px; }

/* Importar tabela de preços */
.cv-texto-ajuda.sem-borda { padding: 0 0 12px; border-bottom: none; }
.cv-fim { align-items: end; }
.cv-largo { width: 100%; justify-content: center; }
.cv-bloco { border: 1px solid var(--p-border); border-radius: 12px; padding: 14px; }
.cv-bloco.pendente { border-color: var(--p-yellow); }
.cv-bloco-topo { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr); gap: 16px; align-items: end; }
.cv-bloco-tot { text-align: right; }
.cv-bloco-tipos { margin-top: 10px; gap: 6px; align-items: center; }
.cv-bloco-itens { margin-top: 10px; border: 1px solid var(--p-border-soft); border-radius: 10px; }
.cv-grade-import { --cols: 92px minmax(240px, 1fr) 120px 110px 84px 104px; }
.cv-doc { max-width: 340px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 767.98px) {
    .cv-bloco-topo { grid-template-columns: minmax(0, 1fr); }
    .cv-bloco-tot { text-align: left; }
}

/* TUSS */
.cv-grade-ans { --cols: 64px 190px minmax(280px, 1fr) 96px 76px; }
.cv-grade-tuss { --cols: 110px minmax(280px, 1fr) 130px 110px 110px 120px; }
.cv-resumo { margin: 0; padding: 12px; border-radius: 10px; background: var(--p-soft); font-size: .74rem; white-space: pre-wrap; }
.cv-passos { margin: 0; padding-left: 20px; font-size: .78rem; line-height: 1.6; color: var(--p-text); }
.cv-faq { display: flex; flex-direction: column; gap: 6px; }
.cv-faq details { border: 1px solid var(--p-border-soft); border-radius: 10px; padding: 8px 12px; font-size: .78rem; color: var(--p-text); }
.cv-faq summary { font-weight: 700; color: var(--p-ink); cursor: pointer; }
.cv-faq details > div { margin-top: 6px; line-height: 1.5; }

/* Histórico de atendimento (janela compartilhada) */
.cv-prof { color: var(--p-blue); }
