/* ============================================================
   Omniprise · identidad sobre el estándar de demos de Index
   Superficie #0A0C0F · acento celeste #0EA5E9 (omniprise.com.py)
   Inter + Barlow Condensed (las mismas del sitio del grupo)
   ============================================================ */
:root{
  --rojo:#0EA5E9; --rojo-900:#075985; --rojo-700:#0284C7; --rojo-50:#E0F2FE; --rojo-100:#BAE6FD;
  --negro:#0A0C0F; --negro-2:#14181D; --negro-3:#1B2027;
  --tinta:#0F172A; --tinta-70:#334155; --tinta-45:#64748B; --tinta-25:#94A3B8;
  --linea:#E2E8F0; --linea-fuerte:#CBD5E1; --papel:#FFFFFF; --fondo:#F3F5F8; --fondo-2:#E8ECF1;
  --verde:#16A34A; --verde-50:#DCFCE7; --azul:#2563EB; --azul-50:#DBEAFE; --ambar:#F59E0B; --ambar-50:#FEF3C7; --violeta:#7C3AED; --violeta-50:#EDE9FE;
  --naranja:#F97316; --naranja-50:#FFEDD5; --amarillo:#FACC15; --amarillo-50:#FEF9C3;
  --alerta:#EF4444; --alerta-50:#FEE2E2;
  --sombra-1:0 1px 2px rgba(10,12,15,.06), 0 1px 3px rgba(10,12,15,.04);
  --sombra-2:0 6px 18px rgba(10,12,15,.08), 0 1px 3px rgba(10,12,15,.05);
  --sombra-3:0 22px 50px rgba(10,12,15,.18), 0 2px 8px rgba(10,12,15,.06);
}
body{background:var(--fondo)}
.chip--rojo{background:var(--rojo-50);color:var(--rojo-900);border-color:var(--rojo-100)}
.d--dn{background:var(--alerta-50);color:#B91C1C}
.kpi--rojo::after{background:var(--alerta)}
.barra i.rojo{background:var(--alerta)}
.tag--rojo{background:var(--alerta-50);color:#B91C1C}
.nav__it .pin--verde{background:var(--verde);color:#fff}
.plataforma .ic{background:rgba(14,165,233,.16);color:var(--rojo)}
.plataforma span{color:#94A3B8}
.card--rojo{background:linear-gradient(135deg,#0284C7 0%,#0A0C0F 120%);border-color:#075985}
.hito b{color:var(--tinta)}
.hito:nth-child(3n+2)::before{border-color:var(--naranja)}.hito:nth-child(3n)::before{border-color:var(--violeta)}

/* ---------- logo (máscara: el wordmark toma el color que se le dé) ---------- */
.omni-wm{display:block;aspect-ratio:1693/382;width:100%;background:#fff;-webkit-mask:url(../img/omniprise.png) center/contain no-repeat;mask:url(../img/omniprise.png) center/contain no-repeat}
.omni-wm--side{width:118px;margin-bottom:3px}
.omni-wm--sm{width:150px;position:relative;z-index:1}
.omni-emb{display:block;width:100%;height:100%;background:#fff;-webkit-mask:url(../img/emblema.png) center/contain no-repeat;mask:url(../img/emblema.png) center/contain no-repeat}
.marca__emb{width:34px;height:40px;flex:0 0 34px;background:var(--rojo);border-radius:10px;padding:5px;box-shadow:0 6px 18px rgba(14,165,233,.35)}
.marca__emb .omni-emb{background:#fff}
.marca__txt strong{display:none}
.wipe{background:var(--negro)}
.wipe__emb{width:110px;height:150px}
.wipe__emb .omni-emb{background:var(--rojo)}
.wa-top .av{background:var(--negro);padding:4px}.wa-top .av .omni-emb{background:#fff}

/* ---------- gate ---------- */
.gate{background:radial-gradient(1200px 600px at 50% 110%,rgba(14,165,233,.16),transparent 60%),var(--negro)}
.gate__bg i{background:linear-gradient(90deg,transparent,var(--rojo) 40%,var(--rojo) 60%,transparent)!important}
.gate__logo{width:min(460px,84vw);display:flex;flex-direction:column;align-items:center;gap:14px;filter:drop-shadow(0 14px 40px rgba(14,165,233,.28))}
.gate__logo .omni-wm{opacity:0;animation:wmIn 1.2s cubic-bezier(.2,.8,.2,1) .25s forwards}
.gate__logo small{display:block;font-size:11px;letter-spacing:4px;font-weight:600;color:#94A3B8;opacity:0;animation:subir .7s ease .7s forwards}
.gate__ovni{position:absolute;top:7%;left:50%;width:54px;height:74px;transform:translateX(-50%);opacity:0;animation:ovniIn 1.4s cubic-bezier(.2,.8,.2,1) .1s forwards}
.gate__ovni .omni-emb{background:var(--rojo)}
.gate__ovni .haz{position:absolute;left:50%;top:70px;width:120px;height:46vh;transform:translateX(-50%);background:linear-gradient(180deg,rgba(14,165,233,.22),transparent 80%);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);animation:haz 3.6s ease-in-out infinite}
@keyframes ovniIn{from{opacity:0;transform:translate(-50%,-30px)}to{opacity:1;transform:translateX(-50%)}}
@keyframes haz{0%,100%{opacity:.55}50%{opacity:1}}
.gate__marcas{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.gate__marcas img{width:38px;height:38px;border-radius:10px;object-fit:cover;opacity:0;animation:subir .5s ease forwards;border:1px solid #262D36}
.pin__cajas input{border-color:#262D36;background:#0F1216}

/* ---------- top: marcas ---------- */
.top__marcas{display:flex;align-items:center}
.top__marcas img{width:26px;height:26px;border-radius:50%;object-fit:cover;border:2px solid #fff;margin-left:-7px;box-shadow:var(--sombra-1);transition:transform .2s}
.top__marcas img:hover{transform:translateY(-3px) scale(1.1);z-index:2}

/* ---------- hub ---------- */
.hub-cab h2 span{color:var(--rojo)}
.mod--celeste{background:linear-gradient(135deg,#0EA5E9,#0369A1);border-color:#0284C7;color:#fff}
.mod--celeste h3,.mod--celeste .mod__kpis b{color:#fff}
.mod--celeste p,.mod--celeste .mod__kpis div{color:rgba(255,255,255,.82)}
.mod--celeste .mod__ico{background:rgba(255,255,255,.18);color:#fff}
.mod--celeste .mod__kpis{border-color:rgba(255,255,255,.3)}
.mod--celeste .mod__ir{background:rgba(255,255,255,.2);color:#fff}
.mod--celeste::before{background:#fff}
.mod:nth-child(11){animation-delay:.75s}.mod:nth-child(12){animation-delay:.82s}.mod:nth-child(13){animation-delay:.89s}
.hoy{grid-template-columns:1.35fr 1fr;align-items:start}
.hoy__der{display:flex;flex-direction:column;gap:12px;min-width:0}

/* ---------- mapa de la red ---------- */
.red{background:linear-gradient(180deg,#FFFFFF,#F8FAFC);border:1px solid var(--linea);border-radius:16px;padding:14px 16px 10px;box-shadow:var(--sombra-1);min-width:0}
.red__cab{display:flex;align-items:flex-start;gap:10px}
.red__cab h3{margin:0 0 2px;font-size:13.5px;font-weight:700}
.red__cab p{margin:0;font-size:11.5px;color:var(--tinta-45)}
.red__cab .chip{margin-left:auto}
.red__map{overflow-x:auto;-webkit-overflow-scrolling:touch}
.red__map svg{width:100%;height:auto;display:block;min-width:560px}
.red .zona__t{font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;fill:#94A3B8}
.red .rio{font-family:var(--disp);font-weight:700;font-size:12px;letter-spacing:3px;text-transform:uppercase;fill:#60A5FA}
.red .pt{cursor:pointer;opacity:0;animation:ptIn .5s cubic-bezier(.2,.8,.2,1) forwards}
.red .pt .nd{transition:transform .2s;transform-box:fill-box;transform-origin:center}
.red .pt:hover .nd{transform:scale(1.35)}
.red .pt .halo{animation:halo 2.4s ease-out infinite;opacity:0}
.red .pt.ping .halo{animation:ping .9s ease-out}
@keyframes ptIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@keyframes halo{0%{r:5;opacity:.55}100%{r:14;opacity:0}}
@keyframes ping{0%{r:6;opacity:1;stroke-width:4}100%{r:26;opacity:0;stroke-width:1}}
.red__ley{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--tinta-45);padding:8px 2px 2px;border-top:1px dashed var(--linea);margin-top:6px}
.red__ley span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.red__ley i{width:10px;height:10px;border-radius:3px;display:inline-block}
.red__ley i.c{border-radius:50%;background:var(--tinta-45)}.red__ley i.q{background:var(--tinta-45)}.red__ley i.d{background:var(--tinta-45);transform:rotate(45deg) scale(.85)}
.red__ley .sep{width:1px;height:12px;background:var(--linea-fuerte)}

/* ---------- ticker de pedidos ---------- */
.ticker{padding:12px 14px;overflow:hidden}
.ticker__cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.ticker__cab b{font-size:13px}
.ticker__lista{display:flex;flex-direction:column;gap:6px;min-height:276px}
.tk{display:grid;grid-template-columns:26px 1fr auto auto;gap:9px;align-items:center;padding:7px 9px;border-radius:10px;background:var(--fondo);border:1px solid var(--linea);font-size:11.5px;min-width:0}
.tk__t{min-width:0}.tk__t b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tk__t span{display:block;font-size:10.5px;color:var(--tinta-45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk__g{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.tk--nuevo{animation:tkIn .55s cubic-bezier(.2,.8,.2,1);border-color:var(--rojo-100);background:var(--rojo-50)}
@keyframes tkIn{from{opacity:0;transform:translateY(-14px) scale(.97)}to{opacity:1;transform:none}}

/* ---------- logos ---------- */
.lg{object-fit:cover;background:#fff}
.mini-lgs{display:flex}.mini-lgs .lg{margin-right:-6px;border:2px solid #fff;box-shadow:var(--sombra-1)}
.loc__seg b small{font-size:12px;color:var(--rojo);margin-left:2px}

/* ---------- sitio en vivo de Condenados ---------- */
.vivo-ecdlc{display:grid;grid-template-columns:330px 1fr;gap:0;overflow:hidden;margin-bottom:16px;background:var(--negro);border-color:var(--negro);color:#fff}
.vivo-ecdlc__info{padding:22px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.vivo-ecdlc__info h3{margin:0;font-family:var(--disp);font-size:30px;text-transform:uppercase;line-height:1;letter-spacing:.3px}
.vivo-ecdlc__info p{margin:0;font-size:12.5px;color:#A0AEC0;line-height:1.55}
.vivo-ecdlc .cred{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.vivo-ecdlc .cred div{background:#14181D;border:1px solid #262D36;border-radius:10px;padding:8px 10px}
.vivo-ecdlc .cred small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#64748B}
.vivo-ecdlc .cred b{font-family:var(--mono);font-size:12.5px}
.vivo-ecdlc__marco{background:#14181D;display:flex;flex-direction:column;min-width:0}
.vivo-ecdlc__marco .vit__bar{background:#1B2027;border-color:#262D36}.vivo-ecdlc__marco .vit__url{background:#0A0C0F;color:#94A3B8}
.vivo-ecdlc iframe{width:100%;height:540px;border:0;display:block;background:#0a0405}
.pv-galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.pv-galeria img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;transition:transform .25s}
.pv-galeria img:hover{transform:scale(1.04)}
.pv-cart{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:6px 9px;margin-bottom:8px;font-size:11.5px}
.pv-cart div{display:flex;gap:6px;padding:4px 0;border-bottom:1px dashed var(--linea)}
.pv-cart div span{color:var(--tinta-45)}.pv-cart div b{flex:1;font-weight:600}.pv-cart div em{font-style:normal;font-variant-numeric:tabular-nums}
.pv-cart__t{border-bottom:0!important}.pv-cart__t b{font-weight:800!important}
.vit__hero .omni-wm--sm{margin:auto}

/* ---------- simuladores ---------- */
.sim{display:grid;grid-template-columns:1fr 1.2fr;gap:16px;margin-bottom:12px}
.sim__ctl{display:flex;flex-direction:column;gap:6px}
.sim__ctl label{font-size:12px;color:var(--tinta-70);font-weight:600;display:flex;justify-content:space-between;margin-top:6px}
.sim__ctl label b{font-family:var(--disp);font-size:20px;color:var(--rojo)}
.sim__ctl input[type=range]{width:100%;accent-color:var(--rojo)}
.sim__out{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sim__out div{background:var(--negro);color:#fff;border-radius:12px;padding:10px 12px;min-width:0}
.sim__out small{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:#94A3B8}
.sim__out b{display:block;font-family:var(--disp);font-size:24px;line-height:1.1;margin-top:3px;transition:color .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim__out div:first-child{background:linear-gradient(135deg,#0EA5E9,#0369A1)}

/* ---------- eventos con cupo ---------- */
.evs{display:flex;flex-direction:column;gap:8px}
.ev{padding:8px 10px;border-radius:10px;background:var(--fondo);border:1px solid var(--linea)}
.ev b{display:block;font-size:12px}.ev span{font-size:11px;color:var(--tinta-45)}
.ev .barra-fila{padding:4px 0 0}.ev .barra-fila .lb{display:none}.ev .barra-fila .v{flex-basis:40px}

/* ---------- selector de sitio ---------- */
.sel-sitio{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:16px;flex-wrap:wrap}
.sel-sitio label{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--tinta-45)}
.sel-sitio select{font-family:inherit;font-size:13px;font-weight:600;padding:8px 12px;border-radius:9px;border:1px solid var(--linea-fuerte);background:#fff;min-width:0;max-width:100%}
.sel-sitio__marcas{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.sel-sitio__marcas .chip .lg{width:18px;height:18px;flex-basis:18px;border-radius:5px;border:0}

/* ---------- KDS ---------- */
.kds{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.kds__col{background:var(--fondo);border:1px solid var(--linea);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:7px;min-width:0}
.kds__cab{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--tinta-45);padding:2px 4px}
.kds__cab b{background:var(--negro);color:#fff;border-radius:99px;padding:1px 8px;font-size:11px}
.kds__it{background:#fff;border:1px solid var(--linea);border-left:4px solid var(--c);border-radius:9px;padding:8px 9px;font-size:11.5px;animation:cardIn .4s ease both}
.kds__it>div{display:flex;justify-content:space-between;align-items:center;gap:6px}
.kds__it>div b{font-family:var(--mono);font-size:11px}.kds__it>div span{font-size:10.5px;color:var(--tinta-45)}
.kds__it p{margin:5px 0;font-weight:600;line-height:1.3}
.kds__it--pulso{animation:pulso .9s ease}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(14,165,233,.5)}100%{box-shadow:0 0 0 10px rgba(14,165,233,0)}}
.kds__vacio{text-align:center;color:var(--tinta-25);padding:12px 0}

/* ---------- red de cocinas ---------- */
.cocinas{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.coc{position:relative;display:flex;flex-direction:column;gap:5px;padding:12px 12px 10px;border:1px solid var(--linea);border-radius:12px;background:#fff;overflow:hidden;transition:transform .2s,box-shadow .2s;animation:cardIn .4s ease both}
.coc::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--c)}
.coc:hover{transform:translateY(-3px);box-shadow:var(--sombra-2)}
.coc__cab{display:flex;align-items:center;justify-content:space-between}
.coc__lgs{display:flex}.coc__lgs .lg{margin-right:-5px;border:2px solid #fff}
.coc b{font-size:12.5px;line-height:1.25}.coc>span{font-size:11px;color:var(--tinta-45)}
.coc__pie{display:flex;justify-content:space-between;font-size:10.5px;color:var(--tinta-45);font-variant-numeric:tabular-nums}

/* ---------- heatmap ---------- */
.heat{display:grid;grid-template-columns:34px repeat(13,1fr);gap:3px;align-items:center}
.heat__h{font-size:9.5px;color:var(--tinta-25);text-align:center}
.heat__d{font-size:10.5px;font-weight:700;color:var(--tinta-45)}
.heat i{display:block;aspect-ratio:1;border-radius:4px;background:rgba(14,165,233,var(--a));min-width:0;transition:transform .15s}
.heat i:hover{transform:scale(1.25);outline:2px solid var(--negro)}

/* ---------- kanban de franquicias ---------- */
.kanban{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}
.kanban__col{background:var(--fondo);border:1px solid var(--linea);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:7px;min-width:0}
.kanban__cab{display:flex;align-items:baseline;gap:6px;padding:2px 4px 4px}
.kanban__cab b{font-family:var(--disp);font-size:16px;text-transform:uppercase}
.kanban__cab span{background:var(--negro);color:#fff;border-radius:99px;padding:0 7px;font-size:11px;font-weight:700}
.kanban__cab small{margin-left:auto;font-size:10.5px;color:var(--tinta-45)}
.kb{background:#fff;border:1px solid var(--linea);border-top:3px solid var(--c);border-radius:9px;padding:8px 9px;font-size:11px;animation:cardIn .4s ease both}
.kb__cab{display:flex;align-items:center;gap:7px}.kb__cab b{font-size:12px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kb>span{display:block;color:var(--tinta-45);margin:4px 0}
.kb__s{font-family:var(--disp);font-weight:700;font-size:14px;padding:0 6px;border-radius:6px;background:var(--fondo-2);color:var(--tinta-70)}
.kb__s.alto{background:var(--verde-50);color:#15803D}.kb__s.medio{background:var(--ambar-50);color:#B45309}
.kb__pie{display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:var(--tinta-45);font-size:10.5px}
.kb__pie span:first-child{font-weight:700;color:var(--tinta)}

/* ---------- personas ---------- */
.vac{display:flex;align-items:center;gap:9px;padding:6px 0;border-bottom:1px dashed var(--linea);font-size:12px}
.vac span{flex:1}.vac b{font-family:var(--disp);font-size:18px}
.carpeta.on{background:var(--negro);color:#fff;border-color:var(--negro)}.carpeta.on span{color:#94A3B8}.carpeta.on .n{color:var(--rojo)}

/* ---------- propuesta ---------- */
.fase__precio{margin-left:auto;text-align:right;flex:0 0 auto}
.fase__precio b{display:block;font-family:var(--disp);font-size:22px;line-height:1}
.fase__precio span{font-size:11px!important;color:var(--tinta-45)}
.pista::before{background:linear-gradient(90deg,var(--rojo) 0 33%,var(--naranja) 33% 66%,var(--amarillo) 66%)}

/* ---------- responsive ---------- */
@media (max-width:1180px){.vivo-ecdlc{grid-template-columns:1fr}.vivo-ecdlc iframe{height:440px}.kds{grid-template-columns:repeat(2,1fr)}.sim{grid-template-columns:1fr}}
@media (max-width:820px){
  .kds{grid-template-columns:1fr}
  .sim__out{grid-template-columns:1fr 1fr}.sim__out b{font-size:19px}
  .heat{grid-template-columns:28px repeat(13,1fr);gap:2px}
  .sel-sitio__marcas{margin-left:0}
  .ticker__lista{min-height:0}
  .tk{grid-template-columns:26px 1fr auto}.tk .tag{display:none}
  .gate__ovni{top:3%}
  .fase__cab{flex-wrap:wrap}.fase__precio{margin-left:56px;text-align:left}
}
.pv-estado{font-size:11.5px;padding:7px 10px;border-radius:8px;background:var(--ambar-50);color:#92400E;margin-bottom:10px;line-height:1.4}
.pv-grid>*{min-width:0}.vit__nav{flex-wrap:wrap;row-gap:4px}
.nav__it{flex-wrap:nowrap;white-space:nowrap}.nav__it .pin{flex:0 0 auto}
.mod__kpis{padding-right:42px}
.card .stack{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
@media (max-width:1180px){.hoy{grid-template-columns:1fr}}
