/* LS_TICK_20261006 — one fade length for all rotating blocks (matches __lsTick fade 200 ms) */
#cardJobsWidget .lwl-jobs-dense-list { transition: opacity .2s ease, transform .2s ease !important; }
.city-news-slot { transition: opacity .2s ease !important; }
#pmsStage .mc-carousel-rows { transition: opacity .2s ease, transform .2s ease; }
#pmsStage .mc-carousel-rows.is-out { opacity: 0; transform: translateY(4px); }

/* Ambient breathing loops: same length, phase aligned to the wall clock (set by ls-tick.js) */
html.ls-sync-ambient .v2-assistant .v2-orb,
html.ls-sync-ambient .v2-assistant #docUploadBtn svg,
html.ls-sync-ambient .quest-hotspot__alive,
html.ls-sync-ambient .quest-hotspot__ghost {
  animation-duration: var(--ls-ambient-ms, 4000ms) !important;
  animation-delay: var(--ls-ambient-delay, 0ms) !important;
}

@media (prefers-reduced-motion: reduce) {
  #cardJobsWidget .lwl-jobs-dense-list,
  .city-news-slot,
  #pmsStage .mc-carousel-rows { transition: none !important; }
}
