/* Shared navbar and profile-menu motion, including protected page chrome. */

.nav-link,
.theme-toggle,
.profile-menu__link {
  transition:
    color 140ms ease,
    transform 140ms ease;
}

.topbar-actions .profile-menu__trigger {
  transition-duration: 220ms;
  transition-timing-function: ease;
}

.profile-menu__panel:not([hidden]) {
  animation: chrome-floating-panel-enter 180ms ease both;
}

@keyframes chrome-floating-panel-enter {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav-link,
  .theme-toggle,
  .profile-menu__link,
  .topbar-actions .profile-menu__trigger {
    transition-duration: 1ms;
  }

  .nav-link:hover,
  .nav-link:focus-visible,
  .theme-toggle:hover,
  .theme-toggle:focus-visible,
  .profile-menu__link:hover,
  .profile-menu__link:focus-visible,
  .topbar-actions .profile-menu__trigger:hover,
  .topbar-actions .profile-menu__trigger:focus-visible {
    transform: none;
  }

  .profile-menu__panel:not([hidden]) {
    animation-duration: 1ms;
    transform: none;
  }
}
