.diff-header{align-items:stretch}.sync-card,.analysis-clock{background:#002f4b;color:#fff;border-radius:16px;padding:18px 22px;min-width:230px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 28px rgba(0,47,75,.16)}.sync-card small,.analysis-clock small{color:#b9d5e4;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.sync-card strong,.analysis-clock strong{font-size:26px;margin:4px 0}.sync-card span,.analysis-clock span{font-size:13px;color:#d8e7ef}.analysis-clock.finished{background:#174f3c}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric-card{background:#fff;border:1px solid #dbe5eb;border-radius:16px;padding:20px;box-shadow:0 8px 24px rgba(16,42,67,.06)}.metric-card span{display:block;color:#557083;font-weight:700}.metric-card strong{display:block;color:#002f4b;font-size:30px;margin:7px 0}.metric-card small{color:#78909f}.metric-card.danger{border-top:4px solid #c9412f}.metric-card.value{border-top:4px solid #ec6b24}.summary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.summary-strip>div{background:#fff;border:1px solid #dbe5eb;border-radius:12px;padding:15px}.summary-strip span,.location-head span,.result-body span{display:block;color:#6b7f8c;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.summary-strip strong{display:block;margin-top:5px;color:#002f4b}.pill.surplus{background:#e7f5ed;color:#147247}.pill.shortage{background:#fdebe8;color:#b83224}.pill.mixed{background:#fff1dc;color:#8a5500}.text-surplus{color:#147247!important}.text-shortage{color:#b83224!important}.status-chip{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.status-chip.pending{background:#eef3f6;color:#526b7a}.status-chip.running{background:#fff1dc;color:#9b5b00}.code-link{font-weight:900;color:#005e93;text-decoration:none}.code-link:hover{text-decoration:underline}.start-panel{background:#fff8ed;border:1px solid #ffd9a8;border-radius:14px;padding:18px;display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.location-stack{display:grid;gap:14px}.location-card{border:1px solid #dbe5eb;border-radius:14px;background:#fff;overflow:hidden}.location-card.has-diff{border-left:5px solid #ec6b24}.location-head{display:grid;grid-template-columns:2fr 1fr 1.5fr 1.5fr;gap:12px;padding:16px;background:#f7fafc}.location-head strong{display:block;margin-top:4px;color:#17384c}.analysis-fields,.result-body{display:grid;grid-template-columns:2fr 1fr;gap:18px;padding:16px}.analysis-fields label,.conclusion label{font-weight:800;color:#17384c}.analysis-fields textarea,.conclusion textarea{width:100%;margin-top:7px;border:1px solid #b9cbd6;border-radius:10px;padding:11px;font:inherit;resize:vertical}.file-field input{display:block;margin-top:10px}.file-field small{display:block;margin-top:8px;color:#6b7f8c}.stock-only{grid-column:span 2}.result-body p{margin:7px 0 0;color:#344f60}.evidence-link{display:inline-flex;margin-top:8px;color:#005e93;font-weight:800}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin:18px 0}.conclusion textarea{margin-top:8px}.analysis-form .panel-block{margin-bottom:18px}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.summary-strip{grid-template-columns:repeat(2,1fr)}.location-head{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.metric-grid,.summary-strip,.analysis-fields,.result-body{grid-template-columns:1fr}.page-header.diff-header{display:block}.sync-card,.analysis-clock{margin-top:14px}.location-head{grid-template-columns:1fr 1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.start-panel{display:block}.start-panel form{margin-top:12px}}
/* V6.1: operación mandante por ubicación */
.summary-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.location-head{grid-template-columns:2fr 1fr 1.4fr 1.5fr 1fr}
.location-card.target-location{border:2px solid #ec6b24;box-shadow:0 0 0 3px rgba(236,107,36,.12),0 10px 24px rgba(0,47,75,.08)}
.location-card.target-location .location-head{background:#fff7f0}
@media(max-width:1100px){.location-head{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.location-head{grid-template-columns:1fr}}

/* Estado de guardado del análisis */
.save-status {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: .55rem 0 0;
  padding: .42rem .7rem;
  border-radius: .55rem;
  font-size: .78rem;
  font-weight: 700;
}
.save-status::before {
  content: "";
  width: .48rem;
  height: .48rem;
  border-radius: 50%;
  background: currentColor;
}
.save-status.saved {
  color: #176b45;
  background: #eaf6ef;
  border: 1px solid #b8dfc9;
}
.save-status.pending {
  color: #9a4c10;
  background: #fff4e8;
  border: 1px solid #f1cfab;
}

/* V6.1.4 · Panel operacional Diff Analyzer */
.pending-header{align-items:center;margin-bottom:14px}.pending-header .page-actions{justify-content:flex-end}.export-btn{gap:8px;background:#fff!important;border:1px solid #cddbea;color:#003b73!important;box-shadow:0 5px 14px rgba(0,43,73,.07)}.export-btn span{font-size:11px;color:#0c7547}
.diff-filterbar{grid-template-columns:minmax(260px,1.55fr) repeat(4,minmax(150px,.8fr)) auto auto;align-items:center;border:1px solid #d3dfeb;border-radius:14px;padding:15px;box-shadow:0 8px 22px rgba(0,43,73,.06);background:linear-gradient(135deg,#fff 0%,#f8fbff 100%)}.diff-filterbar .search-control{position:relative;display:block}.diff-filterbar .search-control>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#607b91;font-size:20px;pointer-events:none}.diff-filterbar .search-control input{padding-left:39px}.diff-filterbar input,.diff-filterbar select{height:42px;border-color:#bfcfe0;background:#fff;color:#18344e}.diff-filterbar .btn{height:42px}.diff-filterbar .btn.primary{background:linear-gradient(180deg,#0966ae,#004a83);box-shadow:0 6px 14px rgba(0,78,139,.22)}
.kpi-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:12px;margin:0 0 14px}.kpi-card{min-height:92px;display:flex;align-items:center;gap:13px;padding:15px 14px;background:linear-gradient(145deg,#fff 0%,#f2f7ff 100%);border:1.5px solid #2e67a5;border-radius:13px;box-shadow:0 8px 20px rgba(0,50,95,.08),inset 0 1px 0 #fff}.kpi-card .kpi-icon{flex:0 0 43px;width:43px;height:43px;display:grid;place-items:center;border:1.5px solid #2462a2;border-radius:50%;color:#06487d;font-weight:900;font-size:15px;background:#fff;box-shadow:0 4px 10px rgba(0,58,112,.08)}.kpi-card .kpi-icon.money{font-size:21px}.kpi-card>div{min-width:0}.kpi-label{display:block;color:#2f4d68;font-size:11px;font-weight:800;line-height:1.25;margin-bottom:6px}.kpi-card strong{display:block;color:#003b73;font-size:23px;line-height:1.05;white-space:nowrap}.kpi-card.shortage-card .kpi-icon,.kpi-card.shortage-card strong{color:#d7262e;border-color:#e3484f}.kpi-card.surplus-card .kpi-icon,.kpi-card.surplus-card strong{color:#138343;border-color:#35a661}
.dashboard-grid{display:grid;grid-template-columns:minmax(560px,2fr) minmax(220px,.56fr) minmax(280px,.82fr);gap:12px;margin-bottom:14px}.chart-card{background:linear-gradient(145deg,#fff 0%,#fbfdff 100%);border:1px solid #cddbea;border-radius:13px;box-shadow:0 8px 22px rgba(0,43,73,.07);padding:14px;min-width:0}.chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chart-heading h2{font-size:14px;color:#003b73}.chart-heading p{font-size:10px;color:#718397;margin:3px 0 0}.chart-period{padding:6px 8px;border:1px solid #d4e0eb;border-radius:7px;color:#294861;background:#fff;font-size:9px;font-weight:800;white-space:nowrap}.chart-legend{display:flex;gap:17px;margin:9px 0 2px;color:#526b80;font-size:9px}.chart-legend span:before{content:"";display:inline-block;width:16px;height:3px;margin-right:5px;vertical-align:middle;border-radius:999px}.chart-legend .absolute:before{background:#1687e5}.chart-legend .surplus:before{background:#178641}.chart-legend .shortage:before{background:#db2b31}.trend-canvas-wrap{position:relative;height:235px}.trend-canvas-wrap canvas{width:100%;height:100%;display:block}.chart-empty{color:#718397;font-size:11px;text-align:center;margin:18px 0}.trend-canvas-wrap .chart-empty{position:absolute;inset:0;display:grid;place-items:center;background:rgba(255,255,255,.84)}
.donut-card{display:flex;flex-direction:column}.donut-wrap{display:grid;place-items:center;flex:1;min-height:165px}.donut{width:132px;height:132px;border-radius:50%;background:conic-gradient(#178641 0 var(--surplus-angle,55%),#db2b31 var(--surplus-angle,55%) 100%);display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(0,43,73,.05)}.donut:before{content:"";grid-area:1/1;width:78px;height:78px;background:#fff;border-radius:50%;box-shadow:0 0 0 1px #e4ebf2}.donut>div{grid-area:1/1;z-index:1;text-align:center}.donut small{display:block;color:#667d91;font-size:9px}.donut strong{display:block;color:#003b73;font-size:11px;margin-top:3px}.donut-legend{display:grid;gap:7px;border-top:1px solid #e2eaf1;padding-top:10px}.donut-legend span{display:grid;grid-template-columns:9px 1fr auto;gap:6px;align-items:center;color:#50687c;font-size:9px}.donut-legend i{width:8px;height:8px}.donut-legend .surplus i{background:#178641}.donut-legend .shortage i{background:#db2b31}.donut-legend b{color:#173a56;font-weight:800}
.zone-bars{display:grid;gap:8px;margin-top:14px}.zone-row{display:grid;grid-template-columns:72px minmax(80px,1fr) 74px;align-items:center;gap:7px;font-size:9px;color:#334f66}.zone-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zone-row>div{height:13px;background:#edf2f7;border-radius:2px;overflow:hidden}.zone-row i{display:block;height:100%;width:var(--bar-width,0%);background:linear-gradient(90deg,#003b73,#07599a);border-radius:2px;transition:width .35s ease}.zone-row>b{text-align:right;color:#2b475e;white-space:nowrap;font-size:9px}
.pending-table{border-radius:13px;border-color:#cad8e5;box-shadow:0 8px 22px rgba(0,43,73,.07)}.pending-table table{min-width:1180px}.pending-table th{background:linear-gradient(180deg,#064e86,#00345f);padding-top:12px;padding-bottom:12px}.pending-table td{vertical-align:middle}.sortable{display:inline-flex;align-items:center;gap:6px;color:#fff;text-decoration:none}.sortable span{opacity:.55}.sortable.active span{opacity:1;color:#bde0ff}.table-footer{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(170px,1fr);align-items:center;gap:15px;padding:12px 13px;border-top:1px solid #dce5ed;color:#607487;font-size:10px}.pagination{display:flex;align-items:center;justify-content:center;gap:4px}.pagination a,.pagination span{width:29px;height:29px;display:grid;place-items:center;border-radius:6px;text-decoration:none;color:#22455f;font-weight:800}.pagination a:hover{background:#e8f1f8}.pagination .current{background:linear-gradient(180deg,#0966ae,#004a83);color:#fff;box-shadow:0 5px 12px rgba(0,75,135,.22)}.pagination .disabled{opacity:.35}.pagination .ellipsis{width:auto;padding:0 4px}.page-size{justify-self:end}.page-size select{border:1px solid #cdd9e4;border-radius:7px;padding:7px 9px;background:#fff;color:#29475f;font-size:10px;font-weight:700}
.evidence-link,.file-field a{color:#005ea8;font-weight:800;text-decoration:none}.evidence-link:hover,.file-field a:hover{text-decoration:underline}
@media(max-width:1480px){.kpi-grid{grid-template-columns:repeat(4,minmax(160px,1fr))}.dashboard-grid{grid-template-columns:minmax(500px,1.65fr) minmax(220px,.55fr)}.zones-card{grid-column:1/-1}.zone-bars{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1150px){.diff-filterbar{grid-template-columns:repeat(3,minmax(0,1fr))}.diff-filterbar .search-control{grid-column:span 2}.kpi-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}.dashboard-grid{grid-template-columns:1fr}.zones-card{grid-column:auto}.zone-bars{grid-template-columns:1fr 1fr}.table-footer{grid-template-columns:1fr}.page-size{justify-self:center}}
@media(max-width:760px){.diff-filterbar{grid-template-columns:1fr}.diff-filterbar .search-control{grid-column:auto}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{min-height:82px}.dashboard-grid{grid-template-columns:1fr}.trend-canvas-wrap{height:205px}.zone-bars{grid-template-columns:1fr}.table-footer{display:none}}
@media(max-width:520px){.kpi-grid{grid-template-columns:1fr}.kpi-card strong{font-size:21px}.pending-header .page-actions{width:100%}.pending-header .page-actions .btn{flex:1}.donut-wrap{min-height:150px}}
.evidence-error-card{max-width:640px;margin:8vh auto;background:#fff;border:1px solid #d5e1ec;border-top:4px solid #ed4b16;border-radius:15px;padding:34px;text-align:center;box-shadow:0 16px 38px rgba(0,43,73,.12)}.evidence-error-icon{width:58px;height:58px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:#fff0eb;color:#c93616;font-size:30px;font-weight:900}.evidence-error-card h1{margin-bottom:10px}.evidence-error-card>p:not(.eyebrow){color:#5e7488;line-height:1.55}.evidence-error-card small{display:block;margin-top:12px;color:#718598}.evidence-error-card .form-actions{justify-content:center}

/* V6.2 · KPI uniformes Komatsu + histórico oficial Diff_Analyzer_2026 */
.kpi-grid{
  grid-template-columns:repeat(9,minmax(150px,1fr));
  gap:12px;
}
.kpi-card,
.kpi-card.shortage-card,
.kpi-card.surplus-card,
.kpi-card.neutral{
  background:linear-gradient(145deg,#ffffff 0%,#f0f6fc 100%);
  border:1.5px solid #1e5d96;
  box-shadow:0 8px 20px rgba(0,50,95,.09),inset 0 1px 0 #fff;
}
.kpi-card .kpi-icon,
.kpi-card.shortage-card .kpi-icon,
.kpi-card.surplus-card .kpi-icon{
  color:#06487d;
  border-color:#2462a2;
  background:linear-gradient(145deg,#fff,#f3f8fd);
}
.kpi-card strong,
.kpi-card.shortage-card strong,
.kpi-card.surplus-card strong{
  color:#003b73;
}
.kpi-card small{
  display:block;
  margin-top:5px;
  color:#6a8195;
  font-size:9px;
  line-height:1.25;
}
.kpi-label{display:flex;align-items:center;gap:5px}
.semantic-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex:0 0 7px}
.shortage-dot{background:#d52b32}
.surplus-dot{background:#168348}
.historical-kpi{border-color:#005a96}
.historical-kpi .kpi-icon{box-shadow:inset 0 0 0 3px #edf5fb}
.chart-legend{flex-wrap:wrap}
.chart-legend .regularized-daily:before{background:#ec6b24}
.chart-legend .regularized-month:before{background:#6a4ba3}

@media(max-width:1600px){.kpi-grid{grid-template-columns:repeat(5,minmax(150px,1fr))}}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(3,minmax(145px,1fr))}}
@media(max-width:700px){.kpi-grid{grid-template-columns:1fr 1fr}.kpi-card{min-height:86px}}
@media(max-width:460px){.kpi-grid{grid-template-columns:1fr}}

/* V6.2.1 · Resumen ejecutivo definitivo */
.diff-summary-header{align-items:center;margin-bottom:14px}
.summary-load-card{min-width:245px;padding:16px 20px;border-radius:14px;background:linear-gradient(145deg,#073d69,#002f4b);color:#fff;box-shadow:0 10px 26px rgba(0,47,75,.16);display:flex;flex-direction:column;gap:4px}
.summary-load-card span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#c8ddeb}
.summary-load-card strong{font-size:23px;line-height:1.1}
.summary-load-card small{font-size:10px;color:#dce9f1}
.diff-executive-dashboard{background:#fff;border:1px solid #c9d7e3;border-radius:14px;padding:10px 14px 16px;box-shadow:0 9px 24px rgba(0,43,73,.07);overflow:hidden}
.dashboard-title{margin:-10px -14px 14px;padding:9px 14px;background:#06386f;color:#fff;text-align:center;font-size:18px;line-height:1.15;font-weight:900;letter-spacing:.01em;border-bottom:2px solid #002b57}
.summary-kpi-grid{display:grid;gap:14px;margin-bottom:14px}
.summary-kpi-grid-primary{grid-template-columns:repeat(6,minmax(0,1fr))}
.summary-kpi-grid-secondary{grid-template-columns:repeat(7,minmax(0,1fr))}
.summary-kpi-card{min-width:0;min-height:82px;padding:13px 12px 12px;background:linear-gradient(145deg,#fff 0%,#f4f8fc 100%);border:1px solid #245e96;border-top:2px solid #06386f;border-radius:4px;box-shadow:0 5px 10px rgba(0,45,85,.13);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.summary-kpi-card span{display:block;min-height:30px;color:#586b7a;font-size:10px;line-height:1.2;font-weight:500;text-transform:none;letter-spacing:0}
.summary-kpi-card strong{display:block;width:100%;margin-top:3px;color:#06386f;font-size:21px;line-height:1.08;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-chart-card{background:#fff;border:1px solid #cbd8e4;border-radius:8px;padding:13px;box-shadow:0 6px 16px rgba(0,43,73,.06);min-width:0}
.summary-trend-card{margin-bottom:14px}
.summary-bottom-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(560px,1.65fr);gap:14px}
.diff-executive-dashboard .chart-heading h2{font-size:13px;color:#263c4f;text-align:center}
.diff-executive-dashboard .chart-heading p{font-size:9px;color:#718397}
.diff-executive-dashboard .chart-legend{justify-content:center;margin:8px 0 2px}
.diff-executive-dashboard .trend-canvas-wrap{height:245px}
.diff-executive-dashboard .donut-wrap{min-height:190px}
.diff-executive-dashboard .donut{width:150px;height:150px;background:conic-gradient(#06386f 0 var(--surplus-end,55%),#df1f2d var(--surplus-end,55%) var(--shortage-end,100%),#168b47 var(--shortage-end,100%) 100%)}
.diff-executive-dashboard .donut:before{width:88px;height:88px}
.diff-executive-dashboard .donut strong{font-size:10px;max-width:78px;white-space:normal;line-height:1.15}
.donut-legend .regularized i{background:#168b47}
.diff-executive-dashboard .zone-bars{gap:10px;margin-top:16px}
.diff-executive-dashboard .zone-row{grid-template-columns:95px minmax(120px,1fr) 110px;font-size:10px}
.diff-executive-dashboard .zone-row>div{height:17px}
.diff-executive-dashboard .zone-row>b{font-size:10px}

/* Pendientes es una vista exclusivamente operacional: filtros + tabla. */
.pending-table{margin-top:14px}

@media(max-width:1650px){
  .summary-kpi-grid-primary{grid-template-columns:repeat(3,minmax(180px,1fr))}
  .summary-kpi-grid-secondary{grid-template-columns:repeat(4,minmax(170px,1fr))}
}
@media(max-width:1200px){
  .summary-kpi-grid-primary,.summary-kpi-grid-secondary{grid-template-columns:repeat(3,minmax(160px,1fr))}
  .summary-bottom-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .diff-summary-header{display:block}
  .summary-load-card{margin-top:12px;min-width:0}
  .dashboard-title{font-size:14px}
  .summary-kpi-grid-primary,.summary-kpi-grid-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .summary-kpi-card strong{font-size:18px}
  .diff-executive-dashboard .trend-canvas-wrap{height:210px}
}
@media(max-width:470px){
  .summary-kpi-grid-primary,.summary-kpi-grid-secondary{grid-template-columns:1fr}
}


/* V6.2.2 — acabado corporativo definitivo del Resumen Diff */
.diff-executive-dashboard{
  border:1px solid #9eb7ce;
  border-top:4px solid #06386f;
  border-radius:10px;
  box-shadow:0 14px 34px rgba(0,43,73,.12),0 2px 7px rgba(0,43,73,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
}
.dashboard-title{
  box-shadow:0 4px 11px rgba(0,43,73,.20);
}
.summary-kpi-card{
  position:relative;
  min-height:88px;
  border:1px solid #8aa9c4;
  border-top:4px solid #06386f;
  border-radius:6px;
  background:linear-gradient(155deg,#ffffff 0%,#f8fbfe 55%,#eef5fb 100%);
  box-shadow:0 7px 13px rgba(0,43,73,.17),0 2px 3px rgba(0,43,73,.10);
  transform:translateY(0);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  overflow:visible;
}
.summary-kpi-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:5px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,0) 38%);
}
.summary-kpi-card:hover{
  transform:translateY(-4px);
  border-color:#06386f;
  box-shadow:0 14px 25px rgba(0,43,73,.22),0 4px 8px rgba(0,43,73,.12);
}
.summary-kpi-card span,.summary-kpi-card strong{position:relative;z-index:1}
.summary-kpi-card span{
  min-height:27px;
  color:#4d6172;
  font-size:10px;
  font-weight:600;
}
.summary-kpi-card strong{
  color:#06386f;
  font-size:22px;
  font-weight:900;
  text-shadow:0 1px 0 #fff;
  overflow:visible;
  text-overflow:clip;
}
.summary-kpi-surplus strong{color:#13823d}
.summary-kpi-shortage strong{color:#d92c36}
.summary-kpi-regularized-daily strong{color:#087bd3}
.summary-kpi-regularized-month strong{color:#13823d}
.summary-kpi-center-3154 span{color:#d92c36;font-weight:900}
.summary-kpi-center-3157 span{color:#06386f;font-weight:900}
.summary-kpi-center-3154{border-top-color:#d92c36}
.summary-kpi-center-3157{border-top-color:#06386f}
.summary-chart-card{
  border:1px solid #9eb7ce;
  border-top:3px solid #06386f;
  border-radius:8px;
  box-shadow:0 9px 21px rgba(0,43,73,.11),0 2px 5px rgba(0,43,73,.07);
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
.donut-wrap{
  position:relative;
  min-height:230px!important;
  padding:34px 112px 22px;
}
.diff-executive-dashboard .donut{
  width:156px;
  height:156px;
  box-shadow:0 8px 17px rgba(0,43,73,.16),inset 0 0 0 1px rgba(0,43,73,.08);
}
.donut-callout{
  position:absolute;
  color:#41566a;
  font-size:10px;
  line-height:1.25;
  white-space:nowrap;
  z-index:2;
}
.donut-callout b{display:block;color:#21384c;font-size:11px}
.donut-callout span{color:#5e7284}
.donut-callout::after{
  content:"";
  position:absolute;
  height:1px;
  background:#9eb0c0;
}
.donut-callout-regularized{top:4px;left:50%;transform:translateX(-50%);text-align:center}
.donut-callout-regularized::after{width:1px;height:20px;left:50%;top:29px}
.donut-callout-shortage{left:8px;top:52%;transform:translateY(-50%);text-align:right}
.donut-callout-shortage::after{width:50px;right:-57px;top:13px}
.donut-callout-surplus{right:8px;top:52%;transform:translateY(-50%)}
.donut-callout-surplus::after{width:50px;left:-57px;top:13px}
.donut-legend span{
  grid-template-columns:9px minmax(75px,1fr) auto;
}
.donut-legend em{font-style:normal}
.donut-legend .surplus i{background:#06386f}
.donut-legend .shortage i{background:#df1f2d}
.donut-legend .regularized i{background:#168b47}
.donut-legend b{white-space:nowrap}
@media(max-width:700px){
  .donut-wrap{padding-left:74px;padding-right:74px}
  .donut-callout-shortage{left:0}
  .donut-callout-surplus{right:0}
  .donut-callout-shortage::after,.donut-callout-surplus::after{width:30px}
  .donut-callout-shortage::after{right:-35px}
  .donut-callout-surplus::after{left:-35px}
}

/* V6.2.3 — ajuste final de valorización por centro.
   Solo el título identifica el centro; todos los montos conservan azul Komatsu. */
.summary-kpi-center-3154,
.summary-kpi-center-3157{
  border-top-color:#06386f;
}
.summary-kpi-center-3154 span{
  color:#d92c36;
  font-weight:900;
}
.summary-kpi-center-3157 span{
  color:#087bd3;
  font-weight:900;
}
.summary-kpi-center-3154 strong,
.summary-kpi-center-3157 strong{
  color:#06386f!important;
}

/* V6.3.0 — ciclo Pendientes/Regularización/Historial y tendencia PBIT. */
.history-filterbar{
  grid-template-columns:minmax(260px,420px) auto auto;
  justify-content:start;
  align-items:center;
  margin-bottom:14px;
  border:1px solid #d3dfeb;
  border-radius:12px;
  padding:14px;
  background:linear-gradient(135deg,#fff 0%,#f7fbff 100%);
  box-shadow:0 7px 18px rgba(0,43,73,.06);
}
.history-filterbar select{height:42px;border-color:#bfcfe0;background:#fff;color:#18344e}
.history-results{margin-top:0}
.history-table table{min-width:1420px}
.history-table th:nth-child(6){min-width:300px}
.history-observation{max-width:390px;white-space:normal;line-height:1.35;color:#344e63}
@media(max-width:760px){
  .history-filterbar{grid-template-columns:1fr}
}

/* V6.3.0 · ciclo Pendientes → Regularización → Historial */
.status-chip.completed{background:#e7f5ed;color:#147247}
.btn.danger-outline{background:#fff;color:#b83224;border:1px solid #d97b70}
.btn.danger-outline:hover{background:#fdebe8;border-color:#b83224}
.action-cell{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:245px}
.action-cell form,.form-actions form{margin:0}
.regularization-table table{min-width:1650px}
.regularization-table th:nth-child(9){min-width:260px}
.check-control{display:flex!important;align-items:center;gap:9px;font-weight:700;color:#354f63}
.check-control input{width:auto!important}
.closure-note{margin-top:14px;padding:13px 15px;border:1px solid #b9d7c5;border-left:4px solid #168348;border-radius:8px;background:#f3fbf6;color:#264f38}
.closure-note strong{display:block;margin-bottom:4px;color:#146338}
.closure-note p{margin:0 0 4px}
.closure-note small{color:#597466}
@media(max-width:900px){.action-cell{min-width:0}.regularization-table{overflow-x:auto}}

/* V6.4.0 · Tabla dinámica operacional vigente + detalle navegable */
.summary-pivot-card{
  margin-top:16px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  border:1px solid #9eb7ce;
  border-top:4px solid #06386f;
  border-radius:9px;
  box-shadow:0 10px 24px rgba(0,43,73,.11),0 2px 5px rgba(0,43,73,.07);
  overflow:hidden;
}
.summary-pivot-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:16px 18px 13px;
  background:linear-gradient(135deg,#f8fbff,#eef5fb);
  border-bottom:1px solid #c9d8e5;
}
.summary-pivot-heading h2{margin:0;color:#06386f;font-size:16px}
.summary-pivot-heading p{margin:5px 0 0;color:#607589;font-size:11px;line-height:1.45;max-width:930px}
.summary-pivot-scroll{overflow:auto;max-width:100%}
.summary-pivot-table{width:100%;min-width:1350px;border-collapse:separate;border-spacing:0;font-size:11px}
.summary-pivot-table th,.summary-pivot-table td{padding:9px 10px;border-right:1px solid #dce5ed;border-bottom:1px solid #dce5ed;text-align:right;white-space:nowrap}
.summary-pivot-table thead th{position:sticky;top:0;z-index:2;background:#06386f;color:#fff;font-size:10px;line-height:1.25;text-align:center;vertical-align:middle}
.summary-pivot-table thead th:first-child,.summary-pivot-table tbody td:first-child,.summary-pivot-table tfoot th:first-child{position:sticky;left:0;z-index:3;text-align:left}
.summary-pivot-table tbody td:first-child{background:#f7fafd}
.summary-pivot-table tbody tr:nth-child(even) td{background:#f9fbfd}
.summary-pivot-table tbody tr:nth-child(even) td:first-child{background:#f0f5f9}
.summary-pivot-table tbody tr:hover td{background:#eaf3fb}
.summary-pivot-table tbody tr:hover td:first-child{background:#e2eef8}
.summary-pivot-table tfoot th{background:#d9e7f3;color:#073d69;font-weight:900;border-bottom:0}
.summary-pivot-table a{color:#07558f;font-weight:800;text-decoration:none;display:inline-flex;min-width:24px;justify-content:flex-end}
.summary-pivot-table a:hover{text-decoration:underline;color:#003b73}
.summary-zone-cell a{justify-content:flex-start;font-size:12px}
.summary-pivot-table .money-cell{font-variant-numeric:tabular-nums;color:#173b59;font-weight:700}
.summary-pivot-table .money-cell.negative{color:#c52d36}
.summary-pivot-table .money-cell.positive{color:#137b42}
.summary-pivot-table .metric-link.analyzed{color:#147247}
.summary-pivot-table .metric-link.pending{color:#b83224}
.summary-pivot-note{margin:0;padding:10px 16px;background:#fff7e9;border-top:1px solid #f0d8aa;color:#7b571f;font-size:11px}
.summary-pivot-note a{color:#8c4e00;font-weight:900}

.summary-detail-header{align-items:center}
.summary-detail-filterbar{
  display:grid;
  grid-template-columns:minmax(260px,1.6fr) repeat(7,minmax(145px,.78fr)) auto auto;
  gap:10px;
  align-items:center;
  padding:15px;
  background:linear-gradient(135deg,#fff 0%,#f7fbff 100%);
  border:1px solid #cbd9e6;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(0,43,73,.07);
}
.summary-detail-filterbar .search-control{position:relative;display:block}
.summary-detail-filterbar .search-control>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#607b91;font-size:20px;pointer-events:none}
.summary-detail-filterbar .search-control input{padding-left:39px}
.summary-detail-filterbar input,.summary-detail-filterbar select{height:42px;border:1px solid #bfcfe0;border-radius:8px;background:#fff;color:#18344e;padding:0 10px;min-width:0}
.summary-detail-filterbar .btn{height:42px}
.summary-detail-table-card{margin-top:14px;overflow:auto}
.summary-detail-table{min-width:1550px}
.summary-detail-table th{white-space:nowrap}
.summary-detail-table td{vertical-align:top;min-width:92px}
.summary-detail-table td:nth-child(1){min-width:170px}
.summary-detail-table td:nth-child(2){min-width:230px}
.summary-detail-table td:nth-child(10){min-width:260px;white-space:normal}
.summary-detail-table small{display:block;margin-top:3px;color:#718598;line-height:1.3}
.comment-cell p{margin:6px 0 0;color:#40596c;line-height:1.35}
.comment-state{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900}
.comment-state.with-comment{background:#e5f4eb;color:#126f40;border:1px solid #b7dec7}
.comment-state.no-comment{background:#fff1ec;color:#b84029;border:1px solid #efc4b9}
.status-chip.completed{background:#e4f3eb;color:#146f42}
.evidence-link.compact{margin-top:0;font-size:11px}
.muted{color:#7a8d9c;font-size:11px}

@media(max-width:1500px){
  .summary-detail-filterbar{grid-template-columns:repeat(4,minmax(170px,1fr))}
  .summary-detail-filterbar .search-control{grid-column:span 2}
}
@media(max-width:900px){
  .summary-pivot-heading{display:block}
  .summary-pivot-heading .btn{margin-top:12px}
  .summary-detail-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .summary-detail-filterbar .search-control{grid-column:span 2}
}
@media(max-width:560px){
  .summary-detail-filterbar{grid-template-columns:1fr}
  .summary-detail-filterbar .search-control{grid-column:auto}
}

/* V6.5.0 · SOLO detalle de análisis: stock multicíentro, jerarquía de producto y control robusto de tiempo. */
.analysis-detail-header{align-items:center;gap:20px}
.analysis-title-block h1{margin-bottom:4px}
.analysis-product-code{display:block;color:#003b73;font-size:22px;line-height:1.15;font-weight:900;letter-spacing:.01em;margin-top:4px}
.analysis-product-description{display:block;color:#5d7284;font-size:13px;font-weight:700;margin-top:4px}
.analysis-summary-strip{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.stock-total-card small{display:block;margin-top:6px;color:#587085;font-size:11px;font-weight:700;line-height:1.3}
.stock-location-grid{grid-template-columns:minmax(220px,2fr) minmax(85px,.7fr) minmax(85px,.7fr) minmax(145px,1.2fr) minmax(170px,1.25fr) minmax(130px,1fr) minmax(120px,.9fr)}
.location-card.target-location{order:-100}
.analysis-actions{align-items:center;flex-wrap:wrap}
.btn.timer-action{border:1px solid #9ab4c9;background:#fff;color:#003b73;font-weight:800}
.btn.timer-action.pause{border-color:#d6a24f;color:#8b5a00;background:#fffaf0}
.btn.timer-action.resume{border-color:#66a985;color:#176b45;background:#f1faf5}
.btn.timer-action.reset{border-color:#c7a0a0;color:#8c2f2f;background:#fff7f7}
@media(max-width:1280px){.stock-location-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}}
@media(max-width:850px){.stock-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-product-code{font-size:19px}}
@media(max-width:600px){.stock-location-grid{grid-template-columns:1fr}.analysis-actions{align-items:stretch}.analysis-actions .btn{width:100%}}
.timer-action[hidden]{display:none!important}
