/* ===========================================================
   LyR — Calendario de eventos
   =========================================================== */
.cal-wrap{ max-width:1500px; margin-inline:auto; padding:clamp(1rem,2.5vw,2rem); display:flex; flex-direction:column; gap:1.1rem; }

.sync{ font:500 .76rem var(--font-display); color:var(--ink-faint); display:inline-flex; align-items:center; gap:.4rem; margin-right:.3rem; }
.sync::before{ content:''; width:7px; height:7px; border-radius:50%; background:var(--ink-faint); }
.sync[data-estado="servidor"]::before{ background:#5BD69A; }
.sync[data-estado="local"]::before{ background:#F6C177; }

/* Barra */
.cal-toolbar{ display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; }
.cal-view{ min-width:340px; grid-template-columns:repeat(3,1fr); }
.cal-nav{ display:flex; align-items:center; gap:.6rem; }
.cal-nav h1{ font:700 clamp(1.15rem,2.2vw,1.5rem) var(--font-display); min-width:11ch; text-align:center; text-transform:capitalize; }
.nav-arrow{
  width:38px; height:38px; border-radius:50%; display:grid; place-items:center;
  background:var(--surface); border:1px solid var(--surface-line); color:#fff; font-size:1.3rem; line-height:1;
}
.nav-arrow:hover{ border-color:var(--purple-400); }

/* Resumen */
.kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:.8rem; }
.kpi{ background:rgba(27,17,48,.6); border:1px solid var(--surface-line); border-radius:var(--radius-md); padding:.9rem 1.1rem; display:flex; flex-direction:column; gap:.25rem; }
.kpi span{ font:600 .72rem var(--font-display); letter-spacing:.1em; text-transform:uppercase; color:var(--ink-faint); }
.kpi strong{ font:700 1.35rem var(--font-display); color:#fff; font-variant-numeric:tabular-nums; }
.kpi-warn strong{ color:#F6C177; }

.import-box{ display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; padding:1rem 1.2rem; border:1px dashed rgba(156,107,240,.55); border-radius:var(--radius-md); background:rgba(109,52,217,.08); }
.import-box strong{ font-family:var(--font-display); color:#fff; }
.import-box p{ color:var(--ink-muted); font-size:.9rem; }

/* Mes */
.cal-layout{ display:grid; grid-template-columns:1fr 300px; gap:1.1rem; align-items:start; }
.cal-month{ background:rgba(27,17,48,.6); border:1px solid var(--surface-line); border-radius:var(--radius-md); overflow:hidden; }
.cal-head{ display:grid; grid-template-columns:repeat(7,1fr); border-bottom:1px solid var(--surface-line); }
.cal-head span{ padding:.6rem .7rem; font:600 .74rem var(--font-display); letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); }
.cal-grid{ display:grid; grid-template-columns:repeat(7,1fr); grid-auto-rows:minmax(112px,auto); }
.day{
  position:relative; border-right:1px solid var(--surface-line); border-bottom:1px solid var(--surface-line);
  padding:.45rem .45rem .55rem; display:flex; flex-direction:column; gap:.3rem; cursor:pointer; min-width:0;
  transition:background var(--dur-fast);
}
.day:nth-child(7n){ border-right:0; }
.day:hover{ background:rgba(255,255,255,.025); }
.day.out{ opacity:.38; }
.day .num{ font:600 .82rem var(--font-display); color:var(--ink-muted); width:26px; height:26px; display:grid; place-items:center; border-radius:50%; }
.day.today .num{ background:var(--purple-500); color:#fff; }
.day.weekend .num{ color:var(--ink); }
.day.blocked{ background:repeating-linear-gradient(135deg, rgba(214,51,108,.13) 0 8px, rgba(214,51,108,.06) 8px 16px); }
.day .add{ position:absolute; top:.45rem; right:.5rem; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; color:var(--ink-faint); opacity:0; font-size:1rem; transition:opacity var(--dur-fast); }
.day:hover .add{ opacity:1; }

.day-chips{ display:flex; flex-direction:column; gap:.3rem; min-width:0; }
.chip{
  display:block; width:100%; text-align:left; border:0; cursor:pointer;
  padding:.32rem .5rem; border-radius:7px; font:600 .74rem/1.25 var(--font-display); color:#fff;
  background:linear-gradient(135deg, rgba(109,52,217,.95), rgba(76,20,160,.95));
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; position:relative;
}
.chip small{ display:block; font:400 .68rem var(--font-body); color:rgba(255,255,255,.75); overflow:hidden; text-overflow:ellipsis; }
.chip.pend::after{ content:''; position:absolute; top:6px; right:6px; width:7px; height:7px; border-radius:50%; background:#F6C177; box-shadow:0 0 0 2px rgba(76,20,160,.95); }
.chip.past{ opacity:.6; }
.chip.block{ background:rgba(214,51,108,.85); }
.chip:hover{ filter:brightness(1.15); }

/* Próximos */
.cal-side{ background:rgba(27,17,48,.6); border:1px solid var(--surface-line); border-radius:var(--radius-md); padding:1rem; position:sticky; top:84px; }
.cal-side h3{ font:700 .8rem var(--font-display); letter-spacing:.12em; text-transform:uppercase; color:var(--purple-400); margin-bottom:.8rem; }
.upcoming{ display:flex; flex-direction:column; gap:.55rem; }
.upcoming li{ display:flex; gap:.75rem; padding:.6rem; border-radius:10px; cursor:pointer; background:var(--bg-soft); border:1px solid transparent; }
.upcoming li:hover{ border-color:rgba(156,107,240,.45); }
.up-date{ flex:none; width:46px; text-align:center; border-radius:8px; background:var(--surface); padding:.3rem 0; }
.up-date b{ display:block; font:700 1.15rem/1.1 var(--font-display); color:#fff; }
.up-date span{ font:600 .64rem var(--font-display); text-transform:uppercase; letter-spacing:.08em; color:var(--purple-400); }
.up-info{ min-width:0; }
.up-info strong{ display:block; font:600 .88rem var(--font-display); color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.up-info span{ font-size:.78rem; color:var(--ink-faint); }
.up-info em{ font-style:normal; color:#F6C177; }
.upcoming .empty{ cursor:default; background:none; color:var(--ink-faint); font-size:.86rem; }

/* Lista */
.cal-table-wrap{ overflow-x:auto; border:1px solid var(--surface-line); border-radius:var(--radius-md); background:rgba(27,17,48,.6); }
.cal-table{ width:100%; border-collapse:collapse; font-size:.86rem; min-width:900px; }
.cal-table th{ position:sticky; top:0; background:var(--purple-600); color:#fff; font:700 .74rem var(--font-display); letter-spacing:.08em; text-transform:uppercase; padding:.75rem .7rem; text-align:left; }
.cal-table td{ padding:.6rem .7rem; border-top:1px solid var(--surface-line); color:var(--ink); vertical-align:middle; }
.cal-table .num{ text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cal-table td.mes{ font:600 .86rem var(--font-display); color:var(--purple-400); background:rgba(109,52,217,.07); text-transform:capitalize; }
.cal-table tbody tr.ev{ cursor:pointer; }
.cal-table tbody tr.ev:hover td:not(.mes){ background:rgba(255,255,255,.03); }
.cal-table tr.past td:not(.mes){ color:var(--ink-faint); }
.cal-table td.valor{ font:700 .92rem var(--font-display); color:#fff; }
.cal-table td.saldo-pend{ color:#F6C177; font-weight:600; }
.cal-table tr.bl td.bl-txt{ background:rgba(214,51,108,.14); color:#FF9BB8; text-align:center; font:600 .82rem var(--font-display); letter-spacing:.04em; text-transform:uppercase; }
.cal-table tr.subtotal td{ background:rgba(255,255,255,.02); color:var(--ink-faint); font-size:.78rem; }
.cal-table tfoot td{ border-top:2px solid var(--purple-500); font:700 .9rem var(--font-display); color:#fff; padding:.8rem .7rem; }
.cal-table .vacio{ text-align:center; color:var(--ink-faint); padding:2rem; }

/* Diálogo */
.ev-dlg{ width:min(620px, calc(100vw - 2rem)); }
.ev-body{ padding:1.1rem 1.3rem 1.3rem; display:flex; flex-direction:column; gap:.85rem; }
.ev-fields{ display:flex; flex-direction:column; gap:.85rem; }
.row-3{ grid-template-columns:1fr 1fr 1fr; }
.saldo-out{ display:block; padding:.62rem .75rem; border-radius:var(--radius-sm); background:rgba(246,193,119,.08); border:1px solid rgba(246,193,119,.25); color:#F6C177; font:700 1rem var(--font-display); }
.saldo-out.cero{ color:#5BD69A; background:rgba(91,214,154,.08); border-color:rgba(91,214,154,.25); }
.ev-dlg:not(.is-bloqueo) .only-bl, .ev-dlg.is-bloqueo .only-ev{ display:none !important; }
.ev-actions{ display:flex; justify-content:space-between; align-items:center; gap:.6rem; }
.chip-btn.danger:hover{ border-color:#FF8FA3; color:#FF8FA3; }

/* Responsive */
@media (max-width:1100px){
  .cal-layout{ grid-template-columns:1fr; }
  .cal-side{ position:static; }
}
@media (max-width:760px){
  .kpis{ grid-template-columns:1fr 1fr; }
  .cal-grid{ grid-auto-rows:minmax(74px,auto); }
  .cal-head span{ padding:.5rem .2rem; text-align:center; font-size:.66rem; letter-spacing:0; }
  .day{ padding:.3rem .2rem; align-items:center; }
  .chip{ padding:0; height:7px; width:7px; border-radius:50%; font-size:0; }
  .chip small{ display:none; }
  .chip.pend::after{ display:none; }
  .day-chips{ display:flex; flex-direction:row; flex-wrap:wrap; gap:3px; justify-content:center; }
  .row-3{ grid-template-columns:1fr 1fr; }
  .cal-view{ min-width:0; width:100%; }
  .cal-nav{ width:100%; justify-content:space-between; }
}

/* Solo lectura (Lian) */
.ro-badge{ display:none; }
.solo-ro{ display:none; }
.solo-lectura .solo-admin{ display:none !important; }
.solo-lectura .solo-ro{ display:flex; }
.solo-lectura .ro-badge{ display:inline-flex; align-items:center; gap:.35rem; padding:.45rem .85rem; border-radius:999px; border:1px solid var(--surface-line); font:600 .78rem var(--font-display); color:var(--ink-faint); }
.solo-lectura .kpis{ grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); }
.solo-lectura .day .add{ display:none; }
.solo-lectura .day{ cursor:default; }
.solo-lectura .ev-body > *:not(.ev-detalle){ display:none !important; }
.ev-detalle{ margin:0; display:grid; grid-template-columns:auto 1fr; gap:.6rem 1.2rem; }
.ev-detalle dt{ font:600 .72rem var(--font-display); letter-spacing:.1em; text-transform:uppercase; color:var(--purple-400); padding-top:.15rem; }
.ev-detalle dd{ margin:0; color:#fff; white-space:pre-line; }
#kProximo{ font-size:1.05rem; line-height:1.3; }
.solo-lectura .ev-detalle.solo-ro{ display:grid; }

/* Estados */
.chip.off{ background:rgba(255,255,255,.08); color:var(--ink-faint); text-decoration:line-through; }
.chip.off small{ text-decoration:none; }
.cal-table tr.off td:not(.mes){ color:var(--ink-faint); text-decoration:line-through; }
.badge-off{ display:inline-block; margin-left:.4rem; padding:.05rem .5rem; border-radius:999px; background:rgba(214,51,108,.18); color:#FF9BB8; font:600 .68rem var(--font-display); text-decoration:none; vertical-align:middle; }
.ev-dlg select{ color-scheme:dark; }

/* Análisis */
.analisis{ display:flex; flex-direction:column; gap:1.1rem; }
.an-cards{ display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:.9rem; }
.an-card{ background:rgba(27,17,48,.6); border:1px solid var(--surface-line); border-radius:var(--radius-md); padding:1rem 1.15rem; display:flex; flex-direction:column; gap:.35rem; position:relative; overflow:hidden; }
.an-card::before{ content:''; position:absolute; inset:0 auto 0 0; width:4px; background:var(--c); }
.an-card header{ display:flex; align-items:center; gap:.5rem; }
.an-card header i{ width:10px; height:10px; border-radius:3px; background:var(--c); }
.an-card h3{ font:700 1rem var(--font-display); color:#fff; }
.an-card .tag{ margin-left:auto; font:600 .68rem var(--font-display); letter-spacing:.06em; text-transform:uppercase; color:var(--ink-faint); border:1px solid var(--surface-line); border-radius:999px; padding:.15rem .55rem; }
.an-card strong{ font:700 1.6rem var(--font-display); color:#fff; font-variant-numeric:tabular-nums; }
.an-card p{ font-size:.86rem; color:var(--ink-muted); }
.an-delta{ font-weight:600; }
.an-delta.up{ color:#8FE3B0 !important; }
.an-delta.down{ color:#FF9BB8 !important; }
.an-note{ font-size:.78rem !important; color:var(--ink-faint) !important; }
.an-note b{ color:var(--ink); }

.an-panel{ position:relative; background:rgba(27,17,48,.6); border:1px solid var(--surface-line); border-radius:var(--radius-md); padding:1.1rem 1.2rem; display:flex; flex-direction:column; gap:.6rem; min-width:0; }
.an-panel h3{ font:700 1rem var(--font-display); color:#fff; }
.an-panel p, .an-sub{ font-size:.82rem; color:var(--ink-faint); }
.an-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; flex-wrap:wrap; }
.an-metric{ min-width:220px; }
.an-legend{ display:flex; gap:1.1rem; flex-wrap:wrap; font:600 .82rem var(--font-display); color:var(--ink); }
.an-legend span{ display:inline-flex; align-items:center; gap:.4rem; }
.an-legend i{ width:12px; height:12px; border-radius:3px; }
.an-chart{ overflow-x:auto; }
.an-chart svg{ display:block; }
.an-chart .g{ stroke:rgba(255,255,255,.07); stroke-width:1; }
.an-chart .g.base{ stroke:rgba(255,255,255,.25); }
.an-chart .ax{ fill:var(--ink-faint); font:500 11px var(--font-body); }
.an-chart .hit{ cursor:default; }
.an-chart path:hover, .an-chart .hit:hover{ opacity:.85; }
.an-tip{ position:absolute; pointer-events:none; z-index:3; transform:translateY(-100%); background:var(--bg); border:1px solid rgba(156,107,240,.45); border-radius:10px; padding:.5rem .7rem; font-size:.82rem; color:var(--ink); white-space:nowrap; box-shadow:0 12px 26px -10px rgba(0,0,0,.7); }
.an-tip b{ display:flex; align-items:center; gap:.4rem; font-family:var(--font-display); color:#fff; margin-bottom:.15rem; text-transform:capitalize; }
.an-tip i{ width:9px; height:9px; border-radius:2px; }

.an-grid{ display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:1.1rem; align-items:start; }
.an-col{ display:flex; flex-direction:column; gap:1.1rem; min-width:0; }
.an-scroll{ overflow-x:auto; }
.an-table{ width:100%; border-collapse:collapse; font-size:.86rem; }
.an-table th, .an-table td{ padding:.5rem .6rem; border-top:1px solid var(--surface-line); text-align:left; }
.an-table thead th{ border-top:0; font:700 .72rem var(--font-display); letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); white-space:nowrap; }
.an-table tbody th{ font:600 .84rem var(--font-display); color:var(--ink-muted); text-transform:capitalize; }
.an-table .num{ text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; color:var(--ink); }
.an-table td small{ display:block; font-size:.7rem; color:var(--ink-faint); }
.an-table td.best{ color:#fff; font-weight:700; background:rgba(109,52,217,.16); }
.an-table tfoot th, .an-table tfoot td{ border-top:2px solid var(--purple-500); font-weight:700; color:#fff; }
.an-table .dash{ color:var(--ink-faint); opacity:.5; }
.an-table .sw{ display:inline-block; width:9px; height:9px; border-radius:2px; margin-right:.35rem; vertical-align:0; }
.an-table.compact td, .an-table.compact th{ padding:.4rem .5rem; }
.rk{ display:flex; flex-direction:column; gap:.7rem; }
.rk li{ display:flex; flex-direction:column; gap:.25rem; }
.rk-top{ display:flex; justify-content:space-between; gap:.6rem; font-size:.86rem; color:var(--ink); }
.rk-top b{ font:600 .78rem var(--font-display); color:var(--ink-muted); white-space:nowrap; }
.rk-bar{ height:6px; border-radius:999px; background:rgba(255,255,255,.06); overflow:hidden; }
.rk-bar i{ display:block; height:100%; border-radius:999px; background:var(--purple-400); }
.rk small{ font-size:.74rem; color:var(--ink-faint); }
.rk .vacio{ color:var(--ink-faint); font-size:.86rem; }
.an-foot{ font-size:.78rem; color:var(--ink-faint); }
.analisis .vacio{ color:var(--ink-faint); text-align:center; padding:2rem; }
@media (max-width:1000px){ .an-grid{ grid-template-columns:1fr; } }
@media (max-width:760px){ .cal-view{ min-width:0; } }
.an-table.compact tbody th{ text-transform:none; }
.kpi-sub{ font-size:.66rem; letter-spacing:.04em; text-transform:none; color:var(--ink-faint); font-weight:500; }

/* Encabezado solo para imprimir */
.print-head{ display:none; }
#vistaLista + .kpis{ margin-top:0; }

@page{ size:letter landscape; margin:10mm; }
@media print{
  html, body, .equipo-page{ background:#fff !important; }
  .app-bar, .cal-toolbar, .import-box, #vistaMes, #vistaAnalisis, .toast, dialog{ display:none !important; }
  .cal-wrap{ padding:0 !important; max-width:none !important; gap:10px !important; }
  .print-head{ display:flex !important; align-items:center; gap:14px; padding:10px 14px; background:#4C0F96; border-radius:8px 8px 0 0; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .print-head img{ height:26px; }
  .print-head strong{ display:block; font:700 15px var(--font-display); color:#fff; }
  .print-head span{ font-size:10px; color:#E3D7FF; }
  .cal-table-wrap{ overflow:visible !important; border:1px solid #d9d2ea !important; background:#fff !important; }
  .cal-table{ min-width:0 !important; font-size:10.5px !important; color:#1d1b22; }
  .cal-table th{ position:static !important; background:#5B21B6 !important; color:#fff !important; padding:6px 7px !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .cal-table td{ color:#1d1b22 !important; border-top:1px solid #e4def0 !important; padding:5px 7px !important; background:#fff !important; }
  .cal-table td.mes{ color:#4C14A0 !important; background:#f4effd !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .cal-table td.valor, .cal-table tfoot td{ color:#1b1530 !important; }
  .cal-table td.saldo-pend{ color:#B45309 !important; }
  .cal-table tr.past td:not(.mes){ color:#1d1b22 !important; }
  .cal-table tr.bl td.bl-txt{ background:#fde7ef !important; color:#B0204F !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .cal-table tr{ break-inside:avoid; }
  .kpis{ display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:8px !important; }
  .kpi{ background:#fff !important; border:1px solid #d9d2ea !important; padding:8px 10px !important; break-inside:avoid; }
  .kpi span{ color:#6D34D9 !important; }
  .kpi strong{ color:#1b1530 !important; font-size:15px !important; }
  .kpi-warn strong{ color:#B45309 !important; }
}

/* Botón cámara */
.chip-btn.icon-only{ width:38px; height:38px; padding:0; justify-content:center; }
.chip-btn.icon-only svg{ pointer-events:none; }

/* Hoja para el pantallazo (fuera de la pantalla) */
.captura{ position:fixed; left:-10000px; top:0; width:1200px; background:#fff; color:#1d1b22; padding:24px; font-family:var(--font-body); display:flex; flex-direction:column; gap:14px; }
.captura .cap-head{ display:flex; align-items:center; gap:16px; padding:14px 18px; background:#4C0F96; border-radius:10px; }
.captura .cap-head img{ height:30px; }
.captura .cap-head strong{ display:block; font:700 18px var(--font-display); color:#fff; }
.captura .cap-head span{ font-size:12px; color:#E3D7FF; }
.captura .cal-table{ width:100%; min-width:0; border-collapse:collapse; font-size:12.5px; border:1px solid #d9d2ea; }
.captura .cal-table th{ position:static; background:#5B21B6; color:#fff; padding:9px 10px; }
.captura .cal-table td{ color:#1d1b22; border-top:1px solid #e4def0; padding:8px 10px; background:#fff; }
.captura .cal-table td.mes{ color:#4C14A0; background:#f4effd; }
.captura .cal-table td.valor, .captura .cal-table tfoot td{ color:#1b1530; }
.captura .cal-table td.saldo-pend{ color:#B45309; }
.captura .cal-table tr.past td:not(.mes){ background:#e4e0ec; color:#3d3849; border-top-color:#d3cde0; }
.captura .cal-table tr.past td.valor{ color:#3d3849; }
.captura .cap-legend{ display:flex; gap:18px; font-size:12px; color:#5b5568; padding:0 2px; }
.captura .cap-legend span{ display:inline-flex; align-items:center; gap:6px; }
.captura .cap-legend i{ display:inline-block; width:14px; height:14px; border-radius:3px; border:1px solid #d3cde0; }
.captura .cal-table tr.off td:not(.mes){ color:#8a8399; }
.captura .cal-table tr.bl td.bl-txt{ background:#fde7ef; color:#B0204F; }
.captura .cal-table tfoot td{ border-top:2px solid #5B21B6; }
.captura .kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.captura .kpi{ background:#fff; border:1px solid #d9d2ea; padding:12px 14px; border-radius:10px; }
.captura .kpi span{ color:#6D34D9; }
.captura .kpi strong{ color:#1b1530; font-size:20px; }
.captura .kpi-warn strong{ color:#B45309; }
.captura .kpi-sub{ color:#8a8399; }
.captura .solo-ro{ display:none !important; }
.solo-lectura .captura .solo-ro{ display:flex !important; }

/* Contactos dentro del evento */
.ev-contactos{ display:flex; flex-wrap:wrap; gap:.4rem; }
.ev-contactos:empty{ display:none; }
.wa-mini{ display:inline-flex; align-items:center; gap:.35rem; padding:.3rem .65rem; border-radius:999px; background:#25D366; color:#fff; font:600 .74rem var(--font-display); }
.wa-mini:hover{ background:#1ebe5b; }
.ev-detalle .wa-mini{ margin-left:.4rem; vertical-align:middle; padding:.15rem .5rem; font-size:.7rem; }
.cal-table small.cli{ color:var(--ink-faint); font-size:.74rem; }
.captura .cal-table small.cli{ color:#6b6478; }

/* ---------- Totales al final de la tabla ---------- */
.kpis .kpi:not(.solo-ro){ display:none; }
.cal-table tfoot tr.tot td{ border-top:2px solid var(--purple-500); padding:.85rem .7rem; vertical-align:bottom; background:rgba(109,52,217,.08); }
.cal-table .tot-tit{ display:block; font:700 .95rem var(--font-display); color:#fff; }
.cal-table .tot-nota{ display:block; margin-top:.15rem; font:500 .72rem var(--font-body); color:var(--ink-faint); }
.cal-table .tot-cel small{ display:block; font:600 .66rem var(--font-display); letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); margin-bottom:.2rem; }
.cal-table .tot-cel b{ font:700 .95rem var(--font-display); color:var(--ink); font-variant-numeric:tabular-nums; }
.cal-table .tot-saldo b{ color:#F6C177; }
.cal-table tfoot tr.tot td.tot-valor{ background:var(--purple-600); }
.cal-table .tot-valor small{ color:#E3D7FF; }
.cal-table .tot-valor b{ font-size:1.3rem; font-weight:800; color:#fff; }
.captura .cal-table tfoot tr.tot td{ background:#f4effd; border-top:2px solid #5B21B6; }
.captura .cal-table .tot-tit, .captura .cal-table .tot-cel b{ color:#1b1530; }
.captura .cal-table .tot-nota, .captura .cal-table .tot-cel small{ color:#6b6478; }
.captura .cal-table .tot-saldo b{ color:#B45309; }
.captura .cal-table tfoot tr.tot td.tot-valor{ background:#5B21B6; }
.captura .cal-table .tot-valor small{ color:#E3D7FF; }
.captura .cal-table .tot-valor b{ color:#fff; font-size:20px; }
@media print{
  .cal-table tfoot tr.tot td{ background:#f4effd !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .cal-table .tot-tit, .cal-table .tot-cel b{ color:#1b1530 !important; }
  .cal-table .tot-saldo b{ color:#B45309 !important; }
  .cal-table tfoot tr.tot td.tot-valor{ background:#5B21B6 !important; }
  .cal-table .tot-valor b, .cal-table .tot-valor small{ color:#fff !important; }
}
