/* CSS page entry: no intercepted clicks, navigation races or artificial waits. */
/* Keep the root background transparent: the homepage canvas sits behind body
   content, and an opaque root makes body's background cover that canvas. */
html { color-scheme: dark; animation: ds-navigation-enter 180ms ease-out; }
@keyframes ds-navigation-enter {
  from { opacity: .92; }
  to { opacity: 1; }
}
.ds-tab-hidden *, .ds-tab-hidden *::before, .ds-tab-hidden *::after {
  animation-play-state: paused !important;
}
/* Chrome can reject an inaccessible native promise while resolving a cold
   incoming document. Keep normal navigation and the lightweight CSS fade. */
@view-transition { navigation: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; animation: none; }
}
