.topbar {
  transition: background-color 180ms ease, border-color 180ms ease;
}

.topbar.is-scrolled {
  background: color-mix(in srgb, var(--deep) 88%, transparent);
  border-color: color-mix(in srgb, var(--acid) 24%, transparent);
  backdrop-filter: blur(12px);
}

.topbar nav a[aria-current="true"] {
  color: var(--acid);
}

.range-control {
  --range-progress: 50%;
  background: linear-gradient(
    90deg,
    var(--acid) 0 var(--range-progress),
    #48e5ff3d var(--range-progress) 100%
  );
}

.lab-canvas {
  image-rendering: auto;
}

.offline-reveal-pending {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity 650ms ease, transform 650ms ease;
}

.offline-reveal-pending.offline-reveal-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .offline-reveal-pending {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
