/* Armant 360 · AVANÇO da obra (físico-financeiro); barra e caixa de rolagem usam as classes do cron.css, os cartões as do med.css */
.ff-filtros{margin-top:-4px}
.ff-busca{flex:1;min-width:200px;max-width:360px;border:1px solid #dee8e5;border-radius:8px;padding:8px 12px;background:#fff;font:inherit;font-size:13px}
.ff-kpis em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:var(--muted)}
.ff-kpis .atras em{color:#b3412e}.ff-kpis .ok em{color:var(--green)}
.ff-curva{max-width:100%;margin-bottom:12px;padding:14px 18px 8px;background:#fff;border:1px solid var(--line);border-radius:12px}
.ff-curva-cab{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-bottom:6px;font-size:12px;color:var(--muted)}
.ff-curva-cab strong{font-family:var(--display);font-size:15px;font-weight:500;color:var(--ink)}.ff-curva-cab small{margin-left:auto}
.ff-leg{display:inline-flex;align-items:center;gap:6px}
.ff-leg i,.ff-tip i{display:inline-block;width:16px;height:0;border-top:2px solid}
.ff-leg i.plan,.ff-tip i.plan{border-color:#1f78c8;border-top-style:dashed}.ff-leg i.real,.ff-tip i.real{border-color:#3d9a2e}
.ff-leg i.corte{border-color:#e0a548;border-top-style:dashed}
.ff-curva-box{position:relative;overflow-x:auto}
.ff-svg{display:block;max-width:none}
.ff-grade{stroke:#e9efed;stroke-width:1}.ff-eixo{font-size:10px;fill:var(--muted)}
.ff-b-plan{fill:#1f78c8;opacity:.28}.ff-b-real{fill:#3d9a2e;opacity:.55}
.ff-l-plan{fill:none;stroke:#1f78c8;stroke-width:2;stroke-dasharray:6 4}.ff-l-real{fill:none;stroke:#3d9a2e;stroke-width:2}
.ff-pt-real{fill:#3d9a2e;stroke:#fff;stroke-width:2}
.ff-rot{font-size:11px;font-weight:600;fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:3px}
.ff-corte{stroke:#e0a548;stroke-width:2;stroke-dasharray:4 3}
.ff-hit{fill:transparent;cursor:crosshair}.ff-hit:hover{fill:rgba(2,60,72,.05)}
.ff-tip{position:absolute;top:10px;z-index:2;display:flex;flex-direction:column;gap:3px;min-width:210px;padding:9px 12px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 20px rgba(2,60,72,.12);font-size:12px;pointer-events:none}
.ff-tip[hidden]{display:none}.ff-tip span{display:flex;align-items:center;gap:6px}.ff-mudo{color:var(--muted)}
.ff-lanc{align-items:center;padding:10px 14px;background:#f6faf9;border:1px solid var(--line);border-radius:12px}
.ff-lanc .cr-nota{margin:0}
.ff-caixa{max-height:70vh}
.ff-tab{border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}
.ff-tab th{position:sticky;top:0;z-index:1;background:#f3f7f6;padding:8px;font-size:11px;font-weight:600;color:var(--muted);text-align:left;border-bottom:1px solid var(--line)}
.ff-tab td{padding:5px 8px;border-bottom:1px solid #eef3f1}
.ff-tab th:nth-child(-n+2),.ff-tab td:nth-child(-n+2){position:sticky;background:#fff}
.ff-tab th:nth-child(1),.ff-tab td:nth-child(1){left:0;min-width:84px}.ff-tab th:nth-child(2),.ff-tab td:nth-child(2){left:84px;z-index:1}
.ff-tab thead th:nth-child(-n+2){z-index:3;background:#f3f7f6}
.ff-nome{max-width:320px;min-width:220px;overflow:hidden;text-overflow:ellipsis;border-right:1px solid var(--line)}
.ff-n{text-align:right;font-variant-numeric:tabular-nums}.ff-r{font-weight:600}
.ff-tab .atras{color:#b3412e}.ff-tab .ok{color:var(--green)}
.ff-tab tr.grupo td{background:#f8fbfa;font-weight:600}.ff-tab tr.grupo.n1 td{background:#eef5f3}
.ff-tab tr.grupo td:nth-child(-n+2){background:inherit}.ff-tab tr.grupo.n1 td:nth-child(-n+2){background:#eef5f3}.ff-tab tr.grupo:not(.n1) td:nth-child(-n+2){background:#f8fbfa}
.ff-tab tr:hover td{background:#f1f7f5}
.ff-tg{width:20px;height:20px;margin-right:4px;padding:0;border:0;background:none;color:var(--petrol);cursor:pointer;font-size:12px}
.ff-tag{padding:1px 6px;border-radius:6px;background:var(--mint);color:var(--green);font-size:10px;font-weight:600}
.ff-c{min-width:46px;text-align:center;font-variant-numeric:tabular-nums;font-size:11px;border-left:1px solid #fff}
th.ff-c{text-align:center;line-height:1.25}
.ff-ed{width:84px;background:#fffbea!important}.ff-ed input{width:72px;text-align:right}
@media (max-width:760px){.ff-nome{min-width:160px;max-width:180px}.ff-tab th:nth-child(1),.ff-tab td:nth-child(1){min-width:64px}.ff-tab th:nth-child(2),.ff-tab td:nth-child(2){left:64px}.ff-curva-cab small{margin-left:0}}
