/* Native document transitions preserve the header while the page changes. */
@view-transition { navigation:auto; }
.concept-b #main { view-transition-name:page-content; }
.concept-b .site-header { view-transition-name:site-header; }
::view-transition { pointer-events:none; }
::view-transition-group(*) { animation-duration:.32s; animation-timing-function:cubic-bezier(.22,1,.36,1); }
::view-transition-old(page-content) { animation:atruha-page-out .14s ease-out both; }
::view-transition-new(page-content) { animation:atruha-page-in .32s cubic-bezier(.22,1,.36,1) both; }
::view-transition-old(root),::view-transition-new(root) { animation-duration:.18s; }
@keyframes atruha-page-out { to { opacity:0; transform:translateY(-6px); } }
@keyframes atruha-page-in { from { opacity:0; transform:translateY(12px); } }

/* Theme changes use one complete snapshot, including fixed menus. Keep the
   previous palette opaque beneath the new one so the page never flashes. */
html[data-theme-transition=true] * { view-transition-name:none!important; }
html[data-theme-transition=true]::view-transition-group(root) { animation:none; }
html[data-theme-transition=true]::view-transition-old(root) { animation:none; opacity:1; mix-blend-mode:normal; }
html[data-theme-transition=true]::view-transition-new(root) { animation:atruha-theme-in .36s ease-in-out both; mix-blend-mode:normal; }
@keyframes atruha-theme-in { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:no-preference) {
  html[data-theme-fade=true], html[data-theme-fade=true] *, html[data-theme-fade=true] *::before, html[data-theme-fade=true] *::after {
    transition-property:color,background-color,border-color,outline-color,fill,stroke,box-shadow!important;
    transition-duration:.36s!important;
    transition-timing-function:ease-in-out!important;
    transition-delay:0s!important;
  }
}

/* Replace the branded loading screen with a small, nonblocking progress line. */
.ignite-transition { display:none!important; }
html::before { content:''; position:fixed; inset:0 auto auto 0; z-index:10001; width:100%; height:2px; background:var(--account-accent,#efb29b); transform:scaleX(0); transform-origin:left; opacity:0; pointer-events:none; }
html[data-page-loading=true]::before { opacity:.8; animation:atruha-page-progress 2.5s cubic-bezier(.16,.7,.2,1) both; }
html[dir=rtl]::before { transform-origin:right; }
@keyframes atruha-page-progress { from { transform:scaleX(.05); } to { transform:scaleX(.86); } }

@media(prefers-reduced-motion:no-preference) {
  html:focus-within { scroll-behavior:smooth; }
}
@media(prefers-reduced-motion:reduce) {
  @view-transition { navigation:none; }
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*) { animation:none!important; }
  html { scroll-behavior:auto!important; }
  html::before { display:none; }
}
