/* Funders (menu Gaia) — mapeamento de financiadores de restauração por paisagem.
   Tokens do DS (css/main.css). Nenhuma cor solta aqui: as cores das camadas vêm do
   dado (js/modules/gaia_funders_dados.js) e são pintadas pelo Leaflet, não pelo CSS. */
#tab-funders{font-family:'Figtree','Inter',system-ui,sans-serif;}
#tab-funders *{box-sizing:border-box}

#tab-funders .fd-cab{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:12px}
#tab-funders .fd-tit{font-size:19px;font-weight:800;color:var(--text-bright);letter-spacing:-.2px}
#tab-funders .fd-sub{font-size:11.5px;color:var(--text-secondary);margin-top:3px;max-width:720px;line-height:1.5}
#tab-funders .fd-atual{font-size:10px;color:var(--text-secondary);white-space:nowrap}

/* fita dos 7 mapas */
#tab-funders .fd-fita{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:12px;scrollbar-width:thin}
#tab-funders .fd-aba{flex:0 0 auto;display:flex;align-items:center;gap:7px;border:1px solid var(--border);
  border-radius:9px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;
  padding:7px 11px;font-size:11.5px;font-weight:600;font-family:inherit;transition:.15s;white-space:nowrap}
#tab-funders .fd-aba:hover{border-color:var(--accent);color:var(--text-bright)}
#tab-funders .fd-aba.on{background:var(--accent-dim);border-color:var(--accent);color:var(--text-bright)}
#tab-funders .fd-aba-n{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;
  border-radius:5px;background:var(--border);color:var(--text-secondary);font-size:9.5px;font-weight:800}
#tab-funders .fd-aba.on .fd-aba-n{background:var(--accent);color:var(--on-accent)}

/* pergunta que o mapa responde */
#tab-funders .fd-perg{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:9px;
  background:var(--bg-card);padding:10px 13px;margin-bottom:12px;font-size:12px;color:var(--text);line-height:1.55}
#tab-funders .fd-perg b{color:var(--text-bright);font-weight:700}

/* palco: painel + mapa */
#tab-funders .fd-palco{display:grid;grid-template-columns:262px 1fr;gap:12px;margin-bottom:16px}
#tab-funders .fd-lado{border:1px solid var(--border);border-radius:12px;background:var(--bg-card);
  padding:11px 12px;max-height:520px;overflow-y:auto}
#tab-funders .fd-h{font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;
  color:var(--text-secondary);margin-bottom:9px;display:flex;justify-content:space-between;align-items:center;gap:6px}
#tab-funders .fd-cam{display:flex;align-items:flex-start;gap:8px;padding:7px 6px;border-radius:8px;
  cursor:pointer;transition:.12s;border:1px solid transparent}
#tab-funders .fd-cam:hover{background:var(--accent-dim);border-color:var(--border)}
#tab-funders .fd-cam.off{opacity:calc(.42 + 0.58 * var(--apagado-alivio))}
#tab-funders .fd-chip{flex:0 0 auto;width:13px;height:13px;border-radius:4px;margin-top:2px;border:2px solid}
#tab-funders .fd-chip.trace{border-style:dashed;background:transparent!important}
#tab-funders .fd-cam-txt{min-width:0;flex:1}
#tab-funders .fd-cam-rot{font-size:11.5px;font-weight:650;color:var(--text-bright);line-height:1.35}
#tab-funders .fd-cam-met{font-size:9.5px;color:var(--text-secondary);margin-top:2px;display:flex;gap:6px;flex-wrap:wrap}
#tab-funders .fd-cam-met b{color:var(--accent-ink);font-weight:700}
#tab-funders .fd-i{flex:0 0 auto;width:16px;height:16px;border-radius:50%;border:1px solid var(--border);
  color:var(--text-secondary);font-size:9px;display:flex;align-items:center;justify-content:center;
  cursor:help;margin-top:1px;background:var(--bg-elev,transparent)}
#tab-funders .fd-i:hover{border-color:var(--accent);color:var(--accent-ink)}

#tab-funders .fd-mapa{border:1px solid var(--border);border-radius:12px;overflow:hidden;height:520px;background:var(--bg-card)}
#tab-funders .fd-mapa .leaflet-container{height:100%;width:100%;background:transparent;font-family:inherit}
#tab-funders .leaflet-popup-content-wrapper{background:var(--bg-card);color:var(--text);
  border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 26px rgba(0,0,0,calc(.4 * var(--sombra-peso)))}
#tab-funders .leaflet-popup-tip{background:var(--bg-card);border:1px solid var(--border)}
#tab-funders .leaflet-popup-content{margin:10px 12px;font-size:11.5px;line-height:1.5}
#tab-funders .fd-pop-t{font-size:12.5px;font-weight:800;color:var(--text-bright);margin-bottom:5px}
#tab-funders .fd-pop-l{display:flex;align-items:center;gap:6px;margin-top:3px}
#tab-funders .fd-pop-d{width:9px;height:9px;border-radius:3px;flex:0 0 auto;border:1.5px solid}

/* barra de interseção */
#tab-funders .fd-inter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--border);
  border-radius:10px;background:var(--bg-card);padding:9px 12px;margin-bottom:12px}
#tab-funders .fd-inter-n{font-size:20px;font-weight:800;color:var(--accent-ink);line-height:1}
#tab-funders .fd-inter-t{font-size:11.5px;color:var(--text);line-height:1.45}
#tab-funders .fd-inter-t b{color:var(--text-bright)}
#tab-funders .fd-inter-lista{font-size:10.5px;color:var(--text-secondary);line-height:1.5;width:100%}

/* tabela de organizações */
#tab-funders .fd-secao{font-size:13px;font-weight:800;color:var(--text-bright);margin:18px 0 4px}
#tab-funders .fd-secao-s{font-size:11px;color:var(--text-secondary);margin-bottom:10px;line-height:1.5}
#tab-funders .fd-filtros{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
#tab-funders .fd-f{border:1px solid var(--border);border-radius:7px;background:var(--bg-card);
  color:var(--text-secondary);cursor:pointer;padding:5px 10px;font-size:10.5px;font-weight:600;font-family:inherit}
#tab-funders .fd-f:hover{border-color:var(--accent);color:var(--text-bright)}
#tab-funders .fd-f.on{background:var(--accent-dim);border-color:var(--accent);color:var(--text-bright)}
#tab-funders .fd-tabwrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto;background:var(--bg-card)}
#tab-funders table.fd-tab{width:100%;border-collapse:collapse;font-size:11.5px;min-width:940px}
#tab-funders .fd-tab th{text-align:left;padding:9px 11px;font-size:9.5px;font-weight:800;letter-spacing:.6px;
  text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border);
  position:sticky;top:0;background:var(--bg-card);z-index:2;white-space:nowrap}
#tab-funders .fd-tab td{padding:9px 11px;border-bottom:1px solid var(--border);color:var(--text);
  vertical-align:top;line-height:1.45}
#tab-funders .fd-tab tr:last-child td{border-bottom:none}
#tab-funders .fd-tab tr.fd-lin{cursor:pointer}
#tab-funders .fd-tab tr.fd-lin:hover td{background:var(--accent-dim)}
#tab-funders .fd-org{font-weight:700;color:var(--text-bright)}
#tab-funders .fd-org-s{font-size:10px;color:var(--text-secondary);font-weight:500;display:block;margin-top:1px}
#tab-funders .fd-tag{display:inline-block;padding:2px 7px;border-radius:5px;font-size:9.5px;font-weight:700;
  border:1px solid var(--border);color:var(--text-secondary);white-space:nowrap}
#tab-funders .fd-tag.papel-financia{border-color:rgba(243,124,32,.5);color:var(--accent-light)}
#tab-funders .fd-tag.papel-implementa{border-color:rgba(143,185,138,.5);color:color-mix(in srgb, var(--pub-verde-claro) var(--fundo-peso), var(--ok-tinta))}
#tab-funders .fd-tag.papel-ambos{border-color:rgba(228,180,99,.55);color:var(--ocre-tinta)}
#tab-funders .fd-conf{font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}
#tab-funders .fd-conf.alta{color:color-mix(in srgb, var(--pub-verde-claro) var(--fundo-peso), var(--ok-tinta))}
#tab-funders .fd-conf.media{color:var(--ocre-tinta)}
#tab-funders .fd-conf.baixa{color:var(--red)}
#tab-funders .fd-estim{font-size:9px;font-weight:800;color:var(--ocre-tinta);letter-spacing:.3px}
#tab-funders .fd-td-fin{max-width:290px}
#tab-funders .fd-td-ter{max-width:230px;font-size:11px;color:var(--text-secondary)}
#tab-funders .fd-td-jan{max-width:200px;font-size:11px}
#tab-funders .fd-link{color:var(--accent-ink);text-decoration:none}
#tab-funders .fd-link:hover{text-decoration:underline}

/* detalhe aberto da organização */
#tab-funders tr.fd-det td{background:rgba(243,124,32,.05);padding:12px 14px}
#tab-funders .fd-det-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
#tab-funders .fd-det-b{font-size:11px;line-height:1.55;color:var(--text)}
#tab-funders .fd-det-b h5{font-size:9.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;
  color:var(--text-secondary);margin:0 0 4px}
#tab-funders .fd-proj{font-size:10.5px;color:var(--text-secondary);line-height:1.6}
#tab-funders .fd-proj li{margin-bottom:2px}

/* lacunas: o que a rodada não provou */
#tab-funders .fd-lac{border:1px solid var(--border);border-left:3px solid var(--ocre);border-radius:10px;
  background:var(--bg-card);padding:11px 14px;margin-top:16px}
#tab-funders .fd-lac h4{font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;
  color:var(--ocre-tinta);margin:0 0 7px}
#tab-funders .fd-lac li{font-size:11px;color:var(--text-secondary);line-height:1.6;margin-bottom:5px}

/* TELA ESTREITA — o painel de camadas deita em cima do mapa e a tabela rola sozinha */
@media (max-width:900px){
  #tab-funders .fd-palco{grid-template-columns:1fr}
  #tab-funders .fd-lado{max-height:none}
  #tab-funders .fd-mapa{height:380px}
  #tab-funders .fd-det-g{grid-template-columns:1fr}
}
@media (max-width:560px){
  #tab-funders .fd-tit{font-size:16px}
  #tab-funders .fd-mapa{height:320px}
  #tab-funders .fd-aba{padding:6px 9px;font-size:11px}
}

/* ── 8ª aba: ranking de paisagens (camada de decisão, não é mapa) ───────────── */
#tab-funders .fd-metodo{border:1px solid var(--border);border-radius:12px;background:var(--bg-card);
  padding:12px 14px;margin-bottom:14px}
#tab-funders .fd-eixos{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:10px}
#tab-funders .fd-eixo{display:flex;gap:9px;align-items:flex-start}
#tab-funders .fd-eixo-p{flex:0 0 auto;min-width:38px;text-align:right;font-size:15px;font-weight:800;
  color:var(--accent-ink);line-height:1.2}
#tab-funders .fd-eixo-r{font-size:11.5px;font-weight:700;color:var(--text-bright);line-height:1.3}
#tab-funders .fd-eixo-q{font-size:10.5px;color:var(--text-secondary);line-height:1.45;margin-top:2px}
#tab-funders .fd-origem{margin-top:11px;padding-top:10px;border-top:1px solid var(--border);
  font-size:10.5px;color:var(--text-secondary);line-height:1.55}

#tab-funders table.fd-tab-rank{min-width:840px}
#tab-funders .fd-pos{font-size:15px;font-weight:800;color:var(--text-secondary);width:34px}
#tab-funders tr:nth-child(1)>.fd-pos,#tab-funders tr:nth-child(3)>.fd-pos{color:var(--accent-ink)}
#tab-funders .fd-nota{display:flex;align-items:center;gap:7px}
#tab-funders .fd-trilho{display:block;width:46px;height:5px;border-radius:3px;background:var(--border);flex:0 0 auto;overflow:hidden}
#tab-funders .fd-nota-b{display:block;height:100%;border-radius:3px;background:var(--accent);opacity:.85}
#tab-funders .fd-nota-n{font-size:11px;font-weight:700;color:var(--text-secondary)}
#tab-funders .fd-nota-n.zero{color:var(--red)}
#tab-funders .fd-final{font-size:14px;font-weight:800;color:var(--text-bright);white-space:nowrap}
#tab-funders .fd-rec{border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;
  background:var(--bg-card);padding:12px 15px;margin-top:14px}
#tab-funders .fd-rec h4{font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;
  color:var(--accent-ink);margin:0 0 6px}
#tab-funders .fd-rec p{margin:0;font-size:12px;line-height:1.6;color:var(--text)}
@media (max-width:900px){
  #tab-funders .fd-eixos{grid-template-columns:1fr}
}

/* rede de seguranca do filtro: mesmo com a trava do vocabulario no build, nenhum
   chip pode virar parede de texto e empurrar a tabela pra fora da tela. */
#tab-funders .fd-f{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#tab-funders .fd-tag{max-width:230px;overflow:hidden;text-overflow:ellipsis}
#tab-funders .fd-cam-inter{color:var(--accent-ink);font-weight:700}
/* camada de area (UC, TI): o chip é redondo, para o olho separar de município na hora */
#tab-funders .fd-chip.area{border-radius:50%}
