/* Shared interaction finish, loaded after the page's visual skin.
   Narrow focus/press overrides cover legacy ID-specific rules while preserving
   borders, selected states and disabled styles. Never animate fixed layers. */
:root{--vovry-focus:#777;--vovry-focus-soft:rgba(100,100,100,.12)}
:root[data-theme=dark]{--vovry-focus:#aaa;--vovry-focus-soft:rgba(200,200,200,.15)}
:where(button,a[href],summary,[role=button],[role=tab]){
 -webkit-tap-highlight-color:transparent;
 transition:background-color .12s ease,opacity .12s ease;
}
:root body :is(button,a[href],summary,[role=button],[role=tab]):not(:disabled,[aria-disabled=true]):active{
 opacity:.72!important;
}
:root:not([data-vovry-input=pointer]) body :is(button,a[href],summary,input,textarea,select,[tabindex],[role=button],[role=tab]):focus-visible{
 outline:2px solid var(--vovry-focus)!important;
 outline-offset:2px!important;
 box-shadow:0 0 0 5px var(--vovry-focus-soft);
}
:root[data-vovry-input=pointer] body :is(button,a[href],summary,input,textarea,select,[tabindex],[role=button],[role=tab]):focus{
 outline:none!important;
}
/* Field interiors share the rounded container's quieter focus treatment. */
:root body :is(.gen-chat-compose-row,.gen-session-search,.social-search-field,.social-composer):focus-within{
 border-color:color-mix(in srgb,var(--vovry-focus) 35%,transparent);
 box-shadow:0 0 0 3px var(--vovry-focus-soft);
}
:root:not([data-vovry-input=pointer]) body :is(.social-search-field,.chart-tool):focus-within{
 outline:2px solid var(--vovry-focus)!important;outline-offset:2px!important;
 box-shadow:0 0 0 5px var(--vovry-focus-soft)!important;
}
:root[data-vovry-input=pointer] body :is(.social-search-field,.chart-tool):focus-within{
 outline:none!important;box-shadow:0 0 0 3px var(--vovry-focus-soft)!important;
}
@media(prefers-reduced-motion:reduce){
 :where(button,a[href],summary,[role=button],[role=tab]){transition:none}
}
@media(forced-colors:active){
 :root:is([data-vovry-input],html) body :is(button,a[href],summary,input,textarea,select,[tabindex],[role=button],[role=tab]):focus-visible{
  outline:2px solid Highlight!important;outline-offset:2px!important;box-shadow:none;
 }
 :root:is([data-vovry-input],html) body :is(.social-search-field,.chart-tool):focus-within{
  outline:2px solid Highlight!important;box-shadow:none!important;
 }
}
