/* ============================================================
 * marketing-data.css — 消费者营销数据（营销中心/营销数据）：子Tab/记录列表/字段配置抽屉
 * 从 index.html 拆分（保持原样式顺序）
 * ============================================================ */

/* 消费者营销数据 - 子 Tab 栏 */
.sub-tabs-wrap {
  background: #fff;
  border-radius: 6px 6px 0 0;
  padding: 0 16px;
  border-bottom: 1px solid #e7e9ed;
  margin-bottom: 12px;
}

/* 数据列表 */
.list-container { background: #fff; border-radius: 6px; padding: 16px; }
.list-toolbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.list-toolbar .left, .list-toolbar .right { display: flex; gap: 8px; align-items: center; }
.list-view { border: 1px solid #dcdfe6; border-radius: 4px; overflow-x: auto; }
.list-header, .list-body, .list-row { min-width: 1800px; }
.list-header {
  display: flex; align-items: center; background: #f2f3f5;
  padding: 10px 16px; font-size: 13px; color: #1f2329; font-weight: 500;
  border-bottom: 1px solid #dcdfe6;
}
.list-header .list-col { flex-shrink: 0; padding-right: 16px; }
.list-header .list-col.flex-col { flex: 1; min-width: 0; }
.list-body { max-height: 480px; overflow-y: auto; overflow-x: hidden; }
.list-row {
  display: flex; align-items: center; padding: 12px 16px;
  border-bottom: 1px solid #f2f3f5; font-size: 13px; color: #1f2329;
  transition: background .15s;
}
.list-row:last-child { border-bottom: none; }
.list-row:hover { background: #f7f8fa; }
.list-row .list-col { flex-shrink: 0; padding-right: 16px; }
.list-row .list-col.flex-col { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.list-row .cell-mono { font-family: 'SFMono-Regular', Consolas, monospace; color: #4e5969; }
.list-row .cell-link { color: #0052d9; cursor: pointer; }
.list-row .cell-link:hover { text-decoration: underline; }
.list-row .cell-tag {
  display: inline-block; padding: 1px 8px; border-radius: 3px; font-size: 12px; line-height: 1.6;
  background: #ecf2fe; color: #0052d9;
}
.list-row .cell-tag-green { background: #e8f5e9; color: #2e7d32; }
.list-row .cell-tag-gray { background: #f2f3f5; color: #86909c; }
.list-row .cell-tag-orange { background: #fff3e0; color: #e65100; }
.list-row .cell-tag-red { background: #fde8e8; color: #c62828; }
.list-row .cell-amount { color: #d54941; font-weight: 500; }
/* 抽奖记录 行展开 */
.list-row .col-expand { width: 40px; padding-right: 0 !important; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #86909c; }
.list-row .col-expand:hover { color: #0052d9; }
.list-row .col-expand.disabled { color: #c9cdd4; cursor: not-allowed; }
.list-row .col-expand.disabled:hover { color: #c9cdd4; }
.list-row .col-expand svg { transition: transform .2s; }
.list-row .col-expand.expanded svg { transform: rotate(180deg); }
.list-row.row-expanded { background: #f7f8fa; }
.list-header .col-expand { padding-right: 0; }
.list-expand-row { min-width: 1800px; background: #f7f8fa; border-bottom: 1px solid #f2f3f5; }
.list-expand-row:last-child { border-bottom: none; }
.expand-inner { padding: 12px 16px 12px 56px; }
.prize-detail-table { width: 100%; border-collapse: collapse; background: #fff; font-size: 12px; }
.prize-detail-table th { background: #f2f3f5; color: #4e5969; font-weight: 500; text-align: left; padding: 8px 12px; border: 1px solid #e7e9ed; white-space: nowrap; }
.prize-detail-table td { padding: 8px 12px; border: 1px solid #e7e9ed; color: #1f2329; white-space: nowrap; }
.prize-detail-tag { display: inline-block; padding: 1px 8px; border-radius: 3px; font-size: 12px; line-height: 1.6; }
.prize-detail-tag.green { background: #e8f5e9; color: #2e7d32; }
.prize-detail-tag.orange { background: #fff3e0; color: #e65100; }
.prize-detail-tag.red { background: #fde8e8; color: #c62828; }
.prize-detail-tag.gray { background: #f2f3f5; color: #86909c; }
.prize-detail-empty { padding: 16px; text-align: center; color: #86909c; background: #fff; font-size: 12px; }

/* 字段配置 抽屉 */
.fc-header-wrap { width: 100%; }
.fc-drawer-title { font-size: 16px; font-weight: 600; color: #1f2329; display: flex; align-items: center; justify-content: space-between; width: 100%; }
.fc-title-text { display: flex; align-items: center; }
.fc-close-btn { flex-shrink: 0; }
.fc-drawer-desc { font-size: 12px; color: #86909c; margin-top: 4px; }
.fc-tab-bar { margin-top: 14px; border-bottom: 1px solid #e7e9ed; }
.fc-tab-bar .fc-tab { display: inline-flex; align-items: center; gap: 6px; padding: 8px 4px; cursor: pointer; font-size: 14px; color: #4e5969; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.fc-tab-bar .fc-tab.active { color: #0052d9; border-bottom-color: #0052d9; font-weight: 500; }
.fc-tab-bar .fc-tab .tab-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 18px; padding: 0 5px; background: #d54941; color: #fff; border-radius: 9px; font-size: 11px; line-height: 1; font-weight: 500; }
.fc-list { padding: 4px 0; }
.fc-item { display: flex; align-items: center; padding: 12px; border: 1px solid #e7e9ed; border-radius: 4px; margin-bottom: 8px; background: #fff; gap: 12px; transition: all .15s; }
.fc-item.dragging { opacity: 0.4; }
.fc-item.drag-over { border-color: #0052d9; background: #ecf2fe; }
.fc-drag { cursor: grab; color: #c9cdd4; font-size: 18px; line-height: 1; flex-shrink: 0; user-select: none; width: 18px; text-align: center; }
.fc-drag:active { cursor: grabbing; }
.fc-label-col { width: 150px; flex-shrink: 0; }
.fc-label-col .fc-name { font-size: 14px; color: #1f2329; font-weight: 500; line-height: 20px; }
.fc-label-col .fc-meta { font-size: 12px; color: #86909c; margin-top: 4px; }
.fc-type-col { width: 80px; flex-shrink: 0; font-size: 12px; color: #86909c; }
.fc-alias-col { flex: 1; min-width: 0; }
.fc-switch-col { flex-shrink: 0; }
.fc-del-col { flex-shrink: 0; }
.fc-add-row { display: flex; align-items: center; padding: 12px; border: 1px dashed #d5d9de; border-radius: 4px; margin-top: 4px; background: #fafbfc; gap: 8px; position: sticky; top: 0; z-index: 10; }
.fc-add-icon { flex-shrink: 0; width: 20px; height: 20px; line-height: 20px; text-align: center; border-radius: 4px; background: #0052d9; color: #fff; font-size: 14px; font-weight: bold; }
.fc-footer { border-top: 1px solid #e7e9ed; padding: 12px 24px; display: flex; justify-content: space-between; align-items: center; background: #fafbfc; }
.fc-footer-left { font-size: 13px; color: #4e5969; display: flex; flex-direction: column; gap: 4px; }
.fc-footer-left .hint { color: #86909c; font-size: 12px; display: inline-flex; align-items: center; gap: 4px; }

/* 其他子 Tab 占位 */
.child-tab-placeholder { padding: 60px 0; text-align: center; color: #86909c; font-size: 14px; }
