@import url("./motion-tokens.css");
@import url("./presence.css");
button,
a,
input,
textarea,
select,
summary {
  transition:
    background var(--motion),
    color var(--motion),
    border-color var(--motion),
    box-shadow var(--motion),
    transform var(--duration-fast) var(--easing-standard);
}
button:active:not(:disabled),
.primary:active {
  transform: translateY(1px);
}
dialog[open] {
  animation: surface-enter var(--duration-standard) var(--easing-enter);
}
.page-content {
  animation: page-enter var(--duration-standard) var(--easing-enter);
}
.home-hero {
  animation: hero-wake 750ms var(--easing-enter) both;
}
.background-refresh,
.background-refresh .home-hero {
  animation: none;
}
.hero-object .presence-core {
  animation: aperture-breathe 14s ease-in-out infinite;
}
.hero-object .axis-presence::before {
  animation: light-shift 16s ease-in-out infinite;
}
.title-updated {
  animation: title-settle var(--duration-fast) var(--easing-standard);
}
.chat-advanced[open] > div,
.chat-modes[open] > .mode-options {
  animation: surface-enter var(--duration-fast) var(--easing-enter);
}
@keyframes surface-enter {
  from {
    opacity: 0;
    transform: translateY(5px) scale(0.99);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes page-enter {
  from {
    opacity: 0.65;
    transform: translateY(3px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes hero-wake {
  from {
    opacity: 0;
    transform: translateY(7px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes light-shift {
  50% {
    opacity: 0.9;
    transform: scale(2.05);
  }
}
@keyframes title-settle {
  from {
    opacity: 0.72;
  }
  to {
    opacity: 1;
  }
}
:root[data-motion="reduce"] *,
:root[data-motion="reduce"] *::before,
:root[data-motion="reduce"] *::after {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
[hidden] {
  display: none !important;
}
