/* Native document navigation. Public outbound routes participate; private
   destinations and business submits skip the transition in pageswap. */
@media (prefers-reduced-motion: no-preference) {
  html[data-public-motion="true"] { scroll-behavior: smooth; }
  @view-transition { navigation: auto; }
  body:not(.auth-page):not(.account-app):not(.owner-page) .site-header { view-transition-name: mynet-masthead; }
  ::view-transition-group(root), ::view-transition-group(mynet-masthead) { animation: none; }
  ::view-transition-old(root) { animation: mynet-page-out 160ms ease-out both; }
  ::view-transition-new(root) { animation: mynet-page-in 220ms cubic-bezier(.22,1,.36,1) both; }
  ::view-transition-old(mynet-masthead) { display: none; }
  ::view-transition-new(mynet-masthead) { animation: none; mix-blend-mode: normal; }
}
@keyframes mynet-page-out { to { opacity: 0; } }
@keyframes mynet-page-in { from { opacity: 0; } to { opacity: 1; } }

/* Restore the original orb without adding bottom space or moving hit targets. */
html.scrollorb-ready { scrollbar-width: none; padding-inline-end: var(--scrollorb-inline-space, 0px); box-sizing: border-box; }
html.scrollorb-ready::-webkit-scrollbar { display: none; }
body button.scrollorb { display: grid !important; transition: opacity 180ms ease, visibility 180ms; }
body button.scrollorb[hidden] { display: none !important; }
body:has(> button.scrollorb:not([hidden])) { padding-bottom: 0; }
body button.scrollorb::before { display: none; }
body button.scrollorb:focus-visible { outline: 2px solid #ffae74; outline-offset: 4px; }
body button.scrollorb-clearance:not(:focus-visible) { opacity: 0; visibility: hidden; pointer-events: none; }

/* Measured WAAPI height owns disclosure motion; content and final native state
   are committed together so repeated open/close operations never get stuck. */
body details.motion-disclosure { display: flow-root; box-sizing: border-box; overflow-anchor: none; }
body details.motion-disclosure > summary > :is(span[aria-hidden="true"], i) { transition: rotate 220ms cubic-bezier(.22,1,.36,1), color 180ms ease; }
body details.motion-disclosure[data-expanded="false"] > summary > span[aria-hidden="true"] { rotate: 0deg; }
body details.motion-disclosure[data-expanded="true"] > summary > span[aria-hidden="true"] { rotate: 45deg; }
body details.motion-disclosure[data-expanded="false"] > summary > i { transform: none; }
body details.motion-disclosure[data-expanded="true"] > summary > i { transform: rotate(45deg); }
@media (prefers-reduced-motion: reduce) {
  body button.scrollorb, body details.motion-disclosure > summary > :is(span[aria-hidden="true"], i) { transition: none !important; }
  ::view-transition-old(root), ::view-transition-new(root), ::view-transition-old(mynet-masthead), ::view-transition-new(mynet-masthead) { animation: none !important; }
}
@media (forced-colors: active) {
  html, html.scrollorb-ready { scrollbar-width: auto; }
  html::-webkit-scrollbar, html.scrollorb-ready::-webkit-scrollbar { display: block; }
}
