.container.data-v-ac4b611d { width: 100%; height: 100vh; background-color: #F8F9FB; position: relative; overflow: hidden; } .loading-box.data-v-ac4b611d { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 80vh; padding-top: 200rpx; } .loading-box .loading-spinner.data-v-ac4b611d { width: 60rpx; height: 60rpx; border: 6rpx solid #f3f3f3; border-top: 6rpx solid #1F6CFF; border-radius: 50%; animation: spin-ac4b611d 1s linear infinite; } .loading-box .loading-text.data-v-ac4b611d { margin-top: 20rpx; font-size: 28rpx; color: #999; } @keyframes spin-ac4b611d { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .fixed-header.data-v-ac4b611d { position: fixed; top: 0; left: 0; right: 0; z-index: 100; background: transparent; } .gradient-section.data-v-ac4b611d { background: linear-gradient(180deg, #1F6CFF 0%, #FFFFFF 100%); padding: 0 30rpx 16rpx; } .search-wrap.data-v-ac4b611d { display: flex; align-items: center; } .search-bar.data-v-ac4b611d { flex: 1; height: 100%; background: rgba(255, 255, 255, 0.92); border-radius: 36rpx; display: flex; align-items: center; padding: 0 30rpx; box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.1); margin-right: 220rpx; } .search-bar .search-icon.data-v-ac4b611d { width: 32rpx; height: 32rpx; margin-right: 16rpx; opacity: 0.5; } .search-bar .search-input.data-v-ac4b611d { flex: 1; font-size: 28rpx; } .search-bar .ph-color.data-v-ac4b611d { color: #999999; } .white-section.data-v-ac4b611d { background-color: #FFFFFF; position: relative; } .horizontal-tabs-wrap.data-v-ac4b611d { display: flex; justify-content: space-between; align-items: center; padding: 20rpx 30rpx 10rpx; } .horizontal-tabs-wrap .main-tabs.data-v-ac4b611d { display: flex; gap: 30rpx; } .horizontal-tabs-wrap .main-tabs .main-tab.data-v-ac4b611d { /* 调整字体更小一点 */ font-size: 30rpx; font-weight: bold; color: #777777; position: relative; padding-bottom: 4rpx; } .horizontal-tabs-wrap .main-tabs .main-tab.active.data-v-ac4b611d { color: #1A1A1A; font-size: 30rpx; /* 选中和未选中字体一致 */ } .horizontal-tabs-wrap .main-tabs .main-tab.active.data-v-ac4b611d:after { content: ""; position: absolute; left: 50%; bottom: -4rpx; transform: translateX(-50%); width: 32rpx; height: 5rpx; background: #1F6CFF; border-radius: 3rpx; } .horizontal-tabs-wrap .filter-btn.data-v-ac4b611d { background-color: #EBF2FF; border-radius: 24rpx; padding: 8rpx 20rpx; display: flex; align-items: center; } .horizontal-tabs-wrap .filter-btn .filter-text.data-v-ac4b611d { color: #1F6CFF; font-size: 24rpx; font-weight: 500; } .sub-tabs.data-v-ac4b611d { display: flex; padding: 10rpx 30rpx 20rpx; gap: 40rpx; } .sub-tabs .sub-tab.data-v-ac4b611d { font-size: 28rpx; color: #888888; padding-bottom: 6rpx; } .sub-tabs .sub-tab.active.data-v-ac4b611d { color: #1F6CFF; font-weight: bold; border-bottom: 4rpx solid #1F6CFF; } .fade-mask.data-v-ac4b611d { position: absolute; left: 0; right: 0; bottom: -40rpx; height: 40rpx; background: linear-gradient(180deg, #F8F9FB 0%, rgba(248, 249, 251, 0) 100%); pointer-events: none; z-index: 10; } .scroll-body.data-v-ac4b611d { position: fixed; left: 0; right: 0; bottom: 0; overflow-y: auto; background-color: #F8F9FB; box-sizing: border-box; /* 针对不同平台的隐藏滚动条样式 */ } .scroll-body.data-v-ac4b611d::-webkit-scrollbar { display: none; width: 0 !important; height: 0 !important; -webkit-appearance: none; background: transparent; } .job-list.data-v-ac4b611d { display: flex; flex-direction: column; gap: 24rpx; padding: 0 30rpx; min-height: 200rpx; } .first-card.data-v-ac4b611d { margin-top: 24rpx !important; } .job-card.data-v-ac4b611d { background: #FFFFFF; border-radius: 24rpx; padding: 30rpx; position: relative; box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.03); } .job-card .job-header.data-v-ac4b611d { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20rpx; } .job-card .job-header .job-title-box.data-v-ac4b611d { display: flex; align-items: center; } .job-card .job-header .job-title-box .job-title.data-v-ac4b611d { font-size: 32rpx; font-weight: bold; color: #1A1A1A; margin-right: 16rpx; } .job-card .job-header .job-title-box .urge-tag.data-v-ac4b611d { font-size: 20rpx; color: #FF3B30; border: 1rpx solid #FF3B30; padding: 2rpx 10rpx; border-radius: 12rpx; } .job-card .job-header .job-salary.data-v-ac4b611d { font-size: 32rpx; font-weight: bold; color: #1F6CFF; } .job-card .tags-row.data-v-ac4b611d { display: flex; flex-wrap: wrap; gap: 16rpx; margin-bottom: 24rpx; } .job-card .tags-row .tag.data-v-ac4b611d { background: #F4F5F7; color: #666666; font-size: 22rpx; padding: 6rpx 16rpx; border-radius: 8rpx; } .job-card .info-row.data-v-ac4b611d { display: flex; align-items: center; margin-bottom: 12rpx; } .job-card .info-row .info-icon.data-v-ac4b611d { width: 26rpx; height: 26rpx; margin-right: 12rpx; opacity: 0.5; } .job-card .info-row .info-text.data-v-ac4b611d { font-size: 24rpx; color: #888888; margin-right: 16rpx; } .job-card .info-row .danger-text.data-v-ac4b611d { font-size: 24rpx; color: #FF3B30; } .job-card .company-row.data-v-ac4b611d { display: flex; justify-content: space-between; align-items: center; margin-top: 24rpx; padding-top: 24rpx; border-top: 1rpx dashed #EEEEEE; } .job-card .company-row .company-info-wrap.data-v-ac4b611d { display: flex; align-items: center; } .job-card .company-row .company-info-wrap .company-logo.data-v-ac4b611d { width: 80rpx; height: 80rpx; border-radius: 16rpx; margin-right: 20rpx; background-color: #f5f5f5; border: 1rpx solid #f0f0f0; } .job-card .company-row .company-info-wrap .company-text-col.data-v-ac4b611d { display: flex; flex-direction: column; } .job-card .company-row .company-info-wrap .company-text-col .company-name-box.data-v-ac4b611d { display: flex; align-items: center; margin-bottom: 6rpx; } .job-card .company-row .company-info-wrap .company-text-col .company-name-box .company-name.data-v-ac4b611d { font-size: 28rpx; font-weight: 600; color: #1A1A1A; margin-right: 10rpx; } .job-card .company-row .company-info-wrap .company-text-col .company-name-box .verified-icon.data-v-ac4b611d { width: 24rpx; height: 24rpx; } .job-card .company-row .company-info-wrap .company-text-col .company-location.data-v-ac4b611d { font-size: 24rpx; color: #888888; } .job-card .company-row .close-icon.data-v-ac4b611d { width: 32rpx; height: 32rpx; opacity: 0.3; } .empty-wrap.data-v-ac4b611d { padding: 100rpx 0; text-align: center; } .empty-wrap .empty-text.data-v-ac4b611d { color: #999; font-size: 28rpx; } .load-end-wrap.data-v-ac4b611d { display: flex; align-items: center; justify-content: center; padding: 40rpx 30rpx 40rpx; gap: 20rpx; } .load-end-wrap .load-end-line.data-v-ac4b611d { flex: 1; height: 1rpx; background-color: #E4E7ED; } .load-end-wrap .load-end-text.data-v-ac4b611d { font-size: 22rpx; color: #BBBBBB; } .tabbar-placeholder.data-v-ac4b611d { height: 180rpx; } /* 反馈弹窗样式 */ .popup-mask.data-v-ac4b611d { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.7); z-index: 999; display: flex; align-items: center; justify-content: center; padding: 0 60rpx; } .popup-content.data-v-ac4b611d { width: 80%; /* 减小宽度,让整体更精致 */ background: #FFFFFF; /* 改为白色背景 */ border-radius: 32rpx; padding: 30rpx 40rpx 60rpx; position: relative; box-shadow: 0 20rpx 80rpx rgba(0, 0, 0, 0.15); } .popup-header.data-v-ac4b611d { display: flex; justify-content: flex-end; margin-bottom: 30rpx; } .popup-header .popup-close.data-v-ac4b611d { width: 36rpx; height: 36rpx; opacity: 0.3; /* 移除之前的 invert,现在容器是白的,图标应该是灰色的 */ } .popup-body.data-v-ac4b611d { display: flex; flex-direction: column; gap: 24rpx; align-items: center; } .feedback-btn.data-v-ac4b611d { width: 85%; /* 按钮调短一点 */ height: 80rpx; /* 高度也微调 */ background: #EBF2FF; /* 使用App主题浅蓝色背景,不深沉且统一 */ border-radius: 100rpx; /* 全圆角符合app风格 */ display: flex; align-items: center; justify-content: center; transition: all 0.2s; } .feedback-btn text.data-v-ac4b611d { font-size: 28rpx; color: #1F6CFF; /* 使用主题深蓝色文字 */ font-weight: 500; } .feedback-btn.data-v-ac4b611d:active { opacity: 0.8; transform: scale(0.98); }