.container.data-v-644b8877 { min-height: 100vh; background-color: #F5F6F8; } .offer-list.data-v-644b8877 { padding: 24rpx 30rpx; } .loading-state.data-v-644b8877 { text-align: center; padding: 100rpx 0; font-size: 28rpx; color: #999; } .empty-state.data-v-644b8877 { display: flex; flex-direction: column; align-items: center; padding: 150rpx 0; } .empty-state .empty-icon.data-v-644b8877 { width: 200rpx; height: 200rpx; margin-bottom: 30rpx; } .empty-state .empty-text.data-v-644b8877 { font-size: 28rpx; color: #999; } .offer-card.data-v-644b8877 { background: #FFF; border-radius: 24rpx; padding: 32rpx; margin-bottom: 24rpx; box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04); } .offer-card .card-top.data-v-644b8877 { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 16rpx; } .offer-card .card-top .company-info.data-v-644b8877 { flex: 1; min-width: 0; } .offer-card .card-top .company-info .company-name.data-v-644b8877 { font-size: 30rpx; font-weight: 600; color: #1A1A1A; display: block; margin-bottom: 6rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .offer-card .card-top .company-info .job-name.data-v-644b8877 { font-size: 26rpx; color: #888; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .offer-card .card-top .status-badge.data-v-644b8877 { flex-shrink: 0; padding: 6rpx 20rpx; border-radius: 20rpx; font-size: 22rpx; font-weight: 500; margin-left: 16rpx; } .offer-card .card-top .status-badge.pending.data-v-644b8877 { background: #FFF7E6; color: #FA8C16; } .offer-card .card-top .status-badge.adopted.data-v-644b8877 { background: #F0FFF4; color: #52C41A; } .offer-card .card-top .status-badge.rejected.data-v-644b8877 { background: #FFF1F0; color: #FF4D4F; } .offer-card .card-meta .meta-time.data-v-644b8877 { font-size: 24rpx; color: #BBB; } .offer-card .result-section.data-v-644b8877 { margin-top: 24rpx; padding-top: 24rpx; border-top: 1rpx solid #F0F2F5; } .offer-card .result-section .result-row.data-v-644b8877 { display: flex; justify-content: space-between; align-items: center; } .offer-card .result-section .result-row .result-left.data-v-644b8877 { display: flex; align-items: center; flex: 1; min-width: 0; } .offer-card .result-section .result-row .result-left .result-icon.data-v-644b8877 { width: 36rpx; height: 36rpx; margin-right: 12rpx; flex-shrink: 0; } .offer-card .result-section .result-row .result-left .result-text.data-v-644b8877 { font-size: 28rpx; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .offer-card .result-section .result-row .result-left .result-text.adopted.data-v-644b8877 { color: #52C41A; } .offer-card .result-section .result-row .result-left .result-text.rejected.data-v-644b8877 { color: #FF4D4F; } .offer-card .result-section .result-row .action-btns.data-v-644b8877 { display: flex; gap: 16rpx; flex-shrink: 0; margin-left: 16rpx; } .offer-card .result-section .result-row .action-btns .btn.data-v-644b8877 { height: 60rpx; line-height: 58rpx; font-size: 24rpx; border-radius: 30rpx; padding: 0 28rpx; margin: 0; } .offer-card .result-section .result-row .action-btns .btn.data-v-644b8877::after { border: none; } .offer-card .result-section .result-row .action-btns .btn.btn-outline.data-v-644b8877 { background: #FFF; color: #666; border: 1rpx solid #DDD; } .offer-card .result-section .result-row .action-btns .btn.btn-primary.data-v-644b8877 { background: #1F6CFF; color: #FFF; } .offer-card .result-section .result-row .student-status-tag.data-v-644b8877 { flex-shrink: 0; padding: 6rpx 20rpx; border-radius: 20rpx; font-size: 22rpx; font-weight: 500; margin-left: 16rpx; } .offer-card .result-section .result-row .student-status-tag.accepted.data-v-644b8877 { background: #F0FFF4; color: #52C41A; } .offer-card .result-section .result-row .student-status-tag.rejected.data-v-644b8877 { background: #FFF1F0; color: #FF4D4F; } .offer-card .file-link.data-v-644b8877 { margin-top: 24rpx; padding: 20rpx 24rpx; background: #F8F9FB; border-radius: 16rpx; display: flex; align-items: center; } .offer-card .file-link .file-icon.data-v-644b8877 { width: 40rpx; height: 40rpx; margin-right: 12rpx; flex-shrink: 0; } .offer-card .file-link .file-name.data-v-644b8877 { font-size: 26rpx; color: #1F6CFF; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .offer-card .file-link .file-arrow.data-v-644b8877 { font-size: 26rpx; color: #CCC; margin-left: 8rpx; flex-shrink: 0; } /* Modal */ .modal-mask.data-v-644b8877 { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.6); z-index: 1000; display: flex; align-items: center; justify-content: center; } .modal-content.data-v-644b8877 { background: #FFF; border-radius: 32rpx; overflow: hidden; } .modal-content.protocol-modal.data-v-644b8877 { width: 620rpx; height: 1000rpx; display: flex; flex-direction: column; overflow: hidden; } .modal-content.confirm-modal.data-v-644b8877 { width: 540rpx; padding: 60rpx 40rpx; text-align: center; } .modal-header.data-v-644b8877 { padding: 40rpx; text-align: center; font-size: 34rpx; font-weight: bold; flex-shrink: 0; } .protocol-body.data-v-644b8877 { flex: 1; height: 0; min-height: 0; } .protocol-body .rich-text-container.data-v-644b8877 { padding: 0 40rpx 40rpx; box-sizing: border-box; } .modal-footer.data-v-644b8877 { flex-shrink: 0; padding: 24rpx 40rpx calc(24rpx + env(safe-area-inset-bottom)); border-top: 1rpx solid #F0F2F5; background: #FFF; } .modal-footer .btns-row.data-v-644b8877 { display: flex; gap: 20rpx; } .modal-footer .btns-row button.data-v-644b8877 { height: 72rpx; line-height: 72rpx; border-radius: 36rpx; font-size: 26rpx; } .modal-footer .btns-row button.data-v-644b8877::after { border: none; } .modal-footer .btns-row button.btn-cancel.data-v-644b8877 { flex: 0 0 160rpx; background: #F5F5F7; color: #666; } .modal-footer .btns-row button.btn-confirm.data-v-644b8877 { flex: 1; background: #1F6CFF; color: #FFF; } .modal-footer .btns-row button.btn-confirm.data-v-644b8877:disabled { opacity: 0.3; } .confirm-title.data-v-644b8877 { font-size: 36rpx; font-weight: bold; margin-bottom: 20rpx; } .confirm-desc.data-v-644b8877 { font-size: 28rpx; color: #888; margin-bottom: 60rpx; } .confirm-footer.data-v-644b8877 { display: flex; gap: 20rpx; } .confirm-footer button.data-v-644b8877 { flex: 1; height: 68rpx; line-height: 68rpx; border-radius: 34rpx; font-size: 26rpx; } .confirm-footer button.data-v-644b8877::after { border: none; } .confirm-footer button.btn-cancel.data-v-644b8877 { background: #F5F5F7; color: #666; } .confirm-footer button.btn-danger.data-v-644b8877 { background: #1F6CFF; color: #FFF; }