
:root {
  --u-critico: #c2362b;   --u-critico-suave: #fbe9e7;
  --u-alerta:  #b26a00;   --u-alerta-suave:  #fff3dc;
  --u-bien:    #1f7a4d;   --u-bien-suave:    #e3f4ea;
  --u-neutro:  #6b7785;   --u-neutro-suave:  #eef1f4; --u-pista: #d9dfe6;
  --u-info:    #6b7785;   --u-info-suave:    #eef1f4;
  --u-firma:   #e8892b;   --u-firma-suave:   #fdf0e2;
  
  --t-credito: #1f6fd1;   --t-contado: #e07400;
  --v2-radio: 12px; --v2-gap: 16px;
  --v2-fila: 44px; --v2-texto: 14px; --v2-rotulo: 13px;
  
  --v2-sombra: 0 1px 2px rgba(16, 24, 40, .06), 0 4px 14px rgba(16, 24, 40, .07);
}
:root[data-tema="oscuro"] {
  --u-critico: #ff7a6e; --u-critico-suave: #3a1d1b;
  --u-alerta:  #f2b04a; --u-alerta-suave:  #3a2c14;
  --u-bien:    #5fd39a; --u-bien-suave:    #16302a;
  --u-neutro:  #9aa6b2; --u-neutro-suave:  #1e252d; --u-pista: #2e3843;
  --u-info:    #9aa6b2; --u-info-suave:    #1e252d;
  --u-firma:   #f3a457; --u-firma-suave:   #3a2a18;
  --t-credito: #5b9cf0; --t-contado: #f5a124;   
  --v2-sombra: 0 1px 2px rgba(0, 0, 0, .45), 0 4px 14px rgba(0, 0, 0, .35);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-tema="claro"]) {
  --u-critico: #ff7a6e; --u-critico-suave: #3a1d1b;
  --u-alerta:  #f2b04a; --u-alerta-suave:  #3a2c14;
  --u-bien:    #5fd39a; --u-bien-suave:    #16302a;
  --u-neutro:  #9aa6b2; --u-neutro-suave:  #1e252d; --u-pista: #2e3843;
  --u-info:    #9aa6b2; --u-info-suave:    #1e252d;
  --u-firma:   #f3a457; --u-firma-suave:   #3a2a18;
  --t-credito: #5b9cf0; --t-contado: #f5a124;   
  --v2-sombra: 0 1px 2px rgba(0, 0, 0, .45), 0 4px 14px rgba(0, 0, 0, .35);
}
}
.v2-en-vivo { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--u-neutro); }
.v2-en-vivo::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--u-bien);
  box-shadow: 0 0 0 0 var(--u-bien); animation: v2-latido 2s infinite; }
@keyframes v2-latido { 0% { box-shadow: 0 0 0 0 rgba(31,122,77,.45); } 70% { box-shadow: 0 0 0 7px rgba(31,122,77,0); } 100% { box-shadow: 0 0 0 0 rgba(31,122,77,0); } }
@media (prefers-reduced-motion: reduce) { .v2-en-vivo::before { animation: none; } }


.v2-ic { display: inline-block; width: 18px; height: 18px; flex: none; vertical-align: -3px; background: currentColor;
  -webkit-mask: var(--m) center / contain no-repeat; mask: var(--m) center / contain no-repeat; }


.v2-vacio { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 10px; margin: 8px 0; padding: 10px 0;
  color: var(--cc-texto-3, var(--u-neutro)); font-size: 13.5px; line-height: 1.4; }
.v2-vacio .v2-vacio-ic { width: 16px; height: 16px; color: var(--u-neutro); }
.v2-vacio-accion { flex: none; width: auto; min-height: 36px; margin: 0; padding: 0 14px; border: 1px solid var(--cc-borde-fuerte, #c9d0d8);
  border-radius: 999px; background: var(--cc-superficie, #fff); color: var(--cc-texto, #1d1f25); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }


.v2-oculto { display: none !important; }
.v2-solo { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 6px; margin: 0 0 14px; padding: 10px 14px;
  border: 1px solid var(--cc-borde, #dde2e8); border-radius: 10px; background: var(--cc-superficie, #fff); box-shadow: var(--v2-sombra);
  font-size: 14px; color: var(--cc-texto-2, #48525e); }
.v2-solo .r { color: var(--cc-texto-3, #6b7785); }
.v2-solo b { color: var(--cc-texto, #1d1f25); font-weight: 700; }
.v2-solo .sep { color: var(--cc-texto-3, #6b7785); }
.v2-solo-ir { margin: 0; width: auto; min-height: 32px; padding: 0 4px; border: 0; background: none; color: var(--cc-enlace, #0b6072);
  font: inherit; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.v2-solo-ir:hover { text-decoration: underline; }

.v2-solo-fin { display: inline-flex; align-items: baseline; gap: 6px; white-space: nowrap; }


.v2-resalta { outline: 2px solid var(--v2-rc, var(--u-alerta)) !important; outline-offset: 2px; border-radius: 8px;
  animation: v2-resplandor 1.25s ease-in-out 2; }
@keyframes v2-resplandor {
  0%   { box-shadow: 0 0 0 4px color-mix(in srgb, var(--v2-rc, var(--u-alerta)) 45%, transparent); }
  60%  { box-shadow: 0 0 0 16px color-mix(in srgb, var(--v2-rc, var(--u-alerta)) 0%, transparent); }
  100% { box-shadow: 0 0 0 4px transparent; }
}

.v2-resalta-col, .v2-resalta-col .et, .v2-resalta-col .px-et, .v2-resalta-col .v2c-it, .v2-resalta-col .px-ch { color: var(--cc-texto, #1d1f25) !important; }
.v2-resalta-col { background: var(--u-alerta-suave) !important; box-shadow: inset 3px 0 0 var(--u-alerta); transition: none !important; }   
@media (prefers-reduced-motion: reduce) {
  .v2-resalta { animation: none; }
}


@media (pointer: coarse) {
  
  #px-main .v2f button, #px-main .v2f select, #px-main .v2f input:not([type="search"]), #px-main .v2f [role="button"] { min-height: 44px; }
  #px-main tr[data-ir] > td, #px-main tr[data-ent] > td, #px-main tr.v2-tocable > td { height: 44px; }
  #px-main button.ir, #px-main a.ir, #px-main .v2-ir, #px-main [data-ir-aviso], #px-main .v2-solo-ir, #px-main .v2-vacio-accion { min-height: 44px; }
  #px-main button.ir, #px-main a.ir, #px-main .v2-ir, #px-main [data-ir-aviso] { display: inline-flex; align-items: center; }
  #px-main .px-card, #px-main .px-vacia, #px-main .px-pestana, #px-main .px-btn, #px-main .px-volver { min-height: 44px; }
}

.v2-subtema-foco { outline: 2px solid var(--acento, var(--cc-primario, #0f3d5e)); outline-offset: 4px; border-radius: 8px; transition: outline-color .6s; }

.v2-en-vivo::before,.lf-vivo::before,.dp-vivo::before{animation:v2-late 1.6s ease-in-out infinite}
@keyframes v2-late{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.v2-en-vivo::before,.lf-vivo::before,.dp-vivo::before{animation:none}}

.v2x-acciones{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px}


.v2x-sec+.v2x-sec{margin-top:16px}

.v2x-sec>h2.cc-card__titulo{display:block;position:static;margin:0;padding:14px 16px 12px;line-height:1.3}

.v2x-sec>.tabla-marco{margin-top:0}

#px-main .tabla-marco{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.v2x-sec>.dp-vacio{margin:0;padding:0 16px 16px}
.v2x-sec>.cc-chico{margin:0 0 12px;max-width:78ch}
.v2x-pr-prestar,.v2x-pr-retirar{white-space:nowrap}
.v2x-pr-no>summary{cursor:pointer;font-weight:600;color:var(--cc-texto-2)}
.v2x-pr-no ul{margin:10px 0 0;padding-left:18px;color:var(--cc-texto-2);font-size:14px;line-height:1.5}
.v2x-pr-no li b{color:var(--cc-texto)}
