/* V31.4.0 — Product Cost / revisões EBOM-MBOM + bases corporativas */
.v3140-badge{display:inline-flex;align-items:center;border:1px solid var(--v21-border,#dfe3e8);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;background:var(--v21-surface,#fff);white-space:nowrap}.v3140-badge.center{background:#eef6ff;color:#255ea8;border-color:#cfe1f5}.v3140-base-chip{display:inline-flex;padding:4px 9px;border-radius:8px;background:#eef8ef;color:#246a32;font-size:11px;font-weight:800}.v3140-cost-mode{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:12px 0}.v3140-cost-mode>span{font-size:12px;color:var(--v21-muted,#68717d);font-weight:700;margin-right:4px}.v3140-cost-mode button{border:1px solid var(--v21-border,#dfe3e8);background:var(--v21-surface,#fff);border-radius:8px;padding:6px 10px;font-weight:700;cursor:pointer}.v3140-cost-mode button.on{background:#fff2e6;border-color:#ef7d00;color:#b95c00}.v290-kpi.accent{border-color:#ef7d00;background:#fff7ee}.v290-kpi.warn strong{color:#a16e00}.v3140-engineering-costs{margin-top:14px;border:1px solid var(--v21-border,#dfe3e8);border-radius:10px;padding:10px 12px}.v3140-engineering-costs summary{cursor:pointer;font-weight:800}.v3140-match{display:inline-flex;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:900;letter-spacing:.2px;background:#eef0f3;color:#606a76}.v3140-match.primary{background:#e3f6e9;color:#1d7a34}.v3140-match.fallback{background:#fff3cd;color:#7c5b00}.v3140-match.manual{background:#eae6fb;color:#6846bd}.v3140-match+small,.v3140-bom-table td small{display:block;font-size:9.5px;color:var(--v21-muted,#7a8491);margin-top:2px}.v3140-apply{border-color:#ef7d00!important;color:#b95c00!important}.v3140-base-rule{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0;padding:10px 12px;border:1px solid #f1dfc5;border-radius:10px;background:#fff8ee}.v3140-base-rule span{padding:2px 7px;background:#fff;border-radius:6px;font-size:12px}.v3140-apply-dialog .inner{width:min(1050px,94vw)}.v3140-preview{margin:14px 0;min-height:110px}.v3140-preview-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;margin-bottom:12px}.v3140-preview-kpis span{padding:10px;border:1px solid var(--v21-border,#dfe3e8);border-radius:10px;background:var(--v21-surface,#fff);font-size:12px}.v3140-preview-kpis b{display:block;font-size:19px}.v3140-fallback-head{display:flex;gap:8px;align-items:center;margin:10px 0}.v3140-fallback-head b{flex:1}.v3140-fallback-list{max-height:330px;overflow:auto;border:1px solid var(--v21-border,#dfe3e8);border-radius:10px}.v3140-fallback-list label{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--v21-border,#e8eaee);cursor:pointer}.v3140-fallback-list label:last-child{border-bottom:0}.v3140-fallback-list span{display:flex;flex-direction:column}.v3140-fallback-list em{font-style:normal;font-size:11px;color:var(--v21-muted,#6c7581);text-align:right}.v3140-warning{margin-top:9px;padding:8px 10px;background:#fff3cd;color:#624d00;border-radius:8px;font-size:12px}.v3140-curve{width:100%;height:210px;margin:10px 0 16px;border:1px solid var(--v21-border,#dfe3e8);border-radius:12px;background:var(--v21-surface,#fff)}.v3140-curve line{stroke:#cfd5dc;stroke-width:1}.v3140-curve polyline{stroke:#ef7d00;stroke-width:3}.v3140-curve circle{fill:#ef7d00;stroke:#fff;stroke-width:2}.v3140-bom-table{min-width:1400px}.v3140-bom-table .v290-item-main small{display:block;font-size:9px;color:var(--v21-muted,#7a8491)}
@media(max-width:850px){.v3140-preview-kpis{grid-template-columns:1fr 1fr}.v3140-fallback-list label{grid-template-columns:24px 1fr}.v3140-fallback-list em{grid-column:2;text-align:left}}
html[data-theme="dark"] .v3140-badge.center{background:#1d3146;color:#9fc8f1;border-color:#36556f}html[data-theme="dark"] .v3140-base-chip{background:#193723;color:#72d68d}html[data-theme="dark"] .v3140-cost-mode button.on{background:#3b2a17;color:#ffae5c;border-color:#b96b23}html[data-theme="dark"] .v290-kpi.accent{background:#302419}html[data-theme="dark"] .v3140-base-rule{background:#2d251a;border-color:#55452f}html[data-theme="dark"] .v3140-base-rule span{background:#24272d}html[data-theme="dark"] .v3140-warning{background:#3b3418;color:#ead783}

.v3140-recalc{background:#fff3cd!important;color:#745b00!important;border-color:#e7cf7d!important}.v3140-item-flags{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}.v3140-item-flag{display:inline-flex;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:800;background:#eef0f3;color:#606a76}.v3140-item-flag.absorbed{background:#e7f5ec;color:#236b3b}.v3140-item-flag.escape{background:#e8f0ff;color:#315ea8}.v3140-item-flag.manual{background:#f3eafd;color:#7149ad}.v3140-structural-choice .inner{width:min(620px,92vw)}.v3140-structural-options{display:grid;gap:10px;margin:18px 0}.v3140-structural-options label{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;border:1px solid var(--v21-border,#dfe3e8);border-radius:12px;padding:12px;cursor:pointer}.v3140-structural-options label.selected{border-color:#ef7d00;background:#fff8ee}.v3140-structural-options input{margin-top:3px}.v3140-structural-options span{display:flex;flex-direction:column;gap:4px}.v3140-structural-options small{color:var(--v21-muted,#68717d);line-height:1.35}.v3140-structural-choice menu{display:flex;align-items:center;gap:8px;padding:0;margin:14px 0 0}.v3140-structural-choice .grow{flex:1}html[data-theme="dark"] .v3140-recalc{background:#3b3418!important;color:#ead783!important;border-color:#6d5c25!important}html[data-theme="dark"] .v3140-item-flag.absorbed{background:#183728;color:#8ed4a8}html[data-theme="dark"] .v3140-item-flag.escape{background:#1d3146;color:#9fc8f1}html[data-theme="dark"] .v3140-item-flag.manual{background:#302844;color:#c7adf2}html[data-theme="dark"] .v3140-structural-options label.selected{background:#302419}

/* V31.4.1 — Bases corporativas: somente indicadores e histórico resumido, sem lista de materiais. */
.v3141-base-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin:14px 0 18px}.v3141-base-kpis>div{border:1px solid var(--v21-border,#dfe3e8);border-radius:12px;padding:12px 14px;background:var(--v21-surface,#fff)}.v3141-base-kpis small{display:block;color:var(--v21-muted,#68717d);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;margin-bottom:5px}.v3141-base-kpis b{font-size:18px}.v3141-base-history h3{margin:4px 0 10px;font-size:14px}.v3141-negative-note{display:block;margin-top:3px;color:#a16e00;font-size:10px;white-space:nowrap}@media(max-width:950px){.v3141-base-kpis{grid-template-columns:1fr 1fr}}@media(max-width:560px){.v3141-base-kpis{grid-template-columns:1fr}}


/* V31.4.3 — Modal dual-base sem rolagem horizontal + dashboard executivo inspirado no painel validado. */
.v3143-apply-dialog{width:min(1420px,calc(100vw - 24px));max-width:none;max-height:92vh;padding:0;border:0;overflow:hidden}.v3143-apply-dialog .inner{width:100%;max-width:none;box-sizing:border-box;max-height:92vh;overflow-y:auto;overflow-x:hidden;padding:22px!important}.v3143-base-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}.v3143-base-pair label{min-width:0;font-size:10px;font-weight:900;text-transform:uppercase;color:var(--v21-muted,#68717d)}.v3143-base-pair select{display:block;width:100%;min-width:0;margin-top:5px}.v3143-preview-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.v3143-preview-kpis .warn{border-color:#e1b548;background:#fff9e8}.v3143-manual-note{margin:-2px 0 10px}.v3143-conflict-head>div{display:grid;gap:2px}.v3143-conflict-head small{color:var(--v21-muted,#68717d);font-weight:500}.v3143-duplicate-list{max-height:360px;overflow-y:auto;overflow-x:hidden;border:1px solid var(--v21-border,#dfe3e8);border-radius:12px}.v3143-duplicate-choice{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(240px,1fr) minmax(240px,1fr);gap:10px;align-items:stretch;padding:10px 12px;border-bottom:1px solid var(--v21-border,#e8eaee)}.v3143-duplicate-choice:last-child{border-bottom:0}.v3143-duplicate-choice .material{display:flex;flex-direction:column;justify-content:center;min-width:0}.v3143-duplicate-choice .material span,.v3143-duplicate-choice .material small{overflow-wrap:anywhere;color:var(--v21-muted,#68717d)}.v3143-duplicate-choice label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:center;border:1px solid var(--v21-border,#dfe3e8);border-radius:9px;padding:8px;cursor:pointer;min-width:0}.v3143-duplicate-choice label:has(input:checked){border-color:#ef7d00;background:#fff8ee}.v3143-duplicate-choice label span{display:flex;flex-direction:column;gap:2px;min-width:0}.v3143-duplicate-choice label small{font-size:10px;color:var(--v21-muted,#68717d);white-space:normal}.v3143-ok{padding:13px 14px;border-radius:10px;background:#ecfdf3;color:#027a48;font-weight:800}.v3143-summary{display:grid;gap:14px}.v3143-kpi-grid{display:grid;gap:10px}.v3143-kpi-grid.primary{grid-template-columns:repeat(4,minmax(0,1fr))}.v3143-kpi-grid.secondary{grid-template-columns:repeat(4,minmax(0,1fr))}.v3143-kpi-grid .coverage strong{color:#299847}.v3143-dashboard-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(290px,.8fr);gap:14px}.v3143-chart-card{border:1px solid var(--v21-border,#dfe3e8);border-radius:14px;background:var(--v21-surface,#fff);padding:16px;min-width:0}.v3143-chart-card.wide{min-width:0}.v3143-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.v3143-card-head h3{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.2px;color:var(--v21-muted,#667085)}.v3143-card-head small{color:var(--v21-muted,#667085)}.v3143-chart{display:block;width:100%;height:auto;max-height:340px}.v3143-chart .grid{stroke:var(--v21-border,#e7ebf0);stroke-width:1}.v3143-chart text{fill:var(--v21-muted,#667085);font-size:10px}.v3143-chart .label{font-size:9px}.v3143-center-usage{display:grid;gap:10px}.v3143-center-usage>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 0;border-bottom:1px solid var(--v21-border,#edf0f4)}.v3143-center-usage>div:last-child{border-bottom:0}.v3143-center-usage span{display:flex;align-items:center;gap:7px;font-weight:850}.v3143-center-usage span i,.v3143-system-dot{width:9px;height:9px;border-radius:50%;background:var(--dot);display:inline-block;flex:0 0 auto}.v3143-center-usage small{grid-column:1/-1;color:var(--v21-muted,#667085)}.v3143-pareto-card{margin-top:0}.v3143-pareto-legend{display:flex;gap:18px;flex-wrap:wrap;color:var(--v21-muted,#667085);font-size:11px;margin:4px 0 8px}.v3143-pareto-legend span{display:flex;align-items:center;gap:5px}.v3143-pareto-legend i{width:10px;height:10px;border-radius:2px}.v3143-pareto-legend i.a{background:#3fa34d}.v3143-pareto-legend i.b{background:#d8a91f}.v3143-pareto-legend i.c{background:#dc3838}.v3143-pareto-chart .abc-bar.a{fill:#3fa34d}.v3143-pareto-chart .abc-bar.b{fill:#d8a91f}.v3143-pareto-chart .abc-bar.c{fill:#dc3838}.v3143-pareto-chart .pareto-line{stroke:#1d2430;stroke-width:2.5}.v3143-pareto-chart .pareto-dot{fill:#1d2430}.v3143-pareto-chart .threshold{stroke-width:1.5;stroke-dasharray:6 5}.v3143-pareto-chart .threshold.a{stroke:#3fa34d}.v3143-pareto-chart .threshold.b{stroke:#d69a00}.v3143-pareto-chart .threshold-label{font-weight:900}.v3143-pareto-chart .threshold-label.a{fill:#299847}.v3143-pareto-chart .threshold-label.b{fill:#c18800}.v3143-abc-table-wrap{overflow-x:auto}.v3143-abc-table td:nth-child(n+2){text-align:right}.v3143-abc-table td:last-child{text-align:center}.v3143-abc-pill{display:inline-flex;min-width:28px;justify-content:center;border-radius:999px;padding:3px 8px;font-weight:900}.v3143-abc-pill.a{background:#e3f6e9;color:#1d7a34}.v3143-abc-pill.b{background:#fff3cd;color:#7c5b00}.v3143-abc-pill.c{background:#fde8e7;color:#b42318}.v3143-abc-table tfoot td{border-top:2px solid var(--v21-border,#dfe3e8)}
@media(max-width:1050px){.v3143-dashboard-grid{grid-template-columns:1fr}.v3143-kpi-grid.primary,.v3143-kpi-grid.secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.v3143-duplicate-choice{grid-template-columns:1fr 1fr}.v3143-duplicate-choice .material{grid-column:1/-1}}@media(max-width:720px){.v3143-apply-dialog{width:calc(100vw - 12px)}.v3143-base-pair,.v3143-kpi-grid.primary,.v3143-kpi-grid.secondary,.v3143-preview-kpis,.v3143-duplicate-choice{grid-template-columns:1fr}.v3143-duplicate-choice .material{grid-column:auto}.v3143-conflict-head{align-items:flex-start;flex-wrap:wrap}.v3143-chart-card{padding:11px}}
html[data-roadmap-theme="dark"] .v3143-duplicate-choice label:has(input:checked),html[data-theme="dark"] .v3143-duplicate-choice label:has(input:checked){background:#302419}html[data-roadmap-theme="dark"] .v3143-ok,html[data-theme="dark"] .v3143-ok{background:#173a26;color:#72d68d}html[data-roadmap-theme="dark"] .v3143-pareto-chart .pareto-line,html[data-roadmap-theme="dark"] .v3143-pareto-chart .pareto-dot{stroke:#e8eef7;fill:#e8eef7}

.v3143-distribution{min-height:250px}

/* V31.4.11 — seletor persistente do método de cálculo da revisão. */
.v31411-base-items-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--v21-border,#dfe3e8);background:var(--v21-surface,#fff);color:var(--v21-text,#172033);border-radius:9px;padding:6px 10px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.v31411-base-items-toggle .box{width:16px;height:16px;border:1.5px solid #9aa4b2;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1}.v31411-base-items-toggle.on{background:#eef8ef;border-color:#71bd7b;color:#246a32}.v31411-base-items-toggle.on .box{background:#3fa34d;border-color:#3fa34d;color:#fff}.v31411-base-items-toggle:disabled{opacity:.65;cursor:not-allowed}.v31411-calc-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:900;white-space:nowrap}.v31411-calc-pill.base-items{background:#e3f6e9;color:#1d7a34}.v31411-calc-pill.code{background:#eef0f3;color:#606a76}.v31411-base-items-notice{border-left:4px solid #3fa34d;background:#f3fbf4;color:var(--v21-text,#172033)}
html[data-theme="dark"] .v31411-base-items-toggle.on{background:#193723;color:#72d68d;border-color:#356d44}html[data-theme="dark"] .v31411-calc-pill.base-items{background:#193723;color:#72d68d}html[data-theme="dark"] .v31411-calc-pill.code{background:#2b3038;color:#b8c0cc}html[data-theme="dark"] .v31411-base-items-notice{background:#182b1d;color:var(--v21-text,#e6e9ef)}
