/* Motion only: existing layouts, colors and typography remain authoritative. */
@view-transition { navigation:auto; }
::view-transition-old(root) { animation:rb-flow-out 140ms ease-out both; }
::view-transition-new(root) { animation:rb-flow-in 300ms cubic-bezier(.22,1,.36,1) both; }
@keyframes rb-flow-in { from {opacity:0;transform:translateY(10px)} to {opacity:1;transform:translateY(0)} }
@keyframes rb-flow-out { to {opacity:0;transform:translateY(-5px)} }
[data-flow-busy="true"] { cursor:progress!important; position:relative; }
[data-flow-busy="true"]::after { content:""; display:inline-block; width:12px; height:12px; margin-left:9px; border:1.5px solid currentColor; border-right-color:transparent; border-radius:50%; vertical-align:-2px; animation:rb-flow-spin .75s linear infinite; }
@keyframes rb-flow-spin { to {transform:rotate(360deg)} }
.post-choices button,.vehicle,.btn,.profile-save-btn,#continueToPost { transition:transform 140ms cubic-bezier(.22,1,.36,1),box-shadow 180ms ease,background-color 180ms ease,opacity 140ms ease; }
.post-choices button:active,.vehicle:active,.btn:active,.profile-save-btn:active,#continueToPost:active { transform:scale(.985); }
.post-choices button:disabled,.vehicle:disabled { cursor:progress; }
.modal-card .hint a { color:var(--blue,#0875e1);text-decoration:underline;text-underline-offset:3px; }
@media (prefers-reduced-motion:reduce) {
  ::view-transition-old(root),::view-transition-new(root) { animation:none!important; }
  [data-flow-busy="true"]::after { animation:none; }
  .post-choices button,.vehicle,.btn,.profile-save-btn,#continueToPost { transition:none!important; transform:none!important; }
}
