/* -------------------------- 分页模块：完全隔离 + 多行显示 + 点击跳转 -------------------------- */
.page-pagination {
    /* BFC布局隔离 */
    display: flow-root;
    /* 样式重置，清除外部影响 */
    padding: 20px 10px;
    margin: 0 auto;
    font-family: inherit;
    font-size: 18px;
    line-height: 1;
    color: initial;
    background: transparent;
    border: none;
    outline: none;
    /* 定位上下文隔离 */
    position: relative;
    /* 尺寸自包含 */
    width: 100%;
    max-width: 960px;
    box-sizing: border-box;

    /* 模块内部CSS变量 */
    --pagination-primary: #db6b6b; /* #409eff;  */
    --pagination-primary-light: #d77c7c; /* #66b1ff;  */
    --pagination-border: #e6e6e6;
    --pagination-text: #666;
    --pagination-disabled: #c0c4cc;
    --pagination-active-bg: #d71515; /* #409eff;  */
    --pagination-active-color: #fff;
    /* 间距变量 */
    --pagination-col-gap: 8px;
    --pagination-row-gap: 12px;
}

/* 分页容器：核心多行实现 */
.page-pagination__wrap {
    /* Flex布局 + 自动换行 */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap; /* 允许换行 */
    /* 行列间距：分开控制，换行后更美观 */
    column-gap: var(--pagination-col-gap);
    row-gap: var(--pagination-row-gap);
    /* 清除默认样式 */
    margin: 0;
    padding: 0;
}

.page-pagination__item {
    list-style: none;
    margin: 0;
    padding: 0;
    /* 保证每个页码项的最小尺寸，换行时更整齐 */
    flex-shrink: 0;
}

/* 核心：链接样式，替代原div */
.page-pagination__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--pagination-border);
    border-radius: 6px;
    background: #fff;
    color: var(--pagination-text);
    text-decoration: none; /* 去除链接默认下划线 */
    cursor: pointer;
    user-select: none;
    box-sizing: border-box;
    /* 动画过渡 */
    transition: all 0.25s ease-in-out;
}

/* 去除链接聚焦时的默认轮廓（可选，可替换为自定义聚焦样式） */
.page-pagination__link:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(64, 158, 255, 0.2);
}

/* 悬停状态 */
.page-pagination__item:not(.page-pagination__item--disabled):not(.page-pagination__item--active) .page-pagination__link:hover {
    border-color: var(--pagination-primary);
    color: var(--pagination-primary);
    background: rgba(64, 158, 255, 0.05);
    transform: translateY(-2px);
    box-shadow: 0 2px 8px rgba(64, 158, 255, 0.15);
}

/* 激活状态（当前页）：无跳转，样式高亮 */
.page-pagination__item--active .page-pagination__link {
    background: var(--pagination-active-bg);
    color: var(--pagination-active-color);
    border-color: var(--pagination-active-bg);
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(64, 158, 255, 0.2);
    cursor: default;
    /* 激活状态链接无跳转 */
    pointer-events: none;
}

/* 禁用状态：无跳转，样式置灰 */
.page-pagination__item--disabled .page-pagination__link {
    color: var(--pagination-disabled);
    border-color: var(--pagination-border);
    cursor: not-allowed;
    transition: none;
    /* 禁用状态链接无跳转 */
    pointer-events: none;
    text-decoration: none;
}

/* 上一页/下一页特殊样式 */
.page-pagination__item--prev .page-pagination__link,
.page-pagination__item--next .page-pagination__link {
    width: 80px;
    /* 保证上下页按钮不被压缩 */
    flex-shrink: 0;
}

/* 点击按压效果 */
.page-pagination__item:not(.page-pagination__item--disabled):not(.page-pagination__item--active) .page-pagination__link:active {
    transform: translateY(0);
    box-shadow: 0 1px 4px rgba(64, 158, 255, 0.1);
}

/* 响应式适配：小屏幕优化 */
@media (max-width: 768px) {
    .page-pagination {
        --pagination-col-gap: 4px;
        --pagination-row-gap: 8px;
        padding: 15px 5px;
    }
    .page-pagination__link {
        width: 36px;
        height: 36px;
        font-size: 12px;
    }
    .page-pagination__item--prev .page-pagination__link,
    .page-pagination__item--next .page-pagination__link {
        width: 70px;
    }
}

@media (max-width: 576px) {
    .page-pagination__link {
        width: 32px;
        height: 32px;
    }
    .page-pagination__item--prev .page-pagination__link,
    .page-pagination__item--next .page-pagination__link {
        width: 60px;
    }
}
/* -------------------------- 分页模块样式结束 -------------------------- */