/* Panorama Gerencial — preserva o shell/menu original do MobilizaPro */
.mpg{max-width:1680px;margin:0 auto;display:flex;flex-direction:column;gap:14px;color:var(--text,#eaf1fb)}
.mpg-header{display:flex;justify-content:space-between;align-items:end;gap:18px;padding:4px 2px 2px}.mpg-header h2{font-family:Outfit,Inter,sans-serif;font-size:clamp(24px,2.4vw,36px);font-weight:900;letter-spacing:-.03em;color:#f8fbff}.mpg-header p{margin-top:4px;color:#8ea4c3;font-size:13px}.mpg-filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.mpg-filters label{display:flex;flex-direction:column;gap:5px}.mpg-filters label span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#8ea4c3}.mpg-filters select{min-width:180px;height:40px;padding:0 36px 0 12px;border:1px solid rgba(96,165,250,.22);border-radius:11px;background:#101a2c;color:#ecf4ff;font-size:12px;font-weight:700;outline:none}.mpg-filters select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.12)}
.mpg-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.mpg-kpi{min-height:102px;border:1px solid rgba(148,163,184,.18);border-radius:15px;background:linear-gradient(180deg,rgba(21,31,49,.96),rgba(12,21,36,.98));padding:14px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 24px rgba(0,0,0,.12)}.mpg-kpi-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;border:2px solid currentColor;flex:0 0 auto}.mpg-kpi-icon span{font-size:23px}.mpg-kpi-copy{min-width:0;display:flex;flex-direction:column}.mpg-kpi-copy>span{font-size:10px;font-weight:900;color:#c9d6e8;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}.mpg-kpi-copy strong{font-family:Outfit,Inter,sans-serif;font-size:26px;line-height:1.08;color:#fff;margin-top:4px;white-space:nowrap}.mpg-kpi-copy small{font-size:9px;color:#87a0c3;margin-top:6px;line-height:1.2}.mpg-blue{color:#3b82f6}.mpg-green{color:#22c55e}.mpg-orange{color:#f59e0b}.mpg-purple{color:#a855f7}.mpg-teal{color:#14b8a6}
.mpg-grid{display:grid;gap:12px}.mpg-grid-top{grid-template-columns:minmax(0,1.62fr) minmax(290px,.95fr) minmax(270px,.78fr)}.mpg-grid-bottom{grid-template-columns:repeat(3,minmax(0,1fr))}.mpg-card{border:1px solid rgba(148,163,184,.17);border-radius:16px;background:linear-gradient(180deg,rgba(18,28,45,.97),rgba(12,21,35,.97));overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.12);min-width:0}.mpg-card-head{padding:13px 15px 9px}.mpg-card-head h3{font-size:13px;font-weight:900;color:#f4f8ff}.mpg-card-body{padding:2px 14px 14px;min-height:245px}.mpg-legend{display:flex;gap:18px;font-size:10px;font-weight:800;color:#aebed4;margin:2px 0 0 2px}.mpg-legend span:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}.mpg-legend .blue:before{background:#2878ff}.mpg-legend .green:before{background:#16a34a}
.mpg-svg{width:100%;height:auto;display:block;overflow:visible}.mpg-line{min-height:245px}.mpg-svg .grid line{stroke:rgba(148,163,184,.15);stroke-width:1}.mpg-svg text{fill:#8297b5;font-size:10px;font-family:Inter,sans-serif}.mpg-svg .planned{fill:none;stroke:#2878ff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mpg-svg .realized{fill:none;stroke:#16a34a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mpg-svg .planned-points circle{fill:#2878ff}.mpg-svg .realized-points circle{fill:#16a34a}
.mpg-vbars{height:215px;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;padding:8px 4px 0}.mpg-vbar-group{height:100%;min-width:55px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.mpg-vbar-bars{height:174px;display:flex;align-items:flex-end;gap:5px}.mpg-vbar-wrap{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.mpg-vbar-wrap span{font-size:9px;color:#dce7f6;margin-bottom:4px;font-weight:700}.mpg-vbar{width:22px;border-radius:3px 3px 0 0}.mpg-vbar.navy{background:#123d78}.mpg-vbar.green{background:#16a34a}.mpg-vbar.blue{background:#2878ff}.mpg-vbar-group small{font-size:9px;color:#9eb0c8;text-align:center}
.mpg-hbars{display:flex;flex-direction:column;gap:10px;padding-top:8px}.mpg-hbar-row{display:grid;grid-template-columns:minmax(100px,155px) minmax(80px,1fr) 34px;align-items:center;gap:8px}.mpg-hbar-row>span{font-size:9px;color:#cbd7e8;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mpg-hbar-track{height:15px;background:rgba(255,255,255,.035);border-radius:2px;overflow:hidden}.mpg-hbar-track i{display:block;height:100%;border-radius:2px}.mpg-hbar-track i.blue{background:#2d72c7}.mpg-hbar-track i.orange{background:#f59e0b}.mpg-hbar-track i.red{background:#ef3135}.mpg-hbar-row b{font-size:9px;color:#e7eef8}
.mpg-donut-wrap{display:grid;grid-template-columns:minmax(140px,.9fr) minmax(150px,1.1fr);align-items:center;height:220px;gap:8px}.mpg-donut{width:100%;max-width:190px;margin:auto;transform:rotate(-90deg)}.mpg-donut text{fill:#aebed4;font-size:11px;transform:rotate(90deg);transform-origin:75px 75px}.mpg-donut text.total{fill:#fff;font-size:20px;font-weight:900}.mpg-donut-legend{display:flex;flex-direction:column;gap:12px}.mpg-donut-legend div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:10px;color:#cbd7e8}.mpg-donut-legend i{width:9px;height:9px;border-radius:50%}.mpg-donut-legend b{color:#fff}
.mpg-note{border:1px solid rgba(59,130,246,.22);background:rgba(37,99,235,.08);color:#a9bdd9;border-radius:11px;min-height:38px;padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:11px}.mpg-note span{color:#60a5fa}.mpg-note strong{color:#7fb0ff}.mpg-empty{min-height:180px;display:grid;place-items:center;color:#7990ae;font-size:12px;border:1px dashed rgba(148,163,184,.15);border-radius:12px}
@media(max-width:1450px){.mpg-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.mpg-grid-top{grid-template-columns:1.5fr 1fr}.mpg-grid-top .mpg-card:last-child{grid-column:1/-1}.mpg-grid-bottom{grid-template-columns:1fr 1fr}.mpg-grid-bottom .mpg-card:last-child{grid-column:1/-1}}
@media(max-width:950px){.mpg-header{align-items:flex-start;flex-direction:column}.mpg-filters{width:100%;justify-content:flex-start}.mpg-filters label{flex:1;min-width:200px}.mpg-filters select{width:100%}.mpg-grid-top,.mpg-grid-bottom{grid-template-columns:1fr}.mpg-grid-top .mpg-card:last-child,.mpg-grid-bottom .mpg-card:last-child{grid-column:auto}.mpg-card-body{min-height:auto}}
@media(max-width:680px){.mpg-kpis{grid-template-columns:1fr 1fr}.mpg-kpi{min-height:92px}.mpg-kpi-copy strong{font-size:22px}.mpg-donut-wrap{grid-template-columns:1fr;height:auto}.mpg-hbar-row{grid-template-columns:100px minmax(70px,1fr) 30px}.mpg-vbars{overflow-x:auto;justify-content:flex-start}.mpg-vbar-group{min-width:70px}}
@media(max-width:430px){.mpg-kpis{grid-template-columns:1fr}.mpg-filters{flex-direction:column}.mpg-filters label{width:100%}}

/* Indicadores transferidos do Pipeline para o Panorama Gerencial */
.mpg-transferred-indicators{display:grid;gap:22px;margin-top:22px}
.mpg-transferred-indicators .mpg-moved-leadtime{margin:0;width:100%}
.mpg-transferred-decline-wrap{display:grid;grid-template-columns:minmax(320px,520px);justify-content:start}
.mpg-transferred-decline-wrap .mpg-moved-decline{width:100%;margin:0}
@media (max-width:760px){.mpg-transferred-decline-wrap{grid-template-columns:1fr}.mpg-transferred-indicators .mpg-moved-leadtime{overflow:hidden}}


/* Indicadores transferidos do Pipeline para o Panorama - versão 2 */
.mpg-management-title{display:flex;align-items:center;justify-content:space-between;margin:8px 0 -4px;padding:4px 2px}
.mpg-management-title h3{margin:0;color:var(--on-surface,#f8fafc);font-size:1.05rem;font-weight:800}
.mpg-management-title p{margin:.25rem 0 0;color:var(--muted,#94a3b8);font-size:.78rem}
.mpg-transferred-indicators{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:18px;align-items:stretch}
.mpg-transferred-indicators .mpg-moved-leadtime,.mpg-transferred-decline-wrap,.mpg-transferred-decline-wrap>section{height:100%}
@media(max-width:1100px){.mpg-transferred-indicators{grid-template-columns:1fr}}

/* Dashboard enxuto: Pendências por Obra removido por decisão gerencial. */
.mpg-grid-bottom-compact{grid-template-columns:minmax(0,1.45fr) minmax(340px,.85fr)}
.mpg-grid-bottom-compact .mpg-function-card .mpg-card-body{min-height:260px}
.mpg-grid-bottom-compact .mpg-status-card .mpg-card-body{min-height:260px}
@media(max-width:1100px){.mpg-grid-bottom-compact{grid-template-columns:1fr}.mpg-grid-bottom-compact .mpg-card{grid-column:auto!important}}

/* Dashboard — Status por Função gerencial 2026-07-20 */
.mpgf-section{grid-column:1/-1;background:linear-gradient(145deg,rgba(10,24,48,.96),rgba(7,18,36,.98));border:1px solid rgba(73,124,190,.28);border-radius:16px;padding:18px;box-shadow:0 18px 42px rgba(0,0,0,.18)}
.mpgf-head,.mpgf-search-row,.mpgf-list>header,.mpgf-chart>header,.mpgf-table-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.mpgf-head h3,.mpgf-list h4,.mpgf-chart h4{margin:0;color:#f4f8ff;font-weight:800}.mpgf-head p,.mpgf-chart small,.mpgf-list>header span{margin:4px 0 0;color:#8fa7c7;font-size:12px}.mpgf-total{padding:7px 11px;border-radius:999px;background:rgba(37,99,235,.15);border:1px solid rgba(59,130,246,.3);color:#8fc1ff;font-size:12px;font-weight:800;white-space:nowrap}
.mpgf-search-row{margin-top:14px}.mpgf-search{flex:1;min-width:0;display:flex;align-items:center;gap:9px;border:1px solid rgba(74,123,186,.45);background:#07172d;border-radius:11px;padding:0 13px}.mpgf-search .material-symbols-outlined{color:#7eb7ff}.mpgf-search input{width:100%;height:43px;border:0;outline:0;background:transparent;color:#eef6ff;font-size:13px}.mpgf-search input::placeholder{color:#7186a4}.mpgf-search-row>button,.mpgf-360{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(73,124,190,.4);background:rgba(18,45,78,.72);color:#dcecff;border-radius:9px;padding:9px 12px;font-weight:700;font-size:12px;cursor:pointer}.mpgf-search-row>button:hover,.mpgf-360:hover{background:rgba(37,99,235,.28);border-color:#3b82f6}
.mpgf-content{display:grid;grid-template-columns:minmax(310px,.78fr) minmax(640px,1.72fr);gap:16px;margin-top:16px}.mpgf-chart,.mpgf-list{background:rgba(6,17,33,.72);border:1px solid rgba(65,105,158,.24);border-radius:13px;padding:15px;min-width:0}.mpgf-bars{display:flex;flex-direction:column;gap:9px;margin-top:15px}.mpgf-bar-row{display:grid;grid-template-columns:112px minmax(80px,1fr) 92px;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:#cddcf0;padding:3px 5px;border-radius:8px;text-align:left;cursor:pointer}.mpgf-bar-row:hover,.mpgf-bar-row.active{background:rgba(37,99,235,.13)}.mpgf-bar-row>span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mpgf-bar-track{height:11px;background:#101f34;border-radius:3px;overflow:hidden}.mpgf-bar-track i{display:block;height:100%;background:linear-gradient(90deg,#1d63bd,#3d91ed);border-radius:3px}.mpgf-bar-row b{text-align:right;color:#f2f7ff;font-size:11px}.mpgf-bar-row small{color:#8da3c0;font-weight:500}
.mpgf-table-wrap{overflow:auto;margin-top:12px;border:1px solid rgba(65,105,158,.2);border-radius:10px}.mpgf-table{width:100%;border-collapse:collapse;min-width:980px}.mpgf-table th{padding:10px 11px;text-align:left;background:#14233b;color:#cbd9ec;font-size:10px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.mpgf-table td{padding:10px 11px;border-top:1px solid rgba(82,112,151,.17);color:#d9e5f6;font-size:11px;vertical-align:middle}.mpgf-table tbody tr:hover{background:rgba(54,101,164,.08)}.mpgf-table td:first-child small{display:block;color:#7890af;font-size:9px;margin-top:3px}.mpgf-person{border:0;background:transparent;color:#e8f2ff;font-weight:800;padding:0;cursor:pointer;text-align:left}.mpgf-person:hover{color:#68aaff;text-decoration:underline}.mpgf-stage{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.mpgf-stage.green{background:rgba(34,197,94,.16);color:#5ee48d}.mpgf-stage.purple{background:rgba(139,92,246,.16);color:#b69cff}.mpgf-stage.blue{background:rgba(59,130,246,.16);color:#7db6ff}.mpgf-stage.amber{background:rgba(245,158,11,.16);color:#f9c65b}.mpgf-stage.red{background:rgba(239,68,68,.16);color:#ff8585}.mpgf-stage.slate{background:rgba(148,163,184,.14);color:#b7c2d3}.mpgf-360{padding:6px 9px;white-space:nowrap}.mpgf-360 .material-symbols-outlined{font-size:15px}.mpgf-table td.late{color:#ff6767;font-weight:800}.mpgf-table td.done{color:#56d98a}.mpgf-empty{text-align:center!important;color:#8195b1!important;padding:28px!important}.mpgf-table-footer{margin-top:11px;color:#8297b4;font-size:10px}.mpgf-pages{display:flex;gap:5px}.mpgf-pages button{min-width:28px;height:28px;border:1px solid rgba(67,111,167,.32);background:#0d1b30;color:#b9c9df;border-radius:6px;cursor:pointer}.mpgf-pages button.active{background:#1557b7;color:#fff;border-color:#2f79dc}.mpgf-pages button:disabled{opacity:.4;cursor:default}
@media(max-width:1180px){.mpgf-content{grid-template-columns:1fr}.mpgf-chart{min-height:auto}}@media(max-width:700px){.mpgf-head,.mpgf-search-row{align-items:stretch;flex-direction:column}.mpgf-search-row>button{width:100%}.mpgf-bar-row{grid-template-columns:95px minmax(65px,1fr) 78px}.mpgf-section{padding:13px}}

/* Correção gerencial 2026-07-20: total de Recrutamento como indicador guarda-chuva */
.mpgf-chart > header { align-items: center; gap: 12px; }
.mpgf-chart > header > div { min-width: 0; }
.mpgf-recruitment-total {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border: 1px solid rgba(59,130,246,.35);
  border-radius: 999px;
  background: rgba(37,99,235,.12);
  color: #93c5fd;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
@media (max-width: 720px) {
  .mpgf-chart > header { align-items: flex-start; flex-direction: column; }
}


/* Dashboard gerencial — gráfico legado Mobilizados x Cancelados */
.mpg-legacy-pie-panel .mobi-pipeline-3d-header{margin-bottom:6px}
.mpg-legacy-pie-stage{display:flex;align-items:center;justify-content:center;min-height:250px;padding:6px 0 2px}
.mpg-legacy-pie-wrap{position:relative;width:280px;height:190px}
.mpg-legacy-pie-shadow{position:absolute;left:34px;right:34px;bottom:10px;height:44px;border-radius:50%;background:radial-gradient(circle at center,rgba(0,0,0,.42),rgba(0,0,0,0) 72%);filter:blur(6px);opacity:.9}
.mpg-legacy-pie-base{position:absolute;left:40px;right:40px;bottom:22px;height:86px;border-radius:50%;background:linear-gradient(180deg,#18843b 0%,#0e4f24 100%);box-shadow:inset 0 -10px 16px rgba(0,0,0,.16), inset 0 10px 10px rgba(255,255,255,.06)}
.mpg-legacy-pie{position:absolute;top:18px;left:40px;right:40px;height:86px;border-radius:50%;background:var(--mpg-legacy-pie);box-shadow:inset 0 2px 0 rgba(255,255,255,.34), inset 0 -5px 12px rgba(0,0,0,.16), 0 10px 24px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.18)}
.mpg-legacy-pie::after{content:'';position:absolute;inset:8px 12px auto 12px;height:26px;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0));pointer-events:none}
.mpg-legacy-pie-label{position:absolute;top:46px;display:inline-flex;align-items:center;justify-content:center;min-width:66px;padding:6px 10px;border-radius:999px;font-family:Outfit,Inter,sans-serif;font-size:30px;font-weight:900;letter-spacing:-.04em;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.42)}
.mpg-legacy-pie-label-green{left:55px}
.mpg-legacy-pie-label-red{right:58px}
.mpg-legacy-pie-legend{margin-top:8px}
@media(max-width:760px){.mpg-legacy-pie-wrap{width:250px;height:176px}.mpg-legacy-pie-base,.mpg-legacy-pie{left:24px;right:24px}.mpg-legacy-pie-label{font-size:24px;min-width:58px}.mpg-legacy-pie-label-green{left:30px}.mpg-legacy-pie-label-red{right:34px}}


/* Dashboard gerencial — gráfico simples Mobilizados x Cancelados */
.mpg-flat-pie-panel .mobi-pipeline-3d-header{margin-bottom:6px}
.mpg-flat-pie-stage{display:flex;align-items:center;justify-content:center;padding:14px 0 6px}
.mpg-flat-pie{width:190px;height:190px;border-radius:50%;background:var(--mpg-flat-pie);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.20);border:1px solid rgba(255,255,255,.12)}
.mpg-flat-pie-center{width:96px;height:96px;border-radius:50%;background:rgba(7,19,44,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.mpg-flat-pie-total{font-family:Outfit,Inter,sans-serif;font-weight:900;font-size:32px;line-height:1;color:#fff}
.mpg-flat-pie-caption{margin-top:4px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:rgba(226,232,240,.78)}
.mpg-flat-pie-legend-detail{display:grid;grid-template-columns:1fr;gap:8px;margin-top:8px}
.mpg-flat-pie-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(148,163,184,.14);border-radius:12px;background:rgba(15,23,42,.34)}
.mpg-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.mpg-flat-pie-name{flex:1 1 auto;font-size:12px;font-weight:700;color:#e5eefc}
.mpg-flat-pie-value{font-size:12px;font-weight:800;color:#fff}
@media(max-width:760px){.mpg-flat-pie{width:170px;height:170px}.mpg-flat-pie-center{width:86px;height:86px}.mpg-flat-pie-total{font-size:28px}}
