:root {
--u-critico: #c2362b;   --u-critico-suave: #fbe9e7;
--u-alerta:  #b26a00;   --u-alerta-suave:  #fff3dc;
--u-bien:    #1f7a4d;   --u-bien-suave:    #e3f4ea;
--u-info:    #2a5f9e;   --u-info-suave:    #e6eef8;
--u-neutro:  #6b7785;   --u-neutro-suave:  #eef1f4;
--u-firma:   #e8892b;   --u-firma-suave:   #fdf0e2;
--u-pista:   #d9dfe6;
}
html[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-info:    #7fb0ec; --u-info-suave:    #172638;
--u-neutro:  #9aa6b2; --u-neutro-suave:  #1e252d;
--u-firma:   #f3a457; --u-firma-suave:   #3a2a18;
--u-pista:   #2e3843;
}
@media (prefers-color-scheme: dark) {
html: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-info:    #7fb0ec; --u-info-suave:    #172638;
--u-neutro:  #9aa6b2; --u-neutro-suave:  #1e252d;
--u-firma:   #f3a457; --u-firma-suave:   #3a2a18;
--u-pista:   #2e3843;
}
}
#lienzo .grupo.grupo-cadena, #lienzo .grupo.grupo-datos, #lienzo .grupo.grupo-control { --acento-grupo: var(--u-neutro-suave); }
#lienzo .grupo-atender:not(:has(.bloque.urgente)) { box-shadow: var(--sombra); }
.inicio-tema .inicio-tema-icono { background: var(--u-neutro-suave) !important; color: var(--u-neutro) !important; }
#indice .arbol-grupo .indice-salto > .indice-cuantos { display: none; }
#indice .indice-departamento .indice-cuantos:not(.indice-cuantos-avisos) { display: none; }
#indice .indice-departamento .indice-cuantos-avisos {
order: -1; flex: 0 0 auto; margin: 0 2px 0 0; min-width: 18px; height: 18px; padding: 0 5px;
border-radius: 9px; background: var(--u-alerta); color: #fff;
font: 700 10.5px/18px var(--cc-fuente-texto, inherit); text-align: center; font-variant-numeric: tabular-nums;
}
body.v2-con-areas #indice .arbol-grupo:is([data-grupo="grupo-cadena"], [data-grupo="grupo-datos"], [data-grupo="grupo-control"]) { display: none; }
#indice .v2-oculto { display: none; }
.v2-areas { display: flex; flex-direction: column; gap: 2px; }
.v2-areas .v2-rotulo { margin-top: 14px; }
.v2-area-boton.cc-arbol__grupo { margin: 0; width: 100%; min-height: 44px; font: inherit; font-size: 14px; text-align: left; }
.v2-icono { position: relative; display: grid; place-items: center; width: 22px; height: 22px; flex: 0 0 auto; }
.v2-icono .ic { width: 20px; height: 20px; color: currentColor; }
.v2-circulo {
position: absolute; top: -6px; right: -9px; min-width: 17px; height: 17px; padding: 0 4px;
border-radius: 9px; background: var(--u-alerta); color: #fff; box-shadow: 0 0 0 2px var(--cc-cromo, #0b1f3a);
font: 700 10px/17px var(--cc-fuente-texto, inherit); text-align: center; font-variant-numeric: tabular-nums;
}
.v2-area-nombre { flex: 1 1 auto; min-width: 0; overflow-wrap: anywhere; white-space: normal; line-height: 1.2; }
.v2-area:not(.abierta) .v2-area-dentro { display: none; }
.v2-area-dentro.cc-arbol__secciones { margin-top: 2px; }
.v2-subrot {
margin: 10px 0 4px; padding: 0 8px; font: 600 11px/1.2 var(--cc-fuente-texto, inherit);
letter-spacing: .08em; text-transform: uppercase; color: var(--cc-cromo-texto-2, #9fb0c6);
}
.v2-subrot:first-child { margin-top: 4px; }
.v2-pantalla.cc-arbol__seccion { margin: 0; width: 100%; min-height: 36px; font-size: 13.5px; }
.v2-pantalla.aqui { color: #fff; background: var(--cc-cromo-2); box-shadow: inset 2px 0 0 var(--cc-acento); }
@media (min-width: 768px) {
body.v2-pie-fijo #indice { overflow-y: auto; }
body.v2-pie-fijo #indice .v2-pie {
position: sticky; bottom: -12px; z-index: 3; margin-top: auto; padding: 4px 0 12px;
background: var(--cc-cromo, var(--rail)); box-shadow: 0 -10px 12px -8px rgba(0, 0, 0, .35);
}
body.v2-pie-fijo #indice .v2-pie .indice-rotulo { margin-top: 8px; }
}
.v2-subtemas { display: flex; flex-direction: column; margin: 0 0 6px 14px; padding-left: 10px; border-left: 1px dashed var(--cc-cromo-borde, rgba(255,255,255,.2)); }
.v2-subtema {
margin: 0; width: 100%; min-height: 32px; padding: 0 8px; border: 0; border-radius: 6px; background: none;
color: var(--cc-cromo-texto-2, #9fb0c6); font: inherit; font-size: 12.5px; text-align: left; cursor: pointer;
}
.v2-subtema:hover, .v2-subtema:focus-visible { color: #fff; background: var(--cc-cromo-2); }
.v2-buscador { position: relative; margin: 0 0 12px; }
.v2-bg-campo { position: relative; display: flex; align-items: center; margin: 0; }
.v2-bg-lupa { position: absolute; left: 12px; color: var(--cc-texto-3); pointer-events: none; }
.v2-bg-campo input {
width: 100%; min-height: 42px; padding: 0 14px 0 38px; border: 1px solid var(--cc-borde-fuerte); border-radius: 10px;
background: var(--cc-superficie); color: var(--cc-texto); font: 400 14px/1 var(--cc-fuente-texto, inherit);
}
.v2-bg-campo input:focus { outline: 2px solid var(--cc-foco, var(--u-info)); outline-offset: 1px; }
.v2-bg-res {
position: absolute; z-index: 60; left: 0; right: 0; top: calc(100% + 6px); max-height: min(70vh, 520px); overflow: auto;
padding: 6px; border: 1px solid var(--cc-borde); border-radius: 12px; background: var(--cc-superficie); box-shadow: var(--cc-sombra-3);
}
.v2-bg-res[hidden] { display: none; }
.v2-bg-grupo + .v2-bg-grupo { border-top: 1px solid var(--cc-borde); margin-top: 4px; padding-top: 4px; }
.v2-bg-rot { margin: 6px 8px 4px; font: 600 11px/1.2 var(--cc-fuente-texto, inherit); letter-spacing: .08em; text-transform: uppercase; color: var(--cc-texto-3); }
.v2-bg-item {
display: flex; flex-direction: column; align-items: flex-start; gap: 2px; margin: 0; width: 100%; min-height: 44px;
padding: 6px 10px; border: 0; border-radius: 8px; background: none; color: var(--cc-texto); text-align: left; cursor: pointer; font: inherit;
}
.v2-bg-item:hover, .v2-bg-item:focus-visible { background: var(--cc-superficie-2); }
.v2-bg-t { font-size: 14px; font-weight: 500; }
.v2-bg-d { font-size: 12.5px; color: var(--cc-texto-3); overflow-wrap: anywhere; }
.v2-bg-nada { margin: 10px; font-size: 13.5px; color: var(--cc-texto-3); }
.v2-atencion { margin: 14px 0 6px; }
.v2-atencion-t { margin: 0 0 8px; font: 600 12px/1.2 var(--cc-fuente-texto, inherit); letter-spacing: .08em; text-transform: uppercase; color: var(--cc-texto-3); }
.v2-atencion-lista { display: flex; flex-direction: column; gap: 6px; }
.v2-atencion-fila {
display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 12px;
margin: 0; width: 100%; min-height: 52px; padding: 6px 14px 6px 0; border: 1px solid var(--cc-borde); border-radius: 10px;
background: var(--cc-superficie); color: var(--cc-texto); text-align: left; cursor: pointer; font: inherit;
box-shadow: inset 4px 0 0 var(--u-neutro);
}
.v2-atencion-fila.v2-u-critico { box-shadow: inset 4px 0 0 var(--u-critico); }
.v2-atencion-fila.v2-u-alerta { box-shadow: inset 4px 0 0 var(--u-alerta); }
.v2-atencion-fila:hover { background: var(--cc-superficie-2); }
.v2-atencion-n { justify-self: end; font: 700 18px/1 var(--cc-fuente-cifras, inherit); font-variant-numeric: tabular-nums; }
.v2-u-critico .v2-atencion-n { color: var(--u-critico); }
.v2-u-alerta .v2-atencion-n { color: var(--u-alerta); }
.v2-atencion-texto { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.v2-atencion-que { font-size: 14px; font-weight: 500; }
.v2-atencion-det { font-size: 12.5px; color: var(--cc-texto-3); }
.v2-atencion-ir { font-size: 13.5px; font-weight: 600; color: var(--cc-enlace, var(--u-info)); white-space: nowrap; }
.v2-atencion-vacio { margin: 0; padding: 12px 14px; border: 1px solid var(--cc-borde); border-radius: 10px; color: var(--cc-texto-3); font-size: 14px; box-shadow: inset 4px 0 0 var(--u-bien); }
#grupo-inicio.v2-inicio .inicio-pendientes { display: none; }
#lienzo .grupo-atender:not(.enfocado) .grupo-rejilla { display: flex !important; flex-direction: column; gap: 6px; }
#lienzo .grupo-atender:not(.enfocado) .grupo-rejilla > .bloque {
grid-column: auto; border: 1px solid var(--cc-borde); border-radius: 10px; box-shadow: inset 4px 0 0 var(--u-neutro);
}
#lienzo .grupo-atender:not(.enfocado) .grupo-rejilla > .bloque.urgente { box-shadow: inset 4px 0 0 var(--u-critico); }
.mandos.tb-barra { flex-wrap: wrap; gap: 8px 10px; }
.tb-barra .buscador { flex: 1 1 200px; }
.tb-mando { display: inline-flex; align-items: center; gap: 6px; margin: 0; flex: 0 1 auto; min-width: 0; }
.tb-rotulo { font: 500 12.5px/1 var(--cc-fuente-texto, inherit); color: var(--cc-texto-3); white-space: nowrap; }
.tb-select {
min-height: 32px; max-width: 220px; padding: 0 28px 0 10px; border: 1px solid var(--cc-borde-fuerte); border-radius: 8px;
background-color: var(--cc-superficie); color: var(--cc-texto); font: 400 13.5px/1 var(--cc-fuente-texto, inherit);
text-overflow: ellipsis;
}
.tb-mas { position: relative; flex: 0 0 auto; }
.tb-mas-cuerpo.v2-derecha, .tb-multi-ops.v2-derecha { left: auto; right: 0; }
.tb-mando-perfil .tb-select { max-width: 170px; }
.tb-mas-boton {
display: inline-flex; align-items: center; gap: 4px; min-height: 32px; padding: 0 12px; border: 1px solid var(--cc-borde-fuerte);
border-radius: 8px; background: var(--cc-superficie); color: var(--cc-texto); font: 500 13.5px/1 var(--cc-fuente-texto, inherit);
cursor: pointer; list-style: none; user-select: none;
}
.tb-mas-boton::-webkit-details-marker { display: none; }
.tb-mas-boton::after { content: "▾"; font-size: 11px; color: var(--cc-texto-3); }
.tb-mas[open] .tb-mas-boton { border-color: var(--u-info); }
.tb-mas-n { color: var(--u-info); font-variant-numeric: tabular-nums; }
.tb-mas-cuerpo {
position: absolute; z-index: 50; top: calc(100% + 6px); left: 0; width: max-content; max-width: min(560px, 86vw);
display: flex; flex-direction: column; gap: 10px; padding: 12px; border: 1px solid var(--cc-borde); border-radius: 12px;
background: var(--cc-superficie); box-shadow: var(--cc-sombra-3);
}
.tb-quitar {
margin: 0; width: auto; min-height: 32px; padding: 0 12px; border: 1px solid transparent; border-radius: 8px;
background: none; color: var(--cc-enlace, var(--u-info)); font: 500 13.5px/1 var(--cc-fuente-texto, inherit);
}
.tb-cols-cuerpo { gap: 6px; max-height: 60vh; overflow: auto; }
.tb-col-op { display: flex; align-items: center; gap: 8px; margin: 0; font: 400 13.5px/1.3 var(--cc-fuente-texto, inherit); color: var(--cc-texto); cursor: pointer; }
.tb-col-op input { margin: 0; }
th.tb-oc, td.tb-oc { display: none !important; }
.tabla-pag { display: flex; justify-content: center; align-items: center; gap: 12px; margin: 10px 0 0; }
.tabla-pag .chip { min-height: 36px; padding: 0 16px; }
.tabla-pag .chip:disabled { opacity: .45; cursor: default; }
.tabla-pag-txt { font-variant-numeric: tabular-nums; color: var(--cc-texto-3); font-size: 13px; }
.tb-quitar:hover { background: var(--u-info-suave); }
.tb-quitar.oculto { display: none; }
@media (max-width: 767px) {
.tb-barra .buscador { flex-basis: 100%; }
.tb-mando { flex: 1 1 calc(50% - 10px); }
.tb-mando .tb-rotulo { display: none; }
.tb-select { max-width: none; width: 100%; }
.mandos.tb-barra { position: relative; }
.mandos.tb-barra .tb-mas { position: static; }
.mandos.tb-barra .tb-mas-cuerpo, .mandos.tb-barra .v2-ib-mas .tb-mas-cuerpo {
position: absolute; left: 8px; right: 8px; top: calc(100% + 4px); bottom: auto; width: auto; max-width: none; max-height: none; overflow: visible;
}
}
.v2-ib { position: relative; margin: 14px 0 6px; }
.mandos.tb-barra.v2-ib-barra { flex-wrap: nowrap; margin: 0; border: 1px solid var(--cc-borde); border-radius: 10px; }
.v2-ib .buscador { min-width: 240px; }
@media (min-width: 768px) and (max-width: 1099px) { .v2-ib .buscador { min-width: 200px; } }
.v2-ib-barra > .tb-mando, .v2-ib-barra > .tb-mas, .v2-ib-barra > .tb-quitar, .v2-ib-barra > .cuenta { flex: 0 0 auto; }
.tb-select.activo, .tb-multi-boton.activo { border-color: var(--u-info); color: var(--u-info); }
.v2-ib-rango { gap: 6px; }
.v2-ib-rango[hidden] { display: none !important; }
.v2-ib-rango .tb-select { padding: 0 8px; max-width: 150px; }
.tb-multi { position: relative; }
.tb-multi-boton {
display: inline-flex; align-items: center; gap: 6px; cursor: pointer; list-style: none; user-select: none; white-space: nowrap;
overflow: hidden; text-overflow: ellipsis; max-width: 240px; padding-right: 26px; position: relative;
}
.tb-multi-boton::-webkit-details-marker { display: none; }
.tb-multi-boton::after { content: "▾"; position: absolute; right: 10px; font-size: 11px; color: var(--cc-texto-3); }
.tb-multi-ops {
position: absolute; z-index: 55; top: calc(100% + 6px); left: 0; min-width: 220px; display: flex; flex-direction: column; gap: 2px;
padding: 8px; border: 1px solid var(--cc-borde); border-radius: 12px; background: var(--cc-superficie); box-shadow: var(--cc-sombra-3);
}
.tb-multi-ops label {
display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 8px; margin: 0; min-height: 36px; padding: 0 8px;
border-radius: 8px; font: 400 13.5px/1.2 var(--cc-fuente-texto, inherit); color: var(--cc-texto); cursor: pointer;
}
.tb-multi-ops label:hover { background: var(--cc-superficie-2); }
.tb-multi-ops label b { font-weight: 500; color: var(--cc-texto-3); font-variant-numeric: tabular-nums; }
.tb-multi-ops input { width: 16px; height: 16px; margin: 0; }
.tb-multi-todos {
margin: 4px 0 0; width: auto; min-height: 32px; padding: 0 10px; align-self: flex-start; border: 0; border-radius: 8px;
background: none; color: var(--cc-enlace, var(--u-info)); font: 500 13px/1 var(--cc-fuente-texto, inherit); cursor: pointer;
}
.tb-mas-cuerpo .tb-multi-ops { position: static; box-shadow: none; border: 0; padding: 4px 0 0; min-width: 0; }
.v2-ib-mas[hidden] { display: none; }
.v2-ib-mas .tb-mas-cuerpo, .v2-ib-mas .tb-mas-cuerpo:is(*) {
position: absolute; left: auto; right: 0; top: calc(100% + 6px); bottom: auto;
width: max-content; max-width: min(560px, calc(100vw - 32px)); max-height: none; overflow: visible;
}
.v2-ib-res {
position: absolute; z-index: 60; left: 0; top: calc(100% + 6px); width: min(620px, 100%); max-height: min(62vh, 480px); overflow: auto;
padding: 6px; border: 1px solid var(--cc-borde); border-radius: 12px; background: var(--cc-superficie); box-shadow: var(--cc-sombra-3);
}
.v2-ib-res[hidden] { display: none; }
.v2-ib-res-cab {
display: flex; align-items: center; justify-content: space-between; padding: 4px 6px 4px 10px;
font: 600 11px/1.2 var(--cc-fuente-texto, inherit); letter-spacing: .08em; text-transform: uppercase; color: var(--cc-texto-3);
}
.v2-ib-res-x {
margin: 0; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 8px; background: none;
color: var(--cc-texto-3); font: 400 20px/1 var(--cc-fuente-texto, inherit); cursor: pointer;
}
.v2-ib-res-x:hover { background: var(--u-neutro-suave); }
.v2-ib-gris { display: block; margin-top: 2px; font: 400 12.5px/1.35 var(--cc-fuente-texto, inherit); color: var(--cc-texto-3); }
.v2-ib-nota { margin: 6px 0 8px; }
.v2-ib-apagada .inicio-cifra-n, .v2-ib-apagada.inicio-hoy-cifra .inicio-hoy-n, .v2-ib-apagada .inicio-hoy-t { color: var(--cc-texto-3); }
.inicio-hoy-cifra.v2-ib-apagada { cursor: default; }
.v2-ib-fuera, .v2-gb-fuera { display: none !important; }
.v2-ib-sin-depto { margin: 6px 0 14px; padding: 10px 14px; border: 1px dashed var(--cc-borde-fuerte); border-radius: 10px; font-size: 14px; color: var(--cc-texto-2); }
.v2-ib-sin-depto p { margin: 4px 0; display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.v2-ib-ir {
margin: 0; width: auto; min-height: 32px; padding: 0; border: 0; background: none;
color: var(--cc-enlace, var(--u-info)); font: 600 14px/1 var(--cc-fuente-texto, inherit); cursor: pointer;
}
body.v2-con-barra-inicio:has(#grupo-inicio.activo) #v2-buscador { display: none; }
@media (max-width: 767px) {
.v2-ib .buscador { min-width: 170px; flex-basis: 170px; }
.v2-ib-mas .tb-mas-cuerpo .tb-mando .tb-rotulo { display: inline; min-width: 58px; }
.v2-ib-mas .tb-mas-cuerpo .tb-mando { display: flex; }
.v2-ib-mas .tb-mas-cuerpo .tb-select { flex: 1 1 auto; width: auto; }
.v2-ib-rango { flex-wrap: wrap; }
.v2-ib-rango .tb-select { flex: 1 1 120px; min-width: 0; }
.v2-ib-res { width: 100%; }
.tb-mas-cuerpo .tb-mando { flex: 1 1 100%; }
}
.mandos.tb-barra.v2-gb { margin-bottom: 12px; }
@media (min-width: 1281px) {
header.cc-topbar .cc-topbar__correo { max-width: 220px; }
}
.g-pista { background: var(--u-pista) !important; }
.g-medidor-pista { fill: var(--u-pista); }
#lienzo .g-barras, #lienzo .g-anillo, #lienzo .g-apilada, #lienzo .g-medidor {
padding: 12px 14px; border: 1px solid var(--cc-borde); border-radius: 12px; background: var(--cc-superficie);
}
#lienzo .g-barras > .g-fila:nth-child(even) { background: var(--u-neutro-suave); border-radius: 6px; }
#lienzo .g-barras > .g-fila { padding: 2px 6px; }
.v2-resalta { position: relative; z-index: 2; outline: 3px solid var(--v2-rc, var(--u-alerta)) !important; outline-offset: 3px; animation: v2-resplandor 1.25s ease-in-out 2; }
.v2-tono-critico { --v2-rc: var(--u-critico); }
.v2-tono-alerta { --v2-rc: var(--u-alerta); }
.v2-tono-info { --v2-rc: var(--u-info); }
@keyframes v2-resplandor {
0%   { box-shadow: 0 0 0 0 color-mix(in srgb, var(--v2-rc, var(--u-alerta)) 55%, transparent); }
60%  { box-shadow: 0 0 0 12px color-mix(in srgb, var(--v2-rc, var(--u-alerta)) 0%, transparent); }
100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--v2-rc, var(--u-alerta)) 0%, transparent); }
}
@media (prefers-reduced-motion: reduce) { .v2-resalta { animation: none; } }
@media (max-width: 767px) {
.v2-areas, .v2-subtemas { display: none; }
}
.mapa-y-lista { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; align-items: start; }
@media (min-width: 1000px) { .mapa-y-lista { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); } }
.mapa-y-lista.sin-mapa { grid-template-columns: minmax(0, 1fr); }
.punto.punto--critico { background: var(--u-critico); }
.punto.punto--alerta { background: var(--u-alerta); }
.punto.punto--neutro { background: var(--u-neutro); }
.punto.punto-grupo { width: 38px; height: 38px; font-size: 15px; box-shadow: 0 0 0 4px rgba(255,255,255,.55), 0 1px 4px rgba(10,31,51,.4); }
.globo-grupo-t { margin: 0 0 8px; font-size: 12.5px; color: var(--cc-texto-3, #6b7785); }
.globo-grupo .globo + .globo { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--cc-borde, #dfe4ea); }
.mapa-sin-conexion { position: absolute; left: 10px; right: 10px; bottom: 10px; z-index: 500; margin: 0; padding: 8px 10px; border-radius: 8px;
background: var(--cc-superficie, #fff); color: var(--cc-texto-3, #6b7785); font-size: 13px; box-shadow: 0 1px 4px rgba(10,31,51,.2); }
.mapa-leyenda { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 8px 0 0; font-size: 12.5px; color: var(--cc-texto-3, #6b7785); }
.mapa-ley { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: -4px; }
.mapa-ley.punto--critico { background: var(--u-critico); }
.mapa-ley.punto--alerta { background: var(--u-alerta); }
.mapa-ley.punto--neutro { background: var(--u-neutro); }
.mapa-ley-nota { flex-basis: 100%; }
.mapa-lista-cab { margin: 0 0 6px; font-size: 13px; color: var(--cc-texto-3, #6b7785); }
.mapa-lista-cab .enlace { width: auto; margin: 0 0 0 6px; }
.mapa-lista-ul { list-style: none; margin: 0; padding: 0; max-height: 470px; overflow: auto; border: 1px solid var(--cc-borde, #dfe4ea); border-radius: 10px; }
.mapa-lista-ul li + li { border-top: 1px solid var(--cc-borde, #dfe4ea); }
.mapa-lista-fila { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; width: 100%; margin: 0;
padding: 9px 12px; border: 0; border-radius: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; font: inherit; }
.mapa-lista-fila:hover { background: var(--cc-superficie-2, #f3f5f8); }
.mapa-lista-n.punto { width: 26px; height: 26px; font-size: 12px; box-shadow: none; border-width: 0; }
.mapa-lista-q { display: flex; flex-direction: column; min-width: 0; }
.mapa-lista-nombre { font-weight: 600; font-size: 14px; overflow-wrap: anywhere; }
.mapa-lista-det { font-size: 12.5px; color: var(--cc-texto-3, #6b7785); }
.mapa-lista-cifra { display: flex; flex-direction: column; align-items: flex-end; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mapa-lista-cifra b { font-size: 15px; }
.mapa-lista-cifra small { font-size: 12px; color: var(--cc-texto-3, #6b7785); }
.mapa-registro { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--cc-borde, #dfe4ea); }
.mapa-registro-t { margin: 0 0 8px; font: 600 15px/1.3 var(--fuente, inherit); }
#franja-depto.franja-depto { --cc-depto: var(--u-neutro); --cc-depto-suave: var(--cc-superficie-hundida, var(--u-neutro-suave)); }
#franja-depto .franja-depto-texto strong { color: var(--cc-texto); }
.prep-chip { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: .02em; white-space: nowrap; line-height: 1.4; }
.prep-chip__punto { width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex: none; }
.prep-chip--prep { color: var(--cc-depto, var(--cc-acento, #1f6feb)); background: var(--cc-depto-suave, var(--cc-info-suave, #e8f0fe)); border: 1px solid currentColor; }
.prep-chip--anadiendo { color: var(--cc-texto-3, #5f6b7a); background: var(--cc-info-suave, #eef3fb); border: 1px solid var(--cc-borde, #dde3ea); font-weight: 600; font-size: 11.5px; padding: 2px 8px; }
.prep-marca { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 2px 0 8px; min-width: 0; }
.prep-marca__que { font-size: 12.5px; color: var(--cc-texto-3, #5f6b7a); min-width: 0; }
.prep { display: grid; gap: 16px; min-width: 0; }
.prep-cab { display: grid; gap: 10px; justify-items: start; padding: 16px 18px; border-radius: 12px; background: var(--cc-depto-suave, var(--cc-info-suave, #eef3fb)); border-left: 4px solid var(--cc-depto, var(--cc-acento, #1f6feb)); }
.prep-resumen { margin: 0; font-size: 16px; font-weight: 600; color: var(--cc-texto, #1d2733); }
.prep-rejilla { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 16px; }
.prep-col { padding: 14px 16px; border: 1px solid var(--cc-borde, #dde3ea); border-radius: 12px; min-width: 0; }
.prep-col__titulo { margin: 0 0 8px; font-size: 12.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--cc-texto-3, #5f6b7a); }
.prep-lista { margin: 0; padding-left: 18px; display: grid; gap: 6px; font-size: 14px; color: var(--cc-texto, #1d2733); }
.prep-col--conecta .prep-lista { list-style: none; padding-left: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.prep-col--conecta .prep-lista li { padding: 4px 10px; border-radius: 8px; background: var(--cc-fondo, #f5f7fa); border: 1px solid var(--cc-borde, #dde3ea); font-size: 13px; }
.prep-mientras { margin: 0; padding: 12px 16px; border-radius: 12px; background: var(--cc-fondo, #f5f7fa); font-size: 14px; color: var(--cc-texto-2, #3b4652); }
@media (max-width: 720px) { .prep-rejilla { grid-template-columns: minmax(0, 1fr); } }
.tb-cols-cuerpo { align-items: stretch; min-width: 240px; }
.tb-col-op { display: grid !important; grid-template-columns: 18px minmax(0, 1fr); align-items: center; justify-items: start; column-gap: 10px; width: 100%; text-align: left !important; padding: 4px 2px; }
.tb-col-op input.tb-col-casilla { width: 18px !important; height: 18px !important; min-width: 18px; min-height: 18px; max-width: 18px; margin: 0 !important; padding: 0; flex: none; justify-self: start; }
.cxc-tel { display: block; margin: 0 0 6px; font-size: 13px; color: var(--cc-texto-2); white-space: nowrap; }
.cxc-tel b { color: var(--cc-texto); font-variant-numeric: tabular-nums; letter-spacing: .02em; }
