/* ==========================================================================
   pages-pool.css — Customer Pool 页面级样式（在 pages-customers.css 之后加载）
   --------------------------------------------------------------------------
   2026-05 紧凑专业版（v2）：
   - 摘要 stat 改成方块卡片（不再是药丸），与企业级 CRM 视觉对齐
   - 筛选卡片整体高度从 700+ 压缩到 ~480px（展开时），分区线改实色细分
   - chip 高度从 28→24px，行高更密；常用筛选 3 行从 136→100px
   - 高级筛选 cell 行高从 39→32px，间距收紧
   - 表格保留 zebra/hover 但行高再压一档（115→104px）
   - 整体留白减少 30%，信息密度提升，按钮/输入控件统一 32px 基线
   ========================================================================== */

/* ============================================================
   [pool-page-header] 页头摘要 stat 行 — 方块卡片风格
   ============================================================ */
.pool-page-header .pool-summary-stat-row {
    margin-top: 10px;
    gap: 6px;
}

.pool-summary-stat {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 30px;
    padding: 4px 10px;
    background: var(--surface);
    border: 1px solid var(--surface-border);
    border-radius: var(--radius-xs);
    box-shadow: none;
    transition: border-color var(--motion-fast) var(--easing),
                background var(--motion-fast) var(--easing);
}

.pool-summary-stat:hover {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    transform: none;
    box-shadow: none;
}

.pool-summary-stat__label {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-muted);
    letter-spacing: 0.02em;
}

.pool-summary-stat__value {
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: var(--text-main);
    font-variant-numeric: tabular-nums;
}

.pool-summary-stat__value--text {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    letter-spacing: 0;
}

.pool-summary-stat__unit {
    font-size: 11px;
    color: var(--text-muted);
    margin-left: -4px;
}

/* 第一项（筛选命中）作为主指标，仅左边一道蓝条 + 数字加深 */
.pool-summary-stat:first-child {
    border-left: 3px solid var(--accent);
    padding-left: 10px;
}

.pool-summary-stat:first-child .pool-summary-stat__value {
    color: var(--accent-pressed);
    font-size: 18px;
    letter-spacing: -0.02em;
}

.pool-summary-stat--warn {
    border-left: 3px solid var(--warning) !important;
    padding-left: 10px !important;
}

.pool-summary-stat--warn .pool-summary-stat__value { color: var(--warning-dark); }
.pool-summary-stat--warn .pool-summary-stat__label { color: var(--warning-dark); }

.pool-summary-stat--muted {
    background: transparent;
    border-color: var(--surface-border);
}

/* ============================================================
   [pool-filter-shell] 筛选卡片整体
   ============================================================ */
.pool-page-stack > .toolbar-card.pool-filter-shell {
    margin-bottom: 10px;
    padding: 0;
    background: var(--surface);
    border: 1px solid var(--surface-border);
    border-radius: var(--radius-sm);
    box-shadow: none;
    overflow: hidden;
}

/* 视图 tabs 行（顶部）—— 紧凑工具栏 */
.crm-workspace-bar--pool-actions {
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px 10px;
    align-items: center;
    margin: 0 !important;
    padding: 6px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--surface-border) !important;
    border-radius: 0 !important;
    background: var(--surface-soft) !important;
    box-shadow: none !important;
    min-height: 40px;
}

.crm-workspace-bar--pool-actions .crm-view-strip {
    flex: 1 1 280px;
    min-width: 0;
    max-width: 100%;
    padding-right: 8px;
    gap: 2px;
}

.crm-workspace-bar--pool-actions .crm-view-tab {
    height: 28px;
    min-height: 28px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 500;
    color: var(--text-secondary);
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--radius-xs);
}

.crm-workspace-bar--pool-actions .crm-view-tab:hover {
    background: var(--surface);
    border-color: var(--surface-border);
    color: var(--text-main);
}

.crm-workspace-bar--pool-actions .crm-view-tab.active {
    background: var(--surface);
    border-color: var(--accent-line);
    color: var(--accent-pressed);
    font-weight: 600;
    box-shadow: none;
}

.crm-workspace-bar--pool-actions .crm-view-tab.active i { color: var(--accent); }

.crm-workspace-bar--pool-actions .crm-command-actions {
    flex: 0 0 auto;
    margin-left: auto;
    gap: 6px;
}

.crm-workspace-bar--pool-actions .crm-command-actions .btn {
    height: 28px;
    min-height: 28px !important;
    padding: 0 10px;
    font-size: 12px;
    line-height: 1;
}

/* 分页（嵌入版）— 单行紧凑 */
.pool-filter-shell > .pool-pagination--toolbar,
.pool-filter-shell > .pool-pagination-v2 {
    margin: 0;
    padding: 6px 12px;
    border: 0;
    border-bottom: 1px solid var(--surface-border);
    border-radius: 0;
    box-shadow: none;
    background: var(--surface);
    gap: 8px;
}

.pool-filter-shell > .pool-pagination-v2 .pool-pagination-left {
    gap: 8px;
}

.pool-filter-shell > .pool-pagination-v2 .pool-pagination-left .btn {
    height: 28px;
    min-height: 28px !important;
    padding: 0 12px;
    font-size: 12px;
    line-height: 1;
    border-radius: 999px;
}

.pool-filter-shell > .pool-pagination-v2 .pool-pagination-center {
    font-size: 12px;
    color: var(--text-secondary);
    padding: 0 4px;
}

.pool-filter-shell > .pool-pagination-v2 .pool-pagination-right {
    gap: 10px;
    flex-wrap: nowrap;
    flex: 0 0 auto;
}

.pool-filter-shell .pool-pagination-jump,
.pool-filter-shell .pool-pagination-size {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    width: auto;
}

.pool-filter-shell .pool-pagination-jump label,
.pool-filter-shell .pool-pagination-size label,
.pool-filter-shell .pool-pagination-size-suffix {
    font-size: 11px;
    color: var(--text-muted);
}

.pool-filter-shell .pool-pagination-input,
.pool-filter-shell .pool-pagination-size-select {
    height: 28px;
    min-height: 28px !important;
    padding: 0 8px;
    font-size: 12px;
}

.pool-filter-shell .pool-pagination-input { width: 56px; }
.pool-filter-shell .pool-pagination-size-select { width: 64px; }

.pool-filter-shell .pool-pagination-jump .btn {
    height: 28px;
    min-height: 28px !important;
    padding: 0 10px;
    font-size: 12px;
    line-height: 1;
}

/* 搜索行 — 单行紧凑 */
.pool-filter-shell > .pool-chip-search-row {
    gap: 8px;
    padding: 8px 12px;
    margin: 0;
    border: 0;
    border-bottom: 1px solid var(--surface-border);
    background: var(--surface);
}

.pool-filter-shell .pool-chip-search-input {
    position: relative;
    flex: 1 1 320px;
    min-width: 0;
}

.pool-filter-shell .pool-chip-search-input > i.bi {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
    font-size: 13px;
}

.pool-filter-shell .pool-chip-search-input input.form-control {
    padding-left: 32px;
    height: 32px;
    min-height: 32px !important;
    font-size: 13px;
    border-color: var(--surface-border);
    border-radius: var(--radius-xs);
    transition: border-color var(--motion-fast) var(--easing),
                box-shadow var(--motion-fast) var(--easing);
}

.pool-filter-shell .pool-chip-search-input input.form-control:focus {
    border-color: var(--accent);
    box-shadow: var(--shadow-focus);
}

.pool-filter-shell .pool-chip-sort {
    flex: 0 0 156px;
    height: 32px;
    min-height: 32px !important;
    font-size: 12px;
    border-radius: var(--radius-xs);
}

.pool-filter-shell .pool-chip-search-row .btn {
    height: 32px;
    min-height: 32px !important;
    padding: 0 14px;
    font-size: 12px;
    border-radius: var(--radius-xs);
    line-height: 1;
}

/* ============================================================
   [pool-filter-quick] 常用 chip 行：评分 / 电话 / 跟进 —— 紧凑三行
   ============================================================ */
.pool-filter-quick {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 12px;
    background: var(--surface);
}

.pool-filter-quick__row {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 6px 0;
    min-height: 32px;
}

.pool-filter-quick__row + .pool-filter-quick__row {
    border-top: 1px solid var(--surface-muted);
}

.pool-filter-quick__label {
    font-size: 11px;
    color: var(--text-muted);
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.04em;
    text-align: right;
    padding-right: 0;
    border-right: 0;
}

.pool-filter-quick__body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    min-width: 0;
}

.pool-chip-group--grades {
    gap: 0;
}

.pool-chip-group--grades .pool-chip {
    border-radius: 0;
    border-left-width: 0;
}

.pool-chip-group--grades .pool-chip:first-child {
    border-left-width: 1px;
    border-top-left-radius: var(--radius-xs);
    border-bottom-left-radius: var(--radius-xs);
}

.pool-chip-group--grades .pool-chip:last-child {
    border-top-right-radius: var(--radius-xs);
    border-bottom-right-radius: var(--radius-xs);
}

.pool-chip--soft {
    color: var(--text-secondary);
    background: var(--surface);
}

/* ============================================================
   [pool-filter-advanced] 折叠式高级筛选 —— 嵌入式 toggle
   ============================================================ */
.pool-filter-advanced {
    border-top: 1px solid var(--surface-border);
    background: var(--surface-soft);
}

.pool-filter-advanced > summary {
    list-style: none;
    cursor: pointer;
    user-select: none;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    min-height: 32px;
    transition: background var(--motion-fast) var(--easing),
                color var(--motion-fast) var(--easing);
}

.pool-filter-advanced > summary::-webkit-details-marker {
    display: none;
}

.pool-filter-advanced > summary:hover {
    background: var(--surface);
    color: var(--accent-pressed);
}

.pool-filter-advanced > summary > i.bi-sliders2 {
    color: var(--text-muted);
    font-size: 13px;
}

.pool-filter-advanced[open] > summary > i.bi-sliders2 {
    color: var(--accent);
}

.pool-filter-advanced__badge {
    display: inline-flex;
    align-items: center;
    height: 18px;
    padding: 0 7px;
    border-radius: var(--radius-xs);
    background: var(--accent);
    color: var(--surface);
    font-size: 10px;
    font-weight: 700;
    margin-left: 2px;
    letter-spacing: 0.04em;
}

.pool-filter-advanced__chevron {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    color: var(--text-muted);
    font-size: 11px;
    transition: transform var(--motion-base) var(--easing),
                color var(--motion-base) var(--easing);
}

.pool-filter-advanced[open] > summary {
    background: var(--surface);
    color: var(--text-main);
    border-bottom: 1px solid var(--surface-border);
}

.pool-filter-advanced[open] > summary .pool-filter-advanced__chevron {
    transform: rotate(180deg);
    color: var(--accent);
}

.pool-filter-advanced__body {
    padding: 0;
    background: var(--surface);
}

/* 高级筛选内的 chip grid */
.pool-filter-panel {
    width: 100%;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.pool-filter-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    padding: 2px 12px;
}

.pool-filter-cell {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 4px 8px;
    align-items: center;
    padding: 5px 0;
    min-height: 30px;
    min-width: 0;
    border-bottom: 1px solid var(--surface-muted);
}

.pool-filter-cell:last-child {
    border-bottom: 0;
}

.pool-filter-cell--span-full {
    grid-column: 1 / -1;
    grid-template-columns: 60px minmax(0, 1fr);
    border-top: 1px solid var(--surface-border);
    padding: 6px 0;
}

.pool-filter-cell--span-full + .pool-filter-cell--span-full {
    border-top: 0;
}

.pool-filter-cell__label {
    font-size: 11px;
    color: var(--text-muted);
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0.04em;
    text-align: right;
    padding-right: 0;
    border-right: 0;
}

.pool-filter-cell__body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    min-width: 0;
}

.pool-filter-cell__body .pool-chip-overflow {
    flex-basis: 100%;
    width: 100%;
    padding: 4px 0 0;
}

.pool-inline-city-form {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0 0 0 4px;
    padding-left: 8px;
    border-left: 1px solid var(--surface-border);
}

.pool-inline-city-input {
    width: 128px;
    height: 24px;
    min-height: 24px !important;
    padding: 0 8px;
    font-size: 11.5px;
    border-radius: var(--radius-xs);
}

.pool-inline-city-form .btn {
    height: 24px;
    min-height: 24px !important;
    padding: 0 8px;
    font-size: 11.5px;
    line-height: 1;
    border-radius: var(--radius-xs);
}

.pool-pagination-total-fragment {
    white-space: nowrap;
}

/* ============================================================
   [pool-range-form] 资本规模 / 实缴资本 / 参保人数 范围筛选 —— 单行
   覆盖 pages-customers.css 内的 wrap/100% 旧规则
   ============================================================ */
.pool-filter-advanced__body > .pool-filter-range-form {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 4px 8px;
    align-items: center;
    margin: 0;
    padding: 8px 12px;
    border-top: 1px solid var(--surface-border);
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.pool-filter-range-form .pool-filter-cell__body,
.pool-filter-range-form .pool-range-groups {
    min-width: 0;
    max-width: 100%;
}

.pool-filter-cell.pool-range-filter-row,
.pool-filter-range-form.pool-range-filter-row {
    align-items: center;
    padding: 8px 12px;
    border-top: 1px solid var(--surface-border);
}

.pool-filter-range-form .pool-range-groups {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 14px !important;
    overflow-x: auto;
}

.pool-filter-range-form .pool-range-group {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 4px !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    width: auto !important;
}

.pool-filter-range-form .pool-range-group-label {
    font-size: 11px;
    color: var(--text-muted);
    font-weight: 600;
    white-space: nowrap;
    margin-right: 2px;
    flex: 0 0 auto;
    width: auto !important;
}

.pool-filter-range-form .pool-range-input {
    width: 64px !important;
    flex: 0 0 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 26px !important;
    min-height: 26px !important;
    font-size: 12px;
    padding: 0 6px !important;
    border-radius: var(--radius-xs);
    text-align: center;
    -moz-appearance: textfield;
    appearance: textfield;
}

.pool-filter-range-form .pool-range-input::-webkit-outer-spin-button,
.pool-filter-range-form .pool-range-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.pool-filter-range-form .pool-range-separator {
    font-size: 11px;
    color: var(--text-muted);
    flex: 0 0 auto;
    padding: 0 2px;
}

.pool-filter-range-form .pool-range-unit {
    font-size: 11px;
    color: var(--text-muted);
    flex: 0 0 auto;
    margin-left: 2px;
    white-space: nowrap;
}

.pool-filter-range-form .pool-range-actions {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    margin-left: auto !important;
    padding-top: 0 !important;
    gap: 6px !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

.pool-filter-range-form .pool-range-actions .btn {
    height: 26px;
    min-height: 26px !important;
    padding: 0 12px;
    font-size: 11.5px;
    border-radius: var(--radius-xs);
    line-height: 1;
    white-space: nowrap;
}

/* ============================================================
   [pool-active-chips] 已应用筛选条件
   ============================================================ */
.pool-filter-shell .pool-active-chips,
.pool-active-chips {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    padding: 6px 12px;
    margin: 0 !important;
    border-top: 1px solid var(--surface-border);
    background: var(--accent-softer);
    min-height: 32px;
}

.pool-active-chips__label {
    display: inline-flex;
    align-items: center;
    color: var(--accent-pressed);
    font-size: 11px;
    font-weight: 700;
    margin-right: 4px;
    letter-spacing: 0.02em;
}

.pool-filter-shell .pool-active-chips .active-filter-chip {
    height: 22px;
    padding: 0 8px;
    background: var(--surface);
    border: 1px solid var(--accent-line);
    border-radius: var(--radius-xs);
    font-size: 11px;
    color: var(--accent-pressed);
    gap: 4px;
}

.pool-filter-shell .pool-active-chips .active-filter-chip i {
    font-size: 9px;
    color: var(--text-muted);
}

.pool-filter-shell .pool-active-chips .active-filter-clear {
    font-size: 11px;
    color: var(--text-muted);
    margin-left: 4px;
}

/* ============================================================
   [pool-filter-action-bar] 筛选卡片底部操作
   ============================================================ */
.pool-filter-action-bar--compact {
    justify-content: flex-end;
    gap: 6px;
    padding: 6px 12px;
    margin: 0;
    border: 0;
    border-top: 1px solid var(--surface-border);
    border-radius: 0;
    background: var(--surface-soft);
    min-height: 36px;
}

.pool-filter-action-bar--compact .btn {
    height: 28px;
    min-height: 28px !important;
    padding: 0 12px;
    font-size: 12px;
    white-space: nowrap;
    border-radius: var(--radius-xs);
    line-height: 1;
}

/* ============================================================
   [pool-table-card] 列表卡片
   ============================================================ */
.pool-page-stack > .pool-table-card {
    margin-top: 10px;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid var(--surface-border);
    border-radius: var(--radius-sm);
    box-shadow: none;
}

.pool-page-stack > .pool-table-card .table-responsive {
    overflow-x: auto;
}

/* ============================================================
   [pool-chip] 全局 chip 样式 —— 紧凑、专业
   ============================================================ */
.pool-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 24px;
    min-height: 24px;
    padding: 0 9px;
    border-radius: var(--radius-xs);
    background: var(--surface);
    color: var(--text-secondary);
    border: 1px solid var(--surface-border);
    text-decoration: none;
    font-size: 11.5px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
    transition: background var(--motion-fast) var(--easing),
                color var(--motion-fast) var(--easing),
                border-color var(--motion-fast) var(--easing);
    cursor: pointer;
}

.pool-chip > i.bi {
    font-size: 11px;
}

.pool-chip:hover {
    background: var(--accent-softer);
    color: var(--accent-pressed);
    border-color: var(--accent-line);
    transform: none;
    box-shadow: none;
    text-decoration: none;
}

.pool-chip--active,
.pool-chip.pool-chip--active {
    background: var(--accent) !important;
    color: var(--surface) !important;
    border-color: var(--accent) !important;
    box-shadow: 0 1px 4px rgba(37,99,235,0.28), 0 0 0 1px rgba(37,99,235,0.18);
    font-weight: 600;
}

.pool-chip--active:hover {
    background: var(--accent-dark) !important;
    border-color: var(--accent-dark) !important;
    transform: none;
    box-shadow: none;
}

/* 评分 chip 颜色 */
.pool-chip-grade-a:hover {
    background: var(--danger-soft);
    color: var(--danger);
    border-color: var(--danger-light);
}
.pool-chip-grade-a.pool-chip--active {
    background: var(--danger) !important;
    border-color: var(--danger) !important;
}
.pool-chip-grade-a.pool-chip--active:hover {
    background: var(--danger-pressed) !important;
    border-color: var(--danger-pressed) !important;
}

.pool-chip-grade-b:hover {
    background: var(--warning-soft);
    color: var(--warning-dark);
    border-color: rgba(217, 119, 6, 0.4);
}
.pool-chip-grade-b.pool-chip--active {
    background: var(--warning) !important;
    border-color: var(--warning) !important;
    color: #78350f !important;
}
.pool-chip-grade-b.pool-chip--active:hover {
    background: var(--warning-dark) !important;
    border-color: var(--warning-dark) !important;
}

.pool-chip-grade-c:hover {
    background: var(--accent-softer);
    color: var(--accent);
    border-color: var(--accent-line);
}
.pool-chip-grade-c.pool-chip--active {
    background: var(--accent) !important;
    border-color: var(--accent) !important;
}

.pool-chip-grade-x:hover {
    background: var(--grade-x);
    color: var(--surface);
    border-color: #475569;
}
.pool-chip-grade-x.pool-chip--active {
    background: var(--grade-x) !important;
    border-color: #334155 !important;
}
.pool-chip-grade-x.pool-chip--active:hover {
    background: #475569 !important;
    border-color: #475569 !important;
}

.pool-grade-choice {
    display: flex;
    gap: 0;
    flex-wrap: wrap;
    align-items: center;
}

.pool-grade-choice .pool-chip {
    min-width: 42px;
    justify-content: center;
    border-left-width: 0;
    border-radius: 0;
}

.pool-grade-choice .pool-chip:first-child {
    border-left-width: 1px;
    border-top-left-radius: var(--radius-xs);
    border-bottom-left-radius: var(--radius-xs);
}

.pool-grade-choice .pool-chip:last-child {
    border-top-right-radius: var(--radius-xs);
    border-bottom-right-radius: var(--radius-xs);
}

.pool-grade-choice .pool-chip.is-selected {
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.08), 0 2px 8px rgba(37, 99, 235, 0.15);
}

.pool-chip-more {
    background: transparent !important;
    border-style: dashed !important;
    color: var(--text-muted) !important;
}

.pool-chip-more:hover {
    background: var(--accent-softer) !important;
    color: var(--accent-pressed) !important;
    border-style: solid !important;
}

/* ============================================================
   [pool-table] 表格行样式 —— 更紧凑
   ============================================================ */
.crm-pool-table thead th {
    background: var(--surface-soft) !important;
    color: var(--text-secondary) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em;
    text-transform: none;
    border-top: 0 !important;
    border-bottom: 1px solid var(--surface-border) !important;
    height: 36px;
    padding: 0 10px !important;
}

/* zebra：每两个数据行隔开 */
.crm-pool-table tbody > tr.pool-summary-row:nth-child(6n + 4) > td {
    background: var(--surface-soft) !important;
}

.crm-pool-table .pool-summary-row > td {
    padding: 9px 10px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid var(--surface-muted) !important;
}

.crm-pool-table .pool-summary-row:hover > td {
    background: var(--accent-softer) !important;
}

.crm-pool-table .pool-summary-row.expanded > td {
    background: var(--accent-soft) !important;
}

/* 公司名单元格 */
.crm-pool-table .pool-cell-company {
    vertical-align: top !important;
    padding: 10px !important;
    box-shadow: none !important;
}

.crm-company-name,
.pool-company-name {
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.35;
    color: var(--text-main) !important;
    transition: color var(--motion-fast) var(--easing);
}

.pool-company-name:hover,
.crm-company-name:hover {
    color: var(--accent) !important;
}

.crm-company-meta {
    margin-top: 2px;
    font-size: 11px;
    line-height: 1.4;
    color: var(--text-muted);
}

/* 企业事实标签：更紧凑 inline */
.pool-enterprise-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 10px;
    margin-top: 3px;
    max-width: 280px;
}

.pool-ef-tag {
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--text-secondary) !important;
    font-size: 10.5px;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color var(--motion-fast) var(--easing);
}

.pool-ef-tag:hover {
    color: var(--accent-pressed) !important;
    background: transparent !important;
    border: 0 !important;
}

.pool-ef-label {
    color: var(--text-faint);
    font-weight: 500;
    font-size: 10px;
}

/* 评分徽章 —— 方块 */
.crm-col-grade .pool-grade,
.badge.badge-grade {
    width: 26px;
    height: 26px;
    min-width: 26px;
    border-radius: var(--radius-xs);
    font-size: 13px;
    font-weight: 700;
    line-height: 26px;
    text-align: center;
    color: var(--surface);
    box-shadow: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0;
}

.pool-grade-a, .badge.badge--a { background: var(--danger); color: var(--surface); }
.pool-grade-b, .badge.badge--b { background: var(--warning); color: #78350f !important; }
.pool-grade-c, .badge.badge--c { background: var(--accent); color: var(--surface); }
.pool-grade-x, .pool-grade-none { background: var(--grade-x); color: var(--surface); }

/* 等级 + 优先级评分包裹 */
.pool-grade-wrap {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
}

/* 优先级评分数字 */
.pool-priority-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 20px;
    padding: 0 6px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    line-height: 1;
    color: var(--surface);
    letter-spacing: 0.01em;
}
.pool-priority-score-hi  { background: var(--danger);  box-shadow: 0 1px 3px rgba(220,38,38,0.25); }
.pool-priority-score-mid { background: var(--warning);  box-shadow: 0 1px 3px rgba(217,119,6,0.22); color: #78350f; }
.pool-priority-score-lo  { background: var(--grade-x);  }

/* 分配状态 chip */
.pool-status-chip {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}
.pool-status-chip--public {
    background: var(--accent-soft);
    color: var(--accent-dark);
    border: 1px solid rgba(37, 99, 235, 0.18);
}

/* 城市 / 行业 */
.pool-cell-city .pool-text-main,
.pool-cell-industry .pool-text-main {
    display: block;
    font-size: 12.5px;
    line-height: 1.35;
    color: var(--text-main);
    font-weight: 500;
}

.pool-cell-city .pool-text-sub {
    display: block;
    font-size: 10.5px;
    line-height: 1.35;
    color: var(--text-muted);
    margin-top: 1px;
}

.pool-cell-industry .pool-text-main {
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 电话状态图标：去掉过度缩放、更收敛 */
.pool-phone-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--radius-xs);
    text-decoration: none;
    font-size: 13px;
    transition: background var(--motion-fast) var(--easing),
                color var(--motion-fast) var(--easing);
}

.pool-phone-icon-unlocked {
    background: var(--success-soft);
    color: var(--success-dark);
}

.pool-phone-icon-unlocked:hover {
    background: var(--success);
    color: var(--surface);
}

.pool-phone-icon-has {
    background: var(--warning-soft);
    color: var(--warning-dark);
}

.pool-phone-icon-has:hover {
    background: var(--warning);
    color: var(--surface);
}

.pool-phone-icon-none {
    background: var(--surface-muted);
    color: var(--text-faint);
    cursor: default;
}

/* 跟进状态 pill —— 收敛 */
.pool-cell-follow .action-pill {
    height: 22px;
    min-height: 22px;
    padding: 0 8px;
    font-size: 11.5px;
    font-weight: 500;
    line-height: 1;
    border-radius: var(--radius-xs);
    border: 1px solid transparent;
    gap: 3px;
    display: inline-flex;
    align-items: center;
}

.pool-cell-follow .action-pill > i.bi {
    font-size: 10px;
}

.pool-cell-follow .action-muted {
    background: var(--surface-soft);
    color: var(--text-secondary);
    border-color: var(--surface-border);
}

.pool-cell-follow .action-warm {
    background: var(--warning-soft);
    color: var(--warning-dark);
    border-color: rgba(217, 119, 6, 0.30);
}

.pool-cell-follow .action-hot {
    background: var(--success-soft);
    color: var(--success-dark);
    border-color: rgba(5, 150, 105, 0.30);
}

.pool-cell-follow .action-warning {
    background: var(--accent-soft);
    color: var(--accent-pressed);
    border-color: rgba(37, 99, 235, 0.25);
}

/* 分配给 / 公海 标签 */
.pool-cell-assigned .badge.badge-status {
    height: 20px;
    padding: 0 8px;
    border-radius: var(--radius-xs);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.02em;
    display: inline-flex;
    align-items: center;
}

.pool-cell-assigned .badge.bg-secondary {
    background: var(--surface-soft) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--surface-border);
}

.pool-cell-assigned .pool-text-main {
    font-size: 12.5px;
    color: var(--text-main);
    font-weight: 500;
}

/* 最后跟进 */
.pool-cell-last-follow .pool-text-main {
    font-size: 12px;
    color: var(--text-main);
    font-weight: 500;
}

.pool-cell-last-follow .pool-text-sub {
    display: block;
    font-size: 10.5px;
    color: var(--text-muted);
    margin-top: 1px;
}

.pool-cell-last-follow .crm-empty-text {
    color: var(--text-faint);
    font-size: 11.5px;
}

/* 操作列按钮组 —— 紧凑 icon-button 风格 */
.crm-pool-table .crm-col-actions {
    padding-right: 10px !important;
}

.crm-col-actions .table-action {
    width: 26px;
    height: 26px;
    min-height: 26px !important;
    padding: 0 !important;
    margin-left: 3px;
    border: 1px solid var(--surface-border);
    border-radius: var(--radius-xs);
    background: var(--surface);
    color: var(--text-secondary);
    transition: background var(--motion-fast) var(--easing),
                color var(--motion-fast) var(--easing),
                border-color var(--motion-fast) var(--easing);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 1;
}

.crm-col-actions .table-action:first-child { margin-left: 0; }

.crm-col-actions .table-action .table-action-label {
    display: none !important;
}

.crm-col-actions .table-action:hover {
    transform: none;
    box-shadow: none;
}

.crm-col-actions .table-action.btn-outline-primary:hover {
    background: var(--accent);
    color: var(--surface);
    border-color: var(--accent);
}

.crm-col-actions .table-action.btn-outline-success:hover {
    background: var(--success);
    color: var(--surface);
    border-color: var(--success);
}

.crm-col-actions .table-action.btn-outline-warning:hover {
    background: var(--warning);
    color: var(--surface);
    border-color: var(--warning);
}

.crm-col-actions .table-action.btn-outline-secondary:hover {
    background: var(--text-secondary);
    color: var(--surface);
    border-color: var(--text-secondary);
}

@media (min-width: 1280px) {
    .crm-col-actions .table-action {
        width: auto;
        height: 26px;
        min-height: 26px !important;
        padding: 0 8px !important;
        gap: 3px;
        font-size: 11.5px;
    }

    .crm-col-actions .table-action .table-action-label {
        display: inline-block !important;
        font-size: 11.5px;
        margin-left: 2px;
    }
}

/* 待复核 flag —— 收敛 */
.crm-review-flag {
    height: 18px;
    padding: 0 6px;
    font-size: 10px;
    font-weight: 700;
    border-radius: var(--radius-xs);
    background: var(--warning-soft);
    color: var(--warning-dark);
    border: 1px solid rgba(217, 119, 6, 0.35);
    display: inline-flex;
    align-items: center;
    letter-spacing: 0.04em;
}

/* 清除遗留的最后单元格阴影 */
.pool-summary-row > td:first-child,
.pool-summary-row > td:last-child {
    box-shadow: none !important;
}

/* 排序表头：紧凑 hover */
.js-th-sort:hover {
    background: var(--surface-muted) !important;
    color: var(--accent-pressed) !important;
}

.js-th-sort.is-sorted {
    background: var(--accent-soft) !important;
    color: var(--accent-pressed) !important;
}

.js-th-sort::after {
    margin-left: 3px;
    font-size: 0.85em;
}

/* 全选 checkbox */
.crm-pool-table .pool-col-check {
    padding-left: 10px !important;
    padding-right: 0 !important;
}

.crm-pool-table .form-check-input {
    width: 14px;
    height: 14px;
    margin-top: 0;
}

/* "更多操作" / 列配置 / 保存视图 在页头 actions 中的紧凑化 */
.pool-page-actions .btn {
    height: 28px;
    min-height: 28px !important;
    padding: 0 12px;
    font-size: 12px;
    border-radius: var(--radius-xs);
    line-height: 1;
}

.pool-page-actions .pool-more-actions .btn {
    padding: 0 10px;
}

/* 摘要 stat 行 hover 时的细变化 */
.pool-summary-stat-row {
    margin-bottom: 0;
}

/* ============================================================
   [Responsive]
   ============================================================ */
@media (max-width: 900px) {
    .pool-filter-quick {
        padding: 0 10px;
    }

    .pool-filter-quick__row {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .pool-filter-quick__label {
        text-align: left;
    }

    .pool-filter-cell,
    .pool-filter-cell--span-full {
        grid-template-columns: 1fr;
        gap: 4px;
        padding: 6px 0;
    }

    .pool-filter-cell__label {
        text-align: left;
    }

    .crm-workspace-bar--pool-actions .crm-command-actions {
        width: 100%;
        justify-content: flex-end;
    }

    /* 移动端视图 tab：紧凑 2 列网格，消除换行后的大段竖向留白（之前 align-content 把
       3 行撑高到 ~327px）。height:auto + align-content:flex-start 兜底任何撑高来源。 */
    .crm-workspace-bar--pool-actions { align-items: flex-start; min-height: 0; }
    .crm-workspace-bar--pool-actions .crm-view-strip {
        flex: 1 1 100%;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: 6px;
        height: auto;
        overflow-x: visible;
    }
    .crm-workspace-bar--pool-actions .crm-view-tab {
        flex: 1 1 calc(50% - 6px);
        justify-content: center;
    }

    .pool-filter-shell > .crm-workspace-bar--pool-actions,
    .pool-filter-shell > .pool-pagination--toolbar,
    .pool-filter-shell > .pool-chip-search-row {
        padding-left: 10px;
        padding-right: 10px;
    }

    .pool-filter-grid {
        grid-template-columns: 1fr;
        column-gap: 0;
        padding: 2px 10px;
    }

    .pool-filter-advanced > summary {
        padding: 8px 10px;
    }

    .pool-filter-action-bar--compact {
        padding: 8px 10px;
    }

    .pool-pagination-v2 {
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
    }

    .pool-pagination-right {
        justify-content: space-between;
    }
}

@media (min-width: 1280px) {
    .pool-filter-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 28px;
    }
}

/* mine 页保留 */
.mine-rep-chip-row {
    margin: 0 0 10px;
}

/* ============================================================
   [pool-row-animation] 行 hover 公司名下划线
   ============================================================ */
.pool-summary-row > td {
    transition: background var(--motion-fast) var(--easing);
}

.pool-company-name {
    position: relative;
}

.pool-company-name::after {
    content: '';
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 1px;
    bottom: -1px;
    left: 0;
    background-color: var(--accent);
    transform-origin: bottom right;
    transition: transform var(--motion-fast) var(--easing);
}

.pool-company-name:hover::after {
    transform: scaleX(1);
    transform-origin: bottom left;
}

/* ============================================================
   [pool-batch-floater] 批量操作浮条 —— 收敛
   ============================================================ */
.pool-batch-floater {
    padding: 8px 14px;
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-md);
    gap: 12px;
}

.pool-batch-floater-info .fw-semibold {
    font-size: 12.5px;
}

.pool-batch-floater-info .small {
    font-size: 11px;
}

.pool-batch-floater-actions .btn {
    height: 28px;
    padding: 0 10px;
    font-size: 12px;
}

.pool-batch-close {
    width: 24px;
    height: 24px;
    padding: 0 !important;
}
