/* Telas da fundação: acesso, início, setores, configurações, administração e telas em recriação. */

/* ---------- Acesso (login, primeiro acesso, recuperação) ---------- */
.acesso {
  min-height: 100dvh;
  display: grid;
  place-items: center;
  padding: var(--e-6) var(--e-4);
}
.acesso-cartao {
  width: min(440px, 100%);
  padding: var(--e-8) var(--e-7) var(--e-7);
  border-radius: 34px;
  display: grid;
  gap: var(--e-4);
  animation: surgir var(--mov-lento) var(--curva);
}
.acesso-marca { display: flex; align-items: center; gap: 14px; margin-bottom: var(--e-2); }
.acesso-marca img { width: 56px; height: 56px; border-radius: 17px; box-shadow: 0 10px 24px -10px rgb(10 16 43 / .7); }
.acesso-marca span { display: grid; line-height: 1.2; }
.acesso-marca b { font-size: var(--t-lg); font-weight: 690; letter-spacing: -.015em; }
.acesso-marca small { color: var(--texto-3); }
.acesso-cartao h1 { font-size: var(--t-2xl); }
.acesso-cartao > p { color: var(--texto-3); }
.acesso-cartao form { display: grid; gap: var(--e-4); }
.acesso-rodape { display: flex; justify-content: space-between; align-items: center; gap: var(--e-3); flex-wrap: wrap; font-size: var(--t-sm); }
.acesso-rodape button { border: 0; background: none; color: var(--destaque-tinta); padding: 4px 0; font-weight: 560; }
.acesso-rodape button:hover { text-decoration: underline; }
.acesso-tema { position: fixed; right: 16px; bottom: 16px; }
.campo-senha { position: relative; }
.campo-senha input { padding-right: 48px !important; }
.campo-senha .botao { position: absolute; right: 4px; bottom: 2px; }

/* ---------- Início ---------- */
.saudacao { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--e-5); flex-wrap: wrap; margin: var(--e-4) 0 var(--e-7); }
.saudacao h1 { font-size: clamp(2rem, 1.3rem + 2.4vw, 3.1rem); font-weight: 650; letter-spacing: -.035em; }
.saudacao h1 em { font-style: normal; background: linear-gradient(100deg, var(--destaque-tinta), color-mix(in oklab, var(--destaque-tinta) 50%, #7aa7ff)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.saudacao p { color: var(--texto-3); margin-top: 8px; font-size: var(--t-base); }
.atalhos-dica { display: flex; gap: var(--e-2); flex-wrap: wrap; }
.atalhos-dica .botao { gap: 8px; }

.grade-setores { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 258px), 1fr)); }
.cartao-setor {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: 10px;
  min-height: 196px;
  padding: var(--e-5);
  border-radius: var(--r-xl);
  color: var(--texto);
  text-decoration: none;
}
.cartao-setor .icone-setor {
  display: grid;
  place-items: center;
  width: 46px; height: 46px;
  border-radius: 15px;
  background: linear-gradient(150deg, var(--destaque) 0%, color-mix(in oklab, var(--destaque) 58%, #6f9cff) 100%);
  color: var(--destaque-texto);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .28), 0 8px 18px -8px var(--destaque-brilho);
}
.cartao-setor .icone-setor svg { width: 22px; height: 22px; }
.cartao-setor h2 { font-size: var(--t-lg); font-weight: 650; }
.cartao-setor p { color: var(--texto-3); font-size: var(--t-sm); line-height: 1.5; }
.cartao-setor .cartao-acao { display: inline-flex; align-items: center; gap: 6px; color: var(--destaque-tinta); font-size: var(--t-sm); font-weight: 600; }
.cartao-setor .cartao-acao svg { width: 16px; height: 16px; transition: transform var(--mov) var(--curva); }
.cartao-setor:hover .cartao-acao svg { transform: translateX(3px); }
.cartao-setor .topo-cartao { display: flex; align-items: center; justify-content: space-between; gap: 8px; }

/* ---------- Configurações ---------- */
.config-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: var(--e-6); align-items: start; }
.config-menu { position: sticky; top: 96px; padding: 8px; border-radius: var(--r-xl); display: grid; gap: 2px; }
.config-menu a { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 12px; border-radius: var(--r-md); color: var(--texto-2); text-decoration: none; font-size: var(--t-md); font-weight: 540; }
.config-menu a svg { width: 18px; height: 18px; }
.config-menu a:hover { background: var(--hover); color: var(--texto); }
.config-menu a[aria-current="page"] { background: var(--vidro-solido-2); color: var(--texto); font-weight: 620; box-shadow: 0 1px 2px rgb(13 21 48 / .08); }
[data-theme="dark"] .config-menu a[aria-current="page"] { background: rgb(255 255 255 / .09); }
.secao-config { padding: var(--e-6); border-radius: var(--r-xl); }
.secao-config + .secao-config { margin-top: var(--e-5); }
.secao-config > header { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--e-4); margin-bottom: var(--e-5); flex-wrap: wrap; }
.secao-config > header h2 { font-size: var(--t-xl); }
.secao-config > header p { color: var(--texto-3); margin-top: 4px; font-size: var(--t-md); max-width: 62ch; }
.alcance { display: inline-flex; align-items: center; gap: 6px; font-size: var(--t-xs); color: var(--texto-3); font-weight: 560; }
.alcance svg { width: 14px; height: 14px; }

.opcoes-cartao { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); }
.opcao-cartao {
  display: grid;
  gap: 10px;
  padding: 10px 10px 14px;
  border: 1.5px solid var(--linha);
  border-radius: var(--r-xl);
  background: var(--hover);
  color: var(--texto);
  text-align: left;
  transition: border-color var(--mov-rapido), box-shadow var(--mov-rapido), transform var(--mov-rapido);
}
.opcao-cartao:hover { border-color: var(--linha-forte); transform: translateY(-1px); }
.opcao-cartao[aria-checked="true"] { border-color: var(--destaque-tinta); box-shadow: 0 0 0 3px var(--destaque-suave); }
.opcao-cartao .opcao-titulo { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 4px; }
.opcao-cartao .opcao-titulo b { font-size: var(--t-md); font-weight: 620; }
.opcao-cartao .opcao-titulo .marcador { width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid var(--linha-forte); display: grid; place-items: center; }
.opcao-cartao[aria-checked="true"] .marcador { background: var(--destaque); border-color: var(--destaque); }
.opcao-cartao[aria-checked="true"] .marcador::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--destaque-texto); }
.opcao-cartao small { color: var(--texto-3); padding: 0 4px; font-size: var(--t-xs); line-height: 1.45; }

/* Miniatura do tema: usa os tokens reais do tema que representa (TEM-02). */
.miniatura {
  position: relative;
  height: 108px;
  border-radius: 16px;
  overflow: hidden;
  background: var(--fundo-ceu);
  border: 1px solid var(--vidro-borda-ext);
  display: grid;
  grid-template-columns: 30% 1fr;
  gap: 6px;
  padding: 8px;
  color: var(--texto);
}
.miniatura .mini-lateral { border-radius: 10px; background: var(--vidro-2); box-shadow: var(--vidro-reflexo); display: grid; align-content: start; gap: 5px; padding: 8px 6px; }
.miniatura .mini-lateral i { display: block; height: 6px; border-radius: 4px; background: var(--linha-forte); }
.miniatura .mini-lateral i:first-child { width: 60%; height: 10px; background: var(--destaque); }
.miniatura .mini-corpo { display: grid; grid-template-rows: 16px 1fr; gap: 6px; }
.miniatura .mini-topo { border-radius: 8px; background: var(--vidro-1); box-shadow: var(--vidro-reflexo); }
.miniatura .mini-cartoes { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.miniatura .mini-cartoes i { border-radius: 9px; background: var(--vidro-2); box-shadow: var(--vidro-reflexo), var(--sombra-1); position: relative; }
.miniatura .mini-cartoes i::after { content: ""; position: absolute; left: 8px; top: 8px; width: 14px; height: 14px; border-radius: 5px; background: var(--destaque); }
.miniatura.dividida { grid-template-columns: 1fr 1fr; padding: 0; gap: 0; }
.miniatura.dividida > div { display: grid; grid-template-columns: 30% 1fr; gap: 6px; padding: 8px; background: var(--fundo-ceu); color: var(--texto); }

.miniatura-menu { height: 92px; border-radius: 16px; overflow: hidden; background: var(--fundo-ceu); border: 1px solid var(--vidro-borda-ext); position: relative; padding: 8px; display: flex; gap: 6px; }
.miniatura-menu .mm-lateral { width: 34%; border-radius: 10px; background: var(--vidro-2); box-shadow: var(--vidro-reflexo); padding: 8px 6px; display: grid; align-content: start; gap: 5px; }
.miniatura-menu .mm-lateral i { display: flex; align-items: center; gap: 4px; height: 7px; }
.miniatura-menu .mm-lateral i::before { content: ""; width: 7px; height: 7px; border-radius: 2px; background: var(--destaque); flex: none; }
.miniatura-menu .mm-lateral i::after { content: ""; flex: 1; height: 5px; border-radius: 3px; background: var(--linha-forte); }
.miniatura-menu.estreito .mm-lateral { width: 14%; }
.miniatura-menu.estreito .mm-lateral i::after { display: none; }
.miniatura-menu .mm-corpo { flex: 1; display: grid; grid-template-rows: 14px 1fr; gap: 6px; }
.miniatura-menu .mm-topo { border-radius: 7px; background: var(--vidro-1); box-shadow: var(--vidro-reflexo); position: relative; }
.miniatura-menu .mm-area { border-radius: 9px; background: var(--vidro-2); box-shadow: var(--vidro-reflexo); }
.miniatura-menu.logo .mm-lateral { display: none; }
.miniatura-menu.logo .mm-topo::before { content: ""; position: absolute; left: 4px; top: 3px; width: 8px; height: 8px; border-radius: 3px; background: var(--destaque); }
.miniatura-menu.logo .mm-pop { position: absolute; left: 10px; top: 26px; width: 36%; height: 52px; border-radius: 8px; background: var(--vidro-3); box-shadow: var(--sombra-2); }

.amostras { display: flex; gap: var(--e-3); flex-wrap: wrap; }
.amostra { display: grid; justify-items: center; gap: 8px; padding: 10px 12px; border: 1.5px solid var(--linha); border-radius: var(--r-lg); background: var(--hover); min-width: 92px; color: var(--texto); }
.amostra i { width: 34px; height: 34px; border-radius: 50%; background: var(--destaque); box-shadow: inset 0 1px 0 rgb(255 255 255 / .3), 0 6px 14px -6px var(--destaque-brilho); }
.amostra span { font-size: var(--t-sm); font-weight: 560; }
.amostra[aria-checked="true"] { border-color: var(--destaque-tinta); box-shadow: 0 0 0 3px var(--destaque-suave); }

.situacao-salvo { display: inline-flex; align-items: center; gap: 8px; font-size: var(--t-sm); color: var(--texto-3); min-height: 28px; }
.situacao-salvo svg { width: 16px; height: 16px; }
.situacao-salvo.ok { color: var(--ok); }
.situacao-salvo.erro { color: var(--erro); }

/* ---------- Administração ---------- */
.lista-usuarios { display: grid; gap: var(--e-3); }
.usuario-linha { border-radius: var(--r-xl); }
.usuario-resumo { display: flex; align-items: center; gap: var(--e-4); padding: var(--e-4) var(--e-5); flex-wrap: wrap; }
.usuario-resumo .usuario-nome { flex: 1; min-width: 200px; display: grid; }
.usuario-resumo .usuario-nome b { font-size: var(--t-base); font-weight: 620; }
.usuario-resumo .usuario-nome small { color: var(--texto-3); font-size: var(--t-sm); overflow-wrap: anywhere; }
.usuario-resumo.inativo { opacity: .72; }
.usuario-acessos { border-top: 1px solid var(--linha); padding: var(--e-5); display: grid; gap: var(--e-5); }
.acessos-setores { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.acesso-setor { padding: var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--hover); }
.acesso-setor > header { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.acesso-setor > header b { font-size: var(--t-md); }
.acesso-setor > header small { margin-left: auto; color: var(--texto-3); }
.acesso-setor .marcar small { display: block; }

.catalogo-grade { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); }
.catalogo-item { display: flex; align-items: center; gap: var(--e-3); padding: 10px 12px; border-radius: var(--r-md); }
.catalogo-item + .catalogo-item { border-top: 1px solid var(--linha); }
.catalogo-item span { flex: 1; min-width: 0; display: grid; }
.catalogo-item small { color: var(--texto-3); }
.catalogo-item.inativo span b { color: var(--texto-3); text-decoration: line-through; text-decoration-color: var(--linha-forte); }

.integracao { display: grid; gap: var(--e-4); }
.integracao-cabeca { display: flex; align-items: center; gap: var(--e-3); }
.integracao-cabeca .estado-icone-peq { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: var(--destaque-suave); color: var(--destaque-tinta); }
.integracao-cabeca .estado-icone-peq svg { width: 20px; height: 20px; }
.integracao-cabeca div { flex: 1; }

/* ---------- Em recriação ---------- */
.recriacao { max-width: 760px; margin: var(--e-6) auto; padding: var(--e-8) var(--e-7); border-radius: 32px; display: grid; gap: var(--e-4); justify-items: start; }
.recriacao .estado-icone { display: grid; place-items: center; width: 60px; height: 60px; border-radius: 20px; background: var(--destaque-suave); color: var(--destaque-tinta); }
.recriacao .estado-icone svg { width: 28px; height: 28px; }
.recriacao ul { margin: 0; padding-left: 1.2em; color: var(--texto-2); display: grid; gap: 4px; }

@media (max-width: 900px) {
  .config-layout { grid-template-columns: minmax(0, 1fr); }
  .config-menu { position: static; display: flex; overflow-x: auto; }
  .config-menu a { white-space: nowrap; }
  .acesso-cartao { padding: var(--e-7) var(--e-5) var(--e-6); border-radius: 28px; }
}

/* ---------- RH ---------- */
.lista-materiais { display: grid; gap: 10px; }
.item-material { display: flex; align-items: center; gap: var(--e-4); padding: var(--e-3) var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--hover); flex-wrap: wrap; }
.item-material .tipo-arquivo { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--destaque); color: var(--destaque-texto); font-size: var(--t-2xs); font-weight: 700; letter-spacing: .04em; flex: none; }
.item-material .item-texto { flex: 1; min-width: 220px; }
.item-material h3 { font-size: var(--t-base); }
.item-material p { color: var(--texto-2); font-size: var(--t-sm); }
.item-material small { color: var(--texto-3); }
.ob-layout { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: var(--e-5); align-items: start; }
.ob-pessoas { position: sticky; top: 96px; display: grid; gap: 6px; max-height: calc(100dvh - 120px); overflow: auto; }
.ob-pessoa { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px; border: 1px solid transparent; border-radius: var(--r-md); background: transparent; text-align: left; color: var(--texto); }
.ob-pessoa:hover { background: var(--hover); }
.ob-pessoa.selecionada { background: var(--vidro-solido-2); border-color: var(--linha); box-shadow: 0 1px 2px rgb(13 21 48 / .08); }
[data-theme="dark"] .ob-pessoa.selecionada { background: rgb(255 255 255 / .08); }
.ob-pessoa-texto { flex: 1; min-width: 0; display: grid; gap: 4px; }
.ob-pessoa-texto b { font-size: var(--t-sm); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ob-pessoa-texto small { color: var(--texto-3); font-size: var(--t-xs); }
.ob-pessoa .progresso { height: 5px; }
.anel { --pct: 0deg; width: 82px; height: 82px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--destaque) var(--pct), var(--ativo) 0); flex: none; }
.anel span { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: var(--vidro-solido-2); font-weight: 680; font-variant-numeric: tabular-nums; }
.grade-marcos { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
.ob-marco { padding: var(--e-5); border-radius: var(--r-xl); display: grid; gap: var(--e-3); }
.ob-marco.res-cumprida, .ob-marco.res-concluido { box-shadow: inset 3px 0 0 var(--ok), var(--vidro-reflexo), var(--sombra-1); }
.ob-marco.res-nao_cumprida { box-shadow: inset 3px 0 0 var(--erro), var(--vidro-reflexo), var(--sombra-1); }
.ob-etapa { display: flex; gap: var(--e-4); padding: var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-2); }
.ob-etapa.st-concluida { opacity: .82; }
.ob-check { display: grid; place-items: center; flex: none; width: 30px; height: 30px; border-radius: 10px; border: 1.5px solid var(--linha-forte); background: var(--campo); color: var(--destaque-texto); }
.ob-check.feito { background: var(--ok); border-color: var(--ok); }
.ob-check svg { width: 18px; height: 18px; }
@media (max-width: 980px) { .ob-layout { grid-template-columns: minmax(0, 1fr); } .ob-pessoas { position: static; max-height: none; } }
.ob-pessoas .segmentado { display: grid; grid-template-columns: 1fr 1fr; border-radius: 16px; width: 100%; }
.ob-pessoas .segmentado button { justify-content: center; }

/* ---------- Financeiro ---------- */
.pilha-celula { display: grid; gap: 6px; min-width: 130px; }
.rotulo-celula { display: grid; gap: 3px; font-size: var(--t-xs); color: var(--texto-3); font-weight: 560; }
.entrada-num { min-height: 34px !important; padding: 6px 10px !important; width: 100%; min-width: 92px; font-variant-numeric: tabular-nums; }
.tabela-folha textarea.entrada { min-height: 56px; }
/* Telas de planilha (folha, RPVs, fechamentos, parceiros…): usam a largura toda e rolam na horizontal. */
.conteudo.largura-total { max-width: none; }
.tabela-planilha .tabela td { vertical-align: top; }
.tabela-planilha .entrada { min-height: 34px; padding: 6px 10px; font-size: var(--t-sm); }
.tabela-planilha select.entrada { padding-right: 28px; background-position: right 8px center; }
.tabela-folha .tabela { min-width: 1780px; }
.tabela-folha .tabela td:nth-child(1) { min-width: 250px; }
.tabela-folha .tabela td:nth-child(2) { min-width: 180px; }
.tabela-folha .tabela td:nth-child(3), .tabela-folha .tabela td:nth-child(4), .tabela-folha .tabela td:nth-child(6) { min-width: 110px; }
.tabela-folha .tabela td:nth-child(5), .tabela-folha .tabela td:nth-child(9), .tabela-folha .tabela td:nth-child(10) { min-width: 190px; }
.tabela-folha .tabela td:nth-child(7), .tabela-folha .tabela td:nth-child(8) { min-width: 150px; }
.tabela-folha .tabela td:nth-child(11) { min-width: 140px; }
.tabela-folha .linha select.entrada { flex: 1; min-width: 0; }
.valor-negativo { color: var(--erro); }
.valor-positivo { color: var(--ok); }
.tabela-rpv .tabela { min-width: 1900px; }
.tabela-rpv .tabela td:nth-child(1) { min-width: 260px; }
.tabela-rpv .tabela td:nth-child(2) { min-width: 200px; }
.tabela-rpv .tabela td:nth-child(3) { min-width: 200px; }
.bloco-analista { margin: var(--e-5) 0 var(--e-4); }
.bloco-analista h2 { margin: 4px 0 2px; font-size: var(--t-lg); }
.bloco-analista > p { margin: 0 0 var(--e-3); font-size: var(--t-sm); }
.grade-leitura { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.leitura-cartao { display: flex; gap: 12px; align-items: flex-start; padding: var(--e-4); border-radius: var(--r-lg); }
.leitura-cartao > svg { flex: none; margin-top: 1px; color: var(--info); }
.leitura-cartao.tom-ok > svg { color: var(--ok); }
.leitura-cartao.tom-aviso > svg { color: var(--aviso); }
.leitura-cartao.tom-erro > svg { color: var(--erro); }
.leitura-cartao b { display: block; font-size: var(--t-sm); font-weight: 650; margin-bottom: 2px; }
.leitura-cartao span { color: var(--texto-2); font-size: var(--t-sm); line-height: 1.45; }
/* CAC */
.nota-edicao { margin: 0 0 var(--e-3); font-size: var(--t-sm); }
.tabela-cac { min-width: 860px; }
.tabela-cac td .entrada-num { max-width: 160px; margin-left: auto; display: block; }
.grade-cac { display: grid; gap: var(--e-4); grid-template-columns: minmax(0, 1fr) minmax(260px, 360px); align-items: start; }
.coluna-cac h2 { margin: 4px 0 var(--e-3); font-size: var(--t-lg); }
.lista-contagem { list-style: none; margin: 0; padding: 0; display: grid; }
.lista-contagem li { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid var(--linha); font-size: var(--t-sm); }
.lista-contagem li:last-child { border-bottom: 0; }
.bloco-tabela { margin-top: var(--e-5); }
.tabela-matriz th:not(:first-child) { white-space: normal; min-width: 92px; font-size: var(--t-xs); }
.tabela tfoot td { font-weight: 650; border-top: 1px solid var(--linha-forte); border-bottom: 0; background: var(--hover); font-variant-numeric: tabular-nums; }
.rotulo-em-linha { display: inline-flex; align-items: center; gap: 8px; font-size: var(--t-sm); font-weight: 560; color: var(--texto-2); }
.rotulo-em-linha .entrada { min-height: 38px; width: auto; }
@media (max-width: 980px) { .grade-cac { grid-template-columns: minmax(0, 1fr); } }
.tabela-planilha .tabela-cac td { vertical-align: middle; }
/* Desempenho trimestral */
.grade-periodos { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); }
@media (min-width: 1800px) { .grade-periodos { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.periodo-cartao { display: grid; gap: var(--e-3); padding: var(--e-5); border-radius: var(--r-xl); }
.periodo-cartao header { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.periodo-cartao h2 { margin: 2px 0; font-size: var(--t-lg); }
.periodo-cartao header > div > span { font-size: var(--t-sm); }
.periodo-cartao header .selo { flex: none; }
.periodo-cartao.futuro { opacity: .78; }
.periodo-cartao .taxa { display: flex; align-items: baseline; gap: 10px; }
.periodo-cartao .taxa b { font-size: var(--t-3xl, 2rem); font-weight: 680; letter-spacing: -.02em; }
.periodo-cartao.atingiu .taxa b { color: var(--ok); }
.periodo-cartao.acima .taxa b { color: var(--aviso); }
.trilha-progresso { height: 8px; border-radius: var(--r-pill); background: var(--hover); overflow: hidden; }
.trilha-progresso > i { display: block; height: 100%; border-radius: inherit; background: var(--destaque); transition: width var(--mov-lento); }
.periodo-cartao.atingiu .trilha-progresso > i { background: var(--ok); }
.periodo-cartao.acima .trilha-progresso > i { background: var(--aviso); }
.lista-dados { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; margin: 0; }
.lista-dados dt { font-size: var(--t-xs); color: var(--texto-3); }
.lista-dados dd { margin: 2px 0 0; font-weight: 600; font-variant-numeric: tabular-nums; }
.contas-periodo { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding-top: var(--e-3); border-top: 1px solid var(--linha); }
.contas-periodo span { display: grid; gap: 2px; }
.contas-periodo em { font-style: normal; font-size: var(--t-xs); color: var(--texto-3); }
.nota-rodape { margin-top: var(--e-5); font-size: var(--t-sm); max-width: 110ch; }
/* Metas do setor (Financeiro) */
.grade-destaques { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); margin-bottom: var(--e-4); }
.destaque-cartao { display: grid; gap: 6px; padding: var(--e-5); border-radius: var(--r-xl); }
.destaque-cartao b { font-size: var(--t-3xl); font-weight: 680; letter-spacing: -.02em; }
.destaque-cartao span { display: inline-flex; gap: 6px; align-items: center; color: var(--texto-2); font-size: var(--t-sm); }
.destaque-cartao.tom-ok span { color: var(--ok); }
.destaque-cartao.tom-aviso span { color: var(--aviso); }
.grade-contas { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); margin-bottom: var(--e-4); }
.conta-cartao { display: grid; gap: var(--e-2); padding: var(--e-5); border-radius: var(--r-xl); align-content: start; }
.conta-cartao.consolidado { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--destaque-tinta) 45%, transparent), var(--sombra-1, none); }
.conta-topo { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.conta-cartao h2 { font-size: var(--t-3xl); margin: 0; letter-spacing: -.02em; }
.conta-cartao p { margin: 0; font-size: var(--t-sm); }
.grade-regras { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); margin-bottom: var(--e-4); }
.regra-cartao { display: grid; gap: var(--e-3); padding: var(--e-5); border-radius: var(--r-xl); align-content: start; }
.regra-cartao p { margin: 0; font-size: var(--t-sm); }
.regra-topo { display: flex; gap: 12px; align-items: flex-start; }
.regra-topo h3 { margin: 2px 0 0; font-size: var(--t-md); }
.regra-check { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--hover); color: var(--texto-3); }
.regra-cartao.ok .regra-check { background: var(--ok-fundo); color: var(--ok); }
.grade-premios { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); }
.grade-premios .cartao { display: grid; gap: var(--e-3); align-content: start; }
.grade-premios p { margin: 0; font-size: var(--t-sm); }
.valor-premio { font-size: var(--t-2xl); margin: 0; letter-spacing: -.02em; }
.resumo-progresso { display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.resumo-progresso b { font-size: var(--t-xl); }
.lista-marcos { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.marco { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: var(--r-md); background: var(--hover); color: var(--texto-2); font-size: var(--t-sm); }
.marco > span:first-of-type { flex: 1; }
.marco.feito { background: var(--ok-fundo); color: var(--ok); }
.marco svg { flex: none; }
/* Inadimplência */
.painel { display: grid; gap: var(--e-3); }
.painel + .painel, .abas + .painel, .painel + section, .grade-metricas + .painel, .grade-providencias + .painel { margin-top: var(--e-4); }
.painel h2 { font-size: var(--t-lg); margin: 0; }
.painel-topo { display: flex; align-items: center; gap: var(--e-3); flex-wrap: wrap; }
.painel-topo h2 { margin-right: auto; }
.painel-topo .entrada { width: auto; min-width: 200px; }
.painel-info { margin: 0; font-size: var(--t-sm); }
.vazio-painel { margin: 0; padding: var(--e-6) var(--e-4); text-align: center; color: var(--texto-3); }
.destaque-aviso { box-shadow: inset 3px 0 0 var(--aviso), var(--sombra-1); }
.progresso-rotina { display: flex; flex-wrap: wrap; gap: 8px; }
.progresso-rotina span { padding: 6px 12px; border-radius: var(--r-pill); background: var(--hover); font-size: var(--t-sm); color: var(--texto-2); }
.progresso-rotina b { font-variant-numeric: tabular-nums; }
.texto-aviso { color: var(--aviso) !important; }
.texto-ok { color: var(--ok) !important; }
.lista-clientes { display: grid; gap: var(--e-2); }
.rotina-item { display: grid; gap: 6px; }
.rotina-topo { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: var(--t-xs); color: var(--texto-3); padding: 0 4px; }
.rotina-topo .selo { margin-left: auto; }
.cliente-cartao { border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); overflow: hidden; }
.cliente-cartao.aberto { border-color: color-mix(in srgb, var(--destaque-tinta) 40%, var(--linha)); box-shadow: var(--sombra-1); }
.cliente-linha { all: unset; box-sizing: border-box; width: 100%; cursor: pointer; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, .8fr) 20px; gap: var(--e-3); align-items: center; padding: 12px var(--e-4); }
.cliente-linha:hover { background: var(--hover); }
.cliente-linha:focus-visible { box-shadow: inset var(--foco); }
.cliente-linha > div { display: grid; gap: 2px; min-width: 0; }
.cliente-linha b { overflow-wrap: anywhere; }
.cliente-linha small { color: var(--texto-3); font-size: var(--t-xs); }
.cliente-linha .selos { display: flex; flex-wrap: wrap; gap: 6px; }
.cliente-linha .seta-expandir { width: 18px; height: 18px; color: var(--texto-3); transition: transform var(--mov); }
.cliente-linha[aria-expanded="true"] .seta-expandir { transform: rotate(180deg); }
.selo.prov-rpv { background: var(--info-fundo, var(--ativo)); color: var(--info); }
.selo.prov-execucao { background: var(--aviso-fundo); color: var(--aviso); }
.selo.prov-cobranca { background: var(--erro-fundo); color: var(--erro); }
.cliente-detalhe { display: grid; gap: var(--e-4); grid-template-columns: repeat(2, minmax(0, 1fr)); padding: var(--e-4); border-top: 1px solid var(--linha); background: var(--hover); }
.bloco-detalhe { display: grid; gap: var(--e-2); align-content: start; }
.bloco-detalhe.largo { grid-column: 1 / -1; }
.bloco-detalhe h3 { margin: 0; font-size: var(--t-md); }
.bloco-detalhe p { margin: 0; font-size: var(--t-sm); }
.bloco-detalhe > .botao { justify-self: start; }
.lista-contatos { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: var(--t-sm); }
.lista-contatos li { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; padding: 6px 0; border-bottom: 1px solid var(--linha); }
.lista-contatos small { color: var(--texto-3); }
.debito-grade { display: grid; gap: var(--e-2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 170px), 1fr)); }
.debito-grade span { display: grid; gap: 2px; padding: 10px 12px; border-radius: var(--r-md); background: var(--vidro-solido-2); border: 1px solid var(--linha); }
.debito-grade small { font-size: var(--t-xs); color: var(--texto-3); }
.debito-grade em { font-style: normal; font-size: var(--t-xs); color: var(--texto-3); }
.debito-grade .represado { border-color: color-mix(in srgb, var(--aviso) 45%, transparent); }
.debito-grade .total { border-color: color-mix(in srgb, var(--destaque-tinta) 45%, transparent); }
.recuperar-linha { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.recuperar-linha .entrada { width: auto; min-height: 36px; padding: 6px 10px; }
.recuperar-linha select.entrada { padding-right: 30px; }
.recuperar-linha input:not([type]) { flex: 1; min-width: 180px; }
.grade-providencias { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); margin-top: var(--e-4); }
.grade-providencias .metrica-cartao { text-align: left; cursor: pointer; }
.grade-providencias .metrica-cartao[aria-pressed="true"] { box-shadow: inset 0 0 0 2px var(--destaque-tinta), var(--sombra-1); }
.tabela tr.linha-ativa td { background: var(--ativo); }
.tabela small.em-linha { display: inline; }
@media (max-width: 860px) {
  .cliente-linha { grid-template-columns: minmax(0, 1fr) auto; }
  .cliente-linha > div:nth-child(3), .cliente-linha > div:nth-child(4) { grid-column: 1 / -1; }
  .cliente-linha .seta-expandir { grid-row: 1; grid-column: 2; }
  .cliente-detalhe { grid-template-columns: minmax(0, 1fr); }
}
/* Implantações INSS */
.contagem-grande { margin-left: auto; font-size: var(--t-2xl); font-weight: 680; font-variant-numeric: tabular-nums; color: var(--destaque-tinta); }
.tabela-implantacoes { min-width: 1200px; }
.tabela-implantacoes td { vertical-align: middle; }
.tabela-implantacoes .acoes-linha { justify-content: flex-start; flex-wrap: nowrap; }
.tabela-implantacoes td:first-child { min-width: 220px; }
.tabela-implantacoes td { white-space: nowrap; }
.tabela-implantacoes td:first-child, .tabela-implantacoes td:nth-child(3) { white-space: normal; }
.tabela .num-esquerda { font-variant-numeric: tabular-nums; white-space: nowrap; }
.lista-pendencias { display: grid; gap: var(--e-2); }
.pendencia { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) auto auto; gap: var(--e-3); align-items: center; padding: 12px var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.pendencia > div { display: grid; gap: 2px; min-width: 0; }
.pendencia small { color: var(--texto-3); font-size: var(--t-xs); }
.pendencia strong { color: var(--erro); font-size: var(--t-sm); }
.bloco-extensao { display: flex; flex-wrap: wrap; gap: var(--e-4); align-items: center; justify-content: space-between; padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); border: 1px solid var(--linha); }
.bloco-extensao h2 { margin: 2px 0 6px; font-size: var(--t-lg); }
.bloco-extensao p { margin: 0; font-size: var(--t-sm); }
.resumo-importacao { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: var(--e-3); }
.resumo-importacao span { padding: 6px 12px; border-radius: var(--r-pill); background: var(--hover); font-size: var(--t-sm); }
.tabela-importacao { max-height: 55vh; }
.tabela-importacao .entrada { min-height: 34px; padding: 6px 30px 6px 10px; font-size: var(--t-sm); }
.tabela tr.linha-invalida td { background: color-mix(in srgb, var(--erro-fundo) 70%, transparent); }
@media (max-width: 860px) { .pendencia { grid-template-columns: minmax(0, 1fr); } }
/* Ticket por tipo de ação */
.grade-escopos { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); margin-bottom: var(--e-4); }
.escopo-cartao { font: inherit; color: inherit; text-align: left; cursor: pointer; display: grid; gap: 4px; padding: var(--e-4) var(--e-5); border-radius: var(--r-xl); }
.escopo-cartao:focus-visible { box-shadow: var(--foco); }
.escopo-cartao[aria-pressed="true"] { box-shadow: inset 0 0 0 2px var(--destaque-tinta), var(--sombra-1); }
.escopo-cartao b { font-size: var(--t-lg); }
.escopo-cartao strong { font-size: var(--t-2xl); font-weight: 680; letter-spacing: -.02em; }
.escopo-cartao span { font-size: var(--t-sm); color: var(--texto-3); }
.grade-evolucao { display: grid; gap: var(--e-5); grid-template-columns: minmax(0, 1.7fr) minmax(260px, 1fr); align-items: start; }
.acoes-ano { display: grid; gap: var(--e-3); padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); }
.acoes-ano-topo { display: flex; justify-content: space-between; gap: 8px; font-size: var(--t-sm); }
.tabela tr.linha-pendente td { color: var(--aviso); }
.pendencia.classificar { grid-template-columns: minmax(0, 1fr) minmax(200px, 280px) auto; }
@media (max-width: 1100px) { .grade-evolucao { grid-template-columns: minmax(0, 1fr); } }
/* Pagamento de parceiros */
.parceiros-area.atualizando { opacity: .55; pointer-events: none; transition: opacity var(--mov); }
.parceiros-layout { display: grid; gap: var(--e-5); grid-template-columns: 270px minmax(0, 1fr); align-items: start; }
.parceiros-lista { position: sticky; top: 92px; display: grid; gap: var(--e-2); max-height: calc(100dvh - 112px); overflow: auto; padding: var(--e-3); border-radius: var(--r-xl); background: var(--vidro-2); border: 1px solid var(--linha); }
.parceiros-itens { display: grid; gap: 2px; }
.parceiro-item { display: flex; align-items: center; gap: 2px; border-radius: var(--r-md); }
.parceiro-item.ativo { background: var(--ativo); }
.parceiro-escolher { flex: 1; min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px; border: 0; border-radius: var(--r-md); background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.parceiro-escolher:hover { background: var(--hover); }
.parceiro-escolher:focus-visible { box-shadow: var(--foco); outline: none; }
.parceiro-texto { display: grid; min-width: 0; }
.parceiro-texto b { font-size: var(--t-sm); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.parceiro-texto small { font-size: var(--t-xs); color: var(--texto-3); }
.parceiro-escolher strong { font-size: var(--t-xs); font-variant-numeric: tabular-nums; white-space: nowrap; }
.parceiros-trabalho { display: grid; gap: var(--e-4); min-width: 0; }
.trabalho-topo { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--e-3); flex-wrap: wrap; }
.trabalho-topo h2 { font-size: var(--t-2xl); margin: 2px 0; letter-spacing: -.02em; }
.trabalho-topo p { margin: 0; }
.faixa-mes { margin: 0; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); }
.campo-faixa { cursor: text; }
.com-sufixo { display: flex; align-items: center; gap: 6px; }
.com-sufixo i { font-style: normal; color: var(--texto-3); font-size: var(--t-sm); white-space: nowrap; }
.com-sufixo .entrada { flex: 1; min-width: 0; }
.grade-calculo { display: grid; gap: var(--e-4); grid-template-columns: minmax(0, 1.5fr) minmax(280px, 1fr); align-items: start; }
.grade-detalhes { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); align-items: start; }
.cartao-topo { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--e-3); margin-bottom: var(--e-3); }
.cartao-topo h3 { margin: 2px 0 0; font-size: var(--t-lg); }
.cartao-base { display: grid; gap: var(--e-4); }
.cartao-base .grade-formulario { grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.link-acao { display: inline-flex; align-items: center; gap: 4px; border: 0; padding: 2px 0; background: none; color: var(--destaque-tinta); font: inherit; font-size: var(--t-sm); font-weight: 600; cursor: pointer; }
.link-acao:hover { text-decoration: underline; }
.link-acao:focus-visible { box-shadow: var(--foco); border-radius: 4px; outline: none; }
.linha-regras { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); align-items: end; padding-top: var(--e-3); border-top: 1px solid var(--linha); }
.bloco-indicacoes { display: grid; gap: var(--e-3); padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); }
.indicacao { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px var(--e-3); align-items: end; padding-bottom: var(--e-3); border-bottom: 1px solid var(--linha); }
.indicacao > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; grid-column: 1 / -1; order: 3; font-size: var(--t-sm); }
.indicacao > div .etiqueta { font-size: var(--t-2xs, .6875rem); }
.indicacao strong { font-size: var(--t-lg); color: var(--ok); font-variant-numeric: tabular-nums; white-space: nowrap; }
.faixas-ajuda { display: flex; flex-wrap: wrap; gap: 6px; }
.faixas-ajuda span { display: inline-flex; gap: 6px; padding: 4px 10px; border-radius: var(--r-pill); background: var(--vidro-solido-2); border: 1px solid var(--linha); font-size: var(--t-xs); color: var(--texto-2); }
.cartao-recibo { display: grid; gap: var(--e-3); align-content: start; }
.cartao-recibo h3 { margin: 0; font-size: var(--t-lg); }
.linhas-recibo { display: grid; }
.linha-recibo { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px dashed var(--linha); font-size: var(--t-sm); }
.linha-recibo b { font-variant-numeric: tabular-nums; white-space: nowrap; }
.linha-recibo.menos b { color: var(--erro); }
.linha-recibo.liquido { border-bottom-style: solid; font-weight: 650; }
.linha-recibo.total { border: 0; margin-top: 6px; padding: 12px; border-radius: var(--r-md); background: var(--destaque); color: var(--destaque-texto); font-size: var(--t-md); }
.total-recibo { display: grid; gap: 2px; padding: var(--e-4); border-radius: var(--r-lg); background: var(--destaque-suave); }
.total-recibo strong { font-size: var(--t-3xl); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.total-recibo span { font-size: var(--t-xs); color: var(--texto-3); }
.botao.repasse-pago { --b-fundo: var(--ok-fundo); --b-texto: var(--ok); --b-borda: transparent; }
.legenda-tipos { display: flex; gap: 6px; }
.zona-arquivo { display: grid; justify-items: center; gap: 6px; padding: var(--e-6) var(--e-4); border: 1.5px dashed var(--linha-forte); border-radius: var(--r-lg); background: var(--hover); text-align: center; cursor: pointer; }
.zona-arquivo:hover { border-color: var(--destaque-tinta); }
.zona-arquivo:focus-within { box-shadow: var(--foco); }
.zona-arquivo svg { width: 28px; height: 28px; color: var(--destaque-tinta); }
.zona-arquivo small { color: var(--texto-3); }
.previa-deducao { display: flex; justify-content: space-between; gap: 10px; padding: 10px 14px; border-radius: var(--r-md); background: var(--destaque-suave); font-size: var(--t-sm); }
.contas-sync { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.conta-sync { display: grid; grid-template-columns: auto auto minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: var(--e-3); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.conta-sync label { display: grid; gap: 2px; }
.conta-sync .entrada { min-height: 34px; padding: 6px 10px; }
.marca-asaas { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #1d4fd8; color: #fff; font-weight: 800; }
.tabela-sync { max-height: 50vh; }
.tabela-sync .entrada { min-height: 34px; padding: 6px 30px 6px 10px; font-size: var(--t-sm); min-width: 180px; }
.tabela tr.linha-pendente-fundo td { background: color-mix(in srgb, var(--aviso-fundo) 70%, transparent); }
.tabela td small.texto-aviso, .tabela td small.texto-ok { display: block; }
.tabela-relatorio { min-width: 1100px; }
.tabela-relatorio td:first-child { white-space: nowrap; }
.relatorio-parceiros .grade-metricas { grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); margin-bottom: 0; }
.relatorio-impresso { display: grid; gap: 14px; color: #111; }
.relatorio-impresso h1 { font-size: 22px; margin: 2px 0; }
.relatorio-impresso h2 { font-size: 15px; margin: 10px 0 0; }
.relatorio-topo { display: flex; justify-content: space-between; gap: 20px; border-bottom: 3px solid #10183d; padding-bottom: 12px; }
.calculo-impresso { margin-left: auto; width: min(460px, 100%); }
@media (max-width: 1180px) {
  .parceiros-layout { grid-template-columns: minmax(0, 1fr); }
  .parceiros-lista { position: static; max-height: none; }
  .parceiros-itens { display: flex; overflow-x: auto; gap: 6px; padding-bottom: 4px; }
  .parceiro-item { flex: none; border: 1px solid var(--linha); }
  .grade-calculo { grid-template-columns: minmax(0, 1fr); }
}
.parametros-mes { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-3) var(--e-5); padding: var(--e-3) var(--e-5); border-radius: var(--r-xl); }
.parametros-mes label { display: inline-flex; align-items: center; gap: 10px; font-size: var(--t-sm); font-weight: 560; color: var(--texto-2); }
.parametros-mes .entrada { width: 120px; min-height: 36px; padding: 6px 10px; }
.parceiros-trabalho .grade-leitura { grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
.parceiros-trabalho .bloco-analista { margin: 0; }
/* Comercial → Fechamentos */
.fechamentos-area.atualizando { opacity: .55; pointer-events: none; transition: opacity var(--mov); }
.semanas { flex-wrap: wrap; margin: var(--e-4) 0 0; }
.semanas .contagem { margin-left: 6px; font-variant-numeric: tabular-nums; opacity: .75; }
.tabela-fechamentos .tabela { min-width: 1500px; }
.tabela-fechamentos td:nth-child(2) { min-width: 130px; }
.tabela-fechamentos td:nth-child(3) { min-width: 240px; }
.tabela-fechamentos td:nth-child(4), .tabela-fechamentos td:nth-child(5) { min-width: 180px; }
.tabela-fechamentos td:nth-child(6) { min-width: 200px; }
.tabela-fechamentos td:nth-child(9), .tabela-fechamentos td:nth-child(10) { min-width: 96px; }
.tabela-fechamentos tr.sem-tarefa td { background: color-mix(in srgb, var(--erro-fundo) 55%, transparent); }
.tabela-fechamentos tr.cliente-duplicado td:nth-child(3) .entrada { border-color: var(--aviso); }
.tabela-fechamentos tr.transportado td:first-child { box-shadow: inset 3px 0 0 var(--aviso); }
.entrada.campo-faltando { border-color: color-mix(in srgb, var(--erro) 55%, var(--campo-borda)); }
.entrada.valor-sim { color: var(--ok); font-weight: 650; background-color: var(--ok-fundo); }
.entrada.valor-nao { color: var(--erro); font-weight: 650; background-color: var(--erro-fundo); }
.semana-selo { font-variant-numeric: tabular-nums; }
.grade-analise-comercial { display: grid; gap: var(--e-4); grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(220px, 1fr)); align-items: start; margin-top: var(--e-5); }
.grade-analise-comercial .bloco-analista { margin: 0; }
.grade-analise-comercial .grade-leitura { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.pendencia.revisao { grid-template-columns: minmax(0, 1fr) auto auto; }
.historico-detalhes { margin-top: var(--e-4); }
.historico-detalhes > summary { cursor: pointer; list-style: none; }
.historico-detalhes > summary::-webkit-details-marker { display: none; }
.historico-detalhes h2 { margin: 2px 0; font-size: var(--t-lg); }
.historico-lista { display: grid; gap: 6px; margin-top: var(--e-3); max-height: 520px; overflow: auto; }
.historico-item { display: flex; justify-content: space-between; gap: var(--e-3); padding: 8px 0; border-bottom: 1px solid var(--linha); font-size: var(--t-sm); }
.historico-item > div { display: grid; gap: 2px; }
.historico-item span { color: var(--texto-2); }
@media (max-width: 1100px) { .grade-analise-comercial { grid-template-columns: minmax(0, 1fr); } }
/* Comercial → Leads */
.grade-contagens { grid-template-columns: repeat(auto-fill, minmax(min(100%, 170px), 1fr)); }
.lancamento-dia .grade-formulario .largo-2 { grid-column: span 2; }
.linha-salvar { display: flex; justify-content: flex-end; align-items: center; gap: var(--e-4); }
.metricas-compactas-leads { grid-template-columns: repeat(auto-fill, minmax(min(100%, 160px), 1fr)); margin: 0; }
.metricas-compactas-leads .metrica-cartao b { font-size: var(--t-xl); }
.notas-mes { grid-column: span 2; }
.notas-mes span { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.explicacao summary { cursor: pointer; font-weight: 600; }
.explicacao[open] summary { margin-bottom: var(--e-2); }
.tabela tr.linha-total td { background: var(--hover); font-weight: 650; }
.grade-dias { display: grid; gap: 6px; grid-template-columns: repeat(auto-fill, minmax(76px, 1fr)); }
.dia-lead { display: grid; justify-items: center; gap: 1px; padding: 8px 4px; border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); color: var(--texto-3); font: inherit; cursor: pointer; }
.dia-lead b { font-size: var(--t-xs); }
.dia-lead strong { font-size: var(--t-lg); color: var(--texto-2); font-variant-numeric: tabular-nums; }
.dia-lead small { font-size: var(--t-2xs); }
.dia-lead.preenchido { border-color: color-mix(in srgb, var(--ok) 45%, var(--linha)); background: var(--ok-fundo); }
.dia-lead.preenchido strong { color: var(--ok); }
.dia-lead.selecionado { box-shadow: inset 0 0 0 2px var(--destaque-tinta); }
.dia-lead:focus-visible { box-shadow: var(--foco); outline: none; }
.pilha-celula small { display: inline-flex; align-items: center; gap: 4px; }
.pilha-celula small svg { flex: none; }
.grade-tres { grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); margin-top: var(--e-4); }
.filtros-meta select.entrada { min-width: 150px; max-width: 240px; }
/* Comercial → Controle individual */
.regras-closer { display: grid; gap: var(--e-3) var(--e-5); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); margin: var(--e-4) 0; }
.regras-closer > div { display: grid; gap: 2px; font-size: var(--t-sm); }
.tabela-closer .tabela { min-width: 2100px; }
.tabela-closer td:first-child { min-width: 230px; }
.tabela-closer td:nth-child(3), .tabela-closer td:nth-child(8) { min-width: 180px; }
.tabela-closer td:nth-child(4), .tabela-closer td:nth-child(7), .tabela-closer td:nth-child(14) { min-width: 170px; }
.tabela-closer td:nth-child(10) { min-width: 64px; }
.tabela-closer td:nth-child(13) { min-width: 230px; }
.tabela-closer tr.transportado td:first-child { box-shadow: inset 3px 0 0 var(--aviso); }
.entrada.valor-bonus { color: var(--info); font-weight: 650; background-color: var(--info-fundo); }
.lancamento-dia .grade-formulario { align-items: start; }
.cartao + .grade-metricas, .cartao + .metricas-compactas { margin-top: var(--e-4); }
.metricas-sete .grade-metricas { grid-template-columns: repeat(auto-fit, minmax(min(100%, 135px), 1fr)); margin-bottom: var(--e-3); }
.proximo-patamar { display: grid; gap: 6px; margin-bottom: var(--e-4); font-size: var(--t-sm); }
.proximo-patamar .trilha-progresso > i { background: var(--grafico-1); }
/* Resultados (Jurídico e Administrativo) */
.tabela-resultados { min-width: 860px; }
.tabela-resultados .entrada-num { max-width: 120px; margin-left: auto; display: block; }
.tabela-planilha .tabela-resultados td { vertical-align: middle; }
.faixa-sync { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-3) var(--e-5); margin-top: var(--e-4); font-size: var(--t-sm); }
.faixa-sync > div { display: grid; gap: 2px; margin-right: auto; }
.barra-ferramentas .entrada.campo-meta { flex: none; width: 90px; min-width: 0; }
/* Jurídico → Produtividade */
.regra-competencia { display: grid; gap: var(--e-4); grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); align-items: center; margin-bottom: var(--e-4); }
.regra-competencia h2 { margin: 2px 0 4px; font-size: var(--t-xl); }
.regra-competencia p { margin: 0; font-size: var(--t-sm); }
.grade-produtividade { display: grid; gap: var(--e-4); grid-template-columns: minmax(0, 1fr) minmax(260px, 320px); align-items: start; }
.matriz-semanas td:first-child { min-width: 240px; }
.fluxo-tarefas { display: grid; gap: var(--e-3); padding-top: var(--e-4); border-top: 1px solid var(--linha); }
.fluxo-tarefas h3 { margin: 2px 0; font-size: var(--t-md); }
.estoques { display: flex; gap: var(--e-3); flex-wrap: wrap; }
.estoques > div { display: grid; gap: 2px; padding: 10px 14px; border-radius: var(--r-md); background: var(--hover); min-width: 170px; }
.estoques b { font-size: var(--t-2xl); font-variant-numeric: tabular-nums; }
.estoques small { font-size: var(--t-xs); }
.bonus-estagio { display: grid; gap: var(--e-3); padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); }
.bonus-estagio h3 { margin: 2px 0; font-size: var(--t-2xl); }
.contagem-bonus { display: grid; justify-items: end; }
.contagem-bonus b { font-size: var(--t-3xl); font-variant-numeric: tabular-nums; }
.ranking-mensal ol { list-style: none; margin: var(--e-3) 0 0; padding: 0; display: grid; gap: 6px; }
.ranking-mensal li { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 10px; border-radius: var(--r-md); background: var(--hover); }
.ranking-mensal li.atingiu { background: var(--ok-fundo); }
.ranking-mensal li > span:nth-child(2) { display: grid; min-width: 0; }
.ranking-mensal li small { font-size: var(--t-xs); color: var(--texto-3); }
.ranking-mensal li strong { font-variant-numeric: tabular-nums; text-align: center; }
.ranking-mensal h2 { margin: 2px 0 0; font-size: var(--t-lg); }
.lista-pesos { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.lista-pesos li { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--e-3); align-items: center; padding: 8px 12px; border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); font-size: var(--t-sm); }
.lista-pesos li.inativo { opacity: .55; }
@media (max-width: 1100px) { .grade-produtividade, .regra-competencia { grid-template-columns: minmax(0, 1fr); } }
/* Jurídico → Metas de distribuição */
.grade-ciclos { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
.ciclo-cartao { display: grid; gap: var(--e-3); padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); border: 1px solid var(--linha); }
.ciclo-cartao b { font-size: var(--t-2xl); }
.ciclo-cartao b i { font-style: normal; font-size: var(--t-sm); color: var(--texto-3); font-weight: 500; }
.ciclo-cartao strong { font-size: var(--t-xl); }
.ciclo-cartao p { margin: 0; display: inline-flex; align-items: center; gap: 4px; font-size: var(--t-sm); }
.ciclo-cartao.feito { border-color: color-mix(in srgb, var(--ok) 45%, var(--linha)); }
.ciclo-cartao.feito .trilha-progresso > i { background: var(--ok); }
/* Analista de Casos */
.tabela-casos { min-width: 1100px; }
.tabela-casos td { vertical-align: top; }
.tabela-casos td:nth-child(5), .tabela-casos td:nth-child(6), .tabela-casos td:nth-child(7) { max-width: 240px; font-size: var(--t-sm); }
.tabela-casos select.entrada { min-height: 34px; padding: 6px 30px 6px 10px; font-size: var(--t-sm); min-width: 190px; }
.tabela tr.linha-atrasada td { background: color-mix(in srgb, var(--erro-fundo) 55%, transparent); }
select.entrada.situacao-ok { color: var(--ok); font-weight: 600; }
select.entrada.situacao-erro { color: var(--erro); font-weight: 600; }
select.entrada.situacao-aviso { color: var(--aviso); font-weight: 600; }
select.entrada.situacao-info { color: var(--info); font-weight: 600; }
/* Gestão → Ajustes do Jurídico */
.filtros-pessoas { flex-wrap: wrap; margin-bottom: var(--e-4); }
.filtros-pessoas .contagem { margin-left: 6px; opacity: .75; font-variant-numeric: tabular-nums; }
.grade-categorias { display: flex; flex-wrap: wrap; gap: 6px; }
.grade-categorias button { padding: 6px 12px; border-radius: var(--r-pill); border: 1px solid var(--linha); background: var(--vidro-solido-2); color: var(--texto-2); font: inherit; font-size: var(--t-sm); cursor: pointer; }
.grade-categorias button[aria-pressed="true"] { background: var(--destaque); color: var(--destaque-texto); border-color: transparent; }
.grade-categorias button:focus-visible { box-shadow: var(--foco); outline: none; }
/* Administrativo → Produtividade */
.faixa-concessao { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--e-3); margin-bottom: var(--e-4); }
.faixa-concessao > div { display: grid; gap: 2px; }
.faixa-concessao b { font-size: var(--t-2xl); }
.faixa-concessao.atingiu { box-shadow: inset 3px 0 0 var(--ok), var(--sombra-1); }
.painel-pessoa h2 { margin: 2px 0; font-size: var(--t-xl); }
.painel-pessoa .painel-topo p { margin: 0; font-size: var(--t-sm); }
.meta-geral { display: grid; justify-items: end; }
.meta-geral b { font-size: var(--t-3xl); }
.bloco-producao { display: grid; gap: var(--e-2); align-content: start; padding: var(--e-4); border-radius: var(--r-lg); background: var(--hover); }
.bloco-producao h3 { margin: 0; font-size: var(--t-md); }
.bloco-producao p { margin: 0; font-size: var(--t-sm); }
.numero-grande { font-size: var(--t-3xl); font-weight: 680; font-variant-numeric: tabular-nums; }
.progresso-meta { display: grid; gap: 4px; font-size: var(--t-sm); }
.controle-semanal { display: grid; gap: var(--e-2); }
.controle-semanal h3 { margin: 0; font-size: var(--t-md); }
.semana-linha { display: grid; grid-template-columns: minmax(170px, 1.2fr) repeat(3, minmax(110px, 1fr)) auto; gap: var(--e-3); align-items: end; padding: 10px 12px; border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); }
.semana-linha > div { display: grid; gap: 2px; }
.semana-linha .campo > span { font-size: var(--t-xs); }
.premiacao { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--e-4); padding: var(--e-4); border-radius: var(--r-lg); background: var(--destaque-suave); }
.premiacao h3 { margin: 2px 0; }
.premiacao ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: var(--t-sm); }
.premiacao li { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
@media (max-width: 860px) { .semana-linha { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Administrativo → Represados */
.represado-linha { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1.6fr) 20px; }
.represado-linha small { font-size: var(--t-2xs); letter-spacing: .06em; }
.represado-detalhe { grid-template-columns: minmax(0, 1fr); }
.grade-formulario.largo-total { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); }
.cliente-cartao.arquivado { opacity: .8; }
/* Administrativo → Bônus da liderança */
.painel-meta { display: grid; gap: var(--e-4); }
.painel-meta h2 { margin: 2px 0 0; font-size: var(--t-lg); }
.painel-meta.feito { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--ok) 50%, transparent), var(--sombra-1); }
.barra-meta { display: grid; gap: 6px; font-size: var(--t-sm); }
.barra-meta.atingida .trilha-progresso > i { background: var(--ok); }
/* Controladoria → Bonificação */
.coluna-lateral { display: grid; gap: var(--e-4); align-content: start; }
.coluna-lateral .estoques > div { min-width: 0; flex: 1 1 120px; }
.coluna-lateral .estoques b { font-size: var(--t-lg); }
.coluna-lateral .grade-ciclos { grid-template-columns: minmax(0, 1fr); }
.criterio { padding: 10px 12px; border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); }
.criterio small { display: block; color: var(--texto-3); font-size: var(--t-xs); }
.criterios { margin-top: var(--e-3); }
.metricas-sete .metrica-cartao b { font-size: var(--t-xl); }
/* Recepção */
.grade-recepcao { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); margin-bottom: var(--e-4); }
.grade-recepcao.unica { grid-template-columns: minmax(0, 1fr); }
.cartao-recepcionista h2 { margin: 2px 0 0; font-size: var(--t-lg); }
.barra-meta .painel-topo strong { margin-left: auto; }
.form-indicacao { grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr)); align-items: end; padding: var(--e-3); border-radius: var(--r-lg); background: var(--hover); }
.tabela th.coluna-ativa, .tabela td.coluna-ativa { background: var(--ativo); }
.tabela tr.linha-ganha td { background: color-mix(in srgb, var(--ok-fundo) 70%, transparent); }
/* Gestão → Metas dos times */
.grade-metas-times { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); margin-bottom: var(--e-4); }
.grade-metas-times h2 { margin: 0; font-size: var(--t-lg); }
.grade-metas-times h3 { margin: 0; font-size: var(--t-md); }
.ponto-serie { flex: none; width: 10px; height: 10px; border-radius: 50%; }
.tabela-meses td:first-child { min-width: 220px; }
.celula-mes b, .celula-mes small { display: block; }
.celula-mes.mes-ok b { color: var(--ok); }
.celula-mes.mes-abaixo b { color: var(--aviso); }
.linha-ciclo { display: grid; gap: 4px; padding-top: var(--e-2); border-top: 1px dashed var(--linha); }
/* Dentro de grades, o espaço entre cartões vem do gap (vale também para .painel). */
[class*="grade-"] > .painel { margin-top: 0; }
.grade-metas-times .linha { flex-wrap: nowrap; align-items: flex-start !important; }
.grade-metas-times .ponto-serie { margin-top: 5px; }
.tabela-gestao { min-width: 1500px; }
/* Gestão → Atas */
.fontes-audio { margin: var(--e-2) 0; }
.fonte-audio { display: grid; gap: 6px; justify-items: start; padding: var(--e-4); border: 1.5px dashed var(--linha-forte); border-radius: var(--r-lg); background: var(--hover); }
.fonte-audio.zona-arquivo { justify-items: center; text-align: center; }
.fonte-audio.ativo { border-style: solid; border-color: var(--destaque-tinta); background: var(--destaque-suave); }
.historico-atas h2 { margin: 0 0 var(--e-3); font-size: var(--t-lg); }
.lista-atas { display: grid; gap: 4px; max-height: 520px; overflow: auto; }
.item-ata { display: grid; gap: 2px; text-align: left; padding: 8px 10px; border: 0; border-radius: var(--r-md); background: transparent; color: inherit; font: inherit; cursor: pointer; }
.item-ata:hover { background: var(--hover); }
.item-ata.ativo { background: var(--ativo); }
.item-ata span { font-size: var(--t-xs); color: var(--texto-3); }
.item-ata:focus-visible { box-shadow: var(--foco); outline: none; }
.resultado-ata { margin-top: var(--e-4); }
.texto-ata { font-family: var(--fonte-mono, ui-monospace, monospace); font-size: var(--t-sm); line-height: 1.6; min-height: 320px; }
.transcricao { white-space: pre-wrap; font-size: var(--t-sm); max-height: 360px; overflow: auto; padding: var(--e-3); border-radius: var(--r-md); background: var(--hover); }
.ata-impressa { white-space: pre-wrap; font-size: 12px; line-height: 1.6; }
/* TaskScore */
.lista-ranking { list-style: none; margin: var(--e-3) 0 0; padding: 0; display: grid; gap: 6px; }
.linha-ranking { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: var(--e-3); align-items: center; padding: 10px 14px; border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.linha-ranking .posicao { font-size: var(--t-lg); text-align: center; font-variant-numeric: tabular-nums; color: var(--texto-2); }
.linha-ranking.podio .posicao { color: var(--destaque-tinta); }
.linha-ranking.podio-1 { border-color: color-mix(in srgb, #c99a14 55%, var(--linha)); box-shadow: inset 3px 0 0 #c99a14; }
.linha-ranking.podio-2 { box-shadow: inset 3px 0 0 #8c94a6; }
.linha-ranking.podio-3 { box-shadow: inset 3px 0 0 #b0723d; }
.ranking-corpo { display: grid; gap: 4px; min-width: 0; }
.formula-projecao { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-3); }
.formula-projecao span { display: grid; gap: 2px; padding: 10px 14px; border-radius: var(--r-md); background: var(--hover); }
.formula-projecao span.resultado { background: var(--destaque); color: var(--destaque-texto); }
.formula-projecao small { font-size: var(--t-2xs); letter-spacing: .06em; opacity: .8; }
.formula-projecao b { font-size: var(--t-lg); font-variant-numeric: tabular-nums; }
.formula-projecao i { font-style: normal; font-size: var(--t-xl); color: var(--texto-3); }
.historico-meses { display: grid; gap: var(--e-2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 150px), 1fr)); }
.mes-taskscore { display: grid; gap: 6px; padding: 10px 12px; border-radius: var(--r-md); border: 1px solid var(--linha); background: var(--vidro-solido-2); font-size: var(--t-sm); }
.mes-taskscore.pendente { opacity: .7; }
.faixa-periodos { flex-wrap: wrap; margin-bottom: var(--e-3); }
.tabela-taskscore td:first-child { min-width: 230px; }
.edicao-pontos { display: flex; gap: 4px; align-items: center; min-width: 150px; }
.edicao-pontos .entrada-num { min-width: 80px; }
/* D-Coin e D-Shop */
.ficha-d { display: inline-grid; place-items: center; flex: none; width: 18px; height: 18px; border-radius: 50%; background: linear-gradient(135deg, #f3d27a, #b98a1c); color: #3b2a00; font: 800 10px/1 Georgia, "Times New Roman", serif; box-shadow: inset 0 1px 0 rgb(255 255 255 / .45), 0 1px 2px rgb(59 42 0 / .25); }
.moeda-d { display: inline-flex; align-items: center; gap: 6px; font-weight: 650; white-space: nowrap; font-variant-numeric: tabular-nums; }
.moeda-d.positivo { color: var(--ok); }
.moeda-d.negativo { color: var(--erro); }
.botao.ouro { --b-fundo: #f3d27a; --b-texto: #3b2a00; --b-borda: #d9b04a; background-image: linear-gradient(180deg, rgb(255 255 255 / .35), rgb(255 255 255 / 0) 60%); }
.botao.ouro:hover:not(:disabled) { background-color: #ecc55f; }
.botao .ficha-d { width: 16px; height: 16px; font-size: 9px; }
.cartao.faixa-saldo { display: flex; align-items: center; justify-content: space-between; gap: var(--e-4); flex-wrap: wrap; padding: var(--e-5) var(--e-6); background: linear-gradient(135deg, rgb(16 24 61 / .96), rgb(38 55 109 / .92)); color: #fff; border-color: rgb(255 255 255 / .14); }
.faixa-saldo .etiqueta { color: #c8ccd6; }
.faixa-saldo .saldo-d { display: block; margin-top: 6px; font-size: 40px; line-height: 1.1; font-weight: 600; }
.faixa-saldo .saldo-d .moeda-d { gap: 10px; }
.faixa-saldo .saldo-d .ficha-d { width: 32px; height: 32px; font-size: 17px; }
.faixa-saldo p { margin: 6px 0 0; max-width: 560px; color: #cbd0dd; font-size: var(--t-sm); }
.faixa-saldo .botao { --b-fundo: #f3d27a; --b-texto: #3b2a00; --b-borda: transparent; }
.faixa-saldo + * { margin-top: var(--e-4); }
.grade-regras-dcoin { display: grid; gap: var(--e-2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); }
.grade-regras-dcoin article { display: grid; gap: 6px; align-content: start; padding: var(--e-3); border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); }
.grade-regras-dcoin .moeda-d { white-space: normal; }
.grade-regras-dcoin small { font-size: var(--t-xs); line-height: 1.45; }
.gestao-dcoin > * + * { margin-top: var(--e-4); }
.gestao-dcoin > [hidden] + * { margin-top: 0; }
.barra-apuracao { display: flex; align-items: center; gap: var(--e-3); flex-wrap: wrap; }
.previsto-dcoin { display: inline-flex; align-items: center; gap: 8px; font-size: var(--t-md); }
.explicacao-dcoin { font-size: var(--t-sm); color: var(--texto-2); }
.explicacao-dcoin summary { width: fit-content; cursor: pointer; font-weight: 560; color: var(--destaque-tinta); }
.explicacao-dcoin p { margin: var(--e-2) 0 0; max-width: 110ch; line-height: 1.55; }
.tabela-dcoin th, .tabela-dcoin td { white-space: nowrap; }
.tabela-dcoin tbody th { min-width: 190px; white-space: normal; }
/* Tabelas largas da D-Coin: o nome fica fixo à esquerda ao rolar para os campos da direita. */
.tabela-dcoin tbody th, .tabela-dcoin thead th.coluna-nome { position: sticky; left: 0; background-color: var(--vidro-solido); box-shadow: inset -1px 0 0 var(--linha); }
.tabela-dcoin tbody th { z-index: 1; }
.tabela-dcoin thead th.coluna-nome { z-index: 2; }
.tabela-dcoin tbody tr:hover th { background-image: linear-gradient(var(--hover), var(--hover)); }
.tabela-dcoin select.entrada.seletor-vinculo { min-width: 236px; }
.form-dcoin { align-items: end; }
.tabela-dcoin select.entrada { min-width: 168px; min-height: 34px; padding: 4px 30px 4px 10px; font-size: var(--t-sm); }
.tabela-dcoin .entrada-num { width: 92px; min-height: 34px; padding: 4px 8px; font-size: var(--t-sm); }
.tabela-dcoin td small, .tabela-dcoin th small { display: block; margin-top: 2px; color: var(--texto-3); font-size: var(--t-xs); font-weight: 400; white-space: normal; }
.tabela tr.fora > td, .tabela tr.fora > th { color: var(--texto-3); }
.acoes-tabela { text-align: right; white-space: nowrap; }
.acoes-tabela .grupo-botoes { flex-wrap: nowrap; justify-content: flex-end; }
.grade-loja { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
.produto-loja { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.foto-loja { display: grid; place-items: center; aspect-ratio: 4 / 3; background: var(--hover); }
.foto-loja img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sem-foto { color: var(--texto-3); font-size: var(--t-sm); }
.corpo-produto { display: flex; flex: 1; flex-direction: column; gap: var(--e-2); padding: var(--e-4); }
.corpo-produto h3 { margin: 0; font-size: var(--t-lg); }
.corpo-produto p { margin: 0; color: var(--texto-2); font-size: var(--t-sm); line-height: 1.5; white-space: pre-line; overflow-wrap: anywhere; }
.descricao-produto.recolhida { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; line-clamp: 6; overflow: hidden; }
.ver-descricao { justify-self: start; align-self: flex-start; margin-left: -10px; }
.loja-dcoin > * + * { margin-top: var(--e-4); }
.rodape-produto { display: flex; align-items: center; justify-content: space-between; gap: var(--e-2); margin-top: auto; }
.rodape-produto small { color: var(--texto-3); font-size: var(--t-xs); }
.miniatura-produto { display: grid; place-items: center; width: 48px; height: 36px; border-radius: var(--r-sm); background: var(--hover); object-fit: cover; font-size: 0; }
.miniatura-produto.grande { width: 120px; height: 90px; }
.linha-foto { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-3); }
.zona-foto { flex: 1 1 260px; padding: var(--e-4); }
.zona-foto.arrastando { border-color: var(--destaque-tinta); background: var(--destaque-suave); }
.previa-foto { display: flex; align-items: center; gap: var(--e-3); }
.previa-foto:empty { display: none; }
.campo-inicio-taskscore .seletor-competencia { justify-self: start; }
.tabela-produtos td.num { white-space: nowrap; }
.tabela-produtos tbody td:nth-child(2) { min-width: 240px; }
/* Analista Virtual Sênior */
.analista-senior, .detalhe-analista { display: flex; flex-direction: column; gap: var(--e-4); }
.analista-senior > .painel, .detalhe-analista > .painel { margin: 0; }
.form-analista { align-items: end; }
.relatorio-analista h3, .detalhe-analista h3 { margin: 0 0 var(--e-2); font-size: var(--t-md); }
.relatorio-analista p { margin: 0; line-height: 1.6; }
.lead-analista { font-size: var(--t-base); }
.duas-colunas { display: grid; gap: var(--e-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); }
.lista-analise { display: grid; gap: 4px; margin: 0; padding-left: 18px; font-size: var(--t-sm); line-height: 1.5; }
.lista-analise.alertas li::marker { color: var(--erro); }
.grade-graficos { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); }
.cartao-grafico { display: grid; gap: var(--e-2); align-content: start; padding: var(--e-3) var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.cartao-grafico h3 { margin: 0; font-size: var(--t-sm); color: var(--texto-2); }
.cartao-grafico .grafico-area { height: 200px; }
.grade-analises { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.cartao-analise { display: grid; gap: var(--e-2); align-content: start; padding: var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.cartao-analise header { display: flex; align-items: center; justify-content: space-between; gap: var(--e-2); }
.cartao-analise p { margin: 0; font-size: var(--t-sm); line-height: 1.55; }
.cartao-analise h4 { margin: var(--e-1) 0 0; font-size: var(--t-xs); letter-spacing: .06em; text-transform: uppercase; color: var(--texto-3); }
.orientacao-analista { padding: var(--e-2) var(--e-3); border-radius: var(--r-md); background: var(--aviso-fundo); }
.tabela-matriz th.mes { text-align: center; box-shadow: inset 1px 0 0 var(--linha); }
.tabela-matriz th.sub { text-align: center; font-size: 10px; }
.tabela-matriz tbody th, .tabela-matriz thead th.coluna-nome { position: sticky; left: 0; min-width: 200px; background-color: var(--vidro-solido); box-shadow: inset -1px 0 0 var(--linha); }
.tabela-matriz tbody th { z-index: 1; }
.tabela-matriz thead th.coluna-nome { z-index: 2; }
.tabela-matriz tbody th small { display: block; color: var(--texto-3); font-size: var(--t-xs); }
.meta-celula { text-align: center; white-space: nowrap; font-size: var(--t-xs); font-weight: 650; box-shadow: inset 1px 0 0 var(--linha); }
.meta-celula.bom { color: var(--ok); background: var(--ok-fundo); }
.meta-celula.critico { color: var(--erro); background: var(--erro-fundo); }
.meta-celula.pendente { color: var(--texto-2); background: var(--hover); }
.meta-celula.vazia { color: var(--texto-3); }
.tabela tbody tr.selecionada > td, .tabela tbody tr.selecionada > th { background: var(--ativo); }
.conversa-analista { display: flex; flex-direction: column; gap: var(--e-2); max-height: 520px; overflow-y: auto; padding: var(--e-1); border-radius: var(--r-md); }
.conversa-analista:focus-visible { box-shadow: var(--foco); outline: none; }
.balao { max-width: min(80%, 720px); padding: 10px 14px; border-radius: var(--r-lg); font-size: var(--t-sm); line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.balao.usuario { align-self: flex-end; border-bottom-right-radius: 4px; background: var(--destaque); color: var(--destaque-texto); }
.balao.analista { align-self: flex-start; border: 1px solid var(--linha); border-bottom-left-radius: 4px; background: var(--vidro-solido-2); }
.balao.pensando { color: var(--texto-3); font-style: italic; }
.form-pergunta { display: flex; align-items: flex-end; gap: var(--e-3); }
.form-pergunta textarea { flex: 1; min-height: 72px; resize: vertical; }
@media (max-width: 640px) { .form-pergunta { flex-direction: column; align-items: stretch; } .balao { max-width: 92%; } }
.linha-periodo { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2) var(--e-3); }
/* NFS-e */
.filtros-nfse { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); align-items: end; }
.filtros-nfse .campo:last-child { grid-column: span 2; }
@media (max-width: 640px) { .filtros-nfse .campo:last-child { grid-column: auto; } }
.paginacao { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--e-3); }
.definicoes { display: grid; grid-template-columns: minmax(120px, max-content) minmax(0, 1fr); gap: 8px var(--e-4); margin: 0; font-size: var(--t-sm); }
.definicoes dt { color: var(--texto-3); font-weight: 560; }
.definicoes dd { margin: 0; min-width: 0; }
@media (max-width: 560px) { .definicoes { grid-template-columns: 1fr; gap: 2px; } .definicoes dd { margin-bottom: var(--e-2); } }
.chave-fiscal { font-family: var(--fonte-mono, ui-monospace, monospace); font-size: var(--t-xs); overflow-wrap: anywhere; }
.texto-quebrado { white-space: pre-wrap; overflow-wrap: anywhere; }
.detalhe-nota { display: grid; gap: var(--e-3); }
.detalhe-nota h3 { margin: var(--e-2) 0 0; font-size: var(--t-md); }
.cancelar-nota { display: grid; gap: var(--e-3); padding: var(--e-4); border: 1px solid color-mix(in srgb, var(--erro) 35%, var(--linha)); border-radius: var(--r-lg); background: var(--erro-fundo); }
.cancelar-nota h3 { margin: 0; }
.historico-nota { display: grid; gap: var(--e-2); margin: 0; padding: 0; list-style: none; }
.historico-nota li { display: grid; gap: 2px; padding: var(--e-2) var(--e-3); border-left: 3px solid var(--linha-forte); border-radius: 0 var(--r-md) var(--r-md) 0; background: var(--hover); font-size: var(--t-sm); }
.historico-nota small { color: var(--texto-3); }
.historico-nota p { margin: 2px 0 0; }
.historico-nota a { display: inline-flex; align-items: center; gap: 4px; width: fit-content; }
.grupo-opcional { border-top: 1px solid var(--linha); padding-top: var(--e-3); }
.grupo-opcional summary { cursor: pointer; width: fit-content; font-weight: 600; }
.grupo-opcional[open] summary { margin-bottom: var(--e-3); }
.form-nfse h3 { margin: var(--e-2) 0 0; font-size: var(--t-md); }
.form-nfse .grade-formulario { align-items: end; }
.zona-certificado { padding: var(--e-4); }
/* Jurídico com IA (petições, réplicas e recursos) */
.giro { display: inline-block; flex: none; width: 14px; height: 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; vertical-align: -2px; animation: girar .8s linear infinite; }
@media (prefers-reduced-motion: reduce) { .giro { border-right-color: currentColor; opacity: .55; } }
html[data-reduce-motion="1"] .giro { border-right-color: currentColor; opacity: .55; }
.em-andamento { display: flex; align-items: center; gap: var(--e-2); margin: 0; }
.aviso > .em-andamento { color: inherit; }
.cartao-integracao { box-shadow: inset 3px 0 0 var(--linha-forte), var(--vidro-reflexo), var(--sombra-1); }
.cartao-integracao.ligada { box-shadow: inset 3px 0 0 var(--ok), var(--vidro-reflexo), var(--sombra-1); }
.cartao-integracao.desligada { box-shadow: inset 3px 0 0 var(--erro), var(--vidro-reflexo), var(--sombra-1); }
.voltar-lista { width: fit-content; margin-bottom: var(--e-3); }
.lista-minutas { display: grid; gap: var(--e-3); }
.lista-minutas:empty { display: none; }
.minuta { display: grid; gap: var(--e-2); padding: var(--e-4); border: 1px solid var(--linha); border-radius: var(--r-lg); background: var(--vidro-solido-2); }
.minuta > header { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-2); }
.minuta > header small { margin-left: auto; color: var(--texto-3); }
.minuta.minuta-erro { border-color: color-mix(in srgb, var(--erro) 35%, var(--linha)); }
.conferencia-minuta h3 { margin: var(--e-2) 0 4px; font-size: var(--t-sm); }
.conferencia-minuta ul { display: grid; gap: 3px; margin: 0; padding-left: 18px; font-size: var(--t-sm); line-height: 1.5; }
.conferencia-minuta.alertas { padding: var(--e-2) var(--e-3) var(--e-3); border-radius: var(--r-md); background: var(--aviso-fundo); }
.progresso-minuta { display: grid; gap: var(--e-2); }
.minutas-peticao h2 { margin: 0; }
.minutas-peticao > p { margin: 0; line-height: 1.55; }
.barra-caso { display: grid; gap: var(--e-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); align-items: end; }
.barra-caso > .botao { justify-self: start; }
.tabela-documentos td:first-child { min-width: 220px; }
.tabela-documentos td:first-child a { font-weight: 560; overflow-wrap: anywhere; }
.tabela-documentos td:last-child .entrada { min-width: 200px; min-height: 34px; padding: 6px 10px; font-size: var(--t-sm); }
.tabela-documentos tr.relevancia-relevante > td:first-child { box-shadow: inset 3px 0 0 var(--ok); }
.tabela-documentos tr.relevancia-irrelevante > td { color: var(--texto-3); }
.tabela-documentos .selo + .selo { margin-left: 4px; }
.segmentado.relevancia { flex-wrap: nowrap; }
.segmentado.relevancia button { min-height: 30px; font-size: var(--t-xs); white-space: nowrap; }
.segmentado.relevancia .rel-relevante[aria-pressed="true"] { background: var(--ok-fundo); color: var(--ok); }
.segmentado.relevancia .rel-pendente[aria-pressed="true"] { background: var(--aviso-fundo); color: var(--aviso); }
.texto-pre { max-height: 320px; margin: 0; padding: var(--e-2) var(--e-3); overflow: auto; border-radius: var(--r-md); background: var(--hover); color: var(--texto-2); font: inherit; font-size: var(--t-sm); line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.lista-eventos { display: grid; gap: var(--e-2); max-height: 560px; overflow: auto; }
.evento-advbox { display: grid; gap: 4px; padding: var(--e-2) var(--e-3); border-left: 3px solid var(--linha-forte); border-radius: 0 var(--r-md) var(--r-md) 0; background: var(--vidro-solido-2); }
.evento-advbox header { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--e-2); }
.evento-advbox header small { color: var(--texto-3); }
.evento-advbox .texto-pre { max-height: 200px; padding: 0; background: transparent; }
.novo-caso { display: grid; gap: var(--e-4); }
.busca-cliente { display: flex; align-items: end; gap: var(--e-2); }
.busca-cliente .campo { flex: 1; }
.lista-clientes { display: grid; gap: 6px; max-height: 320px; overflow: auto; }
.cliente-advbox { display: grid; gap: 2px; padding: 10px 12px; border: 1px solid var(--linha); border-radius: var(--r-md); background: var(--vidro-solido-2); color: inherit; font: inherit; text-align: left; cursor: pointer; }
.cliente-advbox:hover { background: var(--hover); }
.cliente-advbox:focus-visible { outline: none; box-shadow: var(--foco); }
.cliente-advbox small, .cliente-escolhido small, .opcao-radio small { color: var(--texto-3); font-size: var(--t-xs); }
.cliente-escolhido { display: flex; align-items: center; justify-content: space-between; gap: var(--e-3); padding: var(--e-3); border-radius: var(--r-md); background: var(--destaque-suave); }
.cliente-escolhido > span { display: grid; gap: 2px; }
.processos-advbox, .foros { display: grid; gap: var(--e-2); margin: 0; padding: var(--e-3); border: 1px solid var(--linha); border-radius: var(--r-md); }
.processos-advbox legend, .foros legend { padding: 0 6px; color: var(--texto-2); font-size: var(--t-sm); font-weight: 560; }
.opcao-radio > span { display: grid; gap: 1px; }
.situacao-dialogo { margin-right: auto; }
@media (max-width: 640px) { .busca-cliente { flex-direction: column; align-items: stretch; } .minuta > header small { margin-left: 0; width: 100%; } }
.barra-busca > .campo { flex: 1 1 320px; max-width: 480px; }
.topo-documentos > div:first-child { margin-right: auto; }
.topo-documentos h2 { margin: 0; }
.caso-peticao h3 { margin: var(--e-2) 0 0; font-size: var(--t-md); }
.campo-modelo { max-width: 460px; }
