/* ========================================================
   Vue 数据表（v-data-table）样式 + 分页控件 + 移动端适配
   与原 style.css 互补，通过 <link> 追加引入，互不干扰。
   ======================================================== */
.vt-wrap{ font-size:13px; }
.vt-scroll{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.vt-table{ width:100%; border-collapse:collapse; background:#fff; min-width:0; }
.vt-table thead th{
  background:#f7f8fa; color:#303133; font-weight:600;
  padding:9px 8px; border-bottom:2px solid #e8eaed;
  white-space:nowrap; text-align:left; position:sticky; top:0; z-index:1;
}
.vt-table tbody td{
  padding:8px; border-bottom:1px solid #f0f1f3;
  color:#303133; word-break:break-word; vertical-align:middle;
}
.vt-table tbody tr:hover{ background:#f7faff; }
.vt-table .vt-empty{ color:#999; text-align:center; padding:26px 10px; }
.vt-pager{
  display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center;
  justify-content:space-between; padding:10px 2px 2px; color:#606266;
}
.vt-pager-info{ display:flex; flex-wrap:wrap; gap:6px 12px; align-items:center; }
.vt-total b{ color:#1a73e8; }
.vt-size select, .vt-custom input{
  height:26px; border:1px solid #d5d9e0; border-radius:4px; padding:0 4px;
  font-size:12px; outline:none; box-sizing:border-box;
}
.vt-custom input{ width:64px; }
.vt-pager-btns{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.vt-pg{
  min-width:26px; height:26px; padding:0 6px; box-sizing:border-box;
  border:1px solid #d5d9e0; border-radius:4px; background:#fff; color:#303133;
  font-size:12px; cursor:pointer;
}
.vt-pg:hover:not(:disabled){ border-color:#1a73e8; color:#1a73e8; }
.vt-pg.on{ background:#1a73e8; border-color:#1a73e8; color:#fff; }
.vt-pg:disabled{ opacity:.45; cursor:not-allowed; }
.vt-dots{ padding:0 2px; color:#999; }
.vt-page-tip{ font-size:12px; color:#606266; margin-left:4px; }
.vt-empty{ color:#aaa; text-align:center; }

/* 表格外的通用分页容器（供非 v-table 的旧容器退路使用） */
.legacy-pager{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; padding:10px 2px; font-size:13px; color:#606266; }

/* ================= 移动端适配 ================= */
@media (max-width: 768px){
  .vt-table thead th{ padding:7px 6px; font-size:12px; }
  .vt-table tbody td{ padding:7px 6px; font-size:12px; }
  .vt-pager{ justify-content:flex-start; }
  .vt-page-tip{ width:100%; }
}
@media (max-width: 520px){
  .vt-wrap{ font-size:12px; }
  .vt-table tbody td{ font-size:12px; }
  .vt-pg{ min-width:24px; height:24px; padding:0 5px; }
}
