/* Quiet movement and rounded controls, preserving the existing layouts and CarYou red. */
:root {
  --motion-control-ease:cubic-bezier(.22,.68,.25,1);
  --motion-control-time:180ms;
}
/* No opacity/visibility baseline: reduced motion, unsupported APIs and disabled JS stay usable. */
.card.cy-motion-item { animation:none; }
:where(.btn,.btn-soft,.btn-next,.yt-send,.yt-retry,.yt-pbtn,.copy-btn,.ib-btn,.admin-server-actions button,.admin-diagnose button,#panel button,#loginCard button) {
  min-height:44px;
  border-radius:18px;
  touch-action:manipulation;
}
:where(.menu-btn,.icon-btn,.yt-iconbtn,.yt-act,.q-move,.q-play,.hist-menu-btn,.admin-activity button) {
  min-width:44px;
  min-height:44px;
  touch-action:manipulation;
}
/* Main actions use a deep red that keeps white labels legible in both themes. */
.btn:not(.secondary),.yt-send,.yt-retry,.yt-pbtn.primary {
  background:linear-gradient(135deg,#c5162d,#d62a27);
  color:#fff;
  border-radius:18px;
  box-shadow:0 4px 12px rgba(164,18,35,.14);
}
:where(.btn,.btn-soft,.btn-next,.yt-send,.yt-retry,.yt-pbtn,.copy-btn,.menu-btn,.icon-btn,.yt-iconbtn,.yt-act,#panel button,#loginCard button):not(:disabled) {
  transition:background-color var(--motion-control-time) ease,border-color var(--motion-control-time) ease,color var(--motion-control-time) ease,opacity 120ms ease,box-shadow var(--motion-control-time) ease;
}
/* Stable tap targets: feedback changes emphasis, never layout or position. */
.btn:hover,.btn:active,.icon-btn:hover,.yt-iconbtn:active,#panel button:hover,#loginCard button:hover { transform:none; }
:where(.btn,.btn-soft,.btn-next,.yt-send,.yt-retry,.yt-pbtn,.copy-btn,.menu-btn,.icon-btn,.yt-iconbtn,.yt-act,#panel button,#loginCard button):active:not(:disabled) { opacity:.84; }
@media (hover:hover) and (pointer:fine) {
  .btn:not(.secondary):hover,.yt-send:hover,.yt-retry:hover,.yt-pbtn.primary:hover { box-shadow:0 6px 16px rgba(164,18,35,.24); }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  .cy-motion-item { animation:none!important; }
  :where(.btn,.btn-soft,.btn-next,.yt-send,.yt-retry,.yt-pbtn,.copy-btn,.menu-btn,.icon-btn,.yt-iconbtn,.yt-act,#panel button,#loginCard button) { transition:none!important; }
}
