/* =========================================================
   EntryLap V14 — calm automatic-tab transitions
   ========================================================= */
.question-pills,
.impact-tabs,
.product-slider-tabs,
.pi-slider-controls,
.hero-signal-controls {
  scrollbar-width: none;
  -ms-overflow-style: none;
  scroll-behavior: smooth;
  overscroll-behavior-inline: contain;
}
.question-pills::-webkit-scrollbar,
.impact-tabs::-webkit-scrollbar,
.product-slider-tabs::-webkit-scrollbar,
.pi-slider-controls::-webkit-scrollbar,
.hero-signal-controls::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.question-pills button,
.impact-tabs button,
.product-slider-tabs button,
.pi-slider-controls button,
.hero-signal-controls button,
[data-bot-v2-slide],
[data-bot-slide],
[data-signal-slide],
[data-hero-signal-slide] {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transition:
    background-color .25s ease,
    border-color .25s ease,
    color .25s ease,
    opacity .25s ease;
}
.question-pills button::after,
.impact-tabs button::after,
.product-slider-tabs button::after,
.pi-slider-controls button::after,
.hero-signal-controls button::after,
[data-bot-v2-slide]::after,
[data-bot-slide]::after,
[data-signal-slide]::after,
[data-hero-signal-slide]::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(105deg, transparent 20%, rgba(255,255,255,.64) 48%, transparent 76%);
  transform: translateX(-125%);
  pointer-events: none;
}
.question-pills button.is-active,
.impact-tabs button.is-active,
.product-slider-tabs button.is-active,
.pi-slider-controls button.is-active,
.hero-signal-controls button.is-active,
[data-bot-v2-slide].is-active,
[data-bot-slide].is-active,
[data-signal-slide].is-active,
[data-hero-signal-slide].is-active,
.app-sidebar button.is-active,
.story-nav button.is-active {
  animation: entrylapV14TabButtonIn .42s cubic-bezier(.2,.8,.2,1) both;
}
.question-pills button.is-active::after,
.impact-tabs button.is-active::after,
.product-slider-tabs button.is-active::after,
.pi-slider-controls button.is-active::after,
.hero-signal-controls button.is-active::after,
[data-bot-v2-slide].is-active::after,
[data-bot-slide].is-active::after,
[data-signal-slide].is-active::after,
[data-hero-signal-slide].is-active::after {
  animation: entrylapV14TabSheen .58s ease-out both;
}

[data-ai-conversation] {
  transition: opacity .22s ease, transform .22s cubic-bezier(.2,.8,.2,1), filter .22s ease;
  transform-origin: 50% 0;
}
[data-ai-conversation].is-changing {
  opacity: .36;
  transform: translateY(5px);
  filter: blur(1px);
}
.story-panel.is-active,
.product-slide.is-active,
.pi-slide.is-active,
.impact-visual.is-tab-entering,
.impact-metrics.is-tab-entering {
  animation: entrylapV14TabPanelIn .5s cubic-bezier(.2,.8,.2,1) both;
}

/* Keep the big hero dashboard steady. Its own automatic content motion is enough. */
.hero-product .app-window,
.hero-product .app-window:hover {
  transform: none !important;
  will-change: auto;
}

@keyframes entrylapV14TabButtonIn {
  0% { opacity: .76; transform: translateY(2px); }
  100% { opacity: 1; transform: translateY(0); }
}
@keyframes entrylapV14TabSheen {
  0% { transform: translateX(-125%); opacity: 0; }
  28% { opacity: .56; }
  100% { transform: translateX(125%); opacity: 0; }
}
@keyframes entrylapV14TabPanelIn {
  0% { opacity: .62; transform: translateY(6px); filter: blur(1px); }
  100% { opacity: 1; transform: translateY(0); filter: blur(0); }
}

@media (prefers-reduced-motion: reduce) {
  .question-pills button.is-active,
  .impact-tabs button.is-active,
  .product-slider-tabs button.is-active,
  .pi-slider-controls button.is-active,
  .hero-signal-controls button.is-active,
  [data-bot-v2-slide].is-active,
  [data-bot-slide].is-active,
  [data-signal-slide].is-active,
  [data-hero-signal-slide].is-active,
  .app-sidebar button.is-active,
  .story-nav button.is-active,
  .story-panel.is-active,
  .product-slide.is-active,
  .pi-slide.is-active,
  .impact-visual.is-tab-entering,
  .impact-metrics.is-tab-entering {
    animation: none !important;
  }
  [data-ai-conversation] { transition: none !important; }
}
