.header { display: flex; justify-content: space-between; align-items: center; padding: 30rpx; background: #fff; } .add-btn { background: #1890ff; color: #fff; font-size: 28rpx; padding: 15rpx 30rpx; border-radius: 8rpx; } .quotation-list { padding: 0 30rpx; } .quotation-item { background: #fff; border-radius: 12rpx; padding: 30rpx; margin-bottom: 20rpx; } .quotation-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15rpx; } .quotation-title { font-size: 30rpx; font-weight: bold; color: #333; } .quotation-status { padding: 6rpx 16rpx; border-radius: 20rpx; font-size: 22rpx; } .status-draft { background: #f5f5f5; color: #666; } .status-sent { background: #e6f7ff; color: #1890ff; } .status-accepted { background: #f6ffed; color: #52c41a; } .quotation-info { font-size: 24rpx; color: #999; margin-bottom: 10rpx; } .quotation-total { font-size: 32rpx; font-weight: bold; color: #ff4d4f; } .empty { text-align: center; padding: 100rpx; color: #999; } .modal { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); display: flex; align-items: flex-start; justify-content: center; z-index: 100; overflow-y: auto; padding-top: 50rpx; } .modal-content { background: #fff; border-radius: 12rpx; padding: 40rpx; width: 85%; max-height: 90vh; overflow-y: auto; } .modal-title { font-size: 32rpx; font-weight: bold; margin-bottom: 30rpx; text-align: center; } .form-group { margin-bottom: 20rpx; } .form-label { font-size: 26rpx; color: #666; margin-bottom: 10rpx; display: block; } .form-input { border: 1rpx solid #d9d9d9; border-radius: 8rpx; padding: 20rpx; font-size: 28rpx; width: 100%; box-sizing: border-box; } .items-section { background: #f9f9f9; padding: 20rpx; border-radius: 8rpx; margin-bottom: 20rpx; } .item-row { display: flex; gap: 10rpx; align-items: center; margin-bottom: 15rpx; } .item-input { flex: 1; } .qty-input { width: 100rpx; } .price-input { width: 150rpx; } .remove-item { color: #ff4d4f; font-size: 32rpx; padding: 10rpx; } .add-item-btn { background: #fff; border: 1rpx dashed #1890ff; color: #1890ff; font-size: 26rpx; padding: 15rpx; text-align: center; border-radius: 8rpx; } .modal-btns { display: flex; gap: 20rpx; margin-top: 30rpx; } .modal-btn { flex: 1; padding: 20rpx; border-radius: 8rpx; text-align: center; font-size: 28rpx; } .btn-cancel { background: #f5f5f5; color: #666; } .btn-confirm { background: #1890ff; color: #fff; }