/* Shared interaction feedback for Taskviora buttons across all tool workspaces. */
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button){transition:transform .13s ease,filter .13s ease,box-shadow .13s ease;touch-action:manipulation}
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button):not(:disabled):not([aria-disabled="true"]):active{transform:translateY(2px) scale(.975);filter:brightness(.92);box-shadow:inset 0 2px 5px rgba(0,0,0,.14)}
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button):focus-visible{outline:2px solid #0a9f91;outline-offset:3px}
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button):disabled{cursor:not-allowed}
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button).tv-click-feedback:not(:disabled){animation:tv-button-tap .2s ease-out}
@keyframes tv-button-tap{0%{filter:brightness(.9);transform:translateY(2px) scale(.975)}100%{filter:brightness(1);transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],a.btn,a.button,.btn,.button){transition:none!important;animation:none!important}}
