/* Centro de Control — Sprint UX-2.4 (motion + modal Gemelo) */

/* —— Hero motion —— */
@keyframes exec-hub-xhero-fade-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes exec-hub-xhero-kpi-in {
  from {
    opacity: 0;
    transform: translateY(6px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes exec-hub-insight-in {
  from {
    opacity: 0;
    transform: translateX(-6px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes exec-hub-cta-pulse {
  0%,
  100% {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  }
  50% {
    box-shadow: 0 2px 14px rgba(248, 250, 252, 0.12);
  }
}

#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__intro,
#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__core,
#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__acts {
  animation: exec-hub-xhero-fade-up 0.55s ease both;
}

#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__core {
  animation-delay: 0.08s;
}

#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__acts {
  animation-delay: 0.35s;
}

#pg-exec .exec-hub-xhero--v24 .exec-hub-xhero__ring-fill {
  transition: stroke-dasharray 0.05s linear;
}

#pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__ring-halo {
  animation: exec-hub-cta-pulse 2.4s ease-in-out 0.4s 2;
}

#pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi {
  animation: exec-hub-xhero-kpi-in 0.45s ease both;
}

#pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi:nth-child(1) {
  animation-delay: 0.12s;
}
#pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi:nth-child(2) {
  animation-delay: 0.2s;
}
#pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi:nth-child(3) {
  animation-delay: 0.28s;
}
#pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi:nth-child(4) {
  animation-delay: 0.36s;
}

#pg-exec .exec-hub-insights-preview--anim .exec-hub-insight-preview {
  animation: exec-hub-insight-in 0.42s ease both;
}

#pg-exec .exec-hub-insights-preview--anim .exec-hub-insight-preview:nth-child(1) {
  animation-delay: 0.1s;
}
#pg-exec .exec-hub-insights-preview--anim .exec-hub-insight-preview:nth-child(2) {
  animation-delay: 0.2s;
}
#pg-exec .exec-hub-insights-preview--anim .exec-hub-insight-preview:nth-child(3) {
  animation-delay: 0.3s;
}

#pg-exec .exec-hub-xhero__btn--pri:hover,
#pg-exec .exec-hub-xhero__btn--pri:focus-visible {
  animation: exec-hub-cta-pulse 1.2s ease-in-out infinite;
}

#pg-exec .exec-hub-xhero__btn--sec:hover {
  border-color: rgba(255, 255, 255, 0.42);
  background: rgba(255, 255, 255, 0.12);
}

@media (prefers-reduced-motion: reduce) {
  #pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__intro,
  #pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__core,
  #pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__acts,
  #pg-exec .exec-hub-xhero__kpis--anim .exec-hub-xhero__kpi,
  #pg-exec .exec-hub-insights-preview--anim .exec-hub-insight-preview,
  #pg-exec .exec-hub-xhero--v24.exec-hub-xhero--anim .exec-hub-xhero__ring-halo,
  #pg-exec .exec-hub-xhero__btn--pri:hover {
    animation: none !important;
  }
  #pg-exec .exec-hub-xhero--v24 .exec-hub-xhero__ring-fill {
    transition: stroke-dasharray 0.35s ease;
  }
}

/* —— Modal Gemelo Digital (#m-exec-gemelo-help) —— */
#m-exec-gemelo-help.exec-gemelo-help-modal.bitacora-serio-v2.modal-nuevo .mbox.bitacora-mbox {
  max-width: min(440px, calc(100vw - 24px));
  padding: 0;
  gap: 0;
  overflow: hidden;
  border-radius: 14px;
}

#m-exec-gemelo-help .exec-gemelo-help-modal-serio-body {
  padding: 10px;
  gap: 8px;
}

#m-exec-gemelo-help .exec-gemelo-help-serio-bloque {
  margin: 0 !important;
}

#m-exec-gemelo-help .exec-gemelo-help-p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--texto-base, #334155);
}

#m-exec-gemelo-help .exec-gemelo-help-pilares,
#m-exec-gemelo-help .exec-gemelo-help-levels {
  margin: 0;
  padding: 0;
  list-style: none;
}

#m-exec-gemelo-help .exec-gemelo-help-pilares li {
  position: relative;
  padding: 6px 0 6px 14px;
  font-size: 13px;
  font-weight: 600;
  color: var(--texto-base, #334155);
  border-bottom: 1px solid var(--gris-200, #e2e8f0);
}

#m-exec-gemelo-help .exec-gemelo-help-pilares li:last-child {
  border-bottom: none;
}

#m-exec-gemelo-help .exec-gemelo-help-pilares li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: var(--gris-400, #94a3b8);
}

#m-exec-gemelo-help .exec-gemelo-help-levels li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid var(--gris-200, #e2e8f0);
  font-size: 13px;
}

#m-exec-gemelo-help .exec-gemelo-help-levels li:last-child {
  border-bottom: none;
}

#m-exec-gemelo-help .exec-gemelo-help-levels__range {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  color: var(--texto-fuerte, #0f172a);
}

#m-exec-gemelo-help .exec-gemelo-help-levels__name {
  font-weight: 700;
  color: var(--texto-suave, #64748b);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 11px;
}

#m-exec-gemelo-help .exec-gemelo-help-footer-row {
  justify-content: center;
}

#m-exec-gemelo-help .exec-gemelo-help-close {
  max-width: 100%;
}
