/* POWER 4P — Vitrine Visual v2.0 | identidade unificada, dashboards diferentes */
:root{--viz-brand:#111e41;--viz-gold:#faa31b}
.p4p-app,.sst-page,.fin-page,#panel{--viz-accent:#42bba8;--viz-alt:#faa31b;--viz-bg:#f3f6fb;--viz-panel:#ffffff;--viz-ink:#111e41;--viz-text:#43516a;--viz-grid:#e3e8f0;--viz-muted:#65738a;--viz-good:#188166;--viz-danger:#dc7253}
.p4p-app[data-viz-area="operacoes"]{--viz-accent:#26b8a6;--viz-alt:#d8f36d}
.p4p-app[data-viz-area="people-analytics"]{--viz-accent:#8557d6;--viz-alt:#ff8c87}
.p4p-app[data-viz-area="comercial"]{--viz-accent:#4169f5;--viz-alt:#f985ba}
.p4p-app[data-viz-area="logistica"]{--viz-accent:#0088b9;--viz-alt:#ffae57}
.p4p-app[data-viz-area="compras"]{--viz-accent:#6d8d3e;--viz-alt:#e6a63c}
.p4p-app[data-viz-area="qualidade"]{--viz-accent:#b24b72;--viz-alt:#56aeab}
.p4p-app[data-viz-area="projetos"]{--viz-accent:#8c69e5;--viz-alt:#3fd7c2}
#panel[data-viz-area="manutencao"]{--viz-accent:#3363c9;--viz-alt:#faa31b}
.sst-page[data-viz-area="sst"]{--viz-accent:#0a9185;--viz-alt:#ef9b55}
.fin-page[data-viz-area="financas"]{--viz-accent:#137c86;--viz-alt:#e9b54c}
/* Enquanto o tema corporativo permanece reconhecível, cada área ganha atmosfera visual própria. */
.p4p-app[data-viz-area="operacoes"] .p4p-aside{background:linear-gradient(135deg,#122b32,#064f51)}
.p4p-app[data-viz-area="people-analytics"] .p4p-aside{background:linear-gradient(135deg,#39265d,#7651a3)}
.p4p-app[data-viz-area="comercial"] .p4p-aside{background:linear-gradient(135deg,#142967,#3152b9)}
.p4p-app[data-viz-area="logistica"] .p4p-aside{background:linear-gradient(135deg,#0b3250,#087d94)}
.p4p-app[data-viz-area="compras"] .p4p-aside{background:linear-gradient(135deg,#303c24,#637839)}
.p4p-app[data-viz-area="qualidade"] .p4p-aside{background:linear-gradient(135deg,#48213b,#99485c)}
.p4p-app[data-viz-area="projetos"] .p4p-aside{background:linear-gradient(135deg,#1c193f,#5c3b9e)}
.p4p-app[data-viz-area] .p4p-overline{color:var(--viz-accent)}
.p4p-app[data-viz-area] .p4p-kpi.p4p-selected{border-color:var(--viz-accent);box-shadow:0 3px 16px color-mix(in srgb,var(--viz-accent) 25%,transparent)}
.p4p-app[data-viz-area] .p4p-bar-fill{background:linear-gradient(90deg,var(--viz-accent),var(--viz-alt))}
.p4p-app[data-viz-area] .p4p-sectiontitle{border-left:4px solid var(--viz-accent);padding-left:14px}
.p4p-app[data-viz-area] .p4p-kpi{border-top:3px solid var(--viz-accent)}
.viz-signature{margin:16px 0 23px;isolation:isolate;color:var(--viz-ink)}
.viz-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 13px;flex-wrap:wrap}
.viz-heading h2{margin:2px 0 0;font-size:clamp(20px,2vw,25px);letter-spacing:-.5px;color:var(--viz-ink)}
.viz-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:1.7px;text-transform:uppercase;color:var(--viz-accent)}
.viz-switch{border:1px solid var(--viz-grid);border-radius:99px;padding:9px 14px;background:var(--viz-panel);color:var(--viz-ink);font-size:12px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.viz-switch:focus-visible{outline:3px solid var(--viz-alt);outline-offset:2px}
.viz-panels{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:16px;align-items:stretch}
.viz-box{background:var(--viz-panel);border:1px solid var(--viz-grid);border-radius:14px;padding:20px 22px;box-shadow:0 6px 23px #0b183708;min-width:0;overflow:hidden}
.viz-box h3{font-size:16px;color:var(--viz-ink);margin:0 0 5px;font-weight:800}
.viz-box p{font-size:11px;line-height:1.65;color:var(--viz-muted);margin:0 0 13px}
.viz-graphic{min-height:240px;display:flex;align-items:center;justify-content:center;width:100%}
.viz-svg{width:100%;height:auto;overflow:visible;display:block;max-height:355px}
.viz-svg text{font:11px Arial,sans-serif;fill:var(--viz-muted)}
.viz-svg .viz-strong{fill:var(--viz-ink);font-size:14px;font-weight:800}
.viz-svg .viz-gridline{stroke:var(--viz-grid)}
.viz-legend{display:flex;flex-wrap:wrap;gap:10px 17px;margin:10px 0;font-size:11px;color:var(--viz-text)}
.viz-swatch{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px}
.viz-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.viz-stat{background:color-mix(in srgb,var(--viz-accent) 8%,var(--viz-panel));border-radius:9px;padding:11px 13px}
.viz-stat span{font-size:10px;color:var(--viz-muted);display:block;margin-bottom:5px}
.viz-stat strong{font-size:18px;color:var(--viz-ink);display:block}
.viz-small{font-size:11px;color:var(--viz-muted);margin-top:12px!important}
.viz-heatmap{display:grid;grid-template-columns:112px repeat(3,1fr);gap:7px;align-items:stretch;width:100%;margin:18px 0}
.viz-heatmap .viz-hm-cell{padding:13px 6px;text-align:center;border:1px solid var(--viz-grid);border-radius:7px;font-size:11px;line-height:1.4;font-weight:800}
.viz-hm-label{font-size:11px;align-self:center;color:var(--viz-text)}
.viz-hm-head{font-size:10px;text-align:center;color:var(--viz-muted);align-self:center}
.viz-funnel{width:100%;padding:12px 0}
.viz-funnel-step{min-height:46px;margin:6px auto;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;color:#fff;border-radius:5px;font-weight:800;gap:16px;font-size:12px;box-sizing:border-box}
.viz-funnel-step span{font-size:11px;white-space:nowrap}
.viz-funnel-step strong{font-size:15px;color:#fff}
.viz-pareto{width:100%}
.viz-pareto-row{display:grid;grid-template-columns:minmax(90px,1fr) 2.4fr auto;align-items:center;gap:8px;font-size:11px;color:var(--viz-text);margin:11px 0}
.viz-pareto-track{height:13px;background:var(--viz-grid);border-radius:4px;overflow:hidden}
.viz-pareto-fill{height:100%;border-radius:4px;background:var(--viz-accent)}
.viz-pareto-val{font-weight:800;color:var(--viz-ink)}
.viz-bullet-row{display:grid;grid-template-columns:minmax(88px,1fr) 2fr 50px;align-items:center;gap:8px;font-size:11px;color:var(--viz-text);margin:12px 0}
.viz-bullet-track{height:17px;background:var(--viz-grid);border-radius:4px;position:relative;overflow:visible}
.viz-bullet-fill{height:100%;border-radius:4px;background:var(--viz-accent)}
.viz-bullet-target{position:absolute;top:-4px;height:25px;width:2px;background:var(--viz-ink)}
.viz-bullet-value{font-weight:800;color:var(--viz-ink)}
.viz-annotations{margin:12px 0 0;border-left:3px solid var(--viz-accent);background:color-mix(in srgb,var(--viz-accent) 6%,var(--viz-panel));padding:10px 13px;border-radius:4px;font-size:11px;color:var(--viz-text);line-height:1.6}
/* Alternância claro/escuro nos dashboards sem alterar o portal institucional */
.p4p-app[data-viz-theme="dark"],.sst-page[data-viz-theme="dark"],.fin-page[data-viz-theme="dark"],#panel[data-viz-theme="dark"]{--viz-bg:#0b1121;--viz-panel:#17223a;--viz-ink:#f4f7ff;--viz-text:#d2dbea;--viz-grid:#34425d;--viz-muted:#b6c5dd;--viz-good:#67d7a9;--viz-danger:#ff907b;color:var(--viz-ink)}
.p4p-app[data-viz-theme="dark"],.sst-page[data-viz-theme="dark"],.fin-page[data-viz-theme="dark"]{background:var(--viz-bg)!important}
.p4p-app[data-viz-theme="dark"] .p4p-card,.p4p-app[data-viz-theme="dark"] .p4p-kpi,.sst-page[data-viz-theme="dark"] .sst-box,.sst-page[data-viz-theme="dark"] .sst-kpi,.sst-page[data-viz-theme="dark"] .control-card,.fin-page[data-viz-theme="dark"] .fin-card,.fin-page[data-viz-theme="dark"] .fin-kpi,#panel[data-viz-theme="dark"] .box,#panel[data-viz-theme="dark"] .kpi{background:var(--viz-panel)!important;border-color:var(--viz-grid)!important;color:var(--viz-ink)!important}
.p4p-app[data-viz-theme="dark"] .p4p-hero h1,.p4p-app[data-viz-theme="dark"] h2,.p4p-app[data-viz-theme="dark"] .p4p-kpi-value,.p4p-app[data-viz-theme="dark"] .p4p-kpi-name,.p4p-app[data-viz-theme="dark"] .p4p-lever strong,.p4p-app[data-viz-theme="dark"] .p4p-cardhead h2,.p4p-app[data-viz-theme="dark"] .p4p-reading h2,.sst-page[data-viz-theme="dark"] h1,.sst-page[data-viz-theme="dark"] h2,.sst-page[data-viz-theme="dark"] .sst-kpi .big,.fin-page[data-viz-theme="dark"] h1,.fin-page[data-viz-theme="dark"] h2,.fin-page[data-viz-theme="dark"] .fin-kpi strong,#panel[data-viz-theme="dark"] h3,#panel[data-viz-theme="dark"] .value{color:var(--viz-ink)!important}
.p4p-app[data-viz-theme="dark"] .p4p-hero p,.p4p-app[data-viz-theme="dark"] p,.sst-page[data-viz-theme="dark"] .dashboard-intro p,.fin-page[data-viz-theme="dark"] p,.p4p-app[data-viz-theme="dark"] .p4p-kpi-target{color:var(--viz-muted)!important}
.p4p-app[data-viz-theme="dark"] select,.sst-page[data-viz-theme="dark"] select,.fin-page[data-viz-theme="dark"] select,#panel[data-viz-theme="dark"] select{background:#202d46!important;border-color:var(--viz-grid)!important;color:var(--viz-ink)!important}
.p4p-app[data-viz-theme="dark"] .p4p-insight,.p4p-app[data-viz-theme="dark"] .p4p-lever,.p4p-app[data-viz-theme="dark"] .p4p-bar{background:#23314b!important;color:var(--viz-text)!important}
.p4p-app[data-viz-theme="dark"] .p4p-dash svg text,.sst-page[data-viz-theme="dark"] svg text,.fin-page[data-viz-theme="dark"] svg text,#panel[data-viz-theme="dark"] svg text{fill:var(--viz-muted)!important}
.p4p-app[data-viz-theme="dark"] .p4p-chart svg [stroke="#111e41"],#panel[data-viz-theme="dark"] #line svg [stroke="#111E41"]{stroke:var(--viz-accent)!important}
.p4p-app[data-viz-theme="dark"] th,.p4p-app[data-viz-theme="dark"] td,.sst-page[data-viz-theme="dark"] th,.sst-page[data-viz-theme="dark"] td,.fin-page[data-viz-theme="dark"] th,.fin-page[data-viz-theme="dark"] td,#panel[data-viz-theme="dark"] th,#panel[data-viz-theme="dark"] td{color:var(--viz-text)!important;border-color:var(--viz-grid)!important}
#panel[data-viz-theme="dark"]{background:#0b1121!important}
#panel[data-viz-theme="dark"] .panelbody{background:#0b1121;color:var(--viz-ink)}
#panel[data-viz-theme="dark"] .panelhead{background:#17223a;color:var(--viz-ink)}
#panel[data-viz-theme="dark"] .panelhead h2{color:var(--viz-ink)}
#panel[data-viz-theme="dark"] .notice{color:var(--viz-muted)}
@media(max-width:890px){.viz-panels{grid-template-columns:1fr}.viz-graphic{min-height:180px}}
@media(max-width:540px){.viz-box{padding:16px}.viz-heading{align-items:flex-start}.viz-heatmap{grid-template-columns:86px repeat(3,minmax(0,1fr));gap:4px}.viz-heatmap .viz-hm-cell{padding:9px 3px;font-size:9px}.viz-hm-head{font-size:9px}.viz-graphic{min-height:180px}}
@media(prefers-reduced-motion:reduce){.viz-signature *{transition:none!important;animation:none!important}}
/* Composições distintas para que cada módulo pareça uma experiência própria */
.p4p-app[data-viz-area="operacoes"] .viz-panels{grid-template-columns:1.7fr 1fr}
.p4p-app[data-viz-area="people-analytics"] .viz-panels{grid-template-columns:1.55fr 1fr}
.p4p-app[data-viz-area="comercial"] .viz-panels{grid-template-columns:1fr 1fr}
.p4p-app[data-viz-area="logistica"] .viz-panels{grid-template-columns:1.25fr 1fr}
.p4p-app[data-viz-area="compras"] .viz-panels{grid-template-columns:1.05fr 1fr}
.p4p-app[data-viz-area="qualidade"] .viz-panels{grid-template-columns:1.7fr 1fr}
.p4p-app[data-viz-area="projetos"] .viz-panels{grid-template-columns:1.9fr 1fr}
.p4p-app[data-viz-area="projetos"] .viz-heading h2{font-weight:900}
.p4p-app[data-viz-area="comercial"] .p4p-kpi{border-radius:4px 18px 4px 18px}
.p4p-app[data-viz-area="qualidade"] .p4p-kpi{border-radius:4px}
.p4p-app[data-viz-area="logistica"] .viz-box{border-radius:18px}
.p4p-app[data-viz-area="compras"] .viz-box{border-radius:5px}
.p4p-app[data-viz-area="people-analytics"] .viz-box{border-radius:22px}
@media(max-width:890px){.p4p-app[data-viz-area] .viz-panels{grid-template-columns:1fr}}
/* Refinamentos de leitura nos layouts densos */
.viz-graphic{flex-direction:column;align-items:stretch;justify-content:center}
.viz-graphic .viz-legend{width:100%;margin:3px 0 8px}
.viz-graphic>.viz-svg{flex:0 0 auto}
.viz-graphic .viz-stats{width:100%;max-width:none!important}
.viz-stat{min-width:0;overflow-wrap:anywhere}
.viz-stat strong{font-size:16px;line-height:1.2}
.viz-graphic>.viz-pareto,.viz-graphic>.viz-funnel{width:100%}
.viz-graphic>div[style*="display:flex"]{width:100%}
