/* ─── 投放分析页专属样式（从 ecommerce-styles.css 摘出，守单文件 ≤1000 行规模棘轮） ─── */

/* 投放分析页历史表隐藏「账户」和「创建时间」列（2026-10-07 老板：表已宽，分析页聚焦指标） */
#page-paid-analysis .ec-hist-tbl th[title="创建者账号"],
#page-paid-analysis .ec-hist-tbl td[title="创建者账号"] { display: none !important; }
#page-paid-analysis .ec-hist-tbl thead tr th:last-child,
#page-paid-analysis .ec-hist-tbl tbody tr td:last-child { display: none !important; }
/* 序号列（2026-11-01 老板全局规则：记录表最左加序号+账户）在分析页同样隐藏，与账户/创建时间一致（2026-10-07 分析页聚焦指标）；投放计划页照常显示 */
#page-paid-analysis .ec-hist-tbl .pp-seq { display: none !important; }

/* 分析页两 ID 列截断省略让宽（2026-10-23 老板：计划选择列要拉宽、整页找能缩短的列）：
   计划ID/产品ID 列混入长串（活动名/商品标题，30 字）被 nowrap 撑到 ~290px；
   限宽 150px + 省略号（14 位以内数字 ID 仍完整显示），点格照旧复制全值（data-pp-copy）；
   让出的宽正好补给计划选择列 180→280（pp-hist-cols.js _PP_PLAN_NAME_STYLE）。
   仅分析页生效；投放计划页保留全 ID。选器认冻结渲染器的 title 钩子（点击复制计划ID/产品ID）。 */
#page-paid-analysis .ec-hist-tbl td[title="点击复制计划ID"],
#page-paid-analysis .ec-hist-tbl td[title="点击复制产品ID"] {
  max-width: 150px; overflow: hidden; text-overflow: ellipsis;
}

/* ── 投放历史表筛选条（2026-10-24 老板拍板：行式 chip 面板 → 「订货决策」同款横向字段条）──
   渲染在 modules/pp-filters.js _ppFilterBarHtml（投放计划页 + 数据分析页共用），
   旧面板 11 行 / 700+px 把历史记录整块挤出首屏（表格从 973px 起、视口只有 674~826px），
   2026-10-07 逐像素压缩过一轮仍不够，本轮改为标签在上、控件在下、flex-wrap 换行的字段条。
   类名 .ppf-* 前缀隔离，不外溢到全站（与 dt-order-flow.js 的 .dt-of-* 同惯例）。 */
.ppf-bar {
  display: flex; align-items: flex-end; gap: 8px 10px; flex-wrap: wrap;
  background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 10px 12px;
}
.ppf-field { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ppf-label { font-size: 11px; color: var(--text-3); font-weight: 600; letter-spacing: .3px; white-space: nowrap; }
.ppf-input {
  padding: 6px 9px; border: 1px solid #cbd5e1; border-radius: 8px; font-size: 12px;
  background: #fff; color: var(--text-1); outline: none; min-width: 0;
  transition: border-color .15s, box-shadow .15s;
}
.ppf-input:focus { border-color: #64748b; box-shadow: 0 0 0 3px rgba(15, 23, 42, .08); }
/* 下拉定宽下限（2026-10-07 「计数到达撑宽 → 整行换行 → 表格位移」的同款防抖约定：
   选项文本从「全部等级」变到「京东-全店推广（248）」时宽度不跳，min-width 由 JS 按维度给） */
.ppf-select { max-width: 220px; }
.ppf-check {
  display: flex; align-items: center; gap: 5px; padding: 6px 9px; white-space: nowrap; cursor: pointer;
  font-size: 12px; color: var(--text-2); border: 1px solid #cbd5e1; border-radius: 8px; background: #fff;
}
.ppf-dates { display: flex; align-items: center; gap: 4px; }
.ppf-date { font-size: 11px; }
.ppf-tilde { font-size: 12px; color: var(--text-3); }
.ppf-clear { align-self: flex-end; font-size: 11px; }
/* 显示列：勾选面板绝对定位浮在字段下方——否则每次展开/勾选把整条筛选条撑高、表格跟着位移 */
.ppf-cols { position: relative; }
.ppf-cols > summary {
  list-style: none; cursor: pointer; white-space: nowrap;
  font-size: 12px; color: var(--text-2); padding: 6px 9px; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff;
}
.ppf-cols > summary::-webkit-details-marker { display: none; }
.ppf-cols-panel {
  position: absolute; z-index: 30; top: 100%; right: 0; margin-top: 4px;
  display: flex; flex-wrap: wrap; gap: 6px 14px; padding: 10px 12px; max-width: min(560px, 92vw);
  background: #fff; border: 1px solid var(--border); border-radius: 10px; box-shadow: 0 6px 20px rgba(15, 23, 42, .12);
}
.ppf-cols-panel label { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--text-2); cursor: pointer; }
/* 窄屏（含手机）：字段两列铺满，控件不再定宽，横向溢出由表格自身滚动兜 */
@media (max-width: 760px) {
  .ppf-bar { align-items: stretch; }
  .ppf-field { flex: 1 1 46%; }
  .ppf-select, .ppf-input, .ppf-check { width: 100%; max-width: none; }
  .ppf-cols-panel { left: 0; right: auto; }
}
