:root{--marca: #0a2a66;--fondo-pagina: #071a40;--hoja: #eef2f9;--superficie: #ffffff;--superficie-2: #f7f9fd;--banda: #0a2a66;--banda-2: #123a86;--acento: #1d4ed8;--tinta: #0f1b34;--tinta-2: #38486a;--tinta-3: #6b7a99;--borde: #e5eaf3;--borde-2: #cbd6e8;--serie-1: #1d4ed8;--serie-1-claro: #5b9bff;--serie-2: #d97706;--serie-3: #0d9488;--gris-serie: #c3cede;--pista: #e9eef7;--oportunidad: #d97706;--oportunidad-suave: #fef3e2;--positivo: #0d9488;--positivo-suave: #e3f5f2;--violeta: #7c3aed;--negativo: #dc2626;--negativo-suave: #fdecec;--oro-1: #fcd34d;--oro-2: #d4a017;--plata-1: #d1d5db;--plata-2: #9ca3af;--bronce-1: #d6a57c;--bronce-2: #b87333;--sombra: 0 2px 10px rgba(10, 31, 74, .08);--sombra-2: 0 12px 32px rgba(10, 31, 74, .16);--radio: 14px;--fuente-titulos: "Inter", "Segoe UI", Arial, sans-serif;--fuente: "Inter", "Segoe UI", Arial, sans-serif;color-scheme:light}:root[data-theme=dark]{--marca: #4f8cff;--fondo-pagina: #05060c;--hoja: #0d1526;--superficie: #121c31;--superficie-2: #0f1728;--banda: #16223c;--banda-2: #1d2c4d;--acento: #5b9bff;--tinta: #e9eefc;--tinta-2: #b3c0da;--tinta-3: #8493b1;--borde: #24304a;--borde-2: #33415f;--serie-1: #5b9bff;--serie-1-claro: #8fbaff;--serie-2: #f0a52e;--serie-3: #2dd4bf;--gris-serie: #3a4763;--pista: #1c2740;--oportunidad: #f0a52e;--oportunidad-suave: #2a2213;--positivo: #2dd4bf;--positivo-suave: #10241f;--violeta: #a78bfa;--negativo: #f87171;--negativo-suave: #2a1414;--sombra: 0 2px 12px rgba(0, 0, 0, .4);--sombra-2: 0 16px 40px rgba(0, 0, 0, .55);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:150px}body{margin:0;background:var(--fondo-pagina);color:var(--tinta);font-family:var(--fuente);font-size:14px;-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}img{display:block}.pagina{padding:20px 16px 32px}.hoja{max-width:1320px;margin:0 auto;background:var(--hoja);border-radius:20px;padding:20px 24px 12px;box-shadow:0 20px 50px #00000040}.header{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-bottom:14px}.header-logo{height:58px;width:auto}.tabs{display:flex;gap:4px;background:var(--superficie);border:1px solid var(--borde);border-radius:999px;padding:4px}.tab{border:0;background:transparent;padding:8px 16px;border-radius:999px;color:var(--tinta-2);font-weight:600}.tab.activo{background:var(--banda);color:#fff}.header-acciones{display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap}.actualizado{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;padding-right:6px}.actualizado span{font-size:11px;color:var(--tinta-3);text-transform:uppercase;letter-spacing:.5px}.actualizado strong{font-size:13px;color:var(--tinta-2)}.boton-prim,.boton-sec{display:inline-flex;align-items:center;gap:8px;border-radius:10px;padding:9px 14px;font-weight:600;text-decoration:none;white-space:nowrap}.boton-prim{background:var(--acento);color:#fff;border:1px solid var(--acento)}.boton-prim:hover{background:var(--banda)}.boton-prim img{width:18px;height:18px;filter:brightness(0) invert(1)}.boton-sec{background:var(--superficie);color:var(--acento);border:1px solid var(--borde-2)}.boton-sec:hover:not(:disabled){border-color:var(--acento)}.girando{display:inline-block;animation:girar .9s linear infinite}@keyframes girar{to{transform:rotate(360deg)}}.barra-fija{position:sticky;top:0;z-index:30;background:var(--hoja);margin:0 -24px;padding:8px 24px 10px;border-bottom:1px solid var(--borde)}.filtros{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.filtros-icono{width:26px;height:26px;align-self:center;opacity:.85}.filtro{position:relative;display:flex;flex-direction:column;gap:3px;min-width:118px;flex:1 1 118px;max-width:200px}.filtro-etiqueta{font-size:11px;font-weight:600;color:var(--tinta-3);text-transform:uppercase;letter-spacing:.4px}.filtro-boton{display:flex;align-items:center;justify-content:space-between;gap:6px;background:var(--superficie);border:1px solid var(--borde-2);border-radius:9px;padding:7px 10px;color:var(--tinta);text-align:left;min-height:34px}.filtro.activo .filtro-boton{border-color:var(--serie-1);box-shadow:inset 0 0 0 1px var(--serie-1)}.filtro-resumen{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.filtro-flecha{color:var(--tinta-3);font-size:11px}.filtro-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:40;width:max(100%,300px);background:var(--superficie);border:1px solid var(--borde-2);border-radius:12px;box-shadow:0 12px 32px #0f172a2e;padding:8px}.filtro-buscar{width:100%;border:1px solid var(--borde-2);border-radius:8px;padding:7px 10px;font:inherit}.filtro-acciones{display:flex;justify-content:space-between;align-items:center;padding:6px 2px;font-size:12px;color:var(--tinta-3)}.filtro-acciones button{border:0;background:none;color:var(--acento);font-weight:600;padding:0}.filtro-lista{list-style:none;margin:0;padding:0;max-height:280px;overflow:auto}.filtro-lista label{display:flex;align-items:center;gap:8px;padding:6px;border-radius:6px;cursor:pointer;font-size:13px}.filtro-lista label:hover{background:var(--hoja)}.filtro-opcion{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filtro-grupo{list-style:none}.filtro-grupo>ul{list-style:none;margin:0;padding:0}.filtro-grupo-titulo{padding:8px 6px 2px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--tinta-3)}.filtro-grupo:first-child .filtro-grupo-titulo{padding-top:4px}.filtro-n{color:var(--tinta-3);font-size:12px;font-variant-numeric:tabular-nums}.filtro-mas{padding:6px;font-size:12px;color:var(--tinta-3)}.filtro-panel-rango{width:max(100%,220px);display:flex;flex-direction:column;gap:8px}.rango-campo{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--tinta-3)}.rango-campo input{border:1px solid var(--borde-2);border-radius:8px;padding:6px 8px;font:inherit;color:var(--tinta)}.filtro-texto{max-width:190px}.filtro-input{display:flex;align-items:center;gap:6px;background:var(--superficie);border:1px solid var(--borde-2);border-radius:9px;padding:0 8px;min-height:34px}.filtro-input img{width:15px;height:15px;opacity:.7}.filtro-input input{border:0;outline:0;font:inherit;font-size:13px;width:100%;background:transparent}.boton-borrar{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--borde-2);background:var(--superficie);color:var(--tinta-2);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;flex-shrink:0}.boton-borrar:not(:disabled){border-color:var(--acento);color:var(--acento)}.boton-borrar img{width:14px;height:14px}.barra-inferior{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.indice{display:flex;gap:6px;flex-wrap:wrap}.indice a{font-size:12px;font-weight:600;color:var(--banda);text-decoration:none;background:var(--superficie);border:1px solid var(--borde);padding:4px 10px;border-radius:999px}.indice a:hover{border-color:var(--banda)}.kpis{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin:16px 0 20px}.kpi{display:flex;align-items:center;gap:10px;background:var(--superficie);border-radius:var(--radio);padding:12px;box-shadow:var(--sombra);border-bottom:3px solid var(--banda);min-width:0}.kpi-destacado{background:var(--banda)}.kpi-destacado .kpi-valor,.kpi-destacado .kpi-label{color:#fff}.kpi-destacado .kpi-icono{filter:brightness(0) invert(1)}.kpi-icono{width:30px;height:30px;object-fit:contain;flex-shrink:0}.kpi-valor{font-family:var(--fuente-titulos);font-weight:800;font-size:19px;color:var(--tinta);font-variant-numeric:tabular-nums;white-space:nowrap}.kpi-label{font-size:11.5px;color:var(--tinta-3);font-weight:500}main.actualizando{opacity:.55;transition:opacity .2s;pointer-events:none}.seccion{display:grid;grid-template-columns:56px minmax(0,1fr);background:var(--superficie);border-radius:18px;overflow:hidden;margin-bottom:20px;box-shadow:var(--sombra)}.seccion-banda{margin:0;background:var(--banda);color:#fff;display:flex;align-items:center;justify-content:center;padding:16px 0}.seccion-banda span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--fuente-titulos);font-size:22px;font-weight:800;letter-spacing:.3px;position:sticky;top:160px}.seccion-contenido{padding:18px;display:flex;flex-direction:column;gap:16px;background:#f8fafc;min-width:0}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.grid-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.grid-resumen{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.columna-apilada{display:flex;flex-direction:column;gap:14px;min-width:0}.card{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:14px 16px 16px;min-width:0;display:flex;flex-direction:column}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.card-header h3{margin:0;font-family:var(--fuente-titulos);font-size:15px;font-weight:700;color:var(--tinta)}.card-header p{margin:3px 0 0;font-size:12px;color:var(--tinta-3)}.card-header-acciones{flex-shrink:0}.card-cuerpo{flex:1;min-width:0}.chart-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:2px}.scroll-interno{max-height:560px;overflow:auto;padding-right:4px}.scroll-interno.corto{max-height:300px}.card-alta .scroll-interno{max-height:720px}.vacio{color:var(--tinta-3);font-size:13px;padding:16px 0;text-align:center;margin:0}.aviso{border-radius:12px;padding:12px 16px;margin:12px 0;font-weight:500}.aviso-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.cargando-bloque{padding:60px 0;text-align:center;color:var(--tinta-3);font-weight:500}.tooltip{position:fixed;z-index:100;pointer-events:none;background:#0f172a;color:#fff;border-radius:10px;padding:8px 10px;font-size:12px;min-width:150px;max-width:280px;box-shadow:0 8px 24px #0f172a4d}.tooltip-anclado{position:absolute}.tooltip-titulo{font-weight:700;margin-bottom:4px;line-height:1.3}.info-boton-wrap{position:relative;display:inline-flex;margin-left:6px;vertical-align:middle}.info-boton{width:18px;height:18px;border-radius:50%;border:1px solid var(--borde-2);background:var(--hoja);color:var(--tinta-3);font-size:11px;font-weight:700;font-style:italic;font-family:Georgia,Times New Roman,serif;display:inline-flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;padding:0}.info-boton:hover{background:var(--acento);color:#fff;border-color:var(--acento)}.info-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:60;width:320px;max-width:min(85vw,320px);background:var(--superficie);border:1px solid var(--borde-2);border-radius:10px;box-shadow:0 12px 32px #0f172a2e;padding:12px 14px;font-size:12.5px;line-height:1.5;color:var(--tinta-2);text-align:left}.info-popover b{color:var(--tinta)}.info-popover .info-ejemplo{margin-top:8px;padding-top:8px;border-top:1px solid var(--borde-2);font-size:12px;color:var(--tinta-3)}.tooltip-fila{display:flex;justify-content:space-between;gap:14px;color:#cbd5e1}.tooltip-fila strong{color:#fff;font-variant-numeric:tabular-nums}.chart{width:100%}.chart svg{display:block;overflow:visible}.eje{stroke:var(--borde-2);stroke-width:1}.rejilla{stroke:var(--borde);stroke-width:1}.tick{fill:var(--tinta-3);font-size:11px}.valor-barra{fill:var(--tinta-2);font-size:11px;font-weight:600}.columna{fill:var(--serie-1)}g:hover>.columna{fill:var(--banda)}.linea{fill:none;stroke:var(--serie-1);stroke-width:2;stroke-linejoin:round}.crosshair{stroke:var(--tinta-3);stroke-dasharray:3 3}.punto{fill:var(--serie-1);stroke:var(--superficie);stroke-width:2}.quad-resumen{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.quad-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--hoja);font-size:12px;color:var(--tinta-2)}.quad-chip b{color:var(--tinta);font-variant-numeric:tabular-nums}.quad-chip i{width:8px;height:8px;border-radius:50%;display:inline-block}.chart-cuadrante circle{cursor:default;transition:r .1s}.chart-cuadrante circle:hover{r:7}.quad-divisor{stroke:var(--borde-2);stroke-width:1;stroke-dasharray:4 3}.quad-etiqueta{fill:var(--tinta-3);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.barlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.barlist-item{display:flex;align-items:center;gap:10px;padding:6px;border-radius:10px}.barlist-item:hover{background:var(--hoja)}.barlist-rank{width:28px;flex-shrink:0;font-size:12px;font-weight:700;color:var(--tinta-3)}.logo-marca{display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:10px;border:1px solid rgba(15,23,42,.08);overflow:hidden}.logo-marca img{max-width:100%;max-height:100%;object-fit:contain}.barlist-logo{width:44px;height:34px;padding:3px}.barlist-cuerpo{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.barlist-texto{display:flex;justify-content:space-between;gap:10px}.barlist-label{font-size:13px;font-weight:600;color:var(--tinta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barlist-valor{font-size:13px;font-weight:700;color:var(--tinta);font-variant-numeric:tabular-nums;white-space:nowrap}.barlist-extra{font-weight:500;color:var(--tinta-3)}.barlist-pista{height:8px;background:var(--pista);border-radius:999px;overflow:hidden}.barlist-barra{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--serie-1),var(--serie-1-claro))}.donut{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.donut svg{flex-shrink:0}.donut path{cursor:default}.donut-centro{font-family:var(--fuente-titulos);font-size:20px;font-weight:800;fill:var(--tinta)}.donut-sub{font-size:10px;fill:var(--tinta-3)}.leyenda{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}.leyenda li{display:grid;grid-template-columns:12px auto auto auto;align-items:center;gap:8px}.leyenda-marca{width:12px;height:12px;border-radius:4px;display:inline-block}.leyenda-label{color:var(--tinta-2)}.leyenda li strong{color:var(--tinta);font-variant-numeric:tabular-nums}.leyenda-n{color:var(--tinta-3);font-size:12px;font-variant-numeric:tabular-nums}.leyenda-horizontal{flex-direction:row;gap:16px;margin-bottom:10px;font-size:12px}.leyenda-horizontal li{display:flex;gap:6px;color:var(--tinta-2)}.podio{display:flex;align-items:flex-end;justify-content:center;gap:10px;height:250px;padding-top:6px}.podio-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:96px;height:100%}.podio-logo{width:64px;height:44px;padding:4px;margin-bottom:6px}.podio-nombre{font-size:12px;font-weight:700;color:var(--tinta);text-align:center;line-height:1.15;margin-bottom:6px;min-height:28px;display:flex;align-items:flex-end}.podio-escalon{width:80%;border-radius:12px 12px 0 0;position:relative;display:flex;align-items:center;justify-content:center;color:#fff}.puesto-1 .podio-escalon{height:150px;background:linear-gradient(180deg,var(--oro-1),var(--oro-2));box-shadow:0 6px 14px #d4a01740}.puesto-2 .podio-escalon{height:110px;background:linear-gradient(180deg,var(--plata-1),var(--plata-2))}.puesto-3 .podio-escalon{height:84px;background:linear-gradient(180deg,var(--bronce-1),var(--bronce-2))}.puesto-1 .podio-nombre{font-size:13px;font-weight:800}.podio-pct{position:absolute;top:8px;font-size:12px;font-weight:800;background:#ffffff38;padding:2px 9px;border-radius:999px}.podio-num{font-family:var(--fuente-titulos);font-size:38px;font-weight:900;margin-top:16px}.puesto-1 .podio-num{font-size:46px}.rankcards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rankcard{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;border:1px solid var(--borde);background:linear-gradient(135deg,#fff,#f8fafc)}.rankcard-num{width:30px;height:30px;flex-shrink:0;border-radius:50%;background:var(--serie-1);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}.rank-1{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#60a5fa}.rank-2{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-color:var(--borde-2)}.rank-3{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#c4b5fd}.rank-2 .rankcard-num{background:#64748b}.rank-3 .rankcard-num{background:#7c3aed}.rankcard-cuerpo{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.rankcard-texto{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.rankcard-texto>div{display:flex;flex-direction:column;min-width:0}.rankcard-etiqueta{font-size:10px;font-weight:800;letter-spacing:.6px;color:var(--tinta-3)}.rankcard-label{font-size:13px;font-weight:700;color:var(--tinta);line-height:1.25}.rankcard-pct{font-size:11px;font-weight:800;background:var(--tinta);color:#fff;padding:3px 8px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.rankcard-pista{height:8px;background:var(--pista);border-radius:999px;overflow:hidden}.rankcard-barra{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--serie-1),var(--serie-1-claro))}.rank-2 .rankcard-barra{background:linear-gradient(90deg,#475569,#94a3b8)}.rank-3 .rankcard-barra{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.tabla-scroll{overflow:auto;max-height:520px;border:1px solid var(--borde);border-radius:10px}.pivot{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}.pivot th,.pivot td{padding:7px 10px;border-bottom:1px solid var(--borde);white-space:nowrap}.pivot thead th{position:sticky;top:0;z-index:2;background:var(--banda);color:#fff;font-weight:600;text-align:left}.pivot tbody th{text-align:left;font-weight:600;color:var(--tinta);position:sticky;left:0;background:var(--superficie);z-index:1;max-width:320px;overflow:hidden;text-overflow:ellipsis}.pivot .num{text-align:right;font-variant-numeric:tabular-nums}.pivot .total{font-weight:700;background:#f8fafc}.celda-calor{background:color-mix(in srgb,var(--serie-1) calc(var(--t) * 80%),#ffffff);color:var(--tinta)}.celda-calor[data-oscuro]{color:#fff}.cero{color:var(--borde-2)}.fila-padre th{font-weight:700}.fila-hija th{padding-left:34px;font-weight:500;color:var(--tinta-2)}.fila-hija td:not(.celda-calor),.fila-hija th{background:#fbfcfe}.expandir{width:20px;height:20px;border:1px solid var(--borde-2);background:var(--superficie);border-radius:5px;margin-right:8px;line-height:1;padding:0;color:var(--tinta-2);font-weight:700}.celda-progreso{min-width:170px}.progreso{position:relative;height:18px;background:var(--pista);border-radius:999px;overflow:hidden}.progreso-barra{height:100%;background:linear-gradient(90deg,var(--serie-1),var(--serie-1-claro));border-radius:999px}.progreso span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--tinta);font-variant-numeric:tabular-nums}.apilado{height:100%;display:flex;flex-direction:column;gap:10px}.apilado-fila{display:grid;grid-template-columns:96px 1fr 52px;align-items:center;gap:10px}.apilado-label{font-size:12.5px;font-weight:600;color:var(--tinta-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apilado-barra{display:flex;height:16px;border-radius:6px;overflow:hidden;gap:2px;background:var(--superficie)}.seg-si{background:var(--serie-1)}.seg-no{background:var(--gris-serie)}.apilado-valor{text-align:right;font-weight:700;font-size:12.5px;font-variant-numeric:tabular-nums}.apilado-leyenda{margin-top:auto;padding-top:10px;border-top:1px solid var(--borde);display:flex;align-items:center;flex-wrap:wrap;gap:14px}.apilado-leyenda-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--tinta-2)}.apilado-punto{width:10px;height:10px;border-radius:3px;flex-shrink:0}.apilado-leyenda-nota{font-size:11.5px;color:var(--tinta-3);margin-left:auto}.galeria{padding:16px 0}.galeria-barra{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.galeria-barra p{margin:0;color:var(--tinta-2)}.galeria-barra-pie{margin-top:16px;justify-content:flex-end}.paginador{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--tinta-2)}.paginador button{border:1px solid var(--borde-2);background:var(--superficie);border-radius:8px;padding:6px 12px;color:var(--acento);font-weight:600}.galeria-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.afiche{border:1px solid var(--borde);background:var(--superficie);border-radius:var(--radio);padding:0;overflow:hidden;text-align:left;display:flex;flex-direction:column;box-shadow:var(--sombra);transition:transform .15s,box-shadow .15s}.afiche:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a24}.afiche-img{aspect-ratio:4 / 5;background:var(--pista);display:flex;align-items:center;justify-content:center}.afiche-img img{width:100%;height:100%;object-fit:contain}.afiche-info{padding:10px 12px 12px;display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--tinta-2);min-width:0}.afiche-info strong{font-size:13px;color:var(--tinta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.afiche-tienda{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.afiche-fecha{color:var(--tinta-3)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172ab3;display:flex;align-items:center;justify-content:center;padding:16px}.modal-contenido{position:relative;background:var(--superficie);border-radius:18px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);max-width:900px;width:100%;max-height:92vh;overflow:auto}.modal-img{width:100%;height:100%;max-height:88vh;object-fit:contain;background:var(--pista)}.modal-info{padding:24px}.modal-info h3{margin:0 0 14px;font-family:var(--fuente-titulos)}.modal-info dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0 0 18px;font-size:13px}.modal-info dt{color:var(--tinta-3);font-weight:600}.modal-info dd{margin:0;color:var(--tinta)}.modal-cerrar{position:absolute;top:10px;right:10px;border:0;background:var(--superficie);border-radius:50%;padding:6px;box-shadow:var(--sombra)}.modal-cerrar img{width:18px;height:18px}.modal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:210;width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;background:var(--superficie);color:var(--tinta);box-shadow:var(--sombra);font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;padding-bottom:3px}.modal-nav:hover:not(:disabled){color:var(--acento)}.modal-nav:disabled{opacity:.3;cursor:default}.modal-nav.prev{left:16px}.modal-nav.next{right:16px}@media (max-width: 760px){.modal-nav{width:38px;height:38px;font-size:22px}.modal-nav.prev{left:6px}.modal-nav.next{right:6px}}.modal-otros{margin-top:20px;padding-top:16px;border-top:1px solid var(--borde-2)}.modal-otros h4{margin:0 0 10px;font-size:12.5px;color:var(--tinta-3);font-weight:600}.modal-otros-cargando{margin-top:16px;font-size:12.5px;color:var(--tinta-3)}.modal-otros-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}.modal-otros-item{border:1px solid var(--borde-2);border-radius:10px;overflow:hidden;background:var(--hoja);display:flex;flex-direction:column}.modal-otros-item img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.modal-otros-item span{font-size:10.5px;padding:3px 4px;color:var(--tinta-2);text-align:center}.modal-otros-item:hover{border-color:var(--acento)}.store-panel{display:flex;flex-direction:column;max-height:90vh;max-width:480px;width:100%;overflow:hidden;padding:24px}.store-head{flex:none}.store-meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.store-tag{font-size:11.5px;padding:3px 9px;border-radius:999px;background:var(--hoja);color:var(--tinta-2)}.store-combos{flex:1 1 auto;min-height:0;overflow-y:auto;margin-top:16px;display:flex;flex-direction:column;gap:10px;padding-right:4px}.store-combo{display:flex;gap:10px;align-items:flex-start}.store-combo .img{flex:none;width:56px;height:56px;border-radius:8px;overflow:hidden;background:var(--pista)}.store-combo .img img{width:100%;height:100%;object-fit:cover;display:block}.store-combo .info{font-size:13px;line-height:1.5;min-width:0}.store-combo .info strong{display:block}.pie{text-align:center;font-size:11.5px;color:var(--tinta-3);padding:8px 0 4px}@media (max-width: 1180px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-resumen,.grid-2-1,.grid-1-2{grid-template-columns:minmax(0,1fr)}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.pagina{padding:0}.hoja{border-radius:0;padding:14px 16px 8px}.barra-fija{margin:0 -16px;padding:8px 16px 10px;position:static}.header-logo{height:44px}.header-acciones{margin-left:0}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.grid-3,.seccion{grid-template-columns:minmax(0,1fr)}.seccion-banda{justify-content:flex-start;padding:10px 16px}.seccion-banda span{writing-mode:horizontal-tb;transform:none;font-size:18px;position:static}.seccion-contenido{padding:12px}.filtro{max-width:none;flex-basis:140px}.modal-contenido{grid-template-columns:minmax(0,1fr)}}body{font-feature-settings:"tnum" 1,"cv05" 1}:focus-visible{outline:2px solid var(--acento);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.hoja{box-shadow:var(--sombra-2)}.header-logo{height:52px}.marca-tag{display:flex;flex-direction:column;gap:1px;line-height:1.05}.marca-tag strong{font-size:17px;font-weight:900;letter-spacing:-.02em;color:var(--tinta)}.marca-tag span{font-size:11px;font-weight:600;color:var(--tinta-3);text-transform:uppercase;letter-spacing:.08em}.theme-toggle{width:38px;height:38px;border-radius:10px;border:1px solid var(--borde-2);background:var(--superficie);color:var(--tinta-2);display:inline-flex;align-items:center;justify-content:center;font-size:17px}.theme-toggle:hover{border-color:var(--acento);color:var(--acento)}.espacios{display:flex;gap:4px;flex-wrap:wrap;background:var(--superficie);border:1px solid var(--borde);border-radius:14px;padding:5px;margin:4px 0 0}.espacio-tab{border:0;background:transparent;padding:9px 15px;border-radius:10px;color:var(--tinta-2);font-weight:600;font-size:13.5px;display:inline-flex;align-items:center;gap:8px;transition:background .15s,color .15s}.espacio-tab:hover{background:var(--pista)}.espacio-tab.activo{background:var(--marca);color:#fff;box-shadow:var(--sombra)}:root[data-theme=dark] .espacio-tab.activo{color:#07142e;background:var(--acento)}.espacio-tab .punto-tab{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55}.tabla-regiones-scroll{height:340px;max-height:340px}.kpi-bar{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;background:var(--superficie);border:1px solid var(--borde);border-radius:16px;box-shadow:var(--sombra);margin:16px 0 4px;overflow:hidden}.kpi-cell{padding:16px 18px;display:flex;flex-direction:column;gap:3px;justify-content:center;min-width:0}.kpi-cell+.kpi-cell{border-left:1px solid var(--borde)}.kpi-cell-ring{flex-direction:row;align-items:center;gap:14px}.kpi-ring-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.kpi-anillo{flex-shrink:0}.kpi-anillo-num{fill:var(--tinta);font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}.kpi-cell-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.kpi-cell-num{font-size:25px;font-weight:800;color:var(--tinta);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.05}.kpi-cell-lbl{font-size:12.5px;font-weight:700;color:var(--tinta)}.kpi-cell-ring .kpi-cell-lbl{font-size:13.5px}.kpi-cell-sub{font-size:11.5px;color:var(--tinta-3)}.kpi-combo-fotos{position:relative;width:58px;height:40px;flex-shrink:0}.kpi-combo-foto{position:absolute;top:2px;width:34px;height:34px;border-radius:9px;overflow:hidden;background:var(--pista);border:2px solid var(--superficie);box-shadow:0 3px 8px #0f172a2e}.kpi-combo-foto:nth-child(1){left:0;z-index:1;transform:rotate(-9deg)}.kpi-combo-foto:nth-child(2){left:21px;z-index:2;transform:rotate(8deg)}.kpi-combo-foto img{width:100%;height:100%;object-fit:cover}.kpi-bar-portafolio{grid-template-columns:1fr 1fr 1fr 1fr 1.5fr}.kpi-bar-comercial{grid-template-columns:1fr 1.3fr 1fr 1.1fr}.kpi-bar-ejecucion{grid-template-columns:repeat(4,1fr)}.kpi-cell-nombre{font-size:16px;font-weight:800;color:var(--tinta);letter-spacing:-.01em;line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kpi-mini-img{flex-shrink:0;width:38px;height:38px;border-radius:10px;overflow:hidden;background:var(--pista);border:2px solid var(--superficie);box-shadow:0 3px 8px #0f172a2e;display:flex;align-items:center;justify-content:center}.kpi-mini-img img{width:100%;height:100%;object-fit:cover}@media (max-width: 900px){.kpi-bar{grid-template-columns:1fr}.kpi-cell+.kpi-cell{border-left:0;border-top:1px solid var(--borde)}}.panel{margin-bottom:18px}.panel-head{display:flex;align-items:baseline;gap:12px;margin:6px 2px 0;flex-wrap:wrap}.panel-head h2{margin:0;font-size:18px;font-weight:800;color:#fff;letter-spacing:-.01em}:root:not([data-theme=dark]) .contenido-espacio .panel-head h2{color:var(--tinta)}.panel-head p{margin:0;font-size:13px;color:var(--tinta-3)}.contenido-espacio{padding:4px 0 0;display:flex;flex-direction:column;gap:14px}.contenido-espacio+.contenido-espacio{margin-top:14px;padding-top:0}.bento{display:grid;gap:14px}.bento-2{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-3{grid-template-columns:repeat(3,minmax(0,1fr))}.bento-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.bento-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.card.ancho{grid-column:1 / -1}.card-nota{font-size:12px;color:var(--tinta-3);margin:8px 0 0}.chip-inline{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.chip-oportunidad{background:var(--oportunidad-suave);color:var(--oportunidad)}.chip-positivo{background:var(--positivo-suave);color:var(--positivo)}.chip-negativo{background:var(--negativo-suave);color:var(--negativo)}.funnel{display:flex;flex-direction:column;gap:10px;padding:6px 0}.funnel-step{display:grid;grid-template-columns:1fr;gap:4px}.funnel-bar-wrap{position:relative;height:46px;background:var(--pista);border-radius:10px;overflow:hidden}.funnel-bar{height:100%;border-radius:10px;display:flex;align-items:center;padding:0 14px;color:#fff;font-weight:700;background:linear-gradient(90deg,var(--marca),var(--serie-1));transition:width .5s ease;min-width:3%}.funnel-step:nth-child(2) .funnel-bar{background:linear-gradient(90deg,var(--serie-1),var(--serie-1-claro))}.funnel-step:nth-child(3) .funnel-bar{background:linear-gradient(90deg,var(--positivo),#34d399)}.funnel-meta{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:10px}.funnel-label{font-size:13px;font-weight:600;color:var(--tinta-2)}.funnel-val{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:14px;font-weight:800;color:var(--tinta);font-variant-numeric:tabular-nums}.funnel-val small{font-weight:600;color:var(--tinta-3)}.funnel-composicion{display:flex;flex-direction:column;gap:8px;margin-top:4px;padding-top:14px;border-top:1px solid var(--borde)}.funnel-composicion-titulo{font-size:12px;font-weight:700;color:var(--tinta-2)}.composicion-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--pista)}.composicion-seg-0{background:var(--serie-1)}.composicion-seg-1{background:var(--serie-3)}.composicion-leyenda{display:flex;flex-wrap:wrap;gap:4px 16px;list-style:none;margin:0;padding:0;font-size:12px;color:var(--tinta-2)}.composicion-leyenda li{display:flex;align-items:center;gap:6px}.composicion-leyenda strong{color:var(--tinta)}.composicion-n{color:var(--tinta-3)}.composicion-punto{width:9px;height:9px;border-radius:999px;flex-shrink:0}.composicion-punto-0{background:var(--serie-1)}.composicion-punto-1{background:var(--serie-3)}.barlist-foto{width:42px;height:42px;border-radius:11px;overflow:hidden;flex-shrink:0;background:var(--pista);border:1px solid var(--borde);display:flex;align-items:center;justify-content:center}.barlist-foto img{width:100%;height:100%;object-fit:cover}.barlist-foto-vacia{font-weight:800;color:var(--tinta-3);font-size:17px}.rankcard-logo{width:44px;height:34px;padding:3px;flex-shrink:0}.rankcard.rank-1 .rankcard-num{background:linear-gradient(135deg,var(--oro-1),var(--oro-2));color:#4a3a05;box-shadow:0 2px 8px #d4a01759}.rankcard.rank-2 .rankcard-num{background:linear-gradient(135deg,var(--plata-1),var(--plata-2));color:#33383f}.rankcard.rank-3 .rankcard-num{background:linear-gradient(135deg,var(--bronce-1),var(--bronce-2));color:#fff}.chart-wrap{position:relative}.alerta-caida{position:absolute;top:4px;right:4px;z-index:3;background:var(--negativo-suave);border:1px solid color-mix(in srgb,var(--negativo) 35%,transparent);border-radius:10px;padding:7px 11px;box-shadow:var(--sombra);display:flex;flex-direction:column;gap:3px;max-width:230px}.alerta-caida .a-hd{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:var(--negativo)}.alerta-caida .a-hd .a-ico{font-size:13px;line-height:1}.alerta-caida .a-row{display:flex;justify-content:space-between;gap:12px;font-size:11.5px;color:var(--tinta-2)}.alerta-caida .a-row b{color:var(--negativo);font-variant-numeric:tabular-nums}.alerta-sube .a-hd,.alerta-sube .a-row b{color:var(--positivo)}.alerta-sube{background:var(--positivo-suave);border-color:color-mix(in srgb,var(--positivo) 32%,transparent)}.badge-prom{position:absolute;top:4px;right:4px;z-index:3;background:var(--superficie);border:1px solid var(--borde);border-radius:10px;padding:7px 11px;box-shadow:var(--sombra);display:flex;flex-direction:column;gap:3px;max-width:240px}.badge-prom .bp-hd{font-size:12px;font-weight:800;color:var(--tinta)}.badge-prom .bp-row{display:flex;justify-content:space-between;gap:14px;font-size:11.5px;color:var(--tinta-2)}.badge-prom .bp-row span{text-transform:capitalize}.badge-prom .bp-row b{color:var(--tinta);font-variant-numeric:tabular-nums}.badge-prom .bp-actual b{color:var(--serie-1)}.heat-toggle{display:inline-flex;gap:2px;padding:2px;margin-bottom:10px;background:var(--pista);border-radius:999px}.heat-toggle button{border:none;background:transparent;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;color:var(--tinta-3);cursor:pointer}.heat-toggle button.activo{background:var(--superficie);color:var(--tinta);box-shadow:0 1px 3px #0000001f}.heat-wrap{overflow:auto;max-height:620px;border:1px solid var(--borde);border-radius:10px}.heat{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.heat th,.heat td{padding:6px 8px;border-bottom:1px solid var(--borde);white-space:nowrap;text-align:center}.heat thead th{position:sticky;top:0;z-index:2;background:var(--banda);color:#fff;font-weight:600}.heat thead th.esquina,.heat tbody th{position:sticky;left:0;z-index:1;background:var(--superficie);text-align:left;font-weight:700;color:var(--tinta);max-width:220px;overflow:hidden;text-overflow:ellipsis}.heat thead th.esquina{z-index:3}.heat-cell{position:relative;cursor:default;font-variant-numeric:tabular-nums;border-radius:3px}.heat-cell small{display:block;font-size:10px;opacity:.7}.heat tbody th .heat-sub{font-weight:500;color:var(--tinta-3);font-size:11px}.heat-flag{display:inline-block;margin-left:6px;font-size:9.5px;font-weight:800;letter-spacing:.02em;color:var(--oportunidad);background:var(--oportunidad-suave);padding:1px 6px;border-radius:999px;vertical-align:middle}.heat-total{font-weight:800}.heat-leyenda{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--tinta-3);margin-top:8px;flex-wrap:wrap}.heat-escala{height:10px;width:120px;border-radius:999px}.escala-op{background:linear-gradient(90deg,var(--positivo),#fff6e6,var(--oportunidad))}.escala-con{background:linear-gradient(90deg,var(--superficie),color-mix(in srgb,var(--serie-1) 45%,var(--superficie)),var(--serie-1))}.chart-pie-nota{text-align:center;font-size:11.5px;color:var(--tinta-3);margin:2px 0 0}.escala-lift{background:linear-gradient(90deg,var(--pista),var(--serie-1-claro),var(--marca))}.box-row{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:12px;padding:5px 0}.box-label{font-size:12.5px;font-weight:600;color:var(--tinta-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.box-svg{width:100%}.box-whisker{stroke:var(--tinta-3);stroke-width:1.5}.box-rect{fill:color-mix(in srgb,var(--serie-1) 22%,var(--superficie));stroke:var(--serie-1);stroke-width:1.5}.box-med{stroke:var(--marca);stroke-width:2.5}.box-med-label{font-size:10px;font-weight:700;fill:var(--marca);font-variant-numeric:tabular-nums}.podio-foto{width:52px;height:52px;border-radius:14px;overflow:hidden;flex-shrink:0;background:var(--pista);border:1px solid var(--borde);display:flex;align-items:center;justify-content:center;margin-bottom:6px}.podio-foto img{width:100%;height:100%;object-fit:cover}.podio-foto-vacia{font-weight:800;color:var(--tinta-3);font-size:20px}.barlist-clicable,.columna-clicable{cursor:pointer}.columna.activo{fill:var(--marca)}.chart-columnas{height:100%;display:flex;flex-direction:column;justify-content:flex-end}.barlist-item.activo{background:var(--marca-suave, var(--hoja));outline:1.5px solid var(--marca)}.barlist-item.activo .barlist-barra{background:linear-gradient(90deg,var(--marca),var(--serie-1))}.chip-quitar{border:none;cursor:pointer;margin-bottom:8px;background:var(--oportunidad-suave);color:var(--oportunidad)}.chip-quitar:hover{filter:brightness(.95)}.boton-csv{border:1px solid var(--borde);background:var(--superficie);color:var(--tinta-2);font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.boton-csv:hover{border-color:var(--marca);color:var(--marca)}.th-ordenar{all:unset;display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:inherit;font:inherit;font-weight:inherit}.th-ordenar:hover{opacity:.8}.th-flecha{font-size:9px;opacity:.6}.th-ordenar.activo .th-flecha{opacity:1}.pivot-logo{display:inline-flex;width:28px;height:20px;padding:2px;margin-right:6px;vertical-align:middle}.box-out{fill:var(--negativo);opacity:.55}.alert-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.alert-tabs-fila{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.alert-tabs-fila .alert-tabs{margin-bottom:0}.alert-tab{border:1px solid var(--borde-2);background:var(--superficie);border-radius:12px;padding:8px 12px;display:flex;align-items:center;gap:8px;color:var(--tinta-2);font-weight:600}.alert-tab .n{font-variant-numeric:tabular-nums;font-weight:800;padding:1px 8px;border-radius:999px;background:var(--pista);font-size:12px}.alert-tab.activo{border-color:var(--marca);box-shadow:inset 0 0 0 1px var(--marca);color:var(--tinta)}.alert-tab.t-oportunidad.activo{border-color:var(--oportunidad);box-shadow:inset 0 0 0 1px var(--oportunidad)}.alert-tab.t-negativo.activo{border-color:var(--negativo);box-shadow:inset 0 0 0 1px var(--negativo)}.alert-tab.t-oportunidad .n{background:var(--oportunidad-suave);color:var(--oportunidad)}.alert-tab.t-negativo .n{background:var(--negativo-suave);color:var(--negativo)}.alert-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:520px;overflow:auto}.alert-item{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--borde);border-radius:10px;background:var(--superficie);text-align:left;width:100%}.alert-item:hover{border-color:var(--acento)}.alert-thumb{width:40px;height:50px;border-radius:6px;object-fit:contain;background:var(--pista)}.alert-main{min-width:0}.alert-main strong{display:block;font-size:13px;color:var(--tinta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-main span{font-size:11.5px;color:var(--tinta-3)}.alert-right{text-align:right;font-size:12px;color:var(--tinta-2);white-space:nowrap}.mapa-wrap{position:relative;height:560px;border-radius:14px;overflow:hidden;border:1px solid var(--borde);background:var(--pista)}.mapa-wrap .mapa-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mapa-leyenda{position:absolute;left:12px;bottom:12px;z-index:5;background:var(--superficie);border:1px solid var(--borde);border-radius:12px;padding:10px 12px;box-shadow:var(--sombra);font-size:12px}.mapa-leyenda ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.mapa-leyenda li{display:flex;align-items:center;gap:8px;color:var(--tinta-2)}.mapa-punto{width:12px;height:12px;border-radius:50%}.mapa-fallback{padding:18px}.mapa-aviso{background:var(--oportunidad-suave);color:var(--oportunidad);border:1px solid color-mix(in srgb,var(--oportunidad) 30%,transparent);border-radius:12px;padding:12px 14px;margin-bottom:14px;font-size:13px;font-weight:500}.mapa2{display:grid;grid-template-columns:236px minmax(0,1fr) 288px;gap:12px;height:74vh;min-height:540px;margin-top:8px}.mapa2-menu,.mapa2-rank{background:var(--superficie);border:1px solid var(--borde);border-radius:14px;padding:12px;overflow:auto}.mapa2-wrap{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--borde);background:var(--pista)}.mapa2 .mapa2-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.menu-hd{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tinta-3);margin:12px 2px 6px}.menu-hd:first-child{margin-top:2px}.menu-ops{display:flex;flex-direction:column;gap:3px}.menu-op{display:flex;align-items:center;gap:9px;border:0;background:transparent;border-radius:9px;padding:7px 8px;text-align:left;color:var(--tinta-2);width:100%}.menu-op:hover{background:var(--pista)}.menu-op.on{background:color-mix(in srgb,var(--marca) 12%,var(--superficie));color:var(--tinta)}.menu-op .radio{width:13px;height:13px;border-radius:50%;border:2px solid var(--borde-2);flex-shrink:0}.menu-op.on .radio{border-color:var(--marca);background:radial-gradient(circle,var(--marca) 44%,transparent 46%)}.menu-op span{display:flex;flex-direction:column;min-width:0;font-size:13px;font-weight:600}.menu-op span small{font-weight:500;color:var(--tinta-3);font-size:11px}.seg.vert{display:flex;flex-direction:column;gap:3px;background:var(--pista);border-radius:10px;padding:3px}.seg.vert button{border:0;background:transparent;border-radius:8px;padding:8px 10px;font-weight:600;color:var(--tinta-2);text-align:left;font-size:13px}.seg.vert button.on{background:var(--marca);color:#fff}:root[data-theme=dark] .seg.vert button.on{color:#07142e;background:var(--acento)}.mapa2-nota{font-size:11.5px;color:var(--tinta-3);margin:12px 2px 0;line-height:1.4}.mapa2-vacio{padding:20px}.mapa2-ley{position:absolute;left:12px;bottom:12px;right:auto;max-width:260px}.ley-t{font-size:12px;font-weight:700;color:var(--tinta);margin-bottom:6px}.ley-t span{font-weight:500;color:var(--tinta-3)}.ley-rampa{height:10px;border-radius:999px}.ley-lbl{display:flex;justify-content:space-between;font-size:11px;color:var(--tinta-2);font-variant-numeric:tabular-nums;margin-top:3px}.rank-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.rank-kpis>div{background:var(--pista);border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:2px}.rank-kpis b{font-size:17px;font-weight:800;color:var(--tinta);font-variant-numeric:tabular-nums}.rank-kpis b.hi{color:var(--positivo)}.rank-kpis span{font-size:10.5px;color:var(--tinta-3);line-height:1.2}.rank-sub{font-size:11.5px;color:var(--tinta-3);margin:2px 2px 8px}.rank-list{display:flex;flex-direction:column;gap:3px}.rank-row{display:grid;grid-template-columns:1fr 70px auto;align-items:center;gap:8px;border:0;background:transparent;border-radius:8px;padding:6px 8px;text-align:left;width:100%}.rank-row:hover{background:var(--pista)}.rank-name{display:flex;flex-direction:column;min-width:0;font-size:12.5px;font-weight:700;color:var(--tinta);overflow:hidden}.rank-name small{font-weight:500;color:var(--tinta-3);font-size:10.5px}.rank-bar{height:8px;background:var(--pista);border-radius:999px;overflow:hidden}.rank-bar span{display:block;height:100%;border-radius:999px}.rank-val{font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--tinta);white-space:nowrap}.tt{position:fixed;z-index:120;pointer-events:none;background:#0f172a;color:#fff;border-radius:10px;padding:8px 10px;font-size:12px;max-width:240px;box-shadow:0 8px 24px #00000059;line-height:1.35}.tt-t{font-weight:700;margin-bottom:3px}.tt .dim{color:#94a3b8}.tt b{color:#fff}@media (max-width: 1000px){.mapa2{grid-template-columns:1fr;height:auto}.mapa2-wrap{height:60vh;min-height:380px}.mapa2-menu,.mapa2-rank{max-height:none}}.store-panel{padding:22px;max-width:640px}.store-head{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.store-head h3{margin:0;font-size:19px}.store-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.store-tag{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--pista);color:var(--tinta-2)}.store-combos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.store-combo{border:1px solid var(--borde);border-radius:10px;overflow:hidden;background:var(--superficie)}.store-combo .img{aspect-ratio:4/5;background:var(--pista)}.store-combo .img img{width:100%;height:100%;object-fit:contain}.store-combo .info{padding:6px 8px;font-size:11px}.store-combo .info strong{display:block;color:var(--tinta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-tienda{background:none;border:0;color:var(--acento);font-weight:700;font-size:12px;padding:0;text-decoration:underline}.badge{font-size:10px;font-weight:800;padding:2px 7px;border-radius:999px;letter-spacing:.02em}.badge-borrador{background:var(--oportunidad-suave);color:var(--oportunidad)}.badge-domicilio{background:var(--positivo-suave);color:var(--positivo)}.seccion-contenido,.pivot .total{background:var(--superficie-2)}.fila-hija td:not(.celda-calor),.fila-hija th{background:var(--superficie-2)}.rankcard{background:var(--superficie)}.rank-1{background:color-mix(in srgb,var(--serie-1) 12%,var(--superficie))}.rank-2{background:var(--superficie-2)}.rank-3{background:color-mix(in srgb,#7c3aed 12%,var(--superficie))}.celda-calor{background:color-mix(in srgb,var(--serie-1) calc(var(--t) * 80%),var(--superficie))}.afiche-img,.modal-img{background:var(--pista)}:root[data-theme=dark] .aviso-error{background:var(--negativo-suave);color:var(--negativo);border-color:color-mix(in srgb,var(--negativo) 35%,transparent)}:root[data-theme=dark] .kpi-destacado .kpi-valor,:root[data-theme=dark] .kpi-destacado .kpi-label{color:#07142e}:root[data-theme=dark] .tab.activo,:root[data-theme=dark] .espacio-tab.activo{color:#07142e}@media (max-width: 1100px){.bento-2,.bento-3,.bento-2-1,.bento-1-2{grid-template-columns:minmax(0,1fr)}}@media (max-width: 760px){.header-logo{height:40px}.espacios{width:100%;overflow-x:auto;flex-wrap:nowrap}.box-row{grid-template-columns:1fr}.box-label{margin-bottom:-4px}.mapa-wrap{height:420px}.panel-head h2{color:var(--tinta)}}:root{--ext: #a67c00;--mal: #dc2626;--ok: #0d9488;--alto-mapa: min(72vh, 680px)}:root[data-theme=dark]{--ext: #e0b100;--mal: #f87171;--ok: #2dd4bf}.hoja{max-width:1480px}.c-ok{color:var(--ok)!important}.c-mal{color:var(--mal)!important}.c-ext{color:var(--ext)!important}.cab-glux{background:linear-gradient(120deg,var(--banda),var(--banda-2));margin:-20px -24px 14px;padding:12px 24px;border-radius:20px 20px 0 0}.cab-glux .header-logo{height:54px}.cab-glux .marca-tag strong{color:#fff}.cab-glux .marca-tag span{color:#ffffffc7}.cab-glux .marca-tag{border-color:#ffffff47}.cab-glux .actualizado span{color:#ffffffb3}.cab-glux .actualizado strong{color:#fff}.cab-glux .theme-toggle{background:#ffffff1f;color:#fff;border-color:#ffffff4d}.cab-glux .boton-prim{background:#fff;color:var(--marca);border-color:#fff}:root[data-theme=dark] .cab-glux .boton-prim{color:#0a2a66}.cab-glux .boton-prim img{filter:none}.atajos{display:flex;gap:4px;align-self:flex-end}.atajos button{border:1px solid var(--borde-2);background:var(--superficie);color:var(--tinta-2);border-radius:8px;padding:7px 9px;font-size:12px;font-weight:600}.atajos button:hover{border-color:var(--acento);color:var(--acento)}.kpi-tira{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);margin:12px 0;box-shadow:var(--sombra);overflow:hidden}.kpi-tira-4{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-c{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-left:1px solid var(--borde);min-width:0}.kpi-c:first-child{border-left:0}.kpi-c strong{font-size:25px;font-weight:800;line-height:1.1;color:var(--tinta);font-variant-numeric:tabular-nums}.kpi-c span{font-size:12.5px;font-weight:700;color:var(--tinta-2)}.kpi-c small{font-size:11.5px;color:var(--tinta-3)}.mapa-lienzo,.mapa-lienzo.maplibregl-map{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mapa-tt{position:absolute;z-index:6;pointer-events:none;background:var(--superficie);color:var(--tinta);border:1px solid var(--borde-2);border-radius:10px;padding:8px 11px;box-shadow:var(--sombra-2);font-size:12px;display:flex;flex-direction:column;gap:2px;max-width:280px}.mapa-tt small{color:var(--acento);font-weight:600;margin-top:2px}.mapa-sin-datos{position:absolute;left:50%;top:45%;transform:translate(-50%);z-index:4;background:var(--superficie);color:var(--tinta-2);border-radius:10px;padding:10px 16px;font-weight:600;box-shadow:var(--sombra);pointer-events:none}.mapa-aviso-flot{position:absolute;top:8px;left:8px;right:60px;z-index:5}.mv{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:12px;margin-bottom:14px}.mv-mapa,.ruta-mapa{position:relative;height:var(--alto-mapa);border-radius:var(--radio);overflow:hidden;border:1px solid var(--borde);background:var(--pista)}.mv-leyenda{position:absolute;left:10px;top:10px;z-index:3;background:var(--superficie);border:1px solid var(--borde);border-radius:12px;padding:8px;box-shadow:var(--sombra);width:228px}.ley-titulo{font-size:12px;font-weight:800;color:var(--tinta);padding:2px 6px 6px}.ley-titulo small{display:block;font-weight:500;color:var(--tinta-3)}.ley-fila{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:6px;width:100%;background:none;border:0;border-radius:7px;padding:5px 6px;font-size:12.5px;color:var(--tinta);text-align:left}button.ley-fila:hover{background:var(--pista)}.ley-fila i{display:block;border-radius:50%;border:1.5px solid #fff;box-shadow:0 0 0 1px #0f1b3440;justify-self:center}.ley-fila strong{font-variant-numeric:tabular-nums}.ley-fila.apagado{opacity:.42}.ley-fila.apagado span{text-decoration:line-through}.ley-fila.fija{padding:3px 6px;grid-template-columns:18px 1fr}.mv-lista{display:flex;flex-direction:column;height:var(--alto-mapa);background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden}.mv-lista header{padding:12px 14px 8px;border-bottom:1px solid var(--borde)}.mv-lista h3,.ruta-embs h3,.ruta-lista h3{margin:0;font-size:14px;font-weight:800;color:var(--tinta)}.mv-lista header p{margin:2px 0 0;font-size:11.5px;color:var(--tinta-3)}.mv-lista ul{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.mv-lista li button{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:9px;align-items:start;width:100%;padding:9px 14px;background:none;border:0;border-bottom:1px solid var(--borde);text-align:left;color:var(--tinta)}.mv-lista li button:hover{background:var(--superficie-2)}.mv-lista li i{width:11px;height:11px;border-radius:50%;margin-top:3px}.mv-item{display:flex;flex-direction:column;min-width:0;gap:1px}.mv-item strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mv-item small{font-size:11px;color:var(--tinta-3)}.mv-item .mv-tipo{color:var(--tinta-2);font-weight:600}.mv-hora{font-size:11px;color:var(--tinta-3);text-align:right;font-variant-numeric:tabular-nums}.modal{align-items:stretch;justify-content:flex-end;padding:0}.visita-panel{position:relative;width:min(620px,100vw);height:100%;overflow-y:auto;background:var(--superficie);color:var(--tinta);padding:22px 24px 32px;box-shadow:var(--sombra-2)}.visita-cab h3{margin:8px 40px 2px 0;font-size:20px;font-weight:800}.visita-cab p{margin:0;font-size:12.5px;color:var(--tinta-3)}.chip-tipo{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--tinta);background:var(--pista);border-radius:999px;padding:4px 10px}.chip-tipo i{width:10px;height:10px;border-radius:50%;background:var(--c)}.visita-ficha{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:16px 0;padding:14px;background:var(--superficie-2);border:1px solid var(--borde);border-radius:12px}.visita-ficha dt{font-size:11px;color:var(--tinta-3);font-weight:600}.visita-ficha dd{margin:1px 0 0;font-size:13px;font-weight:600}.ficha-ancha{grid-column:1 / -1}.visita-sub{margin:20px 0 10px;font-size:14px;font-weight:800}.visita-sub span{font-weight:600;color:var(--tinta-3);margin-left:4px}.visita-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.visita-foto{padding:0;border:1px solid var(--borde);background:var(--superficie-2);border-radius:10px;overflow:hidden;text-align:left;color:var(--tinta-2)}.visita-foto:hover{border-color:var(--acento)}.visita-foto img{display:block;width:100%;height:170px;object-fit:cover;background:var(--pista)}.visita-foto span{display:block;font-size:11px;padding:6px 8px;line-height:1.25}.visita-seccion{margin-bottom:12px}.visita-seccion h5{margin:0 0 4px;font-size:11px;letter-spacing:.05em;color:var(--tinta-3);font-weight:800}.visita-resp{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid var(--borde);font-size:13px;color:var(--tinta-2)}.visita-resp strong{color:var(--tinta);text-align:right}.resp-si{color:var(--ok)!important}.resp-no{color:var(--mal)!important}.visor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#050a19eb;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 70px;gap:10px}.visor img{max-width:100%;max-height:86vh;object-fit:contain;border-radius:8px}.visor-claro img{background:#fff;padding:12px}.visor p{margin:0;color:#fff;font-size:13px}.ruta{margin-bottom:14px}.ruta-barra{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:12px 0 10px}.ruta-dia{display:flex;align-items:flex-end;gap:6px}.ruta-dia>button{width:34px;height:36px;border:1px solid var(--borde-2);background:var(--superficie);color:var(--tinta);border-radius:9px;font-size:18px;line-height:1}.ruta-dia>button.ruta-hoy{width:auto;padding:0 12px;font-size:12.5px;font-weight:700;color:var(--acento)}.ruta-dia label{display:flex;flex-direction:column;font-size:11px;font-weight:700;color:var(--tinta-3);gap:2px}.ruta-dia input{height:36px;border:1px solid var(--borde-2);border-radius:9px;padding:0 8px;background:var(--superficie);color:var(--tinta);font:inherit;font-size:13px;font-weight:600}.ruta-progreso{flex:1;min-width:280px}.ruta-progreso-txt{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--tinta-2);margin-bottom:18px}.ruta-progreso-txt strong{color:var(--tinta)}.carretera{position:relative;height:10px;background:var(--gris-serie);border-radius:999px;margin:0 20px 0 0}.carretera-avance{height:100%;background:var(--ok);border-radius:999px;transition:width .5s ease}.carretera-moto{position:absolute;bottom:2px;transform:translate(-50%);transition:left .5s ease;line-height:0}.moto-ico{display:inline-block;line-height:0}.moto-ico svg{width:100%;height:auto}.ruta-play{white-space:nowrap}.kpi-mini{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));background:var(--superficie);border:1px solid var(--borde);border-radius:12px;margin-bottom:10px}.kpi-mini div{padding:8px 12px;border-left:1px solid var(--borde);display:flex;flex-direction:column}.kpi-mini div:first-child{border-left:0}.kpi-mini strong{font-size:20px;font-weight:800;color:var(--tinta);font-variant-numeric:tabular-nums}.kpi-mini span{font-size:11.5px;color:var(--tinta-3);font-weight:600}.ruta-cuerpo{display:grid;grid-template-columns:210px minmax(0,1fr) 340px;gap:10px}.ruta-embs,.ruta-lista{height:var(--alto-mapa);overflow-y:auto;background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:12px 0 0}.ruta-embs h3,.ruta-lista h3{padding:0 12px 8px}.ruta-lista h3 small{color:var(--tinta-3);font-weight:600}.ruta-embs ul,.ruta-lista ol{list-style:none;margin:0;padding:0}.ruta-embs button{display:grid;grid-template-columns:1fr auto;gap:3px 8px;width:100%;padding:8px 12px;background:none;border:0;border-top:1px solid var(--borde);text-align:left;color:var(--tinta)}.ruta-embs button:hover:not(:disabled){background:var(--superficie-2)}.ruta-embs button.on{background:var(--pista);box-shadow:inset 3px 0 0 var(--marca)}.emb-nombre{font-size:12.5px;font-weight:700}.emb-num{font-size:11.5px;color:var(--tinta-2);font-variant-numeric:tabular-nums;grid-row:1;grid-column:2}.emb-pista{grid-column:1 / -1;height:5px;background:var(--pista);border-radius:999px;overflow:hidden}.ruta-embs button.on .emb-pista{background:var(--borde-2)}.emb-pista i{display:block;height:100%;background:var(--ok)}.ruta-lista li{border-top:1px solid var(--borde)}.ruta-lista li.actual{background:var(--pista)}.ruta-lista li button{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:8px 12px;background:none;border:0;text-align:left;color:var(--tinta);opacity:1}.ruta-lista li button:hover:not(:disabled){background:var(--superficie-2)}.ruta-lista li button:disabled{cursor:default;opacity:1}.ruta-lista li>button>i{width:22px;height:22px;border-radius:50%;color:#fff;font-style:normal;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}.parada-txt{display:flex;flex-direction:column;min-width:0}.parada-txt strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parada-txt small{font-size:11px;color:var(--tinta-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parada-estado{display:flex;flex-direction:column;align-items:flex-end;font-size:11.5px}.parada-estado b{font-weight:700;white-space:nowrap}.parada-estado small{color:var(--tinta-3)}.fuera .parada-estado b{color:var(--ext)}.ruta-ley{width:150px;top:auto;bottom:26px;left:10px}.ruta-reloj{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:3;background:var(--banda);color:#fff;font-size:12.5px;font-weight:700;padding:5px 14px;border-radius:999px;font-variant-numeric:tabular-nums}.moto-marker{width:46px;height:32px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4));pointer-events:none}.moto-marker svg{display:block;transition:transform .15s}.moto-marker.voltear svg{transform:scaleX(-1)}.contenido{display:flex;flex-direction:column;gap:12px;margin:12px 0 16px}.contenido .grid{margin:0}.leyenda-linea{list-style:none;display:flex;flex-wrap:wrap;gap:14px;margin:0 0 8px;padding:0;font-size:12px;color:var(--tinta-2)}.leyenda-linea i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-1px}.tabla-scroll{overflow-x:auto}.t{width:100%;border-collapse:collapse;font-size:12.5px;color:var(--tinta)}.t th{position:sticky;top:0;background:var(--superficie-2);color:var(--tinta-2);font-size:11.5px;font-weight:700;text-align:left;padding:8px 10px;border-bottom:1px solid var(--borde-2);white-space:nowrap}.t td{padding:7px 10px;border-bottom:1px solid var(--borde);vertical-align:middle}.t .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.t .fuerte{font-weight:700}.t .nowrap{white-space:nowrap;font-variant-numeric:tabular-nums}.t-clic tbody tr{cursor:pointer}.t-clic tbody tr:hover,.t-clic tbody tr:focus{background:var(--superficie-2);outline:none}.etq{margin-left:6px;font-size:10.5px;font-weight:700;color:var(--tinta-3);background:var(--pista);padding:1px 6px;border-radius:999px}.seg{display:inline-flex;background:var(--pista);border-radius:9px;padding:3px;gap:2px;flex-wrap:wrap}.seg button{border:0;background:none;padding:5px 11px;border-radius:7px;font-size:12px;font-weight:600;color:var(--tinta-2)}.seg button.on{background:var(--superficie);color:var(--tinta);box-shadow:var(--sombra)}.scroll-corto{max-height:280px;overflow-y:auto}.sino{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.sino-txt{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--tinta-2);margin-bottom:4px}.sino-txt strong{color:var(--tinta);white-space:nowrap}.sino-barra{display:flex;gap:2px;height:12px}.sino-barra i{display:block;height:100%}.sino-barra i:first-child{border-radius:4px 0 0 4px}.sino-barra i:last-child{border-radius:0 4px 4px 0}.sino-barra .si{background:var(--serie-1)}.sino-barra .no{background:var(--gris-serie)}.sino small{font-size:11px;color:var(--tinta-3)}.metodo{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:12px 16px;font-size:13px;color:var(--tinta-2)}.metodo summary{cursor:pointer;font-weight:700;color:var(--tinta)}.metodo ul{margin:10px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.metodo b{color:var(--tinta)}.fotos-barra{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--tinta-3)}.galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.galeria-item{padding:0;background:var(--superficie);border:1px solid var(--borde);border-radius:12px;overflow:hidden;text-align:left;color:var(--tinta);box-shadow:var(--sombra)}.galeria-item:hover{border-color:var(--acento)}.galeria-img{position:relative;display:block;height:220px;background:var(--pista)}.galeria-img img{width:100%;height:100%;object-fit:cover;display:block}.galeria-img em{position:absolute;right:8px;bottom:8px;background:#050a19c7;color:#fff;font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.galeria-txt{display:flex;flex-direction:column;gap:2px;padding:8px 10px 10px;min-width:0}.galeria-txt strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.galeria-txt small{font-size:11px;color:var(--tinta-3)}.galeria-tipo{display:flex;align-items:center;gap:5px;color:var(--tinta-2)!important;font-weight:600}.galeria-tipo i{width:9px;height:9px;border-radius:50%}.cap-control{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--tinta-3)}.interruptor{display:inline-flex;align-items:center;gap:7px;font-weight:700;color:var(--tinta);cursor:pointer}.cap-vacio{background:var(--superficie);border:1px dashed var(--borde-2);border-radius:var(--radio);padding:40px 20px;text-align:center;color:var(--tinta-2)}.cap-vacio strong{font-size:15px;color:var(--tinta)}.cap-vacio p{margin:6px auto 0;max-width:560px;font-size:13px}.firma{padding:2px;background:#fff;border:1px solid var(--borde-2);border-radius:6px;line-height:0}.firma img{width:72px;height:34px;object-fit:contain}.estado-ok{color:var(--ok);font-weight:700;white-space:nowrap}.estado-mal{color:var(--mal);font-weight:700;white-space:nowrap}@media (max-width: 1180px){.ruta-cuerpo{grid-template-columns:180px minmax(0,1fr)}.ruta-lista{grid-column:1 / -1;height:auto;max-height:420px}.kpi-tira{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-c:nth-child(3n+1){border-left:0}.kpi-c:nth-child(n+4){border-top:1px solid var(--borde)}}@media (max-width: 860px){.pagina{padding:0}.hoja{border-radius:0;padding:16px 16px 12px}.cab-glux{margin:-16px -16px 12px;border-radius:0;padding:10px 16px}.mv{grid-template-columns:minmax(0,1fr)}.mv-lista{height:420px}.mv-leyenda{width:190px}.ruta-cuerpo{grid-template-columns:minmax(0,1fr)}.ruta-embs{height:auto;max-height:240px}.kpi-mini{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-mini div:nth-child(4n+1){border-left:0}.kpi-mini div:nth-child(n+5){border-top:1px solid var(--borde)}.kpi-tira,.kpi-tira-4{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-c:nth-child(odd){border-left:0}.kpi-c:nth-child(n+3){border-top:1px solid var(--borde)}.kpi-c:nth-child(3n+1):nth-child(2n){border-left:1px solid var(--borde)}.visor{padding:16px}}.contenido>*,.grid>*,.card,.card-cuerpo,.chart{min-width:0}.chart{overflow:hidden}.chart .tooltip-anclado{position:absolute}.espacios{overflow-x:auto;flex-wrap:nowrap;max-width:100%;min-width:0}.espacio-tab{white-space:nowrap;flex-shrink:0}.barra-inferior{min-width:0}@media (max-width: 860px){.grid-2,.grid-3,.grid-2-1,.grid-1-2{grid-template-columns:minmax(0,1fr)}.barra-inferior{flex-wrap:wrap;gap:8px}.kpi-mini span{overflow-wrap:anywhere}.card-header,.atajos{flex-wrap:wrap}}:root{--marca: #0a5fb4;--fondo-pagina: #d5e3fa;--hoja: #eef3fc;--banda: #0a6fd0;--banda-2: #2a9df4;--acento: #0b7fd9;--tinta: #10233f;--tinta-2: #38506f;--tinta-3: #66788f;--borde: #dfe7f4;--borde-2: #c8d6ea;--serie-1: #0b7fd9;--serie-1-claro: #5cb2f2;--serie-2: #f5821f;--serie-3: #0f9d6b;--gris-serie: #c4d2e6;--pista: #e6edf9;--oportunidad: #f5821f;--positivo: #0f9d6b;--violeta: #6d28d9;--ext: #6d28d9;--mal: #c2570c;--ok: #0b7f56;--radio: 16px;--degradado: linear-gradient(135deg, #2a9df4 0%, #0b7fd9 55%, #0a6fd0 100%)}:root[data-theme=dark]{--marca: #4aa8f0;--fondo-pagina: #060d1a;--banda: #0b3f78;--banda-2: #0f5ea8;--acento: #4aa8f0;--serie-1: #4aa8f0;--serie-2: #f59a4a;--serie-3: #2fc08c;--oportunidad: #f59a4a;--positivo: #2fc08c;--violeta: #a78bfa;--ext: #a78bfa;--mal: #f59a4a;--ok: #2fc08c;--degradado: linear-gradient(135deg, #0f5ea8 0%, #0b4a8c 55%, #0b3f78 100%)}body{background:linear-gradient(180deg,var(--fondo-pagina),var(--hoja));background-attachment:fixed}.hoja{box-shadow:0 12px 34px #0a5fb429}.cab-glux{background:var(--degradado)}.cab-glux .boton-prim,.cab-glux .boton-prim:hover{background:#fff;color:#0a5fb4}.boton-prim{background:var(--degradado);border-color:transparent;border-radius:12px}.espacio-tab.activo{background:var(--degradado);color:#fff}:root[data-theme=dark] .espacio-tab.activo{color:#fff}.card{padding:0;overflow:hidden;box-shadow:0 2px 10px #0a5fb414}.card-header{background:var(--degradado);padding:10px 16px;margin:0;align-items:center;flex-wrap:wrap}.card-header h3{color:#fff}.card-header p{color:#ffffffd9}.card-cuerpo{padding:14px 16px 16px}.card-header .seg{background:#fff3}.card-header .seg button{color:#fff}.card-header .seg button.on{background:#fff;color:#0a5fb4}.pildora{display:inline-flex;align-items:center;flex-shrink:0;font-size:11px;font-weight:800;border-radius:999px;padding:4px 11px;white-space:nowrap;font-style:normal}.p-menta{background:#dff5ea;color:#0b6b47}.p-naranja{background:#f5821f;color:#2b1400}.p-violeta{background:#efe9fd;color:#5b21b6}.p-rojo{background:#be123c;color:#fff}.p-blanca{background:#fff;color:#38506f}.chip{display:inline-flex;font-size:10.5px;font-weight:800;border-radius:999px;padding:3px 10px;white-space:nowrap}.c-naranja{background:#f5821f;color:#2b1400}.c-verde{background:#dff5ea;color:#0b6b47}.c-blanco{background:#fff;color:#10233f}.app-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.app-card{display:block;width:100%;padding:0;border:0;background:var(--superficie);border-radius:14px;overflow:hidden;text-align:left;box-shadow:0 3px 10px #0a5fb429;color:var(--tinta)}.app-card:hover:not(:disabled){box-shadow:0 5px 16px #0a5fb44d}.app-card:disabled{opacity:1;cursor:default}.app-card-top{position:relative;display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--degradado);color:#fff}.app-fila{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-fila b{font-size:11.5px;font-weight:700;color:#fff;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-card-top strong{font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.app-card-top small{font-size:11.5px;color:#ffffffe0}.app-moto{position:absolute;right:10px;bottom:5px;background:#fff;border-radius:10px;padding:3px 5px;line-height:0}.app-card-pie{display:flex;flex-direction:column;gap:2px;padding:8px 12px;font-size:11.5px;color:var(--tinta-2)}.app-card-pie span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-card-pie b{color:var(--tinta)}.mv-lista{background:var(--hoja)}.mv-lista header{background:var(--superficie)}.mv-lista ul{padding:10px;display:flex;flex-direction:column;gap:10px}.mv-lista li button.app-card{display:block;padding:0;border:0;background:var(--superficie)}.ruta-lista{background:var(--hoja)}.ruta-lista ol{padding:0 10px 10px;display:flex;flex-direction:column;gap:10px}.ruta-lista li{border:0;border-radius:14px}.ruta-lista li button.app-card{display:block;padding:0;background:var(--superficie)}.ruta-lista li.actual{outline:3px solid #f5821f;outline-offset:1px;background:none}.carretera{background:#fff;box-shadow:inset 0 0 0 1px var(--borde-2);height:14px}.carretera-avance,.emb-pista i{background:#f5821f}.ruta-embs button.on{box-shadow:inset 3px 0 #f5821f}.ruta-reloj{background:var(--degradado)}.visita-cab{margin:-22px -24px 0;padding:20px 56px 16px 24px;background:var(--degradado);color:#fff}.visita-cab h3{margin:2px 0;color:#fff}.visita-cab p{color:#ffffffe6}.visita-cab .visita-cod{font-weight:700;color:#fff}.modal-cerrar{z-index:2}.galeria-item{border-radius:14px}.c-azul{color:var(--acento)!important}@media (min-width: 1181px){.kpi-tira:not(.kpi-tira-4) .kpi-c:nth-child(6n+1){border-left:0}.kpi-tira:not(.kpi-tira-4) .kpi-c:nth-child(n+7){border-top:1px solid var(--borde)}}.kpi-con-anillo{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.kpi-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.anillo{margin:0;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:2px}.anillo svg{display:block}.anillo figcaption{font-size:10px;font-weight:700;color:var(--tinta-3);white-space:nowrap}.anillo-pista{fill:none;stroke:var(--pista)}.anillo-arco{fill:none}.anillo-txt{font-size:13px;font-weight:800;fill:var(--tinta);font-variant-numeric:tabular-nums}.t-azul{stroke:var(--acento)}.t-ok{stroke:var(--ok)}.t-mal{stroke:var(--serie-2)}.t-ext{stroke:var(--ext)}@media (min-width: 1181px){.kpi-anillos .kpi-c:nth-child(4n+1){border-left:0}.kpi-anillos .kpi-c:nth-child(n+5){border-top:1px solid var(--borde)}}@media (max-width: 520px){.kpi-anillos{grid-template-columns:minmax(0,1fr)}.kpi-anillos .kpi-c{border-left:0}.kpi-anillos .kpi-c+.kpi-c{border-top:1px solid var(--borde)}}.regional{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}.regional-txt{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;font-weight:600;color:var(--tinta);margin-bottom:4px}.regional-txt strong{font-weight:800;font-variant-numeric:tabular-nums}.regional-txt small{color:var(--tinta-3);font-weight:600}.regional-pista{height:7px;background:var(--pista);border-radius:999px;overflow:hidden}.regional-pista+.regional-pista{margin-top:2px}.regional-pista i{display:block;height:100%;border-radius:999px}.regional-pista .vis{background:var(--serie-1)}.regional-pista .inc{background:var(--serie-2)}.boton-descarga{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--borde-2);background:#fff;color:#0a5fb4;border-radius:9px;padding:5px 11px;font-size:12px;font-weight:700;white-space:nowrap}.boton-descarga:hover:not(:disabled){box-shadow:0 2px 8px #0a5fb44d}.boton-descarga img{width:14px;height:14px}.card-acciones{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ruta-lista-cab{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px 8px 0}.ruta-lista-cab h3{padding-bottom:0}.tabla-visitas{overflow-x:auto}.th-orden{background:none;border:0;padding:0;font:inherit;font-weight:700;color:inherit;white-space:nowrap;cursor:pointer}.th-orden:hover{color:var(--acento)}.fila-filtros th{padding:4px 6px;background:var(--superficie)}.fila-filtros input{width:100%;min-width:64px;border:1px solid var(--borde-2);border-radius:6px;padding:3px 6px;font:inherit;font-size:11.5px;font-weight:500;background:var(--superficie);color:var(--tinta)}.fila-filtros input:focus{outline:2px solid var(--acento);outline-offset:-1px}.sel-col{position:relative}.sel-col-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:30;list-style:none;margin:0;padding:6px;width:210px;max-height:340px;overflow-y:auto;background:var(--superficie);border:1px solid var(--borde-2);border-radius:10px;box-shadow:var(--sombra-2)}.sel-col-panel label{display:flex;align-items:center;gap:7px;padding:5px 6px;font-size:12.5px;color:var(--tinta);cursor:pointer}.sel-col-panel label:hover{background:var(--pista);border-radius:6px}.card:has(.sel-col-panel){overflow:visible}.paginador-t{flex-wrap:wrap;margin-top:10px}.pag-tam{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-size:12px;color:var(--tinta-2)}.pag-tam select{border:1px solid var(--borde-2);border-radius:6px;padding:3px 4px;background:var(--superficie);color:var(--tinta);font:inherit}.modal.modal-visita{align-items:center;justify-content:center;padding:24px}.modal-visita .visita-panel{width:min(1040px,100%);height:auto;max-height:calc(100vh - 48px);padding:0;border-radius:18px;display:flex;flex-direction:column;overflow:hidden}.modal-visita .visita-cab{margin:0;padding:16px 56px 14px 22px;flex-shrink:0}.modal-visita .visita-cab h3{margin:2px 0;font-size:19px}.visita-cuerpo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.visita-galeria{padding:16px;background:var(--superficie-2);border-right:1px solid var(--borde);display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.visita-datos{padding:16px 20px 20px;overflow-y:auto;min-height:0}.visita-datos .visita-ficha{margin-top:0}.visita-datos .visita-sub{margin-top:14px}.visita-foto-grande{position:relative;background:var(--pista);border-radius:12px;overflow:hidden;height:min(52vh,460px);flex-shrink:0}.foto-ampliar{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}.foto-ampliar img{width:100%;height:100%;object-fit:contain;display:block}.foto-nav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:0;background:#050a19ad;color:#fff;font-size:22px;line-height:1}.foto-nav:hover{background:#050a19e0}.foto-nav.prev{left:8px}.foto-nav.next{right:8px}.visita-foto-txt{margin:0;font-size:12px;color:var(--tinta-2)}.visita-miniaturas{display:flex;gap:6px;flex-wrap:wrap}.visita-miniaturas button{width:54px;height:54px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:var(--pista)}.visita-miniaturas button.on{border-color:#f5821f}.visita-miniaturas img{width:100%;height:100%;object-fit:cover;display:block}.visita-sin-foto{display:flex;align-items:center;justify-content:center;min-height:220px;flex:1;color:var(--tinta-3);font-size:13px;background:var(--pista);border-radius:12px}.visita-pie{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid var(--borde);background:var(--superficie);flex-shrink:0;font-size:12.5px;color:var(--tinta-2)}.boton-paso{border:1px solid var(--borde-2);background:var(--superficie);color:var(--marca);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:700}.boton-paso.prim{background:var(--degradado);color:#fff;border-color:transparent}.boton-paso:disabled{opacity:.45}@media (max-width: 760px){.modal.modal-visita{padding:0}.modal-visita .visita-panel{max-height:100vh;height:100vh;border-radius:0}.visita-cuerpo{display:block;overflow-y:auto}.visita-galeria{border-right:0;border-bottom:1px solid var(--borde);overflow:visible}.visita-foto-grande{height:46vh}.visita-datos{overflow:visible}}.app-card-mapa{position:relative}.mv-lista li button.app-card-ir{display:block;width:100%;padding:0;border:0;background:none;text-align:left;color:inherit;border-bottom:0}.mv-lista li button.app-card-ir:hover{background:none}.app-card-mapa .app-card-pie{padding-right:88px;min-height:44px;justify-content:center}.mv-lista li button.ver-info{position:absolute;right:10px;bottom:9px;display:inline-flex;width:auto;padding:5px 11px;border:0;border-radius:999px;background:#f5821f;color:#2b1400;font-size:11.5px;font-weight:800;white-space:nowrap}.mv-lista li button.ver-info:hover{background:#ff9a3f}.app-card-mapa.seleccionada{outline:3px solid #f5821f;outline-offset:1px}.pdv-marcador{display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;z-index:5}.pdv-etiqueta{display:flex;flex-direction:column;align-items:center;max-width:220px;padding:5px 11px;background:var(--superficie);color:var(--tinta);border-radius:10px;box-shadow:var(--sombra-2);font-size:11.5px;white-space:nowrap}.pdv-etiqueta strong{max-width:198px;overflow:hidden;text-overflow:ellipsis;font-weight:800}.pdv-etiqueta span{color:var(--marca);font-weight:700;font-variant-numeric:tabular-nums}.pdv-pin{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f5821f;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 10px #0006;margin-bottom:7px}.pdv-pin:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid #fff}.ruta-controles{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:6px}.ruta-controles .ruta-reloj{position:static;transform:none;white-space:nowrap}.ruta-controles .ruta-play{box-shadow:0 4px 14px #0a5fb466}.ruta-lista h3 small{font-size:11px}.ley-nota{margin:4px 6px 2px;font-size:10.5px;line-height:1.3;color:var(--tinta-3)}.ruta-ley{width:172px}.sem-leyenda{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 10px;padding:0;font-size:12px;color:var(--tinta-2)}.sem-leyenda span{margin-right:4px}.sem-nota{margin-left:auto;color:var(--tinta-3)}.t-sem td.sem-ok{background:#dff5ea;color:#0b5c3d;font-weight:700}.t-sem td.sem-alerta{background:#fff3d6;color:#6b4a00;font-weight:700}.t-sem td.sem-mal{background:#fde3e3;color:#8f1d1d;font-weight:700}:root[data-theme=dark] .t-sem td.sem-ok{background:#10362a;color:#7fe3bd}:root[data-theme=dark] .t-sem td.sem-alerta{background:#3b2f10;color:#f2cf7a}:root[data-theme=dark] .t-sem td.sem-mal{background:#3f1a1a;color:#f7a8a8}.sem-emoji{display:inline-block;width:1.5em;margin-left:4px;text-align:center}.moto-marker{width:72px;height:59px;filter:drop-shadow(0 0 1.5px #fff) drop-shadow(0 0 1.5px #fff) drop-shadow(0 3px 4px rgba(10,35,63,.4));z-index:4}.carretera-moto{bottom:4px}.ruta-progreso-txt{margin-bottom:30px}.app-moto{bottom:4px}.mapa-tt .tt-lejana{color:#dc2626;font-weight:800}
