page { background-color: #f5f5f5; height: 100vh; } .container { min-height: 100vh; padding: 20rpx; } .header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 20rpx; padding: 30rpx; margin-bottom: 20rpx; box-shadow: 0 4rpx 20rpx rgba(102, 126, 234, 0.3); } .title { font-size: 36rpx; font-weight: bold; color: #ffffff; } .form { background: #ffffff; border-radius: 20rpx; padding: 30rpx; margin-bottom: 20rpx; box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.08); } .form-item { margin-bottom: 30rpx; } .label { font-size: 28rpx; font-weight: 600; color: #333333; margin-bottom: 15rpx; } .textarea { width: 100%; min-height: 200rpx; font-size: 28rpx; color: #333333; border: 2rpx solid #f0f0f0; border-radius: 12rpx; padding: 20rpx; box-sizing: border-box; resize: none; line-height: 1.6; } .placeholder { color: #999999; } .counter { display: block; text-align: right; font-size: 24rpx; color: #999999; margin-top: 10rpx; } .image-uploader { margin-top: 10rpx; } .upload-area { width: 120rpx; height: 120rpx; border: 2rpx dashed #e0e0e0; border-radius: 12rpx; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #fafafa; margin-bottom: 15rpx; transition: all 0.3s ease; } .upload-area:active { background: #f0f0f0; transform: scale(0.98); } .upload-icon { font-size: 48rpx; color: #999999; margin-bottom: 10rpx; } .upload-text { font-size: 24rpx; color: #999999; } .image-list { display: flex; gap: 15rpx; flex-wrap: wrap; margin-top: 15rpx; } .image-item { position: relative; width: 150rpx; height: 150rpx; border-radius: 12rpx; overflow: hidden; } .image { width: 100%; height: 100%; background: #f0f0f0; } .image-delete { position: absolute; top: 5rpx; right: 5rpx; width: 40rpx; height: 40rpx; background: rgba(0, 0, 0, 0.6); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #ffffff; font-size: 32rpx; font-weight: bold; transition: all 0.3s ease; } .image-delete:active { background: rgba(0, 0, 0, 0.8); transform: scale(0.9); } .topic-picker { display: flex; justify-content: space-between; align-items: center; padding: 20rpx; border: 2rpx solid #f0f0f0; border-radius: 12rpx; background: #fafafa; transition: all 0.3s ease; } .topic-picker:active { background: #f0f0f0; } .topic-text { font-size: 28rpx; color: #333333; } .topic-arrow { font-size: 20rpx; color: #999999; } .footer { position: fixed; bottom: 0; left: 0; right: 0; display: flex; padding: 20rpx; background: #ffffff; border-top: 1rpx solid #f0f0f0; box-shadow: 0 -2rpx 10rpx rgba(0, 0, 0, 0.05); box-sizing: border-box; } .cancel-btn { flex: 1; height: 80rpx; margin-right: 15rpx; background: #f5f5f5; color: #333333; border: none; border-radius: 40rpx; font-size: 28rpx; font-weight: 600; } .submit-btn { flex: 1; height: 80rpx; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #ffffff; border: none; border-radius: 40rpx; font-size: 28rpx; font-weight: 600; } .submit-btn:disabled { background: #e0e0e0; color: #999999; } .modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; z-index: 9999; } .modal-container { width: 80%; max-height: 70vh; background: #ffffff; border-radius: 20rpx; overflow: hidden; } .modal-header { display: flex; justify-content: space-between; align-items: center; padding: 20rpx; border-bottom: 1rpx solid #f0f0f0; } .modal-title { font-size: 32rpx; font-weight: bold; color: #333333; } .modal-close { font-size: 36rpx; color: #999999; padding: 10rpx; } .modal-content { padding: 20rpx; max-height: 50vh; overflow-y: auto; } .topic-item { padding: 20rpx; border-bottom: 1rpx solid #f0f0f0; display: flex; justify-content: space-between; align-items: center; transition: all 0.3s ease; } .topic-item:active { background: #f0f7ff; } .topic-name { font-size: 28rpx; color: #333333; font-weight: 500; } .topic-count { font-size: 24rpx; color: #999999; }