/* Launch Intelligence — Pulse Layer (CSS only, scoped to #page-ai-insights) */

/* ── Shared motion (6s–14s, ease-in-out) ── */

@keyframes li-pulse-panel-bg {
  0%,
  100% {
    opacity: 0.42;
  }
  50% {
    opacity: 0.72;
  }
}

@keyframes li-pulse-scan-shimmer {
  0%,
  100% {
    background-position: 180% 0;
    opacity: 0;
  }
  12% {
    opacity: 0.55;
  }
  50% {
    background-position: -80% 0;
    opacity: 0.85;
  }
  88% {
    opacity: 0.35;
  }
}

@keyframes li-pulse-btn-glow {
  0%,
  100% {
    box-shadow:
      0 0 0 0 rgba(15, 168, 157, 0),
      0 1px 2px rgba(0, 0, 0, 0.12);
  }
  50% {
    box-shadow:
      0 0 0 1px rgba(15, 168, 157, 0.14),
      0 0 14px rgba(15, 168, 157, 0.1),
      0 2px 6px rgba(0, 0, 0, 0.14);
  }
}

@keyframes li-pulse-telemetry-drift {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 0.28;
  }
  50% {
    transform: translate3d(-6px, 4px, 0);
    opacity: 0.42;
  }
}

@keyframes li-pulse-indicator {
  0%,
  100% {
    opacity: 0.92;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.012);
  }
}

/* ── Page shell: telemetry grid drift ── */

#page-ai-insights {
  position: relative;
  isolation: isolate;
  overflow-x: clip;
  min-width: 0;
}

#page-ai-insights::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 50%, rgba(15, 168, 157, 0.14) 0.6px, transparent 0.6px),
    repeating-linear-gradient(
      0deg,
      transparent,
      transparent 31px,
      rgba(15, 168, 157, 0.025) 31px,
      rgba(15, 168, 157, 0.025) 32px
    ),
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 31px,
      rgba(47, 159, 154, 0.02) 31px,
      rgba(47, 159, 154, 0.02) 32px
    );
  background-size: 32px 32px, 100% 100%, 100% 100%;
  opacity: 0.28;
  animation: li-pulse-grid-shimmer 18s ease-in-out infinite;
}

#page-ai-insights:has(.li-launch-chamber-env)::before {
  opacity: 0.14;
  animation: li-pulse-grid-shimmer 22s ease-in-out infinite;
}

/* Launch chamber — soft teal haze + glow breathe behind content */
#page-ai-insights .li-launch-chamber-env::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: 14px;
  background:
    radial-gradient(
      ellipse 78% 58% at 50% 12%,
      rgba(15, 168, 157, 0.1) 0%,
      transparent 68%
    ),
    radial-gradient(
      ellipse 62% 48% at 18% 78%,
      rgba(15, 168, 157, 0.06) 0%,
      transparent 72%
    ),
    radial-gradient(
      ellipse 62% 48% at 82% 74%,
      rgba(47, 159, 154, 0.05) 0%,
      transparent 70%
    );
  opacity: 0.55;
  animation: li-pulse-chamber-haze 22s ease-in-out infinite;
}

@keyframes li-pulse-grid-shimmer {
  0%,
  100% {
    opacity: 0.26;
  }
  50% {
    opacity: 0.38;
  }
}

@keyframes li-pulse-chamber-haze {
  0%,
  100% {
    opacity: 0.48;
    transform: translate3d(0, 0, 0) scale(1);
  }
  50% {
    opacity: 0.68;
    transform: translate3d(1%, -1.2%, 0) scale(1.02);
  }
}


#page-ai-insights > * {
  position: relative;
  z-index: 1;
}

/* Narrow viewports: defer page grid to chamber/env wave layers */
@media (max-width: 640px) {
  #page-ai-insights::before {
    opacity: 0.16;
    animation: li-pulse-grid-shimmer 22s ease-in-out infinite;
  }

  #page-ai-insights:has(.li-launch-chamber-env)::before {
    opacity: 0.08;
    animation: none;
  }

  #page-ai-insights .li-launch-chamber-env {
    position: relative;
    isolation: isolate;
  }

  #page-ai-insights .li-launch-chamber-env::before {
    position: absolute;
    inset: 0;
  }
}

/* ── 1. Panel background pulse gradients (::before / ::after) ── */

#page-ai-insights .li-hero::before {
  animation: li-pulse-panel-bg 12s ease-in-out infinite;
}

#page-ai-insights .li-risk-snapshot::before {
  animation: li-pulse-panel-bg 11s ease-in-out infinite;
}

#page-ai-insights .li-lis-block::before,
#page-ai-insights #li-ops-panel-intelligence .li-public-verification::before,
#page-ai-insights .li-risk-verdict-center::before {
  animation: li-pulse-panel-bg 10s ease-in-out infinite;
}

#page-ai-insights #li-ops-panel-intelligence .li-intel-summary-panel,
#page-ai-insights #li-ops-panel-monitoring .li-mon-health-panel,
#page-ai-insights #li-ops-panel-forensics .li-for-bridge-panel {
  position: relative;
  isolation: isolate;
}

#page-ai-insights #li-ops-panel-intelligence .li-intel-summary-panel::before,
#page-ai-insights #li-ops-panel-monitoring .li-mon-health-panel::before,
#page-ai-insights #li-ops-panel-forensics .li-for-bridge-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: 12px;
  background:
    radial-gradient(ellipse 60% 50% at 14% 8%, rgba(15, 168, 157, 0.06), transparent 58%),
    radial-gradient(ellipse 50% 40% at 90% 92%, rgba(47, 159, 154, 0.04), transparent 55%);
  opacity: 0.55;
  animation: li-pulse-panel-bg 10s ease-in-out infinite;
}

#page-ai-insights #li-ops-panel-intelligence .li-intel-summary-panel > *,
#page-ai-insights #li-ops-panel-monitoring .li-mon-health-panel > *,
#page-ai-insights #li-ops-panel-forensics .li-for-bridge-panel > * {
  position: relative;
  z-index: 1;
}

#page-ai-insights .li-ops-panel-inner {
  position: relative;
  overflow: visible;
  isolation: isolate;
}

#page-ai-insights .li-ops-panel-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  background:
    radial-gradient(ellipse 70% 55% at 8% 0%, rgba(15, 168, 157, 0.07), transparent 58%),
    radial-gradient(ellipse 55% 45% at 96% 100%, rgba(47, 159, 154, 0.05), transparent 52%);
  opacity: 0.55;
  animation: li-pulse-panel-bg 13s ease-in-out infinite;
}

#page-ai-insights .li-ops-panel-inner > * {
  position: relative;
  z-index: 1;
}

/* Accent-bar cards: ambient pulse on ::after (preserve ::before accent) */

#page-ai-insights #li-ops-panel-builder .li-builder-card::after,
#page-ai-insights #li-ops-panel-intelligence .li-intel-card::after,
#page-ai-insights #li-ops-panel-launch .li-launch-check::after,
#page-ai-insights #li-ops-panel-monitoring .li-mon-card::after,
#page-ai-insights #li-ops-panel-utility .li-util-template-card::after,
#page-ai-insights #li-ops-panel-forensics .li-for-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  background:
    radial-gradient(ellipse 85% 60% at 50% 0%, rgba(15, 168, 157, 0.06), transparent 68%),
    linear-gradient(165deg, rgba(15, 168, 157, 0.03), transparent 55%);
  opacity: 0.5;
  animation: li-pulse-panel-bg 9s ease-in-out infinite;
}

#page-ai-insights #li-ops-panel-builder .li-builder-card > *,
#page-ai-insights #li-ops-panel-intelligence .li-intel-card > *,
#page-ai-insights #li-ops-panel-launch .li-launch-check > *,
#page-ai-insights #li-ops-panel-monitoring .li-mon-card > *,
#page-ai-insights #li-ops-panel-utility .li-util-template-card > *,
#page-ai-insights #li-ops-panel-forensics .li-for-card > * {
  position: relative;
  z-index: 1;
}

/* ── 2. Scan-line shimmer (page head, trust, verification) ── */

#page-ai-insights .page-head {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

#page-ai-insights .page-head::after {
  content: "";
  position: absolute;
  inset: -1px 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    108deg,
    transparent 38%,
    rgba(15, 168, 157, 0.05) 48%,
    rgba(47, 159, 154, 0.035) 52%,
    transparent 62%
  );
  background-size: 220% 100%;
  opacity: 0.7;
  animation: li-pulse-scan-shimmer 10s ease-in-out infinite;
}

#page-ai-insights .page-head > * {
  position: relative;
  z-index: 1;
}

#page-ai-insights .li-hero-panel--trust,
#page-ai-insights .li-hero-trust-wrap,
#page-ai-insights #li-ops-panel-launch .li-launch-overview,
#page-ai-insights #li-ops-panel-launch .li-launch-trust,
#page-ai-insights #li-ops-panel-intelligence .li-public-verification,
#page-ai-insights .li-risk-verdict-center {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

#page-ai-insights .li-hero-panel--trust::after,
#page-ai-insights .li-hero-trust-wrap::after,
#page-ai-insights .li-hero-trust-ring::after,
#page-ai-insights #li-ops-panel-launch .li-launch-overview::after,
#page-ai-insights #li-ops-panel-launch .li-launch-trust::after,
#page-ai-insights #li-ops-panel-intelligence .li-public-verification::after,
#page-ai-insights .li-risk-verdict-center::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(
    112deg,
    transparent 40%,
    rgba(15, 168, 157, 0.045) 50%,
    transparent 60%
  );
  background-size: 240% 100%;
  opacity: 0.65;
  animation: li-pulse-scan-shimmer 11s ease-in-out infinite;
}

#page-ai-insights .li-hero-trust-ring {
  position: relative;
  overflow: hidden;
}

#page-ai-insights .li-hero-panel--trust > *,
#page-ai-insights .li-hero-trust-wrap > *,
#page-ai-insights .li-hero-trust-ring > *,
#page-ai-insights #li-ops-panel-launch .li-launch-overview > *,
#page-ai-insights #li-ops-panel-launch .li-launch-trust > *,
#page-ai-insights #li-ops-panel-intelligence .li-public-verification > *,
#page-ai-insights .li-risk-verdict-center > * {
  position: relative;
  z-index: 1;
}

/* ── 3. Active button teal breathing glow ── */

#page-ai-insights .li-hero button:not(:disabled),
#page-ai-insights .li-hero .btn:not(:disabled),
#page-ai-insights .page-actions .btn-primary:not(:disabled),
#page-ai-insights .li-risk-snapshot-actions .btn:not(:disabled),
#page-ai-insights #li-ops-panel-builder .btn-primary:not(:disabled),
#page-ai-insights #li-ops-panel-launch .btn-primary:not(:disabled),
#page-ai-insights #li-ops-panel-intelligence .btn-primary:not(:disabled),
#page-ai-insights #li-ops-panel-monitoring .btn-primary:not(:disabled),
#page-ai-insights #li-ops-panel-utility .btn-primary:not(:disabled),
#page-ai-insights #li-ops-panel-forensics .btn-primary:not(:disabled),
#page-ai-insights .li-launch-notice-actions .btn-primary:not(:disabled) {
  animation: li-pulse-btn-glow 7s ease-in-out infinite;
}

/* ── 5. Verification badges, trust chips, status indicators ── */

#page-ai-insights .li-hero-utility-chip,
#page-ai-insights .li-hero-state-pill,
#page-ai-insights #li-ops-panel-builder .li-builder-chip,
#page-ai-insights #li-ops-panel-intelligence .li-intel-card-chip,
#page-ai-insights #li-ops-panel-monitoring .li-mon-card-chip,
#page-ai-insights #li-ops-panel-launch .li-launch-check-chip,
#page-ai-insights #li-ops-panel-launch .li-mp-partner-chip,
#page-ai-insights #li-ops-panel-forensics .li-for-card-chip,
#page-ai-insights .li-risk-verdict-band,
#page-ai-insights .li-risk-snapshot-badge,
#page-ai-insights .li-risk-verification-badge,
#page-ai-insights .li-lis-badge,
#page-ai-insights #li-ops-panel-intelligence .li-cr-badge,
#page-ai-insights #li-ops-panel-intelligence .li-pv-badge,
#page-ai-insights #li-ops-panel-intelligence .li-tp-badge,
#page-ai-insights #li-ops-panel-launch .li-launch-overview-status {
  animation: li-pulse-indicator 8s ease-in-out infinite;
}

/* ── 6. Card hover elevation (no dimension change) ── */

#page-ai-insights #li-ops-panel-builder .li-builder-card,
#page-ai-insights .li-risk-card,
#page-ai-insights #li-ops-panel-intelligence .li-intel-card,
#page-ai-insights #li-ops-panel-launch .li-launch-check,
#page-ai-insights #li-ops-panel-monitoring .li-mon-card,
#page-ai-insights #li-ops-panel-utility .li-util-template-card,
#page-ai-insights #li-ops-panel-forensics .li-for-card,
#page-ai-insights .li-lis-block {
  transition:
    transform 0.28s ease-in-out,
    box-shadow 0.28s ease-in-out;
}

#page-ai-insights #li-ops-panel-builder .li-builder-card:hover,
#page-ai-insights .li-risk-card:hover,
#page-ai-insights #li-ops-panel-intelligence .li-intel-card:hover,
#page-ai-insights #li-ops-panel-launch .li-launch-check:hover,
#page-ai-insights #li-ops-panel-monitoring .li-mon-card:hover,
#page-ai-insights #li-ops-panel-utility .li-util-template-card:hover,
#page-ai-insights #li-ops-panel-forensics .li-for-card:hover,
#page-ai-insights .li-lis-block:hover {
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.03),
    0 6px 18px rgba(0, 0, 0, 0.18),
    0 0 16px rgba(15, 168, 157, 0.06);
}

/* ── Reduced motion ── */

@media (prefers-reduced-motion: reduce) {
  #page-ai-insights .li-launch-chamber-env::before,
  #page-ai-insights::before,
  #page-ai-insights .li-hero::before,
  #page-ai-insights .li-risk-snapshot::before,
  #page-ai-insights .li-risk-verdict-center::before,
  #page-ai-insights .li-lis-block::before,
  #page-ai-insights #li-ops-panel-intelligence .li-public-verification::before,
  #page-ai-insights #li-ops-panel-intelligence .li-intel-summary-panel::before,
  #page-ai-insights #li-ops-panel-monitoring .li-mon-health-panel::before,
  #page-ai-insights #li-ops-panel-forensics .li-for-bridge-panel::before,
  #page-ai-insights .li-ops-panel-inner::before,
  #page-ai-insights #li-ops-panel-builder .li-builder-card::after,
  #page-ai-insights #li-ops-panel-intelligence .li-intel-card::after,
  #page-ai-insights #li-ops-panel-launch .li-launch-check::after,
  #page-ai-insights #li-ops-panel-monitoring .li-mon-card::after,
  #page-ai-insights #li-ops-panel-utility .li-util-template-card::after,
  #page-ai-insights #li-ops-panel-forensics .li-for-card::after,
  #page-ai-insights .page-head::after,
  #page-ai-insights .li-hero-panel--trust::after,
  #page-ai-insights .li-hero-trust-wrap::after,
  #page-ai-insights .li-hero-trust-ring::after,
  #page-ai-insights #li-ops-panel-launch .li-launch-overview::after,
  #page-ai-insights #li-ops-panel-launch .li-launch-trust::after,
  #page-ai-insights #li-ops-panel-intelligence .li-public-verification::after,
  #page-ai-insights .li-risk-verdict-center::after,
  #page-ai-insights .li-hero button:not(:disabled),
  #page-ai-insights .li-hero .btn:not(:disabled),
  #page-ai-insights .page-actions .btn-primary:not(:disabled),
  #page-ai-insights .li-risk-snapshot-actions .btn:not(:disabled),
  #page-ai-insights #li-ops-panel-builder .btn-primary:not(:disabled),
  #page-ai-insights #li-ops-panel-launch .btn-primary:not(:disabled),
  #page-ai-insights #li-ops-panel-intelligence .btn-primary:not(:disabled),
  #page-ai-insights #li-ops-panel-monitoring .btn-primary:not(:disabled),
  #page-ai-insights #li-ops-panel-utility .btn-primary:not(:disabled),
  #page-ai-insights #li-ops-panel-forensics .btn-primary:not(:disabled),
  #page-ai-insights .li-launch-notice-actions .btn-primary:not(:disabled),
  #page-ai-insights .li-hero-utility-chip,
  #page-ai-insights .li-hero-state-pill,
  #page-ai-insights #li-ops-panel-builder .li-builder-chip,
  #page-ai-insights #li-ops-panel-intelligence .li-intel-card-chip,
  #page-ai-insights #li-ops-panel-monitoring .li-mon-card-chip,
  #page-ai-insights #li-ops-panel-launch .li-launch-check-chip,
  #page-ai-insights #li-ops-panel-launch .li-mp-partner-chip,
  #page-ai-insights #li-ops-panel-forensics .li-for-card-chip,
  #page-ai-insights .li-risk-verdict-band,
  #page-ai-insights .li-risk-snapshot-badge,
  #page-ai-insights .li-risk-verification-badge,
  #page-ai-insights .li-lis-badge,
  #page-ai-insights #li-ops-panel-intelligence .li-cr-badge,
  #page-ai-insights #li-ops-panel-intelligence .li-pv-badge,
  #page-ai-insights #li-ops-panel-intelligence .li-tp-badge,
  #page-ai-insights #li-ops-panel-launch .li-launch-overview-status {
    animation: none !important;
  }

  #page-ai-insights .li-launch-chamber-env::before {
    opacity: 0.58;
    transform: none;
  }

  #page-ai-insights::before {
    opacity: 0.3;
  }

  #page-ai-insights #li-ops-panel-builder .li-builder-card,
  #page-ai-insights .li-risk-card,
  #page-ai-insights #li-ops-panel-intelligence .li-intel-card,
  #page-ai-insights #li-ops-panel-launch .li-launch-check,
  #page-ai-insights #li-ops-panel-monitoring .li-mon-card,
  #page-ai-insights #li-ops-panel-utility .li-util-template-card,
  #page-ai-insights #li-ops-panel-forensics .li-for-card,
  #page-ai-insights .li-lis-block {
    transition: none;
  }

  #page-ai-insights #li-ops-panel-builder .li-builder-card:hover,
  #page-ai-insights .li-risk-card:hover,
  #page-ai-insights #li-ops-panel-intelligence .li-intel-card:hover,
  #page-ai-insights #li-ops-panel-launch .li-launch-check:hover,
  #page-ai-insights #li-ops-panel-monitoring .li-mon-card:hover,
  #page-ai-insights #li-ops-panel-utility .li-util-template-card:hover,
  #page-ai-insights #li-ops-panel-forensics .li-for-card:hover,
  #page-ai-insights .li-lis-block:hover {
    transform: none;
  }
}
