:root{font-family:Segoe UI,Arial,sans-serif;color-scheme:dark;background:#0d1015;color:#f5f7fb;--panel:#151a22;--panel2:#1a202a;--border:#293241;--muted:#96a1b2;--yellow:#f1cd69;--green:#46d39a;--red:#ff7f8f;--blue:#8fd3ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#17202a 0,#0d1015 42%);min-height:100vh}.shell{max-width:1220px;margin:0 auto;padding:32px}.panel,.request{background:rgba(21,26,34,.96);border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 12px 38px rgba(0,0,0,.18)}.login-panel{max-width:440px;margin:8vh auto;padding:30px}.brand-dot{width:10px;height:10px;border-radius:50%;background:var(--yellow);box-shadow:0 0 18px var(--yellow);margin-bottom:16px}.hidden{display:none!important}h1,h2,h3{margin-top:0}.muted{color:var(--muted)}.error{color:#ff9aa9}.success{color:var(--green)}input{background:var(--panel2);color:#f5f7fb;border:1px solid var(--border);border-radius:10px;padding:12px;margin:6px 0;width:100%;outline:none}input:focus{border-color:#607894}.remember{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:13px;margin:8px 0 14px}.remember input{width:auto;margin:0}button,.download{background:var(--yellow);color:#171717;border:0;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;transition:.15s}button:hover,.download:hover{transform:translateY(-1px);filter:brightness(1.04)}button.secondary{background:#252d38;color:#f5f7fb}.primary-big{width:100%;padding:22px;font-size:18px;margin:20px 0}.topbar,.section-head,.request-head,.cuit,.output-head{display:flex;gap:12px;align-items:center;justify-content:space-between}.topbar{margin-bottom:16px}.request-head{border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:6px}.request{overflow:hidden}.cuit{padding:9px 0;border-bottom:1px solid #242b35}.status-pill{border:1px solid var(--border);border-radius:999px;padding:3px 8px;font-size:12px}.upload-zone{margin:16px 0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.upload-zone input[type=file]{max-width:620px;margin:0}.progress-wrap{background:#0d1117;border:1px solid var(--border);border-radius:12px;padding:12px;margin-top:12px}.progress-track{height:12px;background:#242b35;border-radius:999px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,#e9c760,#8fd3ff);width:0%;transition:width .35s}.progress-info{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:7px}.outputs{display:grid;gap:10px;margin-top:16px}.output-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:#171d26}.output-card.pending-circuit{border-color:#d6b84e;background:#282318;animation:yellowPulse 1.25s infinite}.output-card.complete-circuit{border-color:#3d9b76;background:#12291f}.output-card.batched{border-color:#3d9b76;background:#10271e}.output-fields{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;align-items:end;margin-top:10px}.output-fields label{font-size:12px;color:var(--muted)}.output-fields input{margin-top:4px}.download{background:#244234;color:#e8fff7;font-size:12px}.request pre{white-space:pre-wrap;color:#b8e5ff}.cancelled{opacity:.55}@keyframes yellowPulse{0%,100%{box-shadow:0 0 0 rgba(241,205,105,0)}50%{box-shadow:0 0 20px rgba(241,205,105,.32)}}@media(max-width:800px){.shell{padding:14px}.request-head,.cuit,.section-head{align-items:flex-start;flex-direction:column}.output-fields{grid-template-columns:1fr}.upload-zone input[type=file]{max-width:none}}

.hidden-file-input{display:none!important}.upload-zone{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

.hidden-file-input{display:none!important}
.compact-request{padding:18px}
.pre-liquidation-list{display:grid;gap:0;margin-top:8px}
.pre-cuit-row{display:flex;justify-content:space-between;align-items:center;padding:10px 4px;border-bottom:1px solid var(--border)}
.management-table{margin-top:14px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#11161d}
.management-header,.management-row{display:grid;grid-template-columns:44px minmax(250px,1.8fr) minmax(145px,.9fr) minmax(165px,1fr) minmax(145px,.9fr) 120px;align-items:center;gap:8px}
.management-header{padding:10px 12px;background:#1b222c;color:var(--muted);font-size:11px;font-weight:800}
.management-row{padding:9px 12px;border-top:1px solid rgba(255,255,255,.06);min-height:70px}
.management-row.pending-circuit{background:#2a2415;border-left:4px solid var(--yellow);animation:yellowRowPulse 1.15s ease-in-out infinite}
.management-row.complete-circuit{background:#10281e;border-left:4px solid var(--green);animation:none}
.row-index{font-weight:800;color:var(--muted);text-align:center}
.company-cell{display:flex;flex-direction:column;gap:4px;min-width:0}
.company-cell strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.company-cell span{font-size:12px;color:var(--muted)}
.data-cell input{width:100%;margin:0;padding:9px;border-radius:8px}
.final-value{font-weight:700;color:#e9fff7;padding:9px 2px}
.field-placeholder{color:var(--muted);font-size:12px}
.row-state{text-align:right}
.row-complete-btn{padding:9px 12px;font-size:11px;background:var(--yellow)}
.done-badge{display:inline-block;color:#dffff3;border:1px solid #3e9e78;background:#17382b;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}
.management-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
.management-progress{font-size:13px;color:var(--muted);font-weight:600}
.finalize-btn{min-width:190px;background:var(--green);color:#071b13}
.finalize-btn:disabled{cursor:not-allowed;transform:none;filter:none;opacity:.38;background:#39434d;color:#aab4c0}
.finalize-btn.finalized{opacity:1;background:#17382b;color:#dffff3;border:1px solid #3e9e78}
@keyframes yellowRowPulse{0%,100%{background:#2a2415}50%{background:#3a3119;box-shadow:inset 0 0 18px rgba(241,205,105,.14)}}
@media(max-width:980px){.management-table{overflow-x:auto}.management-header,.management-row{min-width:980px}}

.request-head-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.request-duration{font-size:12px;color:var(--muted)}.request-items-table{margin-top:14px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#11161d}.request-items-header,.request-item-row{display:grid;grid-template-columns:42px 145px minmax(125px,.9fr) minmax(155px,1fr) minmax(135px,.9fr) 104px minmax(230px,1.35fr);gap:8px;align-items:center}.request-items-header{padding:9px 10px;background:#1c232d;color:var(--muted);font-size:11px;font-weight:800}.request-item-row{min-height:64px;padding:8px 10px;border-top:1px solid rgba(255,255,255,.06)}.request-item-uploaded{background:#151c25}.request-item-awaiting-data{background:#2d2716;border-left:4px solid var(--yellow);animation:itemYellowPulse 1.15s ease-in-out infinite}.request-item-complete{background:#10291f;border-left:4px solid var(--green)}.request-item-number{text-align:center;color:var(--muted);font-weight:800}.request-item-cuit{font-weight:800}.inline-field{width:100%;min-width:0;box-sizing:border-box;margin:0;padding:9px 10px;border-radius:8px}.inline-field-disabled{border:1px dashed #394352;color:#687386;padding:9px 10px;border-radius:8px;font-size:12px}.inline-final-value{padding:9px 5px;font-weight:800;color:#e7fff5}.inline-save-btn{padding:9px 10px;font-size:11px;background:var(--yellow)}.done-badge{display:inline-block;color:#dffff3;border:1px solid #3e9e78;background:#17382b;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.request-item-status{font-size:12px;font-weight:700}.request-item-awaiting-data .request-item-status{color:#ffe18b}.request-item-complete .request-item-status{color:#8ee5bd}.request-finished-banner{margin-top:14px;padding:12px 14px;border:1px solid #3e9e78;background:#123325;color:#dffff3;border-radius:10px;text-align:center;font-weight:900}@keyframes itemYellowPulse{0%,100%{background:#2d2716}50%{background:#3e351b;box-shadow:inset 0 0 22px rgba(241,205,105,.14)}}@media(max-width:1150px){.request-items-table{overflow-x:auto}.request-items-header,.request-item-row{min-width:1120px}}


/* v6 · Menús de solicitudes y filas compactas */
.request-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}
.completed-big{width:100%;padding:24px 18px;border-radius:12px;background:#17382b;color:#dffff3;border:1px solid #3e9e78;font-size:18px;font-weight:900}
.request-list-item{border:1px solid var(--border);border-radius:12px;margin:10px 0;overflow:hidden;background:#151b24}
.request-list-received{border-left:4px solid var(--yellow)}
.request-list-complete{border-left:4px solid var(--green);background:#10231c}
.request-list-main{display:grid;grid-template-columns:minmax(210px,1.4fr) minmax(180px,1fr) 120px 150px;gap:12px;align-items:center;padding:13px 14px}
.request-list-main span{font-size:12px;color:var(--muted)}
.request-list-actions{display:flex;gap:8px;justify-content:flex-end;padding:0 14px 12px}
.request-list-detail{padding:0 12px 12px}
.report-btn{background:#254f70;color:#e8f6ff;padding:9px 12px}
@media(max-width:900px){.request-menu-grid{grid-template-columns:1fr}.request-list-main{grid-template-columns:1fr 1fr}.request-list-actions{justify-content:flex-start}}


/* v9 · pedido remoto ampliado */
.shell{max-width:1680px}
.expanded-request{padding:22px}
.request-items-table{overflow-x:auto}
.request-items-header,.request-item-row{
  grid-template-columns:42px 135px minmax(240px,1.5fr) 125px 125px 135px 155px 145px minmax(205px,1.2fr);
  min-width:1420px;
}
.auto-value{font-weight:700;color:#dce8f5;white-space:normal;line-height:1.25}
.request-save-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;padding:14px;border-top:1px solid var(--border);background:#10161e;border-radius:10px}
.save-request-btn{background:var(--green);color:#071b13;min-width:250px}
.save-request-btn:disabled{opacity:.55;cursor:wait;transform:none}
.liquidations-btn{background:#245f43;color:#eafff4;padding:9px 12px}


/* v13 · prevalidación REMUNERACIONES + ayuda operativa + progreso upload */
button:disabled{opacity:.42;cursor:not-allowed;transform:none!important;filter:none!important}
.step-guide{display:grid;gap:5px;margin:14px 0;padding:13px 15px;border:1px solid #314152;border-radius:10px;background:#101821;color:#cbd7e5;font-size:12px}
.step-guide strong{color:#f1cd69;margin-bottom:3px}
.declaration-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.warning-action{background:#5a451b;color:#ffe6a0;border:1px solid #8a6b29}
.request-item-uploaded .request-item-status{color:#d7e4f2}

.kpi-shell{padding:10px 0 30px}
.kpi-title-row,.kpi-table-head,.kpi-chart-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.kpi-controls{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:10px;margin:14px 0}
.kpi-controls label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}
.kpi-controls select,.kpi-controls input{background:#151c27;color:#e5e7eb;border:1px solid #374151;padding:9px}
.kpi-cards{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px;margin:14px 0}
.kpi-card{background:#151c27;border:1px solid #2e3949;padding:14px;min-height:74px}
.kpi-card-label{font-size:12px;color:#9ca3af;font-weight:700}
.kpi-card-value{font-size:24px;font-weight:800;margin-top:6px}
.kpi-chart-panel,.kpi-table-panel{background:#121923;border:1px solid #2c3747;padding:14px;margin-top:14px}
#kpiChart{width:100%;height:340px;display:block;margin-top:12px}
.kpi-table-scroll{overflow:auto;max-height:520px;margin-top:12px}
#kpiTable{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}
#kpiTable th,#kpiTable td{border:1px solid #2f3947;padding:8px 9px;text-align:center}
#kpiTable th{position:sticky;top:0;background:#202834;color:#dbe3ed;cursor:pointer;z-index:2}
#kpiTable tbody tr:nth-child(even) td{background:#171f2a}
#kpiTable tbody tr:nth-child(odd) td{background:#121923}
#kpiTable .kpi-filter-active,#kpiTable th.kpi-filter-active,#kpiTable td.kpi-filter-active{background:#f2d98a!important;color:#171b22!important;font-weight:700}
.kpi-filter-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9999;display:flex;align-items:center;justify-content:center}
.kpi-filter-dialog{width:min(560px,90vw);background:#151c27;border:1px solid #425069;padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.5)}
.kpi-filter-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.kpi-filter-actions button,.kpi-autocomplete-list button{background:#202a38;color:#e5e7eb;border:1px solid #3a4658;padding:9px;text-align:left;cursor:pointer}
#kpiAutocompleteWrap{margin-top:12px}
#kpiAutocompleteInput{width:100%;box-sizing:border-box;background:#0f1520;color:#fff;border:1px solid #46546a;padding:10px}
.kpi-autocomplete-list{max-height:220px;overflow:auto;margin-top:7px;display:flex;flex-direction:column;gap:4px}
.kpi-autocomplete-list button:hover{background:#f2d98a;color:#171b22}
.kpi-dialog-footer{display:flex;justify-content:flex-end;margin-top:12px}
@media(max-width:1200px){
  .kpi-controls{grid-template-columns:repeat(3,1fr)}
  .kpi-cards{grid-template-columns:repeat(2,1fr)}
}


/* ==========================================================
   V15.9A - KPI UX + SCORE OPERATIVO
   ========================================================== */

.kpi-controls{
  align-items:end;
  gap:12px;
}

.kpi-controls label{
  min-width:0;
}

.kpi-controls select,
.kpi-controls input{
  min-height:42px;
  border-radius:10px;
  padding:10px 12px;
}

.kpi-cards{
  gap:12px;
  align-items:stretch;
}

.kpi-card{
  position:relative;
  min-height:112px;
  border-radius:14px;
  padding:18px 48px 18px 18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:
    border-color .18s ease,
    transform .18s ease,
    background .18s ease;
}

.kpi-card:hover{
  border-color:#526176;
  transform:translateY(-1px);
  background:#182130;
}

.kpi-card-label{
  line-height:1.3;
  letter-spacing:.02em;
}

.kpi-card-value{
  margin-top:16px;
  font-size:28px;
  line-height:1;
}

.kpi-help-button{
  position:absolute;
  top:12px;
  right:12px;
  width:26px;
  height:26px;
  min-width:26px;
  padding:0;
  border-radius:50%;
  background:#252f3d;
  color:#d7dee9;
  border:1px solid #3b485a;
  font-size:14px;
  font-weight:800;
  line-height:24px;
  text-align:center;
  transform:none!important;
}

.kpi-help-button:hover{
  background:#f1cd69;
  color:#171717;
  border-color:#f1cd69;
}

.kpi-help-overlay{
  position:fixed;
  inset:0;
  z-index:10000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(5,8,13,.72);
  backdrop-filter:blur(5px);
}

.kpi-help-dialog{
  position:relative;
  width:min(620px,96vw);
  background:#151c27;
  border:1px solid #344153;
  border-radius:18px;
  padding:28px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
}

.kpi-help-close{
  position:absolute;
  top:14px;
  right:14px;
  width:34px;
  height:34px;
  padding:0;
  border-radius:50%;
  background:#242d39;
  color:#e6ebf2;
  font-size:22px;
  line-height:32px;
}

.kpi-help-kicker{
  color:#f1cd69;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  margin-bottom:8px;
}

.kpi-help-dialog h3{
  padding-right:42px;
  margin-bottom:22px;
}

.kpi-help-section{
  border-top:1px solid #2b3645;
  padding-top:14px;
  margin-top:14px;
}

.kpi-help-section strong{
  display:block;
  font-size:11px;
  letter-spacing:.08em;
  color:#9fb0c5;
}

.kpi-help-section p{
  margin:6px 0 0;
  color:#e3e8ef;
  line-height:1.55;
}

.kpi-operation-score{
  --score-accent:#f1cd69;
  border:1px solid #354154;
  border-radius:18px;
  margin:18px 0 16px;
  padding:22px;
  background:
    linear-gradient(
      135deg,
      rgba(28,36,48,.98),
      rgba(17,23,32,.98)
    );
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}

.kpi-operation-score.score-superior{
  --score-accent:#46d39a;
}

.kpi-operation-score.score-optimal{
  --score-accent:#8fd3ff;
}

.kpi-operation-score.score-acceptable{
  --score-accent:#f1cd69;
}

.kpi-operation-score.score-low{
  --score-accent:#f2a65a;
}

.kpi-operation-score.score-critical{
  --score-accent:#ff6f82;
  border-color:rgba(255,111,130,.55);
}

.kpi-score-main{
  display:grid;
  grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);
  gap:28px;
  align-items:center;
}

.kpi-score-eyebrow{
  color:#9faabd;
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
}

.kpi-score-value{
  margin-top:8px;
  font-size:48px;
  font-weight:900;
  line-height:1;
  color:var(--score-accent);
}

.kpi-score-value span{
  font-size:18px;
  color:#929eaf;
  font-weight:700;
}

.kpi-score-level{
  display:inline-flex;
  margin-top:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--score-accent);
  color:var(--score-accent);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.kpi-score-cutoff{
  margin-top:12px;
  color:#9ba7b8;
  font-size:13px;
}

.kpi-score-gauge{
  height:16px;
  background:#0c1118;
  border:1px solid #2c3745;
  border-radius:999px;
  overflow:hidden;
}

.kpi-score-gauge-fill{
  height:100%;
  border-radius:999px;
  background:var(--score-accent);
  box-shadow:0 0 18px color-mix(in srgb,var(--score-accent) 45%,transparent);
  transition:width .35s ease;
}

.kpi-score-scale{
  display:flex;
  justify-content:space-between;
  margin-top:7px;
  color:#778496;
  font-size:10px;
}

.kpi-score-components{
  margin-top:20px;
  display:grid;
  grid-template-columns:repeat(5,minmax(120px,1fr));
  gap:8px;
}

.kpi-score-component{
  background:#111823;
  border:1px solid #283443;
  border-radius:10px;
  padding:10px;
}

.kpi-score-component span{
  display:block;
  color:#8f9bad;
  font-size:10px;
  min-height:26px;
}

.kpi-score-component strong{
  display:block;
  margin-top:5px;
  font-size:18px;
  color:#eef2f7;
}

.kpi-score-note{
  margin-top:14px;
  color:#778496;
  font-size:11px;
}

@media(max-width:1000px){
  .kpi-score-main{
    grid-template-columns:1fr;
  }

  .kpi-score-components{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:650px){
  .kpi-score-components{
    grid-template-columns:1fr;
  }

  .kpi-score-value{
    font-size:40px;
  }
}


/* ==========================================================
   V15.9D EXECUTIVE UI
   ========================================================== */

/* ----------------------------------------------------------
   Alineación perfecta KPI:
   PERÍODO / DESDE / HASTA / USUARIO / GRÁFICO / APLICAR
   ---------------------------------------------------------- */

.kpi-controls{
  align-items:end !important;
}

.kpi-controls label{
  margin:0 !important;
  align-self:end;
}

.kpi-controls select,
.kpi-controls input{
  margin:0 !important;
  box-sizing:border-box;
  height:52px !important;
  min-height:52px !important;
}

.kpi-controls > button{
  margin:0 !important;
  box-sizing:border-box;
  height:52px !important;
  min-height:52px !important;
  align-self:end;
}


/* ----------------------------------------------------------
   Total liquidado KPI
   ---------------------------------------------------------- */

.kpi-operation-score{
  position:relative;
}

.kpi-liquidated-total{
  margin-top:18px;
  padding:14px 16px;
  border:1px solid #334155;
  border-radius:12px;
  background:#101823;
  display:grid;
  grid-template-columns:auto minmax(280px,1fr);
  grid-template-areas:
    "label amount"
    "note amount";
  column-gap:18px;
  align-items:center;
}

.kpi-liquidated-total span{
  grid-area:label;
  color:#9ba7b8;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
}

.kpi-liquidated-total strong{
  grid-area:amount;
  justify-self:end;
  color:#eef4fb;
  font-size:clamp(22px,2vw,32px);
  font-weight:900;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.kpi-liquidated-total small{
  grid-area:note;
  margin-top:3px;
  color:#778496;
  font-size:11px;
}


/* ----------------------------------------------------------
   Tooltip escala score
   ---------------------------------------------------------- */

.score-scale-host{
  cursor:help;
}

.score-scale-tooltip{
  position:absolute;
  z-index:5000;
  top:calc(100% + 8px);
  left:18px;

  width:310px;
  max-width:calc(100vw - 60px);

  padding:14px;

  border:1px solid #3a4759;
  border-radius:14px;

  background:
    rgba(15,23,34,.98);

  box-shadow:
    0 18px 50px
    rgba(0,0,0,.38);

  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);

  transition:
    opacity .16s ease,
    transform .16s ease,
    visibility .16s ease;

  pointer-events:none;
}

.score-scale-host:hover
.score-scale-tooltip,
.score-scale-host:focus-within
.score-scale-tooltip{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.score-scale-tooltip-title{
  color:#e8edf5;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  margin-bottom:9px;
}

.score-scale-row{
  display:grid;
  grid-template-columns:88px 1fr;
  align-items:center;

  min-height:31px;
  padding:3px 8px;

  border-left:4px solid currentColor;
  border-radius:5px;

  margin-top:4px;

  background:#111a26;
}

.score-scale-row span{
  color:#9ba7b8;
  font-size:11px;
}

.score-scale-row strong{
  font-size:11px;
  letter-spacing:.04em;
}

.score-scale-row.score-superior{
  color:#46d39a;
}

.score-scale-row.score-optimal{
  color:#78d8f8;
}

.score-scale-row.score-acceptable{
  color:#f1cd69;
}

.score-scale-row.score-low{
  color:#f0a65a;
}

.score-scale-row.score-critical{
  color:#ff6f82;
}

.score-scale-tooltip-note{
  margin-top:10px;
  padding-top:9px;

  border-top:1px solid #2d3949;

  color:#7f8b9d;
  font-size:10px;
  line-height:1.4;
}


@media(max-width:850px){

  .kpi-liquidated-total{
    grid-template-columns:1fr;
    grid-template-areas:
      "label"
      "amount"
      "note";
  }

  .kpi-liquidated-total strong{
    justify-self:start;
    margin-top:5px;
  }
}



/* ==========================================================
   V15.9D1 - HOVER SCORE EXCLUSIVO DEL NUMERO
   ========================================================== */

/* Toda la tarjeta deja de ser área sensible. */
.kpi-operation-score{
  cursor:default !important;
}

.score-scale-host{
  cursor:default !important;
}

/* Sólo el número indica interacción. */
.v159d1-score-number{
  display:inline-block;
  position:relative;
  cursor:help;
}

/*
  Neutraliza el tooltip viejo dependiente
  de :hover en toda la tarjeta.
*/
.score-scale-host:hover
.score-scale-tooltip{
  opacity:0 !important;
  visibility:hidden !important;
}

/*
  Tooltip flotante nuevo.
  Se coloca con JS exactamente encima
  del número.
*/
.v159d1-floating-score-scale{
  position:fixed !important;
  z-index:20000 !important;

  width:310px;
  max-width:calc(100vw - 16px);

  opacity:0 !important;
  visibility:hidden !important;

  transform:translateY(3px);

  pointer-events:none !important;

  transition:
    opacity .12s ease,
    transform .12s ease,
    visibility .12s ease;
}

.v159d1-floating-score-scale.is-measuring{
  display:block !important;
  opacity:0 !important;
  visibility:hidden !important;
}

.v159d1-floating-score-scale.is-visible{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0);
}


/* ==========================================================
   V15.10 PERFORMANCE LIQUIDADOR
   ========================================================== */

.performance-panel{
  margin-top:16px;
  padding:18px;
  border:1px solid #2d3949;
  border-radius:14px;
  background:#101720;
}

.performance-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}

.performance-head h2{
  margin:3px 0 4px;
}

.performance-eyebrow{
  color:#7ed8b0;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}

.performance-refresh{
  flex:0 0 auto;
}

.performance-filters{
  display:grid;
  grid-template-columns:
    minmax(160px,1fr)
    minmax(150px,1fr)
    minmax(150px,1fr)
    130px;
  gap:10px;
  align-items:end;
  margin-top:16px;
}

.performance-filters label{
  display:flex;
  flex-direction:column;
  gap:5px;
  margin:0;
  color:#b8c4d3;
  font-size:11px;
  font-weight:800;
}

.performance-filters select,
.performance-filters input{
  box-sizing:border-box;
  margin:0!important;
  height:44px;
  padding:8px 10px;
  border:1px solid #37465a;
  border-radius:8px;
  background:#151e2a;
  color:#edf2f7;
}

.performance-apply{
  height:44px;
  margin:0!important;
  align-self:end;
}

.performance-status{
  min-height:18px;
  margin-top:8px;
  color:#8fa0b4;
  font-size:11px;
}

.performance-main-grid{
  display:grid;
  grid-template-columns:
    minmax(280px,.8fr)
    minmax(360px,1.2fr);
  gap:12px;
}

.performance-score-card,
.performance-ranking-card,
.performance-chart-card,
.performance-insights-card{
  padding:16px;
  border:1px solid #2c394a;
  border-radius:12px;
  background:#141d28;
}

.performance-card-label,
.performance-card-title{
  color:#9ba8b8;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
}

.performance-score-value{
  margin-top:8px;
  color:#e8cb72;
  font-size:31px;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}

.performance-position{
  margin-top:2px;
  color:#d5deea;
  font-size:15px;
  font-weight:800;
}

.performance-score-track{
  height:9px;
  margin-top:14px;
  overflow:hidden;
  border-radius:999px;
  background:#273342;
}

.performance-score-fill{
  width:0;
  height:100%;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    #5089d8,
    #63c6a5
  );
  transition:width .28s ease;
}

.performance-small-note{
  margin-top:9px;
  color:#778699;
  font-size:10px;
  line-height:1.4;
}

.performance-ranking{
  display:grid;
  gap:6px;
  margin-top:11px;
}

.performance-rank-row{
  display:grid;
  grid-template-columns:
    42px
    12px
    1fr
    auto;
  align-items:center;
  min-height:32px;
  padding:4px 8px;
  border-radius:8px;
  color:#8390a1;
}

.performance-rank-row.is-me{
  background:#1b2935;
  color:#eef4fa;
}

.performance-rank-position{
  font-size:12px;
  font-weight:900;
}

.performance-rank-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#526173;
}

.performance-rank-row.is-me
.performance-rank-dot{
  background:#71d5ae;
  box-shadow:0 0 0 3px rgba(113,213,174,.10);
}

.performance-rank-name{
  font-size:11px;
  font-weight:800;
}

.ranking-own-score{
  color:#e8cb72;
  font-size:11px;
  font-weight:900;
}

.performance-metrics{
  display:grid;
  grid-template-columns:
    repeat(5,minmax(130px,1fr));
  gap:10px;
  margin-top:12px;
}

.performance-metrics article{
  min-height:70px;
  padding:12px;
  border:1px solid #2b3747;
  border-radius:10px;
  background:#131c27;
}

.performance-metrics span{
  display:block;
  color:#8391a4;
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em;
}

.performance-metrics strong{
  display:block;
  margin-top:7px;
  color:#edf3f8;
  font-size:19px;
  font-weight:900;
}

.performance-sample-warning{
  margin-top:10px;
  padding:9px 11px;
  border:1px solid #665a2d;
  border-radius:8px;
  background:#292514;
  color:#e3ce78;
  font-size:11px;
}

.performance-lower-grid{
  display:grid;
  grid-template-columns:
    minmax(420px,1.35fr)
    minmax(300px,.65fr);
  gap:12px;
  margin-top:12px;
}

.performance-daily-chart{
  display:grid;
  gap:8px;
  margin-top:13px;
}

.performance-day-row{
  display:grid;
  grid-template-columns:
    52px
    minmax(100px,1fr)
    95px;
  align-items:center;
  gap:9px;
}

.performance-day-date{
  color:#98a7b9;
  font-size:10px;
}

.performance-day-track{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#253140;
}

.performance-day-fill{
  height:100%;
  border-radius:999px;
  background:#6bb7e9;
}

.performance-day-value{
  color:#aab7c7;
  font-size:10px;
  text-align:right;
}

.performance-insights{
  display:grid;
  gap:9px;
  margin-top:13px;
}

.performance-insight{
  display:grid;
  grid-template-columns:8px 1fr;
  gap:8px;
  color:#c7d1dc;
  font-size:11px;
  line-height:1.45;
}

.performance-insight-dot{
  width:6px;
  height:6px;
  margin-top:5px;
  border-radius:50%;
  background:#70d2ad;
}

.performance-empty{
  padding:14px 0;
  color:#718094;
  font-size:11px;
}


@media(max-width:1100px){

  .performance-main-grid,
  .performance-lower-grid{
    grid-template-columns:1fr;
  }

  .performance-metrics{
    grid-template-columns:
      repeat(2,minmax(140px,1fr));
  }
}


@media(max-width:700px){

  .performance-filters{
    grid-template-columns:1fr;
  }

  .performance-metrics{
    grid-template-columns:1fr;
  }
}


