/* MobilizaPRO — Dashboard Oficial — Etapa 1D
   Layout-master aprovado: hierarquia visual nativa, sem alterar métricas.
   HERO 60/40; Entregue x Falta 50/50; Apoio 50/50; Histograma 100%. */
#page-dashboard { padding: 0 !important; }
#page-dashboard .mpdash-v2{
  --mp-bg:#06111f;
  --mp-card:#0b192b;
  --mp-card-2:#0d1d31;
  --mp-line:rgba(64,145,232,.28);
  --mp-line-soft:rgba(148,183,220,.13);
  --mp-blue:#1d8fff;
  --mp-cyan:#42c8f5;
  --mp-green:#1fd589;
  --mp-red:#ff5364;
  --mp-yellow:#f7c444;
  --mp-text:#f2f7ff;
  --mp-muted:#91a4bc;
  width:100%; max-width:1760px; margin:0 auto; padding:16px 18px 24px;
  color:var(--mp-text); box-sizing:border-box;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
#page-dashboard .mpdash-v2 *{ box-sizing:border-box; }
.mpdash-v2-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:10px;}
.mpdash-v2-eyebrow{display:block;font-size:10px;line-height:1;font-weight:800;letter-spacing:.18em;color:#6cb8ff;margin-bottom:6px;}
.mpdash-v2-head h2{margin:0;font-family:var(--font-display,Inter,sans-serif);font-size:clamp(23px,1.7vw,32px);line-height:1.05;font-weight:900;letter-spacing:-.035em;color:#fff;}
.mpdash-v2-head p{margin:4px 0 0;color:var(--mp-muted);font-size:11px;}
.mpdash-v2-head-actions{display:flex;align-items:flex-end;gap:10px;}
.mpdash-v2-banner{min-width:270px;display:flex;align-items:center;gap:11px;padding:10px 15px;border:1px solid rgba(29,143,255,.32);border-radius:11px;background:linear-gradient(135deg,rgba(8,44,78,.92),rgba(5,27,52,.72));overflow:hidden;position:relative;}
.mpdash-v2-banner:after{content:"M";position:absolute;right:-2px;bottom:-31px;font:900 92px/1 Arial;color:rgba(37,127,220,.10);transform:skew(-9deg);}
.mpdash-v2-banner>.material-symbols-outlined{font-size:27px;color:var(--mp-blue);}
.mpdash-v2-banner strong,.mpdash-v2-banner small{display:block;position:relative;z-index:1}.mpdash-v2-banner strong{font-size:13px}.mpdash-v2-banner small{font-size:10px;color:#a9bad0;margin-top:2px}
.mpdash-v2-period{display:flex;flex-direction:column;gap:4px}.mpdash-v2-period>span{font-size:8px;font-weight:800;letter-spacing:.14em;color:#8299b4}.mpdash-v2-period select{height:38px;min-width:134px;border-radius:9px;border:1px solid rgba(80,132,189,.28);background:#0b1a2e;color:#dce9f7;padding:0 28px 0 12px;font-size:11px;outline:none}
.mpdash-v2-grid{display:grid;gap:12px;margin-bottom:12px}
.mpdash-v2-grid-hero{grid-template-columns:minmax(0,3fr) minmax(360px,2fr)}
.mpdash-v2-grid-demand{grid-template-columns:repeat(2,minmax(0,1fr))}
.mpdash-v2-grid-support{grid-template-columns:repeat(2,minmax(0,1fr))}
.mpdash-v2-card{position:relative;border:1px solid var(--mp-line);border-radius:10px;background:linear-gradient(180deg,rgba(13,30,50,.98),rgba(7,20,36,.98));box-shadow:0 10px 26px rgba(0,0,0,.12);overflow:hidden;min-width:0;}
.mpdash-v2-card:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(69,166,255,.38),transparent);pointer-events:none;}
.mpdash-v2-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 14px 7px}.mpdash-v2-card-head h3{margin:0;font-size:13px;line-height:1.15;font-weight:850;color:#f3f8ff}.mpdash-v2-card-head p{margin:4px 0 0;font-size:9px;color:#8296af;line-height:1.3}.mpdash-v2-card-icon{color:#39a8ff;background:#0c2846;border:1px solid rgba(42,142,235,.25);border-radius:8px;padding:6px;font-size:19px}.mpdash-v2-stage-pill{flex:none;border:1px solid rgba(55,140,224,.26);background:#0b2744;color:#65b9ff;border-radius:999px;padding:4px 8px;font-size:7px;font-weight:900;letter-spacing:.1em}
.mpdash-v2-time{min-height:330px}.mpdash-v2-time-chart{height:272px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:10px;padding:8px 15px 15px}.mpdash-v2-time-stage{height:100%;display:grid;grid-template-rows:18px 1fr 35px;align-items:end;text-align:center;position:relative}.mpdash-v2-time-stage b{font-size:13px;color:#dfeafb;align-self:end}.mpdash-v2-time-stage i{display:block;width:min(70%,62px);height:var(--h);margin:5px auto 0;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#39bdff,#0878ec);box-shadow:0 0 18px rgba(28,141,255,.16);min-height:18px}.mpdash-v2-time-stage span{font-size:8px;color:#b7c6d8;line-height:1.25;align-self:end}.mpdash-v2-time-total{border-left:1px solid rgba(87,143,199,.22);padding-left:8px}.mpdash-v2-time-total i{background:linear-gradient(180deg,#31e0bc,#0bad83);box-shadow:0 0 20px rgba(31,213,137,.16)}.mpdash-v2-time-total span{color:#37e3bd;font-weight:800}
.mpdash-v2-outcome{min-height:330px}.mpdash-v2-outcome-main{display:grid;grid-template-columns:155px 1fr;align-items:center;gap:6px;padding:5px 14px 8px}.mpdash-v2-donut{width:142px;height:142px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--mp-green) 0 50%,var(--mp-red) 50% 100%);position:relative}.mpdash-v2-donut:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:#08192b;border:1px solid rgba(118,160,202,.14)}.mpdash-v2-donut>div{position:relative;z-index:1;text-align:center}.mpdash-v2-donut strong{display:block;font-size:28px;line-height:1}.mpdash-v2-donut small{display:block;color:#bcc9d8;font-size:9px;line-height:1.2;margin-top:3px}.mpdash-v2-legend{display:grid;gap:13px}.mpdash-v2-legend span{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:10px;color:#d2ddeb}.mpdash-v2-legend i{width:9px;height:9px;border-radius:50%;background:var(--mp-green)}.mpdash-v2-legend i.bad{background:var(--mp-red)}.mpdash-v2-legend b{font-size:11px;color:#fff}.mpdash-v2-outcome-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 14px 14px}.mpdash-v2-outcome-cards>div{display:flex;align-items:center;gap:8px;border-radius:9px;padding:10px;border:1px solid rgba(30,210,133,.25);background:rgba(16,104,75,.12)}.mpdash-v2-outcome-cards>div.bad{border-color:rgba(255,83,100,.28);background:rgba(126,34,51,.14)}.mpdash-v2-outcome-cards .material-symbols-outlined{font-size:21px;color:var(--mp-green)}.mpdash-v2-outcome-cards .bad .material-symbols-outlined{color:var(--mp-red)}.mpdash-v2-outcome-cards strong{display:block;font-size:19px;line-height:1}.mpdash-v2-outcome-cards small{font-size:8px;color:#b9c7d6}
.mpdash-v2-functions{min-height:238px}.mpdash-v2-rank{display:grid;gap:6px;padding:5px 14px 12px}.mpdash-v2-rank>div{display:grid;grid-template-columns:minmax(90px,1.05fr) minmax(90px,1.4fr) 18px;align-items:center;gap:7px;min-height:19px}.mpdash-v2-rank span{font-size:9px;color:#d9e4f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mpdash-v2-rank i{display:block;height:8px;border-radius:2px;background:#102b47;overflow:hidden;position:relative}.mpdash-v2-rank i:after{content:"";display:block;width:var(--w);height:100%;background:linear-gradient(90deg,#0b7eea,#46c7f8);border-radius:inherit}.mpdash-v2-rank-yellow i:after{background:linear-gradient(90deg,#ffb724,#ffd75b)}.mpdash-v2-rank b{font-size:9px;color:#eaf4ff;text-align:right}
.mpdash-v2-grid-demand>.mpdash-v2-card{min-height:238px}.mpdash-v2-grid-support>.mpdash-v2-card{min-height:188px}.mpdash-v2-housing-row{display:grid;grid-template-columns:65px 34px 1fr 32px;align-items:center;gap:8px;padding:7px 14px;border-top:1px solid rgba(119,157,195,.11)}.mpdash-v2-housing-row span{font-size:11px}.mpdash-v2-housing-row strong{font-size:18px}.mpdash-v2-housing-row>div{height:10px;background:#0b2947;border:1px solid rgba(44,130,213,.2);border-radius:4px;overflow:hidden}.mpdash-v2-housing-row>div i{display:block;width:var(--w);height:100%;background:linear-gradient(90deg,#1189f5,#4ecbf4)}.mpdash-v2-housing-row>div i.green{background:linear-gradient(90deg,#10c899,#57e0bc)}.mpdash-v2-housing-row b{font-size:10px;color:#38a9ff}.mpdash-v2-housing-foot{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:7px 14px 11px}.mpdash-v2-housing-foot>div{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:9px;border:1px solid rgba(67,125,183,.2);border-radius:9px;background:rgba(10,33,57,.58)}.mpdash-v2-housing-foot .material-symbols-outlined{grid-row:1/3;font-size:25px;color:#59b7ff}.mpdash-v2-housing-foot small{font-size:8px;color:#91a5bb}.mpdash-v2-housing-foot strong{font-size:13px}.mpdash-v2-housing-foot>div:last-child .material-symbols-outlined{font-size:17px;color:#2addad}
.mpdash-v2-travel-row{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid rgba(119,157,195,.11)}.mpdash-v2-travel-row>.material-symbols-outlined{font-size:19px;color:#5eb8ff}.mpdash-v2-travel-row:nth-child(3)>.material-symbols-outlined,.mpdash-v2-travel-row:nth-child(4)>.material-symbols-outlined{color:#27d4a4}.mpdash-v2-travel-row em{font-style:normal;font-size:10px;color:#c9d5e4}.mpdash-v2-travel-row strong{font-size:16px}.mpdash-v2-histogram{min-height:225px}.mpdash-v2-histogram-canvas{height:168px;margin:0 14px 14px;position:relative;border-top:1px solid rgba(78,126,175,.16);overflow:hidden}.mpdash-v2-h-grid{position:absolute;inset:15px 0 32px;background:repeating-linear-gradient(to bottom,rgba(88,131,174,.14) 0 1px,transparent 1px 36px),repeating-linear-gradient(to right,rgba(88,131,174,.08) 0 1px,transparent 1px 20%)}.mpdash-v2-h-period{position:absolute;inset:15px 18px 26px;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;z-index:2}.mpdash-v2-h-period>span{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px;position:relative;padding-bottom:18px}.mpdash-v2-h-period i{display:block;width:24px;height:var(--h);min-height:14px;border-radius:4px 4px 1px 1px;background:linear-gradient(180deg,#3cbcff,#0b7de9)}.mpdash-v2-h-period i.actual{background:linear-gradient(180deg,#2be3b4,#0eb785)}.mpdash-v2-h-period b{position:absolute;bottom:0;font-size:8px;color:#9aadc2;font-weight:600}.mpdash-v2-h-lines{position:absolute;left:18px;right:18px;top:13px;width:calc(100% - 36px);height:128px;z-index:3;pointer-events:none}.mpdash-v2-h-lines polyline{fill:none;stroke:#37b8ff;stroke-width:2;stroke-dasharray:7 5}.mpdash-v2-h-lines polyline.actual{stroke:#30dda7}.mpdash-v2-h-legend{position:absolute;right:2px;top:2px;display:flex;gap:10px;z-index:4}.mpdash-v2-h-legend span{display:flex;align-items:center;gap:4px;font-size:7px;color:#aebed0}.mpdash-v2-h-legend i{width:7px;height:7px;border-radius:50%;background:#2aa8ff}.mpdash-v2-h-legend i.actual{background:#25dca6}.mpdash-v2-h-legend i.line{width:17px;height:0;border-top:2px dashed #2aa8ff;border-radius:0;background:none}.mpdash-v2-h-legend i.line.actual{border-color:#25dca6}
@media(max-width:1180px){#page-dashboard .mpdash-v2{padding:14px}.mpdash-v2-grid-hero{grid-template-columns:1.45fr 1fr}.mpdash-v2-grid-demand,.mpdash-v2-grid-support{grid-template-columns:1fr 1fr}.mpdash-v2-head{align-items:flex-start}.mpdash-v2-head-actions{flex-direction:column-reverse;align-items:flex-end}.mpdash-v2-banner{min-width:250px}}
@media(max-width:820px){.mpdash-v2-head{flex-direction:column}.mpdash-v2-head-actions{width:100%;align-items:stretch}.mpdash-v2-banner{min-width:0}.mpdash-v2-period select{width:100%}.mpdash-v2-grid-hero,.mpdash-v2-grid-demand,.mpdash-v2-grid-support{grid-template-columns:1fr}.mpdash-v2-time-chart{gap:4px;padding-inline:8px}.mpdash-v2-time-stage span{font-size:7px}.mpdash-v2-outcome-main{grid-template-columns:125px 1fr}.mpdash-v2-donut{width:115px;height:115px}.mpdash-v2-donut:after{width:73px;height:73px}}

/* Etapa 1D — fidelidade ao layout-master aprovado */
.mpdash-v2-grid-hero .mpdash-v2-time,.mpdash-v2-grid-hero .mpdash-v2-outcome{height:330px}
.mpdash-v2-grid-demand .mpdash-v2-functions,.mpdash-v2-grid-demand .mpdash-v2-vacancies{height:238px}
.mpdash-v2-grid-support .mpdash-v2-housing,.mpdash-v2-grid-support .mpdash-v2-travel{height:188px}
.mpdash-v2-vacancies .mpdash-v2-rank{padding-top:5px}
.mpdash-v2-grid-support .mpdash-v2-card-head{padding-bottom:6px}
.mpdash-v2-grid-support .mpdash-v2-card-head p{margin-top:3px}
.mpdash-v2-travel .mpdash-v2-travel-row{min-height:37px}
.mpdash-v2-histogram{margin-top:0}
@media(min-width:1500px){
  .mpdash-v2-grid-hero{grid-template-columns:minmax(0,1.62fr) minmax(410px,1fr)}
  .mpdash-v2-time-chart{padding-left:20px;padding-right:20px}
  .mpdash-v2-card-head h3{font-size:14px}
  .mpdash-v2-rank span{font-size:9.5px}
}
