/* =====================================================================
   MANEJ'US · Gesta'Up · manejus.css
   Usa o estilo.css do Farm Plan (cores, menu, cartões, janelas, tabelas)
   e o mesmo desenho do aplicativo do Vision (cabeçalho azul, atalhos,
   cartões e barra de baixo). Aqui fica só o que o estilo.css não tem.
   ===================================================================== */
body{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.main{padding:18px 26px 24px;min-width:0}
.nav a{cursor:pointer}
.side .me .av{width:32px;height:32px;border-radius:50%;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}
.side .me span{opacity:.75}
.card{margin-bottom:16px}.kpis>.card,.two>.card{margin-bottom:0}
.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.kpi b{font-size:26px;white-space:nowrap}
.cardh{flex-wrap:wrap}
.login .err{text-align:center}.login a{color:var(--s3);font-weight:600;cursor:pointer}

/* ---------- Aplicativo: o mesmo do Farm Plan e do Vision ----------
   Classes .ap / .ap-top / .ap-ola / .ap-sec / .ap-t / .ap-bar vêm do estilo.css (Farm Plan),
   sempre claro (html.sempre-claro). Aqui só o que o Vision acrescenta e o Manej'Us usa. */
.ap .a-body .fe-rodape{padding-bottom:0}
.ap .ap-row button{cursor:pointer}
.ap .ap-ola select.ap-faz{max-width:100%}
.ap a.ap-t{color:inherit;cursor:pointer;text-decoration:none}
.ap .ap-t.vt{padding:12px 14px}
.ap .vseta{flex:none;color:var(--muted);font-size:1.3em;font-weight:800}
.ap .vkg{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ap .ap-t.vk{gap:2px;padding:12px 14px}
.ap .vk small{font-size:.78em;color:var(--ink2);font-weight:700}
.ap .vk b{font-family:var(--fd);font-size:1.3em;color:var(--navy);white-space:nowrap}
/* Resumo do Rebanho (tela inicial do app, abaixo da Agenda do Dia) */
.ap .rb-kpi{margin-bottom:10px}
.ap .rb-cats,.ap .rb-mes{padding:12px 14px;gap:6px;margin-bottom:10px}
.ap .rb-tit{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:2px}
.ap .rb-tit b{font-size:.95em;color:var(--navy)}
.ap .rb-tit small{font-size:.75em;color:var(--muted);font-weight:600}
.ap .rb-l{display:grid;grid-template-columns:minmax(0,1fr) 34% 3.4em 2.8em;align-items:center;gap:8px;font-size:.86em;min-height:26px}
.ap .rb-nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.ap .rb-bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden}
.ap .rb-bar i{display:block;height:100%;border-radius:4px;background:var(--navy)}
.ap .rb-bar i.f{background:var(--green)}
.ap .rb-l b{text-align:right;font-family:var(--fd);color:var(--navy)}
.ap .rb-l em{text-align:right;font-style:normal;color:var(--muted);font-size:.9em}
.ap .rb-mt{display:grid;grid-template-columns:4.6em repeat(3,1fr);gap:6px;align-items:stretch;text-align:center}
.ap .rb-mt>small{align-self:end;font-size:.75em;color:var(--ink2);font-weight:700}
.ap .rb-mr{align-self:center;text-align:left;font-size:.78em;font-weight:700;color:var(--ink2);line-height:1.15}
.ap .rb-mt>div{display:grid;gap:1px;padding:6px 4px;border-radius:12px;background:var(--surface2);min-height:3.2em;align-content:center}
.ap .rb-mt b{font-family:var(--fd);font-size:1.2em;color:var(--navy)}
.ap .rb-mt em{font-style:normal;font-size:.72em;color:var(--muted)}
.ap .rb-mt .rb-ruim b{color:#c0392b}
.ap .vqa{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ap .vqa button,.ap .vqa a{position:relative;min-height:5.2em;border:2px solid var(--line);background:var(--surface);border-radius:18px;font-weight:800;font-size:.8em;color:var(--ink);display:grid;place-items:center;align-content:center;gap:4px;padding:8px 4px;box-shadow:0 2px 6px rgba(17,70,101,.07);cursor:pointer;transition:transform .08s;text-align:center;text-decoration:none;line-height:1.2}
.ap .vqa button i,.ap .vqa a i{font-style:normal;font-size:1.8em;line-height:1}
.ap .vqa button:active,.ap .vqa a:active{transform:scale(.95)}
.ap .vqa a{border-color:var(--navy)}
.ap .vqa .breve{opacity:.55;cursor:default;box-shadow:none}
.ap .vqa .breve em{position:absolute;top:5px;right:7px;font-style:normal;font-size:.72em;font-weight:700;color:var(--muted)}
.ap .ap-bar.vbar{grid-template-columns:repeat(var(--nb,4),1fr)}
.ap .ap-bar.vbar button{cursor:pointer}
.ap .ap-bar.vbar button.on{background:var(--navy);color:#fff}
.ap .ap-aviso2{background:var(--s3-soft);border-radius:16px;padding:12px 14px;font-size:.88em;font-weight:600;color:var(--ink)}
.ap .ap-quando{text-align:center;font-size:.78em;color:var(--muted);margin:0}
/* aplicativo: letra maior e campos maiores para digitar (janelas e entrada) — igual ao Vision */
:root.sempre-claro .fmodal .dh h2{font-size:21px}
:root.sempre-claro .fmodal .dh .btn{min-width:48px;min-height:48px;font-size:20px;justify-content:center}
:root.sempre-claro .fmodal .fb{padding:18px 16px 24px;gap:16px;font-size:17px}
:root.sempre-claro .fl{font-size:16px;gap:6px;color:var(--ink);font-weight:700}
:root.sempre-claro .in{font-size:18px;min-height:56px;padding:12px 14px;border-radius:12px;border-width:2px}
:root.sempre-claro .in:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 3px var(--navy-soft)}
:root.sempre-claro textarea.in{min-height:120px}
:root.sempre-claro .login .btn{min-height:56px;font-size:18px;justify-content:center;border-radius:14px}

/* ---------- Site do escritório ---------- */
.tbl td.n,.tbl th.n{text-align:right;font-variant-numeric:tabular-nums}
.tbl tr.clic{cursor:pointer}
.tbl tr.clic:hover td{background:var(--surface2)}
.tbl tr.inativo td{color:var(--muted)}
.tbl input.in{padding:6px 8px;max-width:110px;text-align:right}
.note{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 16px;border-radius:10px;font-size:13px;margin-bottom:14px}
.note.warn{background:var(--s5-soft);color:var(--ink)}.note.info{background:var(--s3-soft);color:var(--ink)}
.fmodal.mmodal{width:min(880px,calc(100% - 24px))}
.sec{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.fgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fgrid .s2{grid-column:span 2}.fgrid .s4{grid-column:1/-1}
/* Balões de preenchimento padronizados: mesma altura e alinhados pelo topo (texto de ajuda abaixo não empurra o vizinho) */
.fgrid{align-items:start}
.fgrid .fl{align-content:start}
.fgrid .fl>small,.fgrid .fl>.sub{font-weight:500;font-size:11.5px;line-height:1.2;margin-top:-1px}
:root:not(.sempre-claro) .fgrid input.in:not([type=checkbox]):not([type=radio]):not([type=file]),
:root:not(.sempre-claro) .fgrid select.in{height:42px;box-sizing:border-box;padding:0 12px;line-height:normal;font-size:14.5px}
:root:not(.sempre-claro) .fgrid input[type=file].in{height:42px;box-sizing:border-box;padding:8px 10px}
.fgrid select.in{appearance:none;-webkit-appearance:none;padding-right:34px;background-repeat:no-repeat;background-position:right 12px center;background-size:12px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
:root.sempre-claro .fgrid input.in:not([type=checkbox]):not([type=radio]):not([type=file]),:root.sempre-claro .fgrid select.in{height:56px;box-sizing:border-box}
.fgrid input.in[readonly]{background:var(--surface2);color:var(--ink2)}
.calc{background:var(--s2-soft);color:var(--green);border-radius:8px;padding:8px 10px;font-weight:700;font-size:13px}
.calc.erro{background:var(--s4-soft);color:var(--s4)}
.fila-pend{font-size:11px;font-weight:700;color:var(--s5-tx);margin-left:6px}
.msinal{margin:0 0 12px}.msinal .sinal{margin:0}
.msinal .sinal.ok{background:var(--s2-soft);color:var(--s2-tx)} .msinal .sinal.off{background:var(--s5-soft);color:var(--s5-tx)}
.msinal .sinal.env{background:var(--s3-soft);color:var(--s3)} .msinal .sinal.err{background:var(--s4-soft);color:var(--s4)}
@media (max-width:700px){.main{padding:18px 16px}.fgrid{grid-template-columns:1fr 1fr}.fgrid .s2{grid-column:1/-1}}
@media (max-width:520px){.fgrid{grid-template-columns:1fr}}
@media print{@page{size:A4 landscape;margin:8mm}
  .side,.mtop,.acts,.noprint,.bnav,.ap-bar,.msinal,.tabs button:not(.on){display:none!important}
  .shell{display:block}.main{padding:0!important}.card{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .scroll{overflow:visible}body{background:#fff}}
a.btn{text-decoration:none}

/* ---------- Cadernetas (Movimentação, Manejo de Pastagens e as próximas) ----------
   Mesma linguagem do app do Farm Plan e do Vision: cartões .ap-t, títulos .ap-sec,
   botões grandes e arredondados (.ap-b2 / .vqa), Sim verde e Não vermelho (.ap-ok / .ap-no),
   avisos suaves e Salvar verde. Os nomes das classes ficaram; o desenho é o do app. */
.ap .mv-data{display:inline-flex;align-items:center;gap:4px;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:6px 10px;font-weight:800;color:var(--navy);font-size:.85em}
.ap .mv-data input{background:transparent;border:0;color:var(--ink);font:inherit;font-weight:800;color-scheme:light;max-width:140px}
.obr{color:var(--s4)}
/* cartão de cada etapa = .ap-t */
.ap .abody .card.fs{margin:0;display:grid;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 1px 3px rgba(56,62,66,.05),0 6px 18px rgba(56,62,66,.04)}
/* título da etapa = .ap-sec; rótulo de campo = .fl do app */
.ap .abody .card.fs>.sec:first-child{font-size:1.02em;font-weight:800;color:var(--ink);letter-spacing:0;text-transform:none;margin:0}
.ap .abody .sec{font-size:.92em;font-weight:700;color:var(--ink);letter-spacing:0;text-transform:none;margin:4px 0 -4px}
.ap .abody .sub2{font-size:.82em;color:var(--ink2);font-weight:600}
/* escolhas (motivo, destino, nº de pessoas, Pastos/Currais) = botões do app */
.ap .mv-mot{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ap .mv-op{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ap .mv-mot button,.ap .mv-op button,.ap .mj-abas button{border:2px solid var(--line);background:var(--surface);border-radius:16px;font-weight:800;color:var(--ink);cursor:pointer;text-transform:none;letter-spacing:0;transition:transform .08s;box-shadow:0 2px 6px rgba(56,62,66,.06)}
.ap .mv-mot button{min-height:5.2em;font-size:.82em;display:grid;place-items:center;align-content:center;gap:4px;padding:8px 4px}
.ap .mv-mot button i{font-style:normal;font-size:1.8em;line-height:1}
.ap .mv-op button{min-height:3.3em;font-size:.88em;padding:4px 6px}
.ap .mv-op.mv-6{grid-template-columns:repeat(6,1fr)}.ap .mv-op.mv-6 button{min-height:3em;font-size:.95em}
.ap .mv-mot button.on,.ap .mv-op button.on,.ap .mj-abas button.on{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:none}
.ap .mv-mot button:active,.ap .mv-op button:active,.ap .mj-nota button:active,.ap .mj-prob button:active,.ap .mv-step button:active{transform:scale(.95)}
/* Sim e Não = .ap-ok (verde) e .ap-no (vermelho) do Farm Plan */
.ap .mv-op.mj-2{grid-template-columns:1.35fr 1fr;gap:10px}
.ap .mv-op.mj-2 button{min-height:3.6em;font-size:1em;border-radius:16px}
.ap .mv-op.mj-2 button[data-contado="true"].on{background:var(--s2);border-color:var(--s2);color:#fff;box-shadow:0 3px 0 #157a37}
.ap .mv-op.mj-2 button[data-contado="false"].on{background:var(--surface);border-color:var(--s4);color:var(--s4)}
/* avisos = .ap-aviso2 */
.ap .mv-nota{background:var(--surface2);border-radius:16px;padding:12px 14px;font-size:.85em;font-weight:600;color:var(--ink);display:flex;gap:8px;align-items:flex-start}
.ap .mv-nota.info{background:var(--s3-soft)}
/* quantidade por categoria */
.ap .mv-cat{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line2)}
.ap .mv-cat b{display:block;font-size:.95em}.ap .mv-cat small{color:var(--muted);font-size:.78em;font-weight:600}
.ap .mv-step{display:flex;align-items:center;gap:6px}
.ap .mv-step button{width:2.7em;height:2.7em;border-radius:14px;border:2px solid var(--line);background:var(--surface);font-size:1.25em;font-weight:800;color:var(--navy);cursor:pointer}
.ap .mv-step input{width:4.2em;height:2.7em;text-align:center;font-size:1.1em;font-weight:800;border:2px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink)}
.ap .mv-tot{text-align:right;font-size:.9em}
/* foto, áudio e anexos = .ap-b2 */
.ap .mv-arq{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ap .mv-arq .btn,.ap .mj-foto{min-height:3.3em;justify-content:center;font-weight:800;border-radius:14px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font-size:.92em}
.ap .mj-foto{width:100%}
.ap .mv-arq .btn.dark,.ap .mj-foto.dark{background:var(--navy);border-color:var(--navy);color:#fff}
.ap .mv-arq .btn.danger{background:var(--s4);border-color:var(--s4);color:#fff}
.ap .mv-cinza,.ap .mj-cinza{background:var(--surface2);color:var(--muted);border-color:var(--line)}
.ap .mv-prev{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ap .mv-prev span{position:relative;display:inline-flex}
.ap .mv-prev img{width:96px;height:96px;object-fit:cover;border-radius:14px}.ap .mv-prev audio{max-width:220px}
.ap .mv-prev button{position:absolute;top:-6px;right:-6px;width:26px;height:26px;border-radius:50%;border:0;background:rgba(0,0,0,.65);color:#fff;cursor:pointer}
/* Salvar = verde do app (.ap-ok); Limpar = .ap-b2 */
.ap .mv-salvar{min-height:3.6em;justify-content:center;font-size:1.05em;font-weight:800;border-radius:16px;border:0;background:var(--s2);color:#fff;box-shadow:0 3px 0 #157a37}
.ap .mv-limpar{min-height:3em;justify-content:center;font-weight:800;border-radius:14px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink)}
.ap .mv-salvar.mj-falta{opacity:.55}
.ap .mj-aviso{text-align:center;font-size:.82em;font-weight:600;color:var(--muted)}
/* registros = cartões .ap-t */
.ap .mv-reg{gap:4px!important}.ap .mv-reg-h{display:flex;justify-content:space-between;gap:8px}.ap .mv-reg-h span{color:var(--muted);font-size:.78em;white-space:nowrap}
.ap .mv-reg-p{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:4px}
/* Manejo de Pastagens: Pastos/Currais, notas (semáforo) e avaliação geral (lista como a Conferência do Farm Plan) */
.ap .mj-abas{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ap .mj-abas:has(button:nth-child(3)){grid-template-columns:repeat(3,1fr)}   /* com a 📏 Ronda: 3 na mesma linha */.ap .mj-abas:has(button:nth-child(4)){grid-template-columns:1fr 1fr}   /* com a 🌱 Degradação: 2 × 2 */
.ap .mj-abas button{min-height:3.3em;font-size:.95em}
.ap .mj-nota{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.ap .mj-nota button{min-height:4.8em;border:2px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);display:grid;place-items:center;align-content:center;gap:2px;cursor:pointer;padding:6px 2px;box-shadow:0 2px 6px rgba(56,62,66,.06);transition:transform .08s}
.ap .mj-nota button i{width:12px;height:12px;border-radius:50%}.ap .mj-nota b{font-size:1.2em;line-height:1.1}.ap .mj-nota small{font-size:.62em;font-weight:700;color:var(--muted);text-align:center;line-height:1.15}
.ap .mj-nota button.on{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:none}.ap .mj-nota button.on small{color:rgba(255,255,255,.85)}
/* 📏 Ronda da Régua: uma linha por pasto (nome e situação · altura · nota) */
.ap .mj-rd{display:grid;grid-template-columns:minmax(0,1fr) 84px 112px;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.ap .mj-rd-t b{display:block}.ap .mj-rd-t small{display:block;color:var(--muted);font-size:.78em;line-height:1.3}
.ap .mj-rd-in{text-align:center;font-weight:800}.ap .mj-rd-n{font-size:.8em;font-weight:700;display:flex;align-items:center;gap:5px}.ap .mj-rd-n i{width:10px;height:10px;border-radius:50%;flex:none}
@media (max-width:380px){.ap .mj-rd{grid-template-columns:minmax(0,1fr) 72px}.ap .mj-rd-n{grid-column:1/-1}}
/* 📏 faixa em cm de cada nota do pasto (alturas-pasto.js) */
.ap .mj-nota small.mj-cm{color:var(--navy);font-weight:800;white-space:nowrap}.ap .mj-nota button.on small.mj-cm{color:#fff}
.c-r{background:#E5484D}.c-a{background:#F5B700}.c-v{background:#20A44B}
.ap .mj-prob{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:6px}
.ap .mj-prob button{display:flex;align-items:center;justify-content:center;text-align:center;height:100%;min-height:4.4em;border:1.5px solid var(--line);background:var(--surface);border-radius:12px;padding:6px 6px;font-weight:700;font-size:.72em;line-height:1.2;color:var(--ink);text-transform:none;cursor:pointer;overflow-wrap:anywhere}
.ap .mj-prob button.on{background:var(--s4-soft);border-color:var(--s4);color:var(--s4)}
@media (max-width:380px){.ap .mv-mot,.ap .mv-op{grid-template-columns:repeat(2,1fr)}.ap .mv-op.mv-6{grid-template-columns:repeat(3,1fr)}.ap .mj-nota small{font-size:.56em}}

/* ===== LOTE: composição por categoria (cadastros.html) ===== */
.fmodal .fb{grid-template-columns:minmax(0,1fr)}
.mu-comp-box{display:grid;gap:10px;min-width:0}
.mu-pilha{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.mu-piq{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.mu-piq label{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer}
.mu-piq label small{grid-column:2;color:var(--muted);font-size:11.5px}
/* pasto que já está em outro módulo: cor própria e o nome do módulo (pedido do Welton, 21/10/2026) */
.mu-piq label.outro{background:var(--s3-soft);border-color:var(--s3)}.mu-piq-leg{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--s3-soft);border:1px solid var(--s3);vertical-align:-1px}.mu-piq-mod{grid-column:2;font-style:normal;font-size:11.5px;font-weight:800;color:var(--s3)}
/* 🧊 listas de cadastro congeladas (22/10/2026): rolam dentro do quadro; cabeçalho e 1ª coluna (o nome) ficam parados */
/* 📅 Programação de Preventivas (Manutenção de Máquinas) */
.mn-prog-bt{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 10px}.mn-prog-bt>button[data-progj]{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.mn-prog-bt>button[data-progj].on{background:var(--navy);color:#fff;border-color:var(--navy)}.mn-prog-bt>button b{margin-left:4px}.mn-prog td{white-space:nowrap}
/* 🔎 filtros e classificação das tabelas de cadastro */
.mu-filtros{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:4px 18px 10px}.mu-filtros .in{width:auto;min-width:150px;max-width:220px;padding-top:7px;padding-bottom:7px}.mu-filtros input.in{min-width:200px}
th.mu-ord{cursor:pointer;user-select:none}th.mu-ord:hover{color:var(--ink)}
/* 🐂 taxa de lotação do capim mês a mês */
.mu-meses{display:grid;grid-template-columns:repeat(12,minmax(54px,1fr));gap:6px}.mu-meses label{display:flex;flex-direction:column;gap:2px;font-weight:600}.mu-meses small{font-size:11px;color:var(--muted);text-align:center}.mu-meses .in{text-align:center;padding-left:4px;padding-right:4px}
.mu-meses-bt{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
@media (max-width:720px){.mu-meses{grid-template-columns:repeat(6,1fr)}}
/* 🌱 pincel de capim no Cadastro de Pastos */
.mu-capdot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.mu-pincel{display:flex;flex-direction:column;gap:8px;padding:10px 14px;margin:0 0 8px;background:var(--surface2);border:1px solid var(--line);border-radius:10px}
.mu-pincel-bt{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mu-pincel-bt>button[data-pcap]{display:inline-flex;align-items:center;gap:2px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.mu-pincel-bt>button[data-pcap].on{background:var(--navy);color:#fff;border-color:var(--navy)}
.mu-pincel-bt select{max-width:230px}
.mu-pintando tbody tr{cursor:cell;user-select:none}.mu-pintando td[data-modcol]:not([data-modcol=""]){cursor:copy;text-decoration:underline dotted}
.mu-pintando tr.mu-pintado td{background:rgba(46,154,79,.12)}
.mu-cong{max-height:calc(100vh - 240px);min-height:260px}
.mu-cong .tbl td:first-child,.mu-cong .tbl th:first-child{position:sticky;left:0;z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--line)}
.mu-cong .tbl thead th:first-child{z-index:4}
.mu-cong .tbl tbody tr.clic:hover td:first-child{background:var(--surface2)}
/* linhas da mesma altura e colunas centralizadas (pedido do Welton, 22/10/2026): nada quebra linha; a Observação corta com "…" (o texto inteiro no "title") */
.mu-apoio-cong .tbl.mu-apoio td,.mu-apoio-cong .tbl.mu-apoio th{white-space:nowrap;text-align:center}
.mu-apoio-cong .tbl.mu-apoio td:first-child,.mu-apoio-cong .tbl.mu-apoio th:first-child{text-align:left}
.mu-apoio-cong .tbl.mu-apoio td.mu-obs{text-align:left;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* grade de marcar comprida (ex.: pastos do bebedouro): rolagem própria; os campos de cima e de baixo ficam à vista (22/10/2026) */
.mu-piq.mu-refs-caixa{max-height:min(300px,40vh);overflow:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);overscroll-behavior:contain}
.mu-piq-busca{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 10px}.mu-piq-busca .in{max-width:320px}
.mu-piq-cor{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--s3-soft);border:1px solid var(--s3);vertical-align:-1px;margin-right:4px}
.mu-piq label:has(input:checked){border-color:var(--green);background:var(--s2-soft)}
.mu-nw{white-space:nowrap}
.tbl .mu-obs{min-width:220px;max-width:360px;white-space:normal;font-size:12px;color:var(--ink2)}
.tbl.mu-precos td,.tbl.mu-precos th{white-space:nowrap}
.tbl.mu-precos td.clic:hover{background:var(--surface2);cursor:pointer}
.tbl.mu-precos tr.mu-hoje td{background:var(--s3-soft)}
.tbl.mu-comp th{white-space:nowrap}
.mu-trilha{display:grid;gap:6px;min-width:0}
.mu-trilha-h{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tbl.mu-trilha-t td,.tbl.mu-trilha-t th{padding:6px 8px;font-size:12.5px;white-space:nowrap}
.tbl.mu-comp td{padding:6px 6px;vertical-align:middle}
.tbl.mu-comp input.in,.tbl.mu-comp select.in{height:36px;padding:0 8px;font-size:13.5px;max-width:none;width:100%}
.tbl.mu-comp select.in{min-width:150px;text-align:left}
.tbl.mu-comp input.in[data-c]{min-width:76px;text-align:right}
.tbl.mu-comp input[type=date].in{min-width:138px;text-align:left}

.mu-baixo{color:var(--s4)}.mu-ok{color:var(--green)}
/* ===== CADERNETA DE PESAGEM (pesagem.html) ===== */
.ap .pes-2{grid-template-columns:1fr 1fr}
.ap .pes-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.ap .pes-cats button{padding:10px 14px;border:2px solid var(--line);border-radius:12px;background:var(--surface);font:inherit;font-weight:700}
.ap .pes-cats button.on{border-color:var(--navy);background:var(--navy);color:#fff}
.ap .pes-entra{display:grid;grid-template-columns:1.3fr 1fr auto;gap:8px;align-items:center}
.ap .pes-entra #pesKg{font-size:26px;font-weight:800;text-align:center;min-height:62px}
.ap .pes-entra .btn{min-height:62px;font-size:17px}
.ap .pes-lista{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;max-height:280px;overflow:auto}
.ap .pes-lista span{display:inline-flex;align-items:center;gap:6px;padding:6px 8px 6px 10px;border-radius:10px;background:var(--surface2);border:1px solid var(--line)}
.ap .pes-lista span.fora{background:var(--s4-soft);border-color:var(--s4)}
.ap .pes-lista span b{font-size:16px}.ap .pes-lista span small{color:var(--muted);font-size:11px}
.ap .pes-lista span button{border:0;background:none;font-size:14px;color:var(--muted);padding:2px 4px}
.ap .pes-grupo{display:grid;grid-template-columns:90px 120px;gap:6px}
.ap .pes-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ap .pes-kpis>div{background:var(--surface2);border-radius:12px;padding:10px 12px;display:grid}
.ap .pes-kpis small{font-size:12px;color:var(--muted);font-weight:700}.ap .pes-kpis b{font-size:22px}.ap .pes-kpis span{font-size:12px;color:var(--ink2)}
.ap .pes-cat{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:8px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.ap .pes-cat span:last-child{display:grid;text-align:right}.ap .pes-cat small{font-size:11px;color:var(--muted)}
.ap .pes-pos{color:var(--green);font-weight:700}.ap .pes-neg{color:var(--s4);font-weight:700}

/* Pesagem e Curral: sessão, checklist e animal por animal */
.ap .cu-tipos{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.ap .cu-tipos button,.ap .cu-ch button{padding:9px 12px;border:2px solid var(--line);border-radius:12px;background:var(--surface);font:inherit;font-weight:700;font-size:14px}
.ap .cu-tipos button.on,.ap .cu-ch button.on{border-color:var(--navy);background:var(--navy);color:#fff}
.ap .cu-hora{margin:10px 0;font-size:15px}
.ap .cu-sn{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.ap .cu-sn span{font-weight:700}.ap .cu-sn>div{display:flex;gap:6px}
.ap .cu-sn button{width:54px;height:44px;border:2px solid var(--line);border-radius:12px;background:var(--surface);font:inherit;font-weight:800;font-size:16px}
.ap .cu-sn button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.ap .cu-sn button.on.v{background:var(--green);border-color:var(--green)}.ap .cu-sn button.on.r{background:var(--s4);border-color:var(--s4)}
.ap .cu-animal{display:grid;gap:10px}
.ap .cu-id,.ap .cu-sel{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ap .cu-id .in{font-size:20px;font-weight:700;min-height:56px}
.ap .cu-linha{display:grid;gap:6px}.ap .cu-linha>span{font-size:13px;font-weight:700;color:var(--ink2)}
.ap .cu-ch{display:flex;flex-wrap:wrap;gap:6px}
.ap .pes-entra{grid-template-columns:1fr auto}
.ap .cu-tab td,.ap .cu-tab th{padding:6px 8px;font-size:14px}.ap .cu-tab tr.fora td{background:var(--s4-soft)}
.ap .pes-lote{padding:8px 0;border-top:2px solid var(--line)}

/* Caderneta de Morte */
.ap .mo-cats{margin:10px 0}.ap .mo-cats small{opacity:.7;margin-left:4px}
.ap .cu-ch button.mo-notif{border-color:var(--s4)}.ap .cu-ch button.mo-notif.on{background:var(--s4);border-color:var(--s4)}
.ap .mo-alerta{background:var(--s4-soft);color:var(--ink);border:2px solid var(--s4)}
.ap .mo-rec{color:var(--s5-tx);font-weight:700;margin-left:6px}

/* ===== HORÁRIO DE EXPEDIENTE ===== */
.mu-exp{margin-bottom:16px}.mu-exp.on{box-shadow:inset 0 0 0 2px #E0A43A}
.mu-exp-h{display:flex;align-items:center;gap:16px;padding:16px 18px;cursor:pointer}
.mu-exp-h>div:first-child{flex:1}.mu-exp-seta{font-size:18px;color:var(--muted)}
.mu-exp-c{padding:0 18px 18px;display:grid;gap:10px}
.mu-exp-dias{display:grid;gap:8px}
.mu-exp-livres{display:flex;flex-wrap:wrap;gap:8px}
.mu-exp-livres button{display:grid;text-align:left;gap:1px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer;font:inherit}
.mu-exp-livres button b{font-size:14px}.mu-exp-livres button small{font-size:11.5px;color:var(--muted)}
.mu-exp-livres button.on{background:var(--s2-soft);border-color:var(--green)}.mu-exp-livres button.on b{color:var(--green)}
.mu-exp-d{display:grid;grid-template-columns:150px 130px 30px 130px;align-items:center;gap:10px}
.mu-exp-d label{display:flex;gap:8px;align-items:center;font-weight:600}
.mu-exp-d input[type=time].in{height:40px;padding:0 10px}
.mu-chave{position:relative;width:52px;height:30px;flex-shrink:0}
.mu-chave input{opacity:0;width:0;height:0}
.mu-chave span{position:absolute;inset:0;border-radius:30px;background:var(--line);transition:.2s}
.mu-chave span:before{content:'';position:absolute;width:24px;height:24px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.mu-chave input:checked+span{background:var(--navy)}.mu-chave input:checked+span:before{transform:translateX(22px)}
.mu-expediente{position:fixed;inset:0;z-index:200;background:rgba(245,247,246,.97);display:flex;align-items:center;justify-content:center;padding:24px}
.mu-expediente-c{max-width:420px;text-align:center;display:grid;gap:12px;justify-items:center}
.mu-expediente-i{font-size:56px}.mu-expediente h2{font-size:24px}
@media (max-width:600px){.mu-exp-d{grid-template-columns:1fr 1fr;}.mu-exp-d label{grid-column:1/-1}}

/* ===== CADASTROS OPERACIONAIS (apoio.html) ===== */
.mu-abas-grupos{display:grid;gap:10px;width:100%}
.mu-abas-g{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;align-items:center}
.mu-abas-g>small{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mu-abas-g .tabs2{grid-template-columns:repeat(4,minmax(0,1fr))}
.mu-cont{display:inline-block;min-width:20px;padding:0 6px;border-radius:10px;background:var(--surface2);color:var(--ink2);font-size:11px;font-weight:700;margin-left:4px}
.tabs2 button.on .mu-cont{background:rgba(255,255,255,.2);color:#fff}
.cardh .acts input.in.mu-busca{width:200px;height:34px;padding:0 10px}
.tbl.mu-apoio th{white-space:nowrap}
.mu-lote-set{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:0 18px 12px}.mu-lote-set select.in{width:auto;height:34px}.tbl.mu-apoio td{white-space:nowrap}
.tbl.mu-apoio td.mu-obs{white-space:normal}
@media (max-width:700px){.mu-abas-g{grid-template-columns:1fr}.mu-abas-g .tabs2{grid-template-columns:1fr 1fr}}

/* ===== NUTRIÇÃO ANIMAL (nutricao.html): matriz da formulação e quadro categoria × mês ===== */
.nu-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.nu-scroll{max-height:70vh}
.tbl.nu-mat th,.tbl.nu-est th{position:sticky;top:0;z-index:2;background:var(--surface)}
.tbl .nu-fixa{position:sticky;left:0;z-index:1;background:var(--surface);min-width:190px;box-shadow:1px 0 0 var(--line)}
.tbl thead .nu-fixa{z-index:3}
.nu-dh{cursor:pointer;min-width:118px;white-space:normal;font-size:11.5px;line-height:1.25;vertical-align:bottom;text-align:right}
.nu-dh:hover{text-decoration:underline}
.tbl input.in.nu-cel{width:84px;height:34px;padding:0 8px;text-align:right;font-weight:600}
.tbl input.in.nu-cel:placeholder-shown,.tbl input.in.nu-cel[value=""]{color:var(--muted)}
.nu-mat tfoot td{font-weight:700;background:var(--surface2)}
.nu-mat tfoot .nu-fixa{background:var(--surface2)}
.nu-ok{color:var(--green)}.nu-erro{color:var(--s4);background:var(--s4-soft)!important}
.nu-barra{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 16px 16px}
/* Cadastro de Estratégias: todas as linhas na mesma altura (nome e tipo numa linha cada, sem quebrar) */
.nu-estr td{white-space:nowrap;height:58px}.nu-estr td .sub{white-space:nowrap}
/* as linhas das estratégias ficam na mesma altura mesmo apertadas (tabela-cabe.js): o nome não quebra; se faltar lugar, a tabela rola com a barra à vista */
.tbl.nu-estr.tc-apertada td,.tbl.nu-estr.tc-apertada td .sub{white-space:nowrap}
.nu-cor{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:7px;vertical-align:-1px;border:1px solid var(--line)}
.nu-est td.nu-c{min-width:150px;padding:6px;vertical-align:top}
.nu-est th small{font-weight:500;color:var(--muted)}
.tbl select.in.nu-sel{width:100%;max-width:none;height:34px;padding:0 26px 0 8px;font-size:12px;font-weight:600;text-align:left;appearance:none;-webkit-appearance:none;background-color:rgba(255,255,255,.75);
  background-repeat:no-repeat;background-position:right 8px center;background-size:10px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236B7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.tbl input.in.nu-gmd{width:100%;max-width:none;height:30px;margin-top:4px;padding:0 8px;font-size:12.5px;text-align:right;background:rgba(255,255,255,.75)}
.cardh .acts input.in.nu-mes{width:150px;height:32px;padding:0 8px}

/* ===== COR DO MANEJ'US: cinza grafite · como o Vision tem o verde-escuro, o Manej'Us tem a sua cor =====
   Só troca a cor da marca (menu, cabeçalhos, botões escuros, seleção); o resto é o estilo.css do Farm Plan. */
:root{--navy:#383E42;--navy-soft:#E6E9EB;--focus:#5A646B;--shadow:0 1px 2px rgba(56,62,66,.07),0 6px 24px rgba(56,62,66,.07)}
@media (prefers-color-scheme:dark){:root{--navy:#2A2F33;--navy-soft:#343B40;--focus:#9AA5AD}}
:root.sempre-claro{--navy:#383E42;--navy-soft:#ECEEF0;--focus:#5A646B}
.login .card{box-shadow:0 2px 6px rgba(56,62,66,.06),0 16px 40px rgba(56,62,66,.09)}
.ap .ap-top{box-shadow:0 2px 14px rgba(56,62,66,.08)}
.ap .ap-t{box-shadow:0 1px 3px rgba(56,62,66,.05),0 6px 18px rgba(56,62,66,.04)}

/* Botão 📄 POP ao lado de cada avaliação (o PDF anexado em Cadastros › Parâmetros) · POP em amarelo, como no briefing */
.ap .abody .sec{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ap .mu-pop{margin-left:auto;border:0;background:#F6C744;color:#3A2E05;border-radius:99px;padding:5px 12px;font-weight:800;font-size:.82em;min-height:2.2em;cursor:pointer;box-shadow:0 2px 0 #C99A12}
.ap .mu-pop:active{transform:scale(.95)}

/* Banco de POPs (site): onde aparece = caderneta › seções para marcar */
.popl{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;align-items:start}
.popc{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);display:grid;gap:4px;font-size:13px}
.popc b{font-size:13.5px;margin-bottom:2px}
.popc label{display:flex;gap:8px;align-items:flex-start;color:var(--ink2);cursor:pointer;line-height:1.3}
.popc input{margin-top:2px;accent-color:var(--navy)}
.ap .mu-pops-topo{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.ap .mu-pops-topo:empty{display:none}.ap .mu-pops-topo .mu-pop{margin-left:0}

/* "Quem Participou?": equipe da fazenda (pessoas do Farm Plan) depois do Nº de Pessoas */
.ap .mu-equipe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:6px}
.ap .mu-equipe button{height:100%;min-height:3.4em;border:1.5px solid var(--line);background:var(--surface);border-radius:12px;padding:6px;display:grid;place-items:center;align-content:center;gap:1px;text-align:center;color:var(--ink);cursor:pointer;overflow-wrap:anywhere}
.ap .mu-equipe b{font-size:.8em;line-height:1.15}.ap .mu-equipe small{font-size:.62em;color:var(--muted);font-weight:600;line-height:1.1}
.ap .mu-equipe button.on{background:var(--navy);border-color:var(--navy);color:#fff}.ap .mu-equipe button.on small{color:rgba(255,255,255,.8)}
.ap .mu-equipe button:active{transform:scale(.95)}
.ap .mu-equipe button.mu-folga:not(.on){background:#FFF8E1;border-style:dashed}.ap .mu-equipe button.mu-folga:not(.on) small{color:#7a5a00;font-weight:700}
.ap .mu-conta{margin-left:auto;background:var(--surface2);border:1px solid var(--line);border-radius:99px;padding:2px 10px;font-size:.85em;font-weight:800;color:var(--ink2)}
.ap .mu-conta.ok{background:var(--s2-soft);border-color:transparent;color:var(--s2-tx)}

/* Acesso às cadernetas (Não Vê · Só Vê · Edita) */
.perm-g{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 0 2px;border-top:1px solid var(--line)}
.tbl select.mu-niv{width:auto;min-width:118px;padding:5px 8px;font-size:12.5px;font-weight:700;text-align:left;max-width:none}
.mu-niv-editar{background:var(--s2-soft);border-color:#9ED9B0;color:var(--s2-tx)}
.mu-niv-ver{background:var(--s3-soft);border-color:#B9D7EC;color:var(--s3)}
.mu-niv-nao{color:var(--muted)}
.ap .vqa a .mu-so{position:absolute;top:5px;right:7px;font-style:normal;font-size:.72em;font-weight:700;color:var(--s3)}
.ap .mu-sover{margin-top:8px;background:var(--s3-soft);color:var(--ink);border-radius:12px;padding:8px 12px;font-size:.82em;font-weight:700}
:root.so-ver .ap .mv-salvar,:root.so-ver .ap .mv-limpar,:root.so-ver .ap [data-apaga]{display:none!important}

/* Janela "Salvo" depois de cada registro: Compartilhar no WhatsApp · Novo Registro · Voltar para o Início */
.mu-salvo{width:min(440px,calc(100% - 24px))}
.mu-salvo .fb{display:grid;gap:10px;text-align:center;padding:22px 18px}
.mu-salvo-ok{width:62px;height:62px;margin:0 auto;border-radius:50%;border:4px solid var(--s2);color:var(--s2-tx);display:grid;place-items:center;font-size:30px;font-weight:900}
.mu-salvo h2{font-size:22px;margin:2px 0 0}
.mu-salvo .sub2{margin:0;font-size:14px;color:var(--ink2)}
.mu-salvo-txt{white-space:pre-line;text-align:left;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13px;max-height:34vh;overflow:auto;color:var(--ink)}
.mu-salvo button{min-height:54px;border-radius:14px;font-weight:800;font-size:16px;cursor:pointer}
.mu-salvo-wa{border:0;background:#128C4A;color:#fff;box-shadow:0 3px 0 #0b6b37}
.mu-salvo-novo{border:0;background:var(--navy);color:#fff}
.mu-salvo-ini{border:2px solid var(--line);background:var(--surface);color:var(--ink)}
.mu-salvo button:active{transform:scale(.97)}
.ap .mv-reg-b{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.btn.mu-wa{background:#128C4A;border-color:#128C4A;color:#fff}

/* Botão de cadastrar (+ Novo Lote, + Novo Pasto…) em destaque no quadro da lista */
.btn.mu-novo{min-height:44px;padding:10px 20px;font-size:15px;font-weight:800;border-radius:12px;box-shadow:0 3px 0 #157a37;margin-left:auto}
.btn.mu-novo:active{transform:translateY(2px);box-shadow:0 1px 0 #157a37}
.cardh .acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-left:auto}
/* Avaliação Geral: ícone de cada problema no botão */
.ap .mj-prob button{flex-direction:column;gap:3px}
.ap .mj-prob .mj-ic{font-style:normal;font-size:1.5em;line-height:1}
.ap .sec .mo-mult{font:500 12px "Public Sans",system-ui,sans-serif;color:var(--t3);margin-left:6px}
/* Enfermaria */
.ap .en-n{display:inline-block;min-width:18px;padding:0 5px;border-radius:9px;background:var(--s4);color:#fff;font-size:11px;margin-left:4px}
.ap .en-apl{border:1px solid var(--line,#e3e6e8);border-radius:12px;padding:10px 12px;margin:8px 0}
.ap .en-apl-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
.ap .cu-ch button.on.en-v{background:#2e7d32;border-color:#2e7d32}.ap .cu-ch button.on.en-a{background:#e09b00;border-color:#e09b00}.ap .cu-ch button.on.en-r{background:var(--s4);border-color:var(--s4)}
.ap .en-acoes{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 2px}
.ap #enDiagOutro{margin-top:8px}
/* Morte · modelo padrão 06 */
.ap .mo-fotos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ap .mo-foto{position:relative;aspect-ratio:1/1;border-radius:14px;overflow:hidden;border:2px dashed var(--line,#cfd5d8);background:var(--bg2,#f4f6f6)}
.ap .mo-foto.tem{border-style:solid;border-color:#2e7d32}
.ap .mo-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ap .mo-foto-b{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:none;border:0;font:700 13px "Public Sans",system-ui,sans-serif;color:var(--t1,#1d2b22);cursor:pointer}
.ap .mo-foto.tem .mo-foto-b{background:linear-gradient(transparent 45%,rgba(0,0,0,.55));color:#fff;justify-content:flex-end;padding-bottom:8px}
.ap .mo-foto-b i{font-style:normal;background:#2e7d32;color:#fff;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;position:absolute;top:6px;right:6px}
.ap .mo-foto-x{position:absolute;top:6px;left:6px;z-index:2;width:26px;height:26px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;cursor:pointer}
.ap .mo-sexo,.ap .mo-sn>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ap .mo-sexo button,.ap .mo-sn button{min-height:52px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 15px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .mo-sexo button.on,.ap .mo-sn button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .mo-sinais{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ap .mo-sinais button{min-height:76px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px/1.2 "Public Sans",system-ui,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px;cursor:pointer}
.ap .mo-sinais button i{font-style:normal;font-size:22px}
.ap .mo-sinais button.on{background:var(--s4,#d9443a);border-color:var(--s4,#d9443a);color:#fff}
.ap .mo-sinais button.nada.on{background:#1f3a2b;border-color:#1f3a2b}
.ap .mo-audio{width:100%;min-height:50px;margin-bottom:8px}
.ap .mo-id{grid-template-columns:minmax(0,1fr);margin-top:10px}.ap .mo-id .mv-step{justify-content:center}
/* Aprovação do Rebanho (SQL 219) */
.ap-dia{margin-bottom:14px}
.ap-dia-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:10px}.ap-dia-h span{color:var(--t3,#6b7378);font-size:13px}.ap-dia-h .btn{margin-left:auto}
.ap-tbl td{vertical-align:top}.ap-tbl .ap-acoes{white-space:nowrap}.ap-tbl .ap-acoes .btn{margin:0 4px 4px 0}
.ap-tbl select.sm{margin-top:6px;min-height:34px;font-size:13px}
.ap .ap-selo{font-weight:700}.ap .ap-selo.ok{color:#2e7d32}.ap .ap-selo.nao{color:var(--s4,#d9443a)}.ap .ap-selo.esp{color:#b07800}
.ap .ap-aprovar{border:2px solid #e09b00;background:#fff8e6}
.ap .mo-ids{margin-top:10px}.ap .mo-ids .in{font-size:18px;font-weight:700;min-height:52px}
/* Aprovação: abas Pendentes · Aprovadas · Recusadas */
.ap-abas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 16px}
.ap-aba{display:flex;align-items:center;gap:10px;min-height:64px;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);text-align:left;cursor:pointer;font:inherit;color:var(--ink);transition:border-color .15s,box-shadow .15s,background .15s}
.ap-aba:hover{border-color:var(--muted)}
.ap-aba-i{font-size:22px;line-height:1}
.ap-aba-t{display:flex;flex-direction:column;flex:1;min-width:0}
.ap-aba-t b{font-size:15px;font-weight:700}
.ap-aba-t small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-aba-n{min-width:32px;height:28px;padding:0 9px;border-radius:14px;display:grid;place-items:center;font-weight:800;font-size:14px;background:var(--line2,#eef0f1);color:var(--ink)}
.ap-aba-n.zero{opacity:.55}
.ap-aba.pendente.on{border-color:#e09b00;background:#fff8e6;box-shadow:0 0 0 3px rgba(224,155,0,.15)}.ap-aba.pendente .ap-aba-n:not(.zero){background:#e09b00;color:#fff}
.ap-aba.aprovada.on{border-color:#2e7d32;background:#eef7ef;box-shadow:0 0 0 3px rgba(46,125,50,.15)}.ap-aba.aprovada.on .ap-aba-n{background:#2e7d32;color:#fff}
.ap-aba.recusada.on{border-color:#c62828;background:#fdeeee;box-shadow:0 0 0 3px rgba(198,40,40,.13)}.ap-aba.recusada.on .ap-aba-n{background:#c62828;color:#fff}
@media (max-width:700px){.ap-abas{grid-template-columns:1fr}.ap-aba{min-height:56px}}
@media (prefers-color-scheme:dark){:root:not(.sempre-claro) .ap-aba.pendente.on{background:rgba(224,155,0,.14)}:root:not(.sempre-claro) .ap-aba.aprovada.on{background:rgba(46,125,50,.16)}:root:not(.sempre-claro) .ap-aba.recusada.on{background:rgba(198,40,40,.16)}}
.sinal-bt{display:block;width:100%;border:0;font:inherit;cursor:pointer;text-align:center}
/* Rodeio · modelo padrão 03 */
.ap .ro-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}
.ap .ro-info>div{background:var(--bg2,#f2f4f4);border-radius:10px;padding:7px 9px;min-width:0}.ap .ro-info small{display:block;font-size:11px;color:var(--muted)}.ap .ro-info b{font-size:14px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:420px){.ap .ro-info{grid-template-columns:1fr 1fr}}
.ap .ro-cont{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;gap:10px;align-items:stretch;margin:6px 0 10px}
.ap .ro-cont>button{border-radius:14px;border:2px solid var(--line);background:var(--surface);font-size:28px;font-weight:800;cursor:pointer;min-height:64px}
.ap .ro-cont>button.mais{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .ro-cont label{display:flex;align-items:baseline;justify-content:center;gap:4px;min-width:0;overflow:hidden;border:2px solid var(--line);border-radius:14px;background:var(--surface);padding:0 10px}
.ap .ro-cont input{width:3.4em;min-width:0;border:0;background:none;font-size:32px;font-weight:800;text-align:right;color:var(--ink);padding:8px 0}.ap .ro-cont span{color:var(--muted);font-weight:600}
.ap .ro-ok{background:#eef7ef;color:#2e7d32}
.ap .ro-sn.bom button.on{background:#eef7ef;border-color:#2e7d32;color:#1f3a2b}.ap .ro-sn.ruim button.on{background:#fdeeee;border-color:#c62828;color:#8e1c1c}
.ap .ro-prob{border:2px solid #c62828;border-radius:14px;padding:10px 12px;margin:8px 0 4px;background:#fffafa}
.ap .ro-prob-t{font-weight:700;color:#a51f1f;margin:6px 0 8px;font-size:14px}.ap .ro-link{margin-top:8px;display:inline-flex}
.ap .ro-qtd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0}.ap .ro-qtd span{font-weight:600}
.ap .ro-esc-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 6px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.03em}
.ap .ro-esc{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.ap .ro-esc button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;min-height:84px}
.ap .ro-esc button i{width:14px;height:14px;border-radius:50%}.ap .ro-esc i.r{background:#d9443a}.ap .ro-esc i.a{background:#e0b400}.ap .ro-esc i.v{background:#2e9e4a}
.ap .ro-esc button b{font-size:20px}.ap .ro-esc button small{font-size:11px;line-height:1.1;text-align:center;color:var(--muted)}
.ap .ro-esc button.on{border:2.5px solid #1f3a2b;background:#eef3ef}
.ap .ro-lote.atr{border-left:4px solid #c62828}
.ap .ro-cont span{font-size:13px;flex-shrink:0}
.ap .ro-baloes{margin-bottom:8px}.ap .ro-baloes button.on:not(.nada){background:#c62828;border-color:#c62828}
/* Maternidade · modelo padrão 08 */
.ap .ma-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ap .ma-3 button{min-height:70px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 14px/1.2 "Public Sans",system-ui,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.ap .ma-3 button i{font-style:normal;font-size:22px}.ap .ma-3 button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .ma-prob{grid-template-columns:1fr 1fr}.ap .ma-prob button{min-height:64px}
.ap .ma-cuid{grid-template-columns:repeat(4,minmax(0,1fr))}.ap .ma-cuid button{min-height:70px;font-size:12px}.ap .ma-cuid button.on{background:#1f3a2b;border-color:#1f3a2b}
@media (max-width:420px){.ap .ma-cuid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ap .ma-brinco{margin-top:8px;font-size:18px;font-weight:700}
/* Suplementação · modelo padrão 01 */
.ap .su-info{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .mj-hist{margin:6px 0 4px;background:var(--bg2,#f2f4f4);border-radius:10px;padding:7px 10px;font-size:13px}.ap .mj-hist summary{cursor:pointer;font-weight:600}
.ap .mj-hist-li{padding:6px 0;border-top:1px solid var(--line,#e3e6e6)}.ap .mj-hist-li:first-of-type{border-top:0}.ap .mj-hist-li small{display:block;color:var(--muted)}
.ap .su-foto{display:flex;align-items:center;gap:10px;margin:10px 0}
.ap .mo-foto-b2{flex:1;min-height:56px;border:2px dashed var(--line,#cfd5d8);border-radius:14px;background:var(--bg2,#f4f6f6);font:700 15px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .mo-foto-b2.tem{border-style:solid;border-color:#2e7d32;color:#1f3a2b}
.ap .su-mini{position:relative;width:64px;height:56px;border-radius:12px;overflow:hidden;flex-shrink:0}.ap .su-mini img{width:100%;height:100%;object-fit:cover}
.ap .su-mini button{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;font-size:12px;cursor:pointer}
.ap .su-kg{display:flex;align-items:baseline;gap:8px;border:2px solid var(--line);border-radius:14px;background:var(--surface);padding:6px 14px;margin:4px 0 8px}
.ap .su-kg input{flex:1;min-width:0;border:0;background:none;font-size:28px;font-weight:800;color:var(--ink);padding:6px 0}.ap .su-kg span{color:var(--muted);font-weight:700}
.ap .su-kpi{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.ap .su-kpi>div{background:var(--bg2,#f2f4f4);border-radius:12px;padding:10px 12px}
.ap .su-kpi small{display:block;font-size:12px;color:var(--muted)}.ap .su-kpi b{font-size:19px;font-weight:800;white-space:nowrap}
.ap .su-barras{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;height:130px;align-items:end}
.ap .su-barras>div{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;height:100%}
.ap .su-barras span{display:block;background:#9fd3a8;border-radius:6px 6px 0 0;max-height:78%}.ap .su-barras .hoje span{background:#2e7d32}
.ap .su-barras small{text-align:center;font-size:11px;color:var(--muted);margin-top:4px;height:18px}
.ap .su-meta{position:absolute;left:0;right:0;border-top:2px dashed #e09b00;pointer-events:none}
/* Produção da Fábrica · modelo padrão 02 */
.ap .fa-dietas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ap .fa-dietas button{min-height:72px;border-radius:14px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 14px/1.2 "Public Sans",system-ui,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px;cursor:pointer;text-align:center}
.ap .fa-dietas button i{font-style:normal;font-size:24px}.ap .fa-dietas button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .fa-2{grid-template-columns:1fr 1fr;margin-bottom:8px}
.ap .fa-tab{display:grid;gap:0}
.ap .fa-h,.ap .fa-l{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr) minmax(0,1.3fr) minmax(0,.75fr);gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line2,#eceff0)}
.ap .fa-h{font-size:12px;color:var(--muted);font-weight:600}.ap .fa-h span:not(:first-child),.ap .fa-l .n{text-align:right}
.ap .fa-l>span:first-child{font-weight:700;font-size:13px;line-height:1.2}.ap .fa-l .n{font-size:14px}
.ap .fa-l input{min-height:40px;width:100%;min-width:0;text-align:right;font-weight:700;font-size:15px;padding:6px 6px}.ap .fa-l input.fa-err{border-color:#c62828;background:#fff5f5}
.ap .fa-v{color:#2e7d32;font-weight:700}.ap .fa-r{color:#c62828;font-weight:800}
/* Botão de POP do modelo padrão: sempre visível, amarelo */
.mu-pop-fixo{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:10px;background:#f2c94c;color:#111;font:800 12px "Public Sans",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.03em;padding:7px 11px;cursor:pointer;white-space:nowrap}
.mu-pop-fixo:active{transform:scale(.97)}
.mu-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:92vw;background:#1f2a24;color:#fff;font:600 14px/1.35 "Public Sans",system-ui,sans-serif;padding:12px 16px;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.25);z-index:9999;text-align:center}
.ap .su-prev{display:flex;align-items:center;gap:10px;background:#f2f4f4}.ap .su-prev>span{flex:1}.ap .su-prev small{color:var(--muted);font-weight:500}
.ap .ro-esc button{min-width:0}.ap .ro-esc button small{overflow-wrap:anywhere;hyphens:auto}
.ap .ro-esc-h{flex-wrap:wrap}.ap .ro-esc-h>span{min-width:0}
.ap .card.fs{grid-template-columns:minmax(0,1fr)}.ap .su-kg input{width:100%}
.ap .su-dias{align-items:flex-start;margin-top:12px}.ap .su-dias>span{display:flex;flex-direction:column;gap:2px}.ap .su-dias small{font-weight:500;color:var(--muted);font-size:12px}
/* Agenda do Dia (agenda.js) */
.ag-lista{display:grid;gap:8px;margin:0 0 14px}
.ag-it{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;background:#fff;border:1.5px solid var(--line,#e1e5e7);border-left-width:5px;color:inherit;text-decoration:none}
.ag-it .ag-ic{font-size:22px;flex-shrink:0}.ag-it .ag-tx{flex:1;min-width:0;display:flex;flex-direction:column}
.ag-it .ag-tx b{font-size:14.5px;line-height:1.25}.ag-it .ag-tx small{font-size:12.5px;color:var(--muted);line-height:1.3;margin-top:2px}
.ag-q{flex-shrink:0;font:800 11.5px "Public Sans",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.02em;padding:4px 8px;border-radius:8px;background:#eef1f2;color:#3b4449;white-space:nowrap}
.ag-atr{border-left-color:#c62828}.ag-atr .ag-q{background:#fdeaea;color:#a51f1f}
.ag-hoje{border-left-color:#e09b00}.ag-hoje .ag-q{background:#fff3d6;color:#8a5d00}
.ag-fazer{border-left-color:#5b8def}.ag-info{border-left-color:#2e7d32}.ag-info .ag-q{background:#e8f4ea;color:#1f5e25}
.ag-vazio{padding:14px;border-radius:14px;background:#eef7ef;color:#1f5e25;font-weight:700;text-align:center;margin-bottom:14px}
.ag-mais{width:100%;border:0;background:none;color:var(--muted);font:700 13px "Public Sans",system-ui,sans-serif;padding:6px;cursor:pointer}
.ag-card{margin-bottom:16px}.ag-tbl tr.ag-atr td:first-child{box-shadow:inset 4px 0 #c62828}.ag-tbl tr.ag-hoje td:first-child{box-shadow:inset 4px 0 #e09b00}
.ag-tbl td a{color:inherit;text-decoration:none}.ag-tbl td a:hover b{text-decoration:underline}
/* Parâmetros › Tratos do Dia */
.mu-ntratos{max-width:220px;margin-bottom:10px}
.mu-tratos{display:grid;gap:6px;margin-bottom:10px}
.mu-tr-h,.mu-tr-l{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:center}
.mu-tr-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.mu-dieta-tr{max-width:none}.mu-dieta-tr select{max-width:460px}
/* Confinamento e TIP · Leitura de Cocho, Trato e Vagão */
.ap .lc-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.ap .lc-cab h3{margin:0;font:800 22px "Archivo",system-ui,sans-serif}.ap .lc-cab small{color:var(--muted)}
.ap .lc-lote{text-align:right;font-weight:800;font-size:15px;line-height:1.25}
.ap .lc-info{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .lc-antes{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0;font-weight:700;font-size:13px}.ap .lc-antes em{font-style:normal;background:#f0f2f3;border-radius:10px;padding:4px 9px;display:inline-flex;align-items:center;gap:5px}
.ap .lc-antes i{width:9px;height:9px;border-radius:50%;display:inline-block}.ap .lc-antes i.r{background:#d9443a}.ap .lc-antes i.a{background:#e0b400}.ap .lc-antes i.v{background:#2e9e4a}
.ap .lc-rodape{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line,#e3e6e8);padding:12px 14px 14px;margin:0 -14px;box-shadow:0 -6px 16px rgba(0,0,0,.06)}
.ap .lc-prog{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.ap .lc-prog span{color:#2e7d32;font-weight:800}
.ap .lc-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}.ap .lc-chips button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:9px 13px;font:700 14px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .lc-chips button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}.ap .lc-chips button.lido:not(.on){border-color:#2e7d32;color:#1f5e25}
.ap .lc-bts{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.ap .lc-bts .mv-salvar,.ap .lc-bts .mv-limpar{margin:0}
.ap .tr-tratos{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:6px;margin-top:4px}
.ap .tr-tratos button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:7px 4px;display:flex;flex-direction:column;align-items:center;cursor:pointer}
.ap .tr-tratos button small{font-size:11.5px;font-weight:700}.ap .tr-tratos button b{font:800 17px "Archivo",system-ui,sans-serif}
.ap .tr-tratos button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}.ap .tr-tratos button.feito:not(.on){border-color:#2e7d32;color:#1f5e25}
.ap .tr-pr{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.ap .tr-pr>div,.ap .tr-pr>label{border-radius:16px;padding:12px 14px;background:#f2f4f4;display:flex;flex-direction:column;min-width:0}
.ap .tr-pr small{font:700 12px "Public Sans",system-ui,sans-serif;text-transform:uppercase;color:var(--muted)}.ap .tr-pr b{font:800 34px "Archivo",system-ui,sans-serif}.ap .tr-pr b span,.ap .tr-pr i{font:500 16px "Public Sans",system-ui,sans-serif;font-style:normal;margin-left:4px;color:var(--muted)}
.ap .tr-pr em{font-style:normal;font-size:12px;color:var(--muted)}
.ap .tr-pr>label{background:#fff;border:2.5px solid #2e7d32}.ap .tr-pr>label.fora{border-color:#c62828}
.ap .tr-pr>label span{display:flex;align-items:baseline}.ap .tr-pr input{width:100%;min-width:0;border:0;background:none;font:800 34px "Archivo",system-ui,sans-serif;color:var(--ink);padding:0}
.ap .tr-usar{width:100%;margin-bottom:8px}
.ap .tr-vazio{align-self:center;padding:8px 12px;border:1.5px dashed var(--line);border-radius:12px;color:var(--muted);font-weight:700;font-size:13px}
.ap .vg-sem{display:block;font-size:11px;font-weight:600;opacity:.75;margin-top:2px}
.ap .vg-ins{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:14px;padding:10px 12px;margin:8px 0;background:#fff}
.ap .vg-ins.ok{background:#eef7ef;border-color:#9ccfa4}.ap .vg-ins.atual{border:2.5px solid #1f3a2b}
.ap .vg-n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#eef1f2;flex-shrink:0}
.ap .vg-ins.ok .vg-n{background:#2e9e4a;color:#fff}.ap .vg-ins.atual .vg-n{background:#1f3a2b;color:#fff}
.ap .vg-tx{flex:1;min-width:0;display:flex;flex-direction:column}.ap .vg-tx b{font-size:15px}.ap .vg-tx small{color:var(--muted);font-size:12.5px}
.ap .vg-dir{text-align:right;display:flex;flex-direction:column;align-items:flex-end}.ap .vg-dir small{font-size:11px;color:var(--muted);font-weight:700}.ap .vg-dir b{font:800 20px "Archivo",system-ui,sans-serif}.ap .vg-dir em{font-style:normal;font-size:11.5px;color:var(--muted)}
.ap .vg-desfaz{border:0;background:none;color:#1f5e25;font:700 11.5px "Public Sans",system-ui,sans-serif;padding:2px 0;cursor:pointer;text-decoration:underline}
.ap .vg-bal{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;background:#1f3a2b;color:#fff;border-radius:16px;padding:12px 14px;margin:10px 0 8px}
.ap .vg-bal>span{display:flex;flex-direction:column;min-width:0}.ap .vg-bal small{font:700 11.5px "Public Sans",system-ui,sans-serif;text-transform:uppercase;opacity:.85}
.ap .vg-bal input{width:100%;max-width:170px;border:0;border-bottom:3px solid #4caf50;background:none;color:#fff;font:800 34px "Archivo",system-ui,sans-serif;padding:0}.ap .vg-bal i{font-style:normal;opacity:.8;margin-left:4px}
.ap .vg-bal>span:first-child{flex-direction:column}.ap .vg-falta{text-align:right}.ap .vg-falta b{font:800 26px "Archivo",system-ui,sans-serif}
/* Campos sempre alinhados: título, campo e dica em 3 linhas da grade (subgrid), mesmo quando um título quebra */
.fgrid-alinha{align-items:stretch}
.fgrid-alinha>.fl{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:6px;align-content:start}
.fgrid-alinha>.fl>.fl-t{align-self:end}
.fgrid-alinha>.fl>.sub{align-self:start}
@supports not (grid-template-rows:subgrid){.fgrid-alinha>.fl>.fl-t{min-height:2.6em;display:flex;align-items:flex-end}}
/* Programas de Trato */
.mu-progs tr[data-prog]{cursor:pointer}.mu-progs tr.inativo{opacity:.55}
.mu-pg-dietas{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:12px}
.mu-pg-dietas label{display:flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:12px;padding:9px 12px;cursor:pointer;flex-wrap:wrap}
.mu-pg-dietas label small{width:100%;color:var(--muted);font-size:11.5px;margin-left:24px}
/* Entrada de Insumos */
.ap .ei-itens{grid-template-columns:repeat(3,minmax(0,1fr))}.ap .ei-itens button{min-height:70px;font-size:12.5px}
.ap .ei-mais{width:100%;border:2px dashed var(--line);background:#fafbfb;margin-top:12px;font-weight:800}
.ap .ei-itens button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
/* Combustível · Abastecimento e Entrada */
.ap .ab-maq{grid-template-columns:repeat(3,minmax(0,1fr))}.ap .ab-maq button{min-height:66px;font-size:12.5px}.ap .ab-maq button.on,.ap .ab-serv button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .ab-serv{grid-template-columns:repeat(3,minmax(0,1fr))}.ap .ab-serv button{min-height:64px;font-size:12.5px}
.ap .ab-ops{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.ap .ab-ops button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;font:700 12.5px "Public Sans",system-ui,sans-serif;cursor:pointer;min-width:0}
.ap .ab-ops button span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#8aa5b8;color:#fff;font-weight:800;font-size:12px}
.ap .ab-ops button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}.ap .ab-ops button.on span{outline:2px solid #fff}
.ap .ab-comb{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.ap .ab-comb button{border:1.5px solid var(--line);background:#fff;border-radius:12px;min-height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:700 12.5px/1.2 "Public Sans",system-ui,sans-serif;cursor:pointer;text-align:center}
.ap .ab-comb button i{font-style:normal;font-size:20px}.ap .ab-comb button.on{background:#1f3a2b;border-color:#1f3a2b;color:#fff}
.ap .ab-bomba{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 8px}
.ap .ab-bomba>div,.ap .ab-bomba>label{border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;display:flex;flex-direction:column;min-width:0}
.ap .ab-bomba small{font:700 11.5px "Public Sans",system-ui,sans-serif;text-transform:uppercase;color:var(--muted)}.ap .ab-bomba b{font:800 22px "Archivo",system-ui,sans-serif}
.ap .ab-bomba input{border:0;background:none;font:800 22px "Archivo",system-ui,sans-serif;color:var(--ink);width:100%;min-width:0;padding:0}.ap .ab-bomba>label{border-color:#2e7d32}
.ap .ab-sem{display:flex;align-items:center;gap:8px;margin-top:10px;font-weight:700;font-size:13.5px}
.ap .ec-tanque{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;margin:8px 0}
.ap .ec-fig{position:relative;border:3px solid #1f3a2b;border-radius:12px;overflow:hidden;min-height:150px;background:#fff}
.ap .ec-fig i{position:absolute;left:0;right:0;bottom:0}.ap .ec-fig i.dep{background:#a8d5b0}.ap .ec-fig i.ant{background:#2e7d32;opacity:.35}
.ap .ec-reg{display:grid;gap:8px}.ap .ec-reg label{border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;display:flex;flex-direction:column}.ap .ec-reg label.dep{border-color:#2e7d32}
.ap .ec-reg small{font:700 11.5px "Public Sans",system-ui,sans-serif;text-transform:uppercase;color:var(--muted)}.ap .ec-reg span{display:flex;align-items:baseline}
.ap .ec-reg input{border:0;background:none;font:800 24px "Archivo",system-ui,sans-serif;color:var(--ink);width:100%;min-width:0;padding:0}.ap .ec-reg i{font-style:normal;color:var(--muted);margin-left:4px}
/* Gavetas (formulários de cadastro): campos da mesma linha sempre na mesma altura, mesmo quando um título quebra em 2 linhas.
   Cada campo vira 3 linhas da grade (título · campo · dica) alinhadas com os vizinhos (subgrid). Regra do Welton: "Não deixe desalinhado jamais". */
@supports (grid-template-rows: subgrid) {
  .fmodal .fgrid { align-items: stretch; }
  .fmodal .fgrid > .fl { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 6px; align-items: end; align-content: start; }
  .fmodal .fgrid > .fl > .in, .fmodal .fgrid > .fl > select, .fmodal .fgrid > .fl > input, .fmodal .fgrid > .fl > textarea { align-self: start; }
  .fmodal .fgrid > .fl > .sub, .fmodal .fgrid > .fl > small { align-self: start; }
}
/* Manutenção: bloqueio do abastecimento */
.ap .ab-maq button em{font-style:normal;font-size:10.5px;font-weight:800;margin-top:2px}.ap .ab-maq button.ab-bloq:not(.on){border-color:#c62828;color:#a51f1f;background:#fff5f5}
.ap .ab-trava{border:2.5px solid #c62828;background:#fdeeee;border-radius:16px;padding:12px 14px;margin:10px 0;display:flex;flex-direction:column;gap:6px;color:#8e1c1c}
.ap .ab-trava b{font-size:16px}.ap .ab-trava small{color:#6b2a2a}.ap .ab-trava .btn{align-self:flex-start}

/* ===== Tela inicial do app (igual ao Manej'Us antigo · 12/10/2026) ===== */
.appw.ap{background:#F4F5F2;min-height:100vh}
.ap .hm-top{display:flex;align-items:center;gap:12px;background:linear-gradient(160deg,#2F5A45 0%,#21412F 100%);color:#fff;
  padding:calc(14px + env(safe-area-inset-top,0px)) 16px 16px;box-shadow:0 2px 12px rgba(20,50,35,.18);position:sticky;top:0;z-index:20}
.ap .hm-logo{width:44px;height:44px;border-radius:12px;background:#fff;padding:4px;flex:none}
.ap .hm-volta{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.14);color:#fff;font-size:30px;line-height:1;display:grid;place-items:center;text-decoration:none;flex:none}
.ap .hm-ola{flex:1;min-width:0}
.ap .hm-ola b{display:block;font-family:var(--fd);font-size:19px;line-height:1.2;font-weight:800;color:#fff;overflow-wrap:anywhere}
.ap .hm-ola b span{font-size:.9em}
.ap .hm-ola small{display:block;font-size:14px;color:rgba(255,255,255,.82);margin-top:2px}
.ap .hm-faz{background:transparent;border:0;color:rgba(255,255,255,.9);font:inherit;padding:0;max-width:100%}
.ap .hm-faz option{color:#222}
.ap .hm-bt{width:44px;height:44px;border-radius:99px;border:0;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;flex:none;cursor:pointer}
.ap .hm-bt svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}
.ap .hm-perfil{margin:10px 14px 0;background:#fff;border-radius:16px;padding:14px;display:grid;gap:8px;box-shadow:0 2px 12px rgba(0,0,0,.08)}
.ap .hm-perfil small{color:var(--muted)}
.ap .hm-body{padding:14px 14px 24px;display:grid;gap:14px}
.ap .hm-sync,.ap .hm-cont{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #E7EAE4;border-radius:18px;padding:14px 16px;box-shadow:0 1px 4px rgba(0,0,0,.04);text-decoration:none;color:var(--ink)}
.ap .hm-sync>div,.ap .hm-cont>div{flex:1;min-width:0}
.ap .hm-sync b{display:block;color:#1F6B3A;font-size:17px}
.ap .hm-sync b.no{color:#B3261E}
.ap .hm-sync small{display:block;color:var(--muted);margin-top:2px;font-size:14px}
.ap .hm-dot{width:12px;height:12px;border-radius:99px;background:#E05252;flex:none}
.ap .hm-dot.ok{background:#2DB45C}
.ap .hm-atu{border:0;border-radius:12px;background:#21412F;color:#fff;font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.02em;padding:11px 14px;flex:none;cursor:pointer}
.ap #sinal:empty{display:none}
.ap .hm-body #sinal .ok{display:none}
.ap .hm-cont>span{width:52px;height:52px;border-radius:14px;background:#EEF7EF;display:grid;place-items:center;font-size:24px;flex:none;overflow:hidden}
.ap .hm-cont>span img{width:100%;height:100%;object-fit:cover}
.ap .hm-cont small{display:block;color:#2E7D46;font-weight:800;text-transform:uppercase;font-size:.78em;letter-spacing:.04em}
.ap .hm-cont b{display:block;text-transform:uppercase;font-size:1.05em}
.ap .hm-cont i{font-style:normal;font-size:26px;color:var(--muted)}
.ap .hm-aprovar>span{background:#FFF4DC}
.ap .hm-aprovar small{color:#9A6400}
.ap .hm-grade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:620px){.ap .hm-grade:not(.hm-home){grid-template-columns:repeat(3,minmax(0,1fr))}}
.ap .hm-c{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;background:#fff;border:1px solid #E7EAE4;border-radius:20px;
  padding:18px 10px 16px;text-align:center;text-decoration:none;color:var(--ink);font:inherit;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.ap .hm-c:active{transform:scale(.98)}
.ap .hm-c img{width:min(96px,62%);aspect-ratio:1;border-radius:18px;object-fit:cover;margin-bottom:8px}
.ap .hm-c>i{font-style:normal;font-size:44px;line-height:96px;height:96px}
.ap .hm-c b{font-family:var(--fd);font-weight:800;font-size:17px;line-height:1.2}
.ap .hm-c small{color:var(--muted);font-size:14px;line-height:1.25}
.ap .hm-c.breve img,.ap .hm-c.breve>i{filter:grayscale(.85);opacity:.55}
.ap .hm-c.breve b{color:var(--muted)}
.ap .hm-so{position:absolute;top:8px;right:8px;font-style:normal;font-size:.7em;font-weight:800;background:#EEF1EC;color:var(--muted);border-radius:99px;padding:2px 8px}
.ap .hm-grupo{display:flex;align-items:center;gap:8px;font-family:var(--fd);font-size:1.02em;font-weight:800;color:#21412F;margin:6px 4px -4px}
.ap .hm-grupo span{margin-left:auto;background:#21412F;color:#fff;border-radius:99px;min-width:1.8em;height:1.8em;display:grid;place-items:center;font-size:.8em;padding:0 6px}
/* Próxima manutenção preventiva (15 dias antes · abastecimento e manutenção) */
.ab-prox{display:grid;gap:8px;background:#FFF8E6;border:1px solid #F1D79A;border-left:5px solid #E0A100;border-radius:14px;padding:12px 14px;margin:10px 0;text-align:left}
.ab-prox>b{color:#7A5200}
.ab-prox>div{display:grid;gap:2px;padding:8px 10px;background:#fff;border-radius:10px}
.ab-prox strong{font-size:1.02em}
.ab-prox span{color:var(--ink2,#555);font-size:.92em}
.ab-prox em{font-style:normal;font-weight:700;color:#9A6400;font-size:.92em}
.ab-prox small{color:var(--muted)}
/* Manutenção de Máquinas (SQL 230 e 231) */
.ap .mn-acoes{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.ap .mn-tipo button small{font-weight:500;font-size:11px;opacity:.8}
.ap .mn-tipo button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .mo-sinais button.mn-feito.on{background:#1E7A3F;border-color:#1E7A3F;color:#fff}
.ap .mn-plano{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ap .mn-plano button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;min-height:64px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:inherit;cursor:pointer}
.ap .mn-plano button b{font-size:14px;line-height:1.2}
.ap .mn-plano button small{font-size:12px;color:var(--muted)}
.ap .mn-plano button.mn-venc{border-color:#E7A39D;background:#FFF3F2}
.ap .mn-plano button.mn-logo{border-color:#F1D79A;background:#FFF9EA}
.ap .mn-plano button.on{background:#1E7A3F;border-color:#1E7A3F;color:#fff}
.ap .mn-plano button.on small{color:#E4F4E8}
.ap .mn-peca{display:grid;grid-template-columns:minmax(0,1fr) 64px 90px auto;gap:6px;align-items:center;margin-bottom:6px}
.ap .mn-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end;margin:8px 0}
/* quadros pela largura da própria caderneta (não da tela): título em cima, valor sempre na mesma linha embaixo, sem quebrar nem vazar */
.ap .mn-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px;margin:8px 0}
.ap .mn-kpis div{background:#fff;border:1px solid #E7EAE4;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;justify-content:space-between;gap:6px;min-width:0;container-type:inline-size}
.ap .mn-kpis small{color:var(--muted);font-size:12px;line-height:1.25}
.ap .mn-kpis b{font-size:clamp(13px,14cqi,16px);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap .mn-ev{display:flex;gap:10px;padding:10px 0;border-top:1px solid #EEF0EC}
.ap .mn-ev>span{font-size:20px;width:28px;text-align:center;flex:none}
.ap .mn-ev>div{flex:1;min-width:0;display:grid;gap:3px}
.ap .mn-ev small{color:var(--muted);font-size:12.5px;line-height:1.35}
.ap .mn-ev .mv-reg-b{display:flex;gap:6px;margin-top:4px}
.ap .mn-ev-l b{color:#9A6400}
.ap .mn-tbl td,.ap .mn-tbl th{font-size:12.5px;white-space:nowrap}
.ap .mn-pl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:end;padding:10px 0;border-top:1px solid #EEF0EC}
.ap .mn-pl .mn-pl-item{grid-column:1/-1}
.ap .mn-pl .mn-pl-kit{grid-column:1/-1}
.ap .mn-plano small.mn-kit{display:block;color:#5B6670;font-size:11px;margin-top:2px}
.ap .mn-pl>button{justify-self:end;align-self:end;height:44px}
.ap .mn-pl .in{min-width:0;width:100%;box-sizing:border-box}
@media(min-width:760px){.ap .mn-pl{grid-template-columns:minmax(0,2fr) repeat(6,minmax(0,1fr)) auto}.ap .mn-pl .mn-pl-kit{grid-column:1/-2}.ap .mn-pl .mn-pl-item{grid-column:auto}
}
/* Checklists (SQL 231) */
.ck-itens td{vertical-align:middle}
.ck-mv{white-space:nowrap}.ck-mv .btn{margin-left:4px}
.ap .ck-grupo{font-family:var(--fd);font-size:15px;font-weight:800;color:#21412F;margin:14px 4px 6px}
/* YHWH no topo e Obrigado Senhor no fim de todas as telas do app (12/10/2026) */
.appw > .fe-topo{position:static;text-align:center;margin:calc(4px + env(safe-area-inset-top,0px)) 12px 0;font-size:10.5px}
.appw > .fe-rodape{padding:14px 0 calc(18px + env(safe-area-inset-bottom,0px))}
.ap .a-body > .fe-rodape:last-child:empty{display:none}
/* Versículo do dia (tela inicial do app) */
.ap .hm-vers{background:linear-gradient(160deg,#FFFDF5,#FFF7E3);border:1px solid #EFE2BF;border-radius:18px;padding:14px 16px;display:grid;gap:6px}
.ap .hm-vers small{font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;color:#8A6A1F}
.ap .hm-vers p{margin:0;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:16px;line-height:1.45;color:#3B3324}
.ap .hm-vers b{justify-self:end;font-size:13px;color:#8A6A1F}
.appw > .fe-rodape .fe-vers{font-style:normal;margin:10px auto 0;max-width:520px;padding:0 20px;display:grid;gap:4px}
.appw > .fe-rodape .fe-vers p{margin:0;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:14px;line-height:1.45;color:#5B5140}
.appw > .fe-rodape .fe-vers b{font-style:normal;font-size:12px;color:#8A6A1F}
.ck-itens{width:100%;table-layout:fixed}.ck-itens td{vertical-align:middle}.ck-itens .in,.fmodal .tbl.ck-itens td .in{width:100%;max-width:none;min-width:0;box-sizing:border-box}
/* Marcar no Mapa (SQL 232): seletor de ponto em tela cheia */
html.pm-aberto,html.pm-aberto body{overflow:hidden}
.pm-tela{position:fixed;inset:0;z-index:9000;background:#111;display:grid;grid-template-rows:auto 1fr auto auto}
.pm-top{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top,0px)) 14px 10px;background:#21412F;color:#fff}
.pm-top b{flex:1;font-family:var(--fd);font-size:17px}
.pm-x{width:40px;height:40px;border-radius:12px;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:18px;cursor:pointer}
.pm-mapa{min-height:0}
.pm-info{background:#fff;padding:10px 14px;font-size:14px;color:#333;border-top:1px solid #ddd}
.pm-bts{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 14px calc(12px + env(safe-area-inset-bottom,0px));background:#fff}
.pm-bts .btn{min-height:48px;font-size:15px}
.pm-pino{font-size:32px;line-height:36px;text-align:center;filter:drop-shadow(0 2px 2px rgba(0,0,0,.5))}
.pm-outro{width:26px;height:26px;border-radius:99px;background:rgba(255,255,255,.9);display:grid;place-items:center;font-size:15px;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.ap .pt-tipos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
.ap .pt-tipos button{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:78px;border-radius:14px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px/1.2 "Public Sans",system-ui,sans-serif;cursor:pointer;padding:6px}
.ap .pt-tipos button i{font-style:normal;font-size:24px}.ap .pt-tipos button small{font-weight:500;font-size:11px;color:var(--muted)}
.ap .pt-tipos button.on{background:#21412F;border-color:#21412F;color:#fff}.ap .pt-tipos button.on small{color:#D8EADF}
.ap .pt-coord{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;background:#EEF7EF;border-radius:12px;padding:12px 14px;font-size:15px}
.ap .pt-coord small{color:var(--muted)}
.ap .pt-bts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.ap .pt-bts .btn{min-height:48px}
.mp-ponto-w{background:none;border:0}
.mp-ponto{--c:#00A6C8;width:26px;height:26px;border-radius:50%;background:var(--c);border:1.5px solid #fff;box-shadow:0 2px 5px rgba(0,0,0,.4);display:grid;place-items:center;position:relative}
.mp-ponto::after{content:'';position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top:6px solid var(--c)}
.mp-ponto svg{width:17px;height:17px;display:block}
.mp-ponto.mp-p-cocho{--c:#B7791F;border-radius:7px}.mp-ponto.mp-p-curral{--c:#8A4B2A;border-radius:5px}.mp-ponto.mp-p-deposito{--c:#7A5C3E;border-radius:7px}.mp-ponto.mp-p-pluviometro{--c:#4A7FA8}
.ap .pt-bts .btn{min-width:0;white-space:normal;line-height:1.2;padding:8px 10px}
/* Bebedouros (SQL 233) */
.ap .bb-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:8px;max-height:340px;overflow:auto;padding:2px}
/* 22/10/2026: a linha da grade cresce com o cartão (antes ficava em 70 px e o selo da meta saía cortado embaixo); o selo quebra a linha se não couber */
.ap .bb-lista button .mt-pill{white-space:normal;max-width:100%;margin-top:4px;line-height:1.25}
.ap .bb-lista button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 12px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:inherit;cursor:pointer;min-height:70px}
.ap .bb-lista button b{font-size:14px;line-height:1.2}.ap .bb-lista button small{font-size:12px;color:var(--muted)}
.ap .bb-lista button em{font-style:normal;font-size:11.5px;font-weight:800;color:#2E7D46}
.ap .bb-lista button.bb-atr{border-color:#E7A39D;background:#FFF3F2}.ap .bb-lista button.bb-atr em{color:#B3261E}
.ap .bb-lista button.bb-hoje{border-color:#F1D79A;background:#FFF9EA}.ap .bb-lista button.bb-hoje em{color:#9A6400}
.ap .bb-lista button.on{background:#21412F;border-color:#21412F;color:#fff}.ap .bb-lista button.on small,.ap .bb-lista button.on em{color:#D8EADF}
.ap .bb-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 6px}
.ap .bb-agua button b{font-size:22px;line-height:1}
.ap .bb-agua button.on{background:#EEF7EF;border-color:#21412F;border-width:2.5px;color:var(--ink)}
.ap .bb-agua button.bb-a2.on{background:#FFF8E6;border-color:#C98A1B}.ap .bb-agua button.bb-a3.on{background:#FDEEEE;border-color:#C62828}
.ap .bb-prob{border:2px solid #E7A39D;background:#FFF5F5;border-radius:14px;padding:12px;margin-top:10px;display:grid;gap:8px}.ap .bb-prob>b{color:#A51F1F}
.ap .bb-limp{grid-template-columns:repeat(2,minmax(0,1fr))}
.ap .bb-limp button.bb-sim.on{background:#21412F;border-color:#21412F;color:#fff}.ap .bb-limp button.bb-nao.on{background:#5B6770;border-color:#5B6770;color:#fff}
.ap .mn-ev.bb-ev-l b{color:#1E7A3F}
/* ===== Painel do Manej'Us (site · 12/10/2026): gestão em uma tela, no padrão Farm Plan/Vision ===== */
.pn-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#114665 0%,#0d3a54 60%,#145a45 100%);color:#fff;border-radius:20px;padding:24px 26px;margin-bottom:16px;box-shadow:var(--shadow)}
.pn-hero small{display:block;opacity:.8;font-size:13px;letter-spacing:.02em}
.pn-hero h1{color:#fff;font-size:30px;margin:4px 0 6px}
.pn-hero p{margin:0;font-size:15px;opacity:.95}.pn-hero p b{color:#FFD27A}
.pn-hero-a{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:flex-end}
.pn-hero-a .btn{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff}
.pn-hero-a .btn.pri{background:#fff;color:#114665;border-color:#fff}
.pn-hero-a .btn svg{stroke:currentColor}
.pn-sync{flex-basis:100%;text-align:right;font-size:12px;opacity:.75}
.pn-aprovar{display:flex;align-items:center;gap:14px;background:#FFF6E0;border:1px solid #F1D79A;border-left:5px solid #E0A100;border-radius:14px;padding:14px 18px;margin-bottom:16px;text-decoration:none;color:var(--ink)}
.pn-aprovar>span{font-size:26px}.pn-aprovar div{flex:1}.pn-aprovar small{display:block;color:var(--muted)}.pn-aprovar em{font-style:normal;font-weight:800;color:#9A6400}
.pn-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}
@media(max-width:1300px){.pn-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.pn-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pn-kpi{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .12s}
a.pn-kpi:hover{transform:translateY(-2px)}
.pn-ki{width:40px;height:40px;border-radius:12px;background:var(--navy-soft);display:grid;place-items:center;font-size:20px;flex:none}
.pn-kpi small{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.pn-kpi b{display:block;font-family:var(--fd);font-size:24px;line-height:1.15;white-space:nowrap}
/* o número não escapa do cartão (19/10/2026): o texto fica na largura do cartão e o número diminui com ela */
.pn-kpi>div{min-width:0;flex:1;container-type:inline-size}.pn-kpi b{font-size:clamp(15px,15cqw,24px);overflow:hidden;text-overflow:ellipsis}.pn-kpi em{overflow-wrap:anywhere}
.pn-kpi em{display:block;font-style:normal;color:var(--muted);font-size:12px}
.pn-kpi.pn-ruim .pn-ki{background:var(--s4-soft)}.pn-kpi.pn-ruim b{color:var(--s4)}
.pn-kpi.pn-bom .pn-ki{background:var(--s2-soft)}
.pn-2{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);gap:16px;align-items:start}
@media(max-width:1100px){.pn-2{grid-template-columns:minmax(0,1fr)}}
.pn-lado{display:grid;gap:16px}.pn-lado>.card{margin:0}
.pn-card{border-radius:18px}
.pn-vazio{padding:18px;text-align:center;color:var(--muted);background:var(--surface2);border-radius:12px}
.pn-ag-g{margin-bottom:14px}
.pn-ag-t{display:flex;align-items:center;gap:8px;font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;margin:4px 2px 8px}
.pn-ag-t span{background:currentColor;border-radius:99px;min-width:22px;height:22px;display:grid;place-items:center;font-size:11.5px;padding:0 6px}
.pn-ag-t span{color:#fff}
.pn-ag-t.pn-atr{color:var(--s4)}.pn-ag-t.pn-hoje{color:var(--s5-tx)}.pn-ag-t.pn-fazer{color:var(--s3)}.pn-ag-t.pn-info{color:var(--s1)}
.pn-ag-t.pn-atr span{background:var(--s4)}.pn-ag-t.pn-hoje span{background:var(--s5)}.pn-ag-t.pn-fazer span{background:var(--s3)}.pn-ag-t.pn-info span{background:var(--s1)}
.pn-ag{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--line);border-left:4px solid var(--s1);border-radius:12px;margin-bottom:8px;text-decoration:none;color:var(--ink);background:var(--surface)}
.pn-ag:hover{background:var(--surface2)}
.pn-ag.pn-atr{border-left-color:var(--s4)}.pn-ag.pn-hoje{border-left-color:var(--s5)}.pn-ag.pn-fazer{border-left-color:var(--s3)}
.pn-ag-ic{font-size:20px;width:28px;text-align:center;flex:none}
.pn-ag-tx{flex:1;min-width:0}.pn-ag-tx b{display:block;font-size:14.5px}.pn-ag-tx small{display:block;color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pn-ag-q{font-weight:800;font-size:12px;background:var(--surface2);border-radius:99px;padding:4px 10px;white-space:nowrap}
.pn-ag.pn-atr .pn-ag-q{background:var(--s4-soft);color:var(--s4)}.pn-ag.pn-hoje .pn-ag-q{background:var(--s5-soft);color:#8A5E0C}
.pn-at{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 36px 70px;align-items:center;gap:10px;padding:7px 2px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line2);font-size:13.5px}
.pn-at:last-of-type{border-bottom:0}
.pn-at-n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.pn-at-b{height:8px;background:var(--surface2);border-radius:99px;overflow:hidden}.pn-at-b i{display:block;height:100%;background:linear-gradient(90deg,#2B79AE,#1E9A47);border-radius:99px}
.pn-at b{text-align:right;font-family:var(--fd)}.pn-at small{color:var(--muted);font-size:11.5px;text-align:right}
.pn-parada{display:flex;gap:8px;margin-top:10px;padding:10px 12px;background:var(--s5-soft);border-radius:10px;font-size:13px}
.pn-atalhos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pn-atalhos a{padding:11px 12px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:13.5px;background:var(--surface)}
.pn-atalhos a:hover{border-color:var(--navy);background:var(--navy-soft)}
.pn-gr{margin-bottom:18px}.pn-gr:last-child{margin-bottom:0}
.pn-gr-t{display:flex;align-items:baseline;gap:10px;font-family:var(--fd);font-weight:800;font-size:15px;margin:0 2px 10px}
.pn-gr-t span{font-family:inherit;font-weight:600;font-size:12px;color:var(--muted)}
.pn-cads{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.pn-cad{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:12px 8px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);background:var(--surface);transition:transform .12s,box-shadow .12s}
a.pn-cad:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--navy)}
.pn-cad img{width:56px;height:56px;border-radius:14px;object-fit:cover}.pn-cad>i{font-style:normal;font-size:30px;height:56px;line-height:56px}
.pn-cad b{font-size:13px;line-height:1.2}.pn-cad small{font-size:11.5px;color:var(--muted)}
.pn-cad.breve{opacity:.5}.pn-cad.breve img{filter:grayscale(1)}
.pn-fases{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;font-size:12.5px;color:var(--muted);margin-bottom:8px}
.pn-fases>span{font-weight:800;color:var(--ink)}.pn-fases>b{color:var(--ink)}
.pn-barra{flex:1;min-width:120px;height:8px;background:var(--surface2);border-radius:99px;overflow:hidden}.pn-barra i{display:block;height:100%;background:var(--green)}
.pn-fases em{flex-basis:auto;font-style:normal;padding:3px 8px;border-radius:99px;background:var(--surface2)}
.pn-fases em.pn-f2{background:var(--s2-soft);color:#17703A}.pn-fases em.pn-f3{background:var(--s3-soft);color:#1E5F8C}
/* ===== App · tela inicial no padrão Farm Plan/Vision, modernizada (12/10/2026) ===== */
.ap .ap-bar.vbar a{position:relative;border:0;background:var(--surface2);border-radius:14px;min-height:4.1em;display:grid;place-items:center;align-content:center;gap:2px;font-weight:800;font-size:.72em;color:var(--ink);text-decoration:none}
.ap .ap-bar.vbar a i{font-style:normal;font-size:1.75em;line-height:1}
.ap .ap-bar.vbar a.on{background:var(--navy);color:#fff}
.ap .ap-bar.vbar a:active{transform:scale(.95)}
.ap .ap-pills .pl-atr{background:var(--s4-soft);color:var(--s4)}
.ap .ap-pills .pl-ok{background:var(--s2-soft);color:#17703A}
.ap .ap-sync{flex:none;display:grid;justify-items:center;gap:3px;min-width:58px}
.ap .ap-sync i{width:44px;height:44px;border-radius:99px;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:20px;background:var(--s2-soft);color:var(--s2-tx);border:2px solid #9ED9B0}
.ap .ap-sync.no i{background:var(--s4-soft);color:var(--s4);border-color:#F0B8AE}
.ap .ap-sync small{font-size:.7em;color:var(--muted);font-weight:700;margin:0}
.ap .ap-rapido a,.ap .ap-rapido button{border-color:var(--line);box-shadow:0 1px 3px rgba(17,70,101,.05)}
.ap .ap-rapido a:first-child{border-color:var(--navy);background:var(--navy-soft)}
.ap .vqa small{font-size:.85em;font-weight:600;color:var(--muted);margin-top:-2px}
.ap button.ap-t{width:100%;text-align:left;font:inherit;cursor:pointer}
.ap .ap-avisa{border-color:#F0B8AE!important}.ap .ap-avisa .ap-ic{background:var(--s4-soft);color:var(--s4)}
.ap .ap-aprovar .ap-ic{background:#FFF4DC}
/* Limpeza (SQL 234) */
.ap .lp-rasc{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;background:#FFF8E6;border:1.5px solid #F1D79A;border-radius:16px;padding:12px 14px;margin-bottom:12px}
.ap .lp-rasc>span{flex:1 1 180px;display:grid}.ap .lp-rasc small{color:var(--muted)}
.ap .lp-onde button.on,.ap .lp-feitos button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .lp-pes{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.ap .lp-pes button{min-height:46px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:800 16px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .lp-pes button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .lp-hora{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ap .lp-hora .btn,.ap .lp-hora label{min-height:54px;font-weight:800;font-size:15px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:6px}
.ap .lp-hora label{border:2px solid #9ED9B0;background:#EEF7EF;color:#1E7A3F;padding:0 8px}
.ap .lp-hora label input{border:0;background:transparent;font:800 16px "Public Sans",system-ui,sans-serif;color:inherit;width:6.2em}
.ap .lp-fotos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ap .lp-fotos button{position:relative;min-height:120px;border-radius:14px;border:2px dashed var(--line,#c9d0d3);background:#fff;display:grid;place-items:center;align-content:center;gap:4px;cursor:pointer;overflow:hidden;font:inherit}
.ap .lp-fotos button span{font-size:26px}
.ap .lp-fotos button.tem{border-style:solid;border-color:#9ED9B0;padding:0}
.ap .lp-fotos button img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ap .lp-fotos button.tem b{position:relative;background:rgba(0,0,0,.55);color:#fff;border-radius:99px;padding:3px 10px}
.ap .lp-fotos button i{position:absolute;top:6px;right:8px;width:24px;height:24px;border-radius:99px;background:#1E9A47;color:#fff;font-style:normal;display:grid;place-items:center;font-size:13px}
/* Com a barra de baixo (tela inicial): o rodapé com o versículo fica acima dela, sem o vão grande do corpo */
.appw.ap:has(.ap-bar) .a-body{padding-bottom:8px}
.appw.ap:has(.ap-bar) > .fe-rodape{padding-bottom:calc(160px + env(safe-area-inset-bottom,0px))}
/* Problemas e Clima (SQL 235) */
.ap .pr-area{grid-template-columns:repeat(4,minmax(0,1fr))}
.ap .pr-area button.on,.ap .cl-tempo button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .pr-urg button.on.pr-u-0{background:#EEF7EF;border-color:#1E9A47;border-width:2.5px;color:var(--ink)}
.ap .pr-urg button.on.pr-u-1{background:#FFF8E6;border-color:#C98A1B;border-width:2.5px;color:var(--ink)}
.ap .pr-urg button.on.pr-u-2{background:#C62828;border-color:#C62828;color:#fff}
.ap .pr-sn button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .pr-seg{margin-bottom:10px}
.ap .pr-card{border-left:5px solid var(--line)}.ap .pr-c-2{border-left-color:#C62828}.ap .pr-c-1{border-left-color:#C98A1B}.ap .pr-c-0{border-left-color:#1E9A47}.ap .pr-c-ok{opacity:.8}
.ap .pr-tags{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}
.ap .pr-tags span{font-size:12px;font-weight:700;background:var(--surface2);border-radius:99px;padding:3px 9px}
.ap .pr-tags .pr-t-u2{background:#FDEEEE;color:#A51F1F}.ap .pr-tags .pr-t-u1{background:#FFF4DC;color:#8A5E0C}
.ap .pr-desc{font-size:14px;margin:4px 0}
.ap .pr-resp{background:var(--s3-soft);border-radius:10px;padding:8px 10px;font-size:13px;margin:6px 0}
.ap .pr-tratar{border:1.5px solid var(--line);border-radius:12px;padding:10px;margin:8px 0;display:grid;gap:8px}
.ap .pr-tratar .fl{display:grid;gap:4px}
.ap .cl-chuva button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .cl-tempo{grid-template-columns:repeat(4,minmax(0,1fr))}
.ap .cl-pl-h{display:flex;justify-content:space-between;align-items:baseline;margin:14px 0 4px;border-bottom:1px solid var(--line2);padding-bottom:6px}.ap .cl-pl-h small{color:var(--muted)}
.ap .cl-pl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line2)}
.ap .cl-pl-n{display:grid}.ap .cl-pl-n small{color:var(--muted);font-size:12.5px}
.ap .cl-pl .ro-cont{grid-column:1/-1}
.ap .cl-cam{width:48px;height:44px;border-radius:12px;border:1.5px solid var(--line);background:#fff;font-size:18px;cursor:pointer}.ap .cl-cam.tem{background:#1E9A47;border-color:#1E9A47;color:#fff;font-weight:800}
.ap .cl-meses{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;align-items:end;height:150px}
.ap .cl-meses>div{display:grid;grid-template-rows:1fr auto auto;height:100%;text-align:center;gap:2px}
.ap .cl-b{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:1px}
.ap .cl-b i{width:42%;background:#2B79AE;border-radius:4px 4px 0 0;min-height:1px}.ap .cl-b i.cl-b0{background:#C9D6DE}
.ap .cl-meses b{font-size:10px}.ap .cl-meses small{font-size:10.5px;color:var(--muted)}.ap .cl-meses .at small{color:var(--ink);font-weight:800}
.ap .cl-leg{display:inline-block;width:10px;height:10px;border-radius:2px;background:#2B79AE;vertical-align:middle}.ap .cl-leg0{background:#C9D6DE}
.ap .pr-tratar .in,.ap .mn-2 .in{min-width:0;width:100%;box-sizing:border-box}
/* Tela principal enxuta (12/10/2026): Clima e Marcar no Mapa viram ícones no topo; "Tudo Enviado" só aparece quando NÃO está tudo enviado */
.ap .ap-row .ap-ico{position:relative;font-size:1.15em}
.ap .ap-row .ap-dot{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:99px;background:var(--s4);box-shadow:0 0 0 2px #fff}
#telaApp .ap-top #sinal .sinal.ok{display:none}
.ap .ap-pills .pl-instalar{text-decoration:none;color:inherit}
@media(max-width:420px){.ap .ap-row .ap-data{font-size:.9em}}
.ap .ap-pills a.pl-instalar{background:var(--surface2);border:1px solid var(--line);border-radius:99px;padding:4px 10px;font-weight:700;font-size:.85em;color:var(--ink2)}
#telaApp .ap-row{flex-wrap:nowrap;gap:6px}
#telaApp .ap-row .ap-data{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#telaApp .ap-row button,#telaApp .ap-row a{flex:0 0 auto;min-width:40px;height:40px;padding:0 9px}
/* Almoxarifado e Cantina (SQL 236) */
.ap .es-abas{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;margin-bottom:12px}
.ap .es-abas button{display:grid;justify-items:center;gap:2px;padding:9px 4px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font:800 12.5px "Public Sans",system-ui,sans-serif;cursor:pointer;position:relative}
.ap .es-abas button i{font-style:normal;font-size:18px}
.ap .es-abas button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .es-abas .en-n{position:absolute;top:4px;right:6px}
.ap .es-tiles button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .es-cats button{position:relative;min-height:66px;font-size:12px}.ap .es-cats button em{position:absolute;top:4px;right:6px;font-style:normal;background:var(--s2);color:#fff;border-radius:99px;min-width:18px;height:18px;font-size:11px;display:grid;place-items:center}
.ap .es-it{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line2)}
.ap .es-it-n{display:grid}.ap .es-it-n b{font-size:15px}.ap .es-it-n small{color:var(--muted);font-size:12.5px}
.ap .es-st{display:flex;align-items:center;gap:6px}
.ap .es-st button{width:42px;height:42px;border-radius:12px;border:1.5px solid var(--line);background:#fff;font:800 20px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .es-st button.mais{background:#21412F;border-color:#21412F;color:#fff}
.ap .es-st input{width:58px;height:42px;text-align:center;border:1.5px solid var(--line);border-radius:12px;font:800 17px "Public Sans",system-ui,sans-serif}
.ap .es-it .es-estado{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}
.ap .es-estado button{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:6px 10px;font:700 12.5px "Public Sans",system-ui,sans-serif;cursor:pointer}.ap .es-estado button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .es-novo{display:grid;grid-template-columns:minmax(0,1fr) 62px 62px auto auto;gap:6px;align-items:center;margin-top:8px}.ap .es-novo .in{min-width:0}
.ap .es-maisnovo{width:100%;margin-top:10px;padding:14px;border:2px dashed var(--line);border-radius:14px;background:#fff;font:800 14px "Public Sans",system-ui,sans-serif;color:var(--ink2);cursor:pointer}
.ap .es-resumo{margin-top:12px;background:var(--surface2);border-radius:14px;padding:10px 12px;display:grid;gap:6px}
.ap .es-resumo>small{color:var(--muted);font-weight:700}
.ap .es-res-l{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line2);font-size:14px}
.ap .es-res-l:last-child{border-bottom:0}.ap .es-res-l small{color:var(--muted)}
.ap .es-passa{color:var(--s4);font-size:12px}
.ap .es-vf{display:inline-flex;border:1.5px solid var(--line);border-radius:99px;overflow:hidden;flex:none}
.ap .es-vf button{border:0;background:#fff;padding:6px 12px;font:800 12px "Public Sans",system-ui,sans-serif;cursor:pointer}.ap .es-vf button.on{background:#21412F;color:#fff}
.ap .es-sn button.on{background:#EEF7EF;border-color:#1E9A47;border-width:2.5px;color:var(--ink)}
.ap .es-comprar{border:1.5px solid #F1D79A;background:#FFFBF0}
.ap .ab-ops button small{font-size:10.5px;background:var(--s4);color:#fff;border-radius:99px;padding:0 6px}
/* Painel: o conteúdo dos cartões alinhado com o título (o .card do site não tem margem interna, só o .cardh) */
.pn-card{padding-bottom:16px}
.pn-card>:not(.cardh){margin-left:18px;margin-right:18px}
.pn-card>.pn-ag-g:last-child,.pn-card>.pn-gr:last-child{margin-bottom:0}
/* Operações de Máquinas (SQL 238) */
.ap .op-lei{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ap .op-lei label{display:grid;gap:2px;border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;background:#fff}
.ap .op-lei small{font-size:11.5px;font-weight:800;color:var(--muted);text-transform:uppercase}
.ap .op-lei input{border:0;font:800 20px "Public Sans",system-ui,sans-serif;width:100%;min-width:0;background:transparent;padding:0}
.ap .op-tipos{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .op-tipos button.on{background:#21412F;border-color:#21412F;color:#fff}
.ap .mo-sinais button.pr-u2.on{background:#FDEEEE;border-color:#C62828;border-width:2.5px;color:#A51F1F}
.ap .mn-ev-o b{color:#2B79AE}
#telaApp .ap-top #sinal .sinal.teste,.sinal.teste{background:#FFF4D6;color:#8A5E0C;border:1.5px dashed #E0A100;display:block}
/* Cadastros do app (como no Manej'Us antigo) e PIN de entrada */
.ap .cf-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:10px;box-shadow:0 1px 3px rgba(17,70,101,.05)}
.ap .cf-card>small{font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink2);font-size:12.5px}
.ap .cf-card label{display:grid;gap:4px;font-weight:800;font-size:13px;text-transform:uppercase;color:var(--ink)}
.ap .cf-val{border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-weight:700;font-size:16px;text-transform:none;background:var(--surface2)}
.ap .cf-mono{font-family:ui-monospace,Menlo,monospace;font-size:15px}
.ap .cf-nota{margin:0;color:var(--muted);font-size:13px;line-height:1.45}
.ap .cf-status{grid-template-columns:1fr auto;align-items:center}
.ap .cf-status small{display:block;font-weight:800;text-transform:uppercase;font-size:12.5px;color:var(--ink2)}
.ap .cf-status b{display:block;font-size:22px;font-family:var(--fd)}.ap .cf-status b.ok{color:#2E7D46}.ap .cf-status b.no{color:var(--s4)}
.ap .cf-status span{font-size:12.5px;color:var(--muted)}
.ap .cf-status i{width:48px;height:48px;border-radius:99px;background:var(--s2-soft);position:relative}.ap .cf-status i::after{content:'';position:absolute;inset:15px;border-radius:99px;background:#3DBE63}
.ap .cf-status i.no{background:var(--s4-soft)}.ap .cf-status i.no::after{background:var(--s4)}
.ap .cf-faz{background:#EEF7EF;border:1.5px solid #BFE5C9;border-radius:12px;padding:12px 14px;font-weight:800;font-size:17px;color:#1F6B3A}
.ap .cf-bts{display:flex;flex-wrap:wrap;gap:8px}
.ap .cf-teste{border:2px solid #E8C25A;background:#FFF6D8;color:#8A4B12;border-radius:14px;padding:14px;font:800 15px "Public Sans",system-ui,sans-serif;text-transform:uppercase;cursor:pointer}
.ap .cf-teste-on .cf-teste{border-color:var(--s4);background:var(--s4-soft);color:var(--s4)}
.pin-tela{position:fixed;inset:0;z-index:9500;background:#233A2D;color:#fff;display:flex;flex-direction:column;align-items:center;padding:calc(40px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));gap:14px;overflow:auto}
.pin-topo{display:grid;justify-items:center;gap:6px;flex:1}
.pin-av{width:84px;height:84px;border-radius:99px;background:#E05252;display:grid;place-items:center;font:800 32px "Archivo",system-ui,sans-serif;box-shadow:0 0 0 6px rgba(255,255,255,.08)}
.pin-topo b{font:800 26px "Archivo",system-ui,sans-serif}.pin-topo small{opacity:.75;font-size:15px}
.pin-pts{display:flex;gap:18px;margin-top:10px}.pin-pts i{width:18px;height:18px;border-radius:99px;border:2px solid rgba(255,255,255,.4)}.pin-pts i.on{background:#fff;border-color:#fff}
.pin-topo em{font-style:normal;color:#FFD27A;min-height:1.2em;font-weight:700}
.pin-tec{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(380px,100%);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:12px}
.pin-tec button{height:62px;border:0;border-radius:16px;background:rgba(255,255,255,.1);color:#fff;font:600 26px "Public Sans",system-ui,sans-serif;cursor:pointer}
.pin-tec button:active{transform:scale(.96)}
.pin-tec .pin-tr{background:rgba(255,214,90,.15);color:#FFD65A;font:800 14px "Public Sans",system-ui,sans-serif;text-transform:uppercase}
.pin-tec .pin-ap{background:rgba(224,82,82,.18);color:#F4A3A3;font:800 14px "Public Sans",system-ui,sans-serif;text-transform:uppercase}
.pin-ok{width:min(380px,100%);height:58px;border:0;border-radius:18px;background:#8A8338;color:#233A2D;font:800 20px "Public Sans",system-ui,sans-serif;text-transform:uppercase;cursor:pointer}
.pin-ok:not([disabled]){background:#C9BE45}
/* Produção da Fazenda (Painel do site) */
.pd-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:1200px){.pd-grade{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pd-t{position:relative;display:grid;gap:2px;padding:14px 16px;border:1px solid var(--line);border-left:4px solid var(--s3);border-radius:14px;background:var(--surface)}
.pd-t .pd-ic{font-size:20px}
.pd-t small{font-weight:800;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.pd-t b{font-family:var(--fd);font-size:24px;line-height:1.15}
.pd-t em{font-style:normal;font-size:12px;color:var(--muted)}
.pd-t.pd-bom{border-left-color:var(--s2)}.pd-t.pd-atencao{border-left-color:var(--s5)}.pd-t.pd-ruim{border-left-color:var(--s4)}.pd-t.pd-ruim b{color:var(--s4)}
.pd-f{position:absolute;top:10px;right:10px;font-style:normal;font-size:10.5px;font-weight:800;border-radius:99px;padding:2px 8px}
.pd-f.pd-manejus{background:var(--s2-soft);color:#17703A}.pd-f.pd-vision{background:var(--s3-soft);color:#1E5F8C}.pd-f.pd-farmplan{background:var(--s5-soft);color:#8A5E0C}
.pd-nota{margin:12px 0 0;font-size:12px;color:var(--muted)}
/* Relatórios */
.rl-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.rl-cad{display:grid;justify-items:center;gap:4px;padding:16px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-decoration:none;color:var(--ink);text-align:center;transition:transform .12s}
.rl-cad:hover{transform:translateY(-2px);border-color:var(--navy)}.rl-cad i{font-style:normal;font-size:26px}.rl-cad b{font-size:14px}.rl-cad small{color:var(--muted);font-size:11.5px}
.rl-filtros{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px}
.rl-filtros .mu-busca{flex:1;min-width:180px}.rl-ck{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13px}
.rl-tbl td,.rl-tbl th{font-size:12.5px;white-space:nowrap;max-width:340px;overflow:hidden;text-overflow:ellipsis}
.rl-tbl tr.rl-apag td{color:var(--s4);text-decoration:line-through;text-decoration-color:rgba(194,61,43,.4)}
@media print{.rl-tbl td,.rl-tbl th{white-space:normal;max-width:none;font-size:10px}}
/* Recepção de Animais (SQL 239) */
.ap .rc-os-n{margin:-2px 0 8px}
/* a Recepção escolhe o comunicado nos mesmos tiles da Pesagem e do Check List Curral (cp-pcs mo-sinais, 28/10/2026) */
.ap .rc-os button.rc-atr:not(.on) small:last-child{color:#B3261E;opacity:1}
.ap .rc-cont{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-bottom:8px}.ap .rc-cont .in{min-width:0}
/* Comunicados: embarque e rastreio */
.ap .cm-emb,.ap .cm-rastro{border:1.5px solid var(--line);border-radius:14px;padding:12px;margin:8px 0;display:grid;gap:8px;background:var(--surface2)}
.ap .cm-ck{display:flex;gap:10px;align-items:flex-start;background:#fff;border-radius:10px;padding:8px 10px;border-left:4px solid var(--line)}
.ap .cm-ck i{font-style:normal}.ap .cm-ck span{display:grid}.ap .cm-ck small{color:var(--muted);font-size:12.5px}
.ap .cm-ck.ok{border-left-color:var(--s2)}.ap .cm-ck.no{border-left-color:var(--s4)}.ap .cm-ck.esp{border-left-color:var(--s5)}
.ap .cm-hist{display:flex;gap:10px;font-size:13px;padding:4px 2px;border-bottom:1px solid var(--line2)}.ap .cm-hist small{color:var(--muted);flex:none;width:92px}
/* Conferência contra o comunicado (SQL 240) */
.ap .cm-conf{border:2px solid #9ED9B0;background:#F3FBF5;border-radius:14px;padding:12px;display:grid;gap:6px;font-size:13.5px}
.ap .cm-conf.trava{border-color:#E7A39D;background:#FFF5F5}.ap .cm-conf.trava>b,.ap .cm-conf.trava .sec{color:#A51F1F}
.ap .cm-conf .al{color:#8A5E0C}
.ap-div{display:inline-block;margin-bottom:4px;padding:3px 8px;border-radius:8px;background:var(--s4-soft);color:var(--s4);font-weight:800;font-size:12px}

/* ---------- Compras (SQL 241): pedido no app, cotação e aprovação no site, entrada contra a compra ---------- */
.cp-lin{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line2)}
.cp-lin>b{font-size:14px;min-width:0;overflow-wrap:anywhere}
.cp-lin .su-kg{margin:0}
.cp-lin.livre{grid-template-columns:minmax(0,1fr) auto}
.cp-lin.livre>input.in{grid-column:1/-1}
.cp-lin .su-kg select{border:0;background:none;font:inherit;color:inherit;max-width:78px}
.cp-passos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:8px 0}
.cp-passos span{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11.5px;font-weight:700;color:var(--muted);text-align:center;padding:6px 2px;border-radius:9px;background:var(--surface2);opacity:.55}
.cp-passos span i{font-style:normal;font-size:16px}
.cp-passos span.ok{opacity:1;color:#1E7A3F;background:#EAF6EE}
.cp-passos span.agora{opacity:1;color:var(--ink);background:#FFF4DC;box-shadow:inset 0 0 0 1.5px #E2B33C}
.cp-passos span.no{grid-column:1/-1;opacity:1;color:#A51F1F;background:#FDEEEE}
.cp-pcs button b{font-size:13px}
.cp-pcs button small{font-weight:600;font-size:11px;opacity:.8;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-falta{margin:6px 0}
.cp-trava{margin-top:8px}
.cp-tbl td,.cp-tbl th{white-space:nowrap}
.cp-tbl td.cp-itens{white-space:normal;min-width:220px;max-width:340px}
.cp-tbl tr.cp-on>td{background:var(--surface2)}
.cp-card{scroll-margin-top:16px}
.cp-box{display:grid;gap:10px;padding:16px 18px 18px}
.cp-cab{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:14px;align-items:start}
.cp-cab>div:first-child{display:grid;gap:4px}
.cp-cab small{color:var(--muted)}
.cp-tit{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cp-tit b{font-size:17px}
.cp-box>.btn{justify-self:start}
.cp-tag{font-size:11.5px;font-weight:700;border-radius:99px;padding:2px 8px;white-space:nowrap}
.cp-tag.pr-t-u2{background:#FDEEEE;color:#A51F1F}
.cp-best{background:#EAF6EE;color:#1E7A3F}
.cp-cot tr.cp-esc>td{background:#F3FBF5}
.cp-cot td,.cp-cot th{vertical-align:middle}
.cp-n{width:96px;text-align:right}
.cp-cot input.in,.cp-parc input.in,.cp-box .tbl input.in{height:34px;padding:0 8px;min-width:0}
.cp-cot td:first-child input.in{width:180px}
.cp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.cp-grid.cp-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cp-grid .fl{min-width:0}
.cp-grid .in,.cp-grid .btn{width:100%;box-sizing:border-box;min-width:0}
.cp-acoes{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cp-acs{display:inline-flex;gap:6px}
.cp-soma td{font-weight:700;border-top:2px solid var(--line)}
.cp-sit{font-size:12px;font-weight:700;border-radius:99px;padding:3px 9px;background:var(--surface2);white-space:nowrap}
.cp-s-0,.cp-s-1{background:#EEF3F6}
.cp-s-2{background:#FFF4DC;color:#8A5E0C}
.cp-s-3,.cp-s-4{background:#E8F1FB;color:#1F5F99}
.cp-s-5{background:#EAF6EE;color:#1E7A3F}
.cp-s-6{background:#FDEEEE;color:#A51F1F}
@media (max-width:820px){.cp-cab,.cp-grid,.cp-grid.cp-g4{grid-template-columns:minmax(0,1fr)}.cp-box{padding:12px}}

/* Morte (pedido do Welton, 12/10/2026): bordas finas como os balões do item 3; causa marcada em vermelho (como Raiva); Sim/Não em balões grandes */
.cu-ch button{border-width:1.5px}
.cu-ch.mo-causa button.on{background:var(--s4);border-color:var(--s4);color:#fff}
.mo-snb{margin:4px 0 6px}
.mo-snb button{min-height:64px}

/* Aprovação do Rebanho: editar o lançamento antes de aprovar */
.ap-ed{border-top:1px solid var(--line);background:var(--surface2);padding:14px 18px 18px}
.ap-tbl tr.ap-sel>td{background:#FFF8E6}
.ap-edbox{display:grid;gap:10px;max-width:760px}
.ap-edit{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:center}
.ap-edit .in,.ap-edbox .fgrid .in{min-width:0;width:100%;box-sizing:border-box}
.ap-edbox>.btn{justify-self:start}

/* ---------- Relatórios Analíticos e Infográfico (relat.js) ---------- */
.rx-filtros{padding:14px 18px;display:grid;gap:10px;margin-bottom:16px}
.rx-fl1{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:end}
.rx-fl2{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;align-items:end}
.rx-filtros .in{min-width:0;width:100%;box-sizing:border-box}
.rx-per{justify-self:start}
.rx-limpa{border:0;background:none;color:var(--s4,#c62828);font-weight:700;cursor:pointer;padding:0}
.rx-cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.rx-cab b{font-family:var(--fd);font-size:16px}.rx-cab span{color:var(--muted);font-size:13px}
.rx-texto{background:#F1F8F3;border:1px solid #CFE6D7;border-radius:14px;padding:14px 16px;font-size:14.5px;line-height:1.5;margin-bottom:14px}
.rx-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.rx-kpi.rx-kt b{font-size:16px;line-height:1.25}
.rx-kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;gap:2px;border-left:4px solid var(--navy)}
.rx-kpi b{font-family:var(--fd);font-size:24px;line-height:1.15;color:#1E5631;overflow-wrap:anywhere}
.rx-kpi span{font-weight:700;font-size:13px}.rx-kpi small{color:var(--muted);font-size:12px}
.rx-kpi.rx-ruim{border-left-color:var(--s4,#c62828)}.rx-kpi.rx-ruim b{color:#A51F1F}
.rx-kpi.rx-bom{border-left-color:#1E7A3F}
.rx-grafs{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-bottom:14px}
.rx-graf,.rx-tab{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:14px;break-inside:avoid}
.rx-grafs .rx-graf{margin-bottom:0}
.rx-gt{font-weight:800;font-size:14px;margin-bottom:8px}.rx-gt small{font-weight:500;color:var(--muted);font-size:11.5px}
.rx-bar{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;border:0;background:none;padding:4px 2px;font:inherit;text-align:left;cursor:pointer;border-radius:8px}
div.rx-bar{cursor:default}
.rx-bar:hover{background:var(--surface2)}.rx-bar.on{background:#FFF4DC}
.rx-bl{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rx-bt{height:14px;background:var(--surface2);border-radius:99px;overflow:hidden}
.rx-bt i{display:block;height:100%;background:linear-gradient(90deg,#1E7A3F,#20A44B);border-radius:99px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.rx-bar b{font-size:13px;min-width:40px;text-align:right}
.rx-cz td{text-align:center;font-weight:700;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.rx-lac{white-space:nowrap}.rx-lac .btn{margin-right:4px}
@media (max-width:760px){.rx-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rx-fl1{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rx-fl1>.fl:first-child{grid-column:1/-1}.rx-grafs{grid-template-columns:minmax(0,1fr)}}
@media print{.rx-filtros,#links{display:none!important}.rx-graf,.rx-tab,.rx-kpi{box-shadow:none}}

/* ---------- Infográfico Mensal ---------- */
.if-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:18px}
.if-bloco{margin:0}
.if-in{padding:0 18px 18px;display:grid;gap:12px}
.if-datas .in{min-width:0;width:100%;box-sizing:border-box}
.if-lista{gap:8px}
.if-sec{display:grid;grid-template-columns:auto auto 22px 44px minmax(0,1fr) auto;cursor:grab;gap:10px;align-items:center;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface);opacity:.62}
.if-sec.on{opacity:1;border-color:#9ED9B0;background:#F7FCF8}
.if-ck{border:0;background:none;font-size:20px;cursor:pointer;color:#1E7A3F;padding:0}
.if-n{font-weight:800;color:var(--muted);text-align:center}
.if-tx{display:grid;gap:2px;min-width:0}.if-tx small{color:var(--muted);font-size:12px}
.if-mv{display:flex;gap:4px}.if-mv button{border:1px solid var(--line);background:#fff;border-radius:8px;width:30px;height:30px;cursor:pointer}.if-mv button:disabled{opacity:.3;cursor:default}
.if-gerar{justify-self:stretch;min-height:46px;font-size:15px}
.if-capa{aspect-ratio:297/210;border-radius:14px;background:linear-gradient(135deg,#123B27 0%,#1E5631 55%,#2E7D4A 100%);background-size:cover;background-position:center;color:#fff;display:grid;grid-template-rows:auto 1fr auto;padding:4% 5%;box-sizing:border-box;overflow:hidden;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.if-capa-topo{display:flex;justify-content:space-between;align-items:center;gap:12px}
.if-capa-topo img{height:clamp(28px,7vw,64px);width:auto;max-width:40%;object-fit:contain;background:#fff;border-radius:10px;padding:4px 8px}
.if-capa-meio{align-self:center;display:grid;gap:4px}
.if-capa-meio small{letter-spacing:.14em;text-transform:uppercase;font-size:clamp(9px,1.4vw,13px);opacity:.85}
.if-capa-meio h2{font-family:var(--fd);font-size:clamp(24px,5.4vw,58px);line-height:1.02;margin:0;color:#fff}
.if-capa-meio p{font-size:clamp(13px,2.4vw,26px);font-weight:700;margin:0}
.if-capa-meio b{font-size:clamp(11px,1.8vw,18px);color:#BFE7C9}
.if-capa-pe{display:flex;flex-wrap:wrap;gap:6px}.if-capa-pe span{background:rgba(255,255,255,.14);border-radius:99px;padding:3px 10px;font-size:clamp(9px,1.2vw,12px);font-weight:600}
.if-capa.previa{border-radius:12px}
.if-doc{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.if-doc>*{min-width:0}
.if-pag{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px}
.if-ph{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;border-bottom:2px solid #1E5631;padding-bottom:8px;margin-bottom:12px}
.if-ph h3{margin:0;font-family:var(--fd);font-size:20px}.if-ph span{color:var(--muted);font-size:13px}
.if-sumario h3{font-family:var(--fd);margin:0 0 10px}
.if-res{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}
.if-ri{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#F7FCF8}.if-ri p{margin:4px 0 0;font-size:13px;line-height:1.45}
@media (max-width:900px){.if-grid{grid-template-columns:minmax(0,1fr)}}
@media print{.if-doc{gap:0}.if-capa{border-radius:0;height:190mm;aspect-ratio:auto;page-break-after:always}.if-pag{border:0;border-radius:0;padding:0;page-break-before:always}.if-sumario{page-break-before:auto}
  .if-pag .rx-grafs{grid-template-columns:repeat(3,minmax(0,1fr))}.if-pag .rx-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Relatórios: entrada do Infográfico e dos Analíticos */
.rl-info{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;background:linear-gradient(135deg,#123B27,#1E5631 60%,#2E7D4A);color:#fff;border-radius:16px;padding:18px 20px;text-decoration:none;margin-bottom:18px}
.rl-info>i{font-style:normal;font-size:34px}.rl-info span{display:grid;gap:2px}.rl-info small{letter-spacing:.12em;text-transform:uppercase;font-size:11px;opacity:.85}
.rl-info span>b{font-family:var(--fd);font-size:22px}.rl-info em{font-style:normal;font-size:13px;opacity:.9}
.rl-ir{background:#fff;color:#1E5631;border-radius:10px;padding:8px 14px;white-space:nowrap}
.rl-tit{font-family:var(--fd);font-weight:800;font-size:17px;margin:4px 0 10px}.rl-tit small{font-family:inherit;font-weight:500;font-size:12px;color:var(--muted);margin-left:6px}
.rl-anal{margin-bottom:20px}
.rl-anal .rl-cad{align-content:start}.rl-anal .rl-cad small{font-size:11.5px;color:var(--muted);font-weight:500;line-height:1.3}
@media (max-width:700px){.rl-info{grid-template-columns:auto minmax(0,1fr)}.rl-ir{grid-column:1/-1;text-align:center}}

.if-alca{color:var(--muted);font-size:18px;cursor:grab}
.if-img{width:44px;height:44px;border-radius:10px;object-fit:cover;font-style:normal;font-size:26px;display:grid;place-items:center}
.if-sec.arr{opacity:.35}.if-sec.alvo{box-shadow:0 -3px 0 #1E7A3F}
.if-todas{display:flex;gap:8px;padding-bottom:4px}
.if-resumo{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:8px;background:var(--surface2)}
.if-resumo div{display:grid;gap:1px}.if-resumo small{color:var(--muted);font-size:12px}.if-resumo span{font-weight:600;font-size:13.5px}
.if-ph h3{display:flex;align-items:center;gap:10px}.if-ph h3 img{width:40px;height:40px;border-radius:10px;object-fit:cover;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.ck-itens .in{text-align:left}   /* item do checklist: texto à esquerda, como nos outros cadastros */
/* Implantação da Fazenda (o mesmo da do Vision) */
.guia{padding:0}.guia-i{display:flex;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid var(--line)}.guia-i:first-child{border-top:0}
.guia-i.ok .guia-t b{color:var(--muted)}.guia-i.na{opacity:.55}.guia-c{font-size:20px;flex:none}
.guia-t{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.guia-t b{font-size:15px}
.guia-bar{height:10px;border-radius:6px;background:var(--line);margin-top:10px;overflow:hidden}.guia-bar i{display:block;height:100%;background:#2E9A4F;border-radius:6px}
.guia-g{padding:10px 18px 4px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line)}.guia-g:first-child{border-top:0}
/* Abas dos Cadastros: botões em grade contínua (sem os grupos), com a quantidade (pedido do Welton, 13/10/2026) */
.mu-abas-grupos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%}
.mu-abas-g,.mu-abas-g .tabs2{display:contents!important}
.mu-abas-g>small{display:none}
@media (max-width:900px){.mu-abas-grupos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.mu-abas-grupos{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Inventário de Insumos (SQL 263): nome · contado · diferença na mesma linha; a explicação embaixo, quando passa de 5% */
.inv-it{display:grid;grid-template-columns:minmax(0,1fr) 150px 170px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line2)}
.inv-it:last-child{border-bottom:0}
.inv-nome{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:6px;align-items:center}
.inv-ic{font-size:20px;grid-row:span 2;line-height:1}
.inv-nome small{color:var(--muted);font-size:12px}
.ap .inv-it .su-kg{margin:0;padding:4px 12px;align-items:center}
.ap .inv-it .su-kg input{font-size:20px;min-width:0;width:100%}
.inv-dif{font-size:13px;font-weight:600;padding:6px 8px;border-radius:8px;min-height:20px}
.inv-dif:empty{background:none;padding:0}
.inv-mot{grid-column:1/-1}
@media (max-width:600px){.inv-it{grid-template-columns:minmax(0,1fr) 130px}.inv-dif{grid-column:1/-1}}
/* Resumo Zootécnico (zootecnico.html) */
.rl-zoo{background:linear-gradient(135deg,#2B2F33,#383E42 60%,#4A5258)}
.zo-filtros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.zo-info{padding:10px 0}
.zo-cols{padding:16px 18px;margin-bottom:14px}
.zo-g{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 6px;font-weight:700}
.zo-baloes button{font-size:13px}
.zo-tbl th,.zo-tbl td{white-space:nowrap}
.zo-tbl th.zo-grupo{text-align:center;border-bottom:2px solid var(--line)}
.zo-tbl .zo-fixa{position:sticky;left:0;background:var(--surface);z-index:1}
.zo-tbl tr.zo-geral td{font-weight:700;background:var(--surface2)}
.zo-tbl tr.zo-geral td.zo-fixa{background:var(--surface2)}
@media (max-width:900px){.zo-filtros{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{@page{size:A4 landscape;margin:8mm}.zo-tbl{font-size:9px}.zo-tbl .zo-fixa{position:static}}
/* Resumo Zootécnico: tudo centralizado (pedido do Welton) */
.zo-tbl th,.zo-tbl td,.zo-tbl th.r,.zo-tbl td.r{text-align:center!important;vertical-align:middle}
/* Resumo Zootécnico · balões das colunas no site: no formato dos botões (Sugestão Gesta'Up, Tudo…); marcado = verde com ✓ */
.zo-baloes{display:flex;flex-wrap:wrap;gap:8px}
.zo-baloes .btn.sm{cursor:pointer;transition:background .12s,border-color .12s}
.zo-baloes .btn.sm:hover{border-color:#1E7A3F}
.zo-baloes .btn.sm.on{background:#1E7A3F;border-color:#1E7A3F;color:#fff}
.zo-baloes .btn.sm.on::before{content:"✓";font-weight:800}
.zo-g small{font-weight:600;color:var(--muted,#6b7479);margin-left:6px}
.zo-cols .mn-acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line2,#e5e8e6)}
.zo-cols .mv-nota{margin-top:12px}
/* Painel de Pastagens (painel-pastagens.html) */
.rl-pasto{background:linear-gradient(135deg,#1F4D2B,#2E6B3A 60%,#4A8A3F)}
.pp-filtros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.pp-tbl th,.pp-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle}
.pp-tbl .pp-fixa{position:sticky;left:0;background:var(--surface);z-index:1}
.pp-tbl tr.pp-geral td{font-weight:800;background:var(--surface2)}
.pp-tbl tr.pp-sub td{font-weight:700;background:#EEF3EE;border-top:2px solid var(--line)}
.pp-tbl tr.pp-s-atr td:not(.pp-fixa){background:#FDEEEE}
.pp-tbl tr.pp-s-breve td:not(.pp-fixa){background:#FFF6E0}
.pp-tbl tr.pp-s-ved td{color:var(--muted,#6b7479)}
.pp-sit{font-weight:700}
.pp-k-atr b{color:#B83A2E}
@media (min-width:861px){.kpis.pp-k5{grid-template-columns:repeat(5,1fr)}}   /* 📏 5º cartão do Painel de Pastagens: altura do pasto */
@media (max-width:900px){.pp-filtros{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{@page{size:A4 landscape;margin:8mm}.pp-tbl{font-size:8.5px}.pp-tbl .pp-fixa{position:static}}
/* Painel de Bordo (painel-bordo.html) */
.rl-bordo{background:linear-gradient(135deg,#1F3550,#2B4C73 60%,#3E6A9A)}
.pb-filtros{display:grid;grid-template-columns:200px minmax(0,1fr);gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.pb-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.pb-card{padding:14px 16px;border-top:4px solid var(--line,#d5dadc);display:flex;flex-direction:column;gap:4px}
.pb-card.pb-verde{border-top-color:#2E7D4F}.pb-card.pb-amarelo{border-top-color:#D9A21B}.pb-card.pb-vermelho{border-top-color:#C0392B}
.pb-topo{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.pb-topo small{font-weight:700;color:var(--muted,#6b7479)}.pb-topo em{font-style:normal;font-weight:500}
.pb-card>b{font:800 24px "Archivo",system-ui,sans-serif}
.pb-barras{display:flex;align-items:flex-end;gap:3px;height:42px;margin-top:6px}
.pb-barras i{flex:1;border-radius:3px 3px 0 0;background:#D5DADC}
.pb-barras .pb-b-verde{background:#2E7D4F}.pb-barras .pb-b-amarelo{background:#D9A21B}.pb-barras .pb-b-vermelho{background:#C0392B}.pb-barras .pb-b-vazio{background:#ECEFED}
.pb-tbl th,.pb-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle}
.pb-tbl .pb-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700}
.pb-tbl tr.pb-meta td{background:#EEF3F8;font-weight:700}.pb-tbl tr.pb-res td{font-weight:800}
.pb-tbl td.pb-c-verde{background:#E7F4EC}.pb-tbl td.pb-c-amarelo{background:#FFF6E0}.pb-tbl td.pb-c-vermelho{background:#FDEEEE}
.pb-metas{padding:16px 18px;margin-bottom:14px}.pb-in{max-width:130px;text-align:center;margin:0 auto}
@media (max-width:1100px){.pb-grade{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.pb-grade{grid-template-columns:repeat(2,minmax(0,1fr))}.pb-filtros{grid-template-columns:1fr}}
@media print{@page{size:A4 landscape;margin:8mm}.pb-grade{grid-template-columns:repeat(6,minmax(0,1fr))}.pb-tbl{font-size:8px}.pb-tbl .pb-fixa{position:static}}
.pb-campo{display:inline-flex;align-items:center;gap:8px;justify-content:center}
.pb-campo .pb-in{width:120px;text-align:center}
.pb-campo span{font-size:12.5px;color:var(--muted,#6b7479);min-width:62px;text-align:left}
.pb-tbl-metas .pb-in{width:86px;text-align:center;margin:0 auto;padding:6px}
.pb-tbl .pb-mm{font-size:10.5px;opacity:.75}
/* Resultado e Abate dos Lotes (resultado-lotes.html) */
.rl-res{background:linear-gradient(135deg,#4A3A12,#6B5419 60%,#8C6E22)}
.rl-filtros{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.rl-tbl th,.rl-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle}
.rl-tbl .rl-fixa{position:sticky;left:0;background:var(--surface);z-index:1}
.rl-tbl tr.rl-geral td{font-weight:800;background:var(--surface2)}
.rl-tbl tr.rl-on td{background:#EEF3EE}
.rl-aval{padding:16px 18px;margin-bottom:14px}
.rl-bloco{margin-top:14px}.rl-bloco h4{margin:0 0 8px;font:800 15px "Archivo",system-ui,sans-serif;color:var(--ink,#1e2427)}
.rl-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.rl-it{border:1px solid var(--line2,#e5e8e6);border-radius:10px;padding:8px 10px;text-align:center}.rl-it small{display:block;color:var(--muted,#6b7479);font-size:12px}.rl-it b{font-size:15px}
.rl-mes th,.rl-mes td{white-space:nowrap;text-align:center!important}.rl-mes tr.rl-geral td{font-weight:800;background:var(--surface2)}
.rl-cascata{max-width:620px}.rl-cascata td,.rl-cascata th{text-align:right!important;white-space:nowrap}.rl-cascata td:first-child,.rl-cascata th:first-child{text-align:left!important}
.rl-cascata tr.rl-sub td{font-weight:700;border-top:1px solid var(--line2,#e5e8e6)}.rl-cascata tr.rl-fim td{font-weight:800;background:var(--surface2);border-top:2px solid var(--ink,#1e2427)}.rl-cascata .neg{color:var(--s4,#b3261e)}
.rl-assina{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-top:22px;font-size:13px;color:var(--muted,#6b7479)}
.rl-assina .rl-linha{min-width:260px;border-top:1px solid var(--ink,#1e2427);padding-top:4px;text-align:center;margin-top:28px}
@media (max-width:900px){.rl-grade{grid-template-columns:repeat(2,minmax(0,1fr))}.rl-filtros{grid-template-columns:1fr}}
@media print{@page{size:A4 landscape;margin:8mm}.rl-tbl{font-size:8px}.rl-tbl .rl-fixa{position:static}}
/* Placar de Resultados (placar.html) */
.pe-card{padding-bottom:16px}.pe-card .rl-it .sub2{display:block;font-size:11.5px;margin-top:2px}
.pe-duas{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;margin-top:14px;padding:0 4px}.pe-duas h4{margin:0 0 8px;font:800 14px "Archivo",system-ui,sans-serif}
.pe-mat th,.pe-mat td{text-align:center!important;white-space:nowrap;padding:8px 6px!important;font-size:12.5px}.pe-mat th small{display:block;font-weight:500;color:var(--muted,#6b7479);font-size:10.5px}
.pe-mat td.pe-c-pos{background:rgba(46,125,79,.10);color:#2E7D4F}.pe-mat td.pe-c-neg{background:rgba(192,57,43,.10);color:#C0392B}.pe-mat td.pe-c-base{font-weight:800;outline:2px solid var(--ink,#1e2427);outline-offset:-2px}
.pe-tor{display:grid;gap:8px}.pe-lin{display:grid;grid-template-columns:140px minmax(0,1fr) 128px;gap:8px;align-items:center;font-size:12.5px}
.pe-eixo{position:relative;height:18px;background:linear-gradient(var(--line2,#e5e8e6),var(--line2,#e5e8e6)) center/1px 100% no-repeat}
.pe-b{position:absolute;top:2px;height:14px;border-radius:3px}.pe-b.pe-pos{background:#2E7D4F}.pe-b.pe-neg{background:#C0392B}.pe-num{text-align:right;white-space:nowrap;padding-right:6px}.pe-tor,.pe-duas>div>.sub2{padding-right:10px}
@media (max-width:900px){.pe-duas{grid-template-columns:1fr}.pe-lin{grid-template-columns:110px minmax(0,1fr) 100px}}
.rl-placar{background:linear-gradient(135deg,#4A2E12,#7A4A1C 60%,#A8692A)}
.pr-filtros{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.pr-bal{display:flex;gap:6px}.pr-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.pr-tbl th,.pr-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.pr-tbl .pr-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.pr-tbl .pr-tot{font-weight:700;background:rgba(56,62,66,.05)}
.pr-tbl tr.pr-dest td{font-weight:700;border-top:2px solid var(--line,#d5dadc)}
.pr-pos{color:#2E7D4F;font-weight:700}.pr-neg{color:#C0392B;font-weight:700}
.pr-graf{width:100%;height:auto;display:block;padding:6px 4px 0}
.pr-graf .pr-grade{stroke:#ECEFED}.pr-graf .pr-zero{stroke:#6b7479;stroke-width:1.2}
.pr-graf .pr-eixo{font-size:11px;fill:#6b7479}.pr-graf .pr-val{font-size:10.5px;font-weight:700;fill:#383E42}
.pr-graf .pr-b-pos{fill:#2E7D4F}.pr-graf .pr-b-neg{fill:#C0392B}.pr-graf .pr-b-melhor{stroke:#D9A21B;stroke-width:3}
@media (max-width:700px){.pr-filtros{grid-template-columns:1fr}}
@media print{.pr-tbl td,.pr-tbl th{font-size:9.5px}}
.pr-rep{color:#D9A21B;font-weight:800;margin-left:2px}
/* Painel Nutrição (painel-nutricao.html) */
.rl-nutri{background:linear-gradient(135deg,#3D4A12,#5C6E1C 60%,#7E922F)}
.np-filtros{display:grid;grid-template-columns:170px auto minmax(0,1fr) auto;gap:12px;padding:14px 16px;margin-bottom:14px;align-items:end}
.np-bal{display:flex;gap:6px}.np-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.np-tbl th,.np-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.np-tbl .np-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.np-tbl .np-tot{font-weight:700;background:rgba(56,62,66,.05)}
.np-tbl tr.np-dest td{font-weight:700}
.np-tbl .np-hoje{background:rgba(217,162,27,.12)}
.np-lotes .np-info{min-width:290px;max-width:330px;white-space:normal;vertical-align:top;font-weight:500;line-height:1.35;border-right:1px solid var(--line,#d5dadc)}
.np-lotes .np-info b{display:block;font-size:13.5px;margin-bottom:2px}.np-lotes .np-info span{display:block;font-size:11.5px;color:var(--muted,#6b7479)}
.np-lotes .np-rot{font-weight:700;text-align:left!important;color:var(--muted,#6b7479);font-size:11.5px}
.np-lotes tr.np-ini td{border-top:2px solid var(--line,#d5dadc)}
.np-avisos{display:flex!important;flex-wrap:wrap;gap:4px;margin-top:4px}
.np-aviso{display:inline-block;border-radius:99px;padding:2px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.np-aviso.np-vermelho{background:#FBE3E0;color:#C0392B}.np-aviso.np-amarelo{background:#FBF0D3;color:#8A6410}
.np-txt-vermelho{color:#C0392B}
@media (max-width:800px){.np-filtros{grid-template-columns:1fr 1fr}}
@media print{.np-tbl td,.np-tbl th{font-size:9px}.np-lotes .np-info{min-width:200px}}
/* Filtros do Placar e do Painel Nutrição: título e campo na mesma altura em toda a linha */
.np-filtros,.pr-filtros{align-items:start}
.np-filtros>.fl,.pr-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.np-filtros>.fl>span,.pr-filtros>.fl>span{align-self:end;line-height:18px}
.np-filtros .in,.pr-filtros .in{height:40px;margin:0;box-sizing:border-box}
.np-bal .btn,.pr-bal .btn{height:40px;min-width:44px;justify-content:center}
.np-lotes .np-info{box-sizing:border-box;width:300px;min-width:300px;max-width:300px}
.np-lotes .np-rot{position:sticky;left:300px;background:var(--surface);z-index:1;border-right:1px solid var(--line,#d5dadc)}
@media (max-width:700px){.np-lotes .np-info{width:200px;min-width:200px;max-width:200px}.np-lotes .np-rot{left:200px}}
.np-lotes .np-rot{z-index:2;box-shadow:-2px 0 0 var(--surface)}.np-lotes .np-info{z-index:3}
.np-lotes{border-collapse:separate;border-spacing:0}.np-lotes .np-rot{box-shadow:-8px 0 0 var(--surface)}
/* Painel Sanidade (painel-sanidade.html) */
.rl-sanid{background:linear-gradient(135deg,#4A1620,#7A2333 60%,#A33A4A)}
.ps-filtros{display:grid;grid-template-columns:120px auto auto minmax(0,1fr);gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.ps-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.ps-filtros>.fl>span{align-self:end;line-height:18px}
.ps-filtros .in{height:40px;margin:0;box-sizing:border-box}
.ps-bal{display:flex;gap:6px}.ps-bal .btn{height:40px;min-width:44px;justify-content:center}.ps-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.ps-leg>div{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.ps-leg em{font-style:normal;font-size:12px;white-space:nowrap}
.ps-tbl th,.ps-tbl td{text-align:center!important;vertical-align:middle;font-size:12.5px;white-space:nowrap}
.ps-tbl .ps-fixa{position:sticky;left:0;background:var(--surface);z-index:2}
.ps-tbl .ps-item{text-align:left!important;min-width:200px;max-width:230px;white-space:normal;vertical-align:top;border-right:1px solid var(--line,#d5dadc)}
.ps-tbl .ps-item b{display:block}.ps-tbl .ps-item small{color:var(--muted,#6b7479);font-size:11px}
.ps-tbl .ps-item .in{margin:6px 0;height:36px;font-size:12px}
.ps-tbl .ps-cat{text-align:left!important;min-width:160px}.ps-tbl .ps-cat .in{height:36px;margin:0;font-size:12px}
.ps-tbl .ps-obs{text-align:left!important;min-width:180px;white-space:normal}
.ps-obsed{display:flex;gap:6px;align-items:center}.ps-obsed .in{height:36px;margin:0;font-size:12px;flex:1}
.ps-tbl tr.ps-ini td{border-top:2px solid var(--line,#d5dadc)}
.ps-tbl td.ps-hoje,.ps-tbl th.ps-hoje{background:rgba(217,162,27,.12)}
.ps-tbl td.ps-feito{background:#E4F2E9}.ps-tbl td.ps-atrasado{background:#FBE3E0}.ps-tbl td.ps-agora,.ps-tbl td.ps-proximo{background:#FBF0D3}.ps-tbl td.ps-fora{background:#E3ECF7}
.ps-sim{display:block;font-size:15px;line-height:1}.ps-tbl td small{display:block;font-size:10px;color:var(--muted,#6b7479)}
.ps-marca{width:30px;height:30px;border-radius:50%;border:1.5px solid #C9CFD2;background:#fff;cursor:pointer;font-size:14px;color:#fff;padding:0}
.ps-marca.on{background:#7A2333;border-color:#7A2333}.ps-marca:hover{border-color:#7A2333}
.ps-mais td{text-align:left!important;padding:6px 10px}
.ps-novo{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px}.ps-novo .in{height:36px;max-width:320px;margin:0}
.ps-txt-verde{color:#2E7D4F}.ps-txt-vermelho{color:#C0392B}.ps-txt-amarelo{color:#B07D0A}
@media (max-width:800px){.ps-filtros{grid-template-columns:1fr 1fr}}
@media print{.ps-tbl td,.ps-tbl th{font-size:9.5px}.ps-tbl .ps-item{min-width:120px}}
.ps-tbl .in{text-align:left!important}.ps-tbl .ps-item .in{width:100%;box-sizing:border-box}.ps-tbl .ps-cat{min-width:200px}.ps-tbl .ps-cat .in{width:100%;box-sizing:border-box}
.ps-filtros>.ps-leg{grid-template-rows:18px auto}.ps-leg>div{align-self:start;min-height:40px;align-content:center}
/* Demanda de Insumos (demanda-insumos.html) */
.rl-demanda{background:linear-gradient(135deg,#5A4310,#8A6A14 60%,#B38D22)}
.di-filtros{display:grid;grid-template-columns:170px 170px minmax(0,1fr);gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.di-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.di-filtros>.fl>span{align-self:end;line-height:18px}.di-filtros .in{height:40px;margin:0;box-sizing:border-box}
.di-tbl th,.di-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.di-tbl .di-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.di-tbl tr.di-tot td,.di-tbl td.di-tot{font-weight:700;background:rgba(56,62,66,.05)}
.di-tbl tr.di-hoje td,.di-tbl td.di-hoje{background:rgba(217,162,27,.12)}
.di-sit{display:inline-block;border-radius:99px;padding:2px 10px;font-size:11.5px;font-weight:700}
.di-vermelho{background:#FBE3E0;color:#C0392B}.di-amarelo{background:#FBF0D3;color:#8A6410}.di-verde{background:#E4F2E9;color:#2E7D4F}.di-cinza{background:#ECEFED;color:#6b7479}
.di-azul{background:#E3EEFB;color:#1E5FA8}.en-whats{margin-top:6px;display:inline-flex;align-items:center;gap:4px}.di-whats{font-weight:700;color:#128C4B;text-decoration:none;white-space:nowrap}.di-whats:hover{text-decoration:underline}.di-txt-azul{color:#1E5FA8}.di-txt-vermelho{color:#C0392B}.di-txt-amarelo{color:#B07D0A}.di-sp{color:#D9A21B;font-weight:800}
@media (max-width:700px){.di-filtros{grid-template-columns:1fr}}
@media print{.di-tbl td,.di-tbl th{font-size:9.5px}}
/* Rebanho R$ (rebanho-valor.html) */
.rl-rebanho{background:linear-gradient(135deg,#2E3A12,#45591C 60%,#5F7A2A)}
.rv-filtros{display:grid;grid-template-columns:170px auto auto;justify-content:start;gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.rv-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.rv-filtros>.fl>span{align-self:end;line-height:18px}.rv-filtros .in{height:40px;margin:0;box-sizing:border-box}
.rv-bal{display:flex;gap:6px}.rv-bal .btn{height:40px;min-width:44px;justify-content:center}.rv-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.rv-tbl th,.rv-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.rv-tbl .rv-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.rv-tbl .rv-tot{font-weight:700;background:rgba(56,62,66,.05)}.rv-tbl tr.rv-totl td{font-weight:700;border-top:2px solid var(--line,#d5dadc)}
.rv-tbl .rv-hoje{background:rgba(217,162,27,.12)}
.rv-pos{color:#2E7D4F}.rv-neg{color:#C0392B}.rv-rep{color:#D9A21B;font-weight:800;margin-left:2px}
.ds-tbl tr.cs-dest td{font-weight:700}
.mo-sexo.rp-est{grid-template-columns:repeat(3,minmax(0,1fr))}
.rp-os{display:grid;gap:8px;margin-bottom:8px}.rp-os button,.rp-etapas button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 12px;border:1.5px solid var(--line,#d5dadc);border-radius:12px;background:#fff;font:600 14px "Public Sans",system-ui,sans-serif;cursor:pointer}
.rp-os button small,.rp-etapas button small{font-weight:500;font-size:12px;color:var(--muted,#6b7479)}.rp-os button.on,.rp-etapas button.on{border-color:#1f3a2b;box-shadow:0 0 0 2px #1f3a2b inset}
.rp-etapas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:6px}.rp-etapas button i{font-style:normal;font-size:20px}.rp-etapas button.feita{background:#eef6f0}.rp-etapas button.atras{border-color:var(--s4,#b3261e)}
.rp-nova{width:100%;margin-top:4px}.rp-datas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0}.rp-datas span{display:flex;flex-direction:column;padding:8px 10px;border-radius:10px;background:var(--surface2,#f4f6f5);font-size:12.5px}.rp-datas span i{font-style:normal}.rp-datas b{font-size:14px}
.rp-prod{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line2,#e5e8e6)}.rp-prod small{display:block;color:var(--muted,#6b7479);font-size:12px}
.rp-prod-novo,.rp-ani{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.rp-prod-novo .btn,.rp-ani .btn{grid-column:1/-1}.rp-chk{display:flex;align-items:center;gap:8px;font-weight:600}
.rp-acoes{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.rp-q{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:8px;align-items:center;margin:6px 0}.rp-q .mo-sn button{min-height:42px}
.rp-horas{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.rp-horas label{display:flex;flex-direction:column;gap:4px}
.pa-meses{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:6px;padding:10px;margin-bottom:14px}
.pa-mes{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:1.5px solid var(--line2,#e5e8e6);border-radius:10px;background:var(--surface,#fff);cursor:pointer;font:600 12px "Public Sans",system-ui,sans-serif;min-width:0}
.pa-mes i{width:14px;height:14px;border-radius:4px;background:var(--c)}.pa-mes b{font-size:13px}.pa-mes small{font-size:10.5px;color:var(--muted,#6b7479);text-align:center;line-height:1.2}
.pa-mes.on{border-color:var(--navy,#383E42);box-shadow:0 0 0 2px var(--navy,#383E42) inset}.pa-mes.vz{opacity:.55}
.pa-duas{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:14px;margin-bottom:14px}
.pa-mapa-card{padding:0;overflow:hidden;position:relative}.pa-mapa{height:560px;width:100%}.pa-sem{position:absolute;inset:auto 12px 12px 12px;background:#fff;padding:10px 12px;border-radius:10px;z-index:500;font-weight:600}
.pa-nota{padding:8px 12px}.pa-lista{max-height:560px;overflow:auto;padding-bottom:8px}
.pa-it{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;text-align:left;padding:10px 14px;border:0;border-top:1px solid var(--line2,#e5e8e6);background:none;cursor:pointer;font:inherit}
.pa-it:hover{background:var(--surface2,#f4f6f5)}.pa-it i{width:12px;height:12px;border-radius:3px;background:var(--c)}.pa-it span b{display:block;font-size:13.5px}.pa-it small{display:block;color:var(--muted,#6b7479);font-size:11.5px}
.pa-it em{font-style:normal;font-weight:700;font-size:13px;text-align:right;white-space:nowrap}
.pa-pt{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--c);margin-right:6px;vertical-align:middle}
.pa-rot span{display:inline-block;white-space:nowrap;background:var(--c);color:#fff;font:700 11px "Public Sans",system-ui,sans-serif;padding:2px 6px;border-radius:6px;border:1.5px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.35);transform:translate(-50%,-50%)}
.pa-pop{font:13px "Public Sans",system-ui,sans-serif;line-height:1.45}.pa-pop hr{border:0;border-top:1px solid #ddd;margin:6px 0}
@media (max-width:1100px){.pa-meses{grid-template-columns:repeat(7,minmax(0,1fr))}.pa-duas{grid-template-columns:1fr}.pa-mapa{height:420px}}
@media (max-width:600px){.pa-meses{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media print{.pa-mapa{height:420px}.pa-lista{max-height:none}}
.cd-duas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cd-t td{white-space:nowrap}.cd-t td:nth-child(n+2){text-align:right}
.cd-bar{display:inline-block;min-width:34px;padding:1px 6px;border-radius:6px;background:linear-gradient(90deg,rgba(69,89,28,.28) var(--w),transparent var(--w));font-weight:700}
@media (max-width:900px){.cd-duas{grid-template-columns:1fr}}
.rv-filtros.ds-filtros{display:flex;flex-wrap:wrap;gap:12px 18px}.ds-filtros>.fl:first-child{width:170px}.ds-filtros .rv-bal{flex-wrap:wrap}
@media (max-width:700px){.rv-filtros{grid-template-columns:1fr 1fr}}
@media print{.rv-tbl td,.rv-tbl th{font-size:9px}}
/* Plano Forrageiro (plano-forrageiro.html) */
.rl-forrag{background:linear-gradient(135deg,#17452A,#22633B 60%,#3A8752)}
.pf-filtros{display:grid;grid-template-columns:170px auto;justify-content:start;gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.pf-est-par{display:grid;grid-template-columns:repeat(4,minmax(0,170px)) auto;gap:12px;align-items:start;padding:4px 16px 12px}   /* 📦 parâmetros do Estoque de Forragem */
@media (max-width:900px){.pf-est-par{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pf-est-par>.fl{display:grid;grid-template-rows:18px 40px auto;row-gap:6px;margin:0}
.pf-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.pf-filtros>.fl>span{align-self:end;line-height:18px}.pf-filtros .in{height:40px;margin:0;box-sizing:border-box}
.pf-bal{display:flex;gap:6px}.pf-bal .btn{height:40px;min-width:44px;justify-content:center}.pf-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.pf-tbl th,.pf-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.pf-tbl .pf-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.pf-tbl tr.pf-dest td{font-weight:700}.pf-tbl .pf-tot{font-weight:700;background:rgba(56,62,66,.05)}
.pf-tbl .pf-hoje{background:rgba(217,162,27,.12)}
.pf-pos{color:#2E7D4F}.pf-neg{color:#C0392B}.pf-txt-vermelho{color:#C0392B}.pf-txt-verde{color:#2E7D4F}
.pf-sit{display:inline-block;border-radius:99px;padding:2px 10px;font-size:11.5px;font-weight:700}
.pf-vermelho{background:#FBE3E0;color:#C0392B}.pf-amarelo{background:#FBF0D3;color:#8A6410}.pf-verde{background:#E4F2E9;color:#2E7D4F}
.pf-graf{width:100%;height:auto;display:block;padding:6px 4px 0}
.pf-graf .pf-grade{stroke:#ECEFED}.pf-graf .pf-eixo{font-size:11px;fill:#6b7479}
.pf-b-oferta{fill:#3A8752;background:#3A8752}.pf-b-dem{fill:#9AA3A8;background:#9AA3A8}.pf-graf .pf-b-falta,.pf-leg .pf-b-falta{fill:#C0392B;background:#C0392B}
.pf-leg{display:flex;flex-wrap:wrap;gap:6px 18px;padding:4px 16px 14px;font-size:12px;color:var(--muted,#6b7479)}
.pf-leg span{display:flex;align-items:center;gap:6px}.pf-leg i{display:inline-block;width:12px;height:12px;border-radius:3px}
@media print{.pf-tbl td,.pf-tbl th{font-size:9.5px}}
/* Diárias (diarias.html) */
.rl-diarias{background:linear-gradient(135deg,#1E3A4A,#2B556B 60%,#3D7491)}
.dr-filtros{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.dr-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.dr-filtros>.fl>span{align-self:end;line-height:18px}.dr-filtros .in{height:40px;margin:0;box-sizing:border-box}.dr-dica{align-self:center}
.dr-filtros.f3{grid-template-columns:200px 170px minmax(0,1fr)}@media (max-width:700px){.dr-filtros.f3{grid-template-columns:1fr 1fr}.dr-filtros.f3>.fl:last-child{grid-column:1/-1}}
.dr-tbl th,.dr-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.dr-tbl tr.dr-tot td{font-weight:700;background:rgba(56,62,66,.05);border-top:2px solid var(--line,#d5dadc)}
.dr-tbl tr.dr-hoje td{background:rgba(217,162,27,.12)}.dr-tbl tr.dr-mov td{font-weight:600}
.dr-tbl .btn.sm{min-width:72px;justify-content:center}.dr-tbl .btn.sm.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.dr-txt-amarelo{color:#B07D0A}
@media print{.dr-tbl td,.dr-tbl th{font-size:9.5px}}
/* Ajuste de Lotação (ajuste-lotacao.html) */
.rl-ajuste{background:linear-gradient(135deg,#2F4A1A,#466B26 60%,#638F36)}
.al-filtros{display:grid;grid-template-columns:auto auto;justify-content:start;gap:12px 24px;padding:14px 16px;margin-bottom:14px;align-items:start}
.al-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}.al-filtros>.fl>span{align-self:end;line-height:18px}
.al-bal{display:flex;flex-wrap:wrap;gap:6px}.al-bal .btn{height:40px;min-width:44px;justify-content:center}.al-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.al-tbl th,.al-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.al-tbl .al-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.al-tbl tr.al-mod td{background:#F2F5F3;border-top:2px solid var(--line,#d5dadc)}
.al-modl{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;font-weight:500;font-size:12.5px}.al-modl b{font-size:13.5px}.al-modl small{color:var(--muted,#6b7479);font-weight:500}
.al-pct{width:70px;height:32px!important;margin:0 4px!important;text-align:center}
.al-plano{min-width:240px;text-align:left!important;white-space:normal!important}.al-plano .in{height:34px;margin:0;width:100%;box-sizing:border-box;font-size:12px}
.al-sit{display:inline-block;border-radius:99px;padding:2px 10px;font-size:11.5px;font-weight:700}
.al-vermelho{background:#FBE3E0;color:#C0392B}.al-azul{background:#E3ECF7;color:#2B4C73}.al-verde{background:#E4F2E9;color:#2E7D4F}.al-cinza{background:#ECEFED;color:#6b7479}
.al-neg{color:#C0392B}.al-pos{color:#2E7D4F}.al-proj{color:#D9A21B;font-weight:800}
.al-nota{display:inline-block;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:700;background:#ECEFED}
.al-nr{background:#FBE3E0;color:#C0392B}.al-nv{background:#E4F2E9;color:#2E7D4F}.al-na{background:#FBF0D3;color:#8A6410}
@media print{.al-tbl td,.al-tbl th{font-size:9px}}
.al-tbl tr.al-mod td.al-fixa{position:static;white-space:normal}
.al-modl{position:sticky;left:12px;width:max-content;max-width:min(880px,calc(100vw - 340px))}
@media (max-width:900px){.al-modl{max-width:calc(100vw - 70px)}}
/* Resumo dos Pastos (resumo-pastos.html) */
.rl-resumop{background:linear-gradient(135deg,#3A4A1A,#566B26 60%,#768F36)}
.rp-filtros{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;padding:14px 16px;margin-bottom:14px;align-items:start}
.rp-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}.rp-filtros>.fl>span{align-self:end;line-height:18px}
.rp-filtros .in{height:40px;margin:0;box-sizing:border-box}
.rp-bal{display:flex;flex-wrap:wrap;gap:6px}.rp-filtros .rp-bal .btn{height:40px;min-width:44px;justify-content:center}.rp-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.rp-tbl th,.rp-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.rp-tbl .rp-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.rp-tbl tr.rp-on td{background:rgba(217,162,27,.12)}
.rp-tbl .rp-lista{white-space:normal!important;min-width:180px;text-align:left!important}.rp-lista .rp-sit{margin:2px 0}
.rp-sit{display:inline-block;border-radius:99px;padding:2px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.rp-vermelho{background:#FBE3E0;color:#C0392B}.rp-amarelo{background:#FBF0D3;color:#8A6410}.rp-verde{background:#E4F2E9;color:#2E7D4F}.rp-cinza{background:#ECEFED;color:#6b7479}.rp-azul{background:#E3ECF7;color:#2B4C73}
.rp-neg{color:#C0392B}.rp-pos{color:#2E7D4F}
.rp-editor{margin-bottom:14px}.rp-ed{padding:0 16px 16px}.rp-sec{font-weight:800;font-size:13px;margin:12px 0 8px}
.rp-ed .rp-bal .btn{min-height:36px}
.rp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.rp-grid .rp-obs{grid-column:span 3}
@media (max-width:800px){.rp-filtros{grid-template-columns:1fr}.rp-grid{grid-template-columns:1fr 1fr}.rp-grid .rp-obs{grid-column:span 2}}
@media print{.rp-tbl td,.rp-tbl th{font-size:8.5px}}
.rp-filtros{grid-template-columns:180px minmax(220px,280px) minmax(0,1fr)}@media (max-width:800px){.rp-filtros{grid-template-columns:1fr}}
.rp-filtros>.fl:last-child{grid-template-rows:18px auto}.rp-filtros>.fl:last-child>.rp-bal{align-self:start}
/* Rotina de Consumo e Creep (rotina-consumo.html) */
.rl-rotina{background:linear-gradient(135deg,#4A3A12,#6E561C 60%,#93762E)}
.rc-filtros{display:grid;grid-template-columns:170px auto minmax(0,1fr);gap:12px 18px;padding:14px 16px;margin-bottom:14px;align-items:start}
.rc-filtros>.fl{display:grid;grid-template-rows:18px auto;row-gap:6px;align-items:center;margin:0}.rc-filtros>.fl>span{align-self:end;line-height:18px}
.rc-filtros .in{height:40px;margin:0;box-sizing:border-box}
.rc-bal{display:flex;flex-wrap:wrap;gap:6px;align-self:start}.rc-bal .btn{height:40px;justify-content:center}.rc-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.rc-tbl th,.rc-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12px}
.rc-tbl .rc-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.rc-tbl tr.rc-geral td{font-weight:700;background:#F2F5F3}
.rc-tbl td.rc-nota{min-width:30px;font-weight:700;padding:4px 2px}
.rc-n0{background:#F4C7C0;color:#8E2A1E}.rc-n1{background:#CFE8D8;color:#1F5C38}.rc-n2{background:#9ED1AF;color:#174A2C}.rc-n3{background:#F6DE9F;color:#7A5A0C}
.rc-tbl th.rc-hoje{background:rgba(217,162,27,.18)}
.rc-dist{min-width:120px}.rc-barra{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#ECEFED}.rc-barra i{display:block;height:100%}
.rc-leg{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0 16px 10px;font-size:12px;color:var(--muted,#6b7479)}.rc-leg span{display:flex;align-items:center;gap:6px}.rc-leg i{width:12px;height:12px;border-radius:3px;display:inline-block}
.rc-tag{display:inline-block;border-radius:99px;padding:1px 7px;font-size:10px;font-weight:700;background:#E3ECF7;color:#2B4C73;margin-left:4px}
.rc-txt-verde{color:#2E7D4F}.rc-txt-vermelho{color:#C0392B}
@media (max-width:800px){.rc-filtros{grid-template-columns:1fr}}
@media print{.rc-tbl td,.rc-tbl th{font-size:8.5px}}
/* Rota de Trato e Ficha de Trato (rota-trato.html) */
.rl-rota{background:linear-gradient(135deg,#3A2A12,#5C421C 60%,#7E5C2E)}
.rt-filtros{display:grid;grid-template-columns:170px 220px minmax(0,1fr);gap:12px 18px;padding:14px 16px;margin-bottom:14px;align-items:start}
/* 🚚 caminhão do trato (Rota de Trato, 24/10/2026): os 4 campos na mesma linha, da mesma altura */
.rt-cam{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 14px;align-items:end;padding:12px 16px;margin-bottom:12px}.rt-cam .fl{margin:0}.rt-cam .rt-real{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0}
.rt-filtros>.fl{display:grid;grid-template-rows:18px auto;row-gap:6px;align-items:center;margin:0}.rt-filtros>.fl>span{align-self:end;line-height:18px}
.rt-filtros .in{height:40px;margin:0;box-sizing:border-box}
.rt-bal{display:flex;flex-wrap:wrap;gap:6px;align-self:start}.rt-bal .btn{height:40px;justify-content:center}.rt-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.rt-tbl th,.rt-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.rt-tbl .rt-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.rt-tbl td small{display:block;color:var(--muted,#6b7479);font-size:10.5px}
.rt-tbl th.rt-campo,.rt-tbl td.rt-campo{min-width:110px;background:#FAFBFA;border-left:1px dashed #C9CFD2}
.rt-in{height:34px!important;margin:0!important;font-size:12px;min-width:120px}.rt-ord{min-width:70px;width:80px;text-align:center}
.rt-sit{display:inline-block;border-radius:99px;padding:2px 9px;font-size:11px;font-weight:700;white-space:nowrap}
.rt-r{background:#FBE3E0;color:#C0392B}.rt-a{background:#FBF0D3;color:#8A6410}.rt-v{background:#E4F2E9;color:#2E7D4F}
.rt-txt-vermelho{color:#C0392B}
.rt-rota{margin-bottom:14px}
@media (max-width:800px){.rt-filtros{grid-template-columns:1fr}}
@media print{.rt-rota{break-after:page}.rt-tbl td,.rt-tbl th{font-size:9.5px}.rt-tbl td.rt-campo{min-width:90px;height:26px}}
/* Filtros das telas de relatório: título e campo na mesma altura em toda a linha (40 px), como nas telas novas */
.pb-filtros,.pp-filtros,.zo-filtros{align-items:start}
.pb-filtros>.fl,.rl-filtros>.fl,.pp-filtros>.fl,.zo-filtros>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}
.pb-filtros>.fl>span,.rl-filtros>.fl>span,.pp-filtros>.fl>span,.zo-filtros>.fl>span{align-self:end;line-height:18px}
.pb-filtros .in,.rl-filtros .in,.pp-filtros .in,.zo-filtros .in{height:40px;margin:0;box-sizing:border-box}
.pb-filtros .sub2,.rl-filtros .sub2,.pp-filtros .sub2,.zo-filtros .sub2{padding:0!important;align-self:center}
/* Relatórios: as telas do Rebanho 2.0 agrupadas por assunto, em duas colunas */
.rl-grupo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.rl-grupo .rl-info{margin-bottom:0}
@media (max-width:900px){.rl-grupo{grid-template-columns:1fr}}
.rl-grupo .rl-info{padding:14px 16px;gap:12px}.rl-grupo .rl-info span>b{font-size:18px}
.rl-grupo .rl-info em{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* Rotas Inteligentes (rota-trato.html + rota-otimizada.js) */
.ro-card{margin-bottom:14px}
.ro-cfg{display:grid;grid-template-columns:minmax(0,1.3fr) 200px auto auto;gap:12px 18px;padding:0 16px 14px;align-items:start}
.ro-cfg>.fl{display:grid;grid-template-rows:18px 40px;row-gap:6px;align-items:center;margin:0}.ro-cfg>.fl>span{align-self:end;line-height:18px}
.ro-cfg .in,.ro-cfg .btn{height:40px;margin:0;box-sizing:border-box}.ro-cfg .rt-bal .btn{height:40px}
.ro-res{padding:0 16px 16px}
.ro-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.ro-kpis>div{border:1px solid var(--line,#d5dadc);border-radius:12px;padding:10px 14px;display:grid;gap:2px}.ro-kpis small{color:var(--muted,#6b7479);font-weight:600}.ro-kpis b{font:800 20px "Archivo",system-ui,sans-serif}.ro-kpis span{font-size:12px;color:var(--muted,#6b7479)}
.ro-mapa{width:100%;height:auto;display:block;background:#F4F7F5;border-radius:12px;margin:6px 0}
.ro-mapa .ro-num{font-size:10px;font-weight:800;fill:#fff}.ro-mapa .ro-nome{font-size:10.5px;font-weight:700;fill:#383E42;paint-order:stroke;stroke:#F4F7F5;stroke-width:3px}.ro-mapa .ro-dep{font-size:11.5px}
.ro-leg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--muted,#6b7479);margin-bottom:10px}.ro-leg span{display:flex;align-items:center;gap:6px}.ro-leg i{width:12px;height:12px;border-radius:3px;display:inline-block}
.ro-rotas{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.ro-rota{border:1px solid var(--line,#d5dadc);border-radius:12px;padding:10px;overflow-x:auto}.ro-rota>b{font-size:14px}.ro-rota>small{display:block;color:var(--muted,#6b7479);margin-bottom:6px}
.ro-rota tr.ro-volta td{color:var(--muted,#6b7479);font-style:italic}
.ro-acao{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.rt-txt-verde{color:#2E7D4F}
@media (max-width:800px){.ro-cfg{grid-template-columns:1fr}.ro-kpis{grid-template-columns:1fr 1fr}}
/* Painel de Rotina (painel-rotina.html) */
.rl-rotina2{background:linear-gradient(135deg,#1F3A4A,#2B556B 60%,#3E7591)}
.pr2-filtros{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 24px;padding:14px 16px;margin-bottom:14px;align-items:start}
.pr2-filtros>.fl{display:grid;grid-template-rows:18px auto;row-gap:6px;margin:0}.pr2-filtros>.fl>span{align-self:end;line-height:18px}
.pr2-bal,.pr2-tol{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pr2-bal .btn,.pr2-tol .btn{height:40px;justify-content:center}.pr2-bal .btn.on{background:var(--navy,#383E42);color:#fff;border-color:var(--navy,#383E42)}
.pr2-tol label{display:flex;align-items:center;gap:4px;font-weight:700}.pr2-tol .in{width:70px;height:40px;margin:0;text-align:center;box-sizing:border-box}
.pr2-chip{display:inline-flex;align-items:center;height:40px;padding:0 12px;border-radius:10px;background:#F2F5F3;font-weight:700;font-size:13px}
.pr2-tbl th,.pr2-tbl td{white-space:nowrap;text-align:center!important;vertical-align:middle;font-size:12.5px}
.pr2-tbl .pr2-fixa{position:sticky;left:0;background:var(--surface);z-index:1;font-weight:700;text-align:left!important}
.pr2-sit{display:inline-block;border-radius:99px;padding:2px 10px;font-size:11.5px;font-weight:700;white-space:nowrap}
.pr2-r{background:#FBE3E0;color:#C0392B}.pr2-l{background:#FCE6D2;color:#A0521A}.pr2-a{background:#FBF0D3;color:#8A6410}.pr2-v{background:#E4F2E9;color:#2E7D4F}.pr2-c{background:#ECEFED;color:#6b7479}
.pr2-txt-r{color:#C0392B}.pr2-txt-v{color:#2E7D4F}
@media (max-width:800px){.pr2-filtros{grid-template-columns:1fr}}
.pr2-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1100px){.pr2-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.pr2-kpis{grid-template-columns:1fr 1fr}}
/* Suplementação › Rota do Dia (app do tratador) */
.su-rota .sec{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.su-rota-kg{font-size:13px;font-weight:800;color:#2E7D4F}
.su-parada{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #ECEFED}
.su-parada:first-of-type{border-top:0}
.su-num{width:30px;height:30px;border-radius:50%;background:#383E42;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.su-parada.atr .su-num{background:#C0392B}.su-parada.feito .su-num{background:#2E7D4F}.su-parada.feito .su-tx{opacity:.6}
.su-tx b{display:block;font-size:14px}.su-tx small{display:block;font-size:12px;color:#5b6468;margin-top:2px}
.su-tx small b{display:inline;font-size:inherit}
/* Comunicado · carga mista (SQL 290): cada linha em dois andares — Sexo e Era; Cabeças, Peso e ✕ — todos os campos na mesma altura */
.ap .cm-linhas{display:grid;gap:8px}
.ap .cm-lin{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 56px;gap:8px;padding:10px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface2)}
.ap .cm-lin .fl{margin:0;min-width:0}
.ap .cm-lin-t{grid-column:1/-1;font-weight:700;font-size:13px;color:var(--ink2)}
.ap .cm-lin .cm-er{grid-column:2/4}.ap .cm-lin .cm-rc{grid-column:1/4}
.ap .cm-lin .cm-x .btn{min-height:56px;height:56px;width:56px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;font-size:18px}
.ap .cm-linhas>.btn{justify-self:start}
.ap .bb-limp.cm-t3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .cm-valor small{color:var(--ink2)}
/* Comunicado · Check List de Embarque (SQL 291): caminhões, documentos, problemas e assinatura do motorista */
.ap .cm-sec{font-weight:700;color:var(--ink);margin-top:6px}
.ap .cm-cam{display:grid;gap:8px;padding:10px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface)}
.ap .cm-cam .cm-lin-t{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px;color:var(--ink2)}
.ap .cm-cam-b{display:grid;gap:8px}
.ap .cm-cam-b>div,.ap .cm-doc{display:flex;align-items:center;gap:8px;min-width:0}
.ap .cm-cam [data-k="placa"],.ap .cm-cam [data-k="reboque"]{text-transform:uppercase}
.ap .cm-cam-b .btn,.ap .cm-doc .btn{flex:1;min-height:56px;margin:0}
.ap .cm-arq{position:relative;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font-size:11px;font-weight:700;flex:none}
.ap .cm-arq img{width:100%;height:100%;object-fit:cover;border-radius:9px}
.ap .cm-arq button{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;border:0;background:#5B6770;color:#fff;font-size:11px;padding:0;cursor:pointer}
.ap .cm-prob button.ok.on{background:#21412F;border-color:#21412F;color:#fff}
.as-fundo{position:fixed;inset:0;z-index:9999;background:rgba(14,42,58,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.as-caixa{background:#fff;border-radius:16px;padding:14px;width:min(560px,100%);display:grid;gap:8px;color:#16232A;font-family:"Public Sans",system-ui}
.as-caixa b{font:700 18px "Archivo",system-ui}.as-caixa small{color:#6E787C}
.as-tela{width:100%;height:220px;border:2px dashed #C9D1D4;border-radius:12px;background:#FAFBFB;touch-action:none;cursor:crosshair}
.as-linha{height:0;border-top:1.5px solid #9AA5AA;margin:-46px 24px 40px;pointer-events:none}
.as-botoes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.as-botoes .btn{min-height:52px}
/* Pesagem e Curral · Materiais do Curral (SQL 292): ✔️ Separado · ❌ Faltou · ➖ Não Precisa */
.ap .cu-mat button{flex-direction:column;gap:2px;hyphens:auto;-webkit-hyphens:auto}
.ap .cu-mat button small{font-size:.92em;font-weight:600;opacity:.85}
.ap .cu-mat button.on.cu-s{background:#E6F2EA;border-color:#21412F;color:#21412F}
.ap .cu-mat button.on.cu-f{background:#FBE9E7;border-color:#C0392B;color:#9E2A1E}
.ap .cu-mat button.on.cu-n{background:#EEF0F1;border-color:#9AA5AA;color:#5B6770}
/* Comunicado · Romaneio de Abate (SQL 292): linhas de bonificação e desconto (tipo · valor · ✕) na mesma altura */
.ap .cm-rv{display:grid;grid-template-columns:minmax(0,1fr) 56px;gap:8px;align-items:stretch;padding-bottom:8px;border-bottom:1px dashed var(--line)}
.ap .cm-rv select.in{grid-column:1/-1}
.ap .cm-rv .in,.ap .cm-rv .btn{min-width:0;margin:0}.ap .cm-rv .btn{min-height:56px;padding:0}
.ap .cm-emb textarea.in{font-family:ui-monospace,Menlo,monospace;min-height:150px}
/* Pesagem e Curral · Aparte na balança (SQL 293): critérios por porteira (cor) e o aviso grande da porteira ao digitar o peso */
.ap .cu-ap-r{display:grid;gap:8px;padding:10px;border:1.5px solid var(--line);border-left:6px solid var(--cor);border-radius:14px;background:var(--surface)}
.ap .cu-ap-t{display:grid;grid-template-columns:40px minmax(0,1fr) 56px;gap:8px;align-items:stretch}
.ap .cu-ap-t>span{display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--cor);color:#fff;font:800 20px "Archivo",system-ui}
.ap .cu-ap-t .in,.ap .cu-ap-t .btn{min-width:0;margin:0}.ap .cu-ap-t .btn{min-height:56px;padding:0}
.ap .cu-ap-salva{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.ap .cu-ap-salva .btn{min-height:56px;margin:0}
.ap .cu-ap-banner{display:grid;justify-items:center;gap:2px;padding:14px 10px;border-radius:16px;background:var(--cor);color:#fff;text-align:center}
.ap .cu-ap-banner b{font:800 30px/1.1 "Archivo",system-ui}.ap .cu-ap-banner span{font-weight:700;font-size:16px}.ap .cu-ap-banner small{opacity:.9;font-weight:600}
.ap .cu-ap-banner.vazio{background:var(--surface2);color:var(--ink2);border:1.5px dashed var(--line);font-weight:700}
.ap .cu-ap-placar{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}
.ap .cu-ap-placar>div{display:grid;gap:2px;padding:8px;border-radius:12px;border:1.5px solid var(--line);border-top:5px solid var(--cor);background:var(--surface)}
.ap .cu-ap-placar b{font:800 22px "Archivo",system-ui;color:var(--cor)}.ap .cu-ap-placar small{color:var(--ink2);font-size:11.5px}
.ap .cu-ap-tag{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:6px;background:var(--cor);color:#fff;font-weight:800;font-size:12px}
/* Checklists · Check List Diário de Máquinas e Veículos: situação de hoje por máquina e itens críticos (não usar) */
.ap .cu-mq-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.ap .cu-mq-lista button{display:grid;gap:2px;text-align:left;min-height:60px;padding:8px 10px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink)}
.ap .cu-mq-lista button b{font-weight:700;font-size:14px;line-height:1.2}.ap .cu-mq-lista button small{font-size:12px;color:var(--ink2);font-weight:600}
.ap .cu-mq-lista button.mq-ok{border-color:#21412F;background:#E6F2EA}.ap .cu-mq-lista button.mq-prob{border-color:#B7791F;background:#FFF6E5}
.ap .cu-mq-lista button.mq-crit{border-color:#C0392B;background:#FBE9E7}.ap .cu-mq-lista button.on{outline:3px solid #21412F;outline-offset:1px}
.ap .cu-mq-form{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1.5px dashed var(--line)}
.ap .cu-mq button.crit:not(.on){border-color:#E3A59C}.ap .cu-mq button.crit.on{background:#FBE9E7;border-color:#C0392B;color:#9E2A1E}
.ap .cu-mq-pare{font-size:16px}
/* Rotinas · Semana (painel dos preenchimentos): uma célula por dia, cor pela situação, hora em que lançou */
.ro-sem th.c,.ro-sem td.c{text-align:center;min-width:64px}.ro-sem th.ro-hj{background:#EEF4F0;color:#21412F}
.ro-cel{display:inline-grid;justify-items:center;gap:1px;min-width:44px;padding:4px 6px;border-radius:10px;font-size:16px;line-height:1.1;border:1.5px solid transparent}
.ro-cel small{font-size:10.5px;font-weight:700;color:var(--ink2,#44525A)}
.ro-cel.ro-ok{background:#E6F2EA;border-color:#B9D8C3}.ro-cel.ro-atr{background:#FFF6E5;border-color:#F0D49C}.ro-cel.ro-nao{background:#FBE9E7;border-color:#EBB7AF}
.ro-cel.ro-disp{background:#EEF0F1}.ro-cel.ro-prog,.ro-cel.ro-fut{background:#F4F6F7;opacity:.85}
/* Revisão no celular (15/10/2026): no app de campo nenhum botão fica abaixo de 40 px de altura (dedo, luva, sol). O site não muda. */
.ap .btn.sm{min-height:40px;padding:8px 12px;font-size:13px;display:inline-flex;align-items:center;justify-content:center}
.ap .mu-pop-fixo{min-height:40px;padding:0 14px}
.ap .mu-pop{min-height:40px}
.ap .ag-mais{min-height:40px}
/* Atalho do Guia da Equipe na tela inicial do app */
.ap .ap-guia{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;margin-top:8px;padding:12px 14px;border-radius:16px;border:2px solid var(--line);background:#F4F8F5;color:var(--ink);text-decoration:none;min-height:56px}
.ap .ap-guia i{font-style:normal;font-size:28px;line-height:1}.ap .ap-guia b{display:block;font-weight:800}.ap .ap-guia small{color:var(--ink2);font-weight:600;font-size:12.5px}.ap .ap-guia em{font-style:normal;font-size:22px;color:var(--ink2)}
.ap .ap-avisos{width:100%;font:inherit;text-align:left;cursor:pointer}.ap .ap-avisos.on{background:#E6F2EA;border-color:#B9D8C3;cursor:default}
.ro-vazios{margin:10px 0}.ro-vazios>summary{cursor:pointer;font-weight:600;color:var(--muted,#6b7479);padding:6px 0;min-height:32px}
/* Rota do Dia do campo (rota-campo.js): bebedouros e rodeio */
.rc-modo{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}.rc-modo .btn{min-height:40px;margin:0}
.rc-mapa{display:block;width:100%;height:auto;max-height:240px;margin:4px 0 8px;background:var(--bg2,#f4f6f5);border-radius:10px}
.rc-mapa .rc-num{font:700 10px/1 'Public Sans',sans-serif;fill:#fff}.rc-volta{margin:6px 2px 0}
/* Caderneta Pragas e Invasoras (pragas.html · SQL 296) */
.pr-sit{display:inline-flex;align-items:center;gap:4px;font:700 12px/1 "Public Sans",system-ui,sans-serif;padding:5px 9px;border-radius:999px;white-space:nowrap;vertical-align:middle;margin-left:6px}
.pr-ok{background:#E3F1E8;color:#1F6B3D}.pr-atencao{background:#FBF0D2;color:#7A5A00}.pr-controlar{background:#F8DEDF;color:#9A1F28}
.ap .pr-av{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ap .pr-av button{min-height:48px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:600 13px/1.2 "Public Sans",system-ui,sans-serif;display:flex;align-items:center;gap:8px;padding:6px 10px;text-align:left;opacity:.55;cursor:pointer}
.ap .pr-av button.on{opacity:1;border-color:var(--green,#2E7D4F);background:#EEF7F1}.ap .pr-av button i{font-style:normal;font-size:18px}
.pr-gps{float:right;font:600 12px/1.6 "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .pr-nav{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}
.ap .pr-nav button{min-width:40px;min-height:40px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 14px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .pr-nav button.tem{background:#EEF7F1;border-color:#9CCBAE}.ap .pr-nav button.on{background:#383E42;color:#fff;border-color:#383E42}
.ap .pr-nada{width:100%;min-height:48px;margin:0 0 6px}
.pr-h{font:800 14px/1.3 Archivo,sans-serif;margin:16px 0 8px;padding-top:10px;border-top:1px solid var(--line,#e2e6e8)}.pr-h small{display:block;font:500 12px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .pr-cont{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line,#e2e6e8)}
.pr-cn b{display:block;font:700 14px/1.25 "Public Sans",system-ui,sans-serif}.pr-cn small{display:block;font:500 12px/1.3 "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479);margin-top:2px}.pr-cn em{display:block;font:700 12px "Public Sans",system-ui,sans-serif;color:var(--green,#2E7D4F);font-style:normal;margin-top:2px}
.ap .pr-step{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:stretch}
.ap .pr-step button{min-height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:800 22px/1 "Public Sans",system-ui,sans-serif;cursor:pointer}.ap .pr-step button.mais{background:#EEF7F1}
.ap .pr-step input{min-width:0;height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);text-align:center;font:800 18px "Public Sans",system-ui,sans-serif;padding:0;box-sizing:border-box}
.pr-tipo{font:700 12px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479);margin:10px 0 6px}.pr-tipo.tox{color:#9A1F28}
.ap .pr-inv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.ap .pr-inv button{min-height:52px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;text-align:left;padding:6px 10px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:2px}
.ap .pr-inv button b{font:700 13px/1.2 "Public Sans",system-ui,sans-serif}.ap .pr-inv button small{font:500 11px/1.2 "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .pr-inv button.n1{background:#F2F8EC;border-color:#BBD9A5}.ap .pr-inv button.n2{background:#FBF0D2;border-color:#E3C46B}.ap .pr-inv button.n3{background:#F9E1C8;border-color:#E0A363}.ap .pr-inv button.n4{background:#F8DEDF;border-color:#D98089}
.ap .pr-inv button.tox.on{background:#F8DEDF;border-color:#C23B45}.ap .pr-inv button.tox.on small{color:#9A1F28;font-weight:700}
.ap .pr-outra{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:6px;align-items:center;margin-top:6px}.ap .pr-outra .btn{margin:0;min-height:40px}
.ap .pr-outra-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:8px}.ap .pr-outra-add .in,.ap .pr-outra-add .btn{height:44px;margin:0;box-sizing:border-box}
.ap .pr-sinais{grid-template-columns:repeat(2,minmax(0,1fr))}.ap .pr-sinais button{min-height:56px}
.ap .pr-bts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.ap .pr-bts .btn{margin:0;min-height:48px}.ap .pr-tirap{margin-top:8px}
.pr-res{display:grid;gap:4px;margin:8px 0}.pr-rl{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line,#eef0f1);font:500 13px "Public Sans",system-ui,sans-serif}
.pr-rl b{font:700 14px "Public Sans",system-ui,sans-serif;text-align:right}.pr-rl b small{font:500 11px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}.pr-rl .pr-sit{margin:0}
.pr-rec{display:grid;gap:6px;margin:8px 0}
.ap .pr-dec{display:grid;gap:8px;margin:8px 0}.ap .pr-dec .in,.ap .pr-dec .btn{margin:0;height:44px;box-sizing:border-box}
.ap .pr-nc{display:grid;grid-template-columns:minmax(0,1fr) 76px 76px;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line,#eef0f1)}
.ap .pr-nc span b{display:block;font:700 13px/1.25 "Public Sans",system-ui,sans-serif}.ap .pr-nc span small{display:block;font:500 11px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .pr-nc .in{height:40px;margin:0;text-align:center;box-sizing:border-box}.ap .pr-nc-h{font:700 12px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479);border:0}.ap .pr-nc-h span:not(:first-child){text-align:center}
.pr-zero{margin:2px 0 8px}
/* Ajuste de Oferta (ajuste-oferta.html) */
.ao-filtros{display:grid;grid-template-columns:200px minmax(0,1fr);gap:12px 18px;align-items:start}.ao-filtros>.fl{display:grid;grid-template-rows:18px auto;row-gap:6px;margin:0}
.ao-filtros .in{height:40px;margin:0;box-sizing:border-box}.ao-filtros .rt-bal{display:flex;flex-wrap:wrap;gap:6px}.ao-filtros .rt-bal .btn{height:40px;margin:0}
.ao-pill{display:inline-block;padding:4px 9px;border-radius:999px;font:700 12px/1.2 "Public Sans",system-ui,sans-serif;white-space:nowrap}
.ao-pill.ao-red{background:#F8DEDF;color:#9A1F28}.ao-pill.ao-aum{background:#E1ECF7;color:#1F4E7A}.ao-pill.ao-conf{background:#FBF0D2;color:#7A5A00}.ao-pill.ao-ok{background:#E3F1E8;color:#1F6B3D}
.ao-txt-red{color:#9A1F28}.ao-txt-aum{color:#1F4E7A}.ao-txt-conf{color:#7A5A00}
.ao-sub{display:block;font:500 11px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}.ao-motivo{min-width:220px;white-space:normal;font-size:12px}
.ao-nota{display:inline-block;min-width:20px;padding:2px 4px;margin:0 2px 0 0;border-radius:6px;text-align:center;font:700 12px "Public Sans",system-ui,sans-serif;background:#EEF0F1}
.ao-nota.nm,.ao-nota.n0{background:#E1ECF7;color:#1F4E7A}.ao-nota.n1{background:#E3F1E8;color:#1F6B3D}.ao-nota.n2,.ao-nota.n3{background:#F8DEDF;color:#9A1F28}
@media (max-width:700px){.ao-filtros{grid-template-columns:1fr}}
/* Caderneta Nova Atividade (atividades.html · SQL 297) */
.ap .at-g2{grid-template-columns:repeat(2,minmax(0,1fr))}.ap .at-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:420px){.ap .at-g3{grid-template-columns:repeat(2,minmax(0,1fr))}.ap .at-g3>.fl:last-child{grid-column:1/-1}}
.ap .at-g2 .in,.ap .at-g3 .in{width:100%;min-width:0;box-sizing:border-box}
.ap .at-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ap .at-chips button{min-height:64px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px/1.2 "Public Sans",system-ui,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.ap .at-chips button i{font-style:normal;font-size:20px}.ap .at-chips button.on{border-color:var(--green,#2E7D4F);background:#EEF7F1}
.ap .at-urg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.ap .at-urg button{min-height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 14px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .at-urg button.on.u1{background:#F8DEDF;border-color:#C23B45;color:#9A1F28}.ap .at-urg button.on.u2{background:#FBF0D2;border-color:#D9A82E;color:#7A5A00}.ap .at-urg button.on.u3{background:#E3F1E8;border-color:#5FA77A;color:#1F6B3D}
.ap .at-dias{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:6px 0 12px}
.ap .at-dias button{min-height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px "Public Sans",system-ui,sans-serif;cursor:pointer;padding:0}
.ap .at-dias button.on{background:#383E42;border-color:#383E42;color:#fff}
.ap .at-abre{display:flex;width:100%;align-items:center;justify-content:space-between;background:none;border:0;padding:0;cursor:pointer;min-height:40px}.ap .at-abre .sec{margin:0}.ap .at-abre b{font-size:22px}
.ap #atChk{min-height:96px}
/* Nova Atividade igual ao site (SQL 298) */
.ap .at-dica{display:block;font:500 12px/1.35 "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479);margin-top:4px}
.ap .at-ldia{padding:8px 0;border-top:1px solid var(--line,#e2e6e8)}.ap .at-ldia-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.ap .at-ldia-h .btn{margin:0;min-height:36px}
.ap .at-locs{display:flex;flex-wrap:wrap;gap:6px}.ap .at-locs button{min-height:40px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:600 13px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .at-locs button.on{background:#383E42;border-color:#383E42;color:#fff}
.ap .at-ano{display:flex;gap:6px;margin:6px 0}.ap .at-ano .btn{margin:0;min-height:40px}
.ap .at-meses{display:grid;gap:6px}.ap .at-mes{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:center}.ap .at-mes>b{font:700 13px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .at-mes>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.ap .at-mes button{min-height:40px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px "Public Sans",system-ui,sans-serif;cursor:pointer;padding:0}
.ap .at-mes button.on{background:#2E7D4F;border-color:#2E7D4F;color:#fff}.ap .at-mes button.cur{box-shadow:inset 0 0 0 2px #D9A82E}.ap .at-mes button:disabled{opacity:.35;cursor:default}
.ap .at-rec{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;font:600 13px "Public Sans",system-ui,sans-serif}.ap .at-rec .in{width:64px;height:40px;margin:0;text-align:center;box-sizing:border-box}.ap .at-rec select.in{width:auto;text-align:left}
.ap .at-rec-b,.ap .at-chkb,.ap .at-pop{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}.ap .at-rec-b .btn,.ap .at-chkb .btn,.ap .at-pop .btn{margin:0;min-height:40px}
.ap .at-prev{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid var(--line,#e2e6e8);border-radius:12px;margin:6px 0}.ap .at-circ{width:22px;height:22px;border-radius:50%;border:2px solid #9aa3a8;flex:none}
.ap .at-prev b{display:block;font:700 15px "Public Sans",system-ui,sans-serif}.ap .at-prev small{display:block;font:500 12.5px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479)}
.ap .at-lin{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--line,#eef0f1);font:500 13px "Public Sans",system-ui,sans-serif}.ap .at-lin b{font-weight:700;text-align:right}
.ap #atM2,.ap #atM3,.ap #atM4,.ap #atM5{min-height:72px}
.ap .at-filtro{margin:8px 0 4px;height:44px;box-sizing:border-box;width:100%}.ap .at-fl,.ap .at-ldia,.ap .at-ldia-h{min-width:0;max-width:100%}.ap .at-ldia-sel{flex:1 1 0;min-width:0;margin:0 8px;font:600 12px/1.3 "Public Sans",system-ui,sans-serif;color:#2E7D4F;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap .at-ldia-h .btn{flex:none}
.ap .at-locs{max-height:220px;overflow:auto}
/* Mapa da Fazenda · 🎨 Pintar os Pastos Por (mapa.js) */
.mp-mo-olho em.mp-mo-tema{background:#fff;border-color:#c9cfd2;font-size:11px;min-width:20px;height:20px}
.mp-pg-leg{background:rgba(255,255,255,.95);border-radius:10px;padding:8px 10px;box-shadow:0 2px 8px rgba(0,0,0,.18);font:500 12px/1.35 "Public Sans",system-ui,sans-serif;max-height:46vh;overflow:auto;max-width:320px}
.mp-pg-leg small{color:#5B6670;font-weight:600;margin-left:2px;white-space:nowrap}.mp-pg-leg .mp-leg-tot{border-top:1px solid #D5DBE0;padding-top:5px;margin-top:5px;font-weight:800}
.mp-pg-leg b{display:block;font:700 13px "Public Sans",system-ui,sans-serif;margin-bottom:4px}.mp-pg-leg span{display:flex;align-items:center;gap:6px;margin:2px 0}
.mp-pg-leg i{width:14px;height:14px;border-radius:3px;flex:none;display:inline-block}.mp-pg-leg i.tr{border:2px dashed #555;width:10px;height:10px}.mp-pg-leg i.sem{display:none}
.mp-praga{font-size:18px;line-height:22px;text-align:center;filter:drop-shadow(0 1px 1px rgba(0,0,0,.6))}
.mp-pg-pop{display:grid;gap:6px;font:500 13px/1.35 "Public Sans",system-ui,sans-serif}.mp-pg-pop>b{font:700 14px "Public Sans",system-ui,sans-serif}.mp-pg-pop .btn{justify-self:start;margin:2px 0 0}
.mp-pg-sit{display:inline-block;color:#fff;border-radius:999px;padding:2px 8px;font:700 12px "Public Sans",system-ui,sans-serif}
/* Bebedouros por setor (SQL 299) */
.ap .bb-itens{display:grid;gap:8px;margin-top:6px}.ap .bb-it{border:1.5px solid var(--line,#d5dadc);border-radius:12px;padding:10px;background:#fff}.ap .bb-it.ok{border-color:#9CCBAE;background:#F6FBF8}
.ap .bb-it-h b{display:block;font:700 14px "Public Sans",system-ui,sans-serif}.ap .bb-it-h small{display:block;font:500 12px "Public Sans",system-ui,sans-serif;color:var(--muted,#6b7479);margin-bottom:6px}
.ap .bb-it-agua{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ap .bb-it-agua button{min-height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:600 12px/1.2 "Public Sans",system-ui,sans-serif;display:flex;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.ap .bb-it-agua button i{font-style:normal}.ap .bb-it-agua button.on.bb-a1{background:#E3F1E8;border-color:#5FA77A}.ap .bb-it-agua button.on.bb-a2{background:#FBF0D2;border-color:#D9A82E}.ap .bb-it-agua button.on.bb-a3{background:#F8DEDF;border-color:#C23B45}
.ap .bb-it-bt{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.ap .bb-it-bt button{min-height:44px;border-radius:10px;border:1.5px solid var(--line,#d5dadc);background:#fff;font:700 13px "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .bb-it-bt button.on.bb-sim{background:#E3F1E8;border-color:#2E7D4F;color:#1F6B3D}.ap .bb-it-bt button.on.bb-pr{background:#F8DEDF;border-color:#C23B45;color:#9A1F28}

/* Mapa no modo escuro: o painel do 👁️, a legenda e os balões são brancos, então o texto fica sempre escuro (e os botões de rádio, claros) */
.mp-mostrar,.mp-pg-leg,.leaflet-popup-content-wrapper,.leaflet-popup-tip{color-scheme:light;color:#1B2733}
.mp-mostrar .mp-mo-bt{color:#1B2733}.mp-mostrar .mp-mo-l small,.mp-mostrar .mp-mo-it b{color:#5B6773}.mp-mostrar .mp-mo-it{color:#1B2733}
.mp-pg-leg b,.mp-pg-pop,.mp-pg-pop b{color:#1B2733}
.mp-cor{display:flex;align-items:center;gap:6px;margin:2px 0;cursor:pointer}.mp-cor input[type=color]{width:18px;height:18px;padding:0;border:1px solid #c9cfd2;border-radius:4px;background:none;cursor:pointer;flex:none}
.mp-cor input[type=color]::-webkit-color-swatch-wrapper{padding:0}.mp-cor input[type=color]::-webkit-color-swatch{border:0;border-radius:3px}
.mp-cor-dica{display:block;margin-top:6px;color:#5B6773;font:500 11px/1.35 "Public Sans",system-ui,sans-serif}.mp-cor-dica button{border:0;background:none;color:#2B4C73;font:700 11px "Public Sans",system-ui,sans-serif;padding:0;cursor:pointer;text-decoration:underline}

/* Modo escuro (auditoria de 15/10/2026): caixas que têm FUNDO CLARO fixo (linhas de destaque, chips, avisos, botões) pegavam o texto claro do
   modo escuro e sumiam. Dentro delas, as cores de texto voltam a ser escuras (também para o que está dentro: --ink, --ink2 e --muted). Gerado do próprio CSS. */
@media (prefers-color-scheme:dark){:root:not(.sempre-claro) :is(.ab-prox>div,.al-nota,.al-tbl tr.al-mod td,.ao-nota,.ap .ab-comb button,.ap .ab-ops button,.ap .ap-aprovar,.ap .ap-aprovar .ap-ic,.ap .ap-avisos.on,.ap .at-chips button,.ap .at-chips button.on,.ap .at-dias button,.ap .at-locs button,.ap .at-mes button,.ap .at-urg button,.ap .bb-agua button.bb-a2.on,.ap .bb-agua button.bb-a3.on,.ap .bb-it,.ap .bb-it-agua button,.ap .bb-it-agua button.on.bb-a2,.ap .bb-it-agua button.on.bb-a3,.ap .bb-it-bt button,.ap .bb-it.ok,.ap .bb-lista button,.ap .bb-lista button.bb-atr,.ap .bb-lista button.bb-hoje,.ap .bb-prob,.ap .cl-cam,.ap .cm-arq,.ap .cm-ck,.ap .cm-conf.trava,.ap .cu-mq-lista button.mq-crit,.ap .cu-mq-lista button.mq-ok,.ap .cu-mq-lista button.mq-prob,.ap .ec-fig,.ap .ei-mais,.ap .es-abas button,.ap .es-comprar,.ap .es-estado button,.ap .es-st button,.ap .es-vf button,.ap .fa-dietas button,.ap .fa-l input.fa-err,.ap .hm-aprovar>span,.ap .hm-cont>span,.ap .hm-logo,.ap .hm-perfil,.ap .lc-antes em,.ap .lc-chips button,.ap .lc-rodape,.ap .lp-fotos button,.ap .lp-pes button,.ap .ma-3 button,.ap .mn-kpis div,.ap .mn-plano button,.ap .mn-plano button.mn-logo,.ap .mn-plano button.mn-venc,.ap .mo-sexo button,.ap .mo-sn button,.ap .mo-sinais button,.ap .op-lei label,.ap .pr-av button,.ap .pr-av button.on,.ap .pr-inv button,.ap .pr-inv button.n1,.ap .pr-inv button.n2,.ap .pr-inv button.n3,.ap .pr-inv button.n4,.ap .pr-inv button.tox.on,.ap .pr-nav button,.ap .pr-nav button.tem,.ap .pr-step button,.ap .pr-step button.mais,.ap .pt-coord,.ap .pt-tipos button,.ap .rc-os button,.ap .ro-esc button.on,.ap .ro-prob,.ap .su-prev,.ap .tr-pr>div,.ap .tr-pr>label,.ap .tr-pr>label,.ap .tr-tratos button,.ap .vg-ins,.ap .vg-ins.ok,.ap .vg-n,.ap-aba.aprovada.on,.ap-aba.pendente.on,.ap-aba.recusada.on,.ap-tbl tr.ap-sel>td,.as-tela,.c-a,.c-r,.cp-cot tr.cp-esc>td,.cp-s-0,.cp-s-1,.if-mv button,.if-ri,.if-sec.on,.pb-barras .pb-b-vazio,.pb-tbl td.pb-c-amarelo,.pb-tbl td.pb-c-verde,.pb-tbl td.pb-c-vermelho,.pb-tbl tr.pb-meta td,.pin-pts i.on,.pm-bts,.pp-tbl tr.pp-s-atr td:not(.pp-fixa),.pp-tbl tr.pp-s-breve td:not(.pp-fixa),.pp-tbl tr.pp-sub td,.pr2-chip,.ps-tbl td.ps-agora,.ps-tbl td.ps-proximo,.ps-tbl td.ps-atrasado,.ps-tbl td.ps-feito,.rc-barra,.rc-tbl tr.rc-geral td,.rl-tbl tr.rl-on td,.ro-cel.ro-atr,.ro-cel.ro-disp,.ro-cel.ro-nao,.ro-cel.ro-ok,.ro-cel.ro-prog,.ro-cel.ro-fut,.ro-mapa,.rt-tbl th.rt-campo,.rt-tbl td.rt-campo,.rx-bar.on,.rx-texto,.np-aviso){--ink:#1B2733;--ink2:#3D4A55;--muted:#5B6773;color:#1B2733}
  :root:not(.sempre-claro) .rx-kpi b{color:#7FC49A}}
.mp-leg-tit{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:0;font:700 13px "Public Sans",system-ui,sans-serif;color:#1B2733;cursor:pointer;text-align:left;min-height:28px}.mp-leg-tit i{margin-left:auto;font-style:normal;color:#5B6773}
.mp-pg-leg.fechada .mp-leg-corpo{display:none}.mp-pg-leg.fechada{padding:6px 10px}
@media (max-width:700px){.mp-pg-leg{max-height:34vh;max-width:200px;font-size:11.5px}}
.cb-ina{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0 2px}.cb-ina .btn{margin:0;min-height:40px}

/* totais no topo (regra do Welton): o rodapé da tabela aparece logo abaixo do cabeçalho */
tfoot{display:table-header-group}
tbody tr[data-emcima]>td{font-weight:700}

/* Tabelas de digitação (com campo na linha): dados e campos centralizados; só a 1ª coluna (nome) à esquerda. Pedido do Welton, 16/10/2026. Para não centralizar: classe t-esq na tabela */
table:not(.t-esq):has(tbody td input:not([type=checkbox]):not([type=radio]):not([type=hidden]), tbody td select) :is(th, td):not(:first-child){text-align:center}
table:not(.t-esq):has(tbody td input:not([type=checkbox]):not([type=radio]):not([type=hidden]), tbody td select) td:not(:first-child) :is(input:not([type=checkbox]):not([type=radio]), select){text-align:center !important;text-align-last:center}
table:not(.t-esq):has(tbody td input:not([type=checkbox]):not([type=radio]):not([type=hidden]), tbody td select) td:not(:first-child) > :is(div, span, label):has(> :is(input, select)){margin-left:auto;margin-right:auto;justify-content:center}
/* Mapa: ícones pequenos (pedido do Welton, 16/10/2026); crescem com o mouse perto, ao tocar no mapa ou ao arrastar */
#mapa .mp-enc{width:100%;height:100%;transform:scale(.5);transform-origin:var(--ox,50%) var(--oy,100%);transition:transform .15s ease}
#mapa .mp-mk.grande .mp-enc,#mapa.mp-toque .mp-enc,#mapa .mp-mk.leaflet-drag-target .mp-enc{transform:none}
/* 🐂 ícone do lote em tamanho cheio (pedido do Welton, 22/10/2026); com o mouse perto ou ao tocar, cresce um pouco mais */
#mapa .mp-mk.lt-pin-w .mp-enc{transform:none}#mapa .mp-mk.lt-pin-w.grande .mp-enc,#mapa.mp-toque .mp-mk.lt-pin-w .mp-enc{transform:scale(1.15)}
#mapa .mp-mk.grande{z-index:9000 !important}
#mapa .mp-enc>.mp-foto,#mapa .mp-enc>.mp-praga{width:100%;height:100%}
/* Mapa no modo escuro: balão, legenda e painel 👁 são "ilhas" claras; as variáveis também voltam ao tema claro
   (antes o texto do lote e o atalho principal ficavam claros sobre fundo claro) */
.mp-mostrar,.mp-pg-leg,.leaflet-popup-content-wrapper,.leaflet-popup-tip{--bg:#F2F4F3;--surface:#FFFFFF;--surface2:#F7F6F1;--line:#E2E0D6;--line2:#ECEAE2;--ink:#16232A;--ink2:#44525A;--muted:#6E787C;--navy:#114665;--navy-soft:#DCE8EE;--s2-tx:#17803A;--s5-tx:#8A5F00}
/* Celular: com o balão aberto, os botões do mapa saem da frente; o balão cabe na largura da tela */
@media(max-width:700px){
  #mapa.mp-pop .leaflet-top{opacity:0;pointer-events:none;transition:opacity .15s}
  #mapa .leaflet-popup-content{max-width:calc(100vw - 84px)}
}
/* Cadernetas: título comprido e a data no cabeçalho não se sobrepõem; sem espaço, a data desce para a linha de baixo, à direita
   ("Suplementação" ficava cortado pela data no celular, 16/10/2026) */
.ap .ap-ola{flex-wrap:wrap;row-gap:8px}
.ap .ap-ola>div:first-child{min-width:auto}
.ap .ap-ola>.mv-data{margin-left:auto}
/* Pesagem e Curral: o tipo de manejo aceita vários; o selo deixa isso claro */
.ap .cu-varios{font-size:.72em;font-weight:700;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:99px;padding:1px 8px;margin-left:4px;white-space:nowrap;vertical-align:2px}
/* Faixa do GPS nas cadernetas (gps-local.js): "📍 Você Está no P.3/A · Escolhido pelo GPS · Trocar" */
.mu-gps{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:9px 12px;background:#E3F1E8;color:#1F4D33;border:1px solid #9CCBAE;border-radius:12px;font-weight:700;font-size:14px;line-height:1.3}
.mu-gps span{flex:1;min-width:0}.mu-gps small{font-weight:600;opacity:.8}
.mu-gps button{flex:none;min-height:40px;padding:0 14px;border-radius:10px;border:1px solid #1F4D33;background:#fff;color:#1F4D33;font:inherit;font-weight:800;cursor:pointer}
/* 📌 Registros no Mapa da Fazenda (mapa-registros.js) */
.mp-reg{width:100%;height:100%;display:grid;place-items:center;font-size:14px;line-height:1;background:#fff;border:2px solid #1F4D33;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.mp-reg-bar{display:grid;gap:6px}
.mp-reg-per,.mp-reg-chips{display:flex;flex-wrap:wrap;gap:6px}
.mp-reg-per button,.mp-reg-chips button{border:1px solid var(--line);background:var(--surface);color:var(--ink2);border-radius:99px;padding:4px 10px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;opacity:.6;text-decoration:line-through}
.mp-reg-per button{text-decoration:none}
.mp-reg-per button.on,.mp-reg-chips button.on{opacity:1;text-decoration:none;background:var(--s2-soft,#E3F1E8);border-color:var(--s2,#2E7D4F);color:var(--ink)}
.mp-reg-txt{margin-top:6px;font-size:13px}
.mp-reg-ir{display:inline-block;margin-top:8px;font-weight:800;color:#114665}
.mp-reg-bar[hidden]{display:none!important}
/* Mapa: aviso dos lugares sem desenho (o GPS das cadernetas não os acha) */
.mp-gps-aviso{margin:8px 10px;padding:9px 12px;border-radius:10px;background:#FFF6E0;border:1px solid #E8C26A;color:#5B4300;font-size:13px;line-height:1.4}
.mp-gps-aviso a{color:#114665;font-weight:800}
/* Painel: 🔥 Pontos de Atenção (os 5 pastos com mais ocorrências nos últimos 30 dias) */
.pn-at{display:grid;gap:6px}
.pn-at-it{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink)}
.pn-at-it i{width:12px;height:12px;border-radius:50%}.pn-at-it b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pn-at-it span{font-size:12.5px;color:var(--ink2);white-space:nowrap}
.pn-at-mapa{display:inline-block;margin-top:8px;font-weight:800;font-size:13px;color:var(--s2-tx)}
/* Alvo de toque no celular (regra de 17/10/2026: pelo menos 40 px) */
.ap .mv-data{padding:0 10px}.ap .mv-data input{min-height:40px}
.ap [data-comecar]{min-height:48px}
.btn[hidden]{display:none!important}
@media(max-width:700px){
  .mp-topo .acts .btn{min-height:40px}
  .mtop select{min-height:40px}
}

/* ↻ Atualizar girando, igual ao Farm Plan */
@keyframes mu-gira{to{transform:rotate(360deg)}}
[data-atualizar].girando{animation:mu-gira 1s linear infinite}

/* "✕ Agora Não" do cartão de avisos, igual nos três sistemas */
.ap-avisos-l{display:flex;gap:8px;align-items:stretch}.ap-avisos-l .ap-guia{flex:1;min-width:0}
.ap-avisos-x{flex:none;width:44px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:18px;cursor:pointer}

/* 🐂 Local do Rebanho (Vision), SQL 305 */
.mu-visreb{display:flex;gap:10px;align-items:flex-start;margin:6px 0 4px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.mu-visreb input{width:22px;height:22px;margin-top:2px}.mu-visreb span{display:grid;gap:2px}.mu-visreb small{color:var(--muted)}

/* ⚡ Cerca Elétrica: as 4 leituras de voltagem lado a lado */
.cer-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cer-kv small{display:block;font-size:11.5px;margin-top:2px}
@media(min-width:700px){.cer-kv{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* 🧪 Coleta e Análise de Solo (solo.html, 18/10/2026) */
.ap .so-marcar{width:100%;min-height:56px;font-size:17px;margin:8px 0}
.ap .so-lista{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.ap .so-pt{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line,#d5dadc);border-radius:10px;background:#fff;font:500 13px/1.3 "Public Sans",system-ui,sans-serif}
.ap .so-pt b{min-width:26px;height:26px;border-radius:50%;background:#383E42;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}
.ap .so-pt span{flex:1;min-width:0}
.ap .so-at{display:flex;flex-direction:column;gap:8px}
.ap .so-at button{display:flex;align-items:center;gap:10px;text-align:left;min-height:52px;padding:8px 12px;border-radius:12px;border:1.5px solid var(--line,#d5dadc);background:#fff;color:#1d2327;font:600 14px/1.3 "Public Sans",system-ui,sans-serif;cursor:pointer}
.ap .so-at button i{font-style:normal;font-size:20px}
.ap .so-at button.on{border-color:#2e7d32;background:#eef7ee}
.so-res{border:1px solid var(--line,#d5dadc);border-radius:12px;padding:10px;margin:8px 0;background:#fff}
.so-res-h{font:800 15px/1.2 Archivo,system-ui,sans-serif;margin:10px 0 6px;color:#1d2327}
.so-num{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.so-num div{background:#f4f6f7;border-radius:8px;padding:6px;text-align:center}
.so-num small{display:block;font-size:11px;color:#4a5358}
.so-num b{font:800 15px/1.2 Archivo,system-ui,sans-serif;color:#1d2327}
.so-leit{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.so-ed{border-top:1px dashed var(--line,#d5dadc);margin-top:10px;padding-top:10px}
.so-g{margin:8px 0 4px;font-weight:700}
.so-campos{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
@media (min-width:900px){.so-num{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* 🎯 Meta e desvio (meta.js, 18/10/2026): a mesma faixa em todas as cadernetas */
.mt-meta{display:flex;align-items:center;gap:10px;padding:8px 12px;margin:8px 0;border-radius:12px;border:1.5px solid #c9d3d6;background:#f4f7f8;color:#1d2327}
.mt-meta .mt-ic{font-size:22px;line-height:1}
.mt-meta .mt-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.mt-meta small{font:500 13px/1.3 "Public Sans",system-ui,sans-serif;color:#3d464b}
.mt-meta .mt-desvio{font:800 15px/1.25 Archivo,system-ui,sans-serif}
.mt-meta.mt-ruim{border-color:#c62828;background:#fdecea}.mt-meta.mt-ruim .mt-desvio{color:#a31515}
.mt-meta.mt-vence{border-color:#e0a100;background:#fff7e0}.mt-meta.mt-vence .mt-desvio{color:#7a5600}
.mt-meta.mt-ok{border-color:#2e7d32;background:#eef7ee}.mt-meta.mt-ok .mt-desvio{color:#1b5e20}
span.mt-pill{display:inline-block;padding:2px 8px;border-radius:999px;font:700 12px/1.4 "Public Sans",system-ui,sans-serif;border:1px solid #c9d3d6;background:#f4f7f8;color:#1d2327;white-space:nowrap}
span.mt-pill.mt-ruim{border-color:#c62828;background:#fdecea;color:#a31515}span.mt-pill.mt-vence{border-color:#e0a100;background:#fff7e0;color:#7a5600}span.mt-pill.mt-ok{border-color:#2e7d32;background:#eef7ee;color:#1b5e20}
/* 🧪 Análise de Solo (site) */
.so-ficha .so-fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:10px}
.so-ft{font:800 15px/1.2 Archivo,system-ui,sans-serif;margin:14px 0 6px;color:#1d2327}
.so-kv th{width:42%;text-align:left;font-weight:600;color:#3d464b}
.so-fora{color:#a31515;font-weight:600}
.so-laudo .so-gr td,.so-ficha .so-gr td{background:#f4f6f7;font-weight:800}
tr.clic.on td{background:#eef4f7}
.so-prog{border:1px dashed var(--line,#d5dadc);border-radius:12px;padding:12px;margin:0 0 12px}
.so-piq{max-height:240px;overflow:auto}
.so-chips{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 12px}

/* Editar checklist que já vem na caderneta (19/10/2026): campos ocupando a largura e ícone grande */
.fmodal .tbl.fx-tab{width:100%;table-layout:fixed}
.fmodal .tbl.fx-tab td{vertical-align:middle;padding-top:8px;padding-bottom:8px}
.fmodal .tbl.fx-tab td .in{width:100%;max-width:none;min-width:0;box-sizing:border-box;min-height:52px}
.fmodal .tbl.fx-tab .fx-t{font-size:17px;text-align:left;padding:10px 14px}
.fmodal .tbl.fx-tab .fx-ic{font-size:28px;text-align:center;padding:4px}
.fmodal .tbl.fx-tab .ck-mv{text-align:right!important}.fmodal .tbl.fx-tab .ck-mv .btn{min-width:42px;min-height:42px;font-size:17px}
.fmodal .tbl.fx-tab td .in.fx-t{text-align:left!important}.fmodal .tbl.fx-tab th{text-align:left!important}.fmodal .tbl.fx-tab th:last-child{text-align:right!important}
@media (max-width:600px){
  .fmodal .tbl.fx-tab,.fmodal .tbl.fx-tab tbody{display:block}.fmodal .tbl.fx-tab colgroup,.fmodal .tbl.fx-tab thead{display:none}
  .fmodal .tbl.fx-tab tr.fx-it{display:grid;grid-template-columns:64px 1fr;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line,#e5e7eb)}
  .fmodal .tbl.fx-tab tr.fx-it.sem-ic{grid-template-columns:1fr}
  .fmodal .tbl.fx-tab tr.fx-it td{padding:0;border:0}
  .fmodal .tbl.fx-tab tr.fx-it td.ck-mv{grid-column:1/-1;text-align:right!important}
}
/* 🎨 paleta de ícones do checklist */
.fmodal .fb{position:relative}
.fx-paleta{position:absolute;z-index:30;width:min(380px,calc(100% - 16px));max-height:360px;overflow:auto;background:var(--surface,#fff);border:1px solid var(--line,#dde2dc);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.18);padding:10px 12px}
.fx-paleta .fx-pal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.fx-paleta small{display:block;margin:8px 0 4px;color:var(--muted,#667);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.fx-paleta .fx-pal-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:4px}
.fx-paleta .fx-pal-g button{font-size:24px;height:42px;border:1px solid transparent;border-radius:10px;background:none;cursor:pointer}
.fx-paleta .fx-pal-g button:hover,.fx-paleta .fx-pal-g button.on{background:var(--soft,#eef4ef);border-color:var(--green,#1E8E45)}
.fmodal .tbl.fx-tab .fx-ic{cursor:pointer}
.fx-sec{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fx-sec .fx-edita,.cu-mq-form .fx-edita{margin-left:auto;font-size:14px}
/* Materiais do Curral e máquinas no app: ícone maior (pedido de 19/10/2026) */
.ap .mj-prob.cu-mat button>i,.ap .mj-prob.cu-mq button>i{font-style:normal;font-size:1.9em;line-height:1.1}
/* Painel do site: cadernetas com o mesmo ícone do aplicativo, num quadro suave (19/10/2026) */
.pn-cad>i{font-style:normal;font-size:34px;width:60px;height:60px;line-height:60px;border-radius:16px;background:var(--soft,#eef4ef);display:block;margin:0 auto 4px;text-align:center}
/* App › Cadastros (Usuário e Aparelho): mesmas fontes e cores dos formulários das cadernetas (19/10/2026) */
.ap .cf-card>small,.ap .cf-status small{font:700 17px "Public Sans",system-ui,sans-serif;text-transform:none;letter-spacing:0;color:var(--ink)}
.ap .cf-card label{font:700 15px "Public Sans",system-ui,sans-serif;text-transform:none;color:var(--ink2);gap:6px}
.ap .cf-val{font:500 16px "Public Sans",system-ui,sans-serif;background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}
.ap .cf-mono{font:500 16px "Public Sans",system-ui,sans-serif;letter-spacing:0}
.ap .cf-status b{font:800 22px "Public Sans",system-ui,sans-serif}
.ap .cf-faz{font:700 17px "Public Sans",system-ui,sans-serif}
.ap .cf-teste{text-transform:none;font:700 15px "Public Sans",system-ui,sans-serif}
.ap .cf-nota{font:400 13.5px "Public Sans",system-ui,sans-serif}
/* 💉 Plano Sanitário na Pesagem e Curral (20/10/2026) */
.ap .cu-prot{display:grid;gap:8px;margin-top:6px}
.ap .cu-prot-it{border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface);display:grid;gap:6px}
.ap .cu-prot-it.on{border-color:var(--s2);background:var(--s2-soft)}
.ap .cu-prot-it>b{font-size:16px}.ap .cu-prot-it>small{color:var(--muted)}
.ap .cu-prot-it ol{margin:0;padding-left:20px;display:grid;gap:3px}.ap .cu-prot-it em{font-style:normal;font-weight:800;color:var(--navy-tx,#114665)}
.ap .cu-prot-it p{margin:0;font-size:14px}.ap .cu-prot-car{color:#8A4B12;font-weight:700}
.ap .rc-prot{display:grid;gap:6px;border:1.5px solid var(--line);border-radius:14px;padding:10px 12px;margin-bottom:8px;background:var(--surface)}
.ap .rc-prot>b{font-size:16px}.ap .rc-prot small{color:var(--muted);font-size:13.5px}.ap .rc-prot .rc-car{color:#8A4B12;font-weight:700}
.ap .mu-equipe button.mu-eu{opacity:1;cursor:default}

.cm-novo{display:block;color:#b45309;margin-top:4px}.cm-novo[hidden]{display:none}.cm-nomes{display:block}

.ap .mj-hora{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.ap .mj-hora .in{width:auto;max-width:130px;margin:0}.ap .mj-hora small{flex-basis:100%;color:var(--muted)}

/* Indivíduos (22/10/2026): linha baixa e Observação larga; o texto inteiro aparece ao passar o mouse e na ficha */
.tbl.mu-apoio td.ind-obs{min-width:560px;max-width:680px;white-space:normal;vertical-align:middle}.ind-obs .ob2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}

/* Fábrica (22/10/2026): Acumulado do carregamento (o que a balança deve marcar) */
.ap .fa-5 .fa-h,.ap .fa-5 .fa-l{grid-template-columns:minmax(0,1.3fr) minmax(0,.75fr) minmax(0,.85fr) minmax(0,1.15fr) minmax(0,.65fr)}.ap .fa-acum{font-weight:700}.ap .fa-acum small{display:block;font-weight:500;color:var(--muted);font-size:11px}
.nu-seq{display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.nu-seq-l{display:flex;align-items:center;gap:8px}.nu-seq-l .in{width:64px;text-align:center}

/* Indivíduos: estatísticas do rebanho (22/10/2026) */
.est summary{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:14px 18px;cursor:pointer}.est summary h3{margin:0}
.est-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:0 18px 18px}.est-t h4{margin:6px 0;font-size:14px}.est-t .tbl td,.est-t .tbl th{padding:5px 8px}.est-tot td{font-weight:700;border-bottom:2px solid var(--line,#e3e6e6)}

/* Indivíduos: filtros (22/10/2026) */
.ind-filtros{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:0 18px 12px}.ind-filtros .sub{margin-left:auto}
.tbl.mu-apoio th.ord{cursor:pointer;user-select:none}.tbl.mu-apoio th.ord[data-dir]::after{content:' ' attr(data-dir);font-size:10px}

/* Fábrica (22/10/2026): o ACUMULADO (o que a balança deve marcar, sempre preenchido) em destaque enorme; previsto e desvio pequenos;
   a linha da vez (o próximo insumo a carregar) marcada */
.ap .fa-5 .fa-h,.ap .fa-5 .fa-l{grid-template-columns:minmax(0,1.2fr) minmax(0,.55fr) minmax(0,1.45fr) minmax(0,.95fr) minmax(0,.5fr)}
.ap .fa-5 .fa-l > span:nth-child(2),.ap .fa-5 .fa-l > span:nth-child(5){font-size:12px;color:var(--muted)}
.ap .fa-5 .fa-acum{font-size:30px;line-height:1.1;font-weight:800;color:var(--verde,#1f6f43);letter-spacing:-.5px}
.ap .fa-5 .fa-acum small{font-size:11px;letter-spacing:0}
.ap .fa-5 .fa-l input.in{height:38px;font-size:15px;padding:6px 8px}
.ap .fa-5 .fa-l.fa-vez{background:#fff7d6;border-radius:12px;padding-left:8px;padding-right:8px;box-shadow:inset 4px 0 0 #e0a800}
.ap .fa-5 .fa-l.fa-vez .fa-acum{font-size:38px;color:#7a4f00}
.ap .fa-5 .fa-l.fa-feito .fa-acum{color:var(--muted);font-size:22px}
@media (max-width:420px){.ap .fa-5 .fa-acum{font-size:24px}.ap .fa-5 .fa-l.fa-vez .fa-acum{font-size:30px}}

/* Lotes: filtro rápido pela situação (22/10/2026) */
.lt-sit{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:0 18px 12px}.lt-sit button.chip{display:inline-flex;width:auto;flex:0 0 auto;align-items:center;min-height:0;margin:0;font-weight:500;border:1px solid var(--line,#dfe3e3);background:var(--bg2,#f4f6f6);border-radius:999px;padding:5px 11px;font:inherit;font-size:13px;cursor:pointer}.lt-sit button.chip.on{background:var(--ink,#1f2a2a);color:#fff;border-color:transparent}.lt-sit button.chip b{margin-left:3px}

/* Cartões compactos (22/10/2026: "está comprometendo metade da tela do computador"): uma linha só no computador, texto sem quebrar */
.kpis.kpis-comp{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:10px}
.kpis-comp .kpi{padding:8px 12px;min-width:0}
.kpis-comp .kpi small,.kpis-comp .kpi span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;overflow:hidden}
.kpis-comp .kpi b{font-size:20px;line-height:1.25;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (min-width:1100px){.kpis.kpis-comp{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (min-width:640px) and (max-width:1099px){.kpis.kpis-comp{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Pastos: bebedouros do pasto (22/10/2026) */
.beb-sel{display:grid;gap:6px}.beb-lista{display:flex;flex-wrap:wrap;gap:4px 12px;max-height:130px;overflow:auto;padding:6px 8px;border:1px solid var(--line,#e3e6e6);border-radius:10px}.beb-it{display:inline-flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap}.beb-it small{color:var(--muted)}
.tbl .beb-ids{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto}

/* Insumos (22/10/2026): todas as linhas na mesma altura (com ou sem fornecedor) */
.nu-ins td{height:58px;white-space:nowrap}.nu-ins td .sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}

/* Aferição de Matéria Seca (22/10/2026) */
.ap .ms-met{grid-template-columns:repeat(3,minmax(0,1fr))}.ap .ms-am{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 64px auto;gap:6px;align-items:center;margin:6px 0}.ap .ms-am .su-kg{margin:0}.ap .ms-r{font-weight:800;text-align:right}
.ap .ms-big{font-size:44px;font-weight:800;color:var(--verde,#1f6f43);line-height:1.1}.ap .ms-big small{display:block;font-size:13px;font-weight:500;color:var(--muted)}

/* 📑 Contratos de Insumos (SQL 352, 22/10/2026): barra do andamento, contrato na caderneta e o líquido do balanção em destaque */
.ci-bar{display:inline-block;width:90px;height:8px;border-radius:6px;background:var(--line2,#E5E9EC);vertical-align:middle;overflow:hidden}.ci-bar i{display:block;height:100%;background:var(--green,#1E9A47)}
.ap .ei-ctr button small{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-top:2px}.ap .ei-ctr button.on small{color:inherit;opacity:.85}
.ap .ct-liq .ms-big{display:block;font-size:38px}
/* 🌱 km economizado na Rota do Dia (22/10/2026) */
.su-rota-eco{margin:4px 0 6px;padding:6px 9px;border-radius:9px;background:#E7F6EC;color:#1E6B3A;font-weight:700;font-size:12.5px}
.su-rota-eco a{color:inherit;text-decoration:underline;white-space:nowrap;margin-left:4px}
/* 📑 preço do contrato no custo (Nutrição, 22/10/2026) */
.nu-ct{color:#1E5FA8;font-weight:600;white-space:normal}
/* ▶️ Próxima Parada da Rota do Dia (22/10/2026) */
.su-prox{border:2px solid #2E7D4F}.su-prox-b{display:flex;flex-direction:column;gap:2px;margin:6px 0 8px}.su-prox-b b{font-size:1.1em}.su-prox-b small{color:var(--muted,#5d6b73)}
.su-prox .en-acoes{display:flex;gap:8px;flex-wrap:wrap}.su-prox .en-acoes .btn{min-height:44px;flex:1}

/* tabela com rolagem dentro do formulário (ex.: Rota de Produção do premix, 24/10/2026): o corpo da janela é uma grade e espremia a
   área de rolagem até 0 px quando o formulário passava da altura da tela; a tabela sumia */
.fmodal .fb{grid-auto-rows:max-content}.fmodal .fb>.scroll{min-height:max-content}   /* cada linha da grade com a altura do que tem dentro: nada fica por cima */
/* Busca do marcador de ponto (pontomapa.js, Localização da Fazenda, 25/10/2026) */
.pm-busca{display:flex;gap:8px;padding:8px 14px;background:#fff;border-bottom:1px solid #ddd}.pm-busca .in{flex:1;min-width:0}
/* Saúde da Pastagem semanal (Sentinel-2, 25/10/2026) */
.st-info{margin:-6px 0 10px;line-height:1.5}.st-info #stFundo{color:var(--muted,#6b7479)}
.st-mini{width:80px;height:26px;vertical-align:middle}.st-mini polyline{fill:none;stroke:#2E9A4E;stroke-width:1.8}.st-mini circle{fill:#1E7A3F}
.st-graf-box{padding:4px 14px 12px}.st-graf{width:100%;height:auto;max-height:240px}
.st-graf .st-lin{fill:none;stroke:#2E9A4E;stroke-width:2.5}.st-graf .st-pt{fill:#fff;stroke:#2E9A4E;stroke-width:2}
.st-graf .st-ref{stroke:#c9cfd2;stroke-dasharray:4 4}.st-graf .st-reft{font-size:10px;fill:#8a9398}.st-graf .st-val{font-size:11px;font-weight:700;fill:#2b3236}.st-graf .st-eixo{font-size:10.5px;fill:#6b7479}
.ds-filtros>.fl.st-visao{width:auto}
/* Ordens de Serviço da IATF (site, 25/10/2026) */
.os-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px 18px;padding:4px 18px 14px}
.os-info small{display:block;color:var(--muted,#6b7479);font-size:12px;margin-bottom:2px}.os-info b{font-size:14px;font-weight:600}
.os-datas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.os-datas [hidden]{display:none}
.os-san{display:grid;grid-template-columns:130px 140px minmax(0,1.4fr) minmax(0,1.2fr) minmax(0,1fr) auto;gap:6px;margin-bottom:6px;align-items:center}
@media (max-width:700px){.os-datas{grid-template-columns:1fr 1fr}.os-san{grid-template-columns:1fr 1fr}}
.os-puxar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:400}
/* Ordens de Serviço de Curral e Máquinas (site, 25/10/2026) */
.os-chk{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 14px;font-weight:500}
.os-chk label{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink,#22282b)}
.os-pastos{max-height:220px;overflow:auto;border:1px solid var(--line2,#e3e6e4);border-radius:10px;padding:8px 10px}
.op-gps{border:1px dashed var(--line2,#d9ddda);border-radius:12px;padding:10px 12px;margin:10px 0}
.mp-tema-rot{display:block;margin-top:3px;padding:1px 7px;border-radius:7px;background:var(--c);color:#fff !important;font-weight:700;font-size:11px;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.35);box-shadow:0 1px 3px rgba(0,0,0,.3)}
/* OS de Curral · Aparte (SQL 374): as porteiras cadastradas no site; o app pode corrigir */
.os-ap-topo{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin-bottom:8px}
.os-ap-r{display:grid;grid-template-columns:22px 1.1fr .7fr .7fr .9fr 1fr 1.7fr auto;gap:6px;align-items:center;margin-bottom:6px}
.os-ap-r>b{font-size:13px;color:var(--mut,#5b6770);text-align:center}
.os-ap-cab{margin-bottom:2px}.os-ap-cab>span{font-size:11.5px;font-weight:600;color:var(--mut,#5b6770);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-ap-cab>b{font-size:11.5px}
.os-chk label .sub{white-space:nowrap}
.os-ap-r .in{min-width:0}
.os-ap-pe{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:4px}
.os-ap-pe label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}
.os-ap-lista{margin:0;padding:4px 18px 12px 38px;font-size:13.5px;line-height:1.7}
.os-ap-antes{padding:0 18px 12px}
.os-ap-antes summary{cursor:pointer;font-size:13px;color:var(--mut,#5b6770)}
@media (max-width:900px){.os-ap-cab{display:none!important}.os-ap-topo{grid-template-columns:1fr}.os-ap-r{grid-template-columns:22px 1fr 1fr;padding:8px 0;border-bottom:1px solid var(--line2,#e3e6e4)}.os-ap-r>b{grid-row:span 2}.os-ap-r>button{grid-column:1;grid-row:3}}
.os-ap-novo{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr 1.4fr .9fr 1.1fr .9fr;gap:6px;align-items:center;margin:0 0 4px 28px;padding:8px 10px;border-radius:10px;background:var(--bg2,#f3f6f4);border:1px dashed var(--line2,#c9d3cd)}
.os-ap-novo>span{font-size:12.5px;font-weight:600;color:var(--ink,#22282b);align-self:end;padding-bottom:12px}
.os-ap-novo label{display:flex;flex-direction:column;gap:3px;min-width:0}.os-ap-novo label small{font-size:11.5px;font-weight:600;color:var(--mut,#5b6770);white-space:nowrap}
@media (max-width:900px){.os-ap-novo{grid-template-columns:1fr 1fr;margin-left:0}.os-ap-novo>span{grid-column:1/-1}}
/* OS de Máquinas · insumos (SQL 375): insumo, dose recomendada, unidade e a meta (dose × área) */
.os-ins-r{display:grid;grid-template-columns:2fr 1.1fr .8fr 1fr auto;gap:6px;align-items:center;margin-bottom:6px}
.os-ins-cab{margin-bottom:2px}.os-ins-cab>span{font-size:11.5px;font-weight:600;color:var(--mut,#5b6770);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.os-ins-r .in{min-width:0}
.os-ins-meta{font-weight:700;font-size:14px;color:var(--ink,#22282b);white-space:nowrap;padding-left:4px}
@media (max-width:900px){.os-ins-cab{display:none}.os-ins-r{grid-template-columns:1fr 1fr;padding:8px 0;border-bottom:1px solid var(--line2,#e3e6e4)}.os-ins-r>select:first-child{grid-column:1/-1}}
/* Operações · insumos da OS (SQL 375) */
.ap .op-ins{border:1px solid var(--line2,#e3e6e4);border-radius:12px;padding:10px 12px;margin:6px 0 10px;display:grid;gap:6px}
.ap .op-ins>small{color:var(--mut,#5b6770);font-size:12.5px}
.ap .op-ins-dose{font-size:13px;font-weight:600;color:#1E7B4F}
.ap .op-ins-dose.fora{color:#B42318}
.op-gps .op-gps-bt{width:100%;margin:8px 0 2px}
/* 📅 a tarefa da OS no Farm Plan (os-servico.js › tarefaFP) */
.os-fp{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 18px 10px;padding:8px 12px;border-radius:10px;background:#E8F1FB;color:#1D4E89;font-size:13.5px}
.os-fp.ok{background:#E6F4EA;color:#1E7B4F}.os-fp.ruim{background:#FDECEA;color:#B42318}
.os-ap-lt{display:flex;gap:4px;min-width:0}.os-ap-lt>select{flex:1;min-width:0}
.os-ap-criar{white-space:nowrap;padding-left:8px;padding-right:8px}
/* 🧰 o checklist do curral da OS (checklistDaOS) e os rótulos do topo do aparte */
.os-chkst{display:flex;gap:8px;align-items:flex-start;padding:8px 12px;border-radius:10px;font-size:13.5px;background:#FFF6E0;color:#8A5A00}
.os-chkst.ok{background:#E6F4EA;color:#1E7B4F}.os-chkst.ruim{background:#FDECEA;color:#B42318}
.os-ap-topo label{display:flex;flex-direction:column;gap:3px;min-width:0}.os-ap-topo label small{font-size:11.5px;font-weight:600;color:var(--mut,#5b6770)}
/* 🐂 vários touros na OS da IATF (SQL 377): a lista no site e os botões por matriz no app */
.os-tou-l{display:grid;gap:6px}
.os-tou{display:grid;grid-template-columns:2fr .7fr 1fr auto;gap:6px;align-items:center}.os-tou .in{min-width:0}
.rp-touros{grid-column:1/-1}.rp-touros>small{display:block;font-size:12px;font-weight:700;color:var(--mut,#5b6770);margin-bottom:4px}
.rp-touros .lc-chips button small{display:block;font-size:11px;font-weight:600;opacity:.8}
.os-tou-pe{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.os-tou{grid-template-columns:2fr .6fr .9fr .7fr auto}
.os-ins1{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.os-ins1 .in{min-width:0}
/* 🔔 Acompanhamento dos indivíduos: quem precisa de atenção agora */
.acomp-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;padding:0 18px 14px}
.acomp-b{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;text-align:left;padding:10px 12px;border:1px solid var(--line2,#e3e6e4);border-radius:12px;background:var(--card,#fff);cursor:pointer}
.acomp-b i{grid-row:span 2;font-style:normal;font-size:22px}.acomp-b b{font-size:20px}.acomp-b span{font-size:12px;color:var(--mut,#5b6770)}
.acomp-b.on{border-color:#1E7B4F;box-shadow:0 0 0 2px #1E7B4F33}.acomp-b.zero{opacity:.55}
/* 🗂️ Relatórios enxutos (26/10/2026): as abas de cada cartão, numa linha só */
.rl-info .rl-nabas{display:block;font-size:11.5px;opacity:.8;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 🪜 Pesagem em 4 etapas (27/10/2026): Abertura · Ordem de Serviço · Balança · Encerramento */
.ap .cu-etapas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 12px}
.ap .cu-etapas button{display:grid;justify-items:center;gap:3px;padding:8px 4px;border:2px solid var(--line);border-radius:14px;background:var(--surface);font:inherit;font-size:12px;font-weight:700;color:var(--ink2);cursor:pointer;min-height:44px}
.ap .cu-etapas button i{font-style:normal;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--line);color:var(--ink);font-size:13px;font-weight:800}
.ap .cu-etapas button span{line-height:1.15;text-align:center}
.ap .cu-etapas button.on{border-color:var(--navy);color:var(--ink)}
.ap .cu-etapas button.on i{background:var(--navy);color:#fff}
.ap .cu-etapas button.feita i{background:#1E7B4F;color:#fff}
.ap .cu-foco-h{display:grid;gap:2px;margin:0 0 8px;font-size:13px;color:var(--ink2)}
.ap .cu-foco-h b{font-size:16px;color:var(--ink)}
.ap .cu-animal{display:grid;gap:10px}
.ap .cu-sexo{display:grid;grid-template-columns:1fr 1fr}
.ap .cu-sexo button{min-height:52px;font-size:17px}
.ap .cu-animal #aRaca{min-height:52px;font-size:17px}
.ap .cu-animal .pes-entra{grid-template-columns:1fr auto}
.ap .cu-animal #aKg{font-size:28px;font-weight:800;text-align:center;min-height:64px}
.ap .cu-animal .pes-entra .btn{min-height:64px;font-size:18px;padding:0 18px}
#cmFornHist .fg-hist{margin-top:8px}#cmFornHist .sub2{margin:6px 2px 10px}
.vg-cargas{margin:6px 0 10px}.vg-cargas .vg-carga{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:10px 12px;margin-top:8px;font:inherit;cursor:pointer}.vg-cargas .vg-carga.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.vg-cargas .vg-carga small{color:var(--muted);font-weight:600}
.rt-como{padding:12px 16px;margin-bottom:12px}.rt-como summary{cursor:pointer;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.rt-como summary small{color:var(--muted)}.rt-como ol{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.rt-como li{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--surface2)}.rt-como li.falta{background:#FFF6E5}.rt-como li>div:first-child{display:flex;flex-direction:column;gap:2px;flex:1 1 320px}.rt-como li span{font-size:13px;color:var(--muted)}.rt-como-bt{display:flex;gap:6px;flex-wrap:wrap}@media (prefers-color-scheme:dark){:root:not(.sempre-claro) .rt-como li.falta{background:#3A2F17}}
.mp-cons{display:block;width:100%;margin:-2px 0 8px;padding:6px 10px;border:1px dashed var(--line);border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:12.5px;font-weight:700;text-align:left;cursor:pointer}.mp-cons:hover{border-color:var(--ink)}
.mc-svg{display:block;margin:8px 0 4px}.mc-svg .mc-linha{fill:none;stroke:#2E7D4F;stroke-width:2}.mc-svg .mc-ponto{fill:#2E7D4F;stroke:#fff;stroke-width:1.5}.mc-svg .mc-ponto.fora{fill:#C0392B}.mc-svg .mc-meta{stroke:#B0892E;stroke-width:1.5;stroke-dasharray:4 3}.mc-svg .mc-grade{stroke:rgba(0,0,0,.08)}.mc-svg .mc-eixo{font-size:9px;fill:#6B7280}
.mc-res{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px}.mc-res small{color:var(--muted)}.mc-sit{font-size:12.5px;margin:4px 0 6px}.mc-ok{color:#2E7D4F}.mc-fora{color:#C0392B}
.mc-leg{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin:0 0 6px}.mc-leg span{display:inline-block;margin-left:6px}.mc-leg .mc-l1{width:14px;height:2px;background:#2E7D4F;margin-left:0}.mc-leg .mc-l2{width:14px;border-top:2px dashed #B0892E}.mc-leg .mc-l3{width:8px;height:8px;border-radius:50%;background:#C0392B}
/* 📈 Consumo Lote a Lote (28/10/2026): cartão por lote com os números do período e os gráficos de cada trato */
.cl-filtros{grid-template-columns:200px 200px minmax(0,1fr) auto}.cl-check>span:last-child{display:flex;align-items:center;gap:6px;height:40px;font-weight:600;font-size:13px;white-space:nowrap}
@media (max-width:700px){.cl-filtros{grid-template-columns:1fr 1fr}.cl-filtros>.fl:nth-child(3){grid-column:1/-1}}
.cl-grupo{font-size:18px;margin:18px 0 6px;padding:10px 14px;border-radius:12px;background:var(--ink);color:var(--surface)}
.cl-dieta{display:flex;align-items:center;gap:10px;margin:14px 0 8px;font-weight:800;font-size:13.5px;color:var(--ink)}.cl-dieta::before,.cl-dieta::after{content:'';flex:1;height:1px;background:var(--line)}
.cl-lote{padding:0;overflow:hidden;margin-bottom:14px}.cl-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.cl-h h3{margin:0;font-size:16px}.cl-h small{color:var(--muted)}
.cl-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;padding:12px 16px}
.cl-tile{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:8px 10px;border-radius:10px;background:var(--surface2);text-align:center}.cl-tile b{font-size:15px;line-height:1.2;overflow-wrap:anywhere}.cl-tile b em{display:block;font-style:normal;font-size:11px;font-weight:600;color:var(--muted)}.cl-tile small{font-size:11px;color:var(--muted)}
.cl-tile.ok{box-shadow:inset 0 0 0 2px #2E7D4F}.cl-tile.fora{box-shadow:inset 0 0 0 2px #C0392B}
.cl-svg{display:block;padding:0 12px 10px}.cl-svg .cl-tit{font-size:12px;font-weight:700;fill:var(--ink)}.cl-svg .cl-eixo{font-size:10px;fill:#6B7280}.cl-svg .cl-grade{stroke:rgba(0,0,0,.07)}
.cl-svg .cl-linha{fill:none;stroke:#2E7D4F;stroke-width:2}.cl-svg .cl-ponto{fill:#2E7D4F;stroke:#fff;stroke-width:1.5}.cl-svg .cl-ponto.fora{fill:#C0392B}.cl-svg .cl-meta{stroke:#B0892E;stroke-width:1.5;stroke-dasharray:5 4}.cl-svg .cl-meta-t{font-size:10px;fill:#8A6A1E;font-weight:700}
.cl-svg .cl-rot{font-size:11px;font-weight:800;fill:#2E7D4F}.cl-svg .cl-barra{fill:#2F4B6E}.cl-svg .cl-barra.mn{fill:#9AA9BC}.cl-svg .cl-hit{fill:transparent}.cl-svg .cl-hit:hover{fill:rgba(0,0,0,.05)}
.cl-svg .cl-cocho{stroke:#fff;stroke-width:1.5}.cl-svg .cl-cocho.v{fill:#2E7D4F}.cl-svg .cl-cocho.a{fill:#D9A21B}.cl-svg .cl-cocho.r{fill:#C0392B}
.cl-leg{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:12px;color:var(--muted);margin:4px 0 10px}.cl-leg span{display:inline-block;margin-left:8px}.cl-leg .cl-l1{width:16px;height:2px;background:#2E7D4F;margin-left:0}.cl-leg .cl-l2{width:16px;border-top:2px dashed #B0892E}.cl-leg .cl-l3{width:10px;height:10px;border-radius:2px;background:#2F4B6E}.cl-leg .cl-l4{width:8px;height:8px;border-radius:50%;background:#C0392B}.cl-leg .cl-l5{width:9px;height:9px;border-radius:50%}.cl-leg .cl-l5.v{background:#2E7D4F}.cl-leg .cl-l5.a{background:#D9A21B}.cl-leg .cl-l5.r{background:#C0392B}
@media (prefers-color-scheme:dark){:root:not(.sempre-claro) .cl-svg .cl-grade{stroke:rgba(255,255,255,.08)}:root:not(.sempre-claro) .cl-svg .cl-barra{fill:#7FA3CF}:root:not(.sempre-claro) .cl-svg .cl-eixo{fill:#A0A8B3}}
@media print{.cl-lote{break-inside:avoid}.cl-grupo{background:none;color:#000;border:1px solid #000}}
/* 📊 Recepção: Comunicado × Recebido no passo 3 (28/10/2026) */
.ap .rc-cmp{width:100%;border-collapse:collapse;margin-top:8px;font-size:13.5px}
.ap .rc-cmp th{font-size:11.5px;font-weight:600;color:var(--muted);text-align:center;padding:4px 6px;border-bottom:1px solid var(--line)}
.ap .rc-cmp th:first-child,.ap .rc-cmp td:first-child{text-align:left}
.ap .rc-cmp td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:center;vertical-align:top}
.ap .rc-cmp td small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}
.ap .rc-cmp tr.rc-cmp-tot td{font-weight:700}
.ap .rc-cmp tr.rc-cmp-fora td{background:rgba(179,38,30,.10)}
.ap .rc-cmp-m{color:#B3261E;white-space:nowrap}.ap .rc-cmp-f{color:var(--muted);white-space:nowrap}.ap .rc-cmp-ok{color:#1E7B3C;white-space:nowrap}
.ap .mv-nota.rc-cmp-parcial{background:rgba(120,130,140,.12)}
/* 📷 Recepção: fotos da GTA, NF e Romaneio (SQL 386, 28/10/2026) */
.ap .rc-docs-t{margin:4px 0 6px}
.ap .rc-docs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.ap .rc-docs .btn{white-space:nowrap}
.ap .rc-docs-prev{margin-bottom:10px}.ap .rc-docs-prev span{flex-direction:column;align-items:center}
.ap .rc-docs-prev em{font-style:normal;font-size:11.5px;color:var(--muted);margin-top:3px}
.ap .rc-trava{font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.ap #rcPo[readonly],.ap #rcRaca:disabled{background:rgba(120,130,140,.10);opacity:1;color:inherit}
.ap .rc-confere-t{margin:10px 0 6px}.ap .mo-sn button.on.rc-naoconf{background:#B3261E;border-color:#B3261E}
.ap .rc-bal{margin:10px 0}.ap .rc-bal>.btn{width:100%;margin-bottom:8px}.ap .rc-docs.rc-docs-2{grid-template-columns:1fr 1fr}
/* ⚖️ Pesagens no Balanção (28/10/2026) */
.bl-al{color:#B3261E;white-space:nowrap}.bl-ok{color:#1E7B3C;white-space:nowrap}
.tbl tr.bl-linha-al td{background:rgba(179,38,30,.06)}
/* 📅 Comunicado: prazo de cada parcela (SQL 387, 28/10/2026) */
.ap .cm-prazos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:6px 0 10px}
.ap .cm-prazo small{display:block;margin-top:4px;font-size:12px}
/* ⏱ tempo da operação (cronometro-op.js, 28/10/2026) */
.ap .op-cron{border:1.5px solid var(--line);border-radius:14px;padding:12px;display:grid;gap:8px;margin:6px 0 10px;background:var(--surface2)}
.ap .op-cron-t{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.ap .op-relogio{font-weight:800;font-size:18px}
.ap .op-cron-b{display:flex;gap:8px;flex-wrap:wrap}.ap .op-cron-b .btn{flex:1 1 120px;min-height:48px}
.ap .op-cron.op-rodando{border-color:#2E9A4F}.ap .op-cron.op-pausada{border-color:#D69E00}.ap .op-cron.op-finalizada{border-color:#2B6CB0}
/* 🔒 divergências com o comunicado em destaque (28/10/2026, Welton: "aumentar o tamanho da fonte e dar maior destaque às divergências") */
.ap .cm-conf{font-size:15px}.ap .cm-conf .sec,.ap .cm-conf>b{font-size:18px}
.ap .cm-conf .cm-div{background:#FDE3E1;color:#7A1010;border-left:6px solid #B3261E;border-radius:10px;padding:10px 12px;font-weight:700;font-size:16px;line-height:1.35}
.ap .cm-conf .al{font-size:15px;font-weight:600}.ap .cm-conf.trava .sec,.ap .cm-conf.trava>b{color:#A51F1F}
/* 🧾 Ordem de Trato do Dia (rota-trato.html, 28/10/2026) */
.ot-rota{margin:10px 0 18px}.ot-rota-h{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:16px;margin-bottom:6px}
.ot-bat{display:flex;gap:6px 14px;flex-wrap:wrap;margin-bottom:8px;font-size:14px}
.ot-tbl td,.ot-tbl th{font-size:14px}.ot-tbl td.ot-esc{min-width:90px;border-bottom:1px solid #999}.ot-tbl tr.ot-atr td{background:rgba(179,38,30,.07)}
@media print{.ot-folha{box-shadow:none;border:0}.ot-rota{break-inside:avoid}}
/* 🧾 Rota do Dia no app: produtos e batidas por rota, e a ordem no WhatsApp (28/10/2026) */
.ap .su-prods{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13.5px;margin:2px 0 6px}.ap .su-zap{width:100%;margin-bottom:10px;min-height:48px}
.ap .rc-bal-l{align-items:end}.ap .rc-bal-l .btn{width:100%;min-height:48px}
/* 💲 parcelas da compra: prazo, data, % e valor (SQL 394, 28/10/2026) */
.ap .cm-prazos{display:grid;gap:8px;grid-template-columns:1fr}.ap .cm-parc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface2)}
.ap .cm-parc-t{grid-column:1/-1;font-weight:700;font-size:14px}
@media (max-width:520px){.ap .cm-parc{grid-template-columns:1fr 1fr}}
.ap .rc-vid{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:6px 0;font-size:14px}
/* o negrito na linha de baixo do quadro de indicador fica do tamanho do texto dela (28/10/2026: "⚠️ 2 Passaram da Data" vazava do quadro) */
.kpi span b,.kpi small b{display:inline;font-size:inherit;font-family:inherit;line-height:inherit;white-space:normal}
/* 🗂️ Rota de Trato em três abas, como as telas de trato do Manej'Us antigo (28/10/2026) */
.rt-abas{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.rt-abas button{border:1.5px solid var(--line);background:var(--surface,#fff);border-radius:10px;padding:10px 16px;font:700 14px "Public Sans",system-ui,sans-serif;cursor:pointer;color:inherit}
.rt-abas button.on{background:var(--navy,#383E42);border-color:var(--navy,#383E42);color:#fff}
#subtitulo{margin-top:4px}
.rt-filtros.rt-filtros4{grid-template-columns:170px 200px 260px minmax(0,1fr)}
.rt-conta{display:flex;flex-direction:column;gap:2px;padding-top:2px}.rt-conta b{font-size:15px}.rt-conta small{color:var(--muted,#6b7479)}
.rt-inc{margin-bottom:12px}
.rt-bat{padding:0 16px 8px}
.rt-total{display:grid;grid-template-columns:220px 220px max-content;gap:10px 14px;padding:4px 16px 12px;align-items:end}.rt-total .fl{margin:0}.rt-total .in{height:40px;margin:0}
.rt-folha .rt-kg{min-width:90px;width:100px;text-align:center}.rt-folha .rt-lei{min-width:130px}
.rt-folha td.rt-rep{font-weight:700}
.rt-total.rt-total1{display:flex;gap:10px;align-items:center;padding:0 16px 10px}
.rt-cam-c .rt-cam{box-shadow:none;border:0;margin:0}
.rt-leit{margin-bottom:12px}
.rt-notas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:12px 16px 16px}
.rt-nota{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.rt-nota>b{align-self:flex-start;font-size:13px}.rt-nota>span{font-weight:700}.rt-nota small{color:var(--muted,#6b7479)}
.rt-pct{display:flex;align-items:center;gap:6px}.rt-pct .in{height:36px;margin:0;width:80px;text-align:center}.rt-pct i{font-style:normal;font-weight:700}
.rt-ferr{padding:12px 16px;margin-bottom:12px}.rt-ferr summary{cursor:pointer;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.rt-ferr summary small{color:var(--muted)}
.rt-ferr .ro-card{box-shadow:none;margin-top:12px}
.rt-como-txt{padding:6px 0 2px;font-size:13.5px;line-height:1.5}.rt-como-txt p{margin:0 0 6px}
.ac-leg{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0 0 12px;font-size:12.5px}
.ac-atencao{margin-bottom:12px}.ac-atencao ul{margin:0;padding:0 16px 12px 34px}.ac-atencao li{margin:4px 0}
.ac-graf{margin-bottom:12px}.ac-graf svg{display:block;padding:0 12px 10px;box-sizing:border-box}
.ac-f15{fill:#FBF0D3;opacity:.7}.ac-f5{fill:#E4F2E9}.ac-zero{stroke:#8A949A;stroke-width:1}
.ac-eixo{font:11px "Public Sans",system-ui,sans-serif;fill:#6b7479}
.ac-linha{fill:none;stroke:#383E42;stroke-width:2;stroke-linejoin:round}
.ac-ponto{fill:#383E42;stroke:#fff;stroke-width:2}.ac-ponto.fora{fill:#C0392B}
.ac-fab{margin:12px 0}.ac-fab-n{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:4px 16px 14px}.ac-fab-n small{display:block;color:var(--muted,#6b7479)}.ac-fab-n b{font-size:18px}
@media (max-width:900px){.rt-filtros.rt-filtros4,.rt-total{grid-template-columns:1fr}}
@media print{.rt-abas{display:none}.rt-folha .in{border:0;border-bottom:1px solid #999;background:none;-webkit-appearance:none;appearance:none;box-shadow:none}.rt-folha select.in{color:#000}}
.rt-n{background:#ECEEEF;color:#5A646A}
/* 🛠️ Montar o Trato: três passos, um botão principal em cada (28/10/2026) */
.mt-intro{margin:0 0 12px;font-size:14px}
.mt-passo{margin-bottom:14px;padding:14px 16px;border-left:4px solid #E0A82E}.mt-passo.ok{border-left-color:#2E7D4F}
.mt-h{display:flex;gap:12px;align-items:center;margin-bottom:10px}.mt-h h3{margin:0;font-size:17px}.mt-h small{color:var(--muted,#6b7479);font-size:13px}
.mt-num{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#E0A82E;color:#fff;font-size:16px}.mt-passo.ok .mt-num{background:#2E7D4F}
.mt-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 14px;align-items:end}.mt-campos .fl{margin:0}.mt-campos .in{height:42px;margin:0}
.mt-mais{margin-top:10px}.mt-mais summary{cursor:pointer;color:var(--muted,#6b7479);font-size:13px}.mt-mais .rt-cam{box-shadow:none;border:0;padding:10px 0 0;margin:0}
.mt-nota{margin:0 0 8px}
.mt-acao{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:4px 0 12px}.mt-acao .btn{height:42px}
.mt-rota,.mt-sug{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:0 0 10px}.mt-sem{border-color:#E0A82E;background:#FFFBF0}
.mt-rota-h{display:flex;gap:6px 12px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}.mt-rota-h b{font-size:15px}.mt-rota-h small{color:var(--muted,#6b7479);flex:1}
.mt-lista{list-style:none;margin:0;padding:0}.mt-lista li{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}
.mt-n{flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ECEEEF;font-weight:800;font-size:13px}
.mt-p{flex:1;min-width:0}.mt-p b{display:block}.mt-p small{color:var(--muted,#6b7479);font-size:12.5px}
.mt-b{display:flex;gap:6px;align-items:center}.mt-b .btn{min-width:40px;height:38px;justify-content:center}.mt-mover{height:38px!important;margin:0!important;width:150px}
.mt-vazia{padding:6px 0}
@media (max-width:700px){.mt-lista li{flex-wrap:wrap}.mt-b{width:100%;justify-content:flex-end}}
.rt-subt{margin:-6px 0 12px;font-size:14px}
.mt-sugere{display:block;color:#2E7D4F!important;font-weight:600}
.rt-leit .rt-notas{padding:4px 0 0}
/* ⚡ Trato rápido na Rota do Dia (28/10/2026): a próxima parada aberta, a nota do cocho em botões grandes e o ✓ Tratei */
.su-parada.aqui{background:#F3F8F4;border-radius:12px;padding:10px 8px;border-top:0}
.su-parada[data-abrir]{cursor:pointer}.su-ir{font-size:13px;font-weight:800;color:#2E7D4F;white-space:nowrap}
.su-rap{background:#F3F8F4;border-radius:0 0 12px 12px;padding:4px 10px 12px;margin:-4px 0 8px;display:grid;gap:10px}
.su-tot{border-radius:12px;margin:8px 0}
.su-rap-t{font-weight:800;font-size:14px}
.su-notas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.su-nota{display:grid;justify-items:center;gap:2px;padding:10px 2px;border-radius:12px;border:1.5px solid #D5DBD7;background:#fff;font:inherit;cursor:pointer;min-height:58px}
.su-nota b{font-size:20px;line-height:1}.su-nota small{font-size:11px;font-weight:700;line-height:1.1;text-align:center}
.su-nota.su-nr.on{background:#C0392B;border-color:#C0392B;color:#fff}.su-nota.su-na.on{background:#B07D0A;border-color:#B07D0A;color:#fff}.su-nota.su-nv.on{background:#2E7D4F;border-color:#2E7D4F;color:#fff}
.su-rap-kg{display:flex;align-items:center;gap:8px;font-weight:800;font-size:16px}.su-rap-kg .in{flex:1;height:52px!important;font-size:24px;font-weight:800;text-align:center;margin:0!important}
.su-ok{min-height:54px;font-size:17px;width:100%}.su-comp{justify-self:start}
.su-totbt{margin:4px 0 6px}.su-totbt.on{background:#383E42;color:#fff;border-color:#383E42}
.cf-folha .rt-campo small{display:block;color:var(--muted,#6b7479);font-size:10.5px}.cf-feito b{color:#2E7D4F}
/* ➕ Lançar pelo site (28/10/2026, site-lancar.js): sem os check lists */
body.mu-site .mu-chk-site,body.mu-site .card:has(> .sec > .mu-chk-site){display:none!important}
.side .farm{position:relative}
.side .brand > div:not(.lg){position:relative;padding-right:52px}
.mu-cad-atalho{position:absolute;top:50%;right:0;transform:translateY(-50%);width:40px;height:40px;border-radius:12px;background:#fff;display:grid;place-items:center;font-size:21px;text-decoration:none;box-shadow:0 1px 4px rgba(0,0,0,.25);z-index:2}
.mu-cad-atalho:hover{transform:translateY(-50%) scale(1.06)}
.rl-lancar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;margin-bottom:12px}.rl-lancar .btn{height:42px}
/* 🥣 Rota pela dieta e o resumo de toda rota (28/10/2026) */
.mt-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:6px 0 10px}
.mt-resumo>div{background:#F4F6F5;border-radius:10px;padding:8px 10px}.mt-resumo small{display:block;color:var(--muted,#6b7479);font-size:11.5px}.mt-resumo b{font-size:17px}
.mt-multi .mt-resumo{padding:0 16px}
.mt-nova{border-color:#2E7D4F;background:#F7FBF8}
.mt-escolha li{cursor:pointer;border-radius:10px;padding:8px 6px}.mt-escolha li:hover{background:#EEF5F0}.mt-escolha li.on{background:#E4F2E9}.mt-escolha li.on .mt-n{background:#2E7D4F;color:#fff}
.mt-proj{margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.mt-tratos{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px}.mt-tratos span{background:#F4F6F5;border-radius:10px;padding:6px 10px;font-size:13px;display:grid}
.mt-rota-h .btn.sm{white-space:nowrap}
/* 🥣 Trato a trato na Rota do Dia (28/10/2026) */
.su-res{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:4px 0 8px}.su-res span{background:#F4F6F5;border-radius:10px;padding:6px 8px;display:grid}.su-res small{font-size:11px;color:#5b6468}.su-res b{font-size:15px}
.su-tratos{display:flex;gap:6px;overflow-x:auto;margin:0 0 8px;padding-bottom:2px}.su-tratos button{flex:0 0 auto;display:grid;gap:2px;padding:8px 12px;border-radius:12px;border:1.5px solid #D5DBD7;background:#fff;font:inherit;cursor:pointer;min-height:48px}
.su-tratos button.on{background:#383E42;border-color:#383E42;color:#fff}.su-tratos small{font-size:11px}
.su-multi-c{margin:0 0 6px;font-size:13.5px}
.su-mtot{margin:4px 0 8px}.su-mtot summary{cursor:pointer;font-weight:700;font-size:13.5px;padding:6px 0}.su-mtot .su-rap-kg,.su-mtot .su-ok{margin-top:8px}
.ac-trato{margin:12px 0}
/* ⏰ Desvio de Horário do Trato (28/10/2026) */
.ht-filtros{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:14px 16px;margin-bottom:14px}.ht-filtros .fl{margin:0}.ht-filtros .in{height:40px;margin:0}
.ht-duas{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:14px;margin-bottom:14px}.ht-duas .card{margin:0}
@media (max-width:700px){.ht-duas{grid-template-columns:1fr}}
.cf-semleit{display:none}@media print{.cf-semleit{display:block}}
.rt-leited{border:0;background:none;cursor:pointer;font-size:13px;padding:0 0 0 4px;opacity:.7}.rt-leited:hover{opacity:1}
.su-leited{border:0;background:none;cursor:pointer;font-size:14px;padding:0 2px;vertical-align:baseline}
/* 🖱️ os controles e os rótulos do mapa não selecionam texto (28/10/2026, Welton: "por que os textos ficam com essa sombra?": era a seleção do navegador presa ao arrastar) */
.leaflet-container .leaflet-control,.leaflet-container .leaflet-tooltip{-webkit-user-select:none;user-select:none}
/* 🏷️ SISBOV · Comunicados (28/10/2026): a lista, os Dados do ERAS e o documento (Anexos XIX e XX) que imprime uma via por página */
.sb-tbl td small{display:block;color:var(--ink2);font-size:11.5px}.sb-tbl .sb-falta{color:#a31515}.sb-acoes{white-space:nowrap}.sb-acoes .btn{margin:2px}
.sb-eras .cardh{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sb-eras .cardh .btn{margin-left:auto}
.sb-eras-v{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:4px 16px 14px}.sb-eras-v small{display:block;color:var(--ink2);font-size:12px}
.sb-eras-f{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:4px 16px 10px}.sb-eras>.btn{margin:0 16px 14px}
.sb-doc-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0 14px}.sb-doc-bar b{margin-right:auto}
.sb-doc{background:#fff;color:#111;border:1px solid #c9d3d6;border-radius:8px;padding:22px 26px;margin-bottom:18px;font-size:12.5px}
.sb-h{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:8px}.sb-h small{display:block;font-size:10.5px}.sb-h b{font-size:18px;letter-spacing:.06em}
.sb-via{font-weight:700;border:1px solid #111;padding:3px 8px;border-radius:4px;font-size:11px}
.sb-doc h2{margin:12px 0 2px;font-size:17px;text-transform:uppercase;letter-spacing:.03em}.sb-sub{font-size:10.5px;color:#444;margin-bottom:10px}
.sb-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sb-bt{font-weight:800;font-size:11.5px;text-transform:uppercase;margin:6px 0 4px}
.sb-campos{width:100%;border-collapse:collapse}.sb-campos th,.sb-campos td{border:1px solid #888;padding:4px 6px;text-align:left;vertical-align:top}.sb-campos th{background:#f1f3f3;font-weight:600;width:42%;font-size:11px}
.sb-mov{margin:10px 0}.sb-mov th{width:22%}
.sb-lista{width:100%;border-collapse:collapse;margin-top:6px}.sb-lista th,.sb-lista td{border:1px solid #888;padding:3px 6px;text-align:center}.sb-lista th{background:#f1f3f3}.sb-num{font-family:ui-monospace,Menlo,monospace;letter-spacing:.04em}
.sb-ass{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:34px;font-size:11px;text-align:center}.sb-ass span{display:block;border-top:1px solid #111;margin-bottom:4px}
@media (max-width:700px){.sb-2{grid-template-columns:1fr}}
@media print{body.sb-imprimindo .side,body.sb-imprimindo .mtop,body.sb-imprimindo .phead,body.sb-imprimindo #conteudo,body.sb-imprimindo .msinal,body.sb-imprimindo .noprint{display:none!important}
  body.sb-imprimindo .sb-doc{border:0;border-radius:0;padding:0;margin:0;page-break-after:always;break-after:page}body.sb-imprimindo .main{padding:0}}
@page sbretrato{size:A4 portrait;margin:12mm}.sb-doc{page:sbretrato}
/* 🐂 Recepção: a contagem por sexo × era da GTA (28/10/2026) */
.rc-era{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:3px;margin:4px 0}.rc-era th:first-child{width:22px}.rc-era th:last-child,.rc-era td:last-child{width:40px}.rc-era th{font-size:12px;color:var(--ink2);font-weight:700;text-align:center;white-space:nowrap}.rc-era tbody th{text-align:center;font-size:17px;color:var(--ink)}
.rc-era td{text-align:center;font-weight:700}.rc-era .rc-era-in{width:100%;min-width:0;text-align:center;padding:10px 0;font-size:16px}.rc-era-tot td,.rc-era-tot th{border-top:1px solid var(--line,#d8e0e0);padding-top:6px}
.rc-era-cat{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;align-items:center;margin:6px 0}.rc-era-cat.falta select{border-color:#c62828}
.rc-era input.rc-era-in{padding:10px 0!important;text-indent:0;letter-spacing:0}.rc-era th:last-child,.rc-era td:last-child{width:46px}
/* 🏷️ o nº de manejo do SISBOV em destaque, como no brinco (28/10/2026) · ⚖️ Peso Vivo (kg) */
.cu-manejo{display:flex;flex-direction:column;align-items:center;gap:2px;background:#F4C20D;color:#111;border-radius:12px;padding:8px 12px;margin:8px 0}
.cu-manejo small{font-size:12px;font-weight:700;color:#3a3000}.cu-manejo-n{font-size:40px;line-height:1.05;font-weight:900;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.pes-rot{display:block;font-size:13px;font-weight:700;color:var(--ink2);margin:8px 0 4px}
.cu-ap-ja{display:block;font-style:normal;font-weight:700;font-size:14px;margin-top:4px;opacity:.95}
.cu-falta{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;background:var(--surface2,#EEF2F1);border-radius:10px;padding:8px 12px;margin:6px 0;font-size:14px}
.cu-falta.ok{background:rgba(46,125,50,.14)}
.cu-ap-esc{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.cu-ap-esc button{flex:1 1 auto;min-height:44px;border-radius:10px;border:1px solid var(--line,#d8e0e0);background:var(--surface);font:inherit;font-weight:700;padding:6px 10px;color:var(--ink)}
.cu-ap-esc button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.cu-ap-dica{font-size:12px;color:var(--ink2);margin-top:4px;text-align:center}
.cu-lote-dest{background:var(--surface2,#EEF2F1);border-radius:12px;padding:10px 12px;margin:8px 0;font-weight:800;text-align:center}.cu-lote-dest small{display:block;font-weight:600;font-size:12px;color:var(--ink2);margin-top:4px}
/* 🚛 placa sempre em maiúsculas (28/10/2026) */
#rcPlaca,#rcReb,input[name="placa"],input[name="reboque"],input[data-k="placa"],input[data-k="reboque"]{text-transform:uppercase}
/* 📥 Estoque Inicial e 📝 Correção (SQL 403, 29/10/2026) */
.es-acerto{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.es-acerto .es-maisnovo{flex:1 1 200px;margin:0}
.es-corr{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line,#e3e9e9);padding:8px 0}.es-corr small{display:block;color:var(--ink2);font-size:12px}
.es-corr-b{display:flex;gap:6px;flex-wrap:wrap}
.sb-orig{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.sb-orig .in{min-height:34px;padding:4px 8px;font-size:13px;width:auto;max-width:100%}
.es-aplic .es-dif{color:var(--bad,#b3261e);font-weight:700}
/* 🏷️ estoque de brincos (SISBOV, SQL 409) */
.sb-fx-k{padding:0 16px 10px;margin:0}.sb-fx-f{padding:0 16px 10px}
.es-lote{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;align-items:center;margin:4px 0}.es-lote b{font-size:13px}@media(max-width:480px){.es-lote{grid-template-columns:1fr 1fr}.es-lote b{grid-column:1/-1}}
/* 📦 Estoque da Fazenda no celular e no aplicativo (?app=1, 29/10/2026) */
body.ef-app .side, body.ef-app .mtop, body.ef-app .phead { display: none }
body.ef-app .main { padding: 10px 12px }
.ef-app-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 10px }
.ef-app-top a { font-weight: 700; text-decoration: none } .ef-app-top small { color: var(--ink2); width: 100% }
.ef-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 0 0 10px }
.ef-kpis span { background: #fff; border-radius: 10px; padding: 8px 4px; text-align: center; font-size: 11px; display: flex; flex-direction: column; box-shadow: 0 1px 3px rgba(0,0,0,.06) }
.ef-kpis b { font-size: 20px } .ef-kpis .ruim b { color: var(--bad, #b3261e) }
.ef-it { margin: 0 0 8px } .ef-it.acabou { border-left: 4px solid var(--bad, #b3261e) }
.ef-it-h { display: flex; justify-content: space-between; gap: 8px; align-items: center }
.ef-it-n { display: flex; gap: 12px; flex-wrap: wrap; font-size: 13px; margin-top: 4px }
/* Estoque da Fazenda no site: as abas no padrão .tabs (navy na escolhida) e os atalhos como botões, sem cara de link (02/11/2026) */
.tabs.ef-abas button{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.tabs.ef-abas button i{font-style:normal}
.tabs.ef-abas button.on em{color:#fff;border-color:rgba(255,255,255,.45)}
.ef-links a.btn{color:var(--ink);text-decoration:none}
.ef-links-app { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: 10px 0 }
.ef-pend { display: flex; flex-direction: column; gap: 6px } .ef-pend a { text-decoration: none }
/* no site: cada pendência é uma linha clicável dentro do cartão, com a margem do título */
.card > .ef-pend { padding: 0 18px 14px; gap: 6px }
.card > .ef-pend a { display: flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: var(--ink); font-weight: 600 }
.card > .ef-pend a::after { content: "›"; margin-left: auto; color: var(--muted); font-size: 18px }
.card > .ef-pend a:hover { border-color: var(--muted) }
/* ⏰ Metas de Ocupação (29/10/2026): o quadro em Cadastros › Pastos e a janela do Mapa */
.kpi.clic { cursor: pointer } .kpi.clic:hover { outline: 2px solid var(--s4-soft) }
.mu-metas tr.mu-meta-atraso td:first-child, .mp-metas tr.mp-meta-atraso td:first-child { box-shadow: inset 3px 0 0 var(--s4) }
.mu-metas tr.mu-meta-hoje td:first-child, .mp-metas tr.mp-meta-hoje td:first-child { box-shadow: inset 3px 0 0 var(--s5) }
.mu-metas td, .mu-metas-curtas td { vertical-align: middle; white-space: nowrap }
.mu-metas input.in { width: 84px }
.mp-metas tr.mp-metas-tot td { font-weight: 700; background: rgba(56,62,66,.05) }
.mp-metas tbody tr:hover td { background: var(--surface2) }
.mp-metas-curtas { background: var(--s5-soft); border-radius: 8px; padding: 8px 12px; margin-bottom: 10px; font-size: 13px }
.mp-al-clic { cursor: pointer; text-decoration: underline dotted; text-underline-offset: 3px }
.mp-metas td, .mp-metas th { white-space: nowrap }

.sb-bnd-cad { display: flex; gap: 10px; align-items: flex-end; flex-wrap: wrap; margin: 8px 0 }   /* ➕ cadastrar os Fora do Sistema da BND (30/10/2026) */
.sb-bnd-cad .fl { min-width: 240px }

.sb-arq-f { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; padding: 0 16px 10px }   /* 📁 filtros do Arquivo dos Comunicados (30/10/2026) */
.sb-arq-f .in { width: auto; min-width: 170px }
.sb-arq-f input.in { min-width: 260px }
#sbArq tr.sb-tot td { font-weight: 700; background: rgba(56,62,66,.05) }

#efDep td.ef-dep-d { white-space: nowrap }   /* 🏚️ depósito: a data e os dias na mesma linha; Contar e Perda lado a lado (30/10/2026) */
#efDep td.ef-dep-b, #efAvisos td.ef-dep-b { white-space: nowrap }
#efDep td.ef-dep-b .btn + .btn, #efAvisos td.ef-dep-b .btn + .btn { margin-left: 4px }
#efDep thead th { white-space: normal; vertical-align: bottom }

.su-estr-b { width: 100%; margin-top: 10px }   /* ⚠️ produto estragado no depósito: o aviso do campo ao gestor (SQL 416, 30/10/2026) */
.su-estr { margin-top: 10px; padding: 10px 12px; border: 1.5px solid var(--s4, #c0392b); border-radius: 10px; display: grid; gap: 6px }
.su-estr-h { display: flex; align-items: center; justify-content: space-between; gap: 8px }

.sb-bnd-ck { display: inline-flex; gap: 6px; align-items: center; white-space: nowrap; cursor: pointer }   /* 🏷️ dados do ERAS que vieram no arquivo da BND (30/10/2026) */

#bndParecidos mark { background: #FCE9A6; color: inherit; padding: 0 1px; border-radius: 3px; font-weight: 800 }   /* 🔁 o dígito diferente entre a BND e o sistema (30/10/2026) */
#bndParecidos .sb-num { font-variant-numeric: tabular-nums; white-space: nowrap }

/* 🏷️ fazenda sem rastreabilidade (Parâmetros › Rastreabilidade): nada do SISBOV na tela */
body.sem-rastreio .so-rastreio{display:none!important}
.sb-campo[hidden]{display:none!important}
/* ⚙️ Parâmetros da Fazenda (30/10/2026, Welton: "está muito apertado"): cada quadro põe as colunas que cabem na largura dele (mínimo 170 px por
   campo), a data não vaza, e o quadro da Rastreabilidade ocupa a largura toda */
#fParam .fgrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
#fParam .fgrid .in{min-width:0;width:100%}
#fParam .sb-cartao{margin-top:16px}
#fParam .sb-grade{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}

/* 📸 Contagem do Rebanho (contagem.html, 30/10/2026): o editor em tela cheia, como no CountThings — os dados e as ferramentas à esquerda,
   a foto do drone à direita; no celular, um embaixo do outro */
.ct-jan{position:fixed;inset:0;z-index:72;background:var(--bg);display:flex;flex-direction:column}
.ct-topo{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--card,#fff)}
.ct-topo>b{font-size:16px}.ct-topo .ct-total{margin-left:auto;font-size:15px}.ct-topo .ct-total b{font-size:20px}
.ct-corpo{flex:1;min-height:0;display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr)}
.ct-lado{overflow:auto;padding:12px 16px 24px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.ct-lado .sec{margin:6px 0 0}
.ct-lado .fl{display:flex;flex-direction:column;gap:4px}
.ct-2{grid-template-columns:1fr 1fr!important;gap:8px}
.ct-lotes{display:flex;flex-wrap:wrap;gap:6px}
.ct-lote{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;cursor:pointer;background:#fff}
.ct-lote.on{border-color:var(--ok,#16a34a);background:#ecfdf3}.ct-lote small{color:var(--muted)}
.ct-fotos,.ct-ferr{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ct-ft{display:flex;flex-direction:column;align-items:flex-start;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font:inherit}
.ct-ft.on{border-color:#2563eb;box-shadow:0 0 0 2px #bfdbfe}.ct-ft small{color:var(--muted)}
.ct-conf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ct-conf>div{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff;display:flex;flex-direction:column}
.ct-conf small{color:var(--muted);font-size:12px}.ct-conf b{font-size:20px}.ct-conf span{font-size:12px;color:var(--muted)}
.ct-conf.al>div:last-child{border-color:#f59e0b;background:#fffbeb}
.ct-palco{position:relative;overflow:auto;padding:12px;display:flex;flex-direction:column;align-items:center;gap:10px;background:#1f2427}
.ct-palco canvas{touch-action:none;cursor:crosshair;border-radius:6px;max-width:100%}
.ct-palco .empty{color:#cbd5e1}
.ct-rev{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;color:#e5e7eb;font-size:14px}
.ct-rev .btn{color:var(--ink,#1f2427);min-width:40px;font-size:16px}.ct-rev .btn.ghost{color:#e5e7eb;border-color:#64748b}
.ct-mini{display:grid;gap:2px;width:min(260px,100%)}
.ct-mini button{border:0;border-radius:3px;background:#f8fafc;color:#334155;font:600 10px/1 system-ui;padding:5px 0;cursor:pointer}
.ct-mini button.feita{background:#86efac}.ct-mini button.atual{background:#fde047}
@media (max-width:900px){.ct-corpo{grid-template-columns:minmax(0,1fr);overflow:auto}.ct-lado{border-right:0;border-bottom:1px solid var(--line);overflow:visible}.ct-palco{overflow:visible}}
/* 🎥 o vídeo da porteira (contagem.html, 31/10/2026): o vídeo com a Linha de Contagem por cima; a lista dos cruzamentos rola */
.ct-vid{position:relative;max-width:100%}
.ct-vid video{display:block;max-width:100%;max-height:72vh;border-radius:6px;background:#000}
.ct-vid canvas{position:absolute;left:0;top:0;touch-action:none;cursor:crosshair}.ct-vid canvas.solto{pointer-events:none}
.ct-cruz{max-height:260px;overflow:auto}
.ct-lado>*{flex:none}
/* 📱 a Contagem no app (contagem.html?app): sem o menu do site; as duas formas de contar em botões grandes */
body.ct-app .side,body.ct-app .phead,body.ct-app .mtop{display:none!important}
body.ct-app .main{padding:12px 14px}
.ct-app-topo{display:flex;align-items:center;gap:10px;margin-bottom:12px}.ct-app-topo b{font-size:18px}
.ct-app-bts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.ct-app-bt{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 10px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;font:inherit;text-align:center}
.ct-app-bt i{font-style:normal;font-size:34px}.ct-app-bt b{font-size:16px}.ct-app-bt span{font-size:12.5px;color:var(--muted)}
.ct-conf.ct-conf-1{grid-template-columns:1fr}
/* 🔍 o zoom da foto da contagem (31/10/2026) */
.ct-zoom{display:flex;align-items:center;gap:6px;color:#e5e7eb;font-size:13px;flex-wrap:wrap;justify-content:center}
.ct-zoom .btn{color:var(--ink,#1f2427);min-width:38px;font-size:16px}.ct-zoom b{min-width:52px;text-align:center}.ct-zoom span{color:#94a3b8;font-size:12px}
/* 🧠 o treino do modelo da contagem (31/10/2026): a barra de quantas fotos revisadas já tem */
.ct-barra{height:10px;margin:0 16px;border-radius:99px;background:var(--line,#e2e6e4);overflow:hidden}.ct-barra i{display:block;height:100%;background:#20A44B;border-radius:99px}
/* 🗺️ Nova Rota no mapa (rota-trato.html, 31/10/2026) */
.mt-modo{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 8px}
.mt-mapa-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;font-size:13px}.mt-mapa-bar small{color:var(--muted)}
.mt-mapa-leg{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--muted)}.mt-mapa-leg i{display:inline-block;width:14px;height:14px;border-radius:3px;margin-left:8px}
.mt-mapa-leg .lv{background:#F6E7A8;border:1px solid #C9A227}.mt-mapa-leg .ls{background:#9CD3AE;border:1px solid #2E7D4F}.mt-mapa-leg .ld{background:#383E42}
.mt-mapa{overflow:auto;max-height:70vh;border:1px solid var(--line);border-radius:12px;background:#F4F1EA}.mt-mapa svg{display:block;height:auto;min-width:100%}
.mt-mapa .mm-p{cursor:pointer}.mt-mapa .mm-p path{fill:#FBF3D2;stroke:#C9A227;stroke-width:1.2}.mt-mapa .mm-p:hover path{fill:#F6E7A8}
.mt-mapa .mm-p.on path{fill:#D5ECDD;stroke:#2E7D4F;stroke-width:2}
.mt-mapa .mm-rota{fill:none;stroke:#7A2333;stroke-width:3;stroke-dasharray:10 7;stroke-linejoin:round;pointer-events:none}
.mt-mapa .mm-dep{fill:#383E42}
.mt-sob-mapa{margin-top:10px}
.mt-mapa .mm-lt{cursor:pointer}.mt-mapa .mm-lt rect{fill:#fff;stroke:#C9A227;stroke-width:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.mt-mapa .mm-lt text{font:700 14px 'Public Sans',sans-serif;fill:#26313A;text-anchor:middle;pointer-events:none}
.mt-mapa .mm-lt.on rect{fill:#2E7D4F;stroke:#1F5C39}.mt-mapa .mm-lt.on text{fill:#fff}.mt-mapa .mm-lt circle{fill:#fff}.mt-mapa .mm-lt.on .mm-o{fill:#2E7D4F;font:800 14px Archivo,sans-serif}
/* 🥣 Cadastros do Trato (trato-cadastros.html, 31/10/2026): as cinco notas numa linha; o confinamento em três colunas */
.tc-notas{grid-template-columns:repeat(5,minmax(0,1fr))}.tc-conf{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.tc-notas{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-conf{grid-template-columns:1fr}}
.mt-mapa .mm-volta{stroke:#7A2333;opacity:.45;stroke-dasharray:4 6}
.mt-mapa .mm-km{pointer-events:none}.mt-mapa .mm-km rect{fill:#fff;stroke:#7A2333;stroke-width:1.2;opacity:.92}.mt-mapa .mm-km text{font:700 12px 'Public Sans',sans-serif;fill:#7A2333;text-anchor:middle}
.mt-trechos{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px;font-size:13px}.mt-trechos span{background:var(--surface2,#F4F1EA);border-radius:8px;padding:3px 8px}
.mt-trechos .mt-tot{font-weight:700}.mt-trechos .mt-melhor{display:inline-flex;align-items:center;gap:8px;background:#FDF3D7}.mt-trechos .mt-ok{background:#E4F2E9;color:#1F5C39}
/* 🗺️ Todas as rotas no mapa (31/10/2026) */
.mt-todas{margin:10px 0 14px}.mt-leg-rota{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:3px 10px;font:600 12.5px 'Public Sans',sans-serif;color:var(--ink);cursor:pointer}.mt-leg-rota:hover{background:#EEF5F0}.mt-leg-rota i{margin:0!important;width:12px!important;height:12px!important;border-radius:50%!important}
.mt-mapa .mm-pasto{fill:var(--c,#E6E8EA);fill-opacity:.16;stroke:var(--c,#B0B7BB);stroke-width:1.5}.mt-mapa .mm-solto{fill:#E6E8EA;fill-opacity:.6;stroke:#B0B7BB}
.mt-mapa .mm-cor rect{fill:var(--c,#fff);stroke:#fff;stroke-width:2}.mt-mapa .mm-cor text{fill:#fff}.mt-mapa .mm-cor circle{fill:#fff}.mt-mapa .mm-cor .mm-o{fill:var(--c,#2E7D4F);font:800 14px Archivo,sans-serif}
.mt-mapa .mm-lt.mm-cor:not([style]) rect{fill:#fff;stroke:#B0B7BB}.mt-mapa .mm-lt.mm-cor:not([style]) text{fill:#5A646B}
.mt-mapa-leg .lo{background:#E6E8EA;border:1px solid #B0B7BB}
/* 🗺️ o mapa da Rota do Dia no app (suplementacao.html, 31/10/2026) */
.su-mapa{display:block;width:100%;height:auto;margin:6px 0;border:1px solid var(--line);border-radius:12px;background:#F4F1EA}
.su-mapa .sm-pasto{fill:#D5ECDD;stroke:#2E7D4F;stroke-width:1.2}
.su-mapa .sm-rota{fill:none;stroke:#7A5C1C;stroke-width:2.5;stroke-dasharray:8 5;stroke-linejoin:round}
.su-mapa .sm-dep{fill:#383E42}
.su-mapa .sm-lt rect{fill:#2E7D4F;stroke:#fff;stroke-width:2}.su-mapa .sm-lt text{font:700 13.5px 'Public Sans',sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}
.su-mapa .sm-lt circle{fill:#fff}.su-mapa .sm-lt .sm-o{fill:#2E7D4F;font:800 13.5px Archivo,sans-serif}
.su-mapa .sm-lt[data-abrir]{cursor:pointer}
.su-mapa .sm-lt.aqui rect{fill:#E08A1E}.su-mapa .sm-lt.aqui .sm-o{fill:#E08A1E}
.su-mapa .sm-lt.feito rect{fill:#B0B7BB}.su-mapa .sm-lt.feito .sm-o{fill:#6B757C}
/* 🛰️ satélite de fundo nos mapas da rota (Montar o Trato, Ver as Rotas, Rota do Dia) e o nome do pasto abaixo do ícone (31/10/2026) */
.mt-mapa,.su-mapa{background:#2A3526}.mt-mapa .sat,.su-mapa .sat{pointer-events:none}
.mt-mapa .mm-p path{fill:#FBF3D2;fill-opacity:.18;stroke:#F2C94C;stroke-width:1.8}.mt-mapa .mm-p:hover path{fill:#F6E7A8;fill-opacity:.38}
.mt-mapa .mm-p.on path{fill:#6FCF97;fill-opacity:.32;stroke:#6FCF97;stroke-width:2.6}
.mt-mapa .mm-pasto{fill-opacity:.26;stroke-width:2.2}.mt-mapa .mm-solto{fill-opacity:.28;stroke:#E6E8EA}
.mt-mapa .mm-rota,.su-mapa .sm-rota{filter:drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 1px #fff)}
.mt-mapa .mm-nome,.su-mapa .sm-nome{font:800 14px 'Public Sans',sans-serif;fill:#fff;stroke:#1C2418;stroke-width:3.5px;stroke-linejoin:round;paint-order:stroke;text-anchor:middle;pointer-events:none}
.su-mapa .sm-nome{font-size:12px}
.su-mapa .sm-pasto{fill:#6FCF97;fill-opacity:.26;stroke:#9CD3AE;stroke-width:1.6}
.mt-mapa-bar .mt-cred{margin-left:auto;font-size:10.5px}
.mt-mapa-leg .lv{background:rgba(242,201,76,.35);border:1.5px solid #F2C94C}.mt-mapa-leg .ls{background:rgba(111,207,151,.45);border:1.5px solid #2E7D4F}

/* 🛰️ satélite também nas Rotas Sugeridas e no mapinha da rota de Bebedouros, Pragas, Rodeio (31/10/2026): fundo escuro, linhas com brilho, nomes com contorno */
.ro-mapa,.rc-mapa{background:#2A3526}.ro-mapa .sat,.rc-mapa .sat{pointer-events:none}
.ro-mapa polyline,.rc-mapa polyline{filter:drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 1px #fff)}
.ro-mapa .ro-nome{fill:#fff;stroke:#1C2418;stroke-width:3px;font-size:11px}
.rc-mapa .rc-nome{font:700 10.5px 'Public Sans',sans-serif;fill:#fff;stroke:#1C2418;stroke-width:3px;stroke-linejoin:round;paint-order:stroke;pointer-events:none}
/* 🥣 carga do vagão na Nova Rota (31/10/2026): a barra enche na ordem tocada; cheio encerra a rota; o lote que não cabe fica apagado */
.mt-vagao{margin:8px 0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#F7FAF8}
.mt-vg-t{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13.5px}.mt-vg-t span{font-weight:800;font-variant-numeric:tabular-nums}
.mt-vg-b{height:12px;border-radius:6px;background:#E3E8E5;overflow:hidden;margin:6px 0}.mt-vg-b i{display:block;height:100%;background:#2E7D4F;border-radius:6px}
.mt-vagao.cheio{border-color:#2E7D4F;background:#E4F2E9}.mt-vagao.passou .mt-vg-b i{background:#B07D0A}
.mt-vg-fim{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:700;color:#1F5C39;font-size:13.5px}
.mt-escolha li.fora{opacity:.45;cursor:not-allowed}
.mt-mapa .mm-p.fora path{fill:#9AA3A8;fill-opacity:.15;stroke:#C8CDD0;stroke-dasharray:4 3;cursor:not-allowed}
.mt-mapa .mm-lt.fora{opacity:.5;cursor:not-allowed}
/* ⚡ Montar Todas pelo Vagão (31/10/2026): a prévia das rotas, cada uma com a cor do mapa */
.mt-auto{margin:8px 0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#F7FAF8}
.mt-auto-l{list-style:none;margin:6px 0;padding:0}.mt-auto-l li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}
.mt-auto-l li>i{flex:0 0 14px;height:14px;border-radius:3px;margin-top:3px}.mt-auto-l small{display:block;color:var(--muted);margin-top:2px;line-height:1.4}
/* 🪰 mosca-dos-chifres pela observação de 1 minuto no Rodeio (31/10/2026) */
.ro-mosca .sec small{font-weight:600;margin-left:6px}.ro-mosca-t{display:flex;align-items:center;gap:10px;margin:8px 0}.ro-mosca-t b{font:800 18px Archivo,sans-serif;font-variant-numeric:tabular-nums}
.ro-mosca-c{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:4px 14px}.ro-mosca-n>small{display:block;font-weight:700;margin-bottom:4px;color:var(--muted)}
/* 📏 faixas de suplemento da Embrapa (M14, 31/10/2026): o mês com GMD otimista para o consumo na seca */
.nu-est td.nu-acima{box-shadow:inset 0 0 0 2px #B07D0A}.nu-est .nu-aviso{display:block;margin-top:3px;font-size:11px;font-weight:700;color:#8A5A00;line-height:1.2}
/* 📊 escore das matrizes no Rodeio (01/11/2026): cada toque soma uma vaca; a contagem fica no canto do botão */
.ap .ro-esc-n button{position:relative}.ap .ro-esc-n button em{position:absolute;top:4px;right:6px;font:800 13px Archivo,sans-serif;font-style:normal;color:var(--ink)}
.ro-escore-r{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.ro-escore-r>div{border:1px solid var(--line);border-radius:12px;padding:8px 10px}
.ro-escore-r small{display:block;color:var(--muted);font-weight:700;font-size:12px}.ro-escore-r b{display:block;font:800 22px Archivo,sans-serif;white-space:nowrap}.ro-escore-r span{font-size:11.5px;color:var(--muted)}
.ro-escore-bt{display:flex;gap:8px;flex-wrap:wrap}
.cd-indices tr.cd-fora td{background:#FBF1F2}
/* 📋 Quadro da Estação de Monta (IATF, 01/11/2026): grupos de colunas como na aba IATF da planilha; data prevista em itálico */
.iq-tbl th.iq-grupo{text-align:center;border-bottom:2px solid var(--line);background:var(--bg2,#f4f6f5)}.iq-tbl .iq-ini{border-left:2px solid var(--line)}
.iq-tbl i.iq-prev{color:var(--muted);font-style:italic}.iq-tbl td,.iq-tbl th{white-space:nowrap}
.rp-tou-datas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:6px 0}.rp-ret{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin:6px 0}
.rp-prazos{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:4px 0}
/* 🎯 novilhas para a estação de monta (Cria e Desmama, 01/11/2026) */
.cd-nv-cfg{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:6px 0 10px}.cd-novilhas tr.cd-fora td{background:#FBF1F2}
/* 🦷 Dentição na Recepção (M26, 01/11/2026) */
.rc-dent th:first-child{width:26px}.rc-dent tbody th{font-size:15px}
/* 🌾 Diferimento da Seca (M18, 01/11/2026) */
.df-topo{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.df-topo .fl{min-width:150px;margin:0}.df-mexeu{color:#b26a00;font-weight:700;font-size:13px;align-self:center}
.df-cfg{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0 6px;align-items:end}.df-cfg .fl{margin:0}
.df-turmas .df-data{width:142px;min-width:0;padding:5px 6px;font-size:13px}.df-turmas thead th{white-space:normal;line-height:1.2}.df-turmas th,.df-turmas td{padding-left:6px;padding-right:6px}.df-pastos .df-turma{min-width:130px;padding:6px 8px}.df-pastos tr.df-on td{background:rgba(46,125,50,.06)}
.df-busca{margin:0 0 8px;max-width:360px}
@media print{.df-turmas .df-data,.df-pastos .df-turma{border:0;background:none;padding:0;appearance:none}}
/* 🌱 Estágio de Degradação (M19, 01/11/2026) */
.ap .mj-dg{display:grid;grid-template-columns:1fr 150px;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line,#e3e6e6)}.ap .mj-dg .mv-op{margin:0}
.ap .mj-dg-t b{display:block;font-size:15px}.ap .mj-dg-t small{color:var(--ink2);font-size:12.5px}
.ap .mj-dg-res{margin:10px 0;border:2px solid var(--c);border-left-width:8px;border-radius:12px;padding:10px 12px;background:color-mix(in srgb,var(--c) 8%,transparent)}
.ap .mj-dg-res ul{margin:4px 0 4px 18px;padding:0}.ap .mj-dg-res li{margin:2px 0}.ap .mj-dg-res small{color:var(--ink2)}
.ap .mj-dg-ed{font:800 20px/1.2 Archivo,sans-serif;color:var(--c);margin-bottom:4px}.ap .mj-dg-ed small{font:600 13px 'Public Sans',sans-serif;color:var(--ink2)}
.ap .mj-dg-cont{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px}.ap .mj-dg-cont i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:-1px}
/* 🪱 OPG e Vermifugação (M10, 01/11/2026) */
.op-pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);white-space:nowrap}
.op-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end}.op-grid .fl{margin:0}
.op-form .fl{margin-top:8px}.op-cls{border-left:6px solid var(--c)}
.op-meses{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end;padding:6px 2px}.op-mes{text-align:center}.op-mes b{display:block;font-size:12px;margin-top:3px}.op-mes small{color:var(--ink2);font-size:11.5px}
.op-barra{height:110px;display:flex;align-items:flex-end;justify-content:center;background:var(--bg2,#f2f4f4);border-radius:8px}.op-barra i{display:block;width:60%;border-radius:4px 4px 0 0}
.op-estr .op-barra{outline:2px dashed #7a8f2e;outline-offset:-2px}
.op-cal{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.op-cal small{flex-basis:100%;color:var(--ink2)}
/* ☠️ Plantas tóxicas (M12, 01/11/2026) */
.pt-fichas{max-width:560px}.pt-fichas .fb{max-height:82vh;overflow:auto}.pt-fichas h2{margin:0 0 10px}
.pt-ficha{border:1.5px solid var(--line,#e3e6e6);border-left:6px solid #C62828;border-radius:12px;padding:10px 12px;margin:0 0 10px}.pt-ficha.on{box-shadow:0 0 0 3px rgba(198,40,40,.25)}
.pt-ficha b{font-size:16px}.pt-ficha small{display:block;color:var(--ink2);margin-bottom:6px}.pt-ficha div{font-size:14px;margin:4px 0}.pt-ficha div span{display:block;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink2)}
.pt-ficha .pt-dose{color:#C62828;font-weight:700}.pt-ver{margin-left:8px;vertical-align:middle}
/* 🕷️ Teleóginas no Rodeio (M8, 01/11/2026) */
.ap .ro-tel-l{display:grid;grid-template-columns:1.4fr .8fr auto 40px;gap:8px;align-items:center;margin:6px 0}.ap .ro-tel-l b{font-size:12.5px;white-space:nowrap}
/* 🕷️ Programa Carrapato (M8, 01/11/2026) */
.ca-prog{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:6px 0 12px}.ca-prog .fl{margin:0}.ca-prog small{flex-basis:100%}.ca-chk{display:flex;align-items:center;gap:6px;font-weight:600}
.ca-bases{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:6px 0 10px}.ca-bases .fl{margin:0}.ca-bases .ca-ok input{border-color:#2E9A4F;background:rgba(46,154,79,.06)}.ca-bases .ca-ruim input{border-color:#C62828}
.ca-lotes{display:flex;flex-wrap:wrap;gap:6px 14px;margin:4px 0 10px}.ca-lt{display:flex;align-items:center;gap:5px;font-size:14px}.ca-bt{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
/* 🗺️ Caracterização da Fazenda (01/11/2026) */
.cz-gerado{margin:-4px 0 10px}.cz-vazio{padding:22px}.cz-vazio p{max-width:760px}
.cz-g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.cz-nome{font:800 20px/1.25 Archivo,sans-serif;margin:2px 0 6px}.cz-nome small{font-weight:600;color:var(--ink2);font-size:14px}
.cz-t td:first-child{color:var(--ink2);width:42%;font-size:13.5px}.cz-t td{vertical-align:top;padding:6px 8px}.cz-comp{font-size:12.5px;color:var(--ink2)}
.cz-svg{width:100%;min-width:320px;height:auto;display:block}.cz-x{font:600 10px 'Public Sans',sans-serif;fill:var(--ink2)}.cz-linha{stroke:#1d2b33;stroke-dasharray:4 3;stroke-width:1.2}
.cz-dot{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--c);margin:0 4px 0 10px;vertical-align:-1px}.cz-leg{display:flex;flex-wrap:wrap;gap:4px 6px;font-size:12.5px;margin:6px 0}
.cz-rel>div{display:grid;grid-template-columns:150px 1fr 54px;gap:8px;align-items:center;margin:5px 0;font-size:13.5px}.cz-rel small{color:var(--ink2)}.cz-rel i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--c) var(--w),var(--bg2,#eef1f1) var(--w))}.cz-rel b{text-align:right}
.cz-pa{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.cz-pa>div{border:1.5px solid var(--line,#e3e6e6);border-left:5px solid #E8A317;border-radius:10px;padding:8px 10px}.cz-pa b{display:block}.cz-pa span{font-size:13.5px;color:var(--ink2)}
.cz-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.cz-chips span{border:1.5px solid var(--line,#dde2e2);border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600}.cz-chips .tox{border-color:#C62828;color:#9b1c1c}.cz-chips .faz{border-color:#2E9A4F}.cz-chips small{color:var(--ink2);font-weight:500}
.cz-fontes{margin:6px 0 20px;line-height:1.5}
@media print{.cz-svg{min-width:0}}
/* 🗺️ Caracterização: o texto alinhado com o título do quadro (a margem de 18 px do cabeçalho em tudo o que está dentro) */
.cz-pg .card:not(.kpi){padding:0 18px 16px}.cz-pg .card:not(.kpi)>.cardh{margin:0 -18px}
.cz-pg .card .sub2{margin-top:10px}.cz-pg .card p{margin:0 0 10px;line-height:1.5}.cz-pg .cz-t{margin:0}.cz-pg .cz-t td:first-child{padding-left:0}
.cz-pg .cz-g2 .sec{margin:4px 0 6px}.cz-pg .cz-g2+.sub2{border-top:1px solid var(--line);padding-top:10px}
.cz-grade{stroke:var(--line,#e3e6e6);stroke-width:1}
/* a tabela do uso da terra e a das normais cabem no quadro: cabeçalho quebra em duas linhas, números menores */
.cz-pg .cz-uso,.cz-pg .cz-mes{width:100%}.cz-pg .cz-uso th,.cz-pg .cz-mes th{white-space:normal;line-height:1.2;font-size:11px;padding:6px 5px;vertical-align:bottom}.cz-pg .cz-uso td,.cz-pg .cz-mes td{padding:6px 5px;font-size:13px}
.cz-pg .cz-rel>div{grid-template-columns:minmax(175px,auto) 1fr 48px}.cz-pg .cz-rel span{white-space:nowrap}
/* 🏙️ Região num raio de 300 km */
.cz-reg-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:2px 0 8px}.cz-reg-k>div{background:var(--bg2,#f3f5f5);border-radius:10px;padding:10px 12px}
.cz-reg-k small{display:block;color:var(--ink2);font-size:12px}.cz-reg-k b{display:block;font:800 19px/1.25 Archivo,sans-serif}.cz-reg-k span{font-size:12px;color:var(--ink2)}
.cz-pg .cz-reg .sec{margin:12px 0 6px}.cz-pg .cz-reg .sec small{text-transform:none;letter-spacing:0;font-weight:500}.cz-pg .cz-reg .btn{margin-top:8px}
.cz-sif{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 8px}.cz-sif small{flex-basis:100%;margin-top:2px}
/* 🏭 Abate e Frigoríficos (SIF) · sif.html (01/11/2026) */
.sf-pg .card:not(.kpi){padding:0 18px 16px}.sf-pg .card:not(.kpi)>.cardh{margin:0 -18px}.sf-pg .card .sub2{margin-top:10px;line-height:1.5}
.sf-pg .dr-filtros.card{padding:14px 16px}.sf-pg .sec{margin:14px 0 6px}.sf-pg .sec small{text-transform:none;letter-spacing:0;font-weight:500}
.sf-reg{margin:-4px 0 12px}.sf-fonte{margin:6px 0 20px}.sf-vazio{padding:22px!important}.sf-vazio h3{margin:16px 0 4px}
.sf-bts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.sf-sobe{color:#1f7a3f;font-weight:600;white-space:nowrap}.sf-desce{color:#b42318;font-weight:600;white-space:nowrap}
.sf-pg .dr-txt-vermelho{color:#b42318}.sf-pg .dr-txt-verde{color:#1f7a3f}
.sf-pg .note.ok{background:#e6f4ea;color:var(--ink)}.sf-pg .note.erro{background:#fdecea;color:var(--ink)}.sf-pg .note{margin:10px 0 0}
.sf-kpi-txt{font-size:19px!important;white-space:normal!important;line-height:1.25!important}
.sf-tab{width:100%}.sf-tab th{white-space:nowrap}.sf-tab td{vertical-align:top}.sf-tab td small{color:var(--ink2)}
.sf-fazer{min-width:200px;max-width:300px;font-size:12.5px;color:var(--ink2)}.sf-hist{font-size:12px;min-width:130px;max-width:170px}
.sf-ach th,.sf-cond th{white-space:normal;vertical-align:bottom}
.sf-frig td:first-child{min-width:200px}.sf-frig details summary{cursor:pointer;font-size:12.5px;color:var(--ink2)}.sf-contato{min-width:150px;max-width:200px}.sf-contato .sub2{word-break:break-all;margin-top:2px!important}.sf-frig td:nth-child(3){min-width:110px}
.sf-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.sf-chips span{border:1.5px solid var(--line,#dde2e2);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;white-space:nowrap}
.sf-lst>div{display:grid;grid-template-columns:minmax(150px,1.3fr) 1fr 80px 52px;gap:8px;align-items:center;margin:6px 0;font-size:13.5px}.sf-lst i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,#2f7d4a var(--w),var(--bg2,#eef1f1) var(--w))}
.sf-lst b{text-align:right}.sf-lst small{color:var(--ink2);text-align:right}
.sf-passos{margin:12px 0 4px 18px;padding:0;line-height:1.6}.sf-arqs td{vertical-align:middle}
.sf-andar{display:grid;grid-template-columns:1fr minmax(120px,240px) 48px;gap:10px;align-items:center;background:var(--bg2,#f3f5f5);border-radius:10px;padding:10px 12px;margin:8px 0;font-size:13.5px}
.sf-andar i{display:block;height:10px;border-radius:5px;background:linear-gradient(90deg,#2f7d4a var(--w),#dfe5e5 var(--w))}.sf-andar b{text-align:right}
@media (max-width:700px){.sf-lst>div{grid-template-columns:1fr 70px 46px}.sf-lst i{grid-column:1/-1;grid-row:2}.sf-andar{grid-template-columns:1fr 48px}.sf-andar i{grid-column:1/-1}}
/* 🥣 Comparar Suplementos · comparar-suplementos.html (M15, 01/11/2026): campos da mesma linha na mesma altura, a unidade dentro do campo */
.cs-pg .card:not(.kpi){padding:0 18px 16px}.cs-pg .card:not(.kpi)>.cardh{margin:0 -18px}.cs-pg .card .sub2{margin-top:10px;line-height:1.5}
.cs-pg .note.ok{background:#e6f4ea;color:var(--ink)}.cs-pg .note.warn{color:var(--ink)}
.cs-p{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:12px 14px;align-items:start}
.cs-p .fl{display:grid;grid-template-rows:18px 40px auto;row-gap:6px}.cs-p .fl>span:first-child{line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-in{position:relative;display:block}.cs-in .in{width:100%;height:40px;margin:0;box-sizing:border-box;padding-right:56px}
.cs-in i{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:var(--ink2);pointer-events:none}
.cs-p small.sub2{margin:0!important;font-size:11.5px;line-height:1.3}
.cs-ops,.cs-res{width:100%}.cs-ops th,.cs-res th{white-space:normal;line-height:1.2;vertical-align:bottom;font-size:11px}.cs-ops td,.cs-res td{white-space:nowrap}
.cs-ops .cs-n{width:92px;height:36px;margin:0;text-align:center}.cs-ops td:last-child{white-space:normal;font-size:12.5px;min-width:180px}
.cs-res th,.cs-res td{padding:8px 5px;font-size:12.5px}.cs-res td:nth-last-child(-n+2){white-space:normal;min-width:84px}.cs-res th{font-size:10.5px}
.cs-off td{opacity:.55}.cs-res tr.cs-base td{background:var(--bg2,#f3f5f5)}.cs-res tr.cs-top td{background:#e6f4ea}.cs-pos{color:#1f7a3f;font-weight:700}
/* 🌱 Carne Baixo Carbono · carne-baixo-carbono.html (M27, 01/11/2026) */
.cbc-pg .card:not(.kpi){padding:0 18px 16px}.cbc-pg .card:not(.kpi)>.cardh{margin:0 -18px}.cbc-pg .card .sub2{margin-top:6px;line-height:1.45}
.cbc-pg .dr-filtros.card{padding:14px 16px}.cbc-pg .note.ok{background:#e6f4ea;color:var(--ink)}
.cbc-t{width:100%}.cbc-pg .tbl.cbc-t td,.cbc-pg .tbl.cbc-t th{vertical-align:top;text-align:left}.cbc-id{width:44px}.cbc-t td:nth-child(2){min-width:240px;max-width:340px}.cbc-sit{white-space:nowrap;width:150px}.cbc-ev{min-width:420px}
.cbc-pg .tbl.cbc-lotes td:first-child,.cbc-pg .tbl.cbc-lotes th:first-child,.cbc-pg .tbl.cbc-lotes td:last-child,.cbc-pg .tbl.cbc-lotes th:last-child{text-align:left}
.cbc-st{display:inline-block;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:700;white-space:nowrap;background:var(--bg2,#eef1f1)}
.cbc-atende{background:#e6f4ea;color:#1f6b38}.cbc-nao_atende{background:#fdecea;color:#9b1c1c}.cbc-pendente{background:#fff4dc;color:#7a5a00}.cbc-nao_se_aplica{background:var(--bg2,#eef1f1);color:var(--ink2)}
.cbc-ok{color:#1f7a3f}.cbc-ruim{color:#b42318;font-weight:700}.cbc-prova{font-style:italic}.cbc-dica{margin:0 0 6px!important}
.cbc-ap{display:grid;grid-template-columns:160px minmax(200px,1fr) auto;gap:8px;align-items:center}.cbc-ap .in{height:38px;margin:0;box-sizing:border-box;width:100%;min-width:0}.cbc-pg .tbl .cbc-ap input.in{max-width:none;text-align:left}.cbc-ap .btn{height:38px}
.cbc-lotes{width:100%}.cbc-lotes td:last-child{min-width:240px}
.cbc-metas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:4px 0 6px}.cbc-metas>div{background:var(--bg2,#f3f5f5);border-radius:10px;padding:10px 12px}.cbc-metas b{display:block;margin-bottom:2px}.cbc-metas span{font-size:13px;color:var(--ink2)}
.cbc-soprint{display:none}
@media print{.cbc-soprint{display:block}}
@media (max-width:700px){.cbc-ap{grid-template-columns:1fr}.cbc-ev{min-width:240px}}

/* 🥄 Leitura de Cocho nos Cadastros do Trato: os cartões do Montar o Trato (01/11/2026) */
.rt-notas.tc-notas{padding:4px 0 12px}
/* 🔎 Conferência das Rotas (Montar o Trato, 01/11/2026) */
.mt-confere{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;background:#FBF0D3;border-radius:10px;padding:8px 12px;margin:8px 0;font-size:13.5px}
.mt-conferencia{border-radius:10px;padding:10px 14px;margin:10px 0;font-size:14px}.mt-conferencia.ok{background:#E4F2E9}.mt-conferencia.falta{background:#FBF0D3}
/* 🗑️ SISBOV: excluir comunicado não enviado e a BND mais recente à vista (01/11/2026) */
.sb-guarda{font-size:12px;color:var(--ink2);white-space:nowrap}.sb-ok{color:#1f7a3f;font-weight:700}
.sb-bnd-ant{margin-top:8px}.sb-bnd-ant summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--ink2);padding:4px 0}
/* 🚜 o vagão de cada dieta na rota inteligente (01/11/2026) */
.mt-otm-vag{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 14px;align-items:end;background:var(--bg2,#f3f5f5);border-radius:10px;padding:10px 12px;margin:8px 0}
.mt-otm-vag>b,.mt-otm-vag>small{grid-column:1/-1}.mt-otm-vag .fl{margin:0}.mt-otm-vag .in{height:40px;margin:0}
.mu-tag-premix{border:1px solid var(--line);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;color:var(--ink2);white-space:nowrap}
.mu-tag-vagao{border:1px solid #BFD8C6;background:#F2F8F3;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;color:#1f5f38;white-space:nowrap}.mu-tag-conferir{border:1px solid #F0C7BF;background:#FDF1EF;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;color:#A33A2A;white-space:nowrap}
.mu-batidas tr.mu-bat-grupo td{background:var(--surface2,#EEF2F1);font-weight:800;text-align:left!important;font-size:12.5px;color:var(--ink)}
.rt-vag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;background:var(--bg2,#f3f5f5);border-radius:10px;padding:8px 12px;margin:8px 16px;font-size:13.5px}
.rt-vag.parado{background:#FBE3E0}.rt-vag .rt-vag-sel{height:36px;margin:0;max-width:320px}

/* 🔓 editar/excluir a entrada com a liberação do gestor (SQL 432, 02/11/2026) */
.ep-fundo{position:fixed;inset:0;background:rgba(15,30,38,.45);display:flex;align-items:flex-start;justify-content:center;padding:8vh 16px;z-index:80;overflow:auto}
.ep-jan{width:min(480px,100%);padding:16px 18px;display:grid;gap:10px}.ep-jan h3{margin:0}.ep-bts{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.ep-painel{padding:12px 16px;margin-bottom:12px}.ep-painel h3{margin:0 0 8px;font-size:15px;display:inline}.ep-pend{border-left:5px solid #D9A82E;background:#FFF8E1}
.ep-ped{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}.ep-ped:first-of-type{border-top:0}
.ep-acoes{display:inline-flex;gap:4px}.ep-chip{font-size:12px;font-weight:700;color:#7a5a00;white-space:nowrap}.ep-tbl td{white-space:normal}
/* A− e A+ no topo do app (letra-app.js, 02/11/2026): no celular estreito o topo aperta para caber sem passar da tela */
@media(max-width:480px){#telaApp .ap-row{gap:3px}#telaApp .ap-row button,#telaApp .ap-row a{min-width:34px;padding:0 5px}#telaApp .ap-row [data-letra]{min-width:28px;padding:0 2px}#telaApp .ap-row>img{width:26px;height:26px}}
/* 🌽 Ensilagem (03/11/2026): dois campos lado a lado (toneladas e área, MS e partícula, o laudo) */
.ap .en-dois{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:6px 0}
/* ⚡ Raios na Caracterização (03/11/2026) */
.cz-raios-f{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:4px 0 10px}.cz-raios-f .fld{display:flex;flex-direction:column;gap:4px}.cz-raios-f .fld span{font-size:12.5px;color:var(--ink2)}
.cz-raios-t{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:6px}.cz-raios-t .tot td{font-weight:700}
#czRaios .cardh{display:flex;flex-wrap:wrap;align-items:center;gap:8px}#czRaios .cardh small{flex:1 1 200px}
/* 🌽 Ensilagem no campo: cargas, custos e resultado (03/11/2026) */
.ap .en-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:8px;margin-bottom:8px}.ap .en-kpis>div{background:var(--bg2,#f3f5f5);border-radius:10px;padding:8px 10px;min-width:0}
.ap .en-kpis small{display:block;font-size:11.5px;color:var(--ink2)}.ap .en-kpis b{display:block;font:800 15px/1.25 Archivo,sans-serif;overflow-wrap:anywhere}
.ap .en-t{font-size:13px}.ap .en-t td,.ap .en-t th{padding:6px 8px}.ap .en-t .tot td{font-weight:700}
.ap .en-liq{margin:6px 0 4px}.ap .en-enchendo .mv-nota{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ap .en-acts{margin-bottom:10px}.ap .en-res-k{margin-bottom:12px}.ap .en-tal small{opacity:.75;margin-left:4px}
@media print{.ap .noprint{display:none!important}}

/* 📥 Importar o Manej'Us em Excel (03/11/2026) */
.ix-pg .card { margin-bottom: 14px; padding-bottom: 14px; }
/* o conteúdo do quadro no mesmo recuo do título (18px, o .cardh): nada encostado na borda (03/11/2026, Welton: "Desalinhado") */
.ix-pg .card > :not(.cardh):not(.scroll) { margin-left: 18px; margin-right: 18px; }
.ix-pg .card > .scroll { padding: 0 18px; }
.ix-pg .card.kpi { padding-bottom: 0; }
.ix-txt { font-size: 13.5px; color: var(--ink2, #5a6470); margin: 6px 0 10px; line-height: 1.5; }
.ix-prog { font-weight: 600; margin-top: 6px; }
.ix-kpis { margin-bottom: 14px; }
.ix-tab td, .ix-tab th { text-align: center; }
.ix-tab td.ix-nome { text-align: left; font-weight: 600; }
.ix-tab select.in { min-width: 220px; max-width: 100%; }
.ix-tot td { font-weight: 700; background: var(--bg2, #f4f6f7); }
.ix-dois { display: grid; grid-template-columns: minmax(240px, 340px) 1fr; gap: 14px; align-items: end; }
@media (max-width: 760px) { .ix-dois { grid-template-columns: 1fr; } }
.ix-lista { margin: 6px 0 4px 18px; font-size: 13.5px; line-height: 1.6; }
.ix-av li { color: #8a5a00; }
.ix-chk { display: block; margin-top: 6px; font-weight: 600; }
.ix-log { font-family: ui-monospace, Menlo, monospace; font-size: 13px; line-height: 1.7; white-space: pre-wrap; }
.ix-log .ix-ok { color: #1d7a3a; } .ix-log .ix-erro { color: #b3261e; }
