/* DC CONTROL 2.3.1 STABLE4.20.9.66 · GPS empresarial con pines persistentes */
:root{
  --dc-orange:#f97316;--dc-orange2:#ea580c;
  --dc-green:#22c55e;--dc-green2:#16a34a;
  --dc-blue:#0ea5e9;--dc-blue2:#0284c7;
  --dc-red:#ef4444;--dc-red2:#dc2626;
  --dc-purple:#a855f7;--dc-purple2:#7c3aed;
  --dc-cyan:#06b6d4;--dc-cyan2:#0891b2;
  --dc-yellow:#f59e0b;--dc-yellow2:#d97706;
  --dc-slate:#64748b;--dc-slate2:#475569;
  --dc-module-inicio:linear-gradient(145deg,var(--dc-orange),var(--dc-orange2));
  --dc-module-finanzas:linear-gradient(145deg,var(--dc-green),var(--dc-green2));
  --dc-module-bandeja:linear-gradient(145deg,var(--dc-blue),var(--dc-blue2));
  --dc-module-rutas:linear-gradient(145deg,var(--dc-red),var(--dc-red2));
  --dc-module-mas:linear-gradient(145deg,var(--dc-purple),var(--dc-purple2));
  --dc-module-abonos:linear-gradient(145deg,#10b981,#047857);
  --dc-module-banco:linear-gradient(145deg,#38bdf8,#2563eb);
  --dc-module-caja:linear-gradient(145deg,#f59e0b,#ea580c);
  --dc-module-movimientos:linear-gradient(145deg,#14b8a6,#0f766e);
  --dc-module-conciliacion:linear-gradient(145deg,#22c55e,#059669);
}
/* Regla canónica: los colores de módulos NO se neutralizan por modo oscuro */
.bottom-nav button[data-p="home"],.bottom-nav button[data-page="home"],.nav1048 [data-p="home"]{background:var(--dc-module-inicio)!important;color:#fff!important}
.bottom-nav button[data-p="finance"],.bottom-nav button[data-page="finance"],.nav1048 [data-p="finance"]{background:var(--dc-module-finanzas)!important;color:#fff!important}
.bottom-nav button[data-p="inbox"],.bottom-nav button[data-page="inbox"],.bottom-nav button.dc-bandeja-central4188{background:var(--dc-module-bandeja)!important;color:#fff!important}
.bottom-nav button[data-p="routes"],.bottom-nav button[data-page="routes"],.nav1048 [data-p="routes"]{background:var(--dc-module-rutas)!important;color:#fff!important}
.bottom-nav button[data-p="more"],.bottom-nav button[data-page="more"],.nav1048 [data-p="more"]{background:var(--dc-module-mas)!important;color:#fff!important}
.bottom-nav button :is(span,small,b,em),.bottom-nav button.dc-bandeja-central4188 :is(span,small,b,em){color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.25)}
/* Home / Más / Bandeja: tarjetas con identidad fija */
.enterprise-action.orange,.enterprise-action[data-home-action="home"],.more-card1048[data-more-page1048="home"]{background:var(--dc-module-inicio)!important;color:#fff!important}
.enterprise-action.green,.enterprise-action[data-home-action="finance"],.more-card1048[data-more-page1048="finance"],.more-grid1048>[data-more-page1048="finance"]{background:var(--dc-module-finanzas)!important;color:#fff!important}
.enterprise-action.blue,.enterprise-action[data-home-action="inbox"],.more-card1048[data-more-page1048="inbox"],.more-grid1048>[data-more-page1048="inbox"]{background:var(--dc-module-bandeja)!important;color:#fff!important}
.enterprise-action.red,.enterprise-action[data-home-action="routes"],.more-card1048[data-more-page1048="routes"],.more-grid1048>[data-more-page1048="routes"]{background:var(--dc-module-rutas)!important;color:#fff!important}
.enterprise-action.violet,.enterprise-action.purple,.enterprise-action[data-home-action="locations"],.more-card1048[data-more-page1048="locations"],.more-grid1048>[data-more-page1048="locations"]{background:var(--dc-module-mas)!important;color:#fff!important}
.enterprise-action :is(b,small,span,em,strong),.more-card1048 :is(b,small,span,em,strong),.more-grid1048>button :is(b,small,span,em,strong){color:#fff!important}
.enterprise-action-icon,.more-card1048 svg,.more-card1048 .icon,.more-grid1048>button svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
/* Finanzas: submódulos con colores fijos */
.finance-tabs1066 button[data-fin1066="finance"],.finance-tab[data-finance="movements"],button[data-finance-page="movements"],button[data-cash-page="movements"]{background:var(--dc-module-movimientos)!important;color:#fff!important;border-color:transparent!important}
.finance-tabs1066 button[data-fin1066="reconciliation"],button[data-finance-page="bank"],button[data-cash-page="bank"],.bank-card,.bank-action{background:var(--dc-module-banco)!important;color:#fff!important;border-color:transparent!important}
.finance-tabs1066 button[data-fin1066="sicarReconciliation"],button[data-finance-page="sicarReconciliation"],button[data-cash-page="sicarReconciliation"]{background:var(--dc-module-conciliacion)!important;color:#fff!important;border-color:transparent!important}
.finance-tabs1066 button[data-fin1066="abonosAplicador"],button[data-finance-page="abonosAplicador"],.more-page1048 [data-more-page1048="abonosAplicador"],.abonos-independent41762{background:var(--dc-module-abonos)!important;color:#fff!important;border-color:transparent!important}
.finance-tabs1066 button :is(span,b,small),.finance-tabs1066 button{font-weight:900}
.finance-tabs1066 button:not(.active){opacity:.96}.finance-tabs1066 button.active{box-shadow:0 12px 28px rgba(14,165,233,.24), inset 0 0 0 2px rgba(255,255,255,.30)!important}
/* Mantener Hueso oscuro legible, sin blancos quemados */
body:not(.light) .hueso-page input,body:not(.light) .hueso-page select,body:not(.light) .hueso-page textarea,
body:not(.light) .hueso-modal input,body:not(.light) .hueso-modal select,body:not(.light) .hueso-modal textarea,
body:not(.light) [data-hueso] input,body:not(.light) [data-hueso] select,body:not(.light) [data-hueso] textarea{
  background:rgba(15,23,42,.84)!important;color:#f8fafc!important;border-color:rgba(148,163,184,.34)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)!important
}
body:not(.light) .hueso-page option,body:not(.light) .hueso-modal option,body:not(.light) [data-hueso] option{background:#0f172a!important;color:#f8fafc!important}
body:not(.light) .hueso-page .quick-choice,body:not(.light) .hueso-modal .quick-choice,body:not(.light) [data-hueso] .quick-choice,
body:not(.light) .hueso-page .chip,body:not(.light) .hueso-modal .chip{background:rgba(30,41,59,.88)!important;color:#f8fafc!important;border-color:rgba(148,163,184,.36)!important}
body:not(.light) .hueso-page .quick-choice.active,body:not(.light) .hueso-modal .quick-choice.active,body:not(.light) [data-hueso] .quick-choice.active{background:linear-gradient(145deg,#8b5cf6,#6d28d9)!important;color:#fff!important;border-color:transparent!important}
/* GPS externo: panel de administración visible */
.dc-gps62-admin{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:10px 0;padding:12px;border-radius:18px;background:linear-gradient(135deg,rgba(14,165,233,.16),rgba(124,58,237,.13));border:1px solid rgba(14,165,233,.26)}
.dc-gps62-admin b{display:block;color:var(--dc-text,#f8fafc)}.dc-gps62-admin small{display:block;opacity:.78}.dc-gps62-admin .gps62-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dc-gps62-admin button{min-height:38px}
@media(max-width:720px){.dc-gps62-admin{grid-template-columns:1fr}.dc-gps62-admin .gps62-actions{justify-content:stretch}.dc-gps62-admin .gps62-actions button{flex:1}}
/* Conciliación PRO: evitar repintados caros y animaciones pesadas */
.sicar-pro,.bf-root,.recon-main-table,.recon-bank-open,.recon-monthly-pro{content-visibility:auto;contain-intrinsic-size:900px;contain:layout style paint}
.sicar-pro .enterprise-table-wrap,.sicar-pro table,.bf-table-wrap{transform:translateZ(0);will-change:auto}
.sicar-pro *,.bf-root *{animation-duration:.01ms!important;transition-duration:.12s!important}
.sicar-pro tbody tr,.bf-root tbody tr{contain:layout paint}
/* Si una capa nueva intenta dejar botones grises, reinyectar contraste por módulo */
[data-module="bandeja"],[data-module="inbox"]{--module-bg:var(--dc-module-bandeja)}
[data-module="finance"],[data-module="finanzas"]{--module-bg:var(--dc-module-finanzas)}
[data-module="routes"],[data-module="rutas"]{--module-bg:var(--dc-module-rutas)}


/* Stable 4.20.9.64 · CONTRATO VISUAL DE ESTABILIDAD
   Esta versión NO agrega una capa global de recolor.
   Los backgrounds funcionales existentes de Más, navegación, finanzas y estados se preservan.
   Los temas futuros sólo pueden modificar superficies neutras/contraste, nunca identidad de módulo. */

/* 4.20.9.65 · La selección NO puede cambiar la identidad del módulo */
html[data-theme="dark"] .bottom-nav button.nav-home1048.active,body[data-theme="dark"] .bottom-nav button.nav-home1048.active{background:var(--dc-module-inicio)!important}
html[data-theme="dark"] .bottom-nav button.nav-finance1048.active,body[data-theme="dark"] .bottom-nav button.nav-finance1048.active{background:var(--dc-module-finanzas)!important}
html[data-theme="dark"] .bottom-nav button.nav-inbox1048.active,body[data-theme="dark"] .bottom-nav button.nav-inbox1048.active,html[data-theme="dark"] .bottom-nav button.dc-bandeja-central4188.active,body[data-theme="dark"] .bottom-nav button.dc-bandeja-central4188.active{background:var(--dc-module-bandeja)!important}
html[data-theme="dark"] .bottom-nav button.nav-routes1048.active,body[data-theme="dark"] .bottom-nav button.nav-routes1048.active{background:var(--dc-module-rutas)!important}
html[data-theme="dark"] .bottom-nav button.nav-more1048.active,body[data-theme="dark"] .bottom-nav button.nav-more1048.active{background:var(--dc-module-mas)!important}

/* 4.20.9.67 · Auditoría integrada únicamente en Configuración */
.dc-system-audit-card{overflow:hidden}
.dc-system-audit-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:2px 0}
.dc-system-audit-card>summary::-webkit-details-marker{display:none}
.dc-system-audit-summary{display:flex;align-items:center;gap:12px;min-width:0}
.dc-system-audit-summary>span:last-child{display:grid;gap:2px;min-width:0}
.dc-system-audit-summary b{font-size:15px}.dc-system-audit-summary small{opacity:.72}
.dc-system-audit-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#334155,#0f172a);color:#fff;flex:0 0 auto}
.dc-system-audit-content{display:grid;gap:14px;padding-top:16px}
.dc-system-audit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dc-system-audit-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border,#dbe3ef);border-radius:14px;background:var(--surface-soft,#f8fafc);min-width:0}
.dc-system-audit-grid small,.dc-audit-release small,.dc-audit-event small,.dc-system-current small,.dc-system-audit-title small{opacity:.7}
.dc-system-audit-grid b{overflow-wrap:anywhere}
.dc-system-audit-rule{display:grid;gap:3px;padding:12px 14px;border-radius:14px;border:1px solid rgba(34,197,94,.25);background:rgba(34,197,94,.08)}
.dc-system-audit-rule b{color:#16a34a}.dc-system-audit-rule span{font-size:13px;line-height:1.45;opacity:.82}
.dc-system-audit-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.dc-system-audit-columns>section{display:grid;align-content:start;gap:8px;min-width:0}
.dc-system-audit-title{display:grid;gap:2px;margin-bottom:2px}
.dc-system-current{display:grid;gap:3px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,rgba(34,197,94,.13),rgba(14,165,233,.08));border:1px solid rgba(34,197,94,.24)}
.dc-system-current span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:.66}.dc-system-current b{overflow-wrap:anywhere}
.dc-audit-release{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--border,#dbe3ef);border-radius:12px;background:var(--surface,#fff)}
.dc-audit-release>div:first-child{display:grid;gap:3px;min-width:0}.dc-audit-release b,.dc-audit-release small{overflow-wrap:anywhere}
.dc-audit-release.current{border-color:rgba(34,197,94,.38);box-shadow:inset 3px 0 0 #22c55e}
.dc-audit-release-meta{display:grid;gap:5px;justify-items:end;text-align:right}
.dc-audit-event{display:grid;grid-template-columns:10px minmax(0,1fr);gap:9px;align-items:start;padding:8px 2px;border-bottom:1px solid var(--border,#e5e7eb)}
.dc-audit-event:last-child{border-bottom:0}.dc-audit-event>div{display:grid;gap:2px}.dc-audit-dot{width:8px;height:8px;border-radius:999px;background:#0ea5e9;margin-top:6px;box-shadow:0 0 0 3px rgba(14,165,233,.12)}
.dc-system-audit-actions{justify-content:space-between;gap:12px;border-top:1px solid var(--border,#e5e7eb);padding-top:12px}
body:not(.light) .dc-system-audit-grid>div,html[data-theme="dark"] .dc-system-audit-grid>div,body:not(.light) .dc-audit-release,html[data-theme="dark"] .dc-audit-release{background:rgba(15,23,42,.76);border-color:rgba(148,163,184,.22)}
body:not(.light) .dc-system-audit-icon,html[data-theme="dark"] .dc-system-audit-icon{background:linear-gradient(145deg,#475569,#1e293b)}
body:not(.light) .dc-audit-event,html[data-theme="dark"] .dc-audit-event,body:not(.light) .dc-system-audit-actions,html[data-theme="dark"] .dc-system-audit-actions{border-color:rgba(148,163,184,.18)}
@media(max-width:900px){.dc-system-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-system-audit-columns{grid-template-columns:1fr}}
@media(max-width:560px){.dc-system-audit-card>summary{align-items:flex-start}.dc-system-audit-card>summary>.pill{display:none}.dc-system-audit-grid{grid-template-columns:1fr 1fr}.dc-audit-release{grid-template-columns:1fr}.dc-audit-release-meta{justify-items:start;text-align:left}.dc-system-audit-actions{align-items:stretch;flex-direction:column}.dc-system-audit-actions button{width:100%}}
