/* ===== UI 质感基础层 —— 缓动令牌 / 键盘聚焦环 / 按钮微交互 / 减少动效 / 主题切换过渡 =====
   在每页 <style> 之后、theme.css 之前引入。只做"加法"，不改既有视觉。 */

:root{
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
  --dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;
}

/* 键盘聚焦环：只在键盘 Tab 导航时显示，鼠标点击不显示——无障碍 + 高级感 */
:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{
  outline:2px solid var(--blue,#3b9eff);
  outline-offset:2px;
  border-radius:8px;
}
:where(a,button,input,textarea,select,summary,[tabindex]):focus:not(:focus-visible){outline:none}

/* 按钮"按下"的回弹微交互：补齐按下状态，点起来更跟手（按下比松开更快） */
:where(.btn-white,.btn-pill-w,.btn-pill-c,.btn-w,.btn-g,.btn-s,.btn-charcoal,.submit,.up-btn,.signup,.cta,.b1,.b2,.tryBtn,.up-cta,.spill,.tb-pill,.dd-tr){
  transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);
}
:where(.btn-white,.btn-pill-w,.btn-pill-c,.btn-w,.btn-g,.btn-s,.btn-charcoal,.submit,.up-btn,.signup,.cta,.b1,.b2,.tryBtn,.up-cta):active{
  transform:scale(.97);
  transition-duration:60ms;
}

/* 主题切换的平滑十字淡入（配合 theme.js 的 startViewTransition） */
@media (prefers-reduced-motion: no-preference){
  ::view-transition-old(root),::view-transition-new(root){
    animation-duration:.34s;
    animation-timing-function:cubic-bezier(.65,0,.35,1);
  }
}

/* 尊重系统"减少动效"设置 */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }
}
