.task_person_overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	z-index: 9999;

	.mask_overlay {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.8);
	}

	.task_person_container {
		position: relative;
		width: 100%;
		max-width: 750rpx;
		background: #ffffff;
		border-radius: 30rpx 30rpx 0 0;
		box-shadow: 0 -4rpx 20rpx rgba(0, 0, 0, 0.1);
		z-index: 2;
		overflow-y: auto;
		padding: 40rpx 30rpx;
		animation: slideUp 0.3s ease-out;

		.task_person_header {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 20rpx;

			.task_person_title {
				font-size: 50rpx;
				font-weight: bold;
				color: #D3A458;
				text-align: center;
				flex: 1;
			}

			.close_button {
				width: 40rpx;
				height: 40rpx;
				display: flex;
				align-items: center;
				justify-content: center;

				.close_icon {
					font-size: 40rpx;
					color: #333333;
					font-weight: bold;
				}
			}
		}

		.task_person_description {
			margin-bottom: 40rpx;

			.description_text {
				font-size: 24rpx;
				color: #666666;
				line-height: 1.5;
			}
		}

		.task_person_info {
			background: #f6f8fa;
			border-radius: 20rpx;
			margin-bottom: 40rpx;
			padding: 20rpx;
			box-sizing: border-box;

			.form_row {
				display: flex;
				align-items: center;
				justify-content: space-between;
				border-bottom: 1rpx solid #f2f2f2;
				height: 110rpx;
			}

			.form_line_hidden {
				border-bottom: none;
			}

			.form_label {
				width: 250rpx;
				color: #222;
				font-size: 28rpx;

				.required {
					color: #b88a3a;
					margin-left: -4rpx;
				}
			}

			.form_input {
				flex: 1;
				color: #6f6d67;
				font-size: 28rpx;
				background: none;
				border: none;
				outline: none;
				text-align: right;
			}

			.form_input_icon {
				width: 11rpx;
				height: 19rpx;
				margin-left: 16rpx;
				display: block;
			}

			.form_input_box {
				display: flex;
				align-items: center;
				justify-content: center;
			}

			.form_radio {
				margin-right: 32rpx;
				font-size: 28rpx;
			}
		}

		.form_bottom_btn {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			height: 80rpx;

			.form_bottom_text {
				font-size: 28rpx;
				color: #6f6d67;
			}

			.form_bottom_icon {
				width: 19rpx;
				height: 12rpx;
				margin-left: 13rpx;
				display: block;
			}
		}

		.agreement_section {
			margin-bottom: 40rpx;

			.agreement_checkbox {
				display: flex;
				align-items: center;

				.checkbox {
					width: 32rpx;
					height: 32rpx;
					border: 2rpx solid #ddd;
					border-radius: 50%;
					display: flex;
					align-items: center;
					justify-content: center;
					margin-right: 16rpx;

					&.checked {
						background-color: #D3A458;
						border-color: #D3A458;

						.checkmark {
							color: #ffffff;
							font-size: 20rpx;
							font-weight: bold;
						}
					}
				}

				.agreement_text {
					font-size: 24rpx;
					color: #666666;
					line-height: 1.4;
				}
			}
		}

		.form_btn {
			width: 100%;
			height: 94rpx;
			border-radius: 46rpx;
			background-color: #d3a358;
			color: #ffffff;
			font-size: 32rpx;
			display: flex;
			align-items: center;
			justify-content: center;
			border: none;
			outline: none;

			&.disabled {
				background-color: #ccc;
				color: #999;
			}
		}
	}
}

@keyframes slideUp {
	from {
		transform: translateY(100%);
	}
	to {
		transform: translateY(0);
	}
}
