/* Armant 360 · PAINEL da obra: Gantt com planejado, executado e medido sobrepostos e o financeiro no tempo (usa classes do cron.css, med.css e ff.css) */
.ob-clica{cursor:pointer}.ob-clica:hover{background:#f8fbfa}
.ob-link{color:inherit;text-decoration:none}.ob-link:hover strong{text-decoration:underline}
.pn-kpis em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:var(--muted)}
.pn-kpis .atras em{color:#b3412e}.pn-kpis .ok em{color:var(--green)}.pn-per{font-size:15px!important}
.pn-barra{align-items:center}.pn-tit{font-family:var(--display);font-size:15px;font-weight:500;margin-right:6px}
.pn-chk{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #dee8e5;border-radius:8px;background:#fff;font-size:13px;cursor:pointer}
.pn-chk i{display:inline-block;width:14px;height:10px;border-radius:2px}
.pn-chk i.plan,.pn-l-plan{background:#1f78c833;border:1.5px solid #1f78c8}.pn-chk i.exec,.pn-l-exec{background:#3d9a2e}.pn-chk i.med,.pn-l-med{background:#8a4fd0}
.pn-l-hoje{width:0!important;height:12px!important;border-left:2px dashed #e0a548;border-radius:0!important;background:none!important}
.ff-leg i.med,.ff-tip i.med{border-color:#8a4fd0}
.pn-caixa{max-height:68vh}
.pn-tab{border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}
.pn-tab th{position:sticky;top:0;z-index:2;background:#f3f7f6;padding:0 8px;height:30px;font-size:11px;font-weight:600;color:var(--muted);text-align:left;border-bottom:1px solid var(--line)}
.pn-tab td{padding:0 8px;height:32px;border-bottom:1px solid #eef3f1;background:#fff}
.pn-tab th:nth-child(-n+2),.pn-tab td:nth-child(-n+2){position:sticky;z-index:1}
.pn-tab th:nth-child(1),.pn-tab td:nth-child(1){left:0;min-width:78px}.pn-tab th:nth-child(2),.pn-tab td:nth-child(2){left:78px;border-right:1px solid var(--line)}
.pn-tab thead th:nth-child(-n+2){z-index:3}
.pn-nome{min-width:220px;max-width:300px;overflow:hidden;text-overflow:ellipsis}
.pn-tab tr.grupo td{background:#f8fbfa;font-weight:600}.pn-tab tr.grupo.n1 td{background:#eef5f3}
.pn-tab .atras,.pn-fin .atras{color:#b3412e}
.pn-tlh,.pn-tlc{padding:0!important}
.pn-esc{position:relative;height:30px}
.pn-mes{position:absolute;top:0;height:30px;line-height:30px;padding-left:5px;border-left:1px solid #dfe8e5;font-size:10px;color:var(--muted);overflow:hidden}
.pn-tl{position:relative;height:32px;background-image:linear-gradient(90deg,#f1f5f4 1px,transparent 1px)}
.pn-plan{position:absolute;top:6px;height:20px;border:1.5px solid #1f78c8;border-radius:4px;background:#1f78c80d}
.pn-plan.grupo{border-width:2px}
.pn-plan-s{position:absolute;top:8px;height:16px;background:#1f78c8;opacity:.3;border-radius:2px}
.pn-exec{position:absolute;top:11px;height:9px;background:#3d9a2e;border-radius:2px;box-shadow:0 0 0 1.5px #fff}
.pn-med{position:absolute;top:22px;height:4px;background:#8a4fd0;border-radius:2px}
.pn-hoje{position:absolute;top:0;bottom:0;width:0;border-left:2px dashed #e0a548;z-index:1;pointer-events:none}
.pn-fin{margin-top:14px}
.pn-fin .ff-curva-cab select{margin-left:auto}
.pn-l-medl{fill:none;stroke:#8a4fd0;stroke-width:2}.pn-pt-med{fill:#8a4fd0;stroke:#fff;stroke-width:2}
.ff-b-plan2{fill:#1f78c8;opacity:.45}.ff-b-real2{fill:#3d9a2e}.pn-b-med{fill:#8a4fd0}
.pn-fin-tab{margin-top:8px;max-height:none}
.pn-fin-tab td,.pn-fin-tab th{padding:6px 10px}
.pn-mes-atual td{background:#fffbea}
