/* ============================================================
   polish.css — 现代手感增强层(抄作业: Emil Kowalski 手感 + Linear 细节)
   只加不改 theme.css; 回退 = 删除模板里这一行 <link>。
   原则: 100~200ms · 3~5% 幅度 · 快起慢停 · 高频不动 · 触屏不粘滞
   ============================================================ */
:root{ --ease-o:cubic-bezier(.23,1,.32,1); }

/* ── 1) 按压反馈补全(theme.css 只给了 .btn, 这里补齐所有可点元素) ── */
.nav button{ transition:background .15s var(--ease-o),color .15s,transform .12s var(--ease-o); }
.nav button:active{ transform:scale(.96); }
.tabs button{ transition:color .15s,transform .12s var(--ease-o); }
.tabs button:active{ transform:scale(.94); }
.seg .pill, .pill[onclick], .chip[onclick]{ transition:background .15s,color .15s,border-color .15s,transform .12s var(--ease-o); }
.seg .pill:active, .pill[onclick]:active, .chip[onclick]:active{ transform:scale(.95); }
.list-item:active{ background:rgba(37,99,235,.08); }
tr.clk:active td{ background:rgba(37,99,235,.09); }

/* ── 2) 弹窗: 从"硬蹦"改为"浮入浮出"(替代 theme.css 的单向 pop 动画) ── */
dialog{
  animation:none !important;
  opacity:1; transform:scale(1);
  transition:opacity .2s var(--ease-o), transform .2s var(--ease-o),
             overlay .2s allow-discrete, display .2s allow-discrete;
}
dialog::backdrop{
  opacity:1;
  transition:opacity .2s var(--ease-o), overlay .2s allow-discrete, display .2s allow-discrete;
}
@starting-style{
  dialog[open]{ opacity:0; transform:scale(.96) translateY(6px); }
  dialog[open]::backdrop{ opacity:0; }
}

/* ── 3) 触屏 hover 粘滞修正: 手机上点完不残留"悬停态" ── */
@media (hover:none){
  .btn:hover{ filter:none; }
  .btn.g:hover{ background:rgba(255,255,255,.9); border-color:var(--line); }
  .nav button:hover{ background:none; color:var(--sub); }
  .nav button.on:hover{ color:var(--red); background:rgba(230,0,18,.09); }
  tr.clk:hover{ background:inherit; }
  .list-item:hover{ background:none; padding-left:4px; }
}

/* ── 4) Linear 式细节 ── */
::selection{ background:rgba(230,0,18,.14); }
*::-webkit-scrollbar{ width:8px; height:8px; }
*::-webkit-scrollbar-thumb{ background:#c7d2e2; border-radius:8px; border:2px solid transparent; background-clip:content-box; }
*::-webkit-scrollbar-thumb:hover{ background:#a9b8cd; border-radius:8px; border:2px solid transparent; background-clip:content-box; }
*::-webkit-scrollbar-track{ background:transparent; }

/* 键盘可达性: 所有可点元素统一 focus 环(鼠标点击不显示) */
.nav button:focus-visible, .tabs button:focus-visible, .list-item:focus-visible,
.seg .pill:focus-visible, a:focus-visible{
  outline:none; box-shadow:var(--ring); border-radius:8px;
}

/* 表格行/列表过渡更跟手 */
tbody tr{ transition:background .12s var(--ease-o); }

/* KPI 卡可点态微抬已有(.bk); 补非看板 KPI 数字的呼吸感 */
.kpi .n{ transition:color .2s var(--ease-o); }

/* ── 5) 尊重系统"减弱动态效果" ── */
@media (prefers-reduced-motion:reduce){
  *, *::before, *::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; }
}
