/* icon-motion (owner approved the sample 2026-10-07): icons answer a hover or a tap once, two-state icons change shape,
   and the home page controls that gave no feedback now do. Nothing loops; all of it is off under reduced motion. */
@media (prefers-reduced-motion:no-preference){
svg[data-app-nav-icon]{transform-box:fill-box;transform-origin:center}
svg.im-go{animation:im-pop .5s cubic-bezier(.3,.7,.2,1)}
svg.im-go[data-app-nav-icon=Bell]{transform-origin:50% 10%;animation:im-ring .7s cubic-bezier(.3,.7,.2,1)}
svg.im-go:is([data-app-nav-icon=ArrowRight],[data-app-nav-icon=ChevronRight],[data-app-nav-icon=LogIn],[data-app-nav-icon=LogOut]){animation:im-nudge .6s cubic-bezier(.3,.7,.2,1)}
svg.im-go[data-app-nav-icon=ArrowUpRight]{animation:im-nudge-up .6s cubic-bezier(.3,.7,.2,1)}
svg.im-go:is([data-app-nav-icon=History],[data-app-nav-icon=RefreshCw],[data-app-nav-icon=RotateCw]){animation:im-spin .7s cubic-bezier(.3,.7,.2,1)}
svg.im-go[data-app-nav-icon=History]{animation-direction:reverse}
svg.im-go[data-app-nav-icon=Download]{animation:im-drop .6s cubic-bezier(.3,.7,.2,1)}
svg.im-go:is([data-app-nav-icon=Wallet],[data-app-nav-icon=Wrench],[data-app-nav-icon=Link],[data-app-nav-icon=BriefcaseBusiness]){animation:im-tilt .6s cubic-bezier(.3,.7,.2,1)}
svg.im-go:is([data-app-nav-icon=ChartNoAxesCombined],[data-app-nav-icon=MessageCircle],[data-app-nav-icon=Users],[data-app-nav-icon=ContactRound]){animation:im-hop .55s cubic-bezier(.3,.7,.2,1)}
svg.im-go[data-app-nav-icon=ShieldCheck]{animation:im-beat .6s cubic-bezier(.3,.7,.2,1)}
svg.im-spin{animation:im-spin .7s cubic-bezier(.3,.7,.2,1)}
@keyframes im-pop{40%{transform:scale(.8)}}
@keyframes im-ring{20%{transform:rotate(14deg)}45%{transform:rotate(-11deg)}70%{transform:rotate(6deg)}}
@keyframes im-nudge{40%{transform:translateX(4px)}70%{transform:translateX(-1px)}}
@keyframes im-nudge-up{40%{transform:translate(3px,-3px)}70%{transform:translate(-1px,1px)}}
@keyframes im-spin{to{transform:rotate(360deg)}}
@keyframes im-drop{40%{transform:translateY(4px)}70%{transform:translateY(-1px)}}
@keyframes im-tilt{30%{transform:rotate(-12deg)}65%{transform:rotate(8deg)}}
@keyframes im-hop{40%{transform:translateY(-4px)}70%{transform:translateY(1px)}}
@keyframes im-beat{35%{transform:scale(1.18)}70%{transform:scale(.96)}}

/* two-state icons */
svg[data-app-nav-icon=Menu] .im-l{transition:transform .4s cubic-bezier(.3,.7,.2,1),opacity .25s;transform-box:fill-box;transform-origin:center}
[aria-expanded=true]>svg[data-app-nav-icon=Menu] .im-l1{transform:translateY(6px) rotate(45deg)}
[aria-expanded=true]>svg[data-app-nav-icon=Menu] .im-l2{opacity:0;transform:scaleX(.2)}
[aria-expanded=true]>svg[data-app-nav-icon=Menu] .im-l3{transform:translateY(-6px) rotate(-45deg)}
.web-full-chevron{transition:transform .35s cubic-bezier(.3,.7,.2,1)}
[aria-expanded=true]>.web-full-chevron{transform:rotate(90deg)}
svg.im-done path{stroke-dasharray:22;animation:im-draw .45s cubic-bezier(.3,.7,.2,1)}
@keyframes im-draw{from{stroke-dashoffset:22}to{stroke-dashoffset:0}}

/* home page and shared controls that had no hover / press feedback */
html body :is(a.site-control--dark,a.site-control--accent,button.web-login,a.arfx-hp-secondary){transition:transform .2s cubic-bezier(.3,.7,.2,1),box-shadow .2s,filter .2s!important}
html body :is(a.site-control--dark,a.site-control--accent,button.web-login):hover{transform:translateY(-1px);box-shadow:0 8px 20px -8px rgba(17,17,19,.45)!important}
html body :is(a.site-control,button.site-control,button.web-login,button.site-pill,.web-settings-trigger,.account-button):active{transform:scale(.97)!important}
html body button.site-pill{transition:transform .2s,background-color .2s,border-color .2s}
html body button.site-pill:hover{border-color:currentColor!important}
html body .web-settings-trigger{transition:transform .2s,background-color .2s}
html body .web-settings-trigger:hover{background:var(--bb-theme-inset,#f4f4f6)!important}
html body a.web-brand{transition:opacity .2s,transform .2s}
html body a.web-brand:hover{opacity:.78}
html body a.web-brand:active{transform:scale(.97)}
html body a.arena-learn{display:inline-block;transition:transform .25s cubic-bezier(.3,.7,.2,1)}
html body a.arena-learn:hover{transform:translateY(3px)}
html body a.arena-live-more{display:inline-block;transition:transform .25s cubic-bezier(.3,.7,.2,1)}
html body a.arena-live-more:hover{transform:translateX(4px)}
html body .bbp-footer a{transition:opacity .2s;text-underline-offset:4px}
html body .bbp-footer a:hover{text-decoration:underline!important;opacity:.72}
html body :is(.arena-feature,.arena-quote,[data-content-card]){transition:transform .25s cubic-bezier(.3,.7,.2,1),box-shadow .25s}
html body :is(.arena-feature,[data-content-card]):hover{transform:translateY(-2px)}
html body :is(.arena-feature,.arena-quote,[data-content-card]):active{transform:scale(.985)}
}

/* chat ball: drag, snap to the nearer edge, tuck away while scrolling */
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball]{transition:left .34s cubic-bezier(.2,.9,.25,1.2),top .34s cubic-bezier(.2,.9,.25,1.2),transform .28s ease,opacity .28s ease}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball=drag]{transition:none!important}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball=drag] .site-chat-dot{cursor:grabbing;transform:scale(1.08)}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball] .site-chat-dot{touch-action:none;cursor:grab;transition:transform .2s ease}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball-tucked][data-ball-side=r]{transform:translateX(62%)!important;opacity:.6}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball-tucked][data-ball-side=l]{transform:translateX(-62%)!important;opacity:.6}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball-moved][data-ball-side=l] :is(.public-ai-panel,.workspace-ai-panel){left:0!important;right:auto!important}
@media(prefers-reduced-motion:reduce){html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball]{transition:none}}
html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball] .site-chat-dot,html body :is(section.public-ai,section.workspace-ai-chat[data-site-chat])[data-ball] .site-chat-dot *{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}

/* chat-window-align-v1 (owner: one chat window, the home page's): the workspace window's head matches the home window —
   tabs on the left, a round close button with a cross on the right, the voice choice as a 40 pill beside it. */
html body :is(.public-ai-head [data-public-ai-close],.workspace-ai-panel-head [data-ai-close]){width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;padding:0!important;border-radius:50%!important;display:inline-grid!important;place-items:center!important;flex:none!important;font-size:0!important;line-height:0!important}
html body .workspace-ai-panel-head [data-ai-close]::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat}
html body .workspace-ai-panel-head{display:flex!important;align-items:center!important;gap:8px!important;padding:12px!important}
html body .workspace-ai-panel-head .site-chat-tabs{margin-right:auto!important}
html body .workspace-ai-panel-head .workspace-ai-voice-choice{height:40px!important;min-height:40px!important;border-radius:999px!important;padding:0 14px!important;display:inline-flex!important;align-items:center;gap:4px;flex:none}
html body :is(.public-ai-panel,.workspace-ai-panel){border-radius:24px!important;overflow:hidden}
html body :is(.public-ai-head [data-public-ai-close],.workspace-ai-panel-head [data-ai-close]){min-height:40px!important;max-height:40px!important;align-self:center!important;margin:0!important}
html body :is(.public-ai-head,.workspace-ai-panel-head) .site-chat-tabs button{font-size:16px!important;height:36px!important;min-height:36px!important;padding:0 12px!important;border-radius:999px!important}
