/* Lectura cómoda en escritorio y teléfono; el desplazamiento se limita a gráfica y tablas. */
.estPanel{display:flex;flex-direction:column;gap:16px;min-width:0;color:#f4f5fa;font:500 14px/1.5 var(--ui);text-transform:none}
.estPanel>*{min-width:0}.estPanel h2{font:800 16px/1.4 var(--ui);margin:0 0 10px;color:#f5f7ff}.estPanel h3{font:700 13px/1.4 var(--ui);margin:0 0 8px;color:#dee3ee}
.estCard,.estKpi{background:#12131f;border:1px solid #3c4052;border-radius:14px;padding:18px;min-width:0}
.estPanel .estCab{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.estAcciones,.estTabs,.estFiltros{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.estTabs{margin:0 0 18px}
.estPanel button,.estPanel select,.estPanel input,.estTabs button{min-height:44px;font:700 13px/1.35 var(--ui);border:1px solid #51576b;border-radius:9px;background:#191b29;color:#f5f7ff;padding:10px 12px;max-width:100%;box-sizing:border-box;box-shadow:none}
.estPanel button,.estTabs button{cursor:pointer}.estPanel button[aria-pressed=true],.estTabs button[aria-pressed=true]{border-color:#00dbee;color:#04e9f7;background:#14303a}.estPanel :focus-visible,.estTabs :focus-visible{outline:2px solid #00dbee;outline-offset:3px}
.estPanel .estSel{width:auto;max-width:100%;min-width:135px;font-size:13px}.estFiltros [data-semana]{flex:1;max-width:370px}.estPeriodo{margin:0;color:#00e5ef;font:700 14px/1.5 var(--ui)}
.estKpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.estKpi{display:block}.estKpi>strong{display:block;font:800 clamp(19px,2vw,26px)/1.4 var(--ui);overflow-wrap:anywhere}.estKpi p{margin:8px 0}.estKpi.estPresupuesto{grid-column:auto}.estPresupuesto>strong{font-size:20px}.estPresupuesto button{margin-top:10px;width:100%}
.estPanel .estNota,.estPanel .estVacio{font:500 13px/1.55 var(--ui);color:#c4cada;letter-spacing:0;margin:8px 0}.estDef summary{cursor:pointer;font-weight:700;min-height:28px}.estDef p{font-size:13px;color:#cbd2e2}
.estAviso,.estConciliacion{background:#382d19;border:1px solid #9e7839;color:#ffe0a3;border-radius:9px;padding:12px}.estConciliacion p{margin:7px 0}.estError{padding:14px;border:1px solid #dd6a8b;color:#ffd0de;border-radius:10px;font-size:14px}.estCargando{opacity:.75;pointer-events:none}.estComparacion{border-top:1px solid #3c4052;margin-top:18px;padding-top:15px}.estComparacion p{margin:6px 0}
.estPanel .estBar{display:block;height:8px;width:100%;background:#303346;border-radius:8px;overflow:hidden;grid-column:1/-1}.estPanel .estBar i{display:block;height:100%;background:linear-gradient(90deg,#00d7e8,#e125ba);border-radius:8px}
.estGrafScroll{overflow-x:auto;overscroll-behavior-inline:contain;padding:8px 0}.estGraf{display:flex;gap:8px;min-width:100%;width:max-content}.estPanel .estBarDia{display:flex;flex-direction:column;align-items:center;justify-content:space-between;width:72px;flex:1 0 72px;border:0;background:transparent;padding:4px;font-size:12px;height:190px}.estBarDia b{font-size:12px;white-space:nowrap}.estBarTrack{display:flex;align-items:flex-end;justify-content:center;width:100%;height:132px;border-bottom:1px solid #737c93}.estBarTrack i{display:block;width:70%;background:linear-gradient(0deg,#00d7e8,#e125ba);border-radius:6px 6px 0 0;min-height:1px}.estDiaInfo{font-size:14px;color:#f1f6ff;min-height:42px;margin:10px 0}
.estListas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.estListaFiltros{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:12px 0}.estListaFiltros input{grid-column:1/-1;min-width:0;width:100%}.estListaFiltros select{min-width:0}.estListaFiltros button{font-size:12px;width:146px}
.estPanel .estFila{border-bottom:1px solid #373b4e;padding:0;margin:0;background:none}.estPanel .estFila>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:14px 0;cursor:pointer;list-style:none;font-size:13px}.estPanel .estFila>summary::-webkit-details-marker{display:none}.estPanel .estNom{font-size:14px;font-weight:750;overflow-wrap:anywhere}.estPanel .estNom:before{content:'› ';color:#00e1ef}.estPanel .estFila[open]>summary .estNom:before{content:'⌄ '}.estPanel .estFila>summary>strong{grid-column:1/-1;text-align:right;font:700 14px/1.4 var(--ui)}.estSub{padding:0 0 10px 12px;min-width:0}.estPanel [data-todas]{margin-top:12px;min-width:145px}
.estTablaWrap{overflow:auto;max-width:100%;margin:12px 0}.estTabla{border-collapse:collapse;width:100%;min-width:340px;font:500 14px/1.45 var(--ui)}.estTabla th,.estTabla td{padding:12px 9px;text-align:left;border-bottom:1px solid #383d50;white-space:normal}.estTabla th{font-size:12px;color:#d6dff1;line-height:1.4}.estTabla td:not(:first-child){font-variant-numeric:tabular-nums}.estNotas summary{cursor:pointer;min-height:30px}.estNotas summary h2{display:inline}.estNotas .estTabla th:last-child{max-width:185px}
@media(max-width:1100px){.estKpis{grid-template-columns:repeat(3,minmax(0,1fr))}.estKpi.estPresupuesto{grid-column:1/-1}}
@media(max-width:700px){.estListas{grid-template-columns:1fr}.estKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.estKpi{padding:12px}.estKpi.estPresupuesto{grid-column:1/-1}.estCard{padding:14px}.estFiltros .estSel{width:100%;max-width:none}.estFiltros [data-semana]{flex:auto;max-width:none}.estFiltros button{flex:1}.estTabs{display:grid;grid-template-columns:1fr 1fr}.estTabs button{font-size:12px;padding:10px 8px}.estAcciones{width:100%}.estPanel .estCab{gap:8px}.estPresupuesto>strong{font-size:20px}.estKpi>strong{font-size:20px}}
/* Estilos existentes del filtro de Producción y del recortador. */
.estProdFiltros{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.estProdFiltros input,.estProdFiltros select{background:#10131e;color:var(--text);border:1px solid #48485e;border-radius:9px;padding:10px;font-size:15px;max-width:100%}.estProdFiltros input{flex:1;min-width:160px}.estEstadoTabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.estEstadoTabs button{font-size:14px}.estEstadoTabs button[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan)}
.hzTool[data-tool=fondo] .hzSelect{width:100%;padding:12px;border-radius:9px;background:#12121d;color:#fff;border:1px solid #48485e;font-size:14px}

@media(max-width:700px){.estKpi:nth-child(3){grid-column:1/-1}.estPanel input,.estPanel select{font-size:16px}}
/* Resumen compacto: evita tres tarjetas vacías a la altura del presupuesto. */
@media(min-width:701px){.estKpis{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.estKpi.estPresupuesto{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 22px}.estPresupuesto h3,.estPresupuesto>.estNota,.estPresupuesto>.estAviso{grid-column:1/-1}.estPresupuesto p{margin:4px 0}.estPresupuesto button{grid-column:2;margin:0}.estPresupuesto>strong{font-size:22px}}
.estPanel .estBarDia{max-width:120px}.estGraf{justify-content:space-around}.estPanel input::placeholder,.accBuscar::placeholder{color:#b9c1d3;opacity:1}

.estPanel .estSel.activo{border-color:#00dfee;background:#14303a;color:#edfdff}

/* Panel compacto: color de marca, jerarquía y títulos centrados. */
.estPanel h2,.estPanel h3,.accCaja h2,.accCaja h3,#statsProduccion h2{text-align:center;width:100%}
.estPanel .estCab{justify-content:center}.estPanel .estCab h2{flex:1 1 100%;margin:0}
.estTabs{gap:8px;margin:10px 0}.estTabs button[aria-pressed=true]{background:linear-gradient(100deg,#004a58,#55134c);border-color:#00e5f2;color:#fff}
.estPanel .estCard{padding:14px;margin:12px 0;border-color:#46506b;border-top:2px solid #00dcec}
.estPanel .estCard:nth-child(even){border-top-color:#fa22bf}
.estPanel .estKpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.estPanel .estKpi{padding:12px;text-align:center;border-color:#4b4676;background:linear-gradient(130deg,#092832,#28102b)}
.estPanel .estKpi h3{color:#5aeeff}.estPanel .estKpi>strong{font-size:25px}
.estPanel .estKpi .estNota:empty{display:none}
.estPanel .estPresupuesto{grid-column:1/-1;gap:6px 16px}
.estPanel .estPresupuesto>strong,.estPanel .estPresupuesto>p,.estPanel .estPresupuesto>.estBar,.estPanel .estPresupuesto>button{grid-column:1/-1}
.estPanel .estPresupuesto>button{justify-self:center;max-width:100%;font-size:12px}
.estPanel .estFila>summary{padding:9px 0;gap:4px}.estPanel .estFila>summary>strong{color:#44eaf5}
.estPanel .estListas{gap:12px}.estPanel .estComparacion{text-align:center;padding:10px 0 0}.estPanel .estComparacion p{margin:5px 0}
.estPanel .estNotas summary{text-align:center}.estPanel .estTabla th{text-align:center;font-size:13px}
.estPanel .estTabla td{padding:9px}.estPanel .estNota{display:block}.estPanel .estFiltros{gap:8px}
#statsProduccion>.engines{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:12px 0}
@media(min-width:1100px){.estPanel .estKpis{grid-template-columns:1fr 1fr 2fr}.estPanel .estKpi.estPresupuesto{grid-column:auto;display:block}.estPanel .estPresupuesto>strong{font-size:20px}.estPanel .estPresupuesto button{margin:6px auto 0}}
@media(max-width:700px){.estTabs{grid-template-columns:repeat(2,minmax(0,1fr))}.estTabs button{min-width:0;overflow-wrap:anywhere}.estPanel .estKpi>strong{font-size:20px}.estPanel .estCard{padding:12px}.estPanel .estFiltros button{font-size:12px}}

/* Estadísticas: navegación superior y lectura compacta por filas. */
body.dentro.enEstadisticas .top{grid-template-columns:auto minmax(0,1fr)}
body.enEstadisticas #topTitulo{display:none}
body.enEstadisticas #topDer{justify-content:flex-end;min-width:0}
#statsTabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;margin:0;padding:4px;border:1px solid #00ddeb;border-radius:13px;background:#110e19;max-width:100%}
#statsTabs.hidden{display:none}
#statsTabs button{border:0;background:transparent;color:#b7bed1;padding:10px 12px;min-height:42px;font-size:12px;border-radius:10px;white-space:nowrap}
#statsTabs button[aria-pressed=true]{color:#00ecff;background:#13343e}
.estConsumo.estPanel{gap:12px}
.estConsumo.estPanel .estCard{margin:0;padding:12px 16px}
.estConsumo.estPanel .estResumen{display:grid;grid-template-columns:minmax(330px,1.15fr) minmax(185px,.7fr) minmax(285px,1fr);gap:12px;align-items:stretch}
.estConsumo .estFiltros{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:8px}
.estConsumo .estFechas{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:8px}
.estConsumo .estFechas .estSel{min-width:0;width:100%;max-width:none;padding:8px;font-size:12px}
.estConsumo .estAcciones{display:grid;grid-template-columns:.65fr 1fr 1.2fr;gap:8px;width:100%}
.estConsumo .estAcciones button{padding:8px 6px;font-size:12px}
.estConsumo.estPanel .estResumen .estKpi{grid-column:auto;padding:10px 12px;min-height:100px}
.estConsumo.estPanel .estGasto{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.estConsumo .estKpiTitulo{font-size:13px;color:#5aeeff;font-weight:700}
.estConsumo.estPanel .estGasto strong{font-size:25px;line-height:1.25}
.estConsumo.estPanel .estPresupuesto{position:relative;display:flex;flex-direction:column;justify-content:center;gap:6px}
.estConsumo.estPanel .estPresupuesto h3{box-sizing:border-box;padding:0 24px;margin:0;font-size:12px}
.estConsumo.estPanel .estPresupuesto>strong{font-size:18px;line-height:1.25}
.estConsumo.estPanel .estPresupuesto [data-reiniciar]{position:absolute;top:4px;right:4px;width:28px;min-height:28px;height:28px;padding:3px;margin:0;border:0;background:transparent;font-size:17px}
.estConsumo.estPanel .estPresupuesto .estSaldo{font-size:11px;line-height:1.3;text-align:right;margin:0}
.estConsumo .estAlertaLimite{font-size:11px;color:#ffb1c6}.estConsumo .estLimite i{background:#fc3b7d}
.estConsumo.estPanel .estListas{display:flex;flex-direction:column;gap:12px}
.estConsumo .estListaFiltros{grid-template-columns:minmax(140px,1fr) minmax(120px,180px) auto;max-width:650px;margin:8px 0}
.estConsumo .estListaFiltros input{grid-column:auto}
.estConsumo .estListaFiltros button{width:auto;min-width:125px}
.estConsumo .estFilas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;align-items:start}
.estConsumo.estPanel .estFila>summary{grid-template-columns:minmax(95px,.75fr) minmax(36px,1fr) auto;align-items:center;gap:10px;min-height:44px;padding:6px 0}
.estConsumo.estPanel .estFila>summary>.estBar{grid-column:auto;height:8px}
.estConsumo.estPanel .estFila>summary>strong{grid-column:auto;font-size:13px;max-width:155px}
.estConsumo.estPanel .estNom{font-size:13px;line-height:1.35}
.estConsumo .estSub{padding:0 0 8px 8px}
.estConsumo .estUsos{margin:4px 0;color:#c4cada;font-size:12px}
.estConsumo .estNotasColumnas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.estConsumo .estNotas .estTabla{table-layout:fixed;min-width:0}
.estConsumo .estNotas .estTabla th,.estConsumo .estNotas .estTabla td{text-align:center;padding:8px 4px;overflow-wrap:anywhere;font-size:12px}
.estConsumo .estNotas .estTabla th:first-child,.estConsumo .estNotas .estTabla td:first-child{width:30%;text-align:left}
.estConsumo .estNotas .estTabla th:nth-child(2){width:13%}
.estConsumo .estNotas .estTablaWrap{margin:4px 0}
@media(max-width:1100px){.estConsumo.estPanel .estResumen{grid-template-columns:1fr 1fr}.estConsumo .estResumen>.estFiltros{grid-column:1/-1;max-width:500px}.estConsumo .estNotasColumnas{gap:12px}}
@media(max-width:700px){
 body.dentro.enEstadisticas .top{grid-template-columns:1fr}
 body.enEstadisticas #topDer{grid-column:1/-1;width:100%}
 #statsTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:max-content}
 #statsTabs button{font-size:11px;white-space:normal;padding:8px}
 .estConsumo.estPanel .estResumen{grid-template-columns:minmax(0,1fr);gap:8px}
 .estConsumo .estResumen>.estFiltros{max-width:none}
 .estConsumo.estPanel .estResumen .estKpi{min-height:88px}
 .estConsumo .estFilas,.estConsumo .estNotasColumnas{grid-template-columns:1fr}
 .estConsumo .estListaFiltros{grid-template-columns:minmax(0,1fr) auto}
 .estConsumo .estListaFiltros input{grid-column:1/-1}
 .estConsumo .estListaFiltros input,.estConsumo .estListaFiltros select{font-size:14px}
 .estConsumo.estPanel .estCard{padding:10px}
 .estConsumo.estPanel .estFila>summary{grid-template-columns:minmax(85px,.8fr) minmax(24px,1fr) auto;gap:6px}
 .estConsumo.estPanel .estFila>summary>strong{max-width:125px}
 .estConsumo .estNotas .estTabla th,.estConsumo .estNotas .estTabla td{font-size:11px}
}
/* Safari: el contenido cerrado no debe ampliar el ancho del documento. */
.estConsumo .estFila:not([open])>.estSub{display:none}
.estConsumo select{color-scheme:dark}
.estConsumo .estNotas .estTabla th:nth-child(2){width:16%;white-space:nowrap}
@media(max-width:700px){.estConsumo .estNotas .estTabla th,.estConsumo .estNotas .estTabla td{font-size:12px}}
.estConsumo select{appearance:none;-webkit-appearance:none;background-color:#191b29;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2300e6ef' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;padding-right:28px;text-overflow:ellipsis}
.estConsumo .estFechas .estSel{padding-right:25px;overflow:hidden}
/* Controles compactos y gastos visibles desde el primer vistazo. */
#statsTabs button{font:700 11px var(--ui);letter-spacing:0;min-height:32px;padding:9px 10px;border-radius:8px}
#statsTabs{border-radius:13px;gap:4px;padding:4px}
.estConsumo.estPanel{gap:10px}
.estConsumo.estPanel .estResumen{grid-template-columns:340px minmax(180px,1fr) minmax(265px,1.2fr);gap:12px}
.estConsumo .estFechas{grid-template-columns:135px 199px;gap:6px}
.estConsumo .estAcciones{grid-template-columns:75px 124px 129px;gap:6px}
.estConsumo .estFiltros{gap:6px}
.estConsumo.estPanel .estResumen .estKpi{min-height:78px;padding:8px 12px}
.estConsumo.estPanel .estResumen button:not(.estKpi):not([data-reiniciar]),.estConsumo.estPanel .estResumen select{height:36px;min-height:36px;padding-top:6px;padding-bottom:6px;font-size:12px}
.estConsumo.estPanel [data-reset]:enabled{background:#be163b;border-color:#ff3961;color:white}
.estConsumo.estPanel [data-reset]:disabled{opacity:.42;cursor:default}
.estConsumo.estPanel .estGasto strong{font-size:24px}
.estConsumo.estPanel [data-reiniciar]{color:#fff;display:grid;place-items:center;filter:drop-shadow(0 0 3px #ffffff50)}
.estConsumo.estPanel .estCabLista{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:6px}
.estConsumo.estPanel .estCabLista h2{width:auto;margin:0;font-size:15px;text-align:left}
.estConsumo .estCabLista .estListaFiltros{display:flex;gap:6px;margin:0;max-width:100%;flex-wrap:wrap}
.estConsumo .estCabLista .estListaFiltros input{width:170px}
.estConsumo .estCabLista .estListaFiltros select{width:150px}
.estConsumo .estCabLista .estListaFiltros button{width:127px;min-width:0}
.estConsumo.estPanel .estListaFiltros input,.estConsumo.estPanel .estListaFiltros select,.estConsumo.estPanel .estListaFiltros button,.estConsumo.estPanel [data-graf]{min-height:32px;height:32px;padding:5px 9px;font-size:11px}
.estConsumo.estPanel .estListaFiltros select,.estConsumo.estPanel [data-graf]{padding-right:25px}
.estConsumo.estPanel [data-graf]{width:190px}
.estConsumo.estPanel .estCab{justify-content:space-between;flex-wrap:nowrap;gap:12px;margin-bottom:8px}
.estConsumo.estPanel .estCab h2{width:auto;flex:0 1 auto;font-size:15px}
.estConsumo .estFilas{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.estConsumo .estColumna{min-width:0}
.estConsumo.estPanel .estFila>summary{grid-template-columns:minmax(90px,.9fr) minmax(22px,1fr) auto;min-height:36px;padding:5px 0;gap:8px}
.estConsumo.estPanel .estNom{font-size:12px}
.estConsumo.estPanel .estNom:before{content:'';display:inline-block;width:5px;height:5px;border-right:1.5px solid #c6ccd9;border-bottom:1.5px solid #c6ccd9;transform:rotate(-45deg);margin:0 7px 2px 1px}
.estConsumo.estPanel .estFila[open]>summary .estNom:before{content:'';transform:rotate(45deg)}
.estConsumo.estPanel .estFila>summary>strong{font-size:12px;max-width:125px}
.estConsumo .estSub{padding:0 0 6px}
.estConsumo .estSub .estTabla{min-width:0;table-layout:fixed}
.estConsumo .estSub .estTabla th,.estConsumo .estSub .estTabla td{font-size:11px;padding:7px 4px;overflow-wrap:anywhere}
.estConsumo .estSub .estTabla th:first-child,.estConsumo .estSub .estTabla td:first-child{width:46%;text-align:left}
.estConsumo .estSub .estTabla th:nth-child(2),.estConsumo .estSub .estTabla td:nth-child(2){width:20%;text-align:center}
.estConsumo .estSub .estTabla th:last-child,.estConsumo .estSub .estTabla td:last-child{text-align:right}
.estConsumo.estPanel [data-notas-toggle]{padding:0;min-height:32px;border:0;background:transparent;font-size:15px;font-weight:800;text-align:left}
.estConsumo.estPanel [data-notas-toggle]{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.estConsumo [data-notas-toggle]:before{content:'';flex:0 0 6px;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg)}
.estConsumo [data-notas-toggle][aria-expanded=true]:before{transform:rotate(45deg)}
.estConsumo .estNotasBody[hidden]{display:none}
@media(max-width:1100px){.estConsumo.estPanel .estResumen{grid-template-columns:340px 1fr}.estConsumo .estResumen>.estFiltros{grid-column:auto}.estConsumo.estPanel .estResumen .estPresupuesto{grid-column:1/-1}.estConsumo .estFilas{gap:14px}.estConsumo.estPanel .estFila>summary{grid-template-columns:minmax(65px,1fr) minmax(15px,.4fr) auto;gap:5px}}
@media(max-width:760px){.estConsumo .estFilas{grid-template-columns:1fr}.estConsumo .estColumna:empty{display:none}.estConsumo.estPanel .estResumen{grid-template-columns:1fr}.estConsumo .estFechas{grid-template-columns:minmax(110px,135px) minmax(0,199px)}.estConsumo .estAcciones{grid-template-columns:65px minmax(80px,124px) minmax(85px,129px)}.estConsumo.estPanel .estCabLista{gap:8px}.estConsumo .estCabLista .estListaFiltros{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%}.estConsumo .estCabLista .estListaFiltros input{grid-column:1/-1;width:100%}.estConsumo .estCabLista .estListaFiltros select{width:100%}.estConsumo .estCabLista .estListaFiltros button{width:127px}.estConsumo.estPanel .estFila>summary{grid-template-columns:minmax(90px,.7fr) minmax(25px,1fr) auto}.estConsumo.estPanel .estCab{flex-wrap:wrap}.estConsumo.estPanel .estResumen .estKpi{min-height:72px}}

/* Revisión de legibilidad: controles completos, encabezados centrados y móvil uniforme. */
.estConsumo.estPanel .estCabLista{justify-content:center}
.estConsumo.estPanel .estCabLista h2,.estConsumo.estPanel [data-notas-toggle]{text-align:center}
.estConsumo .estCabLista .estListaFiltros{justify-content:center}
.estConsumo.estPanel .estListaFiltros [data-dir]{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;letter-spacing:0;line-height:1;width:145px;flex-shrink:0;padding:5px 8px}
.estConsumo.estPanel .estFila>summary{box-sizing:border-box;min-height:36px}
.estConsumo.estPanel .estFila>summary>strong{white-space:nowrap}
.estConsumo .estNotasMovil{display:none}
#statsTabs{flex-wrap:nowrap}
#statsTabs button{white-space:nowrap}
@media(max-width:760px){
 .estConsumo .estFechas{grid-template-columns:minmax(0,.58fr) minmax(0,1.42fr);width:100%} /* lote 443 (Alexis): MES angosto, TODO EL MES ancho */
 .estConsumo .estAcciones{grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,1fr);width:100%}
 .estConsumo .estFiltros,.estConsumo .estResumen>.estFiltros{width:100%;max-width:none}
 .estConsumo.estPanel .estCabLista h2,.estConsumo.estPanel [data-notas-toggle]{width:100%}
 .estConsumo.estPanel .estFila>summary{min-height:36px;grid-template-columns:minmax(85px,.8fr) minmax(15px,1fr) 86px;gap:6px}
 .estConsumo .estNotasColumnas{display:none}
 .estConsumo .estNotasMovil{display:block}
 .estConsumo.estPanel .estListaFiltros [data-dir]{width:145px}
}
@media(max-width:700px){
 #statsTabs{display:flex;flex-wrap:nowrap;width:100%;gap:1px;padding:3px;box-sizing:border-box}
 #statsTabs button{flex:1 1 auto;min-width:0;padding:8px 3px;font-size:clamp(8px,2.45vw,11px);white-space:nowrap;letter-spacing:0}
}

/* Paleta compartida con cap2Prod, cap2Card y av2Kpi de Capacitación. */
body.enEstadisticas .estPanel{--est-acento:var(--cyan);color:var(--text)}
body.enEstadisticas .estPanel .estCard{--est-acento:var(--cyan);--est-encabezado:var(--magenta);background:linear-gradient(165deg,color-mix(in srgb,var(--est-acento) 5%,var(--card)),var(--card) 62%);border:1px solid color-mix(in srgb,var(--est-acento) 45%,var(--line-2));border-radius:14px;box-shadow:0 0 18px color-mix(in srgb,var(--est-acento) 9%,transparent)}
body.enEstadisticas .estPanel .estCard[data-seccion=categorias],body.enEstadisticas .estPanel .estCard.estNotas{--est-acento:var(--magenta);--est-encabezado:var(--cyan)}
body.enEstadisticas .estPanel .estKpi{background:linear-gradient(165deg,color-mix(in srgb,var(--cyan) 9%,var(--card)),var(--card) 62%);border-color:color-mix(in srgb,var(--cyan) 70%,transparent);box-shadow:0 0 18px rgba(0,240,255,.12)}
body.enEstadisticas .estPanel .estPresupuesto{background:linear-gradient(165deg,color-mix(in srgb,var(--magenta) 9%,var(--card)),var(--card) 62%);border-color:color-mix(in srgb,var(--magenta) 70%,transparent);box-shadow:0 0 18px rgba(255,0,200,.12)}
body.enEstadisticas .estPanel h2,body.enEstadisticas .estPanel [data-notas-toggle]{color:var(--text)}
body.enEstadisticas .estKpiTitulo,body.enEstadisticas .estPanel .estKpi h3{color:var(--cyan)}
body.enEstadisticas .estPanel .estPresupuesto h3{color:#ff70df}
body.enEstadisticas .estPanel input,body.enEstadisticas .estPanel select,body.enEstadisticas .estPanel .estListaFiltros button,body.enEstadisticas .estPanel [data-hoy]{background-color:var(--card);border-color:var(--line-2);color:var(--text)}
body.enEstadisticas .estPanel .estSel.activo,body.enEstadisticas .estPanel [data-hoy][aria-pressed=true]{background-color:rgba(0,240,255,.09);border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 10px rgba(0,240,255,.12)}
body.enEstadisticas .estPanel .estBar{background:rgba(255,255,255,.1)}
body.enEstadisticas .estPanel .estBar i{background:var(--est-acento);box-shadow:0 0 12px color-mix(in srgb,var(--est-acento) 50%,transparent)}
body.enEstadisticas .estPanel .estPresupuesto .estBar i{background:var(--magenta);box-shadow:0 0 12px rgba(255,0,200,.4)}
body.enEstadisticas .estPanel .estPresupuesto .estLimite i{background:var(--alert)}
body.enEstadisticas .estPanel .estBarTrack i{background:linear-gradient(0deg,var(--cyan),var(--magenta));box-shadow:0 0 12px rgba(0,240,255,.15)}
body.enEstadisticas .estPanel .estFila,body.enEstadisticas .estPanel .estTabla th,body.enEstadisticas .estPanel .estTabla td,body.enEstadisticas .estPanel .estComparacion{border-color:var(--line-2)}
body.enEstadisticas .estPanel .estFila>summary>strong{color:color-mix(in srgb,var(--est-acento) 70%,white)}
body.enEstadisticas .estPanel .estFila>summary:hover{background:color-mix(in srgb,var(--est-acento) 6%,transparent)}
body.enEstadisticas .estPanel .estTabla th{color:var(--est-encabezado,var(--magenta));background:rgba(206,199,232,.045);text-shadow:0 0 7px color-mix(in srgb,var(--est-encabezado,var(--magenta)) 40%,transparent)}
body.enEstadisticas #statsTabs{background:transparent;border-color:var(--cyan)}
body.enEstadisticas #statsTabs button[aria-pressed=true]{background:rgba(0,240,255,.13);color:var(--cyan)}

/* Métrica de usos y detalle abierto identificables sin perder la paleta C.T. */
body.enEstadisticas .estPanel .estFila[open]{border:1px solid color-mix(in srgb,var(--est-acento) 60%,transparent);border-radius:10px;background:color-mix(in srgb,var(--est-acento) 7%,var(--card));box-shadow:0 0 12px color-mix(in srgb,var(--est-acento) 12%,transparent);margin:3px 0}
body.enEstadisticas .estPanel .estFila[open]>summary{padding-left:8px;padding-right:8px;background:color-mix(in srgb,var(--est-acento) 9%,transparent);border-radius:9px 9px 0 0}
body.enEstadisticas .estPanel .estFila[open]>summary .estNom{color:color-mix(in srgb,var(--est-acento) 65%,white)}
body.enEstadisticas .estPanel .estFila[open]>.estSub{padding:2px 8px 8px}
body.enEstadisticas .estPanel .estFila[open]>.estSub>.estTablaWrap{margin:6px 0 0}
.estConsumo.estPanel .estCab{justify-content:center}
.estConsumo.estPanel .estCab h2{text-align:center;flex:0 1 auto}
.estConsumo.estPanel .estCab [data-graf]{text-align:center;text-align-last:center}
/* En móvil, no separar el inicio de las columnas apiladas como si fueran filas más altas. */
@media(max-width:760px){
 .estConsumo .estFilas{row-gap:0}
 .estConsumo.estPanel .estCab{justify-content:space-between;flex-wrap:nowrap;gap:8px}
 .estConsumo.estPanel .estCab h2{flex:0 0 auto;font-size:13px;margin:0}
 .estConsumo.estPanel .estCab [data-graf]{width:155px;min-width:0;max-width:55%;font-size:10px}
}
body.enEstadisticas .estPanel select{color-scheme:dark}
body.enEstadisticas .estPanel select option{background:#0e0e16;color:#f5f7ff}

/* Un único selector nombra la gráfica; la métrica elegida sigue accesible al abrirlo. */
.estConsumo .estGrafSelector{position:relative;display:inline-grid;width:190px;margin:0}
.estConsumo .estGrafSelector>span{position:absolute;inset:0 25px 0 8px;display:flex;align-items:center;justify-content:center;pointer-events:none;font-size:12px;font-weight:800;color:var(--text)}
body.enEstadisticas .estPanel .estGrafSelector [data-graf]{width:100%;max-width:none;color:transparent}
body.enEstadisticas .estPanel .estGrafSelector [data-graf] option{color:var(--text)}
.estConsumo.estPanel .estCab:has(.estGrafSelector){justify-content:center}

/* Volver y pestañas comparten siempre la misma fila. */
@media(max-width:700px){
 body.dentro.enEstadisticas .top{grid-template-columns:auto minmax(0,1fr);gap:5px}
 body.enEstadisticas #topDer{grid-column:2;width:100%}
 body.enEstadisticas .topVolverBtn{padding:8px 5px;font-size:9px;letter-spacing:0}
 body.enEstadisticas #statsTabs{gap:0;padding:2px;min-width:0}
 body.enEstadisticas #statsTabs button{font-size:clamp(7px,2vw,10px);padding:8px 2px;letter-spacing:0;min-height:30px}
}
.estPresupuesto{position:relative}
.estConsumo .estConfirmarReinicio{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:inherit;padding:7px;background:var(--card);border:1px solid var(--magenta);box-shadow:0 0 12px #ff00c822;min-height:100%;height:max-content;box-sizing:border-box}
.estConsumo .estConfirmarReinicio strong{font-size:12px!important;color:var(--text)}
.estConsumo .estConfirmarReinicio span,.estConsumo .estConfirmarReinicio small{font-size:10px}
.estConsumo .estConfirmarReinicio>div{display:flex;gap:8px}
.estConsumo .estConfirmarReinicio button{white-space:nowrap;min-width:110px;display:inline-flex;align-items:center;justify-content:center;line-height:1.2;font-size:11px!important;height:30px!important;min-height:30px!important;padding:4px 10px!important}
.estConsumo .estConfirmarReinicio [data-reinicio-si]{background:#db1534;border-color:#ff334e;color:white}
.estConsumo .estConfirmarReinicio [role=alert]{font-size:12px;color:#ff8da1;margin:2px}


.estConsumo .estConfirmarReinicio{height:100%}
.estConsumo .estConfirmarReinicio strong,.estConsumo .estConfirmarReinicio span,.estConsumo .estConfirmarReinicio small{line-height:1.25;margin:0}

/* Mensuales: columnas independientes; cada tabla expande únicamente su columna. */
#statsGastos{gap:8px}
#statsGastos .gmColumnas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}
#statsGastos .gmColumna{display:flex;flex-direction:column;gap:8px;min-width:0}
#statsGastos .estCard{margin:0;padding:7px 10px}
#statsGastos .gmColumna:nth-child(2) .gmGrupo{--est-acento:var(--magenta);--est-encabezado:var(--cyan)}
#statsGastos .gmGrupo{border-color:color-mix(in srgb,var(--est-acento,var(--cyan)) 50%,#252531);background:linear-gradient(125deg,#091014e8,#150b18eb)}
#statsGastos .gmGrupo[open]{box-shadow:0 0 12px color-mix(in srgb,var(--est-acento,var(--cyan)) 12%,transparent)}
#statsGastos summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:30px}
#statsGastos summary::-webkit-details-marker{display:none}
#statsGastos summary h2{grid-column:1;margin:0;min-width:0;font-size:13px;text-align:center;overflow-wrap:anywhere}
#statsGastos summary h2:before{display:none}
#statsGastos button{min-height:32px;padding:5px 9px;font-size:12px;white-space:nowrap;width:auto}
#statsGastos .gmTotalTabla{grid-column:2;white-space:nowrap;font-size:14px;color:var(--text);font-variant-numeric:tabular-nums;text-align:right}
#statsGastos .gmTituloCasas{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 8px}
#statsGastos summary .gmTituloCasas:before{display:none}
#statsGastos .gmTituloLomas,#statsGastos tr.gmLomas .gmConcepto,#statsGastos tr.gmLomas input[name$="_nombre"]{color:var(--magenta);text-shadow:0 0 7px color-mix(in srgb,var(--magenta) 35%,transparent)}
#statsGastos .gmTituloTepojaco,#statsGastos tr.gmTepojaco .gmConcepto,#statsGastos tr.gmTepojaco input[name$="_nombre"]{color:var(--cyan);text-shadow:0 0 7px color-mix(in srgb,var(--cyan) 35%,transparent)}
#statsGastos .gmTituloCafeteria,#statsGastos tr.gmCafeteria .gmConcepto,#statsGastos tr.gmCafeteria input[name$="_nombre"]{color:#2bff88;text-shadow:0 0 7px #2bff8859}
#statsGastos .gmCabConcepto{position:relative;display:flex;align-items:center;justify-content:center;min-height:26px;font-size:12px}
#statsGastos button[data-editar]{position:absolute;left:-4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:20px;height:24px;min-height:24px;padding:1px;background:#ffffff08;color:#fff;border:1px solid var(--line-2)}
#statsGastos button:disabled{opacity:.45;cursor:default}
#statsGastos .gmTablaWrap{max-width:100%;overflow-x:auto;margin-top:4px}
#statsGastos .gmTabla{border-collapse:collapse;width:100%;table-layout:fixed;font-size:13px;line-height:1.4}
#statsGastos .gmTabla th,#statsGastos .gmTabla td{padding:3px 3px;border-bottom:1px solid #ffffff20;text-align:center;overflow-wrap:anywhere;vertical-align:middle;height:31px}
#statsGastos .gmTabla th{font-size:12px;color:#edff36;text-shadow:0 0 8px #edff3666}
#statsGastos .gmTabla thead th:first-child{width:22%}
#statsGastos .gmTabla thead th:nth-child(2){width:14%;white-space:nowrap}
#statsGastos .gmTabla thead th:nth-child(3){width:11%;white-space:nowrap}
#statsGastos .gmTabla thead th:nth-child(4){width:13%}
#statsGastos .gmTabla td:first-child{font-weight:750}
#statsGastos .gmTabla td:nth-child(4){font-variant-numeric:tabular-nums;white-space:nowrap}
#statsGastos .gmFechaReferencia{display:block;font-size:10px;color:var(--text-dim,#b7bbca);margin-top:3px}
#statsGastos .gmTabla input{min-width:0;width:100%;height:28px;min-height:28px;padding:2px 3px;font-size:12px;background:#080a10;color:white;color-scheme:dark;border-radius:4px}
#statsGastos .gmTabla input[type=date]{font-size:11px}
#statsGastos .gmFechaEditar{position:relative;min-width:0}
#statsGastos .gmTabla [data-fecha-texto]{padding-right:27px;text-align:center;text-transform:uppercase}
#statsGastos .gmCalendario{position:absolute;right:1px;top:1px;bottom:1px;width:25px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer}
#statsGastos .gmCalendario:focus-within{outline:2px solid var(--cyan);border-radius:4px}
#statsGastos .gmTabla .gmCalendario input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:pointer}
#statsGastos .gmCalendario input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
#statsGastos .gmSemanal{position:relative;display:inline-block}
#statsGastos button[data-semanal]{border:0;border-radius:3px;padding:0;background:none;color:inherit;font:inherit;min-height:24px;cursor:help}
#statsGastos .gmSemanal [role=tooltip]{position:absolute;z-index:3;left:50%;bottom:100%;transform:translateX(-50%);padding:5px 7px;border:1px solid var(--cyan);border-radius:6px;background:#080a10;color:#fff;white-space:nowrap;visibility:hidden;opacity:0;pointer-events:none;font-size:11px;box-shadow:0 0 8px #00e5ef33}
#statsGastos .gmSemanal:hover [role=tooltip],#statsGastos .gmSemanal:focus-within [role=tooltip]{visibility:visible;opacity:1}
#statsGastos .gmVencido>summary h2,#statsGastos .gmVencido>summary h2 span,#statsGastos tr.gmVencido td,#statsGastos tr.gmVencido .gmConcepto,#statsGastos tr.gmVencido td:before{color:#ff354b;text-shadow:0 0 9px #ff183999}
#statsGastos tr.gmVencido{background:#ff23300d;box-shadow:inset 0 0 9px #ff233026}
#statsGastos .gmPagar{display:inline-flex;justify-content:center;align-items:center;gap:3px;flex-wrap:wrap}
#statsGastos button.gmConcepto{border:0;background:none;padding:0;min-height:24px;font:inherit;font-weight:750;color:inherit;white-space:normal;cursor:pointer}
#statsGastos .gmConfirmarPago{display:inline-flex;gap:2px}
#statsGastos .gmConfirmarPago button{min-height:24px;width:25px;padding:2px;color:#fff;background:#086341;border:1px solid #20e690}
#statsGastos .gmConfirmarPago button[data-cancelar-pago]{background:#6c172b;border-color:#fa536e}
#statsGastos .gmTituloInput{width:100%;min-height:28px;height:28px;margin:0;padding:2px 4px;background:#080a10;color:#fff;text-align:center;font:inherit}
#statsGastos .gmEditarNombre{display:flex;align-items:center;gap:2px}
#statsGastos .gmEditarNombre input{flex:1;min-width:0}
#statsGastos .gmEditarNombre button[data-borrar]{min-height:24px;height:24px;width:20px;padding:0;color:#ff5572;border-color:#ff5572}
#statsGastos .gmMover{cursor:grab;touch-action:none;color:#edff36;font-size:18px}
#statsGastos .gmMoverSeleccionado{outline:1px solid #edff36;outline-offset:-1px;background:#edff3614}
#statsGastos .gmParaBorrar{opacity:.4;text-decoration:line-through}
#statsGastos .gmTabla select{width:100%;height:28px;min-height:28px;padding:2px;font:inherit;background:#080a10;color:#fff;border:1px solid #6d7080}
#statsGastos .gmMeses .gmTabla thead th:first-child{width:46%}
#statsGastos .gmMeses .gmTabla thead th:nth-child(2){width:27%}
#statsGastos .gmMeses .gmTabla thead th:nth-child(3){width:27%}
#statsGastos .gmProximosLista{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
#statsGastos .gmProximosLista>button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;gap:2px 5px;padding:4px 6px;border:1px solid #ffffff25;border-radius:7px;text-align:left;font-size:11px;background:#080d1499;white-space:normal}
#statsGastos .gmProximosLista>button time{grid-column:1/-1;text-align:center;font-size:11px}
#statsGastos .gmProximosLista>button>span{white-space:nowrap}
#statsGastos .gmProximosLista strong{font-size:11px;color:var(--cyan);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#statsGastos .gmProximosLista b{font-size:12px}
#statsGastos .gmProximosLista .gmVencido{color:#ff354b;border-color:#ff354b88;box-shadow:0 0 8px #ff354b33}
#statsGastos .gmProximosLista .gmVencido strong{color:#ff354b}
#statsGastos .gmCorto{display:none}
#statsGastos .gmDobleLista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#statsGastos .gmDestino{outline:1px solid var(--cyan);outline-offset:-1px;box-shadow:0 0 14px #00e5ef66!important}
#statsGastos tr.gmDestino{background:#00e5ef22}
#statsGastos [data-celda]{cursor:text}
#statsGastos [data-celda]:focus-visible{outline:1px solid var(--cyan);outline-offset:-1px}
#statsGastos .gmTabla .gmInline{box-shadow:0 0 6px #00e5ef55}
#statsGastos .gmEditando td{padding-top:1px;padding-bottom:1px}
#statsGastos .gmEditando input,#statsGastos .gmEditando select{min-height:24px;height:24px}
#statsGastos .gmTotal{position:relative}
#statsGastos .gmTotal [data-editar-prestacion]{position:absolute;top:2px;right:2px;min-height:22px;width:24px;padding:1px}
#statsGastos .gmDetallePrestacion{display:none;position:absolute;z-index:5;left:50%;bottom:100%;transform:translateX(-50%);margin:0;width:max-content;max-width:min(400px,90vw);padding:10px;background:#090c13;border:1px solid var(--cyan);border-radius:7px;white-space:pre-wrap;text-align:left;color:#fff;font-size:11px;line-height:1.4;font-family:inherit;box-shadow:0 0 12px #00e5ef55}
#statsGastos .gmTotal:hover .gmDetallePrestacion,#statsGastos .gmTotal:focus-within .gmDetallePrestacion{display:block}
#statsGastos .gmPrestacionEditor:not([hidden]){margin-top:8px;padding:8px;border:1px solid var(--cyan);border-radius:8px}
#statsGastos .gmPrestacionEditor label{display:block;text-align:center;font-size:11px}
#statsGastos .gmPrestacionEditor input,#statsGastos .gmPrestacionEditor textarea{display:block;width:100%;background:#080a10;color:#fff}
#statsGastos .gmPrestacionEditor textarea{min-height:125px}
#statsGastos .gmAcciones{display:flex;justify-content:center;gap:6px;margin-top:5px}
#statsGastos .gmAcciones button[type=submit]{color:var(--cyan);border-color:var(--cyan);background:#07363e}
#statsGastos .gmError{color:#ff657b;font-size:12px;text-align:center;margin:8px 0 0}
#statsGastos .gmAyuda{color:#b7bbca;font-size:10px;text-align:center;margin:8px 0 0}
#statsGastos .gmResumen h2{font-size:14px;margin:0 0 10px;text-align:center}
#statsGastos .gmTotales{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
#statsGastos .gmTotal{grid-column:span 2;text-align:center;background:#12111bc9;border:1px solid #ffffff26;border-radius:10px;padding:10px 6px}
#statsGastos .gmTotalFinal{grid-column:span 3;border-color:#00e5ef50;background:linear-gradient(120deg,#00364166,#53114444)}
#statsGastos .gmTotal h3{font-size:11px;margin:0 0 3px;color:var(--cyan)}
#statsGastos .gmTotal strong{font-size:18px;font-variant-numeric:tabular-nums}
@media(max-width:1100px){
 #statsGastos .gmColumnas{grid-template-columns:1fr}
 #statsGastos .gmColumna{display:contents}
 #statsGastos .gmGrupo{order:var(--gm-orden)}
}
@media(max-width:900px){#statsGastos .gmProximosLista{grid-template-columns:1fr}#statsGastos .gmProximosLista>button{grid-template-columns:minmax(0,1fr) auto 90px}#statsGastos .gmProximosLista>button time{grid-column:auto;text-align:right}}
@media(max-width:600px){
 #statsGastos .estCard{padding:5px 4px}
 #statsGastos .gmLargo{display:none}
 #statsGastos .gmCorto{display:inline}
 #statsGastos .gmTabla{font-size:10px;line-height:1.2}
 #statsGastos .gmTabla th,#statsGastos .gmCabConcepto{font-size:9px;white-space:nowrap}
 #statsGastos .gmTabla th,#statsGastos .gmTabla td{padding:3px 1px;height:29px}
 #statsGastos .gmTabla thead th:first-child{width:28%}
 #statsGastos .gmTabla thead th:nth-child(2){width:11%}
 #statsGastos .gmTabla thead th:nth-child(3){width:12%}
 #statsGastos .gmTabla thead th:nth-child(4){width:15%}
 #statsGastos .gmTabla th:nth-child(5),#statsGastos .gmTabla th:nth-child(6){width:17%}
 #statsGastos .gmTabla td[data-celda$=Pago]{white-space:nowrap;font-size:9px}
 #statsGastos .gmCabConcepto{justify-content:center}
 #statsGastos button[data-editar]{position:static;transform:none;width:14px;height:20px;min-height:20px;flex:none;margin-right:2px;border:0;background:none}
 #statsGastos button[data-editar] svg{width:12px}
 #statsGastos .gmTabla input,#statsGastos .gmTabla select{font-size:10px!important;min-height:27px;height:27px;padding:1px}
 #statsGastos .gmTabla .gmInline:focus{position:relative;z-index:3}
 html.esIos #statsGastos .gmTabla input:focus,html.esIos #statsGastos .gmTabla .gmInline:focus{font-size:16px!important;transform:scale(.72);transform-origin:left center;width:139%} /* lote 443 (Alexis): al editar la letra ya no crece; en iPhone va a 16 px (para que no haga zoom) pero se ve igual de chica */
 #statsGastos .gmTabla [data-fecha-texto]{padding-right:10px}
 #statsGastos .gmCalendario{width:10px;right:0}
 #statsGastos .gmCalendario svg{width:10px}
 #statsGastos .gmMover{font-size:12px}
 #statsGastos .gmEditarNombre button[data-borrar]{width:12px;min-height:24px;border:0}
 #statsGastos .gmDobleLista{gap:4px}
 #statsGastos .gmDobleLista .gmCabConcepto{font-size:8px}
 #statsGastos .gmDobleLista .gmTabla th{font-size:8px}
 #statsGastos .gmDobleLista .gmTabla thead th:first-child{width:50%}
 #statsGastos .gmDobleLista .gmTabla thead th:nth-child(2){width:29%}
 #statsGastos .gmDobleLista .gmTabla thead th:nth-child(3){width:21%}
 #statsGastos summary h2{font-size:11px}
 #statsGastos .gmTotalTabla{font-size:12px}
 #statsGastos .gmTotal{grid-column:span 6;padding:8px}
 #statsGastos .gmTotalFinal{grid-column:span 3}
 #statsGastos .gmTotal strong{font-size:16px}
 #statsGastos .gmProximosLista{gap:3px}
 #statsGastos .gmProximosLista>button{min-height:28px;font-size:10px;padding:3px 4px;grid-template-columns:minmax(0,1fr) auto 74px}
 #statsGastos .gmProximosLista strong,#statsGastos .gmProximosLista b,#statsGastos .gmProximosLista time{font-size:10px}
}

/* Confirmación dentro del tamaño original del presupuesto. */
.estConsumo .estConfirmarReinicio{min-height:0;height:100%;overflow:auto;gap:1px;padding:3px 5px}
.estConsumo .estConfirmarReinicio button{height:26px!important;min-height:26px!important;margin:0;width:auto}

.estConsumo .estConfirmarReinicio>div{gap:4px;max-width:100%}
.estConsumo .estConfirmarReinicio button{min-width:0}

/* Las dos acciones de fecha comparten el ancho disponible. */
.estConsumo .estAcciones{grid-template-columns:repeat(2,minmax(0,1fr))}
#statsTabs button[data-tab=accesos],#statsTabs button[data-tab=gastos]{display:inline-flex;align-items:center;justify-content:center;gap:4px}
#statsTabs .estTabIcon{width:14px;height:14px;flex:none;color:#fff;stroke:#fff}
@media(max-width:700px){#statsTabs .estTabIcon{width:11px;height:11px}#statsTabs button[data-tab=accesos],#statsTabs button[data-tab=gastos]{gap:2px}}

/* Mensuales: estados del periodo y edición centrada sin ampliar la celda. */
#statsGastos tr.gmPagado{background:#22db7812}
#statsGastos tr.gmPendiente{background:#ffd95c12}
#statsGastos tr.gmVencido{background:#ff233020}
#statsGastos button[data-editar],#statsGastos button[data-editar-prestacion]{border:0;background:transparent;box-shadow:none;color:#a5a9b6}
#statsGastos button[data-editar]:hover,#statsGastos button[data-editar-prestacion]:hover{color:#fff}
#statsGastos .gmTabla input,#statsGastos .gmTabla select{box-sizing:border-box;text-align:center;vertical-align:middle;font:inherit;line-height:normal;margin:0}
#statsGastos .gmTabla .gmInline,#statsGastos .gmTabla .gmInline:focus{position:static;width:100%;min-width:0;max-width:100%;height:24px;min-height:24px;padding:1px;margin:0;font:inherit}
#statsGastos .gmCinco .gmTabla th:first-child{width:28%}
#statsGastos .gmCinco .gmTabla th:nth-child(2){width:16%}
#statsGastos .gmCinco .gmTabla th:nth-child(3){width:18%}
#statsGastos .gmCinco .gmTabla th:nth-child(4),#statsGastos .gmCinco .gmTabla th:nth-child(5){width:19%}
#statsGastos .gmProximosLista{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}
#statsGastos .gmProximosLista>button{grid-template-columns:minmax(0,1fr) auto auto;min-height:26px;padding:3px 4px;gap:4px}
#statsGastos .gmProximosLista>button time{grid-column:auto;text-align:right}
#statsGastos .gmProximosLista>button strong,#statsGastos .gmProximosLista>button b,#statsGastos .gmProximosLista>button time{font-size:10px;white-space:nowrap}
/* Las leyendas de prestaciones salen del resumen al pasar el cursor. */
#statsGastos .gmTotales{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;overflow:visible}
#statsGastos .gmTotal,#statsGastos .gmTotalFinal{grid-column:auto;padding:8px 4px;min-width:0}
#statsGastos .gmTotal strong{font-size:15px;white-space:nowrap}
@media(max-width:600px){
 #statsGastos .gmTabla input,#statsGastos .gmTabla input:focus,#statsGastos .gmTabla select{font-size:10px!important;text-align:center}
 #statsGastos .gmProximosLista>button{grid-template-columns:minmax(0,1fr) auto 74px}
 #statsGastos .gmTotales{grid-template-columns:repeat(5,minmax(112px,1fr));scroll-snap-type:x proximity}
 #statsGastos .gmTotal{scroll-snap-align:start}
 #statsGastos .gmTotal strong{font-size:13px}
}
@media(max-width:1100px){#statsGastos .gmProximosLista{grid-template-columns:1fr}}

/* Cabeceras compactas: importe junto al título y lápiz independiente. */
#statsGastos tr.gmPagado{background:#22ef7830;box-shadow:inset 0 0 8px #22ef7815}
#statsGastos summary{grid-template-columns:minmax(0,1fr) 26px;gap:4px}
#statsGastos .gmTituloTotal{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;flex-wrap:wrap}
#statsGastos .gmTituloTotal h2{flex:0 1 auto;width:auto;max-width:100%}
#statsGastos .gmTituloTotal:has(input){flex-wrap:nowrap}
#statsGastos .gmTituloTotal:has(input) h2{flex:1;min-width:0}
#statsGastos .gmTituloTotal h2{color:inherit}
#statsGastos .gmTituloTotal:has(.gmTituloCasas){color:var(--cyan)}
#statsGastos .gmTotalTabla{color:inherit;text-shadow:inherit;font-size:13px;text-align:center}
#statsGastos .gmTituloTotal{color:var(--text)}
#statsGastos .gmVencido>summary .gmTituloTotal{color:#ff354b;text-shadow:0 0 9px #ff183999}
#statsGastos summary button[data-editar]{position:static;transform:none;justify-self:end;width:26px;height:26px;min-height:26px;padding:4px;margin:0;background:transparent;border:0;box-shadow:none}
#statsGastos .gmProximosLista{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}
#statsGastos .gmProximosLista>button{display:flex;align-items:center;justify-content:center;gap:5px;flex:0 1 auto;max-width:100%;min-height:29px;padding:4px 7px;font-size:12px}
#statsGastos .gmProximosLista>button strong,#statsGastos .gmProximosLista>button b,#statsGastos .gmProximosLista>button time{font-size:12px}
#statsGastos .gmProximosLista>button strong{flex:0 1 auto}
#statsGastos .gmProximosLista>button span,#statsGastos .gmProximosLista>button time{flex:none}
body.enEstadisticas #statsGastos{margin-top:0;padding-top:0}
body.enEstadisticas:has(#statsGastos:not(.hidden)) .top{margin-bottom:6px}
#vistaStats:has(#statsGastos:not(.hidden))>#consumo{display:none;margin:0!important}
#vistaStats:has(#statsGastos:not(.hidden))>.pantallaTop{display:none;margin:0}
@media(max-width:600px){
 #statsGastos .gmProximosLista>button{width:100%;justify-content:center;font-size:11px;gap:5px}
 #statsGastos .gmProximosLista>button strong,#statsGastos .gmProximosLista>button b,#statsGastos .gmProximosLista>button time{font-size:11px}
 #statsGastos .gmTituloTotal{gap:4px}
 #statsGastos .gmTotalTabla{font-size:11px}
}

/* Aviso puntual: solo vencidos o a tres días; destello de destino por dos segundos. */
#statsGastos tr.gmPagado,#statsGastos tr.gmPendiente{background:transparent;box-shadow:none}
#statsGastos details.gmDestino{outline:2px solid var(--cyan);box-shadow:0 0 28px #00e5efaa,inset 0 0 22px #00e5ef22!important}
#statsGastos tr.gmDestino{background:#00e5ef55!important;outline:2px solid #79ffff;box-shadow:0 0 24px #00e5efaa,inset 0 0 20px #00e5ef55!important}
@media(max-width:600px){
 #statsGastos .gmProximos{display:none}
 #statsGastos .gmTotales{grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;gap:5px}
 #statsGastos .gmTotal{grid-column:span 2;min-width:0;padding:6px 3px}
 #statsGastos .gmTotalFinal{grid-column:span 3}
 #statsGastos .gmTotal h3{font-size:10px;line-height:1.25;min-height:25px;display:flex;justify-content:center;align-items:center}
 #statsGastos .gmTotal strong{font-size:12px;white-space:nowrap}
}

#statsGastos .gmAvisos{display:none;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;margin:8px 0 0}
#statsGastos .gmAvisos button{min-height:27px;padding:4px 8px;font-size:11px;line-height:1.2}
#statsGastos .gmAvisos button[aria-pressed=true]{background:#004535;color:#55ffbe;border-color:#24ffac;box-shadow:0 0 6px #24ffac55}
#statsGastos .gmAvisos [hidden]{display:none!important}
#statsGastos .gmAvisos button.gmAvisoError{border-color:#ff354b;box-shadow:0 0 6px #ff354b44}
@media(max-width:600px){#statsGastos .gmAvisos{display:flex}}


/* Lote 443 (Alexis): NOTAS DEL PERIODO siempre abierta y, en celular, encabezados en un renglón (FALT / NOTA, T. PROMEDIO) */
.estThC{display:none}
.estConsumo.estPanel .estNotas .estCabLista h2{text-align:center}
@media(max-width:700px){.estConsumo .estNotas .estTabla th{white-space:nowrap}.estThL{display:none}.estThC{display:inline}}
/* lote 476 (Alexis): ESTADÍSTICAS: sin la flechita > junto a los nombres; las tablas se comprimen tocando su título (en celular empiezan comprimidas) */
.estConsumo.estPanel .estNom:before,.estConsumo.estPanel .estFila[open]>summary .estNom:before{content:none !important;display:none !important}
.estPanel .estTitPleg{cursor:pointer;user-select:none}
.estPanel .estCard.estPlegada>:not(.estCabLista):not(.estCab):not(.estTitPleg){display:none !important}
.estPanel .estCard.estPlegada>.estCabLista>:not(.estTitPleg){display:none !important}
.estPanel .estCard.estPlegada .estGrafSelector select{display:none !important}
.estPanel .estCard.estPlegada{padding-bottom:12px}
/* lote LOTE (Alexis): el renglón del encabezado comprime o abre (sin flechita) */
.estPanel .estCabPleg{cursor:pointer}
/* lote 479 (Alexis): $ MENSUALES en celular sin AVISOS (ya están en los 3 puntos de la app) */
@media(max-width:600px){#statsGastos .gmAvisos{display:none!important}}
/* lote 481 (Alexis): al editar con el lápiz en celular, un renglón por pago como antes, pero parejo y chico: columnas según lo que llevan
   (APP más ancha, M. PAGO angosta, fechas con espacio para «POR DEFINIR») y el calendario dentro de su cuadro */
@media(max-width:600px){
 #statsGastos .gmCinco .gmTabla th:first-child{width:32%}
 #statsGastos .gmCinco .gmTabla th:nth-child(2){width:10%}
 #statsGastos .gmCinco .gmTabla th:nth-child(3){width:13%}
 #statsGastos .gmCinco .gmTabla th:nth-child(4),#statsGastos .gmCinco .gmTabla th:nth-child(5){width:22.5%}
 #statsGastos .gmTabla tr.gmEditando td{padding:2px 1px!important}
 #statsGastos .gmTabla tr.gmEditando input,#statsGastos .gmTabla tr.gmEditando select{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box;height:24px!important;min-height:24px!important;font-size:10px!important;padding:0 3px!important;text-align:center}
 #statsGastos .gmTabla tr.gmEditando .gmEditarNombre{gap:1px}
 #statsGastos .gmTabla tr.gmEditando .gmEditarNombre input{text-align:left}
 #statsGastos .gmTabla tr.gmEditando .gmFechaEditar{display:block;width:100%}
 #statsGastos .gmTabla tr.gmEditando .gmFechaEditar input[data-fecha-texto]{padding:0 14px 0 3px!important;text-align:left}
 #statsGastos .gmTabla tr.gmEditando .gmCalendario{width:13px!important;right:2px!important;top:1px;bottom:1px}
 #statsGastos .gmTabla tr.gmEditando .gmCalendario svg{width:11px!important;height:11px}
}
/* lote 481 (Alexis): totales de $ MENSUALES: PRESTACIONES en dos renglones en celular, 1 pt más chica y sin que el lápiz la tape */
#statsGastos .gmTotal h3 br.gmBrCel{display:none}
@media(max-width:600px){#statsGastos .gmTotal h3 br.gmBrCel{display:inline}#statsGastos .gmTotal h3{font-size:9px!important;padding:0 20px;display:block!important;text-align:center}}
/* lote 482 (Alexis): renglones de las tablas un poco más bajos y con menos espacio entre textos (celular y laptop) */
.estConsumo.estPanel .estFila>summary{min-height:30px!important;padding-top:3px!important;padding-bottom:3px!important;line-height:1.2}
.estConsumo .estNotas .estTabla th,.estConsumo .estNotas .estTabla td{padding-top:5px!important;padding-bottom:5px!important;line-height:1.25}
.estConsumo .estSub .estTabla th,.estConsumo .estSub .estTabla td{padding-top:5px!important;padding-bottom:5px!important;line-height:1.25}
.estPanel .estCard[data-pleg="tiempos"] .estTabla td,.estPanel .estCard[data-pleg="tiempos"] .estTabla th{padding-top:6px;padding-bottom:6px;line-height:1.25}
/* lote 484 (Alexis): en celular el lápiz de PRESTACIONES a la altura del texto; al editar sin puntitos (dejar presionado el renglón lo arrastra) y sin ícono de calendario (tocar la fecha abre el calendario) */
@media(max-width:600px){
 #statsGastos .gmTotal [data-editar-prestacion]{top:var(--gm-lapiz-top,8px)!important;min-height:16px!important;height:16px;width:18px;display:flex;align-items:center;justify-content:center}
 #statsGastos .gmTotal [data-editar-prestacion] svg{width:12px;height:12px}
 #statsGastos .gmTabla tr.gmEditando .gmMover{display:none!important}
 #statsGastos .gmTabla tr.gmEditando .gmFechaEditar input[data-fecha-texto]{padding:0 3px!important;text-align:center;caret-color:transparent}
 #statsGastos .gmTabla tr.gmEditando .gmCalendario{left:0!important;right:0!important;width:auto!important;top:0;bottom:0}
 #statsGastos .gmTabla tr.gmEditando .gmCalendario svg{display:none!important}
 #statsGastos .gmTabla tr.gmEditando{-webkit-touch-callout:none}
 #statsGastos .gmArrastreActivo{touch-action:none}
 #statsGastos .gmTabla tr.gmArrastrando{outline:2px solid var(--cyan);outline-offset:-2px;background:rgba(0,240,255,.12)!important;-webkit-user-select:none;user-select:none}
}
/* lote 485 (Alexis): al editar en celular sin encabezados (siguen midiendo las columnas) y CONCEPTO / $ más angostos ($ para 5 cifras) */
@media(max-width:600px){
 #statsGastos .gmTabla:has(tr.gmEditando) thead th{height:0!important;padding:0!important;font-size:0!important;line-height:0!important;border:0!important;overflow:hidden}
 #statsGastos .gmTabla:has(tr.gmEditando) thead th *{display:none!important}
 #statsGastos .gmCinco .gmTabla:has(tr.gmEditando) th:first-child{width:27%}
 #statsGastos .gmCinco .gmTabla:has(tr.gmEditando) th:nth-child(2){width:11%}
 #statsGastos .gmCinco .gmTabla:has(tr.gmEditando) th:nth-child(3){width:12%}
 #statsGastos .gmCinco .gmTabla:has(tr.gmEditando) th:nth-child(4),#statsGastos .gmCinco .gmTabla:has(tr.gmEditando) th:nth-child(5){width:25%}
 #statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) thead th:first-child{width:22%}
 #statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) thead th:nth-child(2){width:11%}
 #statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) thead th:nth-child(3){width:11%}
 #statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) thead th:nth-child(4){width:12.5%}
 #statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) th:nth-child(5),#statsGastos details:not(.gmCinco):not(.gmMeses) .gmTabla:has(tr.gmEditando) th:nth-child(6){width:21.75%}
}
