/* negociacoes.css — [05/10/2026] A casca nova da aba Negociações (N1).
   Arranjo: modules/v3/negociacoes-tela.mjs · documento: docs/negociacoes-visual-novo.md

   Tudo debaixo de `#v14-panel-neg .nn`: o id na frente vence as regras globais
   de input/label/select do v45-base-redesign.css (que são !important) e as
   regras antigas da aba. O painel do lote (.neg-panel: contato, avaliação,
   histórico) segue com o CSS de sempre.

   Celular = a faixa de sempre (max-width: 860px, a do #318). Animação só com
   transform e opacity; a altura do cartão que abre é a exceção do desenho. */

#v14-panel-neg .nn {
  --nn-tinta: #1B1F1A; --nn-lime: #C3EA4F; --nn-papel: #F5F4EF; --nn-apoio: #5F645C;
  --nn-fio: rgba(27,31,26,.08); --nn-areia: #C9A87A; --nn-claro: #F6F6F1;
  --nn-mola: cubic-bezier(.2,.9,.25,1.25); --nn-saida: cubic-bezier(.2,.8,.2,1);
  --nn-seguro-baixo: env(safe-area-inset-bottom, 0px);
  position: relative; display: flex; flex-direction: column; gap: 10px;
  /* a página dá 22 px de lado; a barra de cima fica a 24 (computador) e a 12 (celular) */
  width: 100%; min-width: 0; padding: 0 2px 40px; margin: 0 auto; max-width: 1600px;
  font-family: Jost, 'Helvetica Neue', Helvetica, sans-serif; color: var(--nn-tinta);
  -webkit-font-smoothing: antialiased;
}
#v14-panel-neg .nn *, #v14-panel-neg .nn *::before, #v14-panel-neg .nn *::after { box-sizing: border-box; }
#v14-panel-neg .nn .nn-num { font-variant-numeric: tabular-nums; }
#v14-panel-neg .nn .nn-dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; flex: none; }
#v14-panel-neg .nn button { font-family: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
#v14-panel-neg .nn button:focus-visible,
#v14-panel-neg .nn select:focus-visible { outline: 2px solid var(--nn-tinta); outline-offset: 2px; }

/* ── o topo: resumo, mapa, filtros ── */
/* isolate: o cartão e os filtros (z 500, por cima do mapa) não podem passar por cima da barra do estudo */
#v14-panel-neg .nn .nn-hero { position: relative; min-width: 0; isolation: isolate; }
/* o zoom do mapa vai para a direita: à esquerda fica o cartão do resumo */
#v14-panel-neg .nn .neg-map-canvas .leaflet-top.leaflet-right .leaflet-control-zoom { margin: 14px 14px 0 0; border: 0; border-radius: 12px; overflow: hidden; box-shadow: 0 6px 16px rgba(20,24,18,.12); }
#v14-panel-neg .nn .neg-map-canvas .leaflet-control-zoom a { width: 34px; height: 34px; line-height: 34px; color: #1B1F1A; border-color: rgba(27,31,26,.08); }
#v14-panel-neg .nn .nn-mapa { margin: 0; }
#v14-panel-neg .nn .neg-map-slot { width: 100%; }
#v14-panel-neg .nn .neg-map-canvas {
  width: 100%; height: min(48vh, 420px); min-height: 330px;
  border-radius: 26px; overflow: hidden; border: 1px solid var(--nn-fio); background: #EEEDE7;
}
#v14-panel-neg .nn .neg-map-empty { height: 120px; border-radius: 22px; }
/* "Use ⌘ + rolagem para aproximar": ~1,5 s quando a roda gira sem a tecla, uma vez por sessão. Só opacidade. */
#v14-panel-neg .nn .neg-map-canvas .nn-dica-roda {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 900; pointer-events: none;
  padding: 9px 14px; border-radius: 14px; background: rgba(27,31,26,.86); color: #F6F6F1;
  font: 600 13px Jost, sans-serif; white-space: nowrap; opacity: 0; transition: opacity .2s var(--nn-saida);
}
#v14-panel-neg .nn .neg-map-canvas .nn-dica-roda.aparece { opacity: 1; }
/* a atribuição sai de baixo do botão "Mostrar aluguel" e do canto arredondado */
#v14-panel-neg .nn .neg-map-canvas .leaflet-bottom.leaflet-right { right: 50%; transform: translateX(50%); }
#v14-panel-neg .nn .neg-map-canvas .leaflet-control-attribution { margin: 0 0 3px; border-radius: 6px; background: rgba(255,255,255,.7); }

#v14-panel-neg .nn .nn-resumo {
  position: absolute; left: 14px; top: 14px; width: 396px; z-index: 500;
  display: flex; flex-direction: column; gap: 12px; padding: 14px 16px; border-radius: 22px;
  background: rgba(250,250,246,.94); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,.8); box-shadow: 0 14px 36px rgba(20,24,18,.14);
}
#v14-panel-neg .nn.nn-entrando .nn-resumo { animation: nnSobe .5s var(--nn-saida) both; }
@keyframes nnSobe { from { opacity: 0; transform: translateY(14px); } }
#v14-panel-neg .nn .nn-resumo-topo {
  margin: 0; display: flex; align-items: center; justify-content: space-between; gap: 8px;
  font-size: 12.5px; font-weight: 600; color: var(--nn-apoio); letter-spacing: 0; text-transform: none;
}
#v14-panel-neg .nn .nn-ativo { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#v14-panel-neg .nn .nn-vivo { display: inline-flex; align-items: center; gap: 6px; flex: none; }
#v14-panel-neg .nn .nn-vivo-ponto { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 600; white-space: nowrap; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-vivo-ponto i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
#v14-panel-neg .nn .nn-presenca { display: inline-flex; align-items: center; gap: 4px; }
/* o indicador de gravação: só leitura, discreto, à esquerda do "ao vivo" */
#v14-panel-neg .nn .nn-gravacao { font-size: 11.5px; font-weight: 500; color: var(--nn-apoio); white-space: nowrap; }
#v14-panel-neg .nn .nn-gravacao:empty { display: none; }
#v14-panel-neg .nn .nn-gravacao::after { content: '·'; margin-left: 6px; color: rgba(27,31,26,.3); }
#v14-panel-neg .nn .nn-gravacao[data-fase="tentando"] { color: #a4232b; font-weight: 600; }
#v14-panel-neg .nn .nn-total { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 8px; }
#v14-panel-neg .nn .nn-total > .nn-num { font-size: 29px; font-weight: 700; letter-spacing: -.02em; line-height: 1; }
#v14-panel-neg .nn .nn-total small { flex: 0 0 100%; font-size: 12.5px; font-weight: 500; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-total small.nn-andamento { font-size: 11px; margin-top: -4px; opacity: .85; }
#v14-panel-neg .nn .nn-mix { display: flex; flex-direction: column; gap: 6px; }
#v14-panel-neg .nn .nn-trilho { height: 9px; border-radius: 5px; background: var(--nn-areia); overflow: hidden; }
#v14-panel-neg .nn .nn-trilho i { display: block; height: 100%; background: var(--nn-lime); }
#v14-panel-neg .nn .nn-pernas { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 10px; font-size: 11px; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-pernas > span { white-space: nowrap; }
#v14-panel-neg .nn .nn-pernas > span:last-child { margin-left: auto; }
#v14-panel-neg .nn .nn-pernas b { color: var(--nn-tinta); font-weight: 700; }

#v14-panel-neg .nn .nn-filtros {
  position: absolute; left: 14px; right: 14px; bottom: 14px; z-index: 500;
  display: flex; align-items: center; gap: 6px; pointer-events: none;
}
#v14-panel-neg .nn .nn-chip {
  pointer-events: auto; flex: none; display: inline-flex; align-items: center; gap: 7px;
  height: 34px; padding: 0 12px; border-radius: 17px; border: 1.5px solid var(--nn-fio); background: #fff;
  font-size: 12.5px; font-weight: 600; color: var(--nn-tinta); white-space: nowrap;
  box-shadow: 0 6px 16px rgba(20,24,18,.1);
  transition: transform .25s var(--nn-mola), background .25s, color .25s, border-color .25s;
}
#v14-panel-neg .nn .nn-chip:active { transform: scale(.94); }
#v14-panel-neg .nn .nn-chip .nn-dot { width: 8px; height: 8px; }
#v14-panel-neg .nn .nn-chip b { font-weight: 700; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-chip[data-nn-filtro][aria-pressed="true"] { background: var(--nn-tinta); color: var(--nn-claro); border-color: var(--nn-tinta); }
#v14-panel-neg .nn .nn-chip[data-nn-filtro][aria-pressed="true"] b { color: var(--nn-lime); }
#v14-panel-neg .nn .nn-chip-alu { margin-left: auto; }

/* o rótulo do lote no mapa: número + bolinha da situação */
#v14-panel-neg .nn .nn-rot {
  position: absolute; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; gap: 2px;
  font: 700 13px/1 Jost, sans-serif; color: var(--nn-tinta); white-space: nowrap; pointer-events: none;
  text-shadow: 0 0 2px #fff, 0 0 2px #fff, 1.5px 0 0 #fff, -1.5px 0 0 #fff, 0 1.5px 0 #fff, 0 -1.5px 0 #fff, 1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff;
  transition: opacity .25s var(--nn-saida);
}
#v14-panel-neg .nn .nn-rot .nn-dot { width: 9px; height: 9px; border: 1.5px solid #fff; }
#v14-panel-neg .nn .nn-rot.nn-rot-off { opacity: .28; }
/* a entrada, uma vez por abertura: só opacidade */
#v14-panel-neg .nn .nn-lote-entra { animation: nnAcende .5s var(--nn-saida) both; }
#v14-panel-neg .nn .nn-contorno-entra { animation: nnAcende .6s var(--nn-saida) both; }
@keyframes nnAcende { from { opacity: 0; } }

/* ── os campos ── */
#v14-panel-neg .nn .nn-in {
  width: 100%; min-width: 0; height: 32px; padding: 0 9px !important; border-radius: 10px !important;
  border: 1.5px solid rgba(27,31,26,.12) !important; background: #fff !important; box-shadow: none !important;
  font-family: Jost, sans-serif !important; font-size: 13.5px !important; font-weight: 700; color: var(--nn-tinta) !important;
  text-align: right; outline: 0 !important; font-variant-numeric: tabular-nums;
  transition: border-color .2s, box-shadow .25s !important;
}
#v14-panel-neg .nn .nn-in::placeholder { color: #A9ADA6; font-weight: 400; }
#v14-panel-neg .nn .nn-in:focus { border-color: var(--nn-tinta) !important; box-shadow: 0 0 0 4px rgba(195,234,79,.55) !important; }
/* tracejado = segue um padrão (o preço de "Todos os lotes", o dinheiro calculado…) */
#v14-panel-neg .nn .nn-in.nn-auto { border-style: dashed !important; font-weight: 500; color: #7B8078 !important; }
#v14-panel-neg .nn .nn-in.nn-erro { border-color: #a4232b !important; color: #a4232b !important; }
/* [campos confiáveis] confirmou: um anel lime pisca por cima do campo (~600 ms, só opacidade) */
#v14-panel-neg .nn .nn-pisca {
  position: absolute; z-index: 600; pointer-events: none; box-sizing: border-box;
  border: 2px solid #C3EA4F; box-shadow: 0 0 0 4px rgba(195,234,79,.55); opacity: 0; animation: nnPisca .6s var(--nn-saida);
}
@keyframes nnPisca { from { opacity: 1; } }
/* não gravou (o navegador não guardou, ou a nuvem recusou): o valor digitado FICA, com o erro à vista */
#v14-panel-neg .nn input.nn-nao-gravou, #v14-panel-neg .nn select.nn-nao-gravou, #v14-panel-neg .nn textarea.nn-nao-gravou {
  border: 1.5px solid #a4232b !important; background-color: #FDECEB !important; color: #8C1D24 !important;
}
#v14-panel-neg .nn .nn-in.nn-texto { text-align: left; font-weight: 500; }
#v14-panel-neg .nn select.nn-in, #v14-panel-neg .nn select.nn-sel {
  appearance: none !important; -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 3.5 5 7l3-3.5z' fill='%231B1F1A'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 7px center !important; background-size: 8px !important;
}
#v14-panel-neg .nn select.nn-in { padding: 0 20px 0 8px !important; text-align: left; font-weight: 600; }
#v14-panel-neg .nn .nn-selw { position: relative; display: inline-block; width: 100%; }
#v14-panel-neg .nn .nn-selw .nn-dot { position: absolute; left: 9px; top: 50%; transform: translateY(-50%); width: 8px; height: 8px; pointer-events: none; }
#v14-panel-neg .nn select.nn-sel {
  width: 100%; height: 32px; padding: 0 20px 0 24px !important; border-radius: 10px !important;
  border: 1.5px solid var(--nn-fio) !important; background-color: #fff !important; box-shadow: none !important;
  font-family: Jost, sans-serif !important; font-size: 12.5px !important; font-weight: 600; color: var(--nn-tinta) !important;
}

/* ── a tabela (computador) ── */
#v14-panel-neg .nn .nn-tabela.neg-v51-body { position: relative; min-width: 0; max-width: 100%; padding: 0; overflow-x: auto; overflow-y: visible; }
/* [N2] alça · lote · preço · % do lote · loja m² · troca · resid. m² · em reais · dinheiro · total · situação · proprietário */
#v14-panel-neg .nn .nn-grade {
  display: grid; align-items: stretch; column-gap: 6px;
  grid-template-columns: 18px minmax(150px, 1.5fr) 88px 60px 70px 30px 70px 104px 108px 112px 132px minmax(70px, 1fr);
}
#v14-panel-neg .nn .nn-grade > div { display: flex; align-items: center; justify-content: flex-end; min-width: 0; }
#v14-panel-neg .nn .nn-grade > div.l { justify-content: flex-start; }
#v14-panel-neg .nn .nn-grade > .nn-c-sit { padding-left: 6px; }
#v14-panel-neg .nn .nn-grade > .alu { display: none; }
#v14-panel-neg .nn.nn-com-aluguel .nn-grade {
  grid-template-columns: 18px minmax(150px, 1.5fr) 88px 60px 70px 30px 70px 104px 108px 84px 66px 96px 112px 132px minmax(70px, 1fr);
  min-width: 1390px;
}
#v14-panel-neg .nn.nn-com-aluguel .nn-grade > .alu { display: flex; }

#v14-panel-neg .nn .nn-cab-grupo { padding: 0 8px 0 6px; height: 15px; margin-top: -2px; }
#v14-panel-neg .nn .nn-cab-grupo > span {
  grid-column: 4 / 9; align-self: end; text-align: center; margin: 0 2px; padding-bottom: 3px;
  font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--nn-tinta);
  border-bottom: 1.5px solid var(--nn-areia);
}
#v14-panel-neg .nn .nn-cab { padding: 2px 8px 0 6px; }
#v14-panel-neg .nn .nn-cab > div {
  align-items: flex-end; font-size: 10px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  color: var(--nn-apoio); white-space: nowrap;
}
#v14-panel-neg .nn .nn-linha {
  height: 44px; margin-top: 5px; padding: 0 8px 0 6px;
  background: #fff; border: 1.5px solid var(--nn-fio); border-radius: 14px;
  font-size: 13.5px; transition: border-color .2s, background .2s; cursor: default;
}
#v14-panel-neg .nn .nn-linha > .pz { background: #FBF8F1; margin: 0 -3px; padding: 0 3px; }
#v14-panel-neg .nn .nn-linha.neg-row-hit, #v14-panel-neg .nn .nn-linha.open { border-color: var(--nn-tinta); background: #FBFDF2; }
/* ── [N2 out/2026] a permuta: % do lote, loja m², troca de destino, resid. m², em reais ── */
#v14-panel-neg .nn .nn-in.nn-in-pct { text-align: right; padding-left: 4px !important; padding-right: 6px !important; }
#v14-panel-neg .nn .nn-grade > .nn-c-troca { justify-content: center; }
#v14-panel-neg .nn .nn-troca {
  width: 26px; height: 26px; padding: 0; border-radius: 9px; border: 1.5px solid var(--nn-fio); background: #fff; color: var(--nn-tinta);
  display: inline-grid; place-items: center; cursor: pointer; flex-shrink: 0;
  transition: transform .35s var(--nn-mola), background .2s;
}
#v14-panel-neg .nn .nn-troca:active { transform: scale(.85); }
#v14-panel-neg .nn .nn-troca svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .35s var(--nn-mola); }
#v14-panel-neg .nn .nn-troca.loja svg { transform: rotate(180deg); }
#v14-panel-neg .nn .nn-troca[disabled] { opacity: .3; cursor: default; }
#v14-panel-neg .nn .nn-troca:focus-visible { outline: 2px solid var(--nn-tinta); outline-offset: 2px; }
#v14-panel-neg .nn .nn-linha.nn-todos .nn-troca { background: rgba(246,246,241,.14); border-color: rgba(246,246,241,.3); color: var(--nn-claro); }
#v14-panel-neg .nn .nn-grade > .nn-em-reais { flex-direction: column; align-items: flex-end; justify-content: center; gap: 1px; }
#v14-panel-neg .nn .nn-em-reais small { font-size: 10px; font-weight: 600; color: var(--nn-apoio); white-space: nowrap; line-height: 1; }
/* "Todos os lotes": o valor do m² recebido fica em cima da coluna do m² a que ele se refere */
#v14-panel-neg .nn .nn-grade > .nn-c-valor { flex-direction: column; align-items: stretch; justify-content: center; gap: 1px; }
#v14-panel-neg .nn .nn-c-valor small { font-size: 8.5px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; color: rgba(246,246,241,.62); white-space: nowrap; line-height: 1; text-align: right; padding-right: 3px; pointer-events: none; }
#v14-panel-neg .nn .nn-c-valor .nn-in { height: 26px; }
/* a origem da conta à vista: sem valor de Residencial, o m² recebido vale o preço do terreno */
#v14-panel-neg .nn .nn-grade > .nn-c-origem { justify-content: flex-start; padding-left: 2px; overflow: visible; }
#v14-panel-neg .nn .nn-c-origem small { font-size: 9.5px; font-weight: 600; line-height: 1.15; color: rgba(246,246,241,.85); white-space: normal; max-width: 104px; text-align: left; cursor: help; }
#v14-panel-neg .nn .nn-origem { margin: 0; font-size: 11px; line-height: 1.35; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-origem b { color: var(--nn-tinta); font-weight: 700; }
#v14-panel-neg .nn .nn-todos-cartao .nn-origem { color: rgba(246,246,241,.7); }
#v14-panel-neg .nn .nn-todos-cartao .nn-origem b { color: var(--nn-claro); }
/* a loja sem valor: o campo pede */
#v14-panel-neg .nn .nn-in.nn-pede { border-color: #C98A1A !important; border-style: dashed !important; }
#v14-panel-neg .nn .nn-in.nn-pede::placeholder { color: #9A6710; opacity: 1; }
@media (prefers-reduced-motion: reduce) { #v14-panel-neg .nn .nn-troca, #v14-panel-neg .nn .nn-troca svg { transition: none !important; } }
#v14-panel-neg .nn .nn-linha.neg-row-hit > .pz, #v14-panel-neg .nn .nn-linha.open > .pz { background: #F7F7E6; }
#v14-panel-neg .nn [data-neg-row].neg-arrastando { opacity: .38; }
#v14-panel-neg .nn .neg-alca { all: unset; cursor: grab; width: 16px; text-align: center; font-size: 12px; line-height: 1; color: rgba(27,31,26,.32); touch-action: none; }
#v14-panel-neg .nn .neg-alca:hover { color: rgba(27,31,26,.6); }
#v14-panel-neg .nn .neg-alca:focus-visible { outline: 2px solid var(--nn-tinta); outline-offset: 2px; border-radius: 4px; }
#v14-panel-neg .nn .nn-lote { gap: 9px; }
#v14-panel-neg .nn .nn-lote-txt { min-width: 0; }
#v14-panel-neg .nn .nn-end { display: flex; min-width: 0; font-weight: 700; white-space: nowrap; }
#v14-panel-neg .nn .nn-end .nn-rua { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
#v14-panel-neg .nn .nn-end .nn-porta { flex: none; white-space: pre; }
#v14-panel-neg .nn .nn-lote-txt b { font-size: 13.5px; line-height: 1.15; }
#v14-panel-neg .nn .nn-lote-txt small { display: flex; align-items: center; gap: 4px; font-size: 10.5px; color: var(--nn-apoio); line-height: 1.1; white-space: nowrap; }
/* a área do lote continua editável, no lugar onde ela é mostrada */
#v14-panel-neg .nn .nn-linha .nn-in.nn-in-area {
  width: 42px; height: 17px; padding: 0 4px !important; border-radius: 6px !important; border-width: 1px !important;
  font-size: 10.5px !important; font-weight: 600; text-align: right;
}
#v14-panel-neg .nn .nn-in.nn-in-area.nn-editado { border-color: var(--nn-tinta) !important; }
#v14-panel-neg .nn .nn-calc { font-size: 13px; font-weight: 700; white-space: nowrap; }
#v14-panel-neg .nn .nn-fraco { font-weight: 500; color: var(--nn-apoio); font-size: 12.5px; }
#v14-panel-neg .nn .nn-tot { flex-direction: column; align-items: flex-end !important; justify-content: center !important; gap: 1px; line-height: 1.12; white-space: nowrap; }
#v14-panel-neg .nn .nn-tot .nn-num, #v14-panel-neg .nn .nn-tot > b { font-size: 14px; font-weight: 700; }
#v14-panel-neg .nn .nn-tot small { font-size: 10.5px; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-tot.neg-ce-erro { background: transparent; color: #a4232b !important; }
/* "Todos os lotes": a primeira linha, escura */
#v14-panel-neg .nn .nn-linha.nn-todos { background: var(--nn-tinta); border-color: var(--nn-tinta); color: var(--nn-claro); }
#v14-panel-neg .nn .nn-linha.nn-todos .nn-lote-txt b { color: var(--nn-claro); }
#v14-panel-neg .nn .nn-linha.nn-todos .nn-lote-txt small { color: rgba(246,246,241,.6); }
#v14-panel-neg .nn .nn-linha.nn-todos .nn-in { border-color: transparent !important; }
#v14-panel-neg .nn .nn-rodape { padding: 4px 8px 0 6px; font-size: 12.5px; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-rodape b { color: var(--nn-tinta); font-size: 14px; font-weight: 700; white-space: nowrap; }
#v14-panel-neg .nn .nn-dica { margin: 2px 0 0; font-size: 11.5px; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-dica i { display: inline-block; width: 22px; height: 12px; border-radius: 4px; border: 1.5px dashed rgba(27,31,26,.3); vertical-align: -2px; margin-right: 6px; }
#v14-panel-neg .nn .neg-panel { margin-top: 5px; }
/* o painel do lote dentro da casca nova: sem azul e sem verde-menta (eram --neg-blue e um verde a 7%) */
#v14-panel-neg .nn .neg-panel .neg-link-text { color: var(--nn-tinta); text-decoration: underline; text-underline-offset: 2px; }
#v14-panel-neg .nn .neg-panel .neg-aval-block { background: rgba(195,234,79,.16); border-color: rgba(27,31,26,.1); }
/* ── [N2 out/2026] O PAINEL DO LOTE: três cartões brancos — proprietário e contato · valores e comparativo ·
   histórico e movimentação. Só pele: os campos, os ganchos e as contas são os de sempre. ── */
#v14-panel-neg .nn .neg-panel.nn-painel {
  background: var(--nn-papel); border: 1.5px solid var(--nn-tinta); border-radius: 22px; box-shadow: none;
  -webkit-backdrop-filter: none; backdrop-filter: none; min-width: 0; margin: 6px 0 10px; overflow: hidden;
}
#v14-panel-neg .nn .nn-painel .neg-panel-hdr { background: transparent; border: 0; padding: 14px 16px 2px; }
#v14-panel-neg .nn .nn-painel .neg-panel-hdr-name { font-size: 16px; font-weight: 700; color: var(--nn-tinta); }
#v14-panel-neg .nn .nn-painel .neg-panel-hdr-sub { color: var(--nn-apoio); font-size: 12px; }
#v14-panel-neg .nn .nn-painel .neg-panel-body { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 12px; border: 0; background: transparent; align-items: start; }
#v14-panel-neg .nn .nn-painel .neg-pcol {
  background: #fff; border: 1px solid var(--nn-fio); border-radius: 22px; padding: 16px; min-width: 0;
  display: flex; flex-direction: column; gap: 10px; box-shadow: 0 6px 18px rgba(20,24,18,.05);
}
#v14-panel-neg .nn .nn-painel .neg-pct {
  margin: 0 0 2px; padding: 0; border: 0; display: flex; justify-content: space-between; align-items: baseline; gap: 8px;
  font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--nn-tinta);
}
#v14-panel-neg .nn .nn-painel .neg-pct small { font-size: 11px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-painel .neg-frow { display: flex; flex-direction: column; gap: 4px; margin: 0; }
#v14-panel-neg .nn .nn-painel .neg-fl { font-size: 11px; font-weight: 600; letter-spacing: .02em; color: var(--nn-apoio); text-transform: none; }
/* campos no padrão novo: caixa branca, anel lime no foco */
#v14-panel-neg .nn .nn-painel .neg-finput, #v14-panel-neg .nn .nn-painel .neg-mov-sel, #v14-panel-neg .nn .nn-painel .neg-mov-inp,
#v14-panel-neg .nn .nn-painel .neg-aval-edit-input {
  width: 100%; min-width: 0; height: 38px; padding: 0 11px !important; box-sizing: border-box;
  background: #fff !important; border: 1.5px solid var(--nn-fio) !important; border-radius: 12px !important; box-shadow: none !important;
  font: 500 14px Jost, system-ui, sans-serif !important; color: var(--nn-tinta) !important; outline: 0;
  transition: border-color .2s, box-shadow .2s;
}
#v14-panel-neg .nn .nn-painel .neg-ftextarea { height: auto; min-height: 76px; padding: 9px 11px !important; resize: vertical; line-height: 1.35; }
#v14-panel-neg .nn .nn-painel .neg-finput:focus, #v14-panel-neg .nn .nn-painel .neg-mov-sel:focus, #v14-panel-neg .nn .nn-painel .neg-mov-inp:focus,
#v14-panel-neg .nn .nn-painel .neg-aval-edit-input:focus, #v14-panel-neg .nn .nn-painel .nn-in:focus {
  border-color: var(--nn-tinta) !important; box-shadow: 0 0 0 3px rgba(195,234,79,.6) !important;
}
#v14-panel-neg .nn .nn-painel .neg-link-row { border: 1.5px dashed var(--nn-fio); border-radius: 12px; padding: 9px 11px; background: var(--nn-papel); }
/* Avaliação Solos: o número grande em tinta, sem o verde antigo */
#v14-panel-neg .nn .nn-painel .neg-aval-block { background: var(--nn-papel); border: 0; border-radius: 16px; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; }
#v14-panel-neg .nn .nn-painel .neg-aval-top { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
#v14-panel-neg .nn .nn-painel .neg-aval-label { font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-painel .neg-aval-val { font-size: 26px; font-weight: 700; letter-spacing: -.01em; line-height: 1.1; color: var(--nn-tinta); font-variant-numeric: tabular-nums; }
#v14-panel-neg .nn .nn-painel .neg-aval-base { font-size: 11px; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-painel .neg-aval-edit { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 8px; margin-top: 2px; }
#v14-panel-neg .nn .nn-painel .neg-aval-edit-label, #v14-panel-neg .nn .nn-painel .neg-aval-edit-sfx { font-size: 11px; font-weight: 600; color: var(--nn-apoio); white-space: nowrap; }
#v14-panel-neg .nn .nn-painel .neg-aval-edit-input { text-align: right; font-variant-numeric: tabular-nums; }
/* o valor do m² recebido neste lote */
#v14-panel-neg .nn .nn-recebido { display: flex; flex-direction: column; gap: 6px; padding: 10px 12px; border-radius: 16px; background: #FBF8F1; }
#v14-panel-neg .nn .nn-recebido-t { margin: 0; display: flex; flex-direction: column; gap: 1px; font-size: 11px; font-weight: 700; color: var(--nn-tinta); }
#v14-panel-neg .nn .nn-recebido-t small { font-size: 10.5px; font-weight: 500; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-recebido-g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
#v14-panel-neg .nn .nn-recebido .nn-f { display: flex; flex-direction: column; gap: 3px; }
#v14-panel-neg .nn .nn-recebido .nn-f > span { font-size: 10.5px; font-weight: 600; color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-recebido .nn-in { height: 36px; text-align: right; background: #fff !important; }
/* o comparativo: rótulo à esquerda, número à direita, tabular */
#v14-panel-neg .nn .nn-painel .neg-vrow { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 5px 0; margin: 0; border: 0; font-size: 13px; }
#v14-panel-neg .nn .nn-painel .neg-vrow + .neg-vrow { border-top: 1px solid var(--nn-fio); }
#v14-panel-neg .nn .nn-painel .neg-vrow-sep { border-top: 1.5px solid var(--nn-tinta) !important; padding-top: 8px; margin-top: 2px; }
#v14-panel-neg .nn .nn-painel .neg-vl { color: var(--nn-apoio); }
#v14-panel-neg .nn .nn-painel .neg-vv { text-align: right; font-variant-numeric: tabular-nums; font-weight: 600; color: var(--nn-tinta); white-space: nowrap; }
#v14-panel-neg .nn .nn-painel .neg-vv.neg-g { color: var(--nn-tinta); }
#v14-panel-neg .nn .nn-painel .neg-vv.neg-b { font-weight: 700; font-size: 15px; color: var(--nn-tinta); }
#v14-panel-neg .nn .nn-painel .neg-vv.neg-m, #v14-panel-neg .nn .nn-painel .neg-vv.neg-xs { color: var(--nn-apoio); font-weight: 500; }
#v14-panel-neg .nn .nn-painel .neg-vv.neg-red { color: #A3301B; }
/* histórico e movimentação */
#v14-panel-neg .nn .nn-painel .neg-mov-form { display: flex; flex-direction: column; gap: 8px; padding: 0; border: 0; background: transparent; margin: 0; }
#v14-panel-neg .nn .nn-painel .neg-mov-label { margin: 4px 0 0; font-size: 11px; font-weight: 600; color: var(--nn-apoio); text-transform: none; letter-spacing: .02em; }
/* "Registrar" é o primário (lime); "Remover lote da negociação" é o perigo (vermelho) — e aparece uma vez só */
#v14-panel-neg .nn .nn-painel .neg-mov-btn {
  height: 40px; padding: 0 16px; border-radius: 14px; cursor: pointer; width: 100%;
  border: 1.5px solid #C9E35F; background: linear-gradient(135deg, #CBE468 0%, #DCEC8E 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
  font: 700 11px Jost, system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--nn-tinta);
}
#v14-panel-neg .nn .nn-painel .neg-rem-inline { margin: 6px 0 0; padding: 12px 0 0; border: 0; border-top: 1px solid var(--nn-fio); background: transparent; display: flex; flex-direction: column; gap: 6px; }
#v14-panel-neg .nn .nn-painel .neg-rem-inline button {
  height: 40px; padding: 0 16px; border-radius: 14px; cursor: pointer; width: 100%;
  border: 1.5px solid #8E2A17; background: linear-gradient(135deg, #A3301B 0%, #B8432B 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
  font: 700 11px Jost, system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #fff;
}
#v14-panel-neg .nn .nn-painel .neg-rem-inline p { margin: 0; font-size: 11px; color: var(--nn-apoio); text-align: center; }
#v14-panel-neg .nn .nn-painel .neg-mov-btn:focus-visible, #v14-panel-neg .nn .nn-painel .neg-rem-inline button:focus-visible { outline: 2px solid var(--nn-tinta); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { #v14-panel-neg .nn .nn-painel input, #v14-panel-neg .nn .nn-painel select, #v14-panel-neg .nn .nn-painel textarea { transition: none !important; } }

/* celular: nada disto aparece no computador */
#v14-panel-neg .nn.nn-mesa .nn-todos-cartao, #v14-panel-neg .nn.nn-mesa .nn-cartoes { display: none; }

/* ═══ CELULAR ═══ */
@media (max-width: 860px) {
  /* a página dá 22 px de lado; no celular a barra fica a 12 — o painel inteiro acompanha */
  html #v14-panel-neg.active:not(.neg-gaveta) { margin-left: -10px; margin-right: -10px; }
  #v14-panel-neg .nn { padding: 4px 0 calc(32px + var(--nn-seguro-baixo)); }
  /* a lista rola por baixo da barra: uma faixa da cor da página atrás dela (só nesta aba) */
  html.solos-base-cel #v14-view-area .v14-area-header.v45-topbar[data-active-tab="neg"]::after {
    content: ''; display: block; position: absolute; z-index: -2; pointer-events: none;
    left: -12px; right: -12px; top: calc(-12px - env(safe-area-inset-top, 0px));
    height: calc(126px + env(safe-area-inset-top, 0px)); background: #EEECEA;      /* 12 + 58 da linha de cima + 8 + 40 das abas + 8 */
  }
  #v14-panel-neg .nn .nn-hero { display: flex; flex-direction: column; gap: 10px; }
  #v14-panel-neg .nn .nn-resumo {
    position: static; width: auto; background: #fff; border: 1px solid var(--nn-fio); box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
  }
  #v14-panel-neg .nn .nn-total > .nn-num { font-size: 28px; }
  #v14-panel-neg .nn .neg-map-canvas { height: 250px; min-height: 0; border-radius: 22px; }
  #v14-panel-neg .nn .nn-filtros {
    position: static; pointer-events: auto; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
  }
  #v14-panel-neg .nn .nn-filtros::-webkit-scrollbar { display: none; }
  #v14-panel-neg .nn .nn-chip { box-shadow: none; }

  /* todo campo com 16 px: abaixo disso o Safari do iPhone dá zoom ao focar */
  #v14-panel-neg .nn .nn-in, #v14-panel-neg .nn select.nn-sel {
    height: 40px; border-radius: 12px !important; padding: 0 12px !important; font-size: 16px !important;
  }
  #v14-panel-neg .nn select.nn-in { padding: 0 24px 0 12px !important; }

  #v14-panel-neg .nn .nn-todos-cartao {
    border-radius: 18px; background: var(--nn-tinta); color: var(--nn-claro); padding: 12px 14px;
    display: flex; flex-direction: column; gap: 10px;
  }
  #v14-panel-neg .nn .nn-todos-cartao h3 { margin: 0; font-size: 13px; font-weight: 700; display: flex; justify-content: space-between; align-items: baseline; gap: 8px; letter-spacing: 0; text-transform: none; color: var(--nn-claro); }
  #v14-panel-neg .nn .nn-todos-cartao h3 small { font-size: 11px; font-weight: 500; color: rgba(246,246,241,.6); }
  #v14-panel-neg .nn .nn-todos-cartao .nn-f > span { color: rgba(246,246,241,.65) !important; }
  #v14-panel-neg .nn .nn-todos-cartao .nn-in { border-color: transparent !important; }

  #v14-panel-neg .nn .nn-cartoes.neg-v51-body { position: relative; padding: 0; overflow: visible; display: flex; flex-direction: column; gap: 6px; }
  #v14-panel-neg .nn .nn-cartao {
    border-radius: 18px; background: #fff; border: 1.5px solid var(--nn-fio); overflow: hidden;
    transition: border-color .25s var(--nn-saida), box-shadow .3s var(--nn-saida);
  }
  #v14-panel-neg .nn .nn-cartao.neg-row-hit { border-color: var(--nn-tinta); box-shadow: 0 0 0 4px rgba(195,234,79,.55); }
  #v14-panel-neg .nn .nn-cc { display: flex; align-items: stretch; }
  #v14-panel-neg .nn .nn-cc .neg-alca { width: 26px; display: flex; align-items: center; justify-content: center; font-size: 14px; padding-left: 4px; }
  #v14-panel-neg .nn .nn-cabeca {
    flex: 1; min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: 10px;
    min-height: 56px; padding: 10px 10px 8px 6px; border: 0; background: transparent; text-align: left; color: var(--nn-tinta);
  }
  #v14-panel-neg .nn .nn-cabeca .nn-dot { width: 10px; height: 10px; }
  #v14-panel-neg .nn .nn-t b { font-size: 14.5px; line-height: 1.2; }
  #v14-panel-neg .nn .nn-t small { display: block; font-size: 11.5px; color: var(--nn-apoio); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  #v14-panel-neg .nn .nn-v { text-align: right; white-space: nowrap; }
  #v14-panel-neg .nn .nn-v .nn-num { display: block; font-size: 14.5px; font-weight: 700; }
  #v14-panel-neg .nn .nn-v small { display: block; font-size: 11px; color: var(--nn-apoio); }
  #v14-panel-neg .nn .nn-seta { width: 18px; height: 18px; fill: none; stroke: var(--nn-apoio); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .35s var(--nn-mola); }
  #v14-panel-neg .nn .nn-cartao.aberto .nn-seta { transform: rotate(180deg); }
  #v14-panel-neg .nn .nn-fio { height: 3px; margin: 0 14px 9px; border-radius: 2px; background: var(--nn-areia); overflow: hidden; }
  #v14-panel-neg .nn .nn-fio i { display: block; height: 100%; background: var(--nn-lime); }
  /* o cartão abre em altura (400 ms) — a exceção do desenho */
  #v14-panel-neg .nn .nn-corpo { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s var(--nn-saida); }
  #v14-panel-neg .nn .nn-cartao.aberto .nn-corpo { grid-template-rows: 1fr; }
  #v14-panel-neg .nn .nn-corpo > div { overflow: hidden; min-height: 0; }
  #v14-panel-neg .nn .nn-cartao:not(.aberto) .nn-corpo > div { visibility: hidden; }
  #v14-panel-neg .nn .nn-dentro { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 12px; border-top: 1px solid var(--nn-fio); }
  #v14-panel-neg .nn .nn-seg { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 14px; background: rgba(27,31,26,.05); }
  #v14-panel-neg .nn .nn-seg button {
    height: 36px; border: 0; border-radius: 11px; background: transparent; font-size: 12.5px; font-weight: 600; color: var(--nn-apoio);
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; transition: background .25s, color .25s;
  }
  #v14-panel-neg .nn .nn-seg button .nn-dot { width: 8px; height: 8px; }
  #v14-panel-neg .nn .nn-seg button[aria-pressed="true"] { background: #fff; color: var(--nn-tinta); box-shadow: 0 2px 8px rgba(20,24,18,.1); }
  #v14-panel-neg .nn .nn-g2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  /* [N2] o bloco "Permuta" do cartão: % com − / +, "Vai para" e os dois m² */
  #v14-panel-neg .nn .nn-perm { display: flex; flex-direction: column; gap: 8px; padding: 10px; border-radius: 16px; background: #FBF8F1; border: 1px solid var(--nn-fio); }
  #v14-panel-neg .nn .nn-perm h4 { margin: 0; font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--nn-tinta); }
  #v14-panel-neg .nn .nn-stp { display: grid; grid-template-columns: 40px minmax(0, 1fr) 40px; gap: 4px; align-items: center; }
  #v14-panel-neg .nn .nn-passo { height: 40px; border-radius: 12px; border: 1.5px solid var(--nn-fio); background: #fff; font: 700 18px Jost, system-ui, sans-serif; color: var(--nn-tinta); cursor: pointer; padding: 0; transition: transform .25s var(--nn-mola); }
  #v14-panel-neg .nn .nn-passo:active { transform: scale(.9); }
  #v14-panel-neg .nn .nn-dst { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 12px; background: rgba(27,31,26,.06); height: 40px; box-sizing: border-box; }
  #v14-panel-neg .nn .nn-dst button { border: 0; border-radius: 9px; background: transparent; font: 600 12px Jost, system-ui, sans-serif; color: var(--nn-apoio); cursor: pointer; padding: 0 4px; white-space: nowrap; }
  #v14-panel-neg .nn .nn-dst button[aria-pressed="true"] { background: #fff; color: var(--nn-tinta); box-shadow: 0 2px 8px rgba(20,24,18,.1); }
  #v14-panel-neg .nn .nn-dst button[disabled] { opacity: .45; cursor: default; }
  #v14-panel-neg .nn .nn-todos-cartao .nn-dst { background: rgba(246,246,241,.12); }
  #v14-panel-neg .nn .nn-todos-cartao .nn-dst button { color: rgba(246,246,241,.7); }
  #v14-panel-neg .nn .nn-todos-cartao .nn-dst button[aria-pressed="true"] { background: var(--nn-claro); color: var(--nn-tinta); }
  @media (prefers-reduced-motion: reduce) { #v14-panel-neg .nn .nn-passo { transition: none !important; } }
  #v14-panel-neg .nn label.nn-f, #v14-panel-neg .nn div.nn-f { display: flex; flex-direction: column; gap: 4px; margin: 0; }
  #v14-panel-neg .nn label.nn-f > span, #v14-panel-neg .nn div.nn-f > span:first-child {
    font-family: Jost, sans-serif !important; font-size: 11.5px !important; font-weight: 500 !important;
    letter-spacing: 0 !important; text-transform: none !important; color: var(--nn-apoio) !important;
  }
  #v14-panel-neg .nn .nn-der, #v14-panel-neg .nn .nn-rodape-cel { display: flex; flex-direction: column; border-radius: 14px; background: var(--nn-papel); padding: 2px 12px; }
  #v14-panel-neg .nn .nn-der > div, #v14-panel-neg .nn .nn-rodape-cel > div { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 8px 0; font-size: 13px; }
  #v14-panel-neg .nn .nn-der > div + div, #v14-panel-neg .nn .nn-rodape-cel > div + div { border-top: 1px solid var(--nn-fio); }
  #v14-panel-neg .nn .nn-der span, #v14-panel-neg .nn .nn-rodape-cel span { color: var(--nn-apoio); }
  #v14-panel-neg .nn .nn-der b, #v14-panel-neg .nn .nn-rodape-cel b { font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; }
  #v14-panel-neg .nn .nn-rodape-cel { background: #fff; border: 1.5px solid var(--nn-fio); margin-top: 4px; }
  #v14-panel-neg .nn .nn-mais {
    height: 44px; border-radius: 14px; border: 1.5px solid rgba(27,31,26,.12); background: #fff;
    font-size: 13px; font-weight: 600; color: var(--nn-tinta);
  }
  #v14-panel-neg .nn .nn-vazio { display: none; margin: 8px 2px; font-size: 12.5px; color: var(--nn-apoio); }
  #v14-panel-neg .nn.nn-sem-linhas .nn-vazio { display: block; }
  /* o painel do lote (contato, avaliação, histórico, remover): as três colunas viram uma, e todo campo tem 16 px */
  #v14-panel-neg .nn .nn-cartao .neg-panel {
    min-width: 0 !important; margin: 0; border: 0; border-top: 1px solid var(--nn-fio); border-radius: 0; box-shadow: none;
    background: var(--nn-papel); -webkit-backdrop-filter: none; backdrop-filter: none;
  }
  #v14-panel-neg .nn .nn-cartao .neg-panel-hdr { flex-wrap: wrap; gap: 10px; padding: 12px 14px; background: transparent; }
  #v14-panel-neg .nn .nn-cartao .neg-panel-hdr-name { flex-wrap: wrap; }
  #v14-panel-neg .nn .nn-cartao .neg-panel-hdr-right { flex-wrap: wrap; }
  #v14-panel-neg .nn .nn-cartao .neg-panel-body { grid-template-columns: minmax(0, 1fr) !important; }
  #v14-panel-neg .nn .nn-cartao .neg-panel.nn-painel { border: 0; border-top: 1px solid var(--nn-fio); border-radius: 0; margin: 0; }
  #v14-panel-neg .nn .nn-cartao .nn-painel .neg-panel-body { padding: 10px; gap: 10px; }
  #v14-panel-neg .nn .nn-cartao .nn-painel .neg-pcol { padding: 14px; border-radius: 20px; }
  #v14-panel-neg .nn .nn-cartao .nn-painel .nn-in { font-size: 16px !important; height: 40px; }
  #v14-panel-neg .nn .nn-cartao .neg-pcol { padding: 14px; border-right: 0; border-top: 1px solid var(--nn-fio); min-width: 0; }
  #v14-panel-neg .nn .nn-cartao .neg-pct, #v14-panel-neg .nn .nn-cartao .neg-fl { font-size: 11px; }
  #v14-panel-neg .nn .nn-cartao .neg-panel input, #v14-panel-neg .nn .nn-cartao .neg-panel select,
  #v14-panel-neg .nn .nn-cartao .neg-panel textarea { font-size: 16px !important; min-height: 40px; }
  #v14-panel-neg .nn .nn-cartao .neg-panel textarea { min-height: 84px; }
  #v14-panel-neg .nn .nn-cartao .neg-panel button { min-height: 40px; font-size: 12.5px; }
}
#v14-panel-neg .nn.nn-mesa .nn-vazio { display: none; }

@media (prefers-reduced-motion: reduce) {
  #v14-panel-neg .nn *, #v14-panel-neg .nn *::before, #v14-panel-neg .nn *::after { animation: none !important; transition: none !important; }
}
