
body {
    background-color: var(--body-bg);
    padding-top: 80px; /* 防止导航遮挡 */
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Banner 样式 */  
.job-banner {  
    position: relative;  
    height: 250px;  
    background: linear-gradient(45deg, var(--primary-color), #1a6fb0);  
    display: flex;  
    align-items: center;  
    justify-content: center;  
    color: white;  
    text-align: center;  
    margin-bottom: 30px;  
}  

.job-banner-content h1 {
    font-size: 2.5rem;
    margin-bottom: 15px;
    font-weight: 600;
}  

.job-banner-content p {  
    font-size: 1.2rem;
    opacity: 0.8;
}  

/* 职位列表容器 */  
.job-list-section {  
    padding: 40px 0;  
}  

.job-list-container {  
    display: flex;  
    gap: 30px;  
}  

.job-main-content {  
    flex: 3;  
}  

.job-sidebar {  
    flex: 1;  
}  

/* 职位列表项 */  
.job-list-layout {  
    display: flex;  
    flex-direction: column;  
    gap: 15px;  
}  

.job-list-item {  
    background-color: white;  
    border-radius: var(--border-radius);  
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);  
    padding: 20px;  
    margin-bottom: 15px;  
    transition: all 0.3s ease;  
}  

.job-list-item:hover {  
    transform: translateY(-5px);  
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);  
}  

.job-item-header {  
    display: flex;  
    justify-content: space-between;  
    align-items: flex-start;  
    margin-bottom: 15px;  
    padding-bottom: 10px;  
    border-bottom: 1px solid #f0f0f0;  
}  

.job-item-header-left {  
    flex-grow: 1;  
    margin-right: 15px;  
}  

.job-item-title {  
    font-size: 1.8rem;
    color: var(--text-color);  
    font-weight: 600;  
    text-decoration: none;  
    display: block;  
    margin-bottom: 8px;  
}  

.job-item-title:hover {  
    color: var(--primary-color);  
}  

.job-item-desc {  
    color: var(--secondary-color);  
    margin: 0;  
    font-size: 1.2rem;
}  

.job-item-header-right {  
    text-align: right;  
}  

.job-item-salary {  
    font-size: 1.5rem;
    color: var(--primary-color);  
    font-weight: bold;  
}  

.job-item-meta {  
    display: flex;  
    justify-content: space-between;  
    align-items: center;  
}  

.job-item-info {  
    display: flex;  
    align-items: center;  
    color: var(--secondary-color);  
    font-size: 0.9rem;  
}  

.job-item-info i {  
    color: var(--primary-color);  
    margin-right: 5px;  
}  

.job-item-tags {  
    display: flex;  
}  

.job-item-tag {  
    background-color: rgba(33, 143, 206, 0.1);  
    color: var(--primary-color);  
    padding: 2px 8px;  
    border-radius: 4px;  
    font-size: 1.0rem;
}

/* 职位详情页新增样式 */
.job-detail-section {
    padding: 40px 0;
}

.job-detail-container {
    display: flex;
    gap: 30px;
}

.job-detail-header {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    padding: 25px;
    margin-bottom: 20px;
}

.job-detail-header-content {
    position: relative;
}

.job-detail-title {
    font-size: 2rem;
    color: var(--text-color);
    margin-bottom: 15px;
    font-weight: 600;
}

.job-detail-meta {
    display: flex;
    gap: 20px;
    margin-bottom: 15px;
    color: var(--secondary-color);
}

.job-detail-meta .job-detail-info {
    display: flex;
    align-items: center;
    gap: 5px;
}

.job-detail-meta .job-detail-info i {
    color: var(--primary-color);
}

.job-detail-salary {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.salary-badge {
    font-size: 1.5rem;
    color: var(--primary-color);
    font-weight: bold;
}

.status-badge {
    background-color: #28a745;
    color: white;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 1rem;
}

.job-detail-section {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    padding: 25px;
    margin-bottom: 20px;
}

.job-detail-block {
    margin-bottom: 25px;
}

.job-detail-block-title {
    border-bottom: 2px solid var(--primary-color);
    padding-bottom: 10px;
    margin-bottom: 15px;
    color: var(--text-color);
    font-size: 1.3rem;
}

.job-detail-block-content {
    line-height: 1.8;
    color: var(--secondary-color);
    font-size: 1rem;
}

.job-contact-card {
    background-color: white;
    border-radius: var(--border-radius);
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    padding: 20px;
    margin-bottom: 20px;
}

.job-contact-card h4 {
    border-bottom: 2px solid var(--primary-color);
    padding-bottom: 10px;
    margin-bottom: 15px;
    color: var(--text-color);
}

.contact-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    color: var(--secondary-color);
}

.contact-item i {
    margin-right: 10px;
    color: var(--primary-color);
    font-size: 1.2rem;
}

/* 响应式调整 */
@media (max-width: 991.98px) {
    .job-detail-container {
        flex-direction: column;
    }
}

/* 侧边栏样式 */  
.company-info-card,  
.search-recommend,  
.hot-job-sidebar {  
    background-color: white;  
    border-radius: var(--border-radius);  
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);  
    padding: 20px;  
    margin-bottom: 20px;  
}  

/* 公司 Logo 样式调整 */  
.company-logo {  
    display: flex;  
    justify-content: center;  
    margin-bottom: 15px;  
}  

.company-logo img {  
    width: 250px;  /* 可以根据需要调整宽度 */
    height: auto;  /* 保持宽高比 */  
    object-fit: contain;  /* 确保图片完整显示 */  
}  

.company-details h3 {  
    font-size: 1.2rem;  
    margin-bottom: 10px;
    text-align: center;
}  

.company-stats {  
    display: flex;  
    justify-content: center;  
    gap: 20px;  
    margin-bottom: 15px;  
}  

.stat-item {  
    display: flex;  
    align-items: center;  
    color: var(--secondary-color);  
}  

.stat-item i {  
    margin-right: 5px;  
    color: var(--primary-color);  
}  

/* 搜索区域样式调整 */  
.job-search-form .input-group {
    border-radius: var(--border-radius);  
    overflow: hidden;  
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);  
    display: flex;  
    align-items: center;  
}  

.job-search-form .form-control {
    border: none;  
    padding: 12px 15px;  
    flex-grow: 1;  
    box-shadow: none;  
}  

.job-search-form .input-group-append {
    margin-left: 0;  
}  

.job-search-form .input-group-append .btn {
    background-color: var(--primary-color); /* 设置底色 */
    color: white; /* 图标颜色 */
    border: none;
    padding: 12px 20px;
    border-radius: 0;
    display: flex;
    align-items: center;
    height: 100%;
    transition: background-color 0.3s ease; /* 添加过渡效果 */
}

.job-search-form .btn-primary {
    background-color: var(--primary-color);  
    border: none;  
    padding: 12px 20px;  
    border-radius: 0;  
    display: flex;  
    align-items: center;  
    height: 100%;  
}  

.job-search-form .btn-primary i {
    margin: 0;  
}  

.search-recommend h4 {  
    margin-bottom: 15px;  
    text-align: center;  
}  

.search-tags {  
    display: flex;  
    flex-wrap: wrap;  
    gap: 10px;  
    justify-content: center;  
}  

.search-tags .btn {  
    background-color: rgba(33, 143, 206, 0.1);  
    color: var(--primary-color);  
    font-size: 0.85rem;  
    padding: 5px 10px;  
    border: none;  
}  

.search-tags .btn:hover {  
    background-color: rgba(33, 143, 206, 0.2);  
}  

/* 热门职位 */  
.hot-job-item {  
    display: flex;  
    align-items: center;  
    margin-bottom: 15px;  
    text-decoration: none;  
    color: var(--text-color);  
}  

.hot-job-item:hover .hot-job-content h4 {  
    color: var(--primary-color);  
}  

.hot-job-image {  
    width: 50px;  
    height: 50px;  
    margin-right: 15px;  
    border-radius: 8px;  
    overflow: hidden;  
}  

.hot-job-image img {  
    width: 100%;  
    height: 100%;  
    object-fit: cover;  
}  

.hot-job-content h4 {  
    margin: 0;  
    font-size: 0.95rem;  
    transition: color 0.3s ease;  
}  

.hot-job-content span {  
    color: var(--secondary-color);  
    font-size: 0.85rem;  
}  

/* 分页 */  
.pagination-container {  
    display: flex;  
    justify-content: center;  
    margin-top: 20px;  
}  

.pagination {  
    display: flex;  
    align-items: center;  
    gap: 10px;  
}  

.page-item {  
    list-style: none;  
}  

.page-link {  
    color: var(--text-color);  
    text-decoration: none;  
    padding: 8px 12px;  
    border-radius: 4px;  
    transition: all 0.3s ease;  
}  

.page-link:hover {  
    background-color: rgba(33, 143, 206, 0.1);  
    color: var(--primary-color);  
}  

.page-item.active .page-link {  
    background-color: var(--primary-color);  
    color: white;  
}  

/* 空状态 */  
.empty-state {  
    background-color: white;  
    border-radius: var(--border-radius);  
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);  
    padding: 50px;  
    text-align: center;  
}  

/* 响应式 */  
@media (max-width: 991.98px) {  
    .job-list-container {  
        flex-direction: column;  
    }  
}  

/* 移动端适配 */  
@media (max-width: 768px) {  
    .job-item-header {  
        flex-direction: column;  
        align-items: flex-start;  
    }  

    .job-item-meta {  
        flex-direction: column;  
        align-items: flex-start;  
        gap: 10px;  
    }  
}