/* Praga Certa · tema: casca (barra superior, trilho lateral, gavetas), telas de mapa e componentes.
   Paleta da Agro São João (extraída da logo oficial, skills/geracao-logo-grupos-asj/assets/logo_asj_bola_sem_texto.png):
   verde escuro #003020, laranja institucional #f06000, cinza claro #f4f4f2 e branco. Tons intermediários são misturas
   dessas cores. Verde/amarelo/vermelho de severidade são escala de dado (aceitação/controle/dano), não marca. */
:root{
  --asj-verde:#003020;--asj-laranja:#f06000;--asj-cinza:#f4f4f2;--branco:#fff;
  --verde-claro:color-mix(in srgb,var(--asj-verde) 10%,#fff);--verde-medio:color-mix(in srgb,var(--asj-verde) 70%,#fff);
  --laranja-claro:color-mix(in srgb,var(--asj-laranja) 12%,#fff);--laranja-escuro:color-mix(in srgb,var(--asj-laranja) 80%,#000);
  --verde:var(--asj-verde);--verde2:var(--verde-medio);--areia:var(--asj-cinza);--fundo:#fff;
  --tinta:#1e2622;--cinza:#5f6965;--linha:#e2e4df;--linha2:#eceeea;
  --ok:#2f9e44;--controle:#f2b705;--dano:#e03131;--sem:#9aa19d;--foco:var(--asj-laranja);
  --topo-h:60px;--trilho-w:60px;--fonte:"Noto Sans","Segoe UI",Roboto,"Liberation Sans",Arial,sans-serif;
  --sombra:0 1px 2px rgba(0,30,20,.06),0 2px 8px rgba(0,30,20,.06);
}
[hidden]{display:none!important}
body{font-family:var(--fonte);font-size:14px;background:var(--asj-cinza);color:var(--tinta)}
a{color:var(--asj-verde)}
.ic{width:22px;height:22px;flex:0 0 auto;display:inline-block;vertical-align:middle}

/* ---------------------------------------------------------------- barra superior */
.topo{position:fixed;inset:0 0 auto 0;height:var(--topo-h);z-index:30;background:#fff;color:var(--tinta);border-bottom:1px solid var(--linha);
  display:flex;flex-wrap:nowrap;align-items:center;gap:12px;padding:0 16px 0 10px}
.topo-ic{background:none;border:0;color:#3b4541;width:40px;height:40px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;flex:0 0 auto}
.topo-ic:hover{background:var(--asj-cinza)}
.topo .menu-btn{display:none}
.marca{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--asj-verde);flex:0 0 auto;font-weight:600}
.marca img{display:block}
.marca-txt{display:flex;flex-direction:column;line-height:1.05}.marca-txt b{font-size:15px;color:var(--asj-verde)}.marca-txt small{font-size:12px;color:var(--asj-laranja);font-weight:600}
.selo{font-size:11px;font-weight:700;background:var(--laranja-claro);color:var(--laranja-escuro);border:1px solid color-mix(in srgb,var(--asj-laranja) 35%,#fff);border-radius:999px;padding:2px 9px;white-space:nowrap}
.pilula{flex-direction:row;align-items:center;gap:8px;border:1px solid var(--linha);border-radius:24px;padding:4px 12px 4px 12px;height:46px;color:#3b4541;background:#fff;min-width:0}
.pilula span{display:flex;flex-direction:column;min-width:0}
.pilula small{font-size:11.5px;color:var(--cinza);line-height:1.1}
.pilula select{border:0;padding:0 18px 0 0;min-height:0;height:22px;font-weight:700;font-size:14px;background:transparent;color:var(--tinta);max-width:220px;cursor:pointer}
.pil-fazenda{margin-left:14px}
.espaco{flex:1}
.busca-topo{flex-direction:row;align-items:center;gap:8px;background:var(--asj-cinza);border-radius:22px;padding:0 14px;height:40px;width:200px;color:var(--cinza)}
.busca-topo input{border:0;background:transparent;min-height:0;height:38px;padding:0;width:100%;font-size:14px}
.avatar{width:42px;height:42px;border-radius:50%;border:1px solid var(--linha);background:var(--asj-cinza);color:var(--tinta);font-weight:600;font-size:16px;cursor:pointer;position:relative;flex:0 0 auto}
.avatar::after{content:"";position:absolute;right:1px;bottom:1px;width:9px;height:9px;border-radius:50%;background:var(--asj-laranja);border:2px solid #fff}
.menu-conta{position:absolute;right:12px;top:calc(var(--topo-h) - 4px);background:#fff;border:1px solid var(--linha);border-radius:10px;box-shadow:var(--sombra);padding:12px;display:flex;flex-direction:column;gap:6px;min-width:220px}
.menu-conta small{color:var(--cinza)}.menu-conta a,.menu-conta .link{color:var(--tinta);text-decoration:none;padding:8px 6px;border-radius:6px;background:none;border:0;text-align:left;font:inherit;cursor:pointer}
.menu-conta a:hover,.menu-conta .link:hover{background:var(--asj-cinza)}

/* ---------------------------------------------------------------- trilho lateral (navegação principal) */
.trilho{position:fixed;top:var(--topo-h);bottom:0;left:0;width:var(--trilho-w);z-index:25;background:var(--asj-verde);display:flex;flex-direction:column;align-items:stretch;padding:14px 0 0;overflow:hidden auto}
.trilho a,.trilho .trilho-exp{color:color-mix(in srgb,#fff 78%,var(--asj-verde));display:flex;align-items:center;gap:14px;height:46px;padding:0 19px;text-decoration:none;position:relative;white-space:nowrap;border:0;background:none;font:inherit;cursor:pointer}
.trilho a span,.trilho .trilho-exp span{display:none;font-size:14px}
.trilho a:hover{background:rgba(255,255,255,.07);color:#fff}
.trilho a[aria-current="page"]{background:rgba(255,255,255,.12);color:#fff}
.trilho a[aria-current="page"]::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--asj-laranja)}
.trilho .trilho-exp{margin-top:auto;flex-direction:column;justify-content:center;gap:2px;height:58px;border-top:1px solid rgba(255,255,255,.08);padding:0}
.trilho .trilho-exp small{font-size:8.5px;letter-spacing:.06em;font-weight:700}
body.trilho-aberto{--trilho-w:236px}
body.trilho-aberto .trilho a span{display:inline}
body.trilho-aberto .trilho .trilho-exp{flex-direction:row;justify-content:flex-start;padding:0 19px;gap:14px}
body.trilho-aberto .trilho .trilho-exp span{display:inline}body.trilho-aberto .trilho .trilho-exp small{display:none}

/* ---------------------------------------------------------------- área de conteúdo */
main{max-width:none;margin:0;padding:24px 32px 40px}
body.logado main{margin:var(--topo-h) 0 0 var(--trilho-w);min-height:calc(100vh - var(--topo-h))}
main>h1:first-child,main>.titulo-pag{font-size:22px;font-weight:600;margin:2px 0 16px;color:var(--tinta)}
h2{font-size:15px;font-weight:600}
.cartao{border:0;border-radius:10px;box-shadow:var(--sombra);padding:18px 20px;margin-bottom:16px}
.cartao>h2:first-child{margin-top:0;font-size:13px;text-transform:uppercase;letter-spacing:.02em;color:#4a5450;font-weight:600}
input,select,textarea{border-color:#d6d9d3;border-radius:8px;min-height:40px;font-size:14px}
button.btn,a.btn{background:var(--asj-verde);border-radius:8px;min-height:40px;padding:8px 16px;font-weight:600;font-size:14px;gap:8px}
button.btn:hover,a.btn:hover{background:color-mix(in srgb,var(--asj-verde) 85%,#fff)}
button.sec,a.sec{background:#fff;color:var(--asj-verde);border:1px solid #cfd4cf;font-weight:500}
button.sec:hover,a.sec:hover{background:var(--asj-cinza)}
main .cartao button:not([class]),main .g2-form button:not([class]),main .g2-acoes button:not([class]),main details>form button:not([class]){background:#fff;color:var(--asj-verde);border:1px solid #cfd4cf;border-radius:8px;min-height:40px;padding:6px 14px;font-weight:500;cursor:pointer}
main .cartao button:not([class]):hover,main .g2-form button:not([class]):hover{background:var(--asj-cinza)}
th{background:#f7f8f6;font-weight:600;color:#4a5450}
table{font-size:13.5px}
.chip{font-weight:600;border-radius:4px;padding:1px 8px}
.chip.controle{color:#3d2e00}.chip.aceitacao{color:#fff}
.chip.sombra{background:var(--laranja-claro);color:var(--laranja-escuro)}
.aviso-sombra{background:var(--laranja-claro);border:1px solid color-mix(in srgb,var(--asj-laranja) 30%,#fff);border-radius:8px;color:#4a3420}
.talhao{border:1px solid var(--linha);border-left-width:6px;border-radius:8px}
.kpi{border:0;box-shadow:var(--sombra)}
.toast{background:var(--asj-verde)}
nav.g3-nav a{border-color:#cfd4cf}nav.g3-nav a[aria-current=page]{background:var(--asj-verde);border-color:var(--asj-verde)}

/* ---------------------------------------------------------------- login */
body:not(.logado){background:var(--asj-verde)}
.entrar{max-width:400px;margin:12vh auto;border-radius:14px;padding:28px}
.entrar h1{display:flex;align-items:center;gap:10px;color:var(--asj-verde)}
.entrar h1::before{content:"";width:44px;height:43px;background:url(/logo-asj.png) center/contain no-repeat}

/* ---------------------------------------------------------------- gaveta (relatórios, editar e gerenciar, aplicativos) */
.gaveta{position:fixed;inset:0;z-index:40}
.gaveta-fundo{position:absolute;inset:0;background:rgba(0,20,12,.35)}
.gaveta-caixa{position:absolute;top:0;right:0;bottom:0;width:min(330px,92vw);background:#fff;box-shadow:-4px 0 18px rgba(0,0,0,.15);padding:18px 16px;overflow:auto}
.gaveta.esquerda .gaveta-caixa{right:auto;left:0}
.gaveta-topo{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.gaveta-topo h2{font-size:20px;margin:0}
.gaveta-grupo{border:1px solid var(--linha);border-radius:10px;padding:12px 14px;margin-bottom:12px}
.gaveta-grupo h3{margin:0 0 6px;font-size:15px;font-weight:600}
.gaveta-grupo a{display:flex;align-items:center;gap:12px;padding:9px 4px;color:var(--tinta);text-decoration:none;border-radius:6px}
.gaveta-grupo a:hover{background:var(--asj-cinza)}
.gaveta-grupo a .ic{width:26px;height:26px;padding:4px;border-radius:6px;background:var(--verde-claro);color:var(--asj-verde)}

/* ---------------------------------------------------------------- telas com mapa (linha do tempo, talhão, notas, armadilhas) */
main.tela-mapa{padding:0;display:grid;grid-template-columns:var(--painel-w,300px) minmax(0,1fr);height:calc(100vh - var(--topo-h));overflow:hidden}
main.tela-mapa.largo{--painel-w:380px}
main.tela-mapa.notas{--painel-w:520px}
.painel-esq{background:#fff;border-right:1px solid var(--linha);display:flex;flex-direction:column;min-height:0;overflow:hidden}
.painel-rolagem{overflow:auto;flex:1;min-height:0}
.painel-cab{background:var(--asj-cinza);padding:16px 16px 12px}
.painel-cab h1{font-size:20px;font-weight:600;margin:0 0 12px}
.alterna{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--asj-verde);border-radius:6px;overflow:hidden}
.alterna a,.alterna button{display:flex;align-items:center;justify-content:center;gap:8px;height:36px;text-decoration:none;color:var(--asj-verde);background:#fff;font-weight:500;border:0;font:inherit;cursor:pointer}
.alterna [aria-current="page"],.alterna [aria-pressed="true"]{background:var(--asj-verde);color:#fff}
.regiao{display:flex;align-items:center;gap:10px;padding:12px 16px;font-weight:600;border-bottom:1px solid var(--linha2)}
.regiao .pizza{width:22px;height:22px;border-radius:50%;background:conic-gradient(var(--dano) 0 25%,var(--controle) 0 45%,var(--ok) 0 80%,var(--sem) 0)}
.regiao .espaco{flex:1}
.busca-area{display:flex;gap:8px;padding:10px 16px}
.busca-area label{flex:1;flex-direction:row;align-items:center;gap:6px;border:1px solid #cfd4cf;border-radius:8px;padding:0 10px;background:var(--asj-cinza)}
.busca-area input{border:0;background:transparent;min-height:38px;padding:0;width:100%}
.bt-redondo{width:38px;height:38px;border-radius:50%;border:0;background:var(--asj-cinza);color:#3b4541;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto;text-decoration:none}
.bt-redondo:hover{background:#e7e9e5}.bt-redondo[aria-pressed="true"]{background:var(--asj-verde);color:#fff}
.filtro-pop{padding:4px 16px 10px;display:grid;gap:8px;border-bottom:1px solid var(--linha2)}
.ativ-tit{padding:8px 16px 4px;font-size:15px;font-weight:500}
.ativ-dia{padding:14px 16px 4px;font-size:11.5px;font-weight:700;letter-spacing:.04em;color:#3b4541;text-transform:uppercase}
.ativ-dia.sem{background:var(--asj-cinza);margin-top:8px;padding-bottom:10px}
.ativ{display:flex;align-items:flex-start;gap:8px;padding:9px 16px;border-bottom:1px solid var(--linha2);text-decoration:none;color:var(--tinta)}
.ativ:hover{background:#fafbf9}.ativ.sem{background:var(--asj-cinza)}
.ativ .q{width:11px;height:11px;border-radius:2px;margin-top:4px;flex:0 0 auto;background:var(--sem)}
.ativ b{display:block;font-size:14px}.ativ small{display:block;color:#3b4541;font-size:13px}
.ativ .espaco{flex:1}
.ativ .cultura{width:26px;height:26px;border-radius:50%;border:1px solid var(--linha);display:inline-flex;align-items:center;justify-content:center;color:#59625e;flex:0 0 auto;margin-top:6px}
.ativ .cultura .ic{width:14px;height:14px}
.q.dano,.ponto-st.dano{background:var(--dano)}.q.controle,.ponto-st.controle{background:var(--controle)}.q.aceitacao,.ponto-st.aceitacao{background:var(--ok)}
.painel-pe{padding:10px 12px;border-top:1px solid var(--linha);background:#fff}
.painel-pe .btn{width:100%;justify-content:center}

/* mapa grande */
.mapa-area{position:relative;min-width:0;min-height:0;background:#24352c;overflow:hidden}
.mapa-area svg.mapa-g{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;touch-action:none;background:
  radial-gradient(circle at 30% 20%,#3b5a3e 0,transparent 40%),radial-gradient(circle at 75% 70%,#46613f 0,transparent 45%),radial-gradient(circle at 60% 30%,#2f4733 0,transparent 35%),#2a3f31}
.mapa-area svg.mapa-g.arrastando{cursor:grabbing}
.mapa-g .talhao-p{stroke:#fff;stroke-width:1.4;vector-effect:non-scaling-stroke;fill:#b9a88a;fill-opacity:.55;cursor:pointer}
.mapa-g .talhao-p:hover{fill-opacity:.75;stroke-width:2.2}
.mapa-g .talhao-p.foco{stroke:var(--asj-laranja);stroke-width:3;fill:none}
.mapa-g .rot{font-size:12px;fill:#fff;font-weight:600;paint-order:stroke;stroke:rgba(0,0,0,.55);stroke-width:3px;pointer-events:none}
.mapa-g .bolha{stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke;cursor:pointer}
.mapa-g .bolha.dano{fill:var(--dano)}.mapa-g .bolha.controle{fill:var(--controle)}.mapa-g .bolha.aceitacao{fill:var(--ok)}
.mapa-g .trilha{fill:none;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}
.mapa-g .marcador circle{fill:#fff;stroke:var(--asj-verde);stroke-width:1.5;vector-effect:non-scaling-stroke}
.mapa-g .marcador text{font-size:13px;font-weight:700;fill:var(--asj-verde);pointer-events:none}
.mapa-g .marcador.foto circle{stroke:var(--asj-laranja);stroke-width:3}
.mapa-g .calor rect{stroke:none}
.mapa-g .esc{transform:scale(var(--u,1))}
.cx-escura{position:absolute;background:rgba(18,28,23,.92);color:#fff;border-radius:10px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.cx-escura .mini,.cx-escura small{color:#c8d0cb}
.cx-decisao{left:20px;top:16px;width:236px;padding:12px 14px}
.cx-decisao .cab{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:10px}
.cx-decisao .corpo{display:flex;gap:12px;align-items:center}
.anel{width:48px;height:48px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:conic-gradient(var(--asj-laranja) calc(var(--p,0)*1%),#4d5953 0)}
.anel span{width:40px;height:40px;border-radius:50%;background:#1b2a22;display:flex;align-items:center;justify-content:center}
.cx-decisao a{display:block;text-align:center;color:#d7ddd9;margin-top:10px;font-size:13.5px}
.cx-camadas{right:16px;top:12px;width:212px;padding:8px 10px 10px}
.cx-camadas .cab{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;margin:0 0 6px;white-space:nowrap;gap:8px}
.cx-camadas .cab button{background:none;border:0;color:#fff;cursor:pointer;font:inherit;font-size:13px}
.camadas-grade{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:rgba(255,255,255,.06);border-radius:8px;padding:8px}
.camadas-grade a,.camadas-grade button{height:36px;border-radius:7px;background:#26332c;border:1px solid transparent;color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700;font-size:12px;cursor:pointer}
.camadas-grade [aria-pressed="true"]{border-color:#fff;background:#33453b}
.camadas-grade .ic{width:20px;height:20px}
.cx-camadas .rodape{font-size:11.5px;color:#aeb8b2;text-align:center;margin-top:6px}
.cx-legenda{right:66px;bottom:14px;width:230px;padding:8px 12px 10px;font-size:11.5px}
.cx-legenda .cab{display:flex;justify-content:space-between;font-weight:700;letter-spacing:.03em;margin-bottom:6px}
.cx-legenda .barra{height:4px;border-radius:3px;background:linear-gradient(90deg,var(--ok) 0 33%,var(--controle) 33% 66%,var(--dano) 66%)}
.cx-legenda .rot3{display:flex;justify-content:space-between;margin-top:5px}
.zoom{position:absolute;right:14px;bottom:14px;display:flex;flex-direction:column;gap:8px}
.zoom button{width:36px;height:36px;border-radius:8px;background:rgba(18,28,23,.92);color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.zoom .ic{width:18px;height:18px}
.cx-visual{left:16px;bottom:126px;width:186px;padding:10px 12px;font-size:12.5px}
.cx-visual h3{font-size:11px;letter-spacing:.04em;margin:4px 0 6px;font-weight:700}
.cx-visual label{flex-direction:row;align-items:center;gap:8px;color:#fff;font-size:12.5px;margin:4px 0}
.cx-visual input{min-height:0;accent-color:var(--asj-laranja);width:15px;height:15px}
.trilho-ponto{width:9px;height:9px;border-radius:50%;background:#fff;display:inline-block;margin-left:auto}
.migalha{position:absolute;left:12px;top:12px;background:rgba(18,28,23,.85);color:#fff;border-radius:6px;padding:6px 10px;font-size:13.5px}
.vazio-mapa{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#dfe6e1;font-size:15px}

/* faixa de visitas (linha do tempo) embaixo do mapa do talhão */
.faixa{position:absolute;left:12px;right:12px;bottom:0;background:#fff;border-radius:10px 10px 0 0;box-shadow:0 -2px 10px rgba(0,0,0,.15);padding:8px 12px 10px}
.faixa .topo-faixa{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.faixa .topo-faixa .filtro{border:1px solid var(--linha);border-radius:6px;padding:3px 10px;font-size:13px;display:inline-flex;gap:6px;align-items:center}
.faixa .topo-faixa .filtro b{color:var(--asj-laranja)}
.faixa-dias{display:flex;gap:0;overflow-x:auto;scrollbar-width:thin}
.faixa-dias .sem-col{flex:0 0 90px;display:flex;flex-direction:column;align-items:stretch;border-left:1px solid var(--linha2)}
.faixa-dias .sem-col .data{display:flex;justify-content:space-between;align-items:center;background:#f2f3f1;font-size:12.5px;padding:3px 6px;color:#3b4541}
.faixa-dias .sem-col .data i{font-style:normal;font-size:10.5px;font-weight:700;background:#59625e;color:#fff;border-radius:3px;padding:0 5px}
.faixa-dias .sem-col button{height:38px;border:0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px}
.faixa-dias .sem-col.ativo .data{background:var(--asj-laranja);color:#fff;font-weight:700}
.faixa-dias .sem-col.ativo{background:var(--laranja-claro);border-top:3px solid var(--asj-laranja)}
.faixa-dias .sem-col.ativo button{background:var(--laranja-claro)}
.faixa-dias .ic{width:17px;height:17px}
.ic.dano{color:var(--dano)}.ic.controle{color:#c99500}.ic.aceitacao{color:var(--ok)}.ic.sem{color:#9aa19d}
.estadios{display:flex;margin-top:4px;gap:2px}
.estadios span{flex:1;font-size:10.5px;font-weight:700;text-align:center;color:var(--asj-verde);background:var(--verde-claro);clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%,8% 50%);padding:2px 0}

/* painel esquerdo do talhão */
.volta{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--linha);border-radius:6px;padding:3px 10px 3px 6px;font-size:12.5px;text-decoration:none;color:var(--tinta);margin:14px 16px 0}
.volta .ic{width:14px;height:14px}
.t-cab{padding:8px 16px 10px}
.t-cab .sup{font-size:11.5px;color:var(--cinza);font-weight:600}
.t-nome{display:flex;align-items:center;gap:12px;margin:6px 0}
.t-nome h1{font-size:22px;font-weight:600;margin:0;flex:1}
.t-nome .st{width:28px;height:28px;border-radius:6px;background:#fbe9e9;display:inline-flex;align-items:center;justify-content:center}
.t-nome .st i{width:14px;height:14px;border-radius:50%;display:block;background:var(--sem)}
.t-nome .st.dano{background:#fde7e7}.t-nome .st.dano i{background:var(--dano)}
.t-nome .st.controle{background:#fff6d6}.t-nome .st.controle i{background:var(--controle)}
.t-nome .st.aceitacao{background:#e5f6e8}.t-nome .st.aceitacao i{background:var(--ok)}
.t-nome a{color:#3b4541}
.t-info{display:flex;align-items:center;gap:8px;font-size:14px;margin:8px 0}
.t-info .ic{width:16px;height:16px}
.estadio-tag{display:inline-block;font-size:11px;font-weight:700;color:var(--asj-verde);background:var(--verde-claro);border-radius:4px;padding:2px 7px;letter-spacing:.02em}
.t-acoes{display:flex;gap:8px;align-items:center;margin:12px 0 4px}
.t-acoes .btn,.t-acoes .sec{min-height:34px;padding:4px 12px;font-weight:500}
.bt-decisao{background:var(--laranja-claro)!important;color:var(--laranja-escuro)!important;border:1px solid color-mix(in srgb,var(--asj-laranja) 40%,#fff)!important}
.t-data{display:flex;align-items:center;gap:6px;background:var(--asj-cinza);padding:10px 16px;font-weight:600;font-size:15px}
.t-data .espaco{flex:1}
.t-data button{background:none;border:0;cursor:pointer;color:#3b4541;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}
.t-data button:disabled{opacity:.3}
.resumo-cx{margin:14px 16px;border:1.5px solid color-mix(in srgb,var(--asj-laranja) 45%,#fff);border-radius:10px;padding:12px 14px;background:linear-gradient(180deg,var(--laranja-claro),#fff 60%)}
.resumo-cx summary{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--laranja-escuro);cursor:pointer;list-style:none}
.resumo-cx summary::-webkit-details-marker{display:none}
.resumo-cx p{margin:.45rem 0;font-size:13.5px}
.secao-t{border-top:1px solid var(--linha2)}
.secao-t>summary{display:flex;align-items:center;gap:10px;padding:14px 16px;font-size:16px;font-weight:500;cursor:pointer;list-style:none}
.secao-t>summary::-webkit-details-marker{display:none}
.secao-t>summary .cont{margin-left:auto;background:#3b4541;color:#fff;border-radius:4px;font-size:12px;padding:1px 10px}
.monit{padding:0 16px 10px;font-size:13.5px}
.monit .resp{display:flex;align-items:center;gap:8px;margin:4px 0 12px}
.monit .resp i{font-style:normal;width:22px;height:22px;border-radius:50%;background:var(--asj-cinza);font-size:10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--linha)}
.monit .lin{display:flex;gap:10px;margin:10px 0}
.monit .lin .ic{width:17px;height:17px;margin-top:1px}
.monit small{display:block;color:var(--cinza)}
.ocorr-cab{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;font-size:11.5px;font-weight:700;letter-spacing:.03em;color:#3b4541}
.nao-achados{padding:6px 16px;color:var(--asj-verde);font-size:13.5px}
.fen{border-top:1px solid var(--linha2);padding:10px 16px 8px}
.fen-cab{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.fen-cab .img{width:40px;height:32px;border-radius:4px;background:var(--verde-claro);color:var(--asj-verde);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.fen-cab b{display:block;font-size:15px}.fen-cab small{font-style:italic;color:var(--cinza);font-size:12.5px}
.fen-cab .espaco{flex:1}
.fen-cab .n{background:#3b4541;color:#fff;border-radius:4px;font-size:12px;padding:1px 9px}
.fen-cab .bt-ic{width:30px;height:30px;border-radius:6px;border:0;background:#fff;color:#3b4541;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none}
.fen-cab .bt-ic:hover{background:var(--asj-cinza)}.fen-cab .bt-ic[aria-pressed="true"]{color:var(--asj-laranja);outline:1.5px solid var(--asj-laranja)}
.fen-cab .bt-ic .ic{width:18px;height:18px}
.ind{position:relative;background:#f4f5f3;border-radius:6px;padding:7px 12px 7px 16px;margin:0 0 8px 0;font-size:13.5px}
.ind::before{content:"";position:absolute;left:5px;top:7px;bottom:7px;width:3px;border-radius:2px;background:var(--sem)}
.ind.dano::before{background:var(--dano)}.ind.controle::before{background:var(--controle)}.ind.aceitacao::before{background:var(--ok)}
.ind b{display:block;font-weight:700}.ind.dano b{color:var(--dano)}.ind.controle b{color:#c99500}.ind.aceitacao b{color:var(--ok)}
.ind small{display:block;color:var(--cinza);font-size:12px}
.mais-info{padding:6px 16px 16px}
.mais-info .cartao{box-shadow:none;border:1px solid var(--linha2);padding:12px;margin:10px 0}
.mais-info .cartao h2{font-size:12px}
.mais-info .mapa{max-height:260px}

/* diálogo de decisão de manejo */
dialog.decisao{border:0;border-radius:12px;padding:0;width:min(560px,94vw);box-shadow:0 10px 40px rgba(0,0,0,.3)}
dialog.decisao::backdrop{background:rgba(0,20,12,.35)}
.decisao .d-topo{padding:20px 20px 4px;display:flex;gap:10px;align-items:flex-start}
.decisao .d-topo h2{font-size:18px;margin:0;flex:1}
.decisao .d-sub{padding:0 20px 12px;font-weight:600;font-size:13.5px}
.decisao .opcao{display:flex;gap:14px;align-items:center;margin:0 20px 10px;border:1px solid var(--linha);border-radius:10px;padding:12px 14px;cursor:pointer;background:#fff;width:calc(100% - 40px);text-align:left;font:inherit}
.decisao .opcao:hover{border-color:var(--asj-verde)}
.decisao .opcao .ic{width:34px;height:34px;padding:7px;border-radius:8px}
.decisao .opcao.sim .ic{background:var(--verde-claro);color:var(--asj-verde)}.decisao .opcao.nao .ic{background:#fde7e7;color:var(--dano)}
.decisao .opcao small{display:block;color:var(--cinza)}
.decisao .d-rodape{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--linha);margin-top:10px}
.decisao .d-rodape div{display:flex;gap:10px;padding:16px 20px;align-items:center;font-size:12.5px}
.decisao .d-rodape div+div{border-left:1px solid var(--linha)}
.decisao .d-rodape b{display:block;font-size:15px}
.decisao .d-rodape .ic{width:34px;height:34px;padding:6px;border-radius:8px;background:var(--asj-verde);color:#fff}

/* evolução dos indicadores (mesma estrutura em modal e na tela) */
.evo{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;min-height:0}
.evo-esq h3{font-size:14px;margin:14px 0 6px}
.evo-esq .ind-sel{border:1px solid var(--linha);border-radius:8px;padding:6px 10px;margin-bottom:6px;font-size:12.5px;display:flex;justify-content:space-between;gap:6px;background:#fff}
.evo-esq .ind-sel small{display:block;color:var(--cinza)}
.evo-esq .ind-sel i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}
.evo-esq label{flex-direction:row;align-items:center;gap:8px;color:var(--tinta);font-size:14px;margin:6px 0}
.evo-esq input[type=checkbox]{min-height:0;width:16px;height:16px;accent-color:var(--asj-verde)}
.evo-dir{border:1px solid var(--linha);border-radius:10px;padding:12px 14px;background:#fff;min-width:0}
.evo-dir .cab{display:flex;align-items:center;gap:10px;color:var(--cinza);margin-bottom:6px;flex-wrap:wrap}
.evo-dir .cab .espaco{flex:1}
.evo-dir>svg{width:100%;height:auto;display:block}
.evo-leg svg{flex:0 0 auto}
.evo-leg{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--linha);margin-top:6px;padding-top:8px;font-size:12.5px;color:var(--cinza)}
.evo-leg b{display:block;font-size:11.5px;color:#3b4541;margin-bottom:4px}
.evo-leg span{display:flex;align-items:center;gap:8px;margin:3px 0;color:var(--tinta)}
dialog.modal-evo{border:0;padding:0;width:min(1240px,98vw);height:min(860px,96vh);border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.35)}
dialog.modal-evo::backdrop{background:rgba(0,20,12,.45)}
.modal-evo .m-topo{display:flex;align-items:center;gap:14px;padding:16px 18px}
.modal-evo .m-topo h2{flex:1;margin:0;font-size:20px}
.modal-evo .m-topo .ico{width:34px;height:34px;border-radius:8px;background:var(--asj-cinza);display:flex;align-items:center;justify-content:center}
.modal-evo .evo{padding:0 18px 18px;height:calc(100% - 70px)}
.modal-evo .evo-esq{overflow:auto}

/* painel da fazenda em widgets */
.pag-cab{display:flex;align-items:center;gap:14px;margin:0 0 16px}
.pag-cab h1{font-size:22px;font-weight:600;margin:0;flex:1}
.pag-cab .voltar{width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:var(--sombra);display:inline-flex;align-items:center;justify-content:center;color:var(--tinta)}
.pag-cab .datas{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--linha);border-radius:8px;padding:0 10px;height:42px}
.pag-cab .datas input{border:0;min-height:0;height:38px;padding:0 4px;width:132px}
.pag-cab .cfg{background:#e6e9e5;color:var(--tinta);border:0;border-radius:6px;height:42px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font:inherit;font-weight:500}
.faixa-info{display:flex;gap:14px;align-items:center;background:var(--verde-claro);border:1px solid color-mix(in srgb,var(--asj-verde) 18%,#fff);border-radius:10px;padding:14px 16px;margin-bottom:18px}
.faixa-info .ic{width:44px;height:44px;padding:9px;border-radius:8px;background:color-mix(in srgb,var(--asj-verde) 16%,#fff);color:var(--asj-verde)}
.faixa-info b{display:block;font-size:15px}
.widget{background:#fff;border-radius:10px;box-shadow:var(--sombra);padding:22px 22px 24px;margin-bottom:16px}
.widget-cab{display:flex;align-items:center;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.widget-cab h2{margin:0;font-size:13.5px;font-weight:500;color:#4a5450;text-transform:uppercase;letter-spacing:.02em}
.widget-cab .espaco{flex:1}
.widget-cab .leg{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--cinza);margin-left:12px}
.widget-cab .leg i{width:10px;height:10px;border-radius:50%;display:inline-block}
.widget-cab select{border:0;font-weight:500;min-height:0;height:30px}
.info-i{width:16px;height:16px;border-radius:50%;background:#9aa19d;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.barras-h{display:grid;grid-template-columns:minmax(120px,22%) 1fr;gap:0;font-size:13px}
.barras-h .rotulo{text-align:right;padding:6px 12px 6px 0;border-right:1.5px solid #3b4541;line-height:1.15;display:flex;flex-direction:column;justify-content:center}
.barras-h .rotulo small{font-style:italic;color:var(--cinza);font-size:11px}
.barras-h .trilha-b{position:relative;padding:6px 0;display:flex;align-items:center;background-image:repeating-linear-gradient(90deg,var(--linha2) 0 1px,transparent 1px 10%)}
.barras-h .trilha-b span{display:block;height:18px}
.barras-h .eixo{grid-column:2;display:flex;justify-content:space-between;font-size:12px;color:#3b4541;padding-top:4px}
.dias-sem{display:grid;grid-template-columns:1fr 150px 1fr;font-size:13px;align-items:center}
.dias-sem .h{font-size:11px;font-weight:700;color:#4a5450;letter-spacing:.03em;padding:8px 0;border-bottom:1px solid var(--linha)}
.dias-sem .h.c{text-align:center}.dias-sem .h.d{text-align:right}
.dias-sem>div:nth-child(6n+4),.dias-sem>div:nth-child(6n+5),.dias-sem>div:nth-child(6n+6){background:#f6f7f5}
.dias-sem .esq{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:4px 8px 4px 0;height:28px}
.dias-sem .esq span{height:14px;background:color-mix(in srgb,var(--asj-verde) 75%,#fff);display:block}
.dias-sem .meio{text-align:center;color:#3b4541;border-left:1px solid #3b4541;border-right:1px solid #3b4541;height:28px;line-height:28px}
.dias-sem .dir{display:flex;align-items:center;gap:8px;padding:4px 0 4px 8px;height:28px}
.dias-sem .dir span{height:14px;background:var(--asj-laranja);display:block}
.desemp{width:100%;border-collapse:separate;border-spacing:10px 0}
.desemp th{background:none;font-size:11.5px;font-weight:500;text-align:center;border-bottom:3px solid;padding:8px 4px}
.desemp td{background:#f6f7f5;text-align:center;padding:9px 6px;border:0}
.desemp td:first-child{text-align:left;background:none;font-weight:500}
.desemp .estrela{color:var(--asj-laranja)}
.clima-vazio{display:flex;gap:16px;align-items:center;color:var(--cinza)}
.widget-vazio{text-align:center;color:var(--cinza);padding:10px 0 4px}
.widget-vazio .ic{width:64px;height:64px;color:#c3c9c4}
.widget-vazio b{display:block;color:var(--tinta);font-size:17px;margin:8px 0 4px}
.sev-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.sev-kpis div{border:1px solid var(--linha);border-radius:8px;padding:12px 14px;border-top:4px solid var(--sem)}
.sev-kpis div.dano{border-top-color:var(--dano)}.sev-kpis div.controle{border-top-color:var(--controle)}.sev-kpis div.aceitacao{border-top-color:var(--ok)}.sev-kpis div.total{border-top-color:var(--asj-verde)}
.sev-kpis b{display:block;font-size:22px}.sev-kpis small{color:var(--cinza)}
#g10-pers{background:#fff;border-radius:10px;box-shadow:var(--sombra);padding:10px 16px;margin-bottom:16px}

/* tarefas, notas, armadilhas: listas no painel */
.lista-nav{display:flex!important;flex-direction:column!important;width:auto}
.lista-nav a{border:0!important;border-radius:0!important;text-decoration:none!important;font-weight:400;display:flex;align-items:center;gap:12px;padding:10px 16px;color:var(--tinta);text-decoration:none;font-size:14.5px}
.lista-nav a[aria-current="page"]{background:#eef0ec;font-weight:600}
.lista-nav a .ic{width:18px;height:18px}
.nota-item{padding:12px 16px;border-bottom:1px solid var(--linha2)}
.nota-item .cab{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.vazio{text-align:center;padding:40px 20px;color:var(--cinza)}
.vazio b{display:block;color:var(--asj-verde);font-size:20px;margin:12px 0 6px}
.vazio .ic{width:84px;height:84px;color:var(--asj-verde);opacity:.85}
.armad-item{padding:10px 16px;border-bottom:1px solid var(--linha2)}
.armad-item b{display:block}
.mapa-topo-btns{position:absolute;left:16px;top:10px;right:16px;display:flex;gap:0;align-items:center}
.mapa-topo-btns select,.mapa-topo-btns button{height:38px;border-radius:0;border:1px solid var(--linha);background:#fff;font:inherit;padding:0 16px;min-height:0}
.mapa-topo-btns select{border-radius:6px;margin-right:8px;width:170px}
.mapa-topo-btns button:first-of-type{border-radius:6px 0 0 6px}.mapa-topo-btns button:last-of-type{border-radius:0 6px 6px 0}
.mapa-topo-btns button[aria-pressed="true"]{background:var(--asj-verde);color:#fff;border-color:var(--asj-verde)}

/* cartões de metodologia */
.cards-met{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:28px 56px;max-width:1000px;margin:10px auto 24px}
.card-met{position:relative;background:#fff;border-radius:14px;box-shadow:var(--sombra);padding:46px 20px 18px;text-align:center;text-decoration:none;color:var(--tinta);margin-top:30px}
.card-met .bola{position:absolute;left:50%;top:-30px;transform:translateX(-50%);width:62px;height:62px;border-radius:50%;background:var(--laranja-claro);color:var(--asj-laranja);display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:var(--sombra)}
.card-met .bola .ic{width:32px;height:32px}
.card-met b{display:block;font-size:17px;font-weight:600;margin:6px 0 12px}
.card-met .cult{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#3b4541;color:#fff}.card-met .cult .ic{width:15px;height:15px}
.card-met .seta{position:absolute;right:20px;top:24px;color:#3b4541}
.card-met small{display:block;color:var(--cinza);margin-top:8px}
.mini-forma{width:40px;height:40px;border-radius:8px;background:var(--laranja-claro);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.mini-forma svg{width:28px;height:28px}

/* relatórios em cartões */
.chips-rel{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.chip-r{border:1px solid var(--linha);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:13.5px;cursor:pointer;color:var(--tinta)}
.chip-r[aria-pressed="true"]{background:var(--verde-claro);border-color:color-mix(in srgb,var(--asj-verde) 30%,#fff);color:var(--asj-verde)}
.tit-rel{display:flex;align-items:center;gap:12px;font-size:14.5px;font-weight:500;color:#3b4541;margin:18px 0 10px}
.tit-rel::after{content:"";flex:1;height:1px;background:var(--linha)}
.cards-rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.card-rel{background:#fff;border:1px solid var(--linha);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--tinta)}
.card-rel.largo{flex-direction:row;align-items:center;gap:12px;border-radius:24px;margin-bottom:6px}
.card-rel.largo .ic{width:34px;height:34px;padding:7px;border-radius:50%;background:var(--asj-cinza)}
.card-rel.largo small{display:block;color:var(--cinza)}
.card-rel .cab-r{display:flex;align-items:center;gap:10px}
.card-rel .ico-r{width:28px;height:28px;border-radius:6px;background:var(--laranja-claro);color:var(--asj-laranja);display:inline-flex;align-items:center;justify-content:center}
.card-rel .ico-r .ic{width:16px;height:16px}
.card-rel p{margin:0;color:#4a5450;font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-rel .pe-r{display:flex;justify-content:flex-end;gap:8px;margin-top:auto}
.card-rel .pe-r .btn{min-height:30px;padding:2px 14px;border-radius:999px;font-size:13px}

/* tela com menu à esquerda e lista à direita (tarefas) */
main.tela-lista{padding:0;display:grid;grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - var(--topo-h))}
main.tela-lista .painel-esq{min-height:calc(100vh - var(--topo-h))}
main.tela-lista .dir{padding:22px 28px 40px;min-width:0}
.filtros-tarefas .filtros{flex-direction:column;align-items:stretch}
.filtros-tarefas .filtros label,.filtros-tarefas .filtros .btn{width:100%}
.filtros-tarefas .filtros .btn{justify-content:center}

/* ---------------------------------------------------------------- celular / tela estreita */
@media (max-width:900px){
  :root{--topo-h:56px}
  .topo{gap:6px;padding:0 8px}
  .topo .menu-btn{display:inline-flex}
  #pcApps,.pil-fazenda,.pil-safra,.topo .busca-topo,.marca-txt small{display:none}
  .selo{font-size:10px;padding:1px 7px}
  .trilho{transform:translateX(-100%);transition:transform .2s;--trilho-w:240px;width:240px}
  .trilho.aberto{transform:none;display:flex}
  .trilho a span{display:inline}
  .trilho .trilho-exp{display:none}
  body.logado main{margin-left:0}
  main{padding:16px 14px 32px}
  main.tela-mapa{display:flex;flex-direction:column-reverse;height:auto;overflow:visible}
  main.tela-mapa .painel-esq{border-right:0;overflow:visible}
  main.tela-mapa .painel-rolagem{overflow:visible}
  .mapa-area{height:58vh;min-height:320px}
  .cx-decisao{left:10px;top:10px;width:200px;padding:8px 10px}
  .cx-camadas{right:10px;top:10px;width:150px}
  .cx-legenda{right:56px;bottom:10px;width:170px}
  .cx-visual{display:none}
  .faixa{left:0;right:0;border-radius:0}
  .mapa-area{height:66vh}
  .avatar{width:36px;height:36px;font-size:14px}
  .topo a.topo-ic[href="#/central-relatorios"]{display:none}
  .cx-camadas{width:178px}.cx-camadas .camadas-grade{gap:4px;padding:6px}
  .evo{grid-template-columns:1fr}
  main.tela-lista{display:block}
  main.tela-lista .painel-esq{min-height:0}
  main.tela-lista .dir{padding:16px 14px}
  .sev-kpis{grid-template-columns:repeat(2,1fr)}
  .pag-cab{flex-wrap:wrap}
  .barras-h{grid-template-columns:110px 1fr}
  .dias-sem{grid-template-columns:1fr 96px 1fr}
}
