/* ==================== 招聘列表 - 三栏卡片样式 ==================== */

/* 确保父容器使用Flex布局来实现三栏效果 */
.subright .recruit-row {
    display: flex;
    flex-wrap: wrap;
    /* 允许换行 */
    margin-left: -15px;
    /* 抵消子元素的padding，实现等高列 */
    margin-right: -15px;
}

/* 单个招聘卡片的容器 */
.recruit-item {
    box-sizing: border-box;
    /* 确保padding和border不增加宽度 */
    padding-left: 15px;
    /* 与父容器的负margin配合 */
    padding-right: 15px;
    width: 100%;
    /* 在小屏幕上占满整行 */
    margin-bottom: 40px;
    /* 卡片之间的底部间距 */
}

/* 当屏幕宽度 >= 1050px (lg) 时，每行显示3个卡片 */
@media (min-width: 1050px) {
    .recruit-item {
        width: calc(100% / 2);
    }
}

/* 当屏幕宽度在 0px 到 1049px 之间 (sm/md) 时，每行显示1个卡片 */
@media (min-width: 0px) and (max-width: 1049px) {
    .recruit-item {
        width: calc(100% / 1);
    }
}

/* 卡片分割线的样式 */
.recruit-line {
    border: none;
    /* 清除默认粗边框 */
    height: 0.5px;
    /* 高度1px就是极细横线，数字越大越粗 */
    background-color: #cccccc;
    margin: 0;
}

/* 卡片本身的样式 */
.recruit-card {
    background-color: #f8f9fa;
    /* 非常浅的灰色背景 */
    border: 1px solid #e9ecef;
    /* 细微的灰色边框 */
    border-radius: 4px;
    /* 轻微的圆角 */
    padding: 20px;
    height: 200px;
    /* 让所有卡片等高 */
    display: flex;
    flex-direction: column;
    /* 子元素垂直排列 */
    transition: box-shadow 0.3s ease-in-out;
}

.recruit-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    /* 鼠标悬停时增加阴影 */
}

/* 卡片标题样式 */
.recruit-title {
    font-size: 16px;
    font-weight: bold;
    color: #333;
    margin-bottom: 10px;
}

/* 卡片描述样式 */
.recruit-desc {
    font-size: 14px;
    color: #555;
    line-height: 1.6;
    margin-top: 10px;
    margin-bottom: 10px;
    flex-grow: 1;
    /* 占据剩余空间，使按钮和日期在底部对齐 */
}

.recruit-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    /*贴到底部*/
}

/* 按钮容器 */
.recruit-btn {
    width: 120px;
    /* 或固定宽度，如 120px */
    height: 40px;
    /* 必须有固定高度，a的height:100%才生效 */
}

/* 按钮本身 */
.recruit-btn a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 16px;
    background-color: #00b359;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: normal;
    text-align: center;
    line-height: 40px;
    box-sizing: border-box;
    transition: background-color 0.3s;
}

.recruit-btn a:hover {
    background-color: #009E4E;
    /* 鼠标悬停时加深颜色 */
}

/* 日期样式 */
.recruit-date {
    font-size: 12px;
    color: #888;
    white-space: nowrap;
}

/* 分页样式微调，确保与卡片风格协调 */
.page-box {
    margin-top: 20px;
}

.page-box a,
.page-box span {
    padding: 6px 12px;
    margin: 0 4px;
    border: 1px solid #ddd;
    color: #337ab7;
    text-decoration: none;
    border-radius: 4px;
}

.page-box .current {
    background-color: #337ab7;
    color: white;
    border-color: #337ab7;
}