/* =========================
   分页箭头按钮（纯CSS版 - #11af6d 绿色主题）
   ========================= */
.pager .pg-first,
.pager .pg-prev,
.pager .pg-next,
.pager .pg-last {
    position: relative;
    background: #fff;
    font-size: 0;
    color: #11af6d;
    border: 1px solid #cfeee0;
    border-radius: 6px;
    width: 45px;
    height: 40px;
    display: inline-block;
    margin: 0 2px 5px;
    vertical-align: middle;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* hover状态：边框加深，保持原风格 */
.pager .pg-first:hover,
.pager .pg-prev:hover,
.pager .pg-next:hover,
.pager .pg-last:hover {
    border-color: #11af6d;
}

/* 使用伪元素画箭头 */
.pager .pg-first::before,
.pager .pg-prev::before,
.pager .pg-next::before,
.pager .pg-last::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border: solid currentColor;
    border-width: 2px 2px 0 0;
    transform-origin: center;
}

/* 单箭头方向 */
.pager .pg-prev::before {
    transform: translate(-50%, -50%) rotate(-135deg);
}
.pager .pg-next::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

/* 双箭头（首页/末页） */
.pager .pg-first::before {
    transform: translate(-58%, -50%) rotate(-135deg);
}
.pager .pg-first::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 40%;
    width: 8px;
    height: 8px;
    border: solid currentColor;
    border-width: 2px 2px 0 0;
    transform: translate(-50%, -50%) rotate(-135deg);
}
.pager .pg-last::before {
    transform: translate(-42%, -50%) rotate(45deg);
}
.pager .pg-last::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 60%;
    width: 8px;
    height: 8px;
    border: solid currentColor;
    border-width: 2px 2px 0 0;
    transform: translate(-50%, -50%) rotate(45deg);
}

/* 禁用态 */
.pager .pg-first[disabled='true'],
.pager .pg-prev[disabled='true'],
.pager .pg-next[disabled='true'],
.pager .pg-last[disabled='true'] {
    color: #a3c3b1;
    border-color: #cfeee0;
    background: #fff;
    cursor: default;
    opacity: 0.9;
}
.pager .pg-first[disabled='true']::before,
.pager .pg-prev[disabled='true']::before,
.pager .pg-next[disabled='true']::before,
.pager .pg-last[disabled='true']::before,
.pager .pg-first[disabled='true']::after,
.pager .pg-last[disabled='true']::after {
    border-color: #a3c3b1;
}

/* 数字按钮 */
#pager.pager a:not(.pg-first):not(.pg-prev):not(.pg-next):not(.pg-last),
#pager.pager span.current,
#pager.pager span.els {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 40px;
    margin: 0 2px 5px;
    border: 1px solid #cfeee0;
    border-radius: 6px;
    text-decoration: none;
    font-size: 15px;
    line-height: 1;
    color: #11af6d;
    background: #fff;
    box-sizing: border-box;
}

/* 悬停 */
#pager.pager a:not(.pg-first):not(.pg-prev):not(.pg-next):not(.pg-last):hover {
    border-color: #11af6d;
    color: #11af6d;
}

/* 当前页 */
#pager.pager span.current {
    background-color: #11af6d;
    color: #fff;
    border-color: #b3e3c9;
}

/* 省略号 */
#pager.pager span.els {
    border-color: transparent;
    background: transparent;
    cursor: default;
}

/* ========= 通用增强 ========= */
.pager {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    padding: 5px 0;
    max-width: 100%;
    box-sizing: border-box;
}
.pager a,
.pager span {
    transition: all 0.2s ease-in-out;
}
.pager a:hover:not([disabled]),
.pager span.current {
    transform: translateY(-1px);
}

/* ========= 移动端适配 ========= */
@media (max-width: 768px) {
    .pager a,
    .pager span {
        width: 36px;
        height: 34px;
        font-size: 14px;
        border-radius: 5px;
    }
    .pager .pg-first,
    .pager .pg-prev,
    .pager .pg-next,
    .pager .pg-last {
        width: 36px;
        height: 34px;
    }
    .pager .pg-first::before,
    .pager .pg-prev::before,
    .pager .pg-next::before,
    .pager .pg-last::before,
    .pager .pg-first::after,
    .pager .pg-last::after {
        width: 6px;
        height: 6px;
    }
}

/* ========= 小屏极简模式 ========= */
@media (max-width: 480px) {
    .pager a:not(.pg-first):not(.pg-prev):not(.pg-next):not(.pg-last),
    .pager span.current,
    .pager span.els {
        width: 30px;
        height: 30px;
        font-size: 13px;
    }
    .pager span.els {
        font-size: 14px;
        padding: 0;
        margin: 0 3px;
    }
    .pager {
        gap: 2px;
    }
}

/* ========= 居中两行布局 ========= */
.pager {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-start;
    text-align: center;
    gap: 1px;
    max-width: 820px;
    margin: 20px auto;
    padding: 5px 10px;
    box-sizing: border-box;
}
.pager a,
.pager span {
    flex: 0 0 auto;
}
.pager::after {
    content: "";
    flex-basis: 100%;
    height: 0;
}
